Re: [PATCH] deinline sleep/delay functions

Andrew Morton
2005-06-30T09:12:03Z

Russell King <rmk+lkml@arm.linux.org.uk> wrote:
>
> On Thu, Jun 30, 2005 at 08:52:25AM +0300, Denis Vlasenko wrote:
> > Hi Andrew,
> >
> > Optimizing delay functions for speed is utterly pointless.
> >
> > This patch turns ssleep(n), mdelay(n), udelay(n) and ndelay(n)
> > into functions, thus they generate the smallest possible code
> > at the callsite. Previously they were more or less inlined.
> >
> > Run tested. Saved a few kb off vmlinux.
> >
> > Signed-off-by: Denis Vlasenko <vda@ilport.com.ua>
>
> Rejected-by: Russell King 8)
>
> The reason is that now we're unable to find out if anyone's doing
> udelay(100000000000000000) which breaks on most architectures.
>
> There are a number of compile-time checks that your patch has removed
> which catch such things, and as such your patch is not acceptable.
> Some architectures have a lower threshold of acceptability for the
> maximum udelay value, so it's absolutely necessary to keep this.

It removes that check from x86 - other architectures retain it.

I don't recall seeing anyone trigger the check, and it hardly seems worth
adding a "few kb" to vmlinux for it?