search for: busypoll

Displaying 20 results from an estimated 67 matches for "busypoll".

2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...te: > On 2018?07?02? 10:45, Toshiaki Makita wrote: >> Hi Jason, >> >> On 2018/06/29 18:30, Jason Wang wrote: >>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >> ... >>>> To fix this, poll the work instead of enabling notification when >>>> busypoll is interrupted by something. IMHO signal_pending() and >>>> vhost_has_work() are kind of interruptions rather than signals to >>>> completely cancel the busypoll, so let's run busypoll after the >>>> necessary work is done. In order to avoid too long busyloop...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...te: > On 2018?07?02? 10:45, Toshiaki Makita wrote: >> Hi Jason, >> >> On 2018/06/29 18:30, Jason Wang wrote: >>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >> ... >>>> To fix this, poll the work instead of enabling notification when >>>> busypoll is interrupted by something. IMHO signal_pending() and >>>> vhost_has_work() are kind of interruptions rather than signals to >>>> completely cancel the busypoll, so let's run busypoll after the >>>> necessary work is done. In order to avoid too long busyloop...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...t;>>> Hi Jason, >>>> >>>> On 2018/06/29 18:30, Jason Wang wrote: >>>>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >>>> ... >>>>>> To fix this, poll the work instead of enabling notification when >>>>>> busypoll is interrupted by something. IMHO signal_pending() and >>>>>> vhost_has_work() are kind of interruptions rather than signals to >>>>>> completely cancel the busypoll, so let's run busypoll after the >>>>>> necessary work is done. In order to...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...t;>>> Hi Jason, >>>> >>>> On 2018/06/29 18:30, Jason Wang wrote: >>>>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >>>> ... >>>>>> To fix this, poll the work instead of enabling notification when >>>>>> busypoll is interrupted by something. IMHO signal_pending() and >>>>>> vhost_has_work() are kind of interruptions rather than signals to >>>>>> completely cancel the busypoll, so let's run busypoll after the >>>>>> necessary work is done. In order to...
2018 Jul 02
1
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...; >>>>>> On 2018/06/29 18:30, Jason Wang wrote: >>>>>>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >>>>>> ... >>>>>>>> To fix this, poll the work instead of enabling notification when >>>>>>>> busypoll is interrupted by something. IMHO signal_pending() and >>>>>>>> vhost_has_work() are kind of interruptions rather than signals to >>>>>>>> completely cancel the busypoll, so let's run busypoll after the >>>>>>>> necessary w...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
Hi Jason, On 2018/06/29 18:30, Jason Wang wrote: > On 2018?06?29? 16:09, Toshiaki Makita wrote: ... >> To fix this, poll the work instead of enabling notification when >> busypoll is interrupted by something. IMHO signal_pending() and >> vhost_has_work() are kind of interruptions rather than signals to >> completely cancel the busypoll, so let's run busypoll after the >> necessary work is done. In order to avoid too long busyloop due to >> interru...
2018 Jul 02
0
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...5, Toshiaki Makita wrote: >>> Hi Jason, >>> >>> On 2018/06/29 18:30, Jason Wang wrote: >>>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >>> ... >>>>> To fix this, poll the work instead of enabling notification when >>>>> busypoll is interrupted by something. IMHO signal_pending() and >>>>> vhost_has_work() are kind of interruptions rather than signals to >>>>> completely cancel the busypoll, so let's run busypoll after the >>>>> necessary work is done. In order to avoid too l...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
Hi Jason, On 2018/06/29 18:30, Jason Wang wrote: > On 2018?06?29? 16:09, Toshiaki Makita wrote: ... >> To fix this, poll the work instead of enabling notification when >> busypoll is interrupted by something. IMHO signal_pending() and >> vhost_has_work() are kind of interruptions rather than signals to >> completely cancel the busypoll, so let's run busypoll after the >> necessary work is done. In order to avoid too long busyloop due to >> interru...
2018 Jul 02
0
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
...>>>>> >>>>> On 2018/06/29 18:30, Jason Wang wrote: >>>>>> On 2018?06?29? 16:09, Toshiaki Makita wrote: >>>>> ... >>>>>>> To fix this, poll the work instead of enabling notification when >>>>>>> busypoll is interrupted by something. IMHO signal_pending() and >>>>>>> vhost_has_work() are kind of interruptions rather than signals to >>>>>>> completely cancel the busypoll, so let's run busypoll after the >>>>>>> necessary work is done....
2018 Jul 02
0
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
On 2018?07?02? 10:45, Toshiaki Makita wrote: > Hi Jason, > > On 2018/06/29 18:30, Jason Wang wrote: >> On 2018?06?29? 16:09, Toshiaki Makita wrote: > ... >>> To fix this, poll the work instead of enabling notification when >>> busypoll is interrupted by something. IMHO signal_pending() and >>> vhost_has_work() are kind of interruptions rather than signals to >>> completely cancel the busypoll, so let's run busypoll after the >>> necessary work is done. In order to avoid too long busyloop due to >...
2018 Jul 03
2
[PATCH v2 net-next 4/4] vhost_net: Avoid rx vring kicks during busyloop
On 2018?07?03? 15:31, Toshiaki Makita wrote: > We may run out of avail rx ring descriptor under heavy load but busypoll > did not detect it so busypoll may have exited prematurely. Avoid this by > checking rx ring full during busypoll. Actually, we're checking whether it was empty in fact? > > Signed-off-by: Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> > --- > drivers/vhost/net....
2018 Jul 03
2
[PATCH v2 net-next 4/4] vhost_net: Avoid rx vring kicks during busyloop
On 2018?07?03? 15:31, Toshiaki Makita wrote: > We may run out of avail rx ring descriptor under heavy load but busypoll > did not detect it so busypoll may have exited prematurely. Avoid this by > checking rx ring full during busypoll. Actually, we're checking whether it was empty in fact? > > Signed-off-by: Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> > --- > drivers/vhost/net....
2018 Jul 03
11
[PATCH v2 net-next 0/4] vhost_net: Avoid vq kicks during busyloop
Under heavy load vhost tx busypoll tend not to suppress vq kicks, which causes poor guest tx performance. The detailed scenario is described in commitlog of patch 2. Rx seems not to have that serious problem, but for consistency I made a similar change on rx to avoid rx wakeups (patch 3). Additionary patch 4 is to avoid rx kicks und...
2018 Jun 29
5
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
Under heavy load vhost busypoll may run without suppressing notification. For example tx zerocopy callback can push tx work while handle_tx() is running, then busyloop exits due to vhost_has_work() condition and enables notification but immediately reenters handle_tx() because the pushed work was tx. In this case handle_tx() trie...
2018 Jun 29
5
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
Under heavy load vhost busypoll may run without suppressing notification. For example tx zerocopy callback can push tx work while handle_tx() is running, then busyloop exits due to vhost_has_work() condition and enables notification but immediately reenters handle_tx() because the pushed work was tx. In this case handle_tx() trie...
2018 Jun 29
0
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
On Fri, Jun 29, 2018 at 05:09:50PM +0900, Toshiaki Makita wrote: > Under heavy load vhost busypoll may run without suppressing > notification. For example tx zerocopy callback can push tx work while > handle_tx() is running, then busyloop exits due to vhost_has_work() > condition and enables notification but immediately reenters handle_tx() > because the pushed work was tx. In this c...
2018 Jul 02
0
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
On 2018/07/02 11:41, Jason Wang wrote: > On 2018?06?30? 00:38, Michael S. Tsirkin wrote: >> On Fri, Jun 29, 2018 at 05:09:50PM +0900, Toshiaki Makita wrote: >>> Under heavy load vhost busypoll may run without suppressing >>> notification. For example tx zerocopy callback can push tx work while >>> handle_tx() is running, then busyloop exits due to vhost_has_work() >>> condition and enables notification but immediately reenters handle_tx() >>> because t...
2018 Jul 03
0
[PATCH v2 net-next 3/4] vhost_net: Avoid rx queue wake-ups during busypoll
We may run handle_rx() while rx work is queued. For example a packet can push the rx work during the window before handle_rx calls vhost_net_disable_vq(). In that case busypoll immediately exits due to vhost_has_work() condition and enables vq again. This can lead to another unnecessary rx wake-ups, so poll rx work instead of enabling the vq. Signed-off-by: Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> --- drivers/vhost/net.c | 26 +++++++++++++++++++-------...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
On 2018?06?30? 00:38, Michael S. Tsirkin wrote: > On Fri, Jun 29, 2018 at 05:09:50PM +0900, Toshiaki Makita wrote: >> Under heavy load vhost busypoll may run without suppressing >> notification. For example tx zerocopy callback can push tx work while >> handle_tx() is running, then busyloop exits due to vhost_has_work() >> condition and enables notification but immediately reenters handle_tx() >> because the pushed work w...
2018 Jul 02
2
[PATCH vhost] vhost_net: Fix too many vring kick on busypoll
On 2018?06?30? 00:38, Michael S. Tsirkin wrote: > On Fri, Jun 29, 2018 at 05:09:50PM +0900, Toshiaki Makita wrote: >> Under heavy load vhost busypoll may run without suppressing >> notification. For example tx zerocopy callback can push tx work while >> handle_tx() is running, then busyloop exits due to vhost_has_work() >> condition and enables notification but immediately reenters handle_tx() >> because the pushed work w...