search for: in_order

Displaying 20 results from an estimated 27 matches for "in_order".

Did you mean: min_order
2018 Nov 23
0
[PATCH net-next 3/3] vhost: don't touch avail ring if in_order is negotiated
...iff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index 3a5f81a66d34..c8be151bc897 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -2002,6 +2002,7 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, __virtio16 avail_idx; __virtio16 ring_head; int ret, access; + bool in_order = vhost_has_feature(vq, VIRTIO_F_IN_ORDER); /* Check it isn't doing very strange things with descriptor numbers. */ last_avail_idx = vq->last_avail_idx; @@ -2034,15 +2035,19 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, /* Grab the next descriptor number they're advertis...
2018 Nov 23
1
[PATCH net-next 3/3] vhost: don't touch avail ring if in_order is negotiated
...ers/vhost/vhost.c > index 3a5f81a66d34..c8be151bc897 100644 > --- a/drivers/vhost/vhost.c > +++ b/drivers/vhost/vhost.c > @@ -2002,6 +2002,7 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, > __virtio16 avail_idx; > __virtio16 ring_head; > int ret, access; > + bool in_order = vhost_has_feature(vq, VIRTIO_F_IN_ORDER); > > /* Check it isn't doing very strange things with descriptor numbers. */ > last_avail_idx = vq->last_avail_idx; > @@ -2034,15 +2035,19 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, > > /* Grab the next descript...
2019 Oct 24
1
[PATCH] virtio_ring: fix packed ring event may missing
...olling over event offset. Recheck should be taken as used index may >>>>> exceed event offset between status check and driver event update. >>>>> >>>>> However, it is possible that flags was not modified if descriptors are >>>>> chained or in_order feature was negotiated. So flags at event offset >>>>> may not be valid for descriptor's status checking. Fix it by using last >>>>> used index as replacement. Tx queue will be stopped if there's not >>>>> enough freed buffers after recheck. >...
2019 Oct 22
0
[PATCH] virtio_ring: fix packed ring event may missing
...st will kick when >>> rolling over event offset. Recheck should be taken as used index may >>> exceed event offset between status check and driver event update. >>> >>> However, it is possible that flags was not modified if descriptors are >>> chained or in_order feature was negotiated. So flags at event offset >>> may not be valid for descriptor's status checking. Fix it by using last >>> used index as replacement. Tx queue will be stopped if there's not >>> enough freed buffers after recheck. >>> >>> Si...
2019 Oct 22
0
[PATCH] virtio_ring: fix packed ring event may missing
...lback is delayed, virtio expect that vhost will kick when > rolling over event offset. Recheck should be taken as used index may > exceed event offset between status check and driver event update. > > However, it is possible that flags was not modified if descriptors are > chained or in_order feature was negotiated. So flags at event offset > may not be valid for descriptor's status checking. Fix it by using last > used index as replacement. Tx queue will be stopped if there's not > enough freed buffers after recheck. > > Signed-off-by: Marvin Liu <yong.liu at...
2018 Nov 23
5
[PATCH net-next 0/3] basic in order support for vhost_net
...e. The series also implement a simple optimization that avoid read available ring. Test shows 10% performance improvement. More optimizations could be done on top. Jason Wang (3): virtio: introduce in order feature bit vhost_net: support in order feature vhost: don't touch avail ring if in_order is negotiated drivers/vhost/net.c | 6 ++++-- drivers/vhost/vhost.c | 19 ++++++++++++------- include/uapi/linux/virtio_config.h | 6 ++++++ 3 files changed, 22 insertions(+), 9 deletions(-) -- 2.17.1
2019 Nov 01
1
presentation at kvm forum and pagefaults
...r. Packets will only get dropped if all buffers are swapped out, which should be rare with a large RX queue. As I said at the forum, a side buffer for X packets to be stored temporarily is also additionally possible. But with the above it is no longer strictly required. This conflicts with the IN_ORDER feature flag, I guess we will have to re-think this flag then. If we do feel we need to salvage IN_ORDER as is, maybe device can use the buffer with length 0 and driver will re-post it later, but I am not I am not sure about this since involving the VF driver seems inelegant. -- MST
2007 May 18
3
issues with : in the content
Hi, I''ve discovered ferret and aaf this evening, I''ve just done some tests and it seems perfect for my needs. I''m indexing text data (title, description, etc) and also ethernet hardware addresses (MAC). Sorry if that sounds trivial but I can''t find the way to correctly index and achieve correct searches on MAC addresses. If I do something like this: index =
2018 Oct 11
2
[virtio-dev] Re: [PATCH net-next v2 0/5] virtio: support packed ring
...rting from in order can have much simpler code in driver. > > > > > > Thanks > > > > It's tricky to change the flag polarity because of compatibility > > with legacy interfaces. Why is this such a big deal? > > > > Let's teach drivers about IN_ORDER, then if devices > > are in order it will get enabled by default. > > Yeah, make sense. > > Besides, I have done some further profiling and debugging > both in kernel driver and DPDK vhost. Previously I was mislead > by a bug in vhost code. I will send a patch to fix that...
2018 Oct 10
2
[virtio-dev] Re: [PATCH net-next v2 0/5] virtio: support packed ring
...f it's not too late, I second for a OUT_OF_ORDER feature. > Starting from in order can have much simpler code in driver. > > Thanks It's tricky to change the flag polarity because of compatibility with legacy interfaces. Why is this such a big deal? Let's teach drivers about IN_ORDER, then if devices are in order it will get enabled by default. -- MST
2018 Sep 10
0
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...o_ring.c > > @@ -60,11 +60,15 @@ struct vring_desc_state { > > struct vring_desc *indir_desc; /* Indirect descriptor, if any. */ > > }; > > > > +struct vring_desc_state_packed { > > + int next; /* The next desc state. */ > > So this can go away with IN_ORDER? Yes. If IN_ORDER is negotiated, next won't be needed anymore. Currently, IN_ORDER isn't included in this patch set, because some changes for split ring are needed to make sure that it will use the descs in the expected order. After that, optimizations can be done for both of split ring an...
2018 Nov 23
1
[PATCH net-next 2/3] vhost_net: support in order feature
...t; advertise in order when zerocopy is enabled which tends to be > suboptimal consider zerocopy may suffer from e.g HOL issues. Well IIRC vhost_zerocopy_signal_used is used to actually reorder used ring to match available ring. So with a big comment explaining why it is so, we could just enable IN_ORDER there too. > > Signed-off-by: Jason Wang <jasowang at redhat.com> > --- > drivers/vhost/net.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c > index d919284f103b..bdf5de5a7eb2 100644 > ---...
2018 Oct 11
1
[virtio-dev] Re: [PATCH net-next v2 0/5] virtio: support packed ring
...t; > > > > > > > Thanks > > > > > > > > It's tricky to change the flag polarity because of compatibility > > > > with legacy interfaces. Why is this such a big deal? > > > > > > > > Let's teach drivers about IN_ORDER, then if devices > > > > are in order it will get enabled by default. > > > > > > Yeah, make sense. > > > > > > Besides, I have done some further profiling and debugging > > > both in kernel driver and DPDK vhost. Previously I was mislead &...
2019 Oct 25
1
[PATCH] virtio_ring: fix packed ring event may missing
...back is delayed, virtio expect that vhost will kick when > rolling over event offset. Recheck should be taken as used index may > exceed event offset between status check and driver event update. > > However, it is possible that flags was not modified if descriptors are > chained or in_order feature was negotiated. So flags at event offset This mention of event offset I don't understand: your patch only affects code that runs when !event. So how can it affect event offset? > may not be valid for descriptor's status checking. Fix it by using last > used index as replac...
2019 Oct 25
1
[PATCH] virtio_ring: fix packed ring event may missing
...back is delayed, virtio expect that vhost will kick when > rolling over event offset. Recheck should be taken as used index may > exceed event offset between status check and driver event update. > > However, it is possible that flags was not modified if descriptors are > chained or in_order feature was negotiated. So flags at event offset > may not be valid for descriptor's status checking. Fix it by using last > used index as replacement. Tx queue will be stopped if there's not > enough freed buffers after recheck. > > Signed-off-by: Marvin Liu <yong.liu at...
2018 Sep 07
3
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...o_ring.c > +++ b/drivers/virtio/virtio_ring.c > @@ -60,11 +60,15 @@ struct vring_desc_state { > struct vring_desc *indir_desc; /* Indirect descriptor, if any. */ > }; > > +struct vring_desc_state_packed { > + int next; /* The next desc state. */ So this can go away with IN_ORDER? > +}; > + > struct vring_virtqueue { > struct virtqueue vq; > > - /* Actual memory layout for this queue */ > - struct vring vring; > + /* Is this a packed ring? */ > + bool packed; > > /* Can we use weak barriers? */ > bool weak_barriers; > @@ -8...
2018 Sep 07
3
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...o_ring.c > +++ b/drivers/virtio/virtio_ring.c > @@ -60,11 +60,15 @@ struct vring_desc_state { > struct vring_desc *indir_desc; /* Indirect descriptor, if any. */ > }; > > +struct vring_desc_state_packed { > + int next; /* The next desc state. */ So this can go away with IN_ORDER? > +}; > + > struct vring_virtqueue { > struct virtqueue vq; > > - /* Actual memory layout for this queue */ > - struct vring vring; > + /* Is this a packed ring? */ > + bool packed; > > /* Can we use weak barriers? */ > bool weak_barriers; > @@ -8...
2018 Oct 11
0
[virtio-dev] Re: [PATCH net-next v2 0/5] virtio: support packed ring
...OUT_OF_ORDER feature. > > Starting from in order can have much simpler code in driver. > > > > Thanks > > It's tricky to change the flag polarity because of compatibility > with legacy interfaces. Why is this such a big deal? > > Let's teach drivers about IN_ORDER, then if devices > are in order it will get enabled by default. Yeah, make sense. Besides, I have done some further profiling and debugging both in kernel driver and DPDK vhost. Previously I was mislead by a bug in vhost code. I will send a patch to fix that bug. With that bug fixed, the perfo...
2018 Oct 11
0
[virtio-dev] Re: [PATCH net-next v2 0/5] virtio: support packed ring
...impler code in driver. > > > > > > > > Thanks > > > > > > It's tricky to change the flag polarity because of compatibility > > > with legacy interfaces. Why is this such a big deal? > > > > > > Let's teach drivers about IN_ORDER, then if devices > > > are in order it will get enabled by default. > > > > Yeah, make sense. > > > > Besides, I have done some further profiling and debugging > > both in kernel driver and DPDK vhost. Previously I was mislead > > by a bug in vhost cod...
2019 Oct 27
0
[PATCH] virtio_ring: fix packed ring event may missing
...back is delayed, virtio expect that vhost will kick when > rolling over event offset. Recheck should be taken as used index may > exceed event offset between status check and driver event update. > > However, it is possible that flags was not modified if descriptors are > chained or in_order feature was negotiated. So flags at event offset > may not be valid for descriptor's status checking. Fix it by using last > used index as replacement. Tx queue will be stopped if there's not > enough freed buffers after recheck. > > Signed-off-by: Marvin Liu <yong.liu at...