Re: [PATCH v5 12/16] PCI: Add pci_iomap_host_shared(), pci_iomap_host_shared_range()

Thomas Gleixner
2021-10-18T00:55:22Z

Andi,

On Sun, Oct 10 2021 at 15:11, Andi Kleen wrote:
> On 10/9/2021 1:39 PM, Dan Williams wrote:
>> I agree with you and Greg here. If a driver is accessing hardware
>> resources outside of the bind lifetime of one of the devices it
>> supports, and in a way that neither modrobe-policy nor
>> device-authorization -policy infrastructure can block, that sounds
>> like a bug report.
>
> The 5.15 tree has something like ~2.4k IO accesses (including MMIO and
> others) in init functions that also register drivers (thanks Elena for
> the number)

These numbers are completely useless simply because they are based on
nonsensical criteria. See:

https://lore.kernel.org/r/87r1cj2uad.ffs@tglx

> My point is just that the ecosystem of devices that Linux supports is
> messy enough that there are legitimate exceptions from the "First IO
> only in probe call only" rule.

Your point is based on your outright refusal to actualy do a proper
analysis and your outright refusal to help fixing the real problems.

All you have provided so far is handwaving based on a completely useless
analysis.

Sure, your goal is to get this TDX problem solved, but it's not going to
be solved by:

1) Providing a nonsensical analysis

2) Using #1 as an argument to hack some half baken interfaces into the
kernel which allow you to tick off your checkbox and then leave the
resulting mess for others to clean up.

Try again when you have factual data to back up your claims and factual
arguments which prove that the problem can't be fixed otherwise.

I might be repeating myself, but kernel development works this way:

1) Hack your private POC - Yay!

2) Sit down and think hard about the problems you identified in step
#1. Do a thorough analysis.

3) Come up with a sensible integration plan.

4) Do the necessary grump work of cleanups all over the place

5) Add sensible infrastructure which is understandable for the bulk
of kernel/driver developers

6) Let your feature fall in place

and not in the way you are insisting on:

1) Hack your private POC - Yay!

2) Define that this is the only way to do it and try to shove it down
the throat of everyone.

3) Getting told that this is not the way it works

4) Insist on it forever and blame the grumpy maintainers who are just
not understanding the great value of your approach.

5) Go back to #2

You should know that already, but I have no problem to give that lecture
to you over and over again. I probably should create a form letter.

And no, you can bitch about me as much as you want. These are not my
personal rules and personal pet pieves. These are rules Linus cares
about very much and aside of that they just reflect common sense.

The kernel is a common good and not the dump ground for your personal
brain waste.

The kernel does not serve Intel. Quite the contrary Intel depends on
the kernel to work nicely with it's hardware. Ergo, Intel should have
a vested interest to serve the kernel and take responsibility for it
as a whole. And so should you as an Intel employee.

Just dumping your next half baken workaround does not cut it especially
not when it is not backed up by sensible arguments.

Please try again, but not before you have something substantial to back
up your claims.

Thanks,

Thomas