svn commit: r275599 - in head/sys/ofed/include: linux net

Craig Rodrigues rodrigc at FreeBSD.org
Mon Dec 8 07:26:01 UTC 2014


Author: rodrigc
Date: Mon Dec  8 07:25:59 2014
New Revision: 275599
URL: https://svnweb.freebsd.org/changeset/base/275599

Log:
  Use CURVNET macros inside inet_get_local_port_range() function.
  Without this fix, a kernel with VIMAGE + Infiniband will panic on bootup.
  
  Certain necessary #include statements require LIST_HEAD.
  Add these includes to ofed/include/linux/list.h, because
  LIST_HEAD is specifically overridden in this file.
  
  PR: 191468
  Differential Revision: D1279
  Reviewed by: hselasky

Modified:
  head/sys/ofed/include/linux/list.h
  head/sys/ofed/include/net/ip.h

Modified: head/sys/ofed/include/linux/list.h
==============================================================================
--- head/sys/ofed/include/linux/list.h	Mon Dec  8 07:14:25 2014	(r275598)
+++ head/sys/ofed/include/linux/list.h	Mon Dec  8 07:25:59 2014	(r275599)
@@ -40,6 +40,7 @@
 #include <sys/kernel.h>
 #include <sys/queue.h>
 #include <sys/cpuset.h>
+#include <sys/jail.h>
 #include <sys/lock.h>
 #include <sys/mutex.h>
 #include <sys/proc.h>
@@ -53,6 +54,7 @@
 #include <net/if_var.h>
 #include <net/if_types.h>
 #include <net/if_media.h>
+#include <net/vnet.h>
 
 #include <netinet/in.h>
 #include <netinet/in_pcb.h>

Modified: head/sys/ofed/include/net/ip.h
==============================================================================
--- head/sys/ofed/include/net/ip.h	Mon Dec  8 07:14:25 2014	(r275598)
+++ head/sys/ofed/include/net/ip.h	Mon Dec  8 07:25:59 2014	(r275599)
@@ -45,8 +45,10 @@
 #ifdef INET
 static inline void inet_get_local_port_range(int *low, int *high)
 {
+	CURVNET_SET_QUIET(TD_TO_VNET(curthread));
 	*low = V_ipport_firstauto;
 	*high = V_ipport_lastauto;
+	CURVNET_RESTORE();
 }
 
 static inline void


More information about the svn-src-head mailing list