[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <AE90C24D6B3A694183C094C60CF0A2F6026B7050@saturn3.aculab.com>
Date: Thu, 18 Oct 2012 09:34:57 +0100
From: "David Laight" <David.Laight@...LAB.COM>
To: "Boaz Harrosh" <bharrosh@...asas.com>, "Jim Rees" <rees@...ch.edu>
Cc: "Dave Jones" <davej@...hat.com>,
"J. Bruce Fields" <bfields@...ldses.org>,
"Sasha Levin" <levinsasha928@...il.com>,
<Trond.Myklebust@...app.com>, <davem@...emloft.net>,
<linux-nfs@...r.kernel.org>, <netdev@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] SUNRPC: Prevent kernel stack corruption on long values of flush
> ...
> long is always the same or bigger then a pointer
> (A pointer must always fit in a long)
> ...
Linux may make that assumption, but it doesn't have
to be true. 64bit windows still has 32bit long.
C99 inttypes.h defines [u]intptr_t to be an integral type
that is large enough to hold a pointer to any data item.
(That in itself is problematic for implementations that
encode multiple characters into a machine word and need
to use 'fat' pointers in order to encode the offset.)
David
Powered by blists - more mailing lists