Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Jun 2009 14:13:09 GMT
From:      Marko Zec <zec@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 165251 for review
Message-ID:  <200906261413.n5QED9j7023013@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=165251

Change 165251 by zec@zec_amdx4 on 2009/06/26 14:13:00

	Allow for rpc.statd and rpc.lockd to be started, but
	without doing any functional testing.  Introduce a lot
	curvnet recursions triggered by the above daemons that
	have to be looked into and resolved.

Affected files ...

.. //depot/projects/vimage-commit2/src/sys/rpc/clnt_dg.c#6 edit
.. //depot/projects/vimage-commit2/src/sys/rpc/svc_dg.c#4 edit

Differences ...

==== //depot/projects/vimage-commit2/src/sys/rpc/clnt_dg.c#6 (text+ko) ====

@@ -56,6 +56,7 @@
 #include <sys/socketvar.h>
 #include <sys/time.h>
 #include <sys/uio.h>
+#include <sys/vimage.h>
 
 #include <rpc/rpc.h>
 #include <rpc/rpc_com.h>
@@ -197,11 +198,14 @@
 		return (NULL);
 	}
 
+	CURVNET_SET(so->so_vnet);
 	if (!__rpc_socket2sockinfo(so, &si)) {
 		rpc_createerr.cf_stat = RPC_TLIERROR;
 		rpc_createerr.cf_error.re_errno = 0;
+		CURVNET_RESTORE();
 		return (NULL);
 	}
+	CURVNET_RESTORE();
 
 	/*
 	 * Find the receive and the send size

==== //depot/projects/vimage-commit2/src/sys/rpc/svc_dg.c#4 (text+ko) ====

@@ -56,6 +56,7 @@
 #include <sys/sx.h>
 #include <sys/systm.h>
 #include <sys/uio.h>
+#include <sys/vimage.h>
 
 #include <rpc/rpc.h>
 
@@ -101,8 +102,10 @@
 	struct sockaddr* sa;
 	int error;
 
+	CURVNET_SET(so->so_vnet);
 	if (!__rpc_socket2sockinfo(so, &si)) {
 		printf(svc_dg_str, svc_dg_err1);
+		CURVNET_RESTORE();
 		return (NULL);
 	}
 	/*
@@ -112,6 +115,7 @@
 	recvsize = __rpc_get_t_size(si.si_af, si.si_proto, (int)recvsize);
 	if ((sendsize == 0) || (recvsize == 0)) {
 		printf(svc_dg_str, svc_dg_err2);
+		CURVNET_RESTORE();
 		return (NULL);
 	}
 
@@ -142,6 +146,7 @@
 	if (xprt) {
 		svc_xprt_free(xprt);
 	}
+	CURVNET_RESTORE();
 	return (NULL);
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906261413.n5QED9j7023013>