Project

General

Profile

Actions

Bug #14360

open

viona should better notify of lintrs

Added by Patrick Mooney 6 months ago.

Status:
In Progress
Priority:
Normal
Category:
bhyve
Start date:
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

When virtqueues managed by viona need to notify the guest of an interrupt, there are several potential outcomes: If the guest has configured and enabled MSI-X for the virtqueue, an in-kernel (provided by the vmm_drv interface) fast path is used to post the interrupt. If MSI-X is not enabled, then it will be left to userspace to notify the guest via a legacy pin interrupt (if enabled), or at least make the interrupt visible via the virtio-pci ISR register. It is this legacy interrupt path which needs to be improved, as it currently depends notification via POLLRDBAD to indicate that one or more virtqueues have pending "legacy" interrupt status(es) asserted. This was workable in C-bhyve, but has proven to be inconvenient when driving the device from an alternative (rust-based) userspace, where the IO system uses plain epoll without the notion of "rich" events like POLLRDBAND. Tying those viona notifications to something like eventfd would make it simple for both consumers.

No data to display

Actions

Also available in: Atom PDF