diff mbox series

[net-next,v1,1/1] net: selftest: provide option to disable generic selftests

Message ID 20210430095308.14465-1-o.rempel@pengutronix.de (mailing list archive)
State New, archived
Headers show
Series [net-next,v1,1/1] net: selftest: provide option to disable generic selftests | expand

Commit Message

Oleksij Rempel April 30, 2021, 9:53 a.m. UTC
Some systems may need to disable selftests to reduce kernel size or for
some policy reasons. This patch provide option to disable generic selftests.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Fixes: 3e1e58d64c3d ("net: add generic selftest support")
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
---
 net/Kconfig | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Randy Dunlap April 30, 2021, 3:13 p.m. UTC | #1
On 4/30/21 2:53 AM, Oleksij Rempel wrote:
> Some systems may need to disable selftests to reduce kernel size or for
> some policy reasons. This patch provide option to disable generic selftests.
> 
> Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
> Fixes: 3e1e58d64c3d ("net: add generic selftest support")
> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> ---
>  net/Kconfig | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/net/Kconfig b/net/Kconfig
> index f5ee7c65e6b4..dac98c73fcd8 100644
> --- a/net/Kconfig
> +++ b/net/Kconfig
> @@ -431,7 +431,12 @@ config SOCK_VALIDATE_XMIT
>  
>  config NET_SELFTESTS
>  	def_tristate PHYLIB
> +	prompt "Support for generic selftests"
>  	depends on PHYLIB && INET
> +	help
> +	  These selftests are build automatically if any driver with generic

	                      built

> +	  selftests support is enabled. This option can be used to disable
> +	  selftests to reduce kernel size.
>  
>  config NET_SOCK_MSG
>  	bool
> 

Thanks for the patch/option. But I think it should just default to n,
not PHYLIB.
Oleksij Rempel April 30, 2021, 3:41 p.m. UTC | #2
On Fri, Apr 30, 2021 at 08:13:12AM -0700, Randy Dunlap wrote:
> On 4/30/21 2:53 AM, Oleksij Rempel wrote:
> > Some systems may need to disable selftests to reduce kernel size or for
> > some policy reasons. This patch provide option to disable generic selftests.
> > 
> > Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
> > Fixes: 3e1e58d64c3d ("net: add generic selftest support")
> > Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> > ---
> >  net/Kconfig | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/net/Kconfig b/net/Kconfig
> > index f5ee7c65e6b4..dac98c73fcd8 100644
> > --- a/net/Kconfig
> > +++ b/net/Kconfig
> > @@ -431,7 +431,12 @@ config SOCK_VALIDATE_XMIT
> >  
> >  config NET_SELFTESTS
> >  	def_tristate PHYLIB
> > +	prompt "Support for generic selftests"
> >  	depends on PHYLIB && INET
> > +	help
> > +	  These selftests are build automatically if any driver with generic
> 
> 	                      built
> 
> > +	  selftests support is enabled. This option can be used to disable
> > +	  selftests to reduce kernel size.
> >  
> >  config NET_SOCK_MSG
> >  	bool
> > 
> 
> Thanks for the patch/option. But I think it should just default to n,
> not PHYLIB.

It should be enabled by default for every device supporting this kind of
selftests. This tests extend functionality of cable tests, which are not
optional. Disabling it by default makes even less sense, at least for
me.

It depends on PHYLIB, if PHYLIB is build as module, this
this part should be build as module too. And since Geert asking to make
it optional, I provided this patch.

Regards,
Oleksij
Andrew Lunn April 30, 2021, 4:23 p.m. UTC | #3
> > Thanks for the patch/option. But I think it should just default to n,
> > not PHYLIB.
> 
> It should be enabled by default for every device supporting this kind of
> selftests.

I agree.

I still wonder if there is confusion about self test here. Maybe
putting ethtool into the description will help people understand it
has nothing to do with the kernel self test infrastructure and kernel
self testing.

	Andrew
Geert Uytterhoeven April 30, 2021, 4:25 p.m. UTC | #4
Hi Oleksij,

