[PATCH v4 11/15] pci: Add pci_iomap_shared{,_range}

Andi Kleen
2021-08-30T05:11:46Z

On 8/29/2021 3:26 PM, Michael S. Tsirkin wrote:
> On Sun, Aug 29, 2021 at 09:17:53AM -0700, Andi Kleen wrote:
>> Also I changing this single call really that bad? It's not that we
changing
>> anything drastic here, just give the low level subsystem a better hint
about
>> the intention. If you don't like the function name, could make it
an
>> argument instead?
> My point however is that the API should say that the
> driver has been audited,

We have that status in the struct device. If you want to tie the ioremap
to that we could define a ioremap_device() with a device argument and
decide based on that.

Or we can add _audited to the name. ioremap_shared_audited?

> not that the mapping has been
> done in some special way. For example the mapping can be
> in some kind of wrapper, not directly in the driver.
> However you want the driver validated, not the wrapper.
>
> Here's an idea:


I don't think magic differences of API behavior based on some define are
a good idea.? That's easy to miss.

That's a "COME FROM" in API design.

Also it wouldn't handle the case that a driver has both private and
shared ioremaps, e.g. for BIOS structures.

And we've been avoiding that drivers can self declare auditing, we've
been trying to have a separate centralized list so that it's easier to
enforce and avoids any cut'n'paste mistakes.

-Andi