lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Wed, 10 Sep 2014 18:20:27 +0400
From:	Dmitry Voytik <voytikd@...il.com>
To:	Al Viro <viro@...iv.linux.org.uk>
Cc:	Tetsuo Handa <penguin-kernel@...ove.sakura.ne.jp>,
	linux-kernel@...r.kernel.org,
	linux-fsdevel <linux-fsdevel@...r.kernel.org>
Subject: Re: [PATCH] fs: seq_file: optimize seq_pad()

On Wed, Sep 10, 2014 at 5:21 PM, Al Viro <viro@...iv.linux.org.uk> wrote:
> On Wed, Sep 10, 2014 at 01:20:19PM +0400, Dmitry Voytik wrote:
>> Use seq_putc() instead of seq_printf() in seq_pad() because the
>> former is faster.
>
> _Solitary_ seq_putc() is certainly going to be faster, but that loop...
> Do you have profiling results, or is it just an apriori "printf must
> be sloooowwww"?

My fail, sorry. The commit message is little bit wrong. I meant that simple
looping of seq_putc() is faster than seq_printf(). I haven't done profilings.
I just realized that seq_printf() is more complex than simple loop
with seq_putc()
(no need to decode format string as in vsnprintf(), etc).
If I resend the patch with the following commit message:

Use a simple loop with seq_putc() instead of seq_printf() in seq_pad() as
this approach is faster due to less complexity in terms of machine cycles.

Would be it Okay?
Thank you for reviewing.

-- 
Best Regards,
Dmitry Voytik.
voytikd@...il.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