linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] soc: qcom: cmd-db: Drop NUL bytes from debugfs output
@ 2023-06-20 21:37 Bjorn Andersson
  2023-06-20 23:27 ` Konrad Dybcio
  2023-07-10  5:07 ` Bjorn Andersson
  0 siblings, 2 replies; 3+ messages in thread
From: Bjorn Andersson @ 2023-06-20 21:37 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Stephen Boyd
  Cc: linux-arm-msm, linux-kernel

The debugfs dump of Command DB relies uses %*pEp to print the resource
identifiers, with escaping of non-printable characters.
But p (ESCAPE_NP) does not escape NUL characters, so for identifiers
less than 8 bytes in length the output will retain these.

This does not cause an issue while looking at the dump in the terminal
(no known complaints at least), but when programmatically consuming the
debugfs output the extra characters are unwanted.

Change the fixed 8-byte sizeof() to a dynamic strnlen() to avoid
printing these NUL characters.

Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
---
 drivers/soc/qcom/cmd-db.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/soc/qcom/cmd-db.c b/drivers/soc/qcom/cmd-db.c
index 33856abd560c..34c40368d5b5 100644
--- a/drivers/soc/qcom/cmd-db.c
+++ b/drivers/soc/qcom/cmd-db.c
@@ -284,7 +284,7 @@ static int cmd_db_debugfs_dump(struct seq_file *seq, void *p)
 		ent = rsc_to_entry_header(rsc);
 		for (j = 0; j < le16_to_cpu(rsc->cnt); j++, ent++) {
 			seq_printf(seq, "0x%05x: %*pEp", le32_to_cpu(ent->addr),
-				   (int)sizeof(ent->id), ent->id);
+				   (int)strnlen(ent->id, sizeof(ent->id)), ent->id);
 
 			len = le16_to_cpu(ent->len);
 			if (len) {
-- 
2.25.1


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

* Re: [PATCH] soc: qcom: cmd-db: Drop NUL bytes from debugfs output
  2023-06-20 21:37 [PATCH] soc: qcom: cmd-db: Drop NUL bytes from debugfs output Bjorn Andersson
@ 2023-06-20 23:27 ` Konrad Dybcio
  2023-07-10  5:07 ` Bjorn Andersson
  1 sibling, 0 replies; 3+ messages in thread
From: Konrad Dybcio @ 2023-06-20 23:27 UTC (permalink / raw)
  To: Bjorn Andersson, Andy Gross, Bjorn Andersson, Stephen Boyd
  Cc: linux-arm-msm, linux-kernel

On 20.06.2023 23:37, Bjorn Andersson wrote:
> The debugfs dump of Command DB relies uses %*pEp to print the resource
> identifiers, with escaping of non-printable characters.
> But p (ESCAPE_NP) does not escape NUL characters, so for identifiers
> less than 8 bytes in length the output will retain these.
> 
> This does not cause an issue while looking at the dump in the terminal
> (no known complaints at least), but when programmatically consuming the
> debugfs output the extra characters are unwanted.
> 
> Change the fixed 8-byte sizeof() to a dynamic strnlen() to avoid
> printing these NUL characters.
> 
> Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad
>  drivers/soc/qcom/cmd-db.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/soc/qcom/cmd-db.c b/drivers/soc/qcom/cmd-db.c
> index 33856abd560c..34c40368d5b5 100644
> --- a/drivers/soc/qcom/cmd-db.c
> +++ b/drivers/soc/qcom/cmd-db.c
> @@ -284,7 +284,7 @@ static int cmd_db_debugfs_dump(struct seq_file *seq, void *p)
>  		ent = rsc_to_entry_header(rsc);
>  		for (j = 0; j < le16_to_cpu(rsc->cnt); j++, ent++) {
>  			seq_printf(seq, "0x%05x: %*pEp", le32_to_cpu(ent->addr),
> -				   (int)sizeof(ent->id), ent->id);
> +				   (int)strnlen(ent->id, sizeof(ent->id)), ent->id);
>  
>  			len = le16_to_cpu(ent->len);
>  			if (len) {

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

* Re: [PATCH] soc: qcom: cmd-db: Drop NUL bytes from debugfs output
  2023-06-20 21:37 [PATCH] soc: qcom: cmd-db: Drop NUL bytes from debugfs output Bjorn Andersson
  2023-06-20 23:27 ` Konrad Dybcio
@ 2023-07-10  5:07 ` Bjorn Andersson
  1 sibling, 0 replies; 3+ messages in thread
From: Bjorn Andersson @ 2023-07-10  5:07 UTC (permalink / raw)
  To: Andy Gross, Konrad Dybcio, Stephen Boyd, Bjorn Andersson
  Cc: linux-arm-msm, linux-kernel


On Tue, 20 Jun 2023 14:37:03 -0700, Bjorn Andersson wrote:
> The debugfs dump of Command DB relies uses %*pEp to print the resource
> identifiers, with escaping of non-printable characters.
> But p (ESCAPE_NP) does not escape NUL characters, so for identifiers
> less than 8 bytes in length the output will retain these.
> 
> This does not cause an issue while looking at the dump in the terminal
> (no known complaints at least), but when programmatically consuming the
> debugfs output the extra characters are unwanted.
> 
> [...]

Applied, thanks!

[1/1] soc: qcom: cmd-db: Drop NUL bytes from debugfs output
      commit: d4600cbd5bcbaa2b296b5cf9a5c04408eedb4ef3

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>

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

end of thread, other threads:[~2023-07-10  5:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-20 21:37 [PATCH] soc: qcom: cmd-db: Drop NUL bytes from debugfs output Bjorn Andersson
2023-06-20 23:27 ` Konrad Dybcio
2023-07-10  5:07 ` Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).