Jason Wang
2019-Feb-15 07:53 UTC
[PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
When fail, translate_desc() returns negative value, otherwise the
number of iovs. So we should fail when the return value is negative
instead of a blindly check against zero.
Reported-by: Stephen Hemminger <stephen at networkplumber.org>
Fixes: cc5e71075947 ("vhost: log dirty page correctly")
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vhost/vhost.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
index 24a129fcdd61..a2e5dc7716e2 100644
--- a/drivers/vhost/vhost.c
+++ b/drivers/vhost/vhost.c
@@ -1788,7 +1788,7 @@ static int log_used(struct vhost_virtqueue *vq, u64
used_offset, u64 len)
ret = translate_desc(vq, (uintptr_t)vq->used + used_offset,
len, iov, 64, VHOST_ACCESS_WO);
- if (ret)
+ if (ret < 0)
return ret;
for (i = 0; i < ret; i++) {
--
2.17.1
Stephen Hemminger
2019-Feb-15 16:45 UTC
[PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
On Fri, 15 Feb 2019 15:53:24 +0800 Jason Wang <jasowang at redhat.com> wrote:> When fail, translate_desc() returns negative value, otherwise the > number of iovs. So we should fail when the return value is negative > instead of a blindly check against zero. > > Reported-by: Stephen Hemminger <stephen at networkplumber.org> > Fixes: cc5e71075947 ("vhost: log dirty page correctly") > Signed-off-by: Jason Wang <jasowang at redhat.com>Looks good. It is best to put the Addresses-Coverity-Id tag on these kind of bug fixes so that the automated tools see it.
David Miller
2019-Feb-15 18:03 UTC
[PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
From: Jason Wang <jasowang at redhat.com> Date: Fri, 15 Feb 2019 15:53:24 +0800> When fail, translate_desc() returns negative value, otherwise the > number of iovs. So we should fail when the return value is negative > instead of a blindly check against zero. > > Reported-by: Stephen Hemminger <stephen at networkplumber.org> > Fixes: cc5e71075947 ("vhost: log dirty page correctly") > Signed-off-by: Jason Wang <jasowang at redhat.com>Jason, please put the Fixes tag first. Thank you.
Michael S. Tsirkin
2019-Feb-15 21:59 UTC
[PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
On Fri, Feb 15, 2019 at 03:53:24PM +0800, Jason Wang wrote:> When fail, translate_desc() returns negative value, otherwise the > number of iovs. So we should fail when the return value is negative > instead of a blindly check against zero. > > Reported-by: Stephen Hemminger <stephen at networkplumber.org> > Fixes: cc5e71075947 ("vhost: log dirty page correctly") > Signed-off-by: Jason Wang <jasowang at redhat.com>Acked-by: Michael S. Tsirkin <mst at redhat.com> and I guess the log was backported to stable so we want this backported too.> --- > drivers/vhost/vhost.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c > index 24a129fcdd61..a2e5dc7716e2 100644 > --- a/drivers/vhost/vhost.c > +++ b/drivers/vhost/vhost.c > @@ -1788,7 +1788,7 @@ static int log_used(struct vhost_virtqueue *vq, u64 used_offset, u64 len) > > ret = translate_desc(vq, (uintptr_t)vq->used + used_offset, > len, iov, 64, VHOST_ACCESS_WO); > - if (ret) > + if (ret < 0) > return ret; > > for (i = 0; i < ret; i++) { > -- > 2.17.1
Jason Wang
2019-Feb-19 06:50 UTC
[PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
On 2019/2/16 ??2:03, David Miller wrote:> From: Jason Wang<jasowang at redhat.com> > Date: Fri, 15 Feb 2019 15:53:24 +0800 > >> When fail, translate_desc() returns negative value, otherwise the >> number of iovs. So we should fail when the return value is negative >> instead of a blindly check against zero. >> >> Reported-by: Stephen Hemminger<stephen at networkplumber.org> >> Fixes: cc5e71075947 ("vhost: log dirty page correctly") >> Signed-off-by: Jason Wang<jasowang at redhat.com> > Jason, please put the Fixes tag first. > > Thank you.Ok. Will post V2. Thanks
Jason Wang
2019-Feb-19 06:51 UTC
[PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
On 2019/2/16 ??12:45, Stephen Hemminger wrote:> On Fri, 15 Feb 2019 15:53:24 +0800 > Jason Wang <jasowang at redhat.com> wrote: > >> When fail, translate_desc() returns negative value, otherwise the >> number of iovs. So we should fail when the return value is negative >> instead of a blindly check against zero. >> >> Reported-by: Stephen Hemminger <stephen at networkplumber.org> >> Fixes: cc5e71075947 ("vhost: log dirty page correctly") >> Signed-off-by: Jason Wang <jasowang at redhat.com> > Looks good. It is best to put the Addresses-Coverity-Id tag on these kind > of bug fixes so that the automated tools see it.Ok. Will do this in V2. Thanks
Possibly Parallel Threads
- [PATCH net] vhost: correctly check the return value of translate_desc() in log_used()
- [PATCH net V2] vhost: correctly check the return value of translate_desc() in log_used()
- [PATCH][next] vhost: only return early if ret indicates an error or no iovecs have been processed
- [PATCH][next] vhost: only return early if ret indicates an error or no iovecs have been processed
- [PATCH net] vhost: correctly check the return value of translate_desc() in log_used()