[SSI] openssi/kernel/net/unix af_unix.c,1.21,1.22

Roger Tsang <[email protected]>
Newsgroups gmane.linux.cluster.ssic.cvs
Message-ID <[email protected]>
Update of /cvsroot/ssic-linux/openssi/kernel/net/unix
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv8553/net/unix

Modified Files:
      Tag: OPENSSI-FC
	af_unix.c 
Log Message:
Bug fixes and enhancements. (see ChangeLog)


Index: af_unix.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/net/unix/af_unix.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- af_unix.c	10 Oct 2008 08:10:34 -0000	1.21
+++ af_unix.c	3 Feb 2009 06:18:14 -0000	1.22
@@ -1416,6 +1416,9 @@
 #ifdef CONFIG_SSI
 		if (ssi_unix_ismagic(sk)) {
 			err = ssi_unix_getpeername(sk, uaddr, uaddr_len);
+#ifdef IPC_STALE_RMTUNIX_CACHE_FIX
+			ssi_unix_sock_put(sk, 1);
+#endif
 			goto out;
 		}
 #endif
@@ -1536,10 +1539,16 @@
 		/* the other socket is remote */
 		err = ssi_unix_dgram_sendmsg(siocb, other, sock, msg, len);
 
+#ifdef IPC_STALE_RMTUNIX_CACHE_FIX
+		ssi_unix_sock_put(other, 1);
+		other = NULL;
+#else
+		/* wtf? */
 		if (!ssi_unix_ismagic(other)) {
 			kfree(other);
 			other = NULL;
 		}
+#endif
 
 #ifdef RMTUNIX_DGRAM_SENDMSG_TOSELF_FIX
 		if (err == -EAGAIN) {
@@ -1814,7 +1823,11 @@
 	err = -EPIPE;
 out_err:
         if (other)
+#ifdef IPC_STALE_RMTUNIX_CACHE_FIX
+		ssi_unix_sock_put(other, 1);
+#else
 		ssi_unix_sock_put(other, 0);
+#endif
 	scm_destroy(siocb->scm);
 	siocb->scm = NULL;
 	return sent ? : err;


------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.