* Re: [Linux-ia64] IA-32 emulation patch: msgctl.patch
2003-05-23 1:21 [Linux-ia64] IA-32 emulation patch: msgctl.patch Arun Sharma
@ 2003-05-23 1:35 ` Arun Sharma
2003-05-29 16:15 ` Bjorn Helgaas
1 sibling, 0 replies; 3+ messages in thread
From: Arun Sharma @ 2003-05-23 1:35 UTC (permalink / raw)
To: linux-ia64
Arun Sharma <arun.sharma@intel.com> writes:
> IA-32 programs executing:
>
> msgctl(id, IPC_SET, &buf)
>
> currently fail with EPERM due to this bug.
>
My mailer ate the patch.
-Arun
diff -burN linux/arch/ia64/ia32/sys_ia32.c linux-changed/arch/ia64/ia32/sys_ia32.c
--- linux/arch/ia64/ia32/sys_ia32.c 2003-04-09 19:22:09.000000000 +0800
+++ linux-changed/arch/ia64/ia32/sys_ia32.c 2003-04-09 19:19:57.000000000 +0800
@@ -2314,21 +2314,21 @@
case IPC_SET:
if (version = IPC_64) {
- err = get_user(m.msg_perm.uid, &up64->msg_perm.uid);
- err |= get_user(m.msg_perm.gid, &up64->msg_perm.gid);
- err |= get_user(m.msg_perm.mode, &up64->msg_perm.mode);
- err |= get_user(m.msg_qbytes, &up64->msg_qbytes);
+ err = get_user(m64.msg_perm.uid, &up64->msg_perm.uid);
+ err |= get_user(m64.msg_perm.gid, &up64->msg_perm.gid);
+ err |= get_user(m64.msg_perm.mode, &up64->msg_perm.mode);
+ err |= get_user(m64.msg_qbytes, &up64->msg_qbytes);
} else {
- err = get_user(m.msg_perm.uid, &up32->msg_perm.uid);
- err |= get_user(m.msg_perm.gid, &up32->msg_perm.gid);
- err |= get_user(m.msg_perm.mode, &up32->msg_perm.mode);
- err |= get_user(m.msg_qbytes, &up32->msg_qbytes);
+ err = get_user(m64.msg_perm.uid, &up32->msg_perm.uid);
+ err |= get_user(m64.msg_perm.gid, &up32->msg_perm.gid);
+ err |= get_user(m64.msg_perm.mode, &up32->msg_perm.mode);
+ err |= get_user(m64.msg_qbytes, &up32->msg_qbytes);
}
if (err)
break;
old_fs = get_fs();
set_fs(KERNEL_DS);
- err = sys_msgctl(first, second, &m);
+ err = sys_msgctl(first, second, &m64);
set_fs(old_fs);
break;"
^ permalink raw reply [flat|nested] 3+ messages in thread