mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH net] selftests: netconsole: enable the targets created by the torture test
@ 2026-11-10 12:32 Breno Leitao
  2026-11-11  1:58 ` Hangbin Liu
  0 siblings, 1 reply; 3+ messages in thread
From: Breno Leitao @ 2026-11-10 12:32 UTC (permalink / raw)
  To: Gustavo Luiz Duarte, Andrew Lunn, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman
  Cc: netdev, linux-kselftest, linux-kernel, kernel-team, Breno Leitao

create_and_delete_random_target() is meant to create, enable and remove
targets while messages are sent, but it only creates and removes them.
The helper it calls, _create_dynamic_target(), stopped enabling the
target when the bonding test moved that step into
create_dynamic_target().

Enable the targets again, so they come up while messages flow and are
disabled before being removed. Like toggle_netcons_target(), ignore a
failed enable, which would otherwise end the function and leave the
targets behind. With a console per target, this also registers and
unregisters their consoles under load.

Fixes: 236682db3b6f ("selftest: netcons: add test for netconsole over bonded interfaces")
Signed-off-by: Breno Leitao <leitao@debian.org>
---
 tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh b/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
index 33a44adb6f8f3a..3dfab0bf1b0756 100755
--- a/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
+++ b/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
@@ -46,6 +46,7 @@ create_and_delete_random_target() {
 
 		# Basic population so the target can come up
 		_create_dynamic_target "${FORMAT}" "${RND_TARGET_PATH}"
+		echo 1 > "${RND_TARGET_PATH}"/enabled 2> /dev/null || true
 	done
 
 	echo "netconsole selftest: ${COUNT} additional targets were created" > /dev/kmsg

---
base-commit: b3dfbde62cf1981c4638939c159dfd087b7a72e9
change-id: 20261110-netcons_selftest_fix-4cbf633295ef

Best regards,
--  
Breno Leitao <leitao@debian.org>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net] selftests: netconsole: enable the targets created by the torture test
  2026-11-10 12:32 [PATCH net] selftests: netconsole: enable the targets created by the torture test Breno Leitao
@ 2026-11-11  1:58 ` Hangbin Liu
  2026-11-11 10:20   ` Breno Leitao
  0 siblings, 1 reply; 3+ messages in thread
From: Hangbin Liu @ 2026-11-11  1:58 UTC (permalink / raw)
  To: Breno Leitao
  Cc: Gustavo Luiz Duarte, Andrew Lunn, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman, netdev,
	linux-kselftest, linux-kernel, kernel-team

Hi Breno,
On Tue, Nov 10, 2026 at 04:32:25AM -0800, Breno Leitao wrote:
> create_and_delete_random_target() is meant to create, enable and remove
> targets while messages are sent, but it only creates and removes them.
> The helper it calls, _create_dynamic_target(), stopped enabling the
> target when the bonding test moved that step into
> create_dynamic_target().
> 
> Enable the targets again, so they come up while messages flow and are
> disabled before being removed. Like toggle_netcons_target(), ignore a
> failed enable, which would otherwise end the function and leave the
> targets behind. With a console per target, this also registers and
> unregisters their consoles under load.
> 
> Fixes: 236682db3b6f ("selftest: netcons: add test for netconsole over bonded interfaces")
> Signed-off-by: Breno Leitao <leitao@debian.org>
> ---
>  tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh b/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
> index 33a44adb6f8f3a..3dfab0bf1b0756 100755
> --- a/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
> +++ b/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
> @@ -46,6 +46,7 @@ create_and_delete_random_target() {
>  
>  		# Basic population so the target can come up
>  		_create_dynamic_target "${FORMAT}" "${RND_TARGET_PATH}"
> +		echo 1 > "${RND_TARGET_PATH}"/enabled 2> /dev/null || true
>  	done
>  
>  	echo "netconsole selftest: ${COUNT} additional targets were created" > /dev/kmsg
> 
> ---
> base-commit: b3dfbde62cf1981c4638939c159dfd087b7a72e9
> change-id: 20261110-netcons_selftest_fix-4cbf633295ef
> 
> Best regards,
> --  
> Breno Leitao <leitao@debian.org>
> 

Ignore the failed enable makes sense to me, as we enabled `set -e`
and use random target. Do we need sleep 1s like create_dynamic_target()
to make sure the configuration loaded?

Thanks
Hangbin

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net] selftests: netconsole: enable the targets created by the torture test
  2026-11-11  1:58 ` Hangbin Liu
@ 2026-11-11 10:20   ` Breno Leitao
  0 siblings, 0 replies; 3+ messages in thread
From: Breno Leitao @ 2026-11-11 10:20 UTC (permalink / raw)
  To: Hangbin Liu
  Cc: Gustavo Luiz Duarte, Andrew Lunn, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman, netdev,
	linux-kselftest, linux-kernel, kernel-team

Hello Hangbin,

On Wed, Nov 11, 2026 at 09:58:32AM +0800, Hangbin Liu wrote:
> On Tue, Nov 10, 2026 at 04:32:25AM -0800, Breno Leitao wrote:
> > create_and_delete_random_target() is meant to create, enable and remove
> > targets while messages are sent, but it only creates and removes them.
> > The helper it calls, _create_dynamic_target(), stopped enabling the
> > target when the bonding test moved that step into
> > create_dynamic_target().
> > 
> > Enable the targets again, so they come up while messages flow and are
> > disabled before being removed. Like toggle_netcons_target(), ignore a
> > failed enable, which would otherwise end the function and leave the
> > targets behind. With a console per target, this also registers and
> > unregisters their consoles under load.
> > 
> > Fixes: 236682db3b6f ("selftest: netcons: add test for netconsole over bonded interfaces")
> > Signed-off-by: Breno Leitao <leitao@debian.org>
> > ---
> >  tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh b/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
> > index 33a44adb6f8f3a..3dfab0bf1b0756 100755
> > --- a/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
> > +++ b/tools/testing/selftests/drivers/net/netconsole/netcons_torture.sh
> > @@ -46,6 +46,7 @@ create_and_delete_random_target() {
> >  
> >  		# Basic population so the target can come up
> >  		_create_dynamic_target "${FORMAT}" "${RND_TARGET_PATH}"
> > +		echo 1 > "${RND_TARGET_PATH}"/enabled 2> /dev/null || true
> >  	done
> >  
> >  	echo "netconsole selftest: ${COUNT} additional targets were created" > /dev/kmsg
> > 
> > ---
> > base-commit: b3dfbde62cf1981c4638939c159dfd087b7a72e9
> > change-id: 20261110-netcons_selftest_fix-4cbf633295ef
> > 
> > Best regards,
> > --  
> > Breno Leitao <leitao@debian.org>
> > 
> 
> Ignore the failed enable makes sense to me, as we enabled `set -e`
> and use random target.

ack!

> Do we need sleep 1s like create_dynamic_target() to make sure the
> configuration loaded?

I don't think we need it. The write to enabled is synchronous:
enabled_store() sets up netpoll and moves the target to STATE_ENABLED
before it returns. If the setup fails, enabled reads back 0, and the
disable loop checks enabled before writing 0 to it.

The other reason for that sleep, keeping the console messages in
order, does not apply either, since the torture test does not read
back any message.

Thanks for the review,
--breno


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-11-11 10:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-10 12:32 [PATCH net] selftests: netconsole: enable the targets created by the torture test Breno Leitao
2026-11-11  1:58 ` Hangbin Liu
2026-11-11 10:20   ` Breno Leitao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®