linux-mips
[Top] [All Lists]

N32 shmat problem identified! Kernel fix needed.

To: <linux-mips@linux-mips.org>
Subject: N32 shmat problem identified! Kernel fix needed.
From: "Kaz Kylheku" <kaz@zeugmasystems.com>
Date: Fri, 1 Dec 2006 16:33:16 -0800
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
Thread-index: AccVn4woxnreGnt4Qeu5SryUvIlOVgAAtm7gAAGkLSA=
Thread-topic: N32 shmat problem identified! Kernel fix needed.
The problem is simple.

The function named sys32_shmat has no reason to exist, and is broken. It
assumes that user space has passed a pointer to the location where the
resulting pointer should be stored. But that is not the shmat API, and
glibc will pass no such parameter. So a null dereference results,
leading to EFAULT.

The fix is to remove this function from the code base and quite simply
to wire the normal sys_shmat into the n32 syscall table. Since there is
in fact no pointer-to-pointer argument, this function doesn't have a 32
bit compatibility issues.


<Prev in Thread] Current Thread [Next in Thread>