[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4FFDA49F.4070500@tilera.com>
Date: Wed, 11 Jul 2012 12:06:55 -0400
From: Chris Metcalf <cmetcalf@...era.com>
To: Will Deacon <will.deacon@....com>
CC: <linux-kernel@...r.kernel.org>, <linux-arch@...r.kernel.org>,
<davem@...emloft.net>, <chris@...kel.net>,
<catalin.marinas@....com>, <arnd@...db.de>,
<akpm@...ux-foundation.org>
Subject: Re: [PATCH 3/3] ipc: compat: use signed size_t types for msgsnd and
msgrcv
On 7/11/2012 11:32 AM, Will Deacon wrote:
> The msgsnd and msgrcv system calls use size_t to represent the size of
> the message being transferred. POSIX states that values of msgsz greater
> than SSIZE_MAX cause the result to be implementation-defined. On Linux,
> this equates to returning -EINVAL if (long) msgsz < 0.
>
> For compat tasks where !CONFIG_ARCH_WANT_OLD_COMPAT_IPC and
> compat_size_t is smaller than size_t, negative size values passed from
> userspace will be interpreted as positive values by do_msg{rcv,snd} and
> will fail to exit early with -EINVAL.
>
> This patch changes the compat prototypes for msg{rcv,snd} so that the
> message size is represented as a compat_ssize_t, which we cast to the
> native ssize_t type for the core IPC code.
>
> Cc: Arnd Bergmann <arnd@...db.de>
> Acked-by: Catalin Marinas <catalin.marinas@....com>
> Signed-off-by: Will Deacon <will.deacon@....com>
> ---
> include/linux/compat.h | 4 ++--
> ipc/compat.c | 8 ++++----
> 2 files changed, 6 insertions(+), 6 deletions(-)
Acked-by: Chris Metcalf <cmetcalf@...era.com>
--
Chris Metcalf, Tilera Corp.
http://www.tilera.com
--
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