Project

General

Profile

Actions

Bug #6341

closed

virtio doesn't try hard enough to get MSI interrupts

Added by Josef Sipek almost 8 years ago. Updated about 3 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
driver - device drivers
Start date:
2015-10-16
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
External Bug:

Description

virtio_register_msi() doesn't seem to try hard enough with MSI. Specifically, suppose the system supports MSIX, MSI, and FIXED. virtio_register_msi() will try to register MSIX interrupts. Suppose that fails. Instead of moving onto the next preferred one (MSI), it bails. Then virtio_register_ints() tries to salvage the situation by calling virtio_register_intx() to register FIXED interrupts. This seems suboptimal. It should try to get MSI before totally giving up on MSI-type interrupt.


Related issues

Related to illumos gate - Feature #11329: improved Virtio frameworkClosedJoshua M. Clulow

Actions
Blocked by illumos gate - Bug #6166: fix MSI-X support in virtio driverClosed2015-08-26

Actions
Actions #1

Updated by Josef Sipek almost 8 years ago

  • Blocked by Bug #6166: fix MSI-X support in virtio driver added
Actions #2

Updated by Joshua M. Clulow about 3 years ago

  • Status changed from New to Rejected
  • Tags deleted (needs-triage)

I reworked the interrupt allocation behaviour in #11329, so I don't think this applies any longer. Note that although the original code needed improvement, the omission of MSI interrupts is actually (it seems) on account the Virtio specification; it specifies a way to use MSI-X but not MSI interrupt vectors.

Actions #3

Updated by Joshua M. Clulow about 3 years ago

Actions

Also available in: Atom PDF