2019-12-11 21:03:17

by Florian Fainelli

[permalink] [raw]
Subject: [PATCH 0/2] watchdog: mtx-1: Relax build dependencies

Hi Wim, Guenter,

This came up with Denis trying to fix a MIPS-related build failure:

https://lore.kernel.org/linux-mips/[email protected]/

Florian Fainelli (2):
watchdog: mtx-1: Drop au1000.h header inclusion
watchdog: Relax dependencies for CONFIG_WDT_MTX1

drivers/watchdog/Kconfig | 2 +-
drivers/watchdog/mtx-1_wdt.c | 2 --
2 files changed, 1 insertion(+), 3 deletions(-)

--
2.17.1


2019-12-11 21:03:18

by Florian Fainelli

[permalink] [raw]
Subject: [PATCH 1/2] watchdog: mtx-1: Drop au1000.h header inclusion

Including au1000.h from the machine specific header directory prevents
this driver from being built on any other platforms (MIPS included).
Since we do not use any definitions, drop it.

Reported-by: Denis Efremov <[email protected]>
Signed-off-by: Florian Fainelli <[email protected]>
---
drivers/watchdog/mtx-1_wdt.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
index 25a92857b217..aeca22f7450e 100644
--- a/drivers/watchdog/mtx-1_wdt.c
+++ b/drivers/watchdog/mtx-1_wdt.c
@@ -41,8 +41,6 @@
#include <linux/uaccess.h>
#include <linux/gpio/consumer.h>

-#include <asm/mach-au1x00/au1000.h>
-
#define MTX1_WDT_INTERVAL (5 * HZ)

static int ticks = 100 * HZ;
--
2.17.1

2019-12-11 23:49:30

by Denis Efremov (Oracle)

[permalink] [raw]
Subject: Re: [PATCH 0/2] watchdog: mtx-1: Relax build dependencies

Hi,

Thanks for the fix.
I tested the compilation with these patches.
You can add my:
Tested-by: Denis Efremov <[email protected]>

Look like this error could be fixed the same way:
In file included from drivers/watchdog/ar7_wdt.c:29:
./arch/mips/include/asm/mach-ar7/ar7.h: In function ‘ar7_is_titan’:
./arch/mips/include/asm/mach-ar7/ar7.h:111:24: error: implicit declaration of function ‘KSEG1ADDR’; did you mean ‘CKSEG1ADDR’? [-Werror=implicit-function-declaration]

On 12.12.2019 00:02, Florian Fainelli wrote:
> Hi Wim, Guenter,
>
> This came up with Denis trying to fix a MIPS-related build failure:
>
> https://lore.kernel.org/linux-mips/[email protected]/
>
> Florian Fainelli (2):
> watchdog: mtx-1: Drop au1000.h header inclusion
> watchdog: Relax dependencies for CONFIG_WDT_MTX1
>
> drivers/watchdog/Kconfig | 2 +-
> drivers/watchdog/mtx-1_wdt.c | 2 --
> 2 files changed, 1 insertion(+), 3 deletions(-)
>

Thanks,
Denis

2019-12-12 01:36:38

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 1/2] watchdog: mtx-1: Drop au1000.h header inclusion

On 12/11/19 1:02 PM, Florian Fainelli wrote:
> Including au1000.h from the machine specific header directory prevents
> this driver from being built on any other platforms (MIPS included).
> Since we do not use any definitions, drop it.
>
> Reported-by: Denis Efremov <[email protected]>
> Signed-off-by: Florian Fainelli <[email protected]>
> ---
> drivers/watchdog/mtx-1_wdt.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
> index 25a92857b217..aeca22f7450e 100644
> --- a/drivers/watchdog/mtx-1_wdt.c
> +++ b/drivers/watchdog/mtx-1_wdt.c
> @@ -41,8 +41,6 @@
> #include <linux/uaccess.h>
> #include <linux/gpio/consumer.h>
>
> -#include <asm/mach-au1x00/au1000.h>
> -
> #define MTX1_WDT_INTERVAL (5 * HZ)
>
> static int ticks = 100 * HZ;
>

Given that this is nothing but yet another gpio watchdog driver, I'd
personally rather have it merged with gpio_wdt.c. On a higher level,
cleaning up old-style watchdog drivers, without converting them to
using the watchdog core, is a waste of time.

Wim, should we make it a policy to reject patches into old-style drivers
unless they fix a real bug ? It is getting a pain to have to review those
patches.

Thanks,
Guenter

2019-12-12 01:41:37

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 0/2] watchdog: mtx-1: Relax build dependencies

