diff options
| author | Linus Torvalds <torvalds@home.transmeta.com> | 2002-07-18 20:53:24 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.transmeta.com> | 2002-07-18 20:53:24 -0700 |
| commit | b15d45bfd7a7fa994adec7a32673a448b5155cb0 (patch) | |
| tree | 49cfe555172ae41f4acdddc58ae0fd7d53330336 /include | |
| parent | faaab2cfed81a30e38ad15051865d5cd7cbf8274 (diff) | |
| parent | 853ac9783a4eb61affd2ab4ca47a5b0d69c0c110 (diff) | |
Merge bk://lsm.bkbits.net/linus-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/msg.h | 29 | ||||
| -rw-r--r-- | include/linux/shm.h | 13 |
2 files changed, 42 insertions, 0 deletions
diff --git a/include/linux/msg.h b/include/linux/msg.h index 4dfca8d4952c..4b64aebf312e 100644 --- a/include/linux/msg.h +++ b/include/linux/msg.h @@ -63,6 +63,35 @@ struct msginfo { #ifdef __KERNEL__ +/* one msg_msg structure for each message */ +struct msg_msg { + struct list_head m_list; + long m_type; + int m_ts; /* message text size */ + struct msg_msgseg* next; + /* the actual message follows immediately */ +}; + +#define DATALEN_MSG (PAGE_SIZE-sizeof(struct msg_msg)) +#define DATALEN_SEG (PAGE_SIZE-sizeof(struct msg_msgseg)) + +/* one msq_queue structure for each present queue on the system */ +struct msg_queue { + struct kern_ipc_perm q_perm; + time_t q_stime; /* last msgsnd time */ + time_t q_rtime; /* last msgrcv time */ + time_t q_ctime; /* last change time */ + unsigned long q_cbytes; /* current number of bytes on queue */ + unsigned long q_qnum; /* number of messages in queue */ + unsigned long q_qbytes; /* max number of bytes on queue */ + pid_t q_lspid; /* pid of last msgsnd */ + pid_t q_lrpid; /* last receive pid */ + + struct list_head q_messages; + struct list_head q_receivers; + struct list_head q_senders; +}; + asmlinkage long sys_msgget (key_t key, int msgflg); asmlinkage long sys_msgsnd (int msqid, struct msgbuf *msgp, size_t msgsz, int msgflg); asmlinkage long sys_msgrcv (int msqid, struct msgbuf *msgp, size_t msgsz, long msgtyp, int msgflg); diff --git a/include/linux/shm.h b/include/linux/shm.h index be3351619c2e..be7d433725ca 100644 --- a/include/linux/shm.h +++ b/include/linux/shm.h @@ -71,6 +71,19 @@ struct shm_info { }; #ifdef __KERNEL__ +struct shmid_kernel /* private to the kernel */ +{ + struct kern_ipc_perm shm_perm; + struct file * shm_file; + int id; + unsigned long shm_nattch; + unsigned long shm_segsz; + time_t shm_atim; + time_t shm_dtim; + time_t shm_ctim; + pid_t shm_cprid; + pid_t shm_lprid; +}; /* shm_mode upper byte flags */ #define SHM_DEST 01000 /* segment will be destroyed on last detach */ |
