Re: [Patch] Re: Nasty suprise with uptime

From: Richard B. Johnson (root@chaos.analogic.com)
Date: Wed Oct 31 2001 - 16:11:53 EST


On Wed, 31 Oct 2001, Tim Schmielau wrote:

> On Wed, 31 Oct 2001, vda wrote:
>
[SNIPPED...]
>
> btw.: can someone please explain to me why do_timer uses
> (*(unsigned long *)&jiffies)++;
> instead of just doing jiffies++ ?
>
> Tim

It's an attempt to prevent the 'C' compiler from doing this:

        movl (jiffies), %eax # Read
        incl %eax # Modify
        movl %eax, (jiffies) # Write

Instead, we want it to do this:

        movl jiffies, %ebx # init a pointer
        incl (%ebx) # Modify directly

With some gcc versions, it works. Others, it doesn't hurt.

Cheers,
Dick Johnson

Penguin : Linux version 2.4.1 on an i686 machine (799.53 BogoMips).

    I was going to compile a list of innovations that could be
    attributed to Microsoft. Once I realized that Ctrl-Alt-Del
    was handled in the BIOS, I found that there aren't any.

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



This archive was generated by hypermail 2b29 : Wed Oct 31 2001 - 21:00:46 EST