Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Sep 2015 22:05:56 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r287527 - in projects/clang370-import: share/mk sys/netinet sys/netinet6 usr.bin/procstat usr.sbin/ntp usr.sbin/pciconf
Message-ID:  <201509062205.t86M5uRD072025@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Sun Sep  6 22:05:55 2015
New Revision: 287527
URL: https://svnweb.freebsd.org/changeset/base/287527

Log:
  Merge ^/head r287502 through r287526.

Modified:
  projects/clang370-import/share/mk/src.libnames.mk
  projects/clang370-import/sys/netinet/ip_input.c
  projects/clang370-import/sys/netinet6/in6.h
  projects/clang370-import/sys/netinet6/ip6_input.c
  projects/clang370-import/sys/netinet6/ip6_output.c
  projects/clang370-import/usr.bin/procstat/procstat_auxv.c
  projects/clang370-import/usr.sbin/ntp/Makefile
  projects/clang370-import/usr.sbin/pciconf/pathnames.h
  projects/clang370-import/usr.sbin/pciconf/pciconf.8
  projects/clang370-import/usr.sbin/pciconf/pciconf.c
Directory Properties:
  projects/clang370-import/   (props changed)
  projects/clang370-import/share/   (props changed)
  projects/clang370-import/sys/   (props changed)
  projects/clang370-import/usr.bin/procstat/   (props changed)

Modified: projects/clang370-import/share/mk/src.libnames.mk
==============================================================================
--- projects/clang370-import/share/mk/src.libnames.mk	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/share/mk/src.libnames.mk	Sun Sep  6 22:05:55 2015	(r287527)
@@ -298,9 +298,6 @@ DPADD_gssapi_krb5+=	${DPADD_pthread}
 LDADD_gssapi_krb5+=	${LDADD_pthread}
 
 .for _l in ${LIBADD}
-.if ${_PRIVATELIBS:M${_l}}
-USEPRIVATELIB+=	${_l}
-.endif
 DPADD+=		${DPADD_${_l}:Umissing-dpadd_${_l}}
 LDADD+=		${LDADD_${_l}}
 .endfor

Modified: projects/clang370-import/sys/netinet/ip_input.c
==============================================================================
--- projects/clang370-import/sys/netinet/ip_input.c	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/sys/netinet/ip_input.c	Sun Sep  6 22:05:55 2015	(r287527)
@@ -160,7 +160,7 @@ static struct netisr_handler ip_direct_n
 	.nh_name = "ip_direct",
 	.nh_handler = ip_direct_input,
 	.nh_proto = NETISR_IP_DIRECT,
-	.nh_m2cpuid = rss_m2cpuid,
+	.nh_m2cpuid = rss_soft_m2cpuid_v4,
 	.nh_policy = NETISR_POLICY_CPU,
 	.nh_dispatch = NETISR_DISPATCH_HYBRID,
 };

