Re: [RFC PATCH 2/9] vringh: remove vringh_iov and unite to vringh_kiov
From: Shunsuke Mie
Date: Tue Dec 27 2022 - 02:58:13 EST
2022年12月27日(火) 16:56 Michael S. Tsirkin <mst@xxxxxxxxxx>:
>
> On Tue, Dec 27, 2022 at 04:13:49PM +0900, Shunsuke Mie wrote:
> > 2022年12月27日(火) 16:05 Michael S. Tsirkin <mst@xxxxxxxxxx>:
> > >
> > > On Tue, Dec 27, 2022 at 02:04:03PM +0800, Jason Wang wrote:
> > > > On Tue, Dec 27, 2022 at 10:25 AM Shunsuke Mie <mie@xxxxxxxxxx> wrote:
> > > > >
> > > > > struct vringh_iov is defined to hold userland addresses. However, to use
> > > > > common function, __vring_iov, finally the vringh_iov converts to the
> > > > > vringh_kiov with simple cast. It includes compile time check code to make
> > > > > sure it can be cast correctly.
> > > > >
> > > > > To simplify the code, this patch removes the struct vringh_iov and unifies
> > > > > APIs to struct vringh_kiov.
> > > > >
> > > > > Signed-off-by: Shunsuke Mie <mie@xxxxxxxxxx>
> > > >
> > > > While at this, I wonder if we need to go further, that is, switch to
> > > > using an iov iterator instead of a vringh customized one.
> > > >
> > > > Thanks
> > >
> > > Possibly, but when doing changes like this one needs to be careful
> > > to avoid breaking all the inlining tricks vringh relies on for
> > > performance.
> > Definitely, I'm evaluating the performance using vringh_test. I'll add a
> > result of the evaluation. But, If there are other evaluation methods, could you
> > please tell me?
>
> high level tests over virtio blk and net are possible, but let's
> start with vringh_test.
Ok, I'll do it.
> > > --
> > > MST
> > >
> >
> > Best,
> > Shunsuke
>