From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: David Wang <00107082@163.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Sasha Levin <sashal@kernel.org>,
linux-fsdevel@vger.kernel.org
Subject: [PATCH AUTOSEL 6.6 15/15] proc/softirqs: replace seq_printf with seq_put_decimal_ull_width
Date: Tue, 12 Nov 2024 05:36:36 -0500 [thread overview]
Message-ID: <20241112103643.1653381-15-sashal@kernel.org> (raw)
In-Reply-To: <20241112103643.1653381-1-sashal@kernel.org>
From: David Wang <00107082@163.com>
[ Upstream commit 84b9749a3a704dcc824a88aa8267247c801d51e4 ]
seq_printf is costy, on a system with n CPUs, reading /proc/softirqs
would yield 10*n decimal values, and the extra cost parsing format string
grows linearly with number of cpus. Replace seq_printf with
seq_put_decimal_ull_width have significant performance improvement.
On an 8CPUs system, reading /proc/softirqs show ~40% performance
gain with this patch.
Signed-off-by: David Wang <00107082@163.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/proc/softirqs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/proc/softirqs.c b/fs/proc/softirqs.c
index f4616083faef3..04bb29721419b 100644
--- a/fs/proc/softirqs.c
+++ b/fs/proc/softirqs.c
@@ -20,7 +20,7 @@ static int show_softirqs(struct seq_file *p, void *v)
for (i = 0; i < NR_SOFTIRQS; i++) {
seq_printf(p, "%12s:", softirq_to_name[i]);
for_each_possible_cpu(j)
- seq_printf(p, " %10u", kstat_softirqs_cpu(i, j));
+ seq_put_decimal_ull_width(p, " ", kstat_softirqs_cpu(i, j), 10);
seq_putc(p, '\n');
}
return 0;
--
2.43.0
prev parent reply other threads:[~2024-11-12 10:37 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-12 10:36 [PATCH AUTOSEL 6.6 01/15] soc: qcom: Add check devm_kasprintf() returned value Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 02/15] firmware: arm_scmi: Reject clear channel request on A2P Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 03/15] regulator: rk808: Add apply_bit for BUCK3 on RK809 Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 04/15] platform/x86: dell-smbios-base: Extends support to Alienware products Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 05/15] platform/x86: dell-wmi-base: Handle META key Lock/Unlock events Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 06/15] ASoC: tas2781: Add new driver version for tas2563 & tas2781 qfn chip Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 07/15] tools/lib/thermal: Remove the thermal.h soft link when doing make clean Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 08/15] can: j1939: fix error in J1939 documentation Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 09/15] platform/x86: thinkpad_acpi: Fix for ThinkPad's with ECFW showing incorrect fan speed Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 10/15] ASoC: amd: yc: fix internal mic on Xiaomi Book Pro 14 2022 Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 11/15] ASoC: amd: yc: Support dmic on another model of Lenovo Thinkpad E14 Gen 6 Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 12/15] ASoC: stm: Prevent potential division by zero in stm32_sai_mclk_round_rate() Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 13/15] ASoC: stm: Prevent potential division by zero in stm32_sai_get_clk_div() Sasha Levin
2024-11-12 10:36 ` [PATCH AUTOSEL 6.6 14/15] drm: panel-orientation-quirks: Make Lenovo Yoga Tab 3 X90F DMI match less strict Sasha Levin
2024-11-12 10:36 ` Sasha Levin [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241112103643.1653381-15-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=00107082@163.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox