[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 26/29] e1000e: Do not assert when MSI-X is disabled later
From: |
Akihiko Odaki |
Subject: |
[PATCH v5 26/29] e1000e: Do not assert when MSI-X is disabled later |
Date: |
Wed, 1 Feb 2023 12:35:36 +0900 |
Assertions will fail if MSI-X gets disabled while a timer for MSI-X
interrupts is running so remove them to avoid abortions. Fortunately,
nothing bad happens even if the assertions won't trigger as
msix_notify(), called by timer handlers, does nothing when MSI-X is
disabled.
This bug was found by Alexander Bulekov when fuzzing igb, a new
device implementation derived from e1000e:
https://patchew.org/QEMU/20230129053316.1071513-1-alxndr@bu.edu/
The fixed test case is:
fuzz/crash_aea040166819193cf9fedb810c6d100221da721a
Fixes: 6f3fbe4ed0 ("net: Introduce e1000e device emulation")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
hw/net/e1000e_core.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index ff93547f88..76c7814cb8 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -162,8 +162,6 @@ e1000e_intrmgr_on_throttling_timer(void *opaque)
{
E1000IntrDelayTimer *timer = opaque;
- assert(!msix_enabled(timer->core->owner));
-
timer->running = false;
if (msi_enabled(timer->core->owner)) {
@@ -183,8 +181,6 @@ e1000e_intrmgr_on_msix_throttling_timer(void *opaque)
E1000IntrDelayTimer *timer = opaque;
int idx = timer - &timer->core->eitr[0];
- assert(msix_enabled(timer->core->owner));
-
timer->running = false;
trace_e1000e_irq_msix_notify_postponed_vec(idx);
--
2.39.1
- [PATCH v5 17/29] e1000e: Remove extra pointer indirection, (continued)
- [PATCH v5 17/29] e1000e: Remove extra pointer indirection, Akihiko Odaki, 2023/01/31
- [PATCH v5 18/29] net: Check L4 header size, Akihiko Odaki, 2023/01/31
- [PATCH v5 19/29] e1000x: Alter the signature of e1000x_is_vlan_packet, Akihiko Odaki, 2023/01/31
- [PATCH v5 20/29] net: Strip virtio-net header when dumping, Akihiko Odaki, 2023/01/31
- [PATCH v5 21/29] hw/net/net_tx_pkt: Automatically determine if virtio-net header is used, Akihiko Odaki, 2023/01/31
- [PATCH v5 22/29] hw/net/net_rx_pkt: Remove net_rx_pkt_has_virt_hdr, Akihiko Odaki, 2023/01/31
- [PATCH v5 23/29] e1000e: Perform software segmentation for loopback, Akihiko Odaki, 2023/01/31
- [PATCH v5 25/29] hw/net/net_tx_pkt: Check the payload length, Akihiko Odaki, 2023/01/31
- [PATCH v5 27/29] MAINTAINERS: Add Akihiko Odaki as a e1000e reviewer, Akihiko Odaki, 2023/01/31
- [PATCH v5 24/29] hw/net/net_tx_pkt: Implement TCP segmentation, Akihiko Odaki, 2023/01/31
- [PATCH v5 26/29] e1000e: Do not assert when MSI-X is disabled later,
Akihiko Odaki <=
- [PATCH v5 28/29] MAINTAINERS: Add e1000e test files, Akihiko Odaki, 2023/01/31
- [PATCH v5 29/29] e1000e: Combine rx traces, Akihiko Odaki, 2023/01/31