On 12/11/19 3:46 PM, Denis Efremov wrote:
> Hi,
>
> Thanks for the fix.
> I tested the compilation with these patches.
> You can add my:
> Tested-by: Denis Efremov <[email protected]>
>
> Look like this error could be fixed the same way:
> In file included from drivers/watchdog/ar7_wdt.c:29:
> ./arch/mips/include/asm/mach-ar7/ar7.h: In function ‘ar7_is_titan’:
> ./arch/mips/include/asm/mach-ar7/ar7.h:111:24: error: implicit declaration of function ‘KSEG1ADDR’; did you mean ‘CKSEG1ADDR’? [-Werror=implicit-function-declaration]
>

This is yet another old-style watchdog driver which should be left alone
unless it has a bug that needs to be fixed. Really, if anyone out there
is still using this driver, converting it to use the watchdog core
would make much more sense.

Guenter


2019-12-12 03:39:42

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH 1/2] watchdog: mtx-1: Drop au1000.h header inclusion



On 12/11/2019 5:35 PM, Guenter Roeck wrote:
> On 12/11/19 1:02 PM, Florian Fainelli wrote:
>> Including au1000.h from the machine specific header directory prevents
>> this driver from being built on any other platforms (MIPS included).
>> Since we do not use any definitions, drop it.
>>
>> Reported-by: Denis Efremov <[email protected]>
>> Signed-off-by: Florian Fainelli <[email protected]>
>> ---
>>   drivers/watchdog/mtx-1_wdt.c | 2 --
>>   1 file changed, 2 deletions(-)
>>
>> diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
>> index 25a92857b217..aeca22f7450e 100644
>> --- a/drivers/watchdog/mtx-1_wdt.c
>> +++ b/drivers/watchdog/mtx-1_wdt.c
>> @@ -41,8 +41,6 @@
>>   #include <linux/uaccess.h>
>>   #include <linux/gpio/consumer.h>
>>   -#include <asm/mach-au1x00/au1000.h>
>> -
>>   #define MTX1_WDT_INTERVAL    (5 * HZ)
>>     static int ticks = 100 * HZ;
>>
>
> Given that this is nothing but yet another gpio watchdog driver, I'd
> personally rather have it merged with gpio_wdt.c. On a higher level,
> cleaning up old-style watchdog drivers, without converting them to
> using the watchdog core, is a waste of time.

If that makes you feel any better, I was not planning on going further
than that, and yes, removing this driver and using gpio_wdt.c would be
the way to go, this driver greatly predates gpio_wdt.c and I have since
then not had access to my MTX-1 platforms which is why this did not
happen. We can attempt a "blind conversion" without testing, but what
good would that make, not sure.

>
> Wim, should we make it a policy to reject patches into old-style drivers
> unless they fix a real bug ? It is getting a pain to have to review those
> patches.
>
> Thanks,
> Guenter

--
Florian

2019-12-12 03:43:26

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH 0/2] watchdog: mtx-1: Relax build dependencies



On 12/11/2019 5:39 PM, Guenter Roeck wrote:
> On 12/11/19 3:46 PM, Denis Efremov wrote:
>> Hi,
>>
>> Thanks for the fix.
>> I tested the compilation with these patches.
>> You can add my:
>> Tested-by: Denis Efremov <[email protected]>
>>
>> Look like this error could be fixed the same way:
>> In file included from drivers/watchdog/ar7_wdt.c:29:
>> ./arch/mips/include/asm/mach-ar7/ar7.h: In function ‘ar7_is_titan’:
>> ./arch/mips/include/asm/mach-ar7/ar7.h:111:24: error: implicit
>> declaration of function ‘KSEG1ADDR’; did you mean ‘CKSEG1ADDR’?
>> [-Werror=implicit-function-declaration]
>>
>
> This is yet another old-style watchdog driver which should be left alone
> unless it has a bug that needs to be fixed. Really, if anyone out there
> is still using this driver, converting it to use the watchdog core
> would make much more sense.

AR7 is still largely available, so we might be able to get some people
within the OpenWrt community to give a watchdog modernization patch a try.
--
Florian

2019-12-12 18:21:06

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 1/2] watchdog: mtx-1: Drop au1000.h header inclusion

