[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081211202800.GQ28946@ZenIV.linux.org.uk>
Date: Thu, 11 Dec 2008 20:28:00 +0000
From: Al Viro <viro@...IV.linux.org.uk>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Yuri Tikhonov <yur@...raft.com>, linux-kernel@...r.kernel.org,
linuxppc-dev@...abs.org, Geert.Uytterhoeven@...ycom.com,
dhowells@...hat.com, miltonm@....com, wd@...x.de, dzu@...x.de,
yanok@...raft.com
Subject: Re: [PATCH][v2] fork_init: fix division by zero
On Thu, Dec 11, 2008 at 12:16:35PM -0800, Andrew Morton wrote:
> > +#if (8 * THREAD_SIZE) > PAGE_SIZE
> > max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);
> > +#else
> > + max_threads = mempages * (PAGE_SIZE / (8 * THREAD_SIZE));
> > +#endif
>
> The expression you've chosen here can be quite inacccurate, because
> ((PAGE_SIZE / (8 * THREAD_SIZE)) is a small number. The way to
> preserve accuracy is
>
> max_threads = (mempages * PAGE_SIZE) / (8 * THREAD_SIZE);
>
> so how about avoiding the nasty ifdefs and doing
Are you sure? Do they actually cross the page boundaries?
--
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