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] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090428194537.GN6730@linux.vnet.ibm.com>
Date:	Tue, 28 Apr 2009 12:45:37 -0700
From:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To:	David Howells <dhowells@...hat.com>
Cc:	linux-kernel@...r.kernel.org, mingo@...e.hu,
	akpm@...ux-foundation.org, niv@...ibm.com, dvhltc@...ibm.com,
	lethal@...ux-sh.org, kernel@...tstofly.org, matthew@....cx
Subject: Re: [PATCH] v3 RCU: the bloatwatch edition

On Tue, Apr 28, 2009 at 03:24:14PM +0100, David Howells wrote:
> Paul E. McKenney <paulmck@...ux.vnet.ibm.com> wrote:
> 
> > This patch is a version of RCU designed for (!SMP && EMBEDDED)
> > provided as a proof of concept of a small-footprint RCU implementation.
> > In particular, the implementation of synchronize_rcu() is extremely
> > lightweight and high performance.  It passes rcutorture testing in each
> > of the four relevant configurations (combinations of NO_HZ and PREEMPT)
> > on x86.  This saves about 900 bytes compared to Classic RCU, and a
> > couple kilobytes compared to Hierarchical RCU:
> 
> On FRV, CLASSIC_RCU:
> 
>    text    data     bss     dec     hex filename
>    2616     184       0    2800     af0 kernel/rcuclassic.o
>     884      32      20     936     3a8 kernel/rcupdate.o
> 
> TREE_RCU:
> 
>    3940     328       0    4268    10ac kernel/rcutree.o
>     884      32      20     936     3a8 kernel/rcupdate.o
> 
> TINY_RCU:
> 
>    1152      32       0    1184     4a0 kernel/rcutiny.o
>     836      32      20     888     378 kernel/rcupdate.o
> 
> It works on my FRV board.
> 
> Possibly TINY_RCU could be shrunk a bit more by a judicious bit of inlining of
> some of the very small functions.
> 
> Acked-by: David Howells <dhowells@...hat.com>

Thank you for looking this over!

Your thought is that some of the functions could be moved to tinyrcu.h?
Indeed, some of them would be smaller if inlined than even the call
sequence.  For example, rcu_needs_cpu() should remove code from the
dynticks implementation given that it always returns zero.

							Thanx, Paul
--
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