]> Zhao Yanbai Git Server - minix.git/commitdiff
machine/ipcconst.h for arch-specific constants
authorArun Thomas <arun@minix3.org>
Sun, 26 Aug 2012 16:44:27 +0000 (12:44 -0400)
committerArun Thomas <arun@minix3.org>
Mon, 27 Aug 2012 23:46:41 +0000 (19:46 -0400)
include/arch/i386/include/Makefile
include/arch/i386/include/ipcconst.h [new file with mode: 0644]
include/minix/ipcconst.h
kernel/ipc.h
lib/libc/arch/i386/sys-minix/_ipc.S
lib/libc/arch/i386/sys-minix/_senda.S

index c8cbe69fd0949a59505c4020c8e73bb26c9e84d4..bdc3a736566e7826d695a5adfb5d909d9a19309a 100644 (file)
@@ -14,7 +14,7 @@ INCS=         ansi.h asm.h bswap.h byte_swap.h cdefs.h \
        interrupt.h memory.h multiboot.h partition.h \
        pci.h pci_amd.h pci_intel.h pci_sis.h pci_via.h \
        ports.h stackframe.h vm.h elf.h elf_machdep.h mutex.h \
-       disklabel.h
+       disklabel.h ipcconst.h
 
 
 .include <bsd.kinc.mk>
diff --git a/include/arch/i386/include/ipcconst.h b/include/arch/i386/include/ipcconst.h
new file mode 100644 (file)
index 0000000..56cc304
--- /dev/null
@@ -0,0 +1,9 @@
+#ifndef _I386_IPCCONST_H_
+#define _I386_IPCCONST_H_
+
+#define KERVEC 32      /* syscall trap to kernel */
+#define IPCVEC 33      /* ipc trap to kernel  */
+
+#define IPC_STATUS_REG         bx
+
+#endif  /* _I386_IPCCONST_H_ */
index 8dfddd93aa23185a2003c60f57c0f109051eecc5..d8202bcdc91398f4a0485e1ede857f17924c17df 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef _IPC_CONST_H
 #define _IPC_CONST_H
 
+#include <machine/ipcconst.h>
+
  /* System call numbers that are passed when trapping to the kernel. */
 #define SEND              1    /* blocking send */
 #define RECEIVE                   2    /* blocking receive */
index 3007a70320b871d47408c470170ad255c89bc1c1..a62919eb94542f58c660803cf44dce0b4e8e7160 100644 (file)
@@ -5,6 +5,7 @@
  * These definitions are used in the file proc.c.
  */
 #include <minix/com.h>
+#include <minix/ipcconst.h>
 
 /* Masks and flags for system calls. */
 #define NON_BLOCKING    0x0080  /* do not block if target not ready */
@@ -15,7 +16,6 @@
     (target->p_getfrom_e == ANY || target->p_getfrom_e == source_ep))
 
 /* IPC status code macros. */
-#define IPC_STATUS_REG         bx
 #define IPC_STATUS_GET(p)      ((p)->p_reg.IPC_STATUS_REG)
 #define IPC_STATUS_CLEAR(p)    ((p)->p_reg.IPC_STATUS_REG = 0)
 
index 9bfa326f3266f46f6fbc4031bb3e2bddce8a679d..4e828d749d7c096fedc5be6df3b8c101da11e695 100644 (file)
@@ -1,9 +1,6 @@
 #include <minix/ipcconst.h>
 #include <machine/asm.h>
 
-       IPCVEC = 33     /* ipc trap to kernel  */
-       KERVEC = 32     /* syscall trap to kernel */
-
        SRC_DST = 8     /* source/ destination process  */
        MESSAGE = 12    /* message pointer  */
        STATUS = 16     /* status pointer  */
index a38c2c9fc0274ddffe53e87ccc96c330b71ed31e..9a2cb6d815e5fcfc42c80402017a1c48a838f447 100644 (file)
@@ -1,8 +1,6 @@
 #include <minix/ipcconst.h>
 #include <machine/asm.h>
 
-       SYSVEC = 33
-
        MSGTAB = 8      /* message table */
        TABCOUNT = 12   /* number of entries in message table */
 
@@ -13,7 +11,7 @@ ENTRY(_senda)
        movl    TABCOUNT(%ebp), %eax    /* eax = count */
        movl    MSGTAB(%ebp), %ebx      /* ebx = table */
        movl    $SENDA, %ecx    /* _senda(table, count) */
-       int     $SYSVEC /* trap to the kernel */
+       int     $IPCVEC /* trap to the kernel */
        pop     %ebx
        pop     %ebp
        ret