Re: [PATCH v4 08/11] PCI: liveupdate: Require preserved devices are in immutable singleton IOMMU groups

Jason Gunthorpe
2026-04-23T22:53:07Z

On Thu, Apr 23, 2026 at 03:10:55PM -0700, David Matlack wrote:
> On Thu, Apr 23, 2026 at 2:23 PM David Matlack <dmatlack@google.com> wrote:
> >
> > Restrict support for preserving PCI devices across Live Update to
> > devices in immutable singleton IOMMU groups. A device's group is
> > considered immutable if all bridges upstream from the device up to the
> > root port have the required ACS features enabled.
> >
> > Since ACS flags are inherited across a Live Update for preserved devices
> > and all the way up to the root port, the preserved device should be in a
> > singleton IOMMU group after kexec in the new kernel.
> >
> > This change should still permit all the current use-cases for PCI device
> > preservation across Live Update, since it is intended to be used in
> > Cloud enviroments which should have the required ACS features enabled
> > for virtualization purposes.
> >
> > If a device is part of a multi-device IOMMU group, preserving it will
> > now fail with an error. This restriction may be lifted in the future if
> > support for preserving multi-device groups is desired.
> >
> > Signed-off-by: David Matlack <dmatlack@google.com>
>
> Jason, do you think requiring singleton iommu groups is still
> necessary/useful now that this series preserves ACS flags on preserved
> devices and upstream bridges?

I have forgotten why we introduced that? There are alot of funky
things about iommu groups that might be important upon restoration..

Like if you preserve one group member but not the other what do you ?

Even if you have ACS flags there are cases where groups are still
aliasing DMA..

Frankly, multi-device iommu groups don't even work fully last time we
tried to use them in a VMM. So I think I would not expect them to ever
intersect with live update. Blocking something tricky you can't test
does seem like a reasonable thing.

Jason