Re: [PATCH net-next v1 1/1] nfc: mrvl: Don't use "proxy" headers

From: Andy Shevchenko
Date: Mon Nov 04 2024 - 03:15:14 EST


On Sun, Nov 03, 2024 at 08:17:40AM -0800, Jakub Kicinski wrote:
> On Fri, 1 Nov 2024 10:39:10 +0200 Andy Shevchenko wrote:
> > Subject: [PATCH net-next v1 1/1] nfc: mrvl: Don't use "proxy" headers
>
> What is a "proxy" header?

The "proxy" header is any header that the code rely on to include other(s)
*not related* to that header headers. Hopefully, despite too many words
"header" you got the idea.

> Guessing by the two patches you posted - are you trying to get rid of
> of_gpio.h?

In this particular case:
1) I want to get rid of deprecated of_gpio.h;
2) but at the same time it *is* a "proxy" header in this case.

> > Update header inclusions to follow IWYU (Include What You Use)
> > principle.
>
> I'm definitely on board with cleaning this up, but would prefer
> to make sure we can validate new patches against introducing
> regressions.

0-day LKP quite likely will notice any issues with this (it's quite good
at it), and so far it reported A-OK.

> Otherwise the stream of patches will be never ending.

I know, and this is pity. And there was an attempt to make clang based tool
for that, but no move forward as far as I can see. So, you are welcome to help
developing such a tool.

> What tooling do you use?

My brains and my expertise in Linux Kernel project for the dependency hell
we have in the headers.

> Is it easy to integrate into a CI system?

I don't think so.

Can we have this being applied meanwhile, please? It's a showstopper for
getting rid of of_gpio.h rather sooner than later.

--
With Best Regards,
Andy Shevchenko