[RFC PATCH 0/2] libdrm: Add master <> render node helpers

David Herrmann dh.herrmann at gmail.com
Thu Feb 12 10:21:43 PST 2015


Hi

On Tue, Feb 10, 2015 at 11:37 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> On 02/02/15 00:14, Emil Velikov wrote:
>> Hi all,
>>
>> As mentioned a couple of days ago at #dri-devel some(most) users of
>> render nodes tend to rely on strict mapping between the primary and
>> render node. I.e. something along the lines of
>>
>>   fstat(render_fd, &sbuf);
>>   sprintf(primary_node, "/dev/dri/card%d",
>>                         ((sbuf.st_rdev & 0x3f) | 0x80));
>>
>> Currently the following are (ab)using the above code:
>>  - xf86-video-nouveau
>>  - xf86-video-intel
>>  - libva (vaapi)
>>
>> As reminded by David Herrman, this is not the correct solution - thus
>> I've added a couple of helpers which walk through sysfs of the
>> respecitive device and return the correct device name.
>>
>> I'm not 100% happy with the function names, so suggestions are greatly
>> appreciated. Any other comments are also welcome :)
>>
>> Note: BSD guys - you'll likely need your own version of these functions.
>>
> David, Daniel
>
> Can you please take a look at these two patches. Would be great if we
> can minimize the above assumptions before they get too wide spread.

The patches look ok. I really dislike the direct file-probing, though.
I'd recommend using libudev or readdir_r() on /dev/dri/, but I'm not
the one to ask about coding-style for libdrm, so fine with me.

Thanks
David


More information about the dri-devel mailing list