Skip to contentSkip to conversation

LTP testing

PATCH Carsten Langgaard 2 participants 2 messages Jun 25, 2002 MIPS

lore
Share & tools
lore
#0 lore raw

The LTP test fails with:

msgctl01    1  FAIL  :  qs_buf.msg_qbytes did not change
msgctl02    1  FAIL  :  qs_buf.msg_qbytes value is not expected
msgsnd01    1  FAIL  :  queue bytes != MSGSIZE
msgsnd01    2  FAIL  :  queue message != 1

All the above failures is fixed by the attached patch. The msgbuf.h file is now a copy from i386, instead of alpha. I guess the fix goes for 64-bit kernel as well.

/Carsten

--

_    _ ____  ___   Carsten Langgaard   Mailto:[email protected]
|\  /|||___)(___   MIPS Denmark        Direct: +45 4486 5527
| \/ |||    ____)  Lautrupvang 4B      Switch: +45 4486 5555
  TECHNOLOGIES     2750 Ballerup       Fax...: +45 4486 5556
                   Denmark             http://www.mips.com

Index: include/asm-mips/msgbuf.h
===================================================================
RCS file: /home/repository/sw/linux-2.4.18/include/asm-mips/msgbuf.h,v retrieving revision 1.1.1.1

asm-mips/msgbuf.h +8 -4
diff -u -r1.1.1.1 msgbuf.h
@@ -2,26 +2,30 @@
 #define _ASM_MSGBUF_H
 
 /* 
- * The msqid64_ds structure for alpha architecture.
+ * The msqid64_ds structure for i386 architecture.
  * Note extra padding because this structure is passed back and forth
  * between kernel and user space.
  *
  * Pad space is left for:
- * - 2 miscellaneous 64-bit values
+ * - 64-bit time_t to solve y2038 problem
+ * - 2 miscellaneous 32-bit values
  */
 
 struct msqid64_ds {
 	struct ipc64_perm msg_perm;
 	__kernel_time_t msg_stime;	/* last msgsnd time */
+	unsigned long	__unused1;
 	__kernel_time_t msg_rtime;	/* last msgrcv time */
+	unsigned long	__unused2;
 	__kernel_time_t msg_ctime;	/* last change time */
+	unsigned long	__unused3;
 	unsigned long  msg_cbytes;	/* current number of bytes on queue */
 	unsigned long  msg_qnum;	/* number of messages in queue */
 	unsigned long  msg_qbytes;	/* max number of bytes on queue */
 	__kernel_pid_t msg_lspid;	/* pid of last msgsnd */
 	__kernel_pid_t msg_lrpid;	/* last receive pid */
-	unsigned long  __unused1;
-	unsigned long  __unused2;
+	unsigned long  __unused4;
+	unsigned long  __unused5;
 };
 
 #endif /* _ASM_MSGBUF_H */
#1 lore raw
Quoted 2 lines · Carsten Langgaard

The msgbuf.h file is now a copy from i386, instead of alpha. I guess the fix goes for 64-bit kernel as well.

I guess not, as long is 64-bit there, thus the Alpha version is more
appropriate.

Signature · 3 lines
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: [email protected], PGP key available        +