xen/netfront: harden netfront against event channel storms
authorJuergen Gross <jgross@suse.com>
Thu, 16 Dec 2021 07:24:08 +0000 (08:24 +0100)
committerJuergen Gross <jgross@suse.com>
Thu, 16 Dec 2021 07:24:08 +0000 (08:24 +0100)
commitb27d47950e481f292c0a5ad57357edb9d95d03ba
tree70138903bebbabdfa8bb14f7f7dd286b50436a80
parent0fd08a34e8e3b67ec9bd8287ac0facf8374b844a
xen/netfront: harden netfront against event channel storms

The Xen netfront driver is still vulnerable for an attack via excessive
number of events sent by the backend. Fix that by using lateeoi event
channels.

For being able to detect the case of no rx responses being added while
the carrier is down a new lock is needed in order to update and test
rsp_cons and the number of seen unconsumed responses atomically.

This is part of XSA-391

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
V2:
- don't eoi irq in case of interface set broken (Jan Beulich)
- handle carrier off + no new responses added (Jan Beulich)
V3:
- add rx_ prefix to rsp_unconsumed (Jan Beulich)
- correct xennet_set_rx_rsp_cons() spelling (Jan Beulich)
drivers/net/xen-netfront.c