* [PATCH net-next 1/6] netconsole: introduce 'release' as a new sysdata field
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
@ 2025-03-14 17:58 ` Breno Leitao
2025-03-19 15:40 ` Simon Horman
2025-03-14 17:58 ` [PATCH net-next 2/6] netconsole: implement configfs for release_enabled Breno Leitao
` (5 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Breno Leitao @ 2025-03-14 17:58 UTC (permalink / raw)
To: Breno Leitao, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman,
Jonathan Corbet
Cc: netdev, linux-kernel, linux-kselftest, linux-doc, Manu Bretelle,
kernel-team
This commit adds a new feature to the sysdata structure, allowing the
kernel release/version to be appended as part of sysdata. Additionally,
it updates the logic to count this new field as a used entry when
enabled.
Signed-off-by: Breno Leitao <leitao@debian.org>
---
drivers/net/netconsole.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
index 098ea9eb02373..b7f7ec39e8318 100644
--- a/drivers/net/netconsole.c
+++ b/drivers/net/netconsole.c
@@ -106,6 +106,8 @@ enum sysdata_feature {
SYSDATA_CPU_NR = BIT(0),
/* Populate the task name (as in current->comm) in sysdata */
SYSDATA_TASKNAME = BIT(1),
+ /* Kernel release/version as part of sysdata */
+ SYSDATA_RELEASE = BIT(2),
};
/**
@@ -719,6 +721,8 @@ static size_t count_extradata_entries(struct netconsole_target *nt)
entries += 1;
if (nt->sysdata_fields & SYSDATA_TASKNAME)
entries += 1;
+ if (nt->sysdata_fields & SYSDATA_RELEASE)
+ entries += 1;
return entries;
}
--
2.47.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [PATCH net-next 1/6] netconsole: introduce 'release' as a new sysdata field
2025-03-14 17:58 ` [PATCH net-next 1/6] netconsole: introduce 'release' as a new sysdata field Breno Leitao
@ 2025-03-19 15:40 ` Simon Horman
0 siblings, 0 replies; 14+ messages in thread
From: Simon Horman @ 2025-03-19 15:40 UTC (permalink / raw)
To: Breno Leitao
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Shuah Khan, Jonathan Corbet, netdev, linux-kernel,
linux-kselftest, linux-doc, Manu Bretelle, kernel-team
On Fri, Mar 14, 2025 at 10:58:45AM -0700, Breno Leitao wrote:
> This commit adds a new feature to the sysdata structure, allowing the
> kernel release/version to be appended as part of sysdata. Additionally,
> it updates the logic to count this new field as a used entry when
> enabled.
>
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH net-next 2/6] netconsole: implement configfs for release_enabled
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
2025-03-14 17:58 ` [PATCH net-next 1/6] netconsole: introduce 'release' as a new sysdata field Breno Leitao
@ 2025-03-14 17:58 ` Breno Leitao
2025-03-19 15:40 ` Simon Horman
2025-03-14 17:58 ` [PATCH net-next 3/6] netconsole: add 'sysdata' suffix to related functions Breno Leitao
` (4 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Breno Leitao @ 2025-03-14 17:58 UTC (permalink / raw)
To: Breno Leitao, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman,
Jonathan Corbet
Cc: netdev, linux-kernel, linux-kselftest, linux-doc, Manu Bretelle,
kernel-team
Implement the configfs helpers to show and set release_enabled configfs
directories under userdata.
When enabled, set the feature bit in netconsole_target->sysdata_fields.
Signed-off-by: Breno Leitao <leitao@debian.org>
---
drivers/net/netconsole.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
index b7f7ec39e8318..0914d29b48d8e 100644
--- a/drivers/net/netconsole.c
+++ b/drivers/net/netconsole.c
@@ -442,6 +442,19 @@ static ssize_t sysdata_taskname_enabled_show(struct config_item *item,
return sysfs_emit(buf, "%d\n", taskname_enabled);
}
+static ssize_t sysdata_release_enabled_show(struct config_item *item,
+ char *buf)
+{
+ struct netconsole_target *nt = to_target(item->ci_parent);
+ bool release_enabled;
+
+ mutex_lock(&dynamic_netconsole_mutex);
+ release_enabled = !!(nt->sysdata_fields & SYSDATA_TASKNAME);
+ mutex_unlock(&dynamic_netconsole_mutex);
+
+ return sysfs_emit(buf, "%d\n", release_enabled);
+}
+
/*
* This one is special -- targets created through the configfs interface
* are not enabled (and the corresponding netpoll activated) by default.
@@ -859,6 +872,40 @@ static void disable_sysdata_feature(struct netconsole_target *nt,
nt->extradata_complete[nt->userdata_length] = 0;
}
+static ssize_t sysdata_release_enabled_store(struct config_item *item,
+ const char *buf, size_t count)
+{
+ struct netconsole_target *nt = to_target(item->ci_parent);
+ bool release_enabled, curr;
+ ssize_t ret;
+
+ ret = kstrtobool(buf, &release_enabled);
+ if (ret)
+ return ret;
+
+ mutex_lock(&dynamic_netconsole_mutex);
+ curr = !!(nt->sysdata_fields & SYSDATA_RELEASE);
+ if (release_enabled == curr)
+ goto unlock_ok;
+
+ if (release_enabled &&
+ count_extradata_entries(nt) >= MAX_EXTRADATA_ITEMS) {
+ ret = -ENOSPC;
+ goto unlock;
+ }
+
+ if (release_enabled)
+ nt->sysdata_fields |= SYSDATA_RELEASE;
+ else
+ disable_sysdata_feature(nt, SYSDATA_RELEASE);
+
+unlock_ok:
+ ret = strnlen(buf, count);
+unlock:
+ mutex_unlock(&dynamic_netconsole_mutex);
+ return ret;
+}
+
static ssize_t sysdata_taskname_enabled_store(struct config_item *item,
const char *buf, size_t count)
{
@@ -939,6 +986,7 @@ static ssize_t sysdata_cpu_nr_enabled_store(struct config_item *item,
CONFIGFS_ATTR(userdatum_, value);
CONFIGFS_ATTR(sysdata_, cpu_nr_enabled);
CONFIGFS_ATTR(sysdata_, taskname_enabled);
+CONFIGFS_ATTR(sysdata_, release_enabled);
static struct configfs_attribute *userdatum_attrs[] = {
&userdatum_attr_value,
@@ -1000,6 +1048,7 @@ static void userdatum_drop(struct config_group *group, struct config_item *item)
static struct configfs_attribute *userdata_attrs[] = {
&sysdata_attr_cpu_nr_enabled,
&sysdata_attr_taskname_enabled,
+ &sysdata_attr_release_enabled,
NULL,
};
--
2.47.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [PATCH net-next 2/6] netconsole: implement configfs for release_enabled
2025-03-14 17:58 ` [PATCH net-next 2/6] netconsole: implement configfs for release_enabled Breno Leitao
@ 2025-03-19 15:40 ` Simon Horman
0 siblings, 0 replies; 14+ messages in thread
From: Simon Horman @ 2025-03-19 15:40 UTC (permalink / raw)
To: Breno Leitao
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Shuah Khan, Jonathan Corbet, netdev, linux-kernel,
linux-kselftest, linux-doc, Manu Bretelle, kernel-team
On Fri, Mar 14, 2025 at 10:58:46AM -0700, Breno Leitao wrote:
> Implement the configfs helpers to show and set release_enabled configfs
> directories under userdata.
>
> When enabled, set the feature bit in netconsole_target->sysdata_fields.
>
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH net-next 3/6] netconsole: add 'sysdata' suffix to related functions
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
2025-03-14 17:58 ` [PATCH net-next 1/6] netconsole: introduce 'release' as a new sysdata field Breno Leitao
2025-03-14 17:58 ` [PATCH net-next 2/6] netconsole: implement configfs for release_enabled Breno Leitao
@ 2025-03-14 17:58 ` Breno Leitao
2025-03-19 15:41 ` Simon Horman
2025-03-14 17:58 ` [PATCH net-next 4/6] netconsole: append release to sysdata Breno Leitao
` (3 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Breno Leitao @ 2025-03-14 17:58 UTC (permalink / raw)
To: Breno Leitao, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman,
Jonathan Corbet
Cc: netdev, linux-kernel, linux-kselftest, linux-doc, Manu Bretelle,
kernel-team
This commit appends a common "sysdata" suffix to functions responsible
for appending data to sysdata.
This change enhances code clarity and prevents naming conflicts with
other "append" functions, particularly in anticipation of the upcoming
inclusion of the `release` field in the next patch.
Signed-off-by: Breno Leitao <leitao@debian.org>
---
drivers/net/netconsole.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
index 0914d29b48d8e..970dfc3ac9d41 100644
--- a/drivers/net/netconsole.c
+++ b/drivers/net/netconsole.c
@@ -1224,7 +1224,7 @@ static void populate_configfs_item(struct netconsole_target *nt,
init_target_config_group(nt, target_name);
}
-static int append_cpu_nr(struct netconsole_target *nt, int offset)
+static int sysdata_append_cpu_nr(struct netconsole_target *nt, int offset)
{
/* Append cpu=%d at extradata_complete after userdata str */
return scnprintf(&nt->extradata_complete[offset],
@@ -1232,7 +1232,7 @@ static int append_cpu_nr(struct netconsole_target *nt, int offset)
raw_smp_processor_id());
}
-static int append_taskname(struct netconsole_target *nt, int offset)
+static int sysdata_append_taskname(struct netconsole_target *nt, int offset)
{
return scnprintf(&nt->extradata_complete[offset],
MAX_EXTRADATA_ENTRY_LEN, " taskname=%s\n",
@@ -1256,9 +1256,9 @@ static int prepare_extradata(struct netconsole_target *nt)
goto out;
if (nt->sysdata_fields & SYSDATA_CPU_NR)
- extradata_len += append_cpu_nr(nt, extradata_len);
+ extradata_len += sysdata_append_cpu_nr(nt, extradata_len);
if (nt->sysdata_fields & SYSDATA_TASKNAME)
- extradata_len += append_taskname(nt, extradata_len);
+ extradata_len += sysdata_append_taskname(nt, extradata_len);
WARN_ON_ONCE(extradata_len >
MAX_EXTRADATA_ENTRY_LEN * MAX_EXTRADATA_ITEMS);
--
2.47.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [PATCH net-next 3/6] netconsole: add 'sysdata' suffix to related functions
2025-03-14 17:58 ` [PATCH net-next 3/6] netconsole: add 'sysdata' suffix to related functions Breno Leitao
@ 2025-03-19 15:41 ` Simon Horman
0 siblings, 0 replies; 14+ messages in thread
From: Simon Horman @ 2025-03-19 15:41 UTC (permalink / raw)
To: Breno Leitao
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Shuah Khan, Jonathan Corbet, netdev, linux-kernel,
linux-kselftest, linux-doc, Manu Bretelle, kernel-team
On Fri, Mar 14, 2025 at 10:58:47AM -0700, Breno Leitao wrote:
> This commit appends a common "sysdata" suffix to functions responsible
> for appending data to sysdata.
>
> This change enhances code clarity and prevents naming conflicts with
> other "append" functions, particularly in anticipation of the upcoming
> inclusion of the `release` field in the next patch.
>
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH net-next 4/6] netconsole: append release to sysdata
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
` (2 preceding siblings ...)
2025-03-14 17:58 ` [PATCH net-next 3/6] netconsole: add 'sysdata' suffix to related functions Breno Leitao
@ 2025-03-14 17:58 ` Breno Leitao
2025-03-19 15:41 ` Simon Horman
2025-03-14 17:58 ` [PATCH net-next 5/6] selftests: netconsole: Add tests for 'release' feature in sysdata Breno Leitao
` (2 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Breno Leitao @ 2025-03-14 17:58 UTC (permalink / raw)
To: Breno Leitao, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman,
Jonathan Corbet
Cc: netdev, linux-kernel, linux-kselftest, linux-doc, Manu Bretelle,
kernel-team
Append the init_utsname()->release to sysdata buffer before sending the
message in case the feature is set.
Signed-off-by: Breno Leitao <leitao@debian.org>
---
drivers/net/netconsole.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
index 970dfc3ac9d41..0a7981ef752c7 100644
--- a/drivers/net/netconsole.c
+++ b/drivers/net/netconsole.c
@@ -1238,6 +1238,14 @@ static int sysdata_append_taskname(struct netconsole_target *nt, int offset)
MAX_EXTRADATA_ENTRY_LEN, " taskname=%s\n",
current->comm);
}
+
+static int sysdata_append_release(struct netconsole_target *nt, int offset)
+{
+ return scnprintf(&nt->extradata_complete[offset],
+ MAX_EXTRADATA_ENTRY_LEN, " release=%s\n",
+ init_utsname()->release);
+}
+
/*
* prepare_extradata - append sysdata at extradata_complete in runtime
* @nt: target to send message to
@@ -1259,6 +1267,8 @@ static int prepare_extradata(struct netconsole_target *nt)
extradata_len += sysdata_append_cpu_nr(nt, extradata_len);
if (nt->sysdata_fields & SYSDATA_TASKNAME)
extradata_len += sysdata_append_taskname(nt, extradata_len);
+ if (nt->sysdata_fields & SYSDATA_RELEASE)
+ extradata_len += sysdata_append_release(nt, extradata_len);
WARN_ON_ONCE(extradata_len >
MAX_EXTRADATA_ENTRY_LEN * MAX_EXTRADATA_ITEMS);
--
2.47.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [PATCH net-next 4/6] netconsole: append release to sysdata
2025-03-14 17:58 ` [PATCH net-next 4/6] netconsole: append release to sysdata Breno Leitao
@ 2025-03-19 15:41 ` Simon Horman
0 siblings, 0 replies; 14+ messages in thread
From: Simon Horman @ 2025-03-19 15:41 UTC (permalink / raw)
To: Breno Leitao
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Shuah Khan, Jonathan Corbet, netdev, linux-kernel,
linux-kselftest, linux-doc, Manu Bretelle, kernel-team
On Fri, Mar 14, 2025 at 10:58:48AM -0700, Breno Leitao wrote:
> Append the init_utsname()->release to sysdata buffer before sending the
> message in case the feature is set.
>
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH net-next 5/6] selftests: netconsole: Add tests for 'release' feature in sysdata
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
` (3 preceding siblings ...)
2025-03-14 17:58 ` [PATCH net-next 4/6] netconsole: append release to sysdata Breno Leitao
@ 2025-03-14 17:58 ` Breno Leitao
2025-03-19 15:41 ` Simon Horman
2025-03-14 17:58 ` [PATCH net-next 6/6] docs: netconsole: document release feature Breno Leitao
2025-03-21 18:10 ` [PATCH net-next 0/6] netconsole: Add support for userdata release patchwork-bot+netdevbpf
6 siblings, 1 reply; 14+ messages in thread
From: Breno Leitao @ 2025-03-14 17:58 UTC (permalink / raw)
To: Breno Leitao, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman,
Jonathan Corbet
Cc: netdev, linux-kernel, linux-kselftest, linux-doc, Manu Bretelle,
kernel-team
Expands the self-tests to include the 'release' feature in
sysdata.
Verifies that enabling the 'release' feature appends the
correct data and ensures that disabling it functions as expected.
When enabled, the message should have an item similar to in the
userdata: `release=$(uname -r)`
Signed-off-by: Breno Leitao <leitao@debian.org>
---
.../selftests/drivers/net/netcons_sysdata.sh | 44 ++++++++++++++++++++--
1 file changed, 41 insertions(+), 3 deletions(-)
diff --git a/tools/testing/selftests/drivers/net/netcons_sysdata.sh b/tools/testing/selftests/drivers/net/netcons_sysdata.sh
index f351206ed1bda..a737e377bf085 100755
--- a/tools/testing/selftests/drivers/net/netcons_sysdata.sh
+++ b/tools/testing/selftests/drivers/net/netcons_sysdata.sh
@@ -42,6 +42,17 @@ function set_taskname() {
echo 1 > "${NETCONS_PATH}/userdata/taskname_enabled"
}
+# Enable the release to be appended to sysdata
+function set_release() {
+ if [[ ! -f "${NETCONS_PATH}/userdata/release_enabled" ]]
+ then
+ echo "Not able to enable release sysdata append. Configfs not available in ${NETCONS_PATH}/userdata/release_enabled" >&2
+ exit "${ksft_skip}"
+ fi
+
+ echo 1 > "${NETCONS_PATH}/userdata/release_enabled"
+}
+
# Disable the sysdata cpu_nr feature
function unset_cpu_nr() {
echo 0 > "${NETCONS_PATH}/userdata/cpu_nr_enabled"
@@ -52,6 +63,10 @@ function unset_taskname() {
echo 0 > "${NETCONS_PATH}/userdata/taskname_enabled"
}
+function unset_release() {
+ echo 0 > "${NETCONS_PATH}/userdata/release_enabled"
+}
+
# Test if MSG contains sysdata
function validate_sysdata() {
# OUTPUT_FILE will contain something like:
@@ -93,6 +108,21 @@ function validate_sysdata() {
pkill_socat
}
+function validate_release() {
+ RELEASE=$(uname -r)
+
+ if [ ! -f "$OUTPUT_FILE" ]; then
+ echo "FAIL: File was not generated." >&2
+ exit "${ksft_fail}"
+ fi
+
+ if ! grep -q "release=${RELEASE}" "${OUTPUT_FILE}"; then
+ echo "FAIL: 'release=${RELEASE}' not found in ${OUTPUT_FILE}" >&2
+ cat "${OUTPUT_FILE}" >&2
+ exit "${ksft_fail}"
+ fi
+}
+
# Test if MSG content exists in OUTPUT_FILE but no `cpu=` and `taskname=`
# strings
function validate_no_sysdata() {
@@ -119,6 +149,12 @@ function validate_no_sysdata() {
exit "${ksft_fail}"
fi
+ if grep -q "release=" "${OUTPUT_FILE}"; then
+ echo "FAIL: 'release= found in ${OUTPUT_FILE}" >&2
+ cat "${OUTPUT_FILE}" >&2
+ exit "${ksft_fail}"
+ fi
+
rm "${OUTPUT_FILE}"
}
@@ -169,9 +205,11 @@ MSG="Test #1 from CPU${CPU}"
set_cpu_nr
# Enable taskname to be appended to sysdata
set_taskname
+set_release
runtest
# Make sure the message was received in the dst part
# and exit
+validate_release
validate_sysdata
#====================================================
@@ -184,19 +222,19 @@ OUTPUT_FILE="/tmp/${TARGET}_2"
MSG="Test #2 from CPU${CPU}"
set_user_data
runtest
+validate_release
validate_sysdata
# ===================================================
# TEST #3
-# Unset cpu_nr, so, no CPU should be appended.
-# userdata is still set
+# Unset all sysdata, fail if any userdata is set
# ===================================================
CPU=$((RANDOM % $(nproc)))
OUTPUT_FILE="/tmp/${TARGET}_3"
MSG="Test #3 from CPU${CPU}"
-# Enable the auto population of cpu_nr
unset_cpu_nr
unset_taskname
+unset_release
runtest
# At this time, cpu= shouldn't be present in the msg
validate_no_sysdata
--
2.47.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [PATCH net-next 5/6] selftests: netconsole: Add tests for 'release' feature in sysdata
2025-03-14 17:58 ` [PATCH net-next 5/6] selftests: netconsole: Add tests for 'release' feature in sysdata Breno Leitao
@ 2025-03-19 15:41 ` Simon Horman
0 siblings, 0 replies; 14+ messages in thread
From: Simon Horman @ 2025-03-19 15:41 UTC (permalink / raw)
To: Breno Leitao
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Shuah Khan, Jonathan Corbet, netdev, linux-kernel,
linux-kselftest, linux-doc, Manu Bretelle, kernel-team
On Fri, Mar 14, 2025 at 10:58:49AM -0700, Breno Leitao wrote:
> Expands the self-tests to include the 'release' feature in
> sysdata.
>
> Verifies that enabling the 'release' feature appends the
> correct data and ensures that disabling it functions as expected.
>
> When enabled, the message should have an item similar to in the
> userdata: `release=$(uname -r)`
>
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH net-next 6/6] docs: netconsole: document release feature
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
` (4 preceding siblings ...)
2025-03-14 17:58 ` [PATCH net-next 5/6] selftests: netconsole: Add tests for 'release' feature in sysdata Breno Leitao
@ 2025-03-14 17:58 ` Breno Leitao
2025-03-19 15:42 ` Simon Horman
2025-03-21 18:10 ` [PATCH net-next 0/6] netconsole: Add support for userdata release patchwork-bot+netdevbpf
6 siblings, 1 reply; 14+ messages in thread
From: Breno Leitao @ 2025-03-14 17:58 UTC (permalink / raw)
To: Breno Leitao, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, Shuah Khan, Simon Horman,
Jonathan Corbet
Cc: netdev, linux-kernel, linux-kselftest, linux-doc, Manu Bretelle,
kernel-team
Add documentation explaining the kernel release auto-population feature
in netconsole.
This feature appends kernel version information to the userdata
dictionary in every message sent when enabled via the `release_enabled`
file in the configfs hierarchy.
Signed-off-by: Breno Leitao <leitao@debian.org>
---
Documentation/networking/netconsole.rst | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/Documentation/networking/netconsole.rst b/Documentation/networking/netconsole.rst
index ae82a6337a8d8..44f5a441cf813 100644
--- a/Documentation/networking/netconsole.rst
+++ b/Documentation/networking/netconsole.rst
@@ -268,6 +268,31 @@ Example::
In this example, the message was generated while "echo" was the current
scheduled process.
+Kernel release auto population in userdata
+------------------------------------------
+
+Within the netconsole configfs hierarchy, there is a file named `release_enabled`
+located in the `userdata` directory. This file controls the kernel release
+(version) auto-population feature, which appends the kernel release information
+to userdata dictionary in every message sent.
+
+To enable the release auto-population::
+
+ echo 1 > /sys/kernel/config/netconsole/target1/userdata/release_enabled
+
+Example::
+
+ echo "This is a message" > /dev/kmsg
+ 12,607,22085407756,-;This is a message
+ release=6.14.0-rc6-01219-g3c027fbd941d
+
+.. note::
+
+ This feature provides the same data as the "release prepend" feature.
+ However, in this case, the release information is appended to the userdata
+ dictionary rather than being included in the message header.
+
+
CPU number auto population in userdata
--------------------------------------
--
2.47.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* Re: [PATCH net-next 6/6] docs: netconsole: document release feature
2025-03-14 17:58 ` [PATCH net-next 6/6] docs: netconsole: document release feature Breno Leitao
@ 2025-03-19 15:42 ` Simon Horman
0 siblings, 0 replies; 14+ messages in thread
From: Simon Horman @ 2025-03-19 15:42 UTC (permalink / raw)
To: Breno Leitao
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Shuah Khan, Jonathan Corbet, netdev, linux-kernel,
linux-kselftest, linux-doc, Manu Bretelle, kernel-team
On Fri, Mar 14, 2025 at 10:58:50AM -0700, Breno Leitao wrote:
> Add documentation explaining the kernel release auto-population feature
> in netconsole.
>
> This feature appends kernel version information to the userdata
> dictionary in every message sent when enabled via the `release_enabled`
> file in the configfs hierarchy.
>
> Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH net-next 0/6] netconsole: Add support for userdata release
2025-03-14 17:58 [PATCH net-next 0/6] netconsole: Add support for userdata release Breno Leitao
` (5 preceding siblings ...)
2025-03-14 17:58 ` [PATCH net-next 6/6] docs: netconsole: document release feature Breno Leitao
@ 2025-03-21 18:10 ` patchwork-bot+netdevbpf
6 siblings, 0 replies; 14+ messages in thread
From: patchwork-bot+netdevbpf @ 2025-03-21 18:10 UTC (permalink / raw)
To: Breno Leitao
Cc: andrew+netdev, davem, edumazet, kuba, pabeni, shuah, horms,
corbet, netdev, linux-kernel, linux-kselftest, linux-doc, chantr4,
kernel-team
Hello:
This series was applied to netdev/net-next.git (main)
by Paolo Abeni <pabeni@redhat.com>:
On Fri, 14 Mar 2025 10:58:44 -0700 you wrote:
> I am submitting a series of patches that introduce a new feature for the
> netconsole subsystem, specifically the addition of the 'release' field
> to the sysdata structure. This feature allows the kernel release/version
> to be appended to the userdata dictionary in every message sent,
> enhancing the information available for debugging and monitoring
> purposes.
>
> [...]
Here is the summary with links:
- [net-next,1/6] netconsole: introduce 'release' as a new sysdata field
https://git.kernel.org/netdev/net-next/c/42211e310781
- [net-next,2/6] netconsole: implement configfs for release_enabled
https://git.kernel.org/netdev/net-next/c/343f90227070
- [net-next,3/6] netconsole: add 'sysdata' suffix to related functions
https://git.kernel.org/netdev/net-next/c/b92c6fc43f4e
- [net-next,4/6] netconsole: append release to sysdata
https://git.kernel.org/netdev/net-next/c/cfcc9239e78a
- [net-next,5/6] selftests: netconsole: Add tests for 'release' feature in sysdata
https://git.kernel.org/netdev/net-next/c/4b73dc83ed96
- [net-next,6/6] docs: netconsole: document release feature
https://git.kernel.org/netdev/net-next/c/56ad890de2cd
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] 14+ messages in thread