[Mesa-dev] [PATCH 3/5] egl/android: remove droid_probe_driver()

Tomasz Figa tfiga at chromium.org
Mon Aug 13 15:43:48 UTC 2018


On Tue, Aug 14, 2018 at 12:35 AM Emil Velikov <emil.l.velikov at gmail.com> wrote:
>
> On 13 August 2018 at 16:16, Tomasz Figa <tfiga at chromium.org> wrote:
> > Hi Emil,
> >
> > On Mon, Aug 13, 2018 at 11:48 PM Emil Velikov <emil.l.velikov at gmail.com> wrote:
> >>
> >> From: Emil Velikov <emil.velikov at collabora.com>
> >>
> >> The function name is misleading - it effectively checks if
> >> loader_get_driver_for_fd fails. Which can happen only only on strdup
> >> error - a close to impossible scenario.
> >
> > How about a DRI node which doesn't have a driver in Mesa?
> >
> Can you elaborate a bit - are you thinking of any of the following or
> something else:
>  - no support for vendor X
>  - supported vendor, missing vendor/device pci id for device X
>  - supported vendor, built w/o it
>
> All these are fairly different cases, with somewhat different solution
> for each one.

Let's say "no support for vendor X", but supported vendor Y GPU next
to it. We want this code to skip vendor X DRI node and choose vendor Y
DRI node.

>
> Fwiw the function loader_get_driver_for_fd does:
>  - gets the vendor/device pci id and maps that to a driver_name
>  - if device not a pci device (or query fails) - fallback to the name
> as returned in drmGetVersion

Good catch. Looks like I misunderstood what it does when reviewing
Rob's series and existing code doesn't work as I expected. I think it
would just error out in the case above, right?

Best regards,
Tomasz


More information about the mesa-dev mailing list