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>] [day] [month] [year] [list]
Date:	Fri, 22 Sep 2006 10:03:53 +0200
From:	Denis Vlasenko <vda.linux@...glemail.com>
To:	linux-kernel@...r.kernel.org, Andrew Morton <akpm@...l.org>,
	Russell King <rmk@....linux.org.uk>
Subject: [PATCH 0/3] make mdelay, udelay and ssleep calls smaller

Hello Andrew,

This version is basically unchanged except for rediff
against 2.6.18. I was running previous version for
several weeks on 2.6.17.x kernels.

Russell King was giving me some feedback. I think that
my reply satisfied him - I got no further comments:

On Wednesday 23 August 2006 10:39, Denis Vlasenko wrote:
>On Wednesday 23 August 2006 10:14, Russell King wrote:
>> Please keep a "const" version in ARM.  Thanks.
>
> Why do you want to keep it?
> I mean, without it udelay(n) will become slower by the time
> needed for one extra multiply. So we will have maybe
> udelay(n) ==> udelay(n+0.1).
>
>> Since the multiply is pure overhead, it's better
>> to get rid of it. 
>
>You do not need to optimize delay for speed. If you
>really want to, then you can do:
>
>#define udelay(n) do {} while(0)
>
>Makes sense? No it does not. That's what I'm trying to say.
>You WANT to pause for thousands of cycles. Why you are trying
>to shave off ~10 cycles at the very same time?
>
>Hope it makes things clearer.



On with patch explanation:

Currently, magic in include/linux/delay.h
inlines mdelay and ssleep, and various arches
do the same to udelay.

This is pointless. We are going to perform a delay of 1000+
CPU cycles anyway, no need to optimize away a few cycles.

This patchset converts magic calls to these inlines/macros
into pure and simple function calls, with no additional
math done or hidden arguments pushed to stack
at the callsite.

Reduces allyesconfig kernel by about 7 kb.

Signed-off-by: Denis Vlasenko <vda.linux@...glemail.com>
--
vda
-
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