[Linux-ia64] Re: patch for IA64: fix do_sys32_msgrcv bad address error.

From: David Mosberger <davidm_at_napali.hpl.hp.com>
Date: 2002-09-06 02:51:48
>>>>> On Thu, 5 Sep 2002 19:46:40 +0530, "R Sreelatha" <rsreelat@in.ibm.com> said:

  R> In sys_ia32.c file, in the do_sys32_msgrcv() function call, the
  R> value of ipck.msgp is interpreted as a 64 bit address, whereas it
  R> is a 32 bit address.  Hence, do_sys32_msgrcv() finally returns
  R> EFAULT(bad address) error.  The patch below takes care of this by
  R> type casting ipck.msgp to type u32.  The patch is created for
  R> 2.5.32 version of the kernel.

Yes, this was obviously broken.  I committed the attached patch to my 2.5
tree.

	--david

# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#	           ChangeSet	1.532   -> 1.533  
#	arch/ia64/ia32/sys_ia32.c	1.18    -> 1.19   
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/09/05	davidm@tiger.hpl.hp.com	1.533
# ia64: Fix x86 struct ipc_kludge (reported by R Sreelatha, fix proposed by
# 	Dave Miller).
# --------------------------------------------
#
diff -Nru a/arch/ia64/ia32/sys_ia32.c b/arch/ia64/ia32/sys_ia32.c
--- a/arch/ia64/ia32/sys_ia32.c	Thu Sep  5 09:51:05 2002
+++ b/arch/ia64/ia32/sys_ia32.c	Thu Sep  5 09:51:05 2002
@@ -2111,8 +2111,8 @@
 };
 
 struct ipc_kludge {
-	struct msgbuf *msgp;
-	long msgtyp;
+	u32 msgp;
+	s32 msgtyp;
 };
 
 #define SEMOP		 1
Received on Thu Sep 05 09:53:29 2002

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:10 EST