Modified: projects/clang370-import/sys/netinet6/in6.h
==============================================================================
--- projects/clang370-import/sys/netinet6/in6.h	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/sys/netinet6/in6.h	Sun Sep  6 22:05:55 2015	(r287527)
@@ -485,6 +485,8 @@ struct route_in6 {
 #define	IPV6_FLOWID		67 /* int; flowid of given socket */
 #define	IPV6_FLOWTYPE		68 /* int; flowtype of given socket */
 #define	IPV6_RSSBUCKETID	69 /* int; RSS bucket ID of given socket */
+#define	IPV6_RECVFLOWID		70 /* bool; receive IP6 flowid/flowtype w/ datagram */
+#define	IPV6_RECVRSSBUCKETID	71 /* bool; receive IP6 RSS bucket id w/ datagram */
 
 /*
  * The following option is private; do not use it from user applications.

Modified: projects/clang370-import/sys/netinet6/ip6_input.c
==============================================================================
--- projects/clang370-import/sys/netinet6/ip6_input.c	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/sys/netinet6/ip6_input.c	Sun Sep  6 22:05:55 2015	(r287527)
@@ -93,6 +93,7 @@ __FBSDID("$FreeBSD$");
 #include <net/if_dl.h>
 #include <net/route.h>
 #include <net/netisr.h>
+#include <net/rss_config.h>
 #include <net/pfil.h>
 #include <net/vnet.h>
 
@@ -1349,6 +1350,44 @@ ip6_savecontrol(struct inpcb *in6p, stru
 	  loopend:
 		;
 	}
+
+	if (in6p->inp_flags2 & INP_RECVFLOWID) {
+		uint32_t flowid, flow_type;
+
+		flowid = m->m_pkthdr.flowid;
+		flow_type = M_HASHTYPE_GET(m);
+
+		/*
+		 * XXX should handle the failure of one or the
+		 * other - don't populate both?
+		 */
+		*mp = sbcreatecontrol((caddr_t) &flowid,
+		    sizeof(uint32_t), IPV6_FLOWID, IPPROTO_IPV6);
+		if (*mp)
+			mp = &(*mp)->m_next;
+		*mp = sbcreatecontrol((caddr_t) &flow_type,
+		    sizeof(uint32_t), IPV6_FLOWTYPE, IPPROTO_IPV6);
+		if (*mp)
+			mp = &(*mp)->m_next;
+	}
+
+#ifdef	RSS
+	if (in6p->inp_flags2 & INP_RECVRSSBUCKETID) {
+		uint32_t flowid, flow_type;
+		uint32_t rss_bucketid;
+
+		flowid = m->m_pkthdr.flowid;
+		flow_type = M_HASHTYPE_GET(m);
+
+		if (rss_hash2bucket(flowid, flow_type, &rss_bucketid) == 0) {
+			*mp = sbcreatecontrol((caddr_t) &rss_bucketid,
+			   sizeof(uint32_t), IPV6_RSSBUCKETID, IPPROTO_IPV6);
+			if (*mp)
+				mp = &(*mp)->m_next;
+		}
+	}
+#endif
+
 }
 #undef IS2292
 

