increase message size

Change-Id: Ia7fcc51d0050dcbfcccadd51e389d3760c8e1db6
This commit is contained in:
Ben Gras 2013-10-23 12:01:34 +02:00
parent e1b2407488
commit 01f5621580
5 changed files with 44 additions and 8 deletions

View File

@ -12,8 +12,8 @@
#define M1 1 #define M1 1
#define M3 3 #define M3 3
#define M4 4 #define M4 4
#define M3_STRING 16 /* legacy m3_ca1 size (must not be changed) */ #define M3_STRING 44 /* legacy m3_ca1 size (must not be changed) */
#define M3_LONG_STRING 16 /* current m3_ca1 size (may be increased) */ #define M3_LONG_STRING 44 /* current m3_ca1 size (may be increased) */
typedef struct {int m1i1, m1i2, m1i3; char *m1p1, *m1p2, *m1p3, *m1p4;} mess_1; typedef struct {int m1i1, m1i2, m1i3; char *m1p1, *m1p2, *m1p3, *m1p4;} mess_1;
typedef struct {int m2i1, m2i2, m2i3; long m2l1, m2l2; char *m2p1; typedef struct {int m2i1, m2i2, m2i3; long m2l1, m2l2; char *m2p1;
@ -57,8 +57,6 @@ typedef struct {
typedef struct { u8_t flags; void *addr; } mess_vmmcp_reply; typedef struct { u8_t flags; void *addr; } mess_vmmcp_reply;
typedef struct { typedef struct {
endpoint_t m_source; /* who sent the message */
int m_type; /* what kind of message is it */
union { union {
mess_1 m_m1; mess_1 m_m1;
mess_2 m_m2; mess_2 m_m2;
@ -74,7 +72,10 @@ typedef struct {
mess_vmmcp m_vmmcp; mess_vmmcp m_vmmcp;
mess_vmmcp_reply m_vmmcp_reply; mess_vmmcp_reply m_vmmcp_reply;
mess_vm_vfs_mmap m_vm_vfs; mess_vm_vfs_mmap m_vm_vfs;
u32_t size[14]; /* message payload may have 14 longs at most */
} m_u; } m_u;
int m_type; /* what kind of message is it */
endpoint_t m_source; /* who sent the message */
} message __aligned(16); } message __aligned(16);
/* The following defines provide names for useful members. */ /* The following defines provide names for useful members. */

View File

@ -239,8 +239,8 @@ ENTRY(copy_msg_from_user)
/* load the destination pointer */ /* load the destination pointer */
mov 8(%esp), %edx mov 8(%esp), %edx
/* mov 0*4(%ecx), %eax mov 0*4(%ecx), %eax
mov %eax, 0*4(%edx) */ mov %eax, 0*4(%edx)
mov 1*4(%ecx), %eax mov 1*4(%ecx), %eax
mov %eax, 1*4(%edx) mov %eax, 1*4(%edx)
mov 2*4(%ecx), %eax mov 2*4(%ecx), %eax
@ -258,6 +258,21 @@ ENTRY(copy_msg_from_user)
mov 8*4(%ecx), %eax mov 8*4(%ecx), %eax
mov %eax, 8*4(%edx) mov %eax, 8*4(%edx)
mov 9*4(%ecx), %eax
mov %eax, 9*4(%edx)
mov 10*4(%ecx), %eax
mov %eax, 10*4(%edx)
mov 11*4(%ecx), %eax
mov %eax, 11*4(%edx)
mov 12*4(%ecx), %eax
mov %eax, 12*4(%edx)
mov 13*4(%ecx), %eax
mov %eax, 13*4(%edx)
mov 14*4(%ecx), %eax
mov %eax, 14*4(%edx)
mov 15*4(%ecx), %eax
mov %eax, 15*4(%edx)
LABEL(__copy_msg_from_user_end) LABEL(__copy_msg_from_user_end)
movl $0, %eax movl $0, %eax
ret ret
@ -297,6 +312,22 @@ ENTRY(copy_msg_to_user)
mov 8*4(%ecx), %eax mov 8*4(%ecx), %eax
mov %eax, 8*4(%edx) mov %eax, 8*4(%edx)
mov 9*4(%ecx), %eax
mov %eax, 9*4(%edx)
mov 10*4(%ecx), %eax
mov %eax, 10*4(%edx)
mov 11*4(%ecx), %eax
mov %eax, 11*4(%edx)
mov 12*4(%ecx), %eax
mov %eax, 12*4(%edx)
mov 13*4(%ecx), %eax
mov %eax, 13*4(%edx)
mov 14*4(%ecx), %eax
mov %eax, 14*4(%edx)
mov 15*4(%ecx), %eax
mov %eax, 15*4(%edx)
LABEL(__copy_msg_to_user_end) LABEL(__copy_msg_to_user_end)
movl $0, %eax movl $0, %eax
ret ret

View File

@ -135,6 +135,10 @@ SRCS+= ${i}
SRCS += __aeabi_ldivmod.S __aeabi_uldivmod.S SRCS += __aeabi_ldivmod.S __aeabi_uldivmod.S
.endif .endif
.if (${MACHINE_ARCH} == "i386")
SRCS += setjmp.S
.endif
# Import from locale # Import from locale
.for i in _def_time.c .for i in _def_time.c
.PATH.c: ${LIBCDIR}/locale .PATH.c: ${LIBCDIR}/locale

View File

@ -29,7 +29,7 @@
#include "region.h" #include "region.h"
#include "sanitycheck.h" #include "sanitycheck.h"
#define STATELEN 50 #define STATELEN 70
static struct vfs_request_node { static struct vfs_request_node {
message reqmsg; message reqmsg;

View File

@ -1 +1 @@
/home/minix/minix/330/src/include/arch/i386/include/stackframe.h /minix/src/include/arch/i386/include/stackframe.h