Re: [PATCH 2/7] perf: Create a symlink for a PMU

From: Greg KH
Date: Thu Jun 24 2021 - 10:29:15 EST


On Thu, Jun 24, 2021 at 07:24:31AM -0700, Andi Kleen wrote:
>
> > But first off, why is this symlink suddenly needed? What is so special
> > about this new hardware that it breaks the existing model?
>
> The driver can be in two modes:
>
> - Driver fully knows the hardware and puts in the correct Linux names
>
> - Driver doesn't know the hardware but is in a fallback mode where it only
> looks at a discovery table. There we don't have the correct names, just an
> numeric identifier for the different hardware sub components.

Why does this matter? Why would the driver not "know" the hardware? If
it doesn't know it, why would it bind to it?

> In the later mode the numeric identifier is used in sysfs, in the former
> case the full Linux name. But we want to keep some degree of Linux user
> space compatibility between the two, that is why the full mode creates a
> symlink from the "numeric" name. This way the (ugly) identifiers needed for
> the fallback mode work everywhere.

So what _exactly_ does the symlink do here? What is it from->to?

And where is it being documented? What userspace tool needs to be fixed
up so that the symlink can be removed?

thanks,

greg k-h