* N32 shmat problem identified! Kernel fix needed.
@ 2006-12-02 0:33 ` Kaz Kylheku
0 siblings, 0 replies; 4+ messages in thread
From: Kaz Kylheku @ 2006-12-02 0:33 UTC (permalink / raw)
To: linux-mips
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.
^ permalink raw reply [flat|nested] 4+ messages in thread
* N32 shmat problem identified! Kernel fix needed.
@ 2006-12-02 0:33 ` Kaz Kylheku
0 siblings, 0 replies; 4+ messages in thread
From: Kaz Kylheku @ 2006-12-02 0:33 UTC (permalink / raw)
To: linux-mips
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.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: N32 shmat problem identified! Kernel fix needed.
2006-12-02 0:33 ` Kaz Kylheku
(?)
@ 2006-12-02 2:24 ` Ralf Baechle
2006-12-03 13:42 ` Atsushi Nemoto
-1 siblings, 1 reply; 4+ messages in thread
From: Ralf Baechle @ 2006-12-02 2:24 UTC (permalink / raw)
To: Kaz Kylheku; +Cc: linux-mips
On Fri, Dec 01, 2006 at 04:33:16PM -0800, Kaz Kylheku wrote:
> 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.
That's fixed since two months.
Ralf
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: N32 shmat problem identified! Kernel fix needed.
2006-12-02 2:24 ` Ralf Baechle
@ 2006-12-03 13:42 ` Atsushi Nemoto
0 siblings, 0 replies; 4+ messages in thread
From: Atsushi Nemoto @ 2006-12-03 13:42 UTC (permalink / raw)
To: ralf; +Cc: kaz, linux-mips
On Sat, 2 Dec 2006 02:24:04 +0000, Ralf Baechle <ralf@linux-mips.org> wrote:
> > 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.
>
> That's fixed since two months.
Minor correction: about a month, not two :)
http://www.linux-mips.org/archives/linux-mips/2006-11/msg00030.html
This fix is already merged to master and linux-2.6.1x-stable branches
in linux-mips.org tree, though not merged to kernel.org's tree yet
unfortunately.
---
Atsushi Nemoto
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-12-03 13:42 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-02 0:33 N32 shmat problem identified! Kernel fix needed Kaz Kylheku
2006-12-02 0:33 ` Kaz Kylheku
2006-12-02 2:24 ` Ralf Baechle
2006-12-03 13:42 ` Atsushi Nemoto
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.