[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1477166856.3817.4.camel@perches.com>
Date: Sat, 22 Oct 2016 13:07:36 -0700
From: Joe Perches <joe@...ches.com>
To: SF Markus Elfring <elfring@...rs.sourceforge.net>,
linux-ia64@...r.kernel.org, Al Viro <viro@...iv.linux.org.uk>,
Borislav Petkov <bp@...e.de>,
Fenghua Yu <fenghua.yu@...el.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Hans-Christian Noren Egtvedt <egtvedt@...fundet.no>,
Ingo Molnar <mingo@...nel.org>,
Jörg Rödel <jroedel@...e.de>,
Krzysztof Kozlowski <krzk@...nel.org>,
Robert Richter <rrichter@...ium.com>,
Robin Murphy <robin.murphy@....com>,
Tony Luck <tony.luck@...el.com>,
Toshi Kani <toshi.kani@....com>,
Vineet Gupta <vgupta@...opsys.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
kernel-janitors@...r.kernel.org
Subject: Re: [PATCH 6/6] IA64-sn2_smp: Combine two seq_printf() calls into
one call in sn2_ptc_seq_show()
On Sat, 2016-10-22 at 21:58 +0200, SF Markus Elfring wrote:
> Some data were printed into a sequence by two separate function calls.
> Print the same data by a single function call instead.
[]
> diff --git a/arch/ia64/sn/kernel/sn2/sn2_smp.c b/arch/ia64/sn/kernel/sn2/sn2_smp.c
[]
> @@ -494,12 +494,11 @@ static int sn2_ptc_seq_show(struct seq_file *file, void *data)
> int cpu;
>
> cpu = *(loff_t *) data;
> -
> - if (!cpu) {
> + if (!cpu)
> seq_printf(file,
> - "# cpu ptc_l newrid ptc_flushes nodes_flushed deadlocks lock_nsec shub_nsec shub_nsec_max not_my_mm deadlock2 ipi_fluches ipi_nsec\n");
> - seq_printf(file, "# ptctest %d, flushopt %d\n", sn2_ptctest, sn2_flush_opt);
> - }
> + "# cpu ptc_l newrid ptc_flushes nodes_flushed deadlocks lock_nsec shub_nsec shub_nsec_max not_my_mm deadlock2 ipi_fluches ipi_nsec\n"
> + "# ptctest %d, flushopt %d\n",
> + sn2_ptctest, sn2_flush_opt);
>
> if (cpu < nr_cpu_ids && cpu_online(cpu)) {
> stat = &per_cpu(ptcstats, cpu);
Please think more.
printf has to inspect character by character looking for
a vsprintf % character and 0 termination.
seq_puts does a strlen then memcpy.
Which is faster?
When is it better to call 2 functions?
When does readability matter more than efficiency?
Powered by blists - more mailing lists