Message ID | 20191024035718.7690-1-jasowang@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [net-next] vringh: fix copy direction of vringh_iov_push_kern() | expand |
On Thu, Oct 24, 2019 at 11:57:18AM +0800, Jason Wang wrote: > We want to copy from iov to buf, so the direction was wrong. > > Note: no real user for the helper, but it will be used by future > features. > > Signed-off-by: Jason Wang <jasowang@redhat.com> I'm still inclined to merge it now, incorrect code tends to proliferate. > --- > drivers/vhost/vringh.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > 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); > > -- > 2.19.1
On 2019/10/27 下午6:04, Michael S. Tsirkin wrote: > On Thu, Oct 24, 2019 at 11:57:18AM +0800, Jason Wang wrote: >> We want to copy from iov to buf, so the direction was wrong. >> >> Note: no real user for the helper, but it will be used by future >> features. >> >> Signed-off-by: Jason Wang <jasowang@redhat.com> > I'm still inclined to merge it now, incorrect code tends to > proliferate. I'm fine with this, so I believe you will merge this patch? Thanks > >> --- >> drivers/vhost/vringh.c | 8 +++++++- >> 1 file changed, 7 insertions(+), 1 deletion(-) >> >> 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); >> >> -- >> 2.19.1
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);
We want to copy from iov to buf, so the direction was wrong. Note: no real user for the helper, but it will be used by future features. Signed-off-by: Jason Wang <jasowang@redhat.com> --- drivers/vhost/vringh.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)