On Mon, Oct 25, 2021 at 08:36:02PM -0300, Jason Gunthorpe wrote: > On Tue, Oct 26, 2021 at 12:16:43AM +1100, David Gibson wrote: > > If you attach devices A and B (both in group X) to IOAS 1, then detach > > device A, what happens? Do you detach both devices? Or do you have a > > counter so you have to detach as many time as you attached? > > I would refcount it since that is the only thing that makes semantic > sense with the device centric model. Yes, I definitely think that's the better option here. This does still leave (at least) one weird edge case where the group structure can "leak" into the awareness of code that otherwise doesn't care, though it's definitely less nasty that the ones I mentioned before: If an app wants to move a bunch of devices from one IOAS to another, it can do it either: A) for each dev: detach dev from IOAS for each dev: attach dev to new IOAS or B) for each dev: detach dev from IOAS attach dev to new IOAS With only singleton groups they're pretty much equivalent, but with multiple devices in a group, (B) will fail. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson