Re: [PATCH libdrm] libdrm: Fix drmNodeIsDRM() on DragonFly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 17, 2018 at 06:09:47PM +0000, Emil Velikov wrote:
> On Tue, 11 Dec 2018 at 22:15, François Tigeot <ftigeot@xxxxxxxxxxxx> wrote:
> >
> > * There is no way to check if a device name is really a drm device
> >   by looking it up in a virtual filesystem like on Linux
> >
> > * The major device number is also dynamically allocated from a pool,
> >   comparing it to a constant makes no sense
> >
> > * In the absence of better ideas, just assume the device name really
> >   points to a drm device and always return true
> >
> I guess one could use the sysfs path, although that may require a few
> extra lines to the linux emulation layer.

We currently have such a thing living in local patches and it's a source
of pain; it regularly breaks for one reason or another.
It's not using sysfs but a hw.dri sysctl mechanism originating from FreeBSD.
Some of the patches are visible here:
https://github.com/DragonFlyBSD/DPorts/blob/master/graphics/libdrm/files/patch-xf86drm.c

> What's the reason behind the dynamic allocation of the major? FWIW
> some userspace requires a fixed DRM_MAJOR - they will need patching to
> run :-(

Major/minor numbers were required when device files had to be created on
regular filesystem like UFS but when a devfs filesystem was implemented
for DragonFly almost a decade ago, nobody thought it was important anymore.

There have been no fixed major numbers on DragonFly since 2009 or so.

-- 
Francois Tigeot
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux