On Fri, 2017-06-30 at 10:58 +0200, Peter Krempa wrote:
> Or we could just, you know, do the sensible thing and
> store (IOMMU group + 1) instead of (IOMMU group) in
How is that sensible? That looks as a source of bugs in the long run.
Isolation groups are used to make sure any given device ends
up on the same bus as related devices and on a different bus
as unrelated devices.
They're an abstract concept, and while working on the initial
implementation it just happened to be convenient for me to
have the isolation group match the IOMMU group. There's no
specific reason that has to be the case.
We're never converting back and forth between the two, which
I agree would end up in misery at some point down the line;
we just set the isolation group once per device and then just
perform comparison between isolation groups from there on.
--
Andrea Bolognani / Red Hat / Virtualization