diff options
| author | Ake Koomsin | 2022-07-20 13:13:03 +0200 |
|---|---|---|
| committer | Jason Wang | 2022-07-26 10:23:54 +0200 |
| commit | dd0ef128669c29734a197ca9195e7ab64e20ba2c (patch) | |
| tree | f9c197f3e9042dc6bf52eef6254fedae177b0675 /python/MANIFEST.in | |
| parent | Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (diff) | |
| download | qemu-dd0ef128669c29734a197ca9195e7ab64e20ba2c.tar.gz qemu-dd0ef128669c29734a197ca9195e7ab64e20ba2c.tar.xz qemu-dd0ef128669c29734a197ca9195e7ab64e20ba2c.zip | |
e1000e: Fix possible interrupt loss when using MSI
Commit "e1000e: Prevent MSI/MSI-X storms" introduced msi_causes_pending
to prevent interrupt storms problem. It was tested with MSI-X.
In case of MSI, the guest can rely solely on interrupts to clear ICR.
Upon clearing all pending interrupts, msi_causes_pending gets cleared.
However, when e1000e_itr_should_postpone() in e1000e_send_msi() returns
true, MSI never gets fired by e1000e_intrmgr_on_throttling_timer()
because msi_causes_pending is still set. This results in interrupt loss.
To prevent this, we need to clear msi_causes_pending when MSI is going
to get fired by the throttling timer. The guest can then receive
interrupts eventually.
Signed-off-by: Ake Koomsin <ake@igel.co.jp>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'python/MANIFEST.in')
0 files changed, 0 insertions, 0 deletions
