[Mesa-dev] [PATCH 0/2] anv/i965: drop libdrm dependency completely

Eric Anholt eric at anholt.net
Thu May 4 16:38:56 UTC 2017


Emil Velikov <emil.l.velikov at gmail.com> writes:

> On 27 April 2017 at 16:20, Eric Anholt <eric at anholt.net> wrote:
>> Emil Velikov <emil.l.velikov at gmail.com> writes:
>>
>>> On 25 April 2017 at 23:56, Lionel Landwerlin
>>> <lionel.g.landwerlin at intel.com> wrote:
>>>> Hi,
>>>>
>>>> While working with changes that span from kernel to user space, I've
>>>> been wondering whether we need to depend on libdrm at all for the anv
>>>> & i965 drivers. Indeed with Ken's recent changes, we only depend on
>>>> libdrm for its kernel header files which we could just embed
>>>> ourselves.
>>>>
>>>> I've only included the minimal set of header files we need from the
>>>> kernel for anv & i965. Maybe other drivers would be interested and
>>>> maybe we should put all the kernel drm uapi headers into include?
>>>>
>>> AFAICT the goal behind the libdrm_intel fold was to allow rapid and
>>> seamless rework of the interface.
>>> With a potential goal to make it a shared one, as it gets stabilised.
>>>
>>> Currently ANV uses more than just the UAPI headers. But if we ignore
>>> that, coping them is a bad idea.
>>>
>>> Why - adds a, yet another, copy and making synchronisation more
>>> annoying. First example - you blindly copied the files rather than
>>> using `make headers_install' first ;-)
>>> Not to mention that it makes the chicken and egg problem* even more
>>> confusing and error prone.
>>>
>>> Emil
>>> *  Which patches land first - kernel or userspace
>>
>> I don't see how it does that at all.  It simplifies the process: Now you
>> send out your proposed new userspace to one repo, instead of two.
>>
> Funny that you should say that. On my count there's 4 instances of the
> VC4 headers - one in kernel and 3 in different userspace components.
> With each one subtly different from the rest.

And it works great, because kernel headers are backwards compatible.
When you need a feature, you just merge the header update necessary and
no other developers get disrupted.

Have you done kernel API feature development?  I feel like this is the
kind of thing you need to do yourself several times, with several
revisions over the course of months, before understanding the
limitations of our current process.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170504/a8ae7456/attachment.sig>


More information about the mesa-dev mailing list