All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] e1000e: Do not auto-clear ICR bits which aren't set in EIAC
@ 2018-04-01 21:17 Jan Kiszka
  2018-04-01 21:25 ` no-reply
                   ` (2 more replies)
  0 siblings, 3 replies; 17+ messages in thread
From: Jan Kiszka @ 2018-04-01 21:17 UTC (permalink / raw)
  To: Dmitry Fleytman, qemu-devel

From: Jan Kiszka <jan.kiszka@siemens.com>

The spec does not justify clearing of any E1000_ICR_OTHER_CAUSES when
E1000_ICR_OTHER is set in EIAC. In fact, removing this code fixes the
issue the Linux driver runs into since 4aea7a5c5e94 ("e1000e: Avoid
receiver overrun interrupt bursts") and was worked around by
745d0bd3af99 ("e1000e: Remove Other from EIAC").

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---

This resolves the issue I reported on February 18 ("e1000e: MSI-X
problem with recent Linux drivers").

 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 ecf9b15555..d38f025c0f 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -2022,10 +2022,6 @@ e1000e_msix_notify_one(E1000ECore *core, uint32_t cause, uint32_t int_cfg)
 
     effective_eiac = core->mac[EIAC] & cause;
 
-    if (effective_eiac == E1000_ICR_OTHER) {
-        effective_eiac |= E1000_ICR_OTHER_CAUSES;
-    }
-
     core->mac[ICR] &= ~effective_eiac;
 
     if (!(core->mac[CTRL_EXT] & E1000_CTRL_EXT_IAME)) {
-- 
2.13.6

^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-06-15 16:07 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-01 21:17 [Qemu-devel] [PATCH] e1000e: Do not auto-clear ICR bits which aren't set in EIAC Jan Kiszka
2018-04-01 21:25 ` no-reply
2018-04-01 21:32 ` no-reply
2018-04-16 15:25 ` Jan Kiszka
2018-04-16 15:29   ` Peter Maydell
2018-05-22  7:00     ` Jan Kiszka
2018-06-12 17:22       ` Jan Kiszka
2018-06-12 18:11         ` Philippe Mathieu-Daudé
2018-06-12 18:30           ` Jan Kiszka
2018-06-12 18:38             ` Philippe Mathieu-Daudé
2018-06-12 18:43               ` Jan Kiszka
2018-06-12 19:00                 ` Philippe Mathieu-Daudé
2018-06-13  2:18                   ` Jason Wang
2018-06-13  2:26                     ` Philippe Mathieu-Daudé
2018-06-13  2:29                       ` Jason Wang
2018-06-15  2:07                         ` Jason Wang
2018-06-15 16:06                           ` Jan Kiszka

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.