[parisc-linux] what's up with the ipc syscalls?

Thomas Bogendoerfer tsbogend@alpha.franken.de
Sun, 2 Nov 2003 19:01:50 +0100


On Sat, Nov 01, 2003 at 12:24:51AM -0800, Randolph Chung wrote:
> in our syscall table, semctl, msgctl and shmctl are marked as "broken".
> Does anybody know what's up with that?
> 
> i did a simple hack, which is to replace
> 
>         return sys_msgctl (msqid, cmd & ~IPC_64, buf);
> 
> with 
> 
>         return sys_msgctl (msqid, cmd | IPC_64, buf);
> 
> in sys_parisc.c, and at least in some simple tests it seems to work
> (whereas the original one was really broken)

if this makes a difference, something in ipc/util.c is missing. When I
added the code above, I also made the ipc_parse_version only return
IPC_64, because we never had IPC_OLD. Older glibc made the call with
IPC_64 set, so we needed the wrapper in sys_parisc.c. I just looked
at the 2.4 version of ipc/util.c and it's still ok ...

Thomas.

-- 
Crap can work. Given enough thrust pigs will fly, but it's not necessary a
good idea.                                 [ Alexander Viro on linux-kernel ]