On Fri, Apr 30, 2021 at 5:42 PM Oleksij Rempel <o.rempel@pengutronix.de> wrote:
> On Fri, Apr 30, 2021 at 08:13:12AM -0700, Randy Dunlap wrote:
> > On 4/30/21 2:53 AM, Oleksij Rempel wrote:
> > > Some systems may need to disable selftests to reduce kernel size or for
> > > some policy reasons. This patch provide option to disable generic selftests.
> > >
> > > Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
> > > Fixes: 3e1e58d64c3d ("net: add generic selftest support")
> > > Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> > > ---
> > >  net/Kconfig | 5 +++++
> > >  1 file changed, 5 insertions(+)
> > >
> > > diff --git a/net/Kconfig b/net/Kconfig
> > > index f5ee7c65e6b4..dac98c73fcd8 100644
> > > --- a/net/Kconfig
> > > +++ b/net/Kconfig
> > > @@ -431,7 +431,12 @@ config SOCK_VALIDATE_XMIT
> > >
> > >  config NET_SELFTESTS
> > >     def_tristate PHYLIB
> > > +   prompt "Support for generic selftests"
> > >     depends on PHYLIB && INET
> > > +   help
> > > +     These selftests are build automatically if any driver with generic
> >
> >                             built
> >
> > > +     selftests support is enabled. This option can be used to disable
> > > +     selftests to reduce kernel size.
> > >
> > >  config NET_SOCK_MSG
> > >     bool
> > >
> >
> > Thanks for the patch/option. But I think it should just default to n,
> > not PHYLIB.
>
> It should be enabled by default for every device supporting this kind of
> selftests. This tests extend functionality of cable tests, which are not
> optional. Disabling it by default makes even less sense, at least for
> me.

Drivers using it ( AG71XX, FEC, NET_DSA) already select it, right?
Or better, imply it, which assumes it's optional.

> It depends on PHYLIB, if PHYLIB is build as module, this
> this part should be build as module too. And since Geert asking to make
> it optional, I provided this patch.

Gr{oetje,eeting}s,

                        Geert


--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Randy Dunlap April 30, 2021, 4:33 p.m. UTC | #5
On 4/30/21 9:23 AM, Andrew Lunn wrote:
>>> Thanks for the patch/option. But I think it should just default to n,
>>> not PHYLIB.
>>
>> It should be enabled by default for every device supporting this kind of
>> selftests.
> 
> I agree.
> 
> I still wonder if there is confusion about self test here. Maybe

Probably.

> putting ethtool into the description will help people understand it
> has nothing to do with the kernel self test infrastructure and kernel
> self testing.

So it's a hardware check that is required to be run if it's implemented
in a driver?

Required by who/what?

thanks.
Andrew Lunn April 30, 2021, 4:56 p.m. UTC | #6
On Fri, Apr 30, 2021 at 09:33:42AM -0700, Randy Dunlap wrote:
> On 4/30/21 9:23 AM, Andrew Lunn wrote:
> >>> Thanks for the patch/option. But I think it should just default to n,
> >>> not PHYLIB.
> >>
> >> It should be enabled by default for every device supporting this kind of
> >> selftests.
> > 
> > I agree.
> > 
> > I still wonder if there is confusion about self test here. Maybe
> 
> Probably.
> 
> > putting ethtool into the description will help people understand it
> > has nothing to do with the kernel self test infrastructure and kernel
> > self testing.
> 
> So it's a hardware check that is required to be run if it's implemented
> in a driver?
> 
> Required by who/what?

It is not required, but it is a useful debug tool for the educated
user. Root can run the self tests on the network interface. If the
self test pass, but the interface does not work, you probably have a
cabling or configuration issue. Networking is complex and being able
to eliminate the interface hardware lets you concentrate on some other
part of the problem. You can then maybe next use the cable test option
of ethtool to see if the cable has a problem.

   Andrew
diff mbox series

Patch

diff --git a/net/Kconfig b/net/Kconfig
index f5ee7c65e6b4..dac98c73fcd8 100644
--- a/net/Kconfig
+++ b/net/Kconfig
@@ -431,7 +431,12 @@  config SOCK_VALIDATE_XMIT
 
 config NET_SELFTESTS
 	def_tristate PHYLIB
+	prompt "Support for generic selftests"
 	depends on PHYLIB && INET
+	help
+	  These selftests are build automatically if any driver with generic
+	  selftests support is enabled. This option can be used to disable
+	  selftests to reduce kernel size.
 
 config NET_SOCK_MSG
 	bool