Modified: projects/clang370-import/sys/netinet6/ip6_output.c
==============================================================================
--- projects/clang370-import/sys/netinet6/ip6_output.c	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/sys/netinet6/ip6_output.c	Sun Sep  6 22:05:55 2015	(r287527)
@@ -1400,6 +1400,10 @@ ip6_ctloutput(struct socket *so, struct 
 			case IPV6_RECVRTHDR:
 			case IPV6_RECVPATHMTU:
 			case IPV6_RECVTCLASS:
+			case IPV6_RECVFLOWID:
+#ifdef	RSS
+			case IPV6_RECVRSSBUCKETID:
+#endif
 			case IPV6_V6ONLY:
 			case IPV6_AUTOFLOWLABEL:
 			case IPV6_BINDANY:
@@ -1548,6 +1552,16 @@ do { \
 						OPTSET(IN6P_MTU);
 					break;
 
+				case IPV6_RECVFLOWID:
+					OPTSET2(INP_RECVFLOWID, optval);
+					break;
+
+#ifdef	RSS
+				case IPV6_RECVRSSBUCKETID:
+					OPTSET2(INP_RECVRSSBUCKETID, optval);
+					break;
+#endif
+
 				case IPV6_V6ONLY:
 					/*
 					 * make setsockopt(IPV6_V6ONLY)
@@ -1811,8 +1825,10 @@ do { \
 			case IPV6_BINDANY:
 			case IPV6_FLOWID:
 			case IPV6_FLOWTYPE:
+			case IPV6_RECVFLOWID:
 #ifdef	RSS
 			case IPV6_RSSBUCKETID:
+			case IPV6_RECVRSSBUCKETID:
 #endif
 				switch (optname) {
 
@@ -1883,6 +1899,10 @@ do { \
 				case IPV6_FLOWTYPE:
 					optval = in6p->inp_flowtype;
 					break;
+
+				case IPV6_RECVFLOWID:
+					optval = OPTBIT2(INP_RECVFLOWID);
+					break;
 #ifdef	RSS
 				case IPV6_RSSBUCKETID:
 					retval =
@@ -1894,6 +1914,10 @@ do { \
 					else
 						error = EINVAL;
 					break;
+
+				case IPV6_RECVRSSBUCKETID:
+					optval = OPTBIT2(INP_RECVRSSBUCKETID);
+					break;
 #endif
 
 				case IPV6_BINDMULTI:

Modified: projects/clang370-import/usr.bin/procstat/procstat_auxv.c
==============================================================================
--- projects/clang370-import/usr.bin/procstat/procstat_auxv.c	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/usr.bin/procstat/procstat_auxv.c	Sun Sep  6 22:05:55 2015	(r287527)
@@ -165,11 +165,11 @@ procstat_auxv(struct procstat *procstat,
 			if ((auxv[i].a_un.a_val & VM_PROT_EXECUTE) != 0)
 				xo_emit("{dw:/%s}{Lw:/%-16s/%s}"
 				    "{:AT_STACKPROT/%s}\n", prefix,
-				    "AT_STACKPROT", "NONEXECUTABLE");
+				    "AT_STACKPROT", "EXECUTABLE");
 			else
 				xo_emit("{dw:/%s}{Lw:/%-16s/%s}"
 				    "{:AT_STACKPROT/%s}\n", prefix,
-				    "AT_STACKPROT", "EXECUTABLE");
+				    "AT_STACKPROT", "NONEXECUTABLE");
 			break;
 #ifdef AT_TIMEKEEP
 		case AT_TIMEKEEP:

Modified: projects/clang370-import/usr.sbin/ntp/Makefile
==============================================================================
--- projects/clang370-import/usr.sbin/ntp/Makefile	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/usr.sbin/ntp/Makefile	Sun Sep  6 22:05:55 2015	(r287527)
@@ -5,4 +5,14 @@ SUBDIR=	libopts libntp libntpevent libpa
 	ntptime ntp-keygen sntp
 SUBDIR+=	doc
 
+SUBDIR_DEPEND_ntpd=	libntp libopts libparse
+SUBDIR_DEPEND_ntpdate=	libntp
+SUBDIR_DEPEND_ntpdc=	libntp libopts
+SUBDIR_DEPEND_ntpq=	libntp libopts
+SUBDIR_DEPEND_ntptime=	libntp
+SUBDIR_DEPEND_ntp-keygen=	libntp libopts
+SUBDIR_DEPEND_sntp=	libntp libntpevent libopts
+
+SUBDIR_PARALLEL=
+
 .include <bsd.subdir.mk>

Modified: projects/clang370-import/usr.sbin/pciconf/pathnames.h
==============================================================================
--- projects/clang370-import/usr.sbin/pciconf/pathnames.h	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/usr.sbin/pciconf/pathnames.h	Sun Sep  6 22:05:55 2015	(r287527)
@@ -1,3 +1,4 @@
 /* $FreeBSD$ */
 #define	_PATH_DEVPCI	"/dev/pci"
 #define	_PATH_PCIVDB	"/usr/share/misc/pci_vendors"
+#define	_PATH_LPCIVDB	"/usr/local/share/pciids/pci.ids"

Modified: projects/clang370-import/usr.sbin/pciconf/pciconf.8
==============================================================================
--- projects/clang370-import/usr.sbin/pciconf/pciconf.8	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/usr.sbin/pciconf/pciconf.8	Sun Sep  6 22:05:55 2015	(r287527)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 20, 2014
+.Dd September 06, 2015
 .Dt PCICONF 8
 .Os
 .Sh NAME
@@ -281,7 +281,9 @@ indicates a halfword (two-byte) operatio
 The default is to read or
 write a longword (four bytes).
 .Sh ENVIRONMENT
-The PCI vendor/device information database is normally read from
+PCI vendor and device information is read from
+.Pa /usr/local/share/pciids/pci.ids .
+If that file is not present, it is read from
 .Pa /usr/share/misc/pci_vendors .
 This path can be overridden by setting the environment variable
 .Ev PCICONF_VENDOR_DATABASE .

Modified: projects/clang370-import/usr.sbin/pciconf/pciconf.c
==============================================================================
--- projects/clang370-import/usr.sbin/pciconf/pciconf.c	Sun Sep  6 22:02:13 2015	(r287526)
+++ projects/clang370-import/usr.sbin/pciconf/pciconf.c	Sun Sep  6 22:05:55 2015	(r287527)
@@ -549,9 +549,12 @@ load_vendors(void)
 	 */
 	TAILQ_INIT(&pci_vendors);
 	if ((dbf = getenv("PCICONF_VENDOR_DATABASE")) == NULL)
+		dbf = _PATH_LPCIVDB;
+	if ((db = fopen(dbf, "r")) == NULL) {
 		dbf = _PATH_PCIVDB;
-	if ((db = fopen(dbf, "r")) == NULL)
-		return(1);
+		if ((db = fopen(dbf, "r")) == NULL)
+			return(1);
+	}
 	cv = NULL;
 	cd = NULL;
 	error = 0;



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