[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] xen/netfront: Fix TX response spurious interrupts
On Fri, Jul 11, 2025 at 07:41:02AM +0000, Anthoine Bourgeois wrote: > On Thu, Jul 10, 2025 at 01:05:47PM -0700, Elliott Mitchell wrote: > >On Thu, Jul 10, 2025 at 04:11:15PM +0000, Anthoine Bourgeois wrote: > >> We found at Vates that there are lot of spurious interrupts when > >> benchmarking the PV drivers of Xen. This issue appeared with a patch > >> that addresses security issue XSA-391 (see Fixes below). On an iperf > >> benchmark, spurious interrupts can represent up to 50% of the > >> interrupts. > > > >If this is the correct fix, near-identical fixes are needed for *all* > >of the Xen front-ends. Xen virtual block-devices and Xen PCI-passthrough > >devices are also effected by a similar issue. > > > blkfront doesn't call the response handle from multiple places. It > doesn't seem to be affected by this problem. > And pcifront neither. Ick. I had hope it might be a single bug, or at worst a group of highly similar bugs. This may be several distinct bugs then. :-( When this bug was first reportted to xen-devel@, I noticed reports of spurious interrupts on the block backend. Due to a piece of hardware intended for pass-through, I now know it manifests on the PCI backend too. Perhaps you hadn't noticed due to caching lessening the impact of spurious events on virtual block devices? Whatever the case `ls /sys/devices/??*-[0-9]*-[0-9]*/xenbus/spurious_events` shows spurious interrupts on pretty well every virtual device for me (I plan to test the fix for net-front in the near future). > >Thanks for finding a candidate fix, this effects many other people who > >have been troubled by this performance issue. > > > >FreeBSD will also need a similar fix. > > In FreeBSD, netfront may also be affected. > xn_assemble_tx_request calls xn_txeof. > blkfront and pcifront seems good. Interestingly the problem doesn't seem nearly as severe on ARM. -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | ehem+sigmsg@xxxxxxx PGP 87145445 | ) / \_CS\ | _____ -O #include <stddisclaimer.h> O- _____ | / _/ 8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |