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:   Fri, 3 Jan 2020 17:05:58 -0800
From:   Yury Norov <yury.norov@...il.com>
To:     Joe Perches <joe@...ches.com>
Cc:     Thomas Gleixner <tglx@...utronix.de>,
        Andrew Morton <akpm@...ux-foundation.org>,
        Allison Randal <allison@...utok.net>,
        William Breathitt Gray <vilhelm.gray@...il.com>,
        Yury Norov <yury.norov@...il.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/3] lib/find_bit.c: uninline helper _find_next_bit()

On Fri, Jan 03, 2020 at 04:08:43PM -0800, Yury Norov wrote:
> On Fri, Jan 03, 2020 at 01:46:07PM -0800, Joe Perches wrote:
> > On Fri, 2020-01-03 at 12:28 -0800, Yury Norov wrote:
> > > It saves 25% of .text for arm64, and more for BE architectures.
> > 
> > This seems a rather misleading code size reduction description.
> > 
> > Please detail the specific code sizes using "size lib/find_bit.o"
> > before and after this change.
> 
> Before:
> $ size lib/find_bit.o
>    text    data     bss     dec     hex filename
>    1012      56       0    1068     42c lib/find_bit.o
> 
> After:
> $ size lib/find_bit.o
>    text    data     bss     dec     hex filename
>     776      56       0     832     340 lib/find_bit.o
> 
> > Also, _find_next_bit is used 3 times, perhaps any code size
> > increase is appropriate given likely reduced run time.
> 
> Second patch of the series switches find_next_zero_bit_le()
> and find_next_bit_le() to _find_next_bit(), so totally 5.
>  
> Yury

> > perhaps any code size
> > increase is appropriate given likely reduced run time.

I have a benchmark for the find_bit functions upstream, however, it cannot
measure the overall performance degradation related to increased probability
of cache eviction.

When I originally wrote _find_next_bit() in 2014, it was simpler and had 2
users. Now there are 5 of them, and I think it's good time to stop inlining
_find_next_bit().

Yury

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