Re: [PATCH v3 treewide] headers: separate linux/mod_devicetable.h from linux/platform_device.h

From: Randy Dunlap
Date: Fri Dec 28 2018 - 21:11:26 EST


On 12/28/18 5:32 PM, NeilBrown wrote:
> On Sat, Jul 07 2018, Greg Kroah-Hartman wrote:
>
>> On Tue, Jun 19, 2018 at 10:47:28PM -0700, Randy Dunlap wrote:
>>> From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>>>
>>> At over 4000 #includes, <linux/platform_device.h> is the 9th most
>>> #included header file in the Linux kernel. It does not need
>>> <linux/mod_devicetable.h>, so drop that header and explicitly add
>>> <linux/mod_devicetable.h> to source files that need it.
>>>
>>> 4146 #include <linux/platform_device.h>
>>>
>>> After this patch, there are 225 files that use <linux/mod_devicetable.h>,
>>> for a reduction of around 3900 times that <linux/mod_devicetable.h>
>>> does not have to be read & parsed.
>>>
>>> 225 #include <linux/mod_devicetable.h>
>>>
>>> This patch was build-tested on 20 different arch-es.
>>>
>>> It also makes these drivers SubmitChecklist#1 compliant.
>>>
>>> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>>> Reported-by: kbuild test robot <lkp@xxxxxxxxx> # drivers/media/platform/vimc/
>>> Reported-by: kbuild test robot <lkp@xxxxxxxxx> # drivers/pinctrl/pinctrl-u300.c
>>> ---
>>> v3: add fix for drivers/pinctrl/pinctrl-u300.c
>>> v2: add fixes for drivers/media/platform/vimc/
>>
>> I've queued this up now, let's see what else breaks! :)
>
> Some MIPS watchdog drivers break, at least.
>
> NeilBrown
>
> From: NeilBrown <neil@xxxxxxxxxx>
> Subject: [PATCH] Fix compilation problem for mt7621_wdt.c and rt2880_wdt.c
>
> These files need
> #include <linux/mod_devicetable.h>
> to compile correctly.
>
> Fixes: ac3167257b9f ("headers: separate linux/mod_devicetable.h from linux/platform_device.h")
> Signed-off-by: NeilBrown <neil@xxxxxxxxxx>

Thanks, NeilBrown.

> ---
> drivers/watchdog/mt7621_wdt.c | 1 +
> drivers/watchdog/rt2880_wdt.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/drivers/watchdog/mt7621_wdt.c b/drivers/watchdog/mt7621_wdt.c
> index 5c4a764717c4..81208cd3f4ec 100644
> --- a/drivers/watchdog/mt7621_wdt.c
> +++ b/drivers/watchdog/mt7621_wdt.c
> @@ -17,6 +17,7 @@
> #include <linux/watchdog.h>
> #include <linux/moduleparam.h>
> #include <linux/platform_device.h>
> +#include <linux/mod_devicetable.h>
>
> #include <asm/mach-ralink/ralink_regs.h>
>
> diff --git a/drivers/watchdog/rt2880_wdt.c b/drivers/watchdog/rt2880_wdt.c
> index 98967f0a7d10..db7c57d82cfd 100644
> --- a/drivers/watchdog/rt2880_wdt.c
> +++ b/drivers/watchdog/rt2880_wdt.c
> @@ -18,6 +18,7 @@
> #include <linux/watchdog.h>
> #include <linux/moduleparam.h>
> #include <linux/platform_device.h>
> +#include <linux/mod_devicetable.h>
>
> #include <asm/mach-ralink/ralink_regs.h>
>
>


--
~Randy