Hi Pekka, Those are fair answers. In my case, it does happen that the configuration available on the virtual cards includes a way to set distinct names reported by drmGetVersion()->name. It looks like the consensus is that UDev rules probably shouldn't be consulting the name as a distinguishing/durable identifier of cards, and that the physical path is the standard thing used to disambiguate. Thanks. -Matt On 9/23/21, 8:39 AM, "Pekka Paalanen" <ppaalanen@xxxxxxxxx> wrote: On Wed, 22 Sep 2021 16:16:48 +0000 "Hoosier, Matt" <Matt.Hoosier@xxxxxxxxxx> wrote: > > The /dev/dri/by-path idea works, I suppose, if you have different > physical graphics cards. In my case, that's not true. These are > virtualized cards that the silicon vendor's DRM drivers use to expose > different subsets of DRM resources as different cards. So there's > only one /dev/dri/by-path card here. Think: DRM leases, but with the > lessees popping out as card nodes rather than arranged dynamically > using the drm ioctl()'s to manufature leases. That's the standard solution though, I believe: use devpath for matching the device, because the device doesn't randomly jump from a physical connector (e.g. PCIe slot) to another. But since you have virtual cards, that obviously doesn't work. I'm afraid you need to solve this with your virtual card provider. Maybe there could be some sort of virtual bus with persistent addresses which would make devpath reliable? I wouldn't expect drmGetVersion()->name to differ between the (virtual) devices since they are all using the same driver, right? Sorry, pq > The use-case here is to allow separate DRM domains for each of > several containers. It's not really desirable to try to funnel > everybody's graphics through a common compositor that runs all the > connectors. > ________________________________ CONFIDENTIALITY NOTICE: This email and any attachments are for the sole use of the intended recipient(s) and contain information that may be Garmin confidential and/or Garmin legally privileged. If you have received this email in error, please notify the sender by reply email and delete the message. Any disclosure, copying, distribution or use of this communication (including attachments) by someone other than the intended recipient is prohibited. Thank you.