* [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission
@ 2024-10-29 9:00 Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 1/2] net: netconsole: selftests: Change the IP subnet Breno Leitao
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Breno Leitao @ 2024-10-29 9:00 UTC (permalink / raw)
To: kuba, horms, davem, edumazet, pabeni, matttbe
Cc: thepacketgeek, netdev, linux-kernel, davej, vlad.wing, max,
kernel-team, aehkn
The netconsole selftest has been extended to cover userdata, a
significant subsystem within netconsole. This patch introduces support
for testing userdata by appending a key-value pair and verifying its
successful transmission via netconsole/netpoll.
Additionally, this patchseries addresses a pending change in the subnet
configuration for the selftest.
Changelog:
v2:
* Use 192.0.2.0/24 instead of 192.168/16 in the first patch "net:
netconsole: selftests: Change the IP subnet" (Petr)
* No further changes in the second patch ("net: netconsole: selftests:
Add userdata validation")
v1:
* https://lore.kernel.org/all/20241025161415.238215-1-leitao@debian.org/
Breno Leitao (2):
net: netconsole: selftests: Change the IP subnet
net: netconsole: selftests: Add userdata validation
.../selftests/drivers/net/netcons_basic.sh | 33 +++++++++++++++++--
1 file changed, 31 insertions(+), 2 deletions(-)
--
2.43.5
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH net-next v2 1/2] net: netconsole: selftests: Change the IP subnet
2024-10-29 9:00 [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission Breno Leitao
@ 2024-10-29 9:00 ` Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 2/2] net: netconsole: selftests: Add userdata validation Breno Leitao
2024-11-03 19:50 ` [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission patchwork-bot+netdevbpf
2 siblings, 0 replies; 4+ messages in thread
From: Breno Leitao @ 2024-10-29 9:00 UTC (permalink / raw)
To: kuba, horms, davem, edumazet, pabeni, matttbe, Andrew Lunn,
Shuah Khan
Cc: thepacketgeek, netdev, linux-kernel, davej, vlad.wing, max,
kernel-team, aehkn, Petr Machata,
open list:KERNEL SELFTEST FRAMEWORK
Use a less populated IP range to run the tests, as suggested by Petr in
Link: https://lore.kernel.org/netdev/87ikvukv3s.fsf@nvidia.com/.
Suggested-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Breno Leitao <leitao@debian.org>
---
tools/testing/selftests/drivers/net/netcons_basic.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/testing/selftests/drivers/net/netcons_basic.sh b/tools/testing/selftests/drivers/net/netcons_basic.sh
index 06021b2059b7..8d28e5189e91 100755
--- a/tools/testing/selftests/drivers/net/netcons_basic.sh
+++ b/tools/testing/selftests/drivers/net/netcons_basic.sh
@@ -20,9 +20,9 @@ SCRIPTDIR=$(dirname "$(readlink -e "${BASH_SOURCE[0]}")")
# Simple script to test dynamic targets in netconsole
SRCIF="" # to be populated later
-SRCIP=192.168.1.1
+SRCIP=192.0.2.1
DSTIF="" # to be populated later
-DSTIP=192.168.1.2
+DSTIP=192.0.2.2
PORT="6666"
MSG="netconsole selftest"
--
2.43.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH net-next v2 2/2] net: netconsole: selftests: Add userdata validation
2024-10-29 9:00 [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 1/2] net: netconsole: selftests: Change the IP subnet Breno Leitao
@ 2024-10-29 9:00 ` Breno Leitao
2024-11-03 19:50 ` [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission patchwork-bot+netdevbpf
2 siblings, 0 replies; 4+ messages in thread
From: Breno Leitao @ 2024-10-29 9:00 UTC (permalink / raw)
To: kuba, horms, davem, edumazet, pabeni, matttbe, Andrew Lunn,
Shuah Khan
Cc: thepacketgeek, netdev, linux-kernel, davej, vlad.wing, max,
kernel-team, aehkn, open list:KERNEL SELFTEST FRAMEWORK
Extend netcons_basic selftest to verify the userdata functionality by:
1. Creating a test key in the userdata configfs directory
2. Writing a known value to the key
3. Validating the key-value pair appears in the captured network output
This ensures the userdata feature is properly tested during selftests.
Signed-off-by: Breno Leitao <leitao@debian.org>
---
.../selftests/drivers/net/netcons_basic.sh | 29 +++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/tools/testing/selftests/drivers/net/netcons_basic.sh b/tools/testing/selftests/drivers/net/netcons_basic.sh
index 8d28e5189e91..182eb1a97e59 100755
--- a/tools/testing/selftests/drivers/net/netcons_basic.sh
+++ b/tools/testing/selftests/drivers/net/netcons_basic.sh
@@ -26,10 +26,13 @@ DSTIP=192.0.2.2
PORT="6666"
MSG="netconsole selftest"
+USERDATA_KEY="key"
+USERDATA_VALUE="value"
TARGET=$(mktemp -u netcons_XXXXX)
DEFAULT_PRINTK_VALUES=$(cat /proc/sys/kernel/printk)
NETCONS_CONFIGFS="/sys/kernel/config/netconsole"
NETCONS_PATH="${NETCONS_CONFIGFS}"/"${TARGET}"
+KEY_PATH="${NETCONS_PATH}/userdata/${USERDATA_KEY}"
# NAMESPACE will be populated by setup_ns with a random value
NAMESPACE=""
@@ -122,6 +125,8 @@ function cleanup() {
# delete netconsole dynamic reconfiguration
echo 0 > "${NETCONS_PATH}"/enabled
+ # Remove key
+ rmdir "${KEY_PATH}"
# Remove the configfs entry
rmdir "${NETCONS_PATH}"
@@ -136,6 +141,18 @@ function cleanup() {
echo "${DEFAULT_PRINTK_VALUES}" > /proc/sys/kernel/printk
}
+function set_user_data() {
+ if [[ ! -d "${NETCONS_PATH}""/userdata" ]]
+ then
+ echo "Userdata path not available in ${NETCONS_PATH}/userdata"
+ exit "${ksft_skip}"
+ fi
+
+ mkdir -p "${KEY_PATH}"
+ VALUE_PATH="${KEY_PATH}""/value"
+ echo "${USERDATA_VALUE}" > "${VALUE_PATH}"
+}
+
function listen_port_and_save_to() {
local OUTPUT=${1}
# Just wait for 2 seconds
@@ -146,6 +163,10 @@ function listen_port_and_save_to() {
function validate_result() {
local TMPFILENAME="$1"
+ # TMPFILENAME will contain something like:
+ # 6.11.1-0_fbk0_rc13_509_g30d75cea12f7,13,1822,115075213798,-;netconsole selftest: netcons_gtJHM
+ # key=value
+
# Check if the file exists
if [ ! -f "$TMPFILENAME" ]; then
echo "FAIL: File was not generated." >&2
@@ -158,6 +179,12 @@ function validate_result() {
exit "${ksft_fail}"
fi
+ if ! grep -q "${USERDATA_KEY}=${USERDATA_VALUE}" "${TMPFILENAME}"; then
+ echo "FAIL: ${USERDATA_KEY}=${USERDATA_VALUE} not found in ${TMPFILENAME}" >&2
+ cat "${TMPFILENAME}" >&2
+ exit "${ksft_fail}"
+ fi
+
# Delete the file once it is validated, otherwise keep it
# for debugging purposes
rm "${TMPFILENAME}"
@@ -220,6 +247,8 @@ trap cleanup EXIT
set_network
# Create a dynamic target for netconsole
create_dynamic_target
+# Set userdata "key" with the "value" value
+set_user_data
# Listed for netconsole port inside the namespace and destination interface
listen_port_and_save_to "${OUTPUT_FILE}" &
# Wait for socat to start and listen to the port.
--
2.43.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission
2024-10-29 9:00 [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 1/2] net: netconsole: selftests: Change the IP subnet Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 2/2] net: netconsole: selftests: Add userdata validation Breno Leitao
@ 2024-11-03 19:50 ` patchwork-bot+netdevbpf
2 siblings, 0 replies; 4+ messages in thread
From: patchwork-bot+netdevbpf @ 2024-11-03 19:50 UTC (permalink / raw)
To: Breno Leitao
Cc: kuba, horms, davem, edumazet, pabeni, matttbe, thepacketgeek,
netdev, linux-kernel, davej, vlad.wing, max, kernel-team, aehkn
Hello:
This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Tue, 29 Oct 2024 02:00:27 -0700 you wrote:
> The netconsole selftest has been extended to cover userdata, a
> significant subsystem within netconsole. This patch introduces support
> for testing userdata by appending a key-value pair and verifying its
> successful transmission via netconsole/netpoll.
>
> Additionally, this patchseries addresses a pending change in the subnet
> configuration for the selftest.
>
> [...]
Here is the summary with links:
- [net-next,v2,1/2] net: netconsole: selftests: Change the IP subnet
https://git.kernel.org/netdev/net-next/c/d051cd72dcb7
- [net-next,v2,2/2] net: netconsole: selftests: Add userdata validation
https://git.kernel.org/netdev/net-next/c/afa4ceb0fb64
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-11-03 19:50 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-29 9:00 [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 1/2] net: netconsole: selftests: Change the IP subnet Breno Leitao
2024-10-29 9:00 ` [PATCH net-next v2 2/2] net: netconsole: selftests: Add userdata validation Breno Leitao
2024-11-03 19:50 ` [PATCH net-next v2 0/2] selftest: netconsole: Enhance selftest to validate userdata transmission patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox