Alex Williamson
2019-Sep-23 15:45 UTC
[PATCH 5/6] vringh: fix copy direction of vringh_iov_push_kern()
On Mon, 23 Sep 2019 21:03:30 +0800 Jason Wang <jasowang at redhat.com> wrote:> We want to copy from iov to buf, so the direction was wrong. > > Signed-off-by: Jason Wang <jasowang at redhat.com> > --- > drivers/vhost/vringh.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-)Why is this included in the series? Seems like an unrelated fix being held up within a proposal for a new feature. Thanks, Alex> diff --git a/drivers/vhost/vringh.c b/drivers/vhost/vringh.c > index 08ad0d1f0476..a0a2d74967ef 100644 > --- a/drivers/vhost/vringh.c > +++ b/drivers/vhost/vringh.c > @@ -852,6 +852,12 @@ static inline int xfer_kern(void *src, void *dst, size_t len) > return 0; > } > > +static inline int kern_xfer(void *dst, void *src, size_t len) > +{ > + memcpy(dst, src, len); > + return 0; > +} > + > /** > * vringh_init_kern - initialize a vringh for a kernelspace vring. > * @vrh: the vringh to initialize. > @@ -958,7 +964,7 @@ EXPORT_SYMBOL(vringh_iov_pull_kern); > ssize_t vringh_iov_push_kern(struct vringh_kiov *wiov, > const void *src, size_t len) > { > - return vringh_iov_xfer(wiov, (void *)src, len, xfer_kern); > + return vringh_iov_xfer(wiov, (void *)src, len, kern_xfer); > } > EXPORT_SYMBOL(vringh_iov_push_kern); >
Michael S. Tsirkin
2019-Sep-23 16:00 UTC
[PATCH 5/6] vringh: fix copy direction of vringh_iov_push_kern()
On Mon, Sep 23, 2019 at 09:45:59AM -0600, Alex Williamson wrote:> On Mon, 23 Sep 2019 21:03:30 +0800 > Jason Wang <jasowang at redhat.com> wrote: > > > We want to copy from iov to buf, so the direction was wrong. > > > > Signed-off-by: Jason Wang <jasowang at redhat.com> > > --- > > drivers/vhost/vringh.c | 8 +++++++- > > 1 file changed, 7 insertions(+), 1 deletion(-) > > > Why is this included in the series? Seems like an unrelated fix being > held up within a proposal for a new feature. Thanks, > > AlexIt's better to have it as patch 1/6, but it's a dependency of the example driver in the series. I can reorder when I apply.> > diff --git a/drivers/vhost/vringh.c b/drivers/vhost/vringh.c > > index 08ad0d1f0476..a0a2d74967ef 100644 > > --- a/drivers/vhost/vringh.c > > +++ b/drivers/vhost/vringh.c > > @@ -852,6 +852,12 @@ static inline int xfer_kern(void *src, void *dst, size_t len) > > return 0; > > } > > > > +static inline int kern_xfer(void *dst, void *src, size_t len) > > +{ > > + memcpy(dst, src, len); > > + return 0; > > +} > > + > > /** > > * vringh_init_kern - initialize a vringh for a kernelspace vring. > > * @vrh: the vringh to initialize. > > @@ -958,7 +964,7 @@ EXPORT_SYMBOL(vringh_iov_pull_kern); > > ssize_t vringh_iov_push_kern(struct vringh_kiov *wiov, > > const void *src, size_t len) > > { > > - return vringh_iov_xfer(wiov, (void *)src, len, xfer_kern); > > + return vringh_iov_xfer(wiov, (void *)src, len, kern_xfer); > > } > > EXPORT_SYMBOL(vringh_iov_push_kern); > >
Alex Williamson
2019-Sep-24 14:04 UTC
[PATCH 5/6] vringh: fix copy direction of vringh_iov_push_kern()
On Mon, 23 Sep 2019 12:00:41 -0400 "Michael S. Tsirkin" <mst at redhat.com> wrote:> On Mon, Sep 23, 2019 at 09:45:59AM -0600, Alex Williamson wrote: > > On Mon, 23 Sep 2019 21:03:30 +0800 > > Jason Wang <jasowang at redhat.com> wrote: > > > > > We want to copy from iov to buf, so the direction was wrong. > > > > > > Signed-off-by: Jason Wang <jasowang at redhat.com> > > > --- > > > drivers/vhost/vringh.c | 8 +++++++- > > > 1 file changed, 7 insertions(+), 1 deletion(-) > > > > > > Why is this included in the series? Seems like an unrelated fix being > > held up within a proposal for a new feature. Thanks, > > > > Alex > > It's better to have it as patch 1/6, but it's a dependency of the > example driver in the series. I can reorder when I apply.It's a fix, please submit it separately through virtio/vhost channels, then it will already be in the base kernel we use for the rest of the series. The remainder of the series certainly suggests a workflow through the vfio tree rather than virtio/vhost. Thanks, Alex> > > diff --git a/drivers/vhost/vringh.c b/drivers/vhost/vringh.c > > > index 08ad0d1f0476..a0a2d74967ef 100644 > > > --- a/drivers/vhost/vringh.c > > > +++ b/drivers/vhost/vringh.c > > > @@ -852,6 +852,12 @@ static inline int xfer_kern(void *src, void *dst, size_t len) > > > return 0; > > > } > > > > > > +static inline int kern_xfer(void *dst, void *src, size_t len) > > > +{ > > > + memcpy(dst, src, len); > > > + return 0; > > > +} > > > + > > > /** > > > * vringh_init_kern - initialize a vringh for a kernelspace vring. > > > * @vrh: the vringh to initialize. > > > @@ -958,7 +964,7 @@ EXPORT_SYMBOL(vringh_iov_pull_kern); > > > ssize_t vringh_iov_push_kern(struct vringh_kiov *wiov, > > > const void *src, size_t len) > > > { > > > - return vringh_iov_xfer(wiov, (void *)src, len, xfer_kern); > > > + return vringh_iov_xfer(wiov, (void *)src, len, kern_xfer); > > > } > > > EXPORT_SYMBOL(vringh_iov_push_kern); > > >