On Mon, 5 Oct 2020 09:52:25 -0400 Matthew Rosato <mjrosato@xxxxxxxxxxxxx> wrote: > On 10/2/20 5:44 PM, Alex Williamson wrote: > > Can you discuss why a region with embedded capability chain is a better > > solution than extending the VFIO_DEVICE_GET_INFO ioctl to support a > > capability chain and providing this info there? This all appears to be > > read-only info, so what's the benefit of duplicating yet another > > It is indeed read-only info, and the device region was defined as such. > > I would not necessarily be opposed to extending VFIO_DEVICE_GET_INFO > with these defined as capabilities; I'd say a primary motivating factor > to putting these in their own region was to avoid stuffing a bunch of > s390-specific capabilities into a general-purpose ioctl response. Can't you make the zdev code register the capabilities? That would put them nicely into their own configurable part. > > But if you're OK with that notion, I can give that a crack in v3. > > > capability chain in a region? It would also be possible to define four > > separate device specific regions, one for each of these capabilities > > rather than creating this chain. It just seems like a strange approach > > I'm not sure if creating separate regions would be the right approach > though; these are just the first 4. There will definitely be additional > capabilities in support of new zPCI features moving forward, I'm not > sure how many regions we really want to end up with. Some might be as > small as a single field, which seems more in-line with capabilities vs > an entire region. If we are expecting more of these in the future, going with GET_INFO capabilities when adding new ones seems like the best approach.