[SSI] openssi/kernel/include/linux msg.h,1.4,1.5
Roger Tsang <[email protected]> Sat, 03 Apr 2010 19:34:45 +0000
| Newsgroups | gmane.linux.cluster.ssic.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/ssic-linux/openssi/kernel/include/linux
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv29204/kernel/include/linux
Modified Files:
Tag: OPENSSI-FC
msg.h
Log Message:
IPC Messages:
- Fix msg_get_svr_node() race with msg_set_svr_node() as not all code paths hold msg_ids.sem mutex. Use msg_nodehint_lock read/write spinlock.
- Consolidate redundant code into new function msg_find_svr_node().
- Remove redundant in ssi_msgsnd(). Most of the code is from sys_msgsnd().
- Fix sys_msgsnd()
- Unhandled ssi_msgpack() error -ENOMEM.
- Dereferencing freed "packedsegs" object.
- Handle cli_ripc_msgsnd() error -EAGAIN.
- Remove redundant in ssi_msgrcv(). Most of the code is from sys_msgrcv().
- Fix sys_msgctl(MSG_INFO)
- Might populate user buffer with bogus info on RPC error -EREMOTE.
- Did not account for remote nodes when calculating max_id.
- Deadlock with destination node when both nodes are doing RPC.
- Move remote code paths to new functions ssi_remote_msgctl(), ssi_msgctl_info(), ssi_remote_msgrcv(), ssi_remote_msgsnd().
- sys_msgctl() handle cli_ripc_msgctl() error -EAGAIN.
- sys_msgrcv() handle cli_ripc_msgrcv() error -EAGAIN.
cluster/ssi/ipc/ipcmsg_svr.c | 8
include/linux/msg.h | 3
ipc/msg.c | 762 +++++++++++++++--------------------
ipc/msgutil.c | 13
4 files changed, 356 insertions(+), 430 deletions(-)
Index: msg.h
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/linux/msg.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- msg.h 20 Oct 2004 03:23:37 -0000 1.4
+++ msg.h 3 Apr 2010 19:34:43 -0000 1.5
@@ -64,6 +64,8 @@
#ifdef __KERNEL__
+#ifdef CONFIG_SSI
+/* Dupe from ipc/msgutil.c */
struct msg_msgseg {
struct msg_msgseg* next;
/* the next part of the message follows immediately */
@@ -71,6 +73,7 @@
#define DATALEN_MSG (PAGE_SIZE-sizeof(struct msg_msg))
#define DATALEN_SEG (PAGE_SIZE-sizeof(struct msg_msgseg))
+#endif /* CONFIG_SSI */
/* one msg_msg structure for each message */
struct msg_msg {
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev