This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] RE: msgctl() on MIPS, n32 ABI.


On Wed, Jan 10, 2007 at 11:26:48PM +0900, Atsushi Nemoto wrote:
> On Wed, 10 Jan 2007 09:09:00 -0500, Daniel Jacobowitz <drow@false.org> wrote:
> > > The __IPC_64 problem on {shm,sem,msg}ctl is not only for N32.  N64
> > > also suffers this problem.  Certainly glibc can provide wrappers for
> > > these system calls, as ARM EABI does.  A patch attached.
> > 
> > Why should o32 and n32 be treated differently?  It's n64 which is the
> > odd man out, not o32.
> > 
> > Is it because n32 has a msgctl syscall instead of sys_ipc?
> 
> Yes.  Someone must set IPC_64 for N32, otherwise compat routines will
> not work properly.  An alternative solution would be changing
> kernel-side: add __mips64 to this #if line in ipc/util.h and move
> #define __ARCH_WANT_IPC_PARSE_VERSION in asm-mips/unistd.h into #ifdef
> CONFIG_32BIT block.

I see.  It would be logical to assume IPC_64 for n64, but that would
be an ABI change, so let's not adjust it more than we have to.

Your glibc patch looks reasonable to me.  I'll double-check it later
and commit it (may be a few days, sorry).

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]