Re: 2.5.64 and jiffies wrap

Andrew Morton (akpm@digeo.com)
Fri, 7 Mar 2003 04:15:58 -0800


Jens Axboe <axboe@suse.de> wrote:
>
> Hi,
>
> The patch doesn't look right, why is INITIAL_JIFFIES being cast to
> unsigned int? This breaks x86_64 at least.
>
> ...
> -#define INITIAL_JIFFIES ((unsigned int) (-300*HZ))

This sets the initial jiffies value to 0x00000000fffb6c20, which can trigger
32-bit wraparound bugs: if some random jiffy counter wraps from
0x00000000ffffffff to 0x0000000000000000 then things fail.

davem was bitten by at least one such bug in the qlogicfc driver. It would
have caused 64-bit machines to fail after 49 days.

It turns out that it is more valuable to test for this than to test for
64-bit wraparound bugs.
-
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/