diff mbox

[dpdk-dev,18/22] virtio: Fix descriptor index issue

Message ID 1421298930-15210-19-git-send-email-changchun.ouyang@intel.com (mailing list archive)
State Superseded, archived
Headers show

Commit Message

Ouyang Changchun Jan. 15, 2015, 5:15 a.m. UTC
It should use vring descriptor index instead of used_ring index to index vq_descx.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
---
 lib/librte_pmd_virtio/virtio_rxtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Stephen Hemminger Jan. 15, 2015, 4:54 p.m. UTC | #1
On Thu, 15 Jan 2015 13:15:26 +0800
Ouyang Changchun <changchun.ouyang@intel.com> wrote:

> It should use vring descriptor index instead of used_ring index to index vq_descx.
> 
> Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
> ---
>  lib/librte_pmd_virtio/virtio_rxtx.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/lib/librte_pmd_virtio/virtio_rxtx.c b/lib/librte_pmd_virtio/virtio_rxtx.c
> index 12c2310..2529dc4 100644
> --- a/lib/librte_pmd_virtio/virtio_rxtx.c
> +++ b/lib/librte_pmd_virtio/virtio_rxtx.c
> @@ -144,9 +144,9 @@ virtio_xmit_cleanup(struct virtqueue *vq, uint16_t num)
>  
>  		used_idx = (uint16_t)(vq->vq_used_cons_idx & (vq->vq_nentries - 1));
>  		uep = &vq->vq_ring.used->ring[used_idx];
> -		dxp = &vq->vq_descx[used_idx];
>  
>  		desc_idx = (uint16_t) uep->id;
> +		dxp = &vq->vq_descx[desc_idx];
>  		vq->vq_used_cons_idx++;
>  		vq_ring_free_chain(vq, desc_idx);
>  

Rather than patching a code added by earlier patch in series, why
not just fix/merge the two patches?
Ouyang Changchun Jan. 16, 2015, 12:55 a.m. UTC | #2
> -----Original Message-----
> From: Stephen Hemminger [mailto:stephen@networkplumber.org]
> Sent: Friday, January 16, 2015 12:54 AM
> To: Ouyang, Changchun
> Cc: dev@dpdk.org; Doherty, Declan; Cao, Waterman
> Subject: Re: [PATCH 18/22] virtio: Fix descriptor index issue
> 
> On Thu, 15 Jan 2015 13:15:26 +0800
> Ouyang Changchun <changchun.ouyang@intel.com> wrote:
> 
> > It should use vring descriptor index instead of used_ring index to index
> vq_descx.
> >
> > Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
> > ---
> >  lib/librte_pmd_virtio/virtio_rxtx.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/lib/librte_pmd_virtio/virtio_rxtx.c
> > b/lib/librte_pmd_virtio/virtio_rxtx.c
> > index 12c2310..2529dc4 100644
> > --- a/lib/librte_pmd_virtio/virtio_rxtx.c
> > +++ b/lib/librte_pmd_virtio/virtio_rxtx.c
> > @@ -144,9 +144,9 @@ virtio_xmit_cleanup(struct virtqueue *vq, uint16_t
> > num)
> >
> >  		used_idx = (uint16_t)(vq->vq_used_cons_idx & (vq-
> >vq_nentries - 1));
> >  		uep = &vq->vq_ring.used->ring[used_idx];
> > -		dxp = &vq->vq_descx[used_idx];
> >
> >  		desc_idx = (uint16_t) uep->id;
> > +		dxp = &vq->vq_descx[desc_idx];
> >  		vq->vq_used_cons_idx++;
> >  		vq_ring_free_chain(vq, desc_idx);
> >
> 
> Rather than patching a code added by earlier patch in series, why not just
> fix/merge the two patches?

I think it could be more clear what's the original patch looks like and what I need to fix.
And I also resolve the patch author issue, which I am not care for, but someone may care for. :-) 
Thanks
Changchun
diff mbox

Patch

diff --git a/lib/librte_pmd_virtio/virtio_rxtx.c b/lib/librte_pmd_virtio/virtio_rxtx.c
index 12c2310..2529dc4 100644
--- a/lib/librte_pmd_virtio/virtio_rxtx.c
+++ b/lib/librte_pmd_virtio/virtio_rxtx.c
@@ -144,9 +144,9 @@  virtio_xmit_cleanup(struct virtqueue *vq, uint16_t num)
 
 		used_idx = (uint16_t)(vq->vq_used_cons_idx & (vq->vq_nentries - 1));
 		uep = &vq->vq_ring.used->ring[used_idx];
-		dxp = &vq->vq_descx[used_idx];
 
 		desc_idx = (uint16_t) uep->id;
+		dxp = &vq->vq_descx[desc_idx];
 		vq->vq_used_cons_idx++;
 		vq_ring_free_chain(vq, desc_idx);