[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070820034043.GZ21089@ftp.linux.org.uk>
Date: Mon, 20 Aug 2007 04:40:43 +0100
From: Al Viro <viro@....linux.org.uk>
To: David Brownell <david-b@...bell.net>
Cc: Satyam Sharma <satyam@...radead.org>,
Anton Altaparmakov <aia21@....ac.uk>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ptrdiff_t is not uintptr_t, damnit
On Sun, Aug 19, 2007 at 08:26:24PM -0700, David Brownell wrote:
> ISTR the warning was the other way around: about "cast from integer
> to pointer of a different size". The __u64 came from userspace and
> the kernel pointer was only 32 bits. Not really truncation, but GCC
> could not know that directly ... ergo the extra non-pointer cast.
And? Cast to integer type with the size equal to that of pointer.
unsigned long is just that on all supported targets.
More interesting question is whether you want an error returned when
pointers are 32bit and value doesn't fit into that...
-
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