On Wed, Dec 11, 2019 at 07:38:29PM -0800, Florian Fainelli wrote:
>
>
> On 12/11/2019 5:35 PM, Guenter Roeck wrote:
> > On 12/11/19 1:02 PM, Florian Fainelli wrote:
> >> Including au1000.h from the machine specific header directory prevents
> >> this driver from being built on any other platforms (MIPS included).
> >> Since we do not use any definitions, drop it.
> >>
> >> Reported-by: Denis Efremov <[email protected]>
> >> Signed-off-by: Florian Fainelli <[email protected]>
> >> ---
> >> ? drivers/watchdog/mtx-1_wdt.c | 2 --
> >> ? 1 file changed, 2 deletions(-)
> >>
> >> diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
> >> index 25a92857b217..aeca22f7450e 100644
> >> --- a/drivers/watchdog/mtx-1_wdt.c
> >> +++ b/drivers/watchdog/mtx-1_wdt.c
> >> @@ -41,8 +41,6 @@
> >> ? #include <linux/uaccess.h>
> >> ? #include <linux/gpio/consumer.h>
> >> ? -#include <asm/mach-au1x00/au1000.h>
> >> -
> >> ? #define MTX1_WDT_INTERVAL??? (5 * HZ)
> >> ? ? static int ticks = 100 * HZ;
> >>
> >
> > Given that this is nothing but yet another gpio watchdog driver, I'd
> > personally rather have it merged with gpio_wdt.c. On a higher level,
> > cleaning up old-style watchdog drivers, without converting them to
> > using the watchdog core, is a waste of time.
>
> If that makes you feel any better, I was not planning on going further
> than that, and yes, removing this driver and using gpio_wdt.c would be
> the way to go, this driver greatly predates gpio_wdt.c and I have since
> then not had access to my MTX-1 platforms which is why this did not
> happen. We can attempt a "blind conversion" without testing, but what
> good would that make, not sure.
>

It sounds like this is a purely cosmetical change to improve test build
coverage for a more or less obsolete driver. No, that doesn't make me feel
better; I get way too many of those lately. Worse, some of those test build
"improvements" actually end up breaking real builds, which then costs me
and others even more time to track down.

We should really discourage that. Is there some challenge going on somewhere,
along the line of "improve test build coverage" ?

Guenter

> >
> > Wim, should we make it a policy to reject patches into old-style drivers
> > unless they fix a real bug ? It is getting a pain to have to review those
> > patches.
> >
> > Thanks,
> > Guenter
>
> --
> Florian

2019-12-12 18:29:39

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH 1/2] watchdog: mtx-1: Drop au1000.h header inclusion

On 12/12/19 10:19 AM, Guenter Roeck wrote:
> On Wed, Dec 11, 2019 at 07:38:29PM -0800, Florian Fainelli wrote:
>>
>>
>> On 12/11/2019 5:35 PM, Guenter Roeck wrote:
>>> On 12/11/19 1:02 PM, Florian Fainelli wrote:
>>>> Including au1000.h from the machine specific header directory prevents
>>>> this driver from being built on any other platforms (MIPS included).
>>>> Since we do not use any definitions, drop it.
>>>>
>>>> Reported-by: Denis Efremov <[email protected]>
>>>> Signed-off-by: Florian Fainelli <[email protected]>
>>>> ---
>>>>   drivers/watchdog/mtx-1_wdt.c | 2 --
>>>>   1 file changed, 2 deletions(-)
>>>>
>>>> diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
>>>> index 25a92857b217..aeca22f7450e 100644
>>>> --- a/drivers/watchdog/mtx-1_wdt.c
>>>> +++ b/drivers/watchdog/mtx-1_wdt.c
>>>> @@ -41,8 +41,6 @@
>>>>   #include <linux/uaccess.h>
>>>>   #include <linux/gpio/consumer.h>
>>>>   -#include <asm/mach-au1x00/au1000.h>
>>>> -
>>>>   #define MTX1_WDT_INTERVAL    (5 * HZ)
>>>>     static int ticks = 100 * HZ;
>>>>
>>>
>>> Given that this is nothing but yet another gpio watchdog driver, I'd
>>> personally rather have it merged with gpio_wdt.c. On a higher level,
>>> cleaning up old-style watchdog drivers, without converting them to
>>> using the watchdog core, is a waste of time.
>>
>> If that makes you feel any better, I was not planning on going further
>> than that, and yes, removing this driver and using gpio_wdt.c would be
>> the way to go, this driver greatly predates gpio_wdt.c and I have since
>> then not had access to my MTX-1 platforms which is why this did not
>> happen. We can attempt a "blind conversion" without testing, but what
>> good would that make, not sure.
>>
>
> It sounds like this is a purely cosmetical change to improve test build
> coverage for a more or less obsolete driver. No, that doesn't make me feel
> better; I get way too many of those lately. Worse, some of those test build
> "improvements" actually end up breaking real builds, which then costs me
> and others even more time to track down.
>
> We should really discourage that. Is there some challenge going on somewhere,
> along the line of "improve test build coverage" ?

Not really, the only challenge would be access to the original hardware
in order to remove the driver and migrate over to gpio_wdt, which is low
risk, but the watchdog on that platform has bitten me before.
--
Florian