diff options
| author | Josephine Pfeiffer <hi@josie.lol> | 2025-10-27 11:40:43 -0600 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-11-13 15:37:41 -0500 |
| commit | fd8ee6c0cd04d8451f8bf039495f8d630594babc (patch) | |
| tree | c4dfb7ea4934f8f4bd3c331cd4d381470b6ed2d1 /arch | |
| parent | 2c8d2b53866fb229b438296526ef0fa5a990e5e5 (diff) | |
| download | linux-fd8ee6c0cd04d8451f8bf039495f8d630594babc.tar.gz linux-fd8ee6c0cd04d8451f8bf039495f8d630594babc.tar.bz2 linux-fd8ee6c0cd04d8451f8bf039495f8d630594babc.zip | |
riscv: ptdump: use seq_puts() in pt_dump_seq_puts() macro
[ Upstream commit a74f038fa50e0d33b740f44f862fe856f16de6a8 ]
The pt_dump_seq_puts() macro incorrectly uses seq_printf() instead of
seq_puts(). This is both a performance issue and conceptually wrong,
as the macro name suggests plain string output (puts) but the
implementation uses formatted output (printf).
The macro is used in ptdump.c:301 to output a newline character. Using
seq_printf() adds unnecessary overhead for format string parsing when
outputting this constant string.
This bug was introduced in commit 59c4da8640cc ("riscv: Add support to
dump the kernel page tables") in 2020, which copied the implementation
pattern from other architectures that had the same bug.
Fixes: 59c4da8640cc ("riscv: Add support to dump the kernel page tables")
Signed-off-by: Josephine Pfeiffer <hi@josie.lol>
Link: https://lore.kernel.org/r/20251018170451.3355496-1-hi@josie.lol
Signed-off-by: Paul Walmsley <pjw@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/riscv/mm/ptdump.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/riscv/mm/ptdump.c b/arch/riscv/mm/ptdump.c index 3b51690cc876..34299c2b231f 100644 --- a/arch/riscv/mm/ptdump.c +++ b/arch/riscv/mm/ptdump.c @@ -21,7 +21,7 @@ #define pt_dump_seq_puts(m, fmt) \ ({ \ if (m) \ - seq_printf(m, fmt); \ + seq_puts(m, fmt); \ }) /* |
