search for: event_flags_shadow

Displaying 20 results from an estimated 85 matches for "event_flags_shadow".

2018 May 02
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...ed_idx >= vq->vring_packed.num) > vq->last_used_idx -= vq->vring_packed.num; > > + /* If we expect an interrupt for the next entry, tell host > + * by writing event index and flush out the write before > + * the read in the next get_buf call. */ > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > + virtio_store_mb(vq->weak_barriers, > + &vq->vring_packed.driver->off_wrap, > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > + (vq->wrap_counter << 15))); > + > #ifdef DEBUG > vq->last_add_time_valid...
2018 May 02
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...ed_idx >= vq->vring_packed.num) > vq->last_used_idx -= vq->vring_packed.num; > > + /* If we expect an interrupt for the next entry, tell host > + * by writing event index and flush out the write before > + * the read in the next get_buf call. */ > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > + virtio_store_mb(vq->weak_barriers, > + &vq->vring_packed.driver->off_wrap, > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > + (vq->wrap_counter << 15))); > + > #ifdef DEBUG > vq->last_add_time_valid...
2018 May 02
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...> > vq->last_used_idx -= vq->vring_packed.num; > > > + /* If we expect an interrupt for the next entry, tell host > > > + * by writing event index and flush out the write before > > > + * the read in the next get_buf call. */ > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > + virtio_store_mb(vq->weak_barriers, > > > + &vq->vring_packed.driver->off_wrap, > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > + (vq->wrap_counter << 15))); > > > + >...
2018 May 02
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...> > vq->last_used_idx -= vq->vring_packed.num; > > > + /* If we expect an interrupt for the next entry, tell host > > > + * by writing event index and flush out the write before > > > + * the read in the next get_buf call. */ > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > + virtio_store_mb(vq->weak_barriers, > > > + &vq->vring_packed.driver->off_wrap, > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > + (vq->wrap_counter << 15))); > > > + >...
2018 Sep 07
1
[PATCH net-next v2 4/5] virtio_ring: add event idx support in packed ring
...eue *_vq, > ret = vq->desc_state_packed[id].data; > detach_buf_packed(vq, id, ctx); > > + /* If we expect an interrupt for the next entry, tell host > + * by writing event index and flush out the write before > + * the read in the next get_buf call. */ > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > + virtio_store_mb(vq->weak_barriers, > + &vq->vring_packed.driver->off_wrap, > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > + ((u16)vq->used_wrap_counter << 15))); > + > #ifdef DEBUG > vq->last_add_time...
2018 May 16
2
[RFC v4 4/5] virtio_ring: add event idx support in packed ring
..._counter; > + if (vq->last_used_idx > vq->next_avail_idx) > + wrap_counter ^= 1; > + > + /* If we expect an interrupt for the next entry, tell host > + * by writing event index and flush out the write before > + * the read in the next get_buf call. */ > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > + virtio_store_mb(vq->weak_barriers, > + &vq->vring_packed.driver->off_wrap, > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > + (wrap_counter << 15))); > + > #ifdef DEBUG > vq->last_add_time_valid = false...
2018 May 16
2
[RFC v4 4/5] virtio_ring: add event idx support in packed ring
..._counter; > + if (vq->last_used_idx > vq->next_avail_idx) > + wrap_counter ^= 1; > + > + /* If we expect an interrupt for the next entry, tell host > + * by writing event index and flush out the write before > + * the read in the next get_buf call. */ > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > + virtio_store_mb(vq->weak_barriers, > + &vq->vring_packed.driver->off_wrap, > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > + (wrap_counter << 15))); > + > #ifdef DEBUG > vq->last_add_time_valid = false...
2018 May 02
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...q->vring_packed.num; > > > > > + /* If we expect an interrupt for the next entry, tell host > > > > > + * by writing event index and flush out the write before > > > > > + * the read in the next get_buf call. */ > > > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > > > + virtio_store_mb(vq->weak_barriers, > > > > > + &vq->vring_packed.driver->off_wrap, > > > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > > > + (vq->wrap_counte...
2018 May 02
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...q->vring_packed.num; > > > > > + /* If we expect an interrupt for the next entry, tell host > > > > > + * by writing event index and flush out the write before > > > > > + * the read in the next get_buf call. */ > > > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > > > + virtio_store_mb(vq->weak_barriers, > > > > > + &vq->vring_packed.driver->off_wrap, > > > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > > > + (vq->wrap_counte...
2018 May 16
1
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...ed_idx >= vq->vring_packed.num) > vq->last_used_idx -= vq->vring_packed.num; > > + /* If we expect an interrupt for the next entry, tell host > + * by writing event index and flush out the write before > + * the read in the next get_buf call. */ > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > + virtio_store_mb(vq->weak_barriers, > + &vq->vring_packed.driver->off_wrap, > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > + (vq->wrap_counter << 15))); > + > #ifdef DEBUG > vq->last_add_time_valid...
2018 Apr 25
0
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...queue *_vq, if (vq->last_used_idx >= vq->vring_packed.num) vq->last_used_idx -= vq->vring_packed.num; + /* If we expect an interrupt for the next entry, tell host + * by writing event index and flush out the write before + * the read in the next get_buf call. */ + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) + virtio_store_mb(vq->weak_barriers, + &vq->vring_packed.driver->off_wrap, + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | + (vq->wrap_counter << 15))); + #ifdef DEBUG vq->last_add_time_valid = false; #endif @@ -1143,10 +1160,17...
2018 Jul 09
0
[PATCH net-next v1 4/5] virtio_ring: add event idx support in packed ring
...ue_get_buf_ctx_packed(struct virtqueue *_vq, ret = vq->desc_state_packed[id].data; detach_buf_packed(vq, id, ctx); + /* If we expect an interrupt for the next entry, tell host + * by writing event index and flush out the write before + * the read in the next get_buf call. */ + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) + virtio_store_mb(vq->weak_barriers, + &vq->vring_packed.driver->off_wrap, + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | + ((u16)vq->used_wrap_counter << 15))); + #ifdef DEBUG vq->last_add_time_valid = false; #endif @@ -1213,8...
2018 Jul 11
0
[PATCH net-next v2 4/5] virtio_ring: add event idx support in packed ring
...ue_get_buf_ctx_packed(struct virtqueue *_vq, ret = vq->desc_state_packed[id].data; detach_buf_packed(vq, id, ctx); + /* If we expect an interrupt for the next entry, tell host + * by writing event index and flush out the write before + * the read in the next get_buf call. */ + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) + virtio_store_mb(vq->weak_barriers, + &vq->vring_packed.driver->off_wrap, + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | + ((u16)vq->used_wrap_counter << 15))); + #ifdef DEBUG vq->last_add_time_valid = false; #endif @@ -1213,8...
2018 May 16
0
[RFC v4 4/5] virtio_ring: add event idx support in packed ring
...r instead of calculating it each time I need it.. I'll give it a try.. > > > + wrap_counter ^= 1; > > + > > + vq->vring_packed.driver->off_wrap = cpu_to_virtio16(_vq->vdev, > > + vq->last_used_idx | (wrap_counter << 15)); > > if (vq->event_flags_shadow == VRING_EVENT_F_DISABLE) { > > virtio_wmb(vq->weak_barriers); > > - vq->event_flags_shadow = VRING_EVENT_F_ENABLE; > > + vq->event_flags_shadow = vq->event ? VRING_EVENT_F_DESC : > > + VRING_EVENT_F_ENABLE; > > vq->vring_packed.drive...
2018 Jun 05
0
[RFC v6 4/5] virtio_ring: add event idx support in packed ring
...ue_get_buf_ctx_packed(struct virtqueue *_vq, ret = vq->desc_state_packed[id].data; detach_buf_packed(vq, id, ctx); + /* If we expect an interrupt for the next entry, tell host + * by writing event index and flush out the write before + * the read in the next get_buf call. */ + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) + virtio_store_mb(vq->weak_barriers, + &vq->vring_packed.driver->off_wrap, + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | + ((u16)vq->used_wrap_counter << 15))); + #ifdef DEBUG vq->last_add_time_valid = false; #endif @@ -1204,9...
2018 May 16
0
[RFC v4 4/5] virtio_ring: add event idx support in packed ring
...tx); + wrap_counter = vq->wrap_counter; + if (vq->last_used_idx > vq->next_avail_idx) + wrap_counter ^= 1; + + /* If we expect an interrupt for the next entry, tell host + * by writing event index and flush out the write before + * the read in the next get_buf call. */ + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) + virtio_store_mb(vq->weak_barriers, + &vq->vring_packed.driver->off_wrap, + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | + (wrap_counter << 15))); + #ifdef DEBUG vq->last_add_time_valid = false; #endif @@ -1160,15 +1186,27 @@ sta...
2018 May 03
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...gt; > > > + /* If we expect an interrupt for the next entry, tell host > > > > > > > + * by writing event index and flush out the write before > > > > > > > + * the read in the next get_buf call. */ > > > > > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > > > > > + virtio_store_mb(vq->weak_barriers, > > > > > > > + &vq->vring_packed.driver->off_wrap, > > > > > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > > &...
2018 May 03
2
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...gt; > > > + /* If we expect an interrupt for the next entry, tell host > > > > > > > + * by writing event index and flush out the write before > > > > > > > + * the read in the next get_buf call. */ > > > > > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > > > > > + virtio_store_mb(vq->weak_barriers, > > > > > > > + &vq->vring_packed.driver->off_wrap, > > > > > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > > &...
2018 May 02
0
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...gt;vring_packed.num) > > vq->last_used_idx -= vq->vring_packed.num; > > + /* If we expect an interrupt for the next entry, tell host > > + * by writing event index and flush out the write before > > + * the read in the next get_buf call. */ > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > + virtio_store_mb(vq->weak_barriers, > > + &vq->vring_packed.driver->off_wrap, > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > + (vq->wrap_counter << 15))); > > + > > #ifdef DEBUG >...
2018 May 02
0
[RFC v3 4/5] virtio_ring: add event idx support in packed ring
...t;last_used_idx -= vq->vring_packed.num; > > > > + /* If we expect an interrupt for the next entry, tell host > > > > + * by writing event index and flush out the write before > > > > + * the read in the next get_buf call. */ > > > > + if (vq->event_flags_shadow == VRING_EVENT_F_DESC) > > > > + virtio_store_mb(vq->weak_barriers, > > > > + &vq->vring_packed.driver->off_wrap, > > > > + cpu_to_virtio16(_vq->vdev, vq->last_used_idx | > > > > + (vq->wrap_counter << 15))); &g...