From owner-svn-src-head@freebsd.org Sun Sep 20 01:09:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4C63FA03EF3; Sun, 20 Sep 2015 01:09:25 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3CE5F18E8; Sun, 20 Sep 2015 01:09:25 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K19P7F096492; Sun, 20 Sep 2015 01:09:25 GMT (envelope-from hrs@FreeBSD.org) Received: (from hrs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K19OtZ096488; Sun, 20 Sep 2015 01:09:24 GMT (envelope-from hrs@FreeBSD.org) Message-Id: <201509200109.t8K19OtZ096488@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hrs set sender to hrs@FreeBSD.org using -f From: Hiroki Sato Date: Sun, 20 Sep 2015 01:09:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r287999 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 01:09:25 -0000 Author: hrs Date: Sun Sep 20 01:09:23 2015 New Revision: 287999 URL: https://svnweb.freebsd.org/changeset/base/287999 Log: Add PF_LOCAL support in getaddrinfo(3) and getnameinfo(3): - In a PF_LOCAL address, "hostname" must begins with '/' and "servname" is always NULL. All of ai_flags are ignored. - PF_UNSPEC matches PF_LOCAL. EAI_SERVICE is not returned to make AF-independent programming easier; "servname" is always ignored in PF_LOCAL. In practice, PF_INET* and PF_LOCAL are mutually-exclusive because a hostname which begins with '/' is invalid in PF_INET*. No domain name resolution is performed for a PF_LOCAL address. Differential Revision: https://reviews.freebsd.org/D3634 Modified: head/lib/libc/net/getaddrinfo.3 head/lib/libc/net/getaddrinfo.c head/lib/libc/net/getnameinfo.3 head/lib/libc/net/getnameinfo.c Modified: head/lib/libc/net/getaddrinfo.3 ============================================================================== --- head/lib/libc/net/getaddrinfo.3 Sat Sep 19 23:48:06 2015 (r287998) +++ head/lib/libc/net/getaddrinfo.3 Sun Sep 20 01:09:23 2015 (r287999) @@ -18,7 +18,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 14, 2013 +.Dd September 20, 2015 .Dt GETADDRINFO 3 .Os .Sh NAME @@ -40,7 +40,6 @@ The .Fn getaddrinfo function is used to get a list of -.Tn IP addresses and port numbers for host .Fa hostname and service @@ -59,7 +58,9 @@ arguments are either pointers to NUL-ter An acceptable value for .Fa hostname is either a valid host name or a numeric host address string consisting -of a dotted decimal IPv4 address or an IPv6 address. +of a dotted decimal IPv4 address, +an IPv6 address, +or a UNIX-domain address. The .Fa servname is either a decimal port number or a service name listed in @@ -105,6 +106,7 @@ operating system. Denotes the type of socket that is wanted: .Dv SOCK_STREAM , .Dv SOCK_DGRAM , +.Dv SOCK_SEQPACKET , or .Dv SOCK_RAW . When @@ -112,9 +114,11 @@ When is zero the caller will accept any socket type. .It Fa ai_protocol Indicates which transport protocol is desired, -.Dv IPPROTO_UDP +.Dv IPPROTO_UDP , +.Dv IPPROTO_TCP , +.Dv IPPROTO_SCTP , or -.Dv IPPROTO_TCP . +.Dv IPPROTO_UDPLITE . If .Fa ai_protocol is zero the caller will accept any protocol. @@ -131,6 +135,9 @@ or be the bitwise-inclusive OR of one or .Dv AI_NUMERICSERV and .Dv AI_PASSIVE . +For a UNIX-domain address, +.Fa ai_flags +is ignored. .Bl -tag -width "AI_CANONNAMEXX" .It Dv AI_ADDRCONFIG If the @@ -419,6 +426,9 @@ freeaddrinfo(res0); .Xr getnameinfo 3 , .Xr getservbyname 3 , .Xr resolver 3 , +.Xr inet 4 , +.Xr inet6 4 , +.Xr unix 4 , .Xr hosts 5 , .Xr resolv.conf 5 , .Xr services 5 , Modified: head/lib/libc/net/getaddrinfo.c ============================================================================== --- head/lib/libc/net/getaddrinfo.c Sat Sep 19 23:48:06 2015 (r287998) +++ head/lib/libc/net/getaddrinfo.c Sun Sep 20 01:09:23 2015 (r287999) @@ -137,13 +137,20 @@ static const struct afd { offsetof(struct sockaddr_in6, sin6_addr), in6_addrany, in6_loopback, 1}, #define N_INET 1 +#define N_LOCAL 2 #else #define N_INET 0 +#define N_LOCAL 1 #endif {PF_INET, sizeof(struct in_addr), sizeof(struct sockaddr_in), offsetof(struct sockaddr_in, sin_addr), in_addrany, in_loopback, 0}, +#define sizeofmember(type, member) (sizeof(((type *)0)->member)) + {PF_LOCAL, sizeofmember(struct sockaddr_un, sun_path), + sizeof(struct sockaddr_un), + offsetof(struct sockaddr_un, sun_path), + NULL, NULL, 0}, {0, 0, 0, 0, NULL, NULL, 0}, }; @@ -152,29 +159,47 @@ struct explore { int e_socktype; int e_protocol; int e_wild; -#define WILD_AF(ex) ((ex)->e_wild & 0x01) -#define WILD_SOCKTYPE(ex) ((ex)->e_wild & 0x02) -#define WILD_PROTOCOL(ex) ((ex)->e_wild & 0x04) +#define AF_ANY 0x01 +#define SOCKTYPE_ANY 0x02 +#define PROTOCOL_ANY 0x04 +#define WILD_AF(ex) ((ex)->e_wild & AF_ANY) +#define WILD_SOCKTYPE(ex) ((ex)->e_wild & SOCKTYPE_ANY) +#define WILD_PROTOCOL(ex) ((ex)->e_wild & PROTOCOL_ANY) }; static const struct explore explore[] = { -#if 0 - { PF_LOCAL, ANY, ANY, 0x01 }, -#endif + { PF_LOCAL, SOCK_DGRAM, ANY, + AF_ANY | PROTOCOL_ANY }, + { PF_LOCAL, SOCK_STREAM, ANY, + AF_ANY | PROTOCOL_ANY }, + { PF_LOCAL, SOCK_SEQPACKET, ANY, + AF_ANY | PROTOCOL_ANY }, #ifdef INET6 - { PF_INET6, SOCK_DGRAM, IPPROTO_UDP, 0x07 }, - { PF_INET6, SOCK_STREAM, IPPROTO_TCP, 0x07 }, - { PF_INET6, SOCK_STREAM, IPPROTO_SCTP, 0x03 }, - { PF_INET6, SOCK_SEQPACKET, IPPROTO_SCTP, 0x07 }, - { PF_INET6, SOCK_DGRAM, IPPROTO_UDPLITE, 0x03 }, - { PF_INET6, SOCK_RAW, ANY, 0x05 }, -#endif - { PF_INET, SOCK_DGRAM, IPPROTO_UDP, 0x07 }, - { PF_INET, SOCK_STREAM, IPPROTO_TCP, 0x07 }, - { PF_INET, SOCK_STREAM, IPPROTO_SCTP, 0x03 }, - { PF_INET, SOCK_SEQPACKET, IPPROTO_SCTP, 0x07 }, - { PF_INET, SOCK_DGRAM, IPPROTO_UDPLITE, 0x03 }, - { PF_INET, SOCK_RAW, ANY, 0x05 }, + { PF_INET6, SOCK_DGRAM, IPPROTO_UDP, + AF_ANY | SOCKTYPE_ANY | PROTOCOL_ANY }, + { PF_INET6, SOCK_STREAM, IPPROTO_TCP, + AF_ANY | SOCKTYPE_ANY | PROTOCOL_ANY }, + { PF_INET6, SOCK_STREAM, IPPROTO_SCTP, + AF_ANY | SOCKTYPE_ANY }, + { PF_INET6, SOCK_SEQPACKET, IPPROTO_SCTP, + AF_ANY | SOCKTYPE_ANY | PROTOCOL_ANY }, + { PF_INET6, SOCK_DGRAM, IPPROTO_UDPLITE, + AF_ANY | SOCKTYPE_ANY }, + { PF_INET6, SOCK_RAW, ANY, + AF_ANY | PROTOCOL_ANY }, +#endif + { PF_INET, SOCK_DGRAM, IPPROTO_UDP, + AF_ANY | SOCKTYPE_ANY | PROTOCOL_ANY }, + { PF_INET, SOCK_STREAM, IPPROTO_TCP, + AF_ANY | SOCKTYPE_ANY | PROTOCOL_ANY }, + { PF_INET, SOCK_STREAM, IPPROTO_SCTP, + AF_ANY | SOCKTYPE_ANY }, + { PF_INET, SOCK_SEQPACKET, IPPROTO_SCTP, + AF_ANY | SOCKTYPE_ANY | PROTOCOL_ANY }, + { PF_INET, SOCK_DGRAM, IPPROTO_UDPLITE, + AF_ANY | SOCKTYPE_ANY }, + { PF_INET, SOCK_RAW, ANY, + AF_ANY | PROTOCOL_ANY }, { -1, 0, 0, 0 }, }; @@ -408,6 +433,7 @@ getaddrinfo(const char *hostname, const ERR(EAI_BADFLAGS); switch (hints->ai_family) { case PF_UNSPEC: + case PF_LOCAL: case PF_INET: #ifdef INET6 case PF_INET6: @@ -1130,6 +1156,9 @@ explore_null(const struct addrinfo *pai, *res = NULL; ai = NULL; + if (pai->ai_family == PF_LOCAL) + return (0); + /* * filter out AFs that are not supported by the kernel * XXX errno? @@ -1172,8 +1201,11 @@ explore_numeric(const struct addrinfo *p const struct afd *afd; struct addrinfo *ai; int error; - char pton[PTON_MAX]; + char pton[PTON_MAX], path[PATH_MAX], *p; +#ifdef CTASSERT + CTASSERT(sizeofmember(struct sockaddr_un, sun_path) <= PATH_MAX); +#endif *res = NULL; ai = NULL; @@ -1182,6 +1214,15 @@ explore_numeric(const struct addrinfo *p return 0; switch (afd->a_af) { + case AF_LOCAL: + if (hostname[0] != '/') + ERR(EAI_NONAME); + if (strlen(hostname) > afd->a_addrlen) + ERR(EAI_MEMORY); + /* NUL-termination does not need to be guaranteed. */ + strncpy(path, hostname, afd->a_addrlen); + p = &path[0]; + break; case AF_INET: /* * RFC3493 requires getaddrinfo() to accept AF_INET formats @@ -1192,15 +1233,17 @@ explore_numeric(const struct addrinfo *p */ if (inet_aton(hostname, (struct in_addr *)pton) != 1) return 0; + p = pton; break; default: if (inet_pton(afd->a_af, hostname, pton) != 1) return 0; + p = pton; break; } if (pai->ai_family == afd->a_af) { - GET_AI(ai, afd, pton); + GET_AI(ai, afd, p); GET_PORT(ai, servname); if ((pai->ai_flags & AI_CANONNAME)) { /* @@ -1320,6 +1363,12 @@ get_ai(const struct addrinfo *pai, const memset(ai->ai_addr, 0, (size_t)afd->a_socklen); ai->ai_addr->sa_len = afd->a_socklen; ai->ai_addrlen = afd->a_socklen; + if (ai->ai_family == PF_LOCAL) { + size_t n = strnlen(addr, afd->a_addrlen); + + ai->ai_addrlen -= afd->a_addrlen - n; + ai->ai_addr->sa_len -= afd->a_addrlen - n; + } ai->ai_addr->sa_family = ai->ai_family = afd->a_af; p = (char *)(void *)(ai->ai_addr); memcpy(p + afd->a_off, addr, (size_t)afd->a_addrlen); @@ -1378,6 +1427,9 @@ get_port(struct addrinfo *ai, const char if (servname == NULL) return 0; switch (ai->ai_family) { + case AF_LOCAL: + /* AF_LOCAL ignores servname silently. */ + return (0); case AF_INET: #ifdef AF_INET6 case AF_INET6: Modified: head/lib/libc/net/getnameinfo.3 ============================================================================== --- head/lib/libc/net/getnameinfo.3 Sat Sep 19 23:48:06 2015 (r287998) +++ head/lib/libc/net/getnameinfo.3 Sun Sep 20 01:09:23 2015 (r287999) @@ -18,7 +18,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 14, 2013 +.Dd September 20, 2015 .Dt GETNAMEINFO 3 .Os .Sh NAME @@ -47,7 +47,7 @@ functions and is the converse of the .Xr getaddrinfo 3 function. .Pp -If a link-layer address is passed to +If a link-layer address or UNIX-domain address is passed to .Fn getnameinfo , its ASCII representation will be stored in .Fa host . @@ -56,7 +56,8 @@ The string pointed to by will be set to the empty string if non-NULL; .Fa flags will always be ignored. -This is intended as a replacement for the legacy +For a link-layer address, +this can be used as a replacement of the legacy .Xr link_ntoa 3 function. .Pp @@ -66,10 +67,17 @@ structure .Fa sa should point to either a .Li sockaddr_in , -.Li sockaddr_in6 +.Li sockaddr_in6 , +.Li sockaddr_dl , or -.Li sockaddr_dl -structure (for IPv4, IPv6 or link-layer respectively) that is +.Li sockaddr_un +structure +.Po for IPv4 , +IPv6, +link-layer, +or UNIX-domain respectively +.Pc +that is .Fa salen bytes long. .Pp @@ -182,6 +190,9 @@ printf("host=%s\en", hbuf); .Xr inet_ntop 3 , .Xr link_ntoa 3 , .Xr resolver 3 , +.Xr inet 4 , +.Xr inet6 4 , +.Xr unix 4 , .Xr hosts 5 , .Xr resolv.conf 5 , .Xr services 5 , Modified: head/lib/libc/net/getnameinfo.c ============================================================================== --- head/lib/libc/net/getnameinfo.c Sat Sep 19 23:48:06 2015 (r287998) +++ head/lib/libc/net/getnameinfo.c Sun Sep 20 01:09:23 2015 (r287999) @@ -49,6 +49,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -62,67 +63,102 @@ __FBSDID("$FreeBSD$"); #include #include -static int getnameinfo_inet(const struct sockaddr *, socklen_t, char *, +static const struct afd *find_afd(int); +static int getnameinfo_inet(const struct afd *, + const struct sockaddr *, socklen_t, char *, size_t, char *, size_t, int); #ifdef INET6 static int ip6_parsenumeric(const struct sockaddr *, const char *, char *, size_t, int); static int ip6_sa2str(const struct sockaddr_in6 *, char *, size_t, int); #endif -static int getnameinfo_link(const struct sockaddr *, socklen_t, char *, +static int getnameinfo_link(const struct afd *, + const struct sockaddr *, socklen_t, char *, + size_t, char *, size_t, int); +static int hexname(const u_int8_t *, size_t, char *, size_t); +static int getnameinfo_un(const struct afd *, + const struct sockaddr *, socklen_t, char *, size_t, char *, size_t, int); -static int hexname(const u_int8_t *, size_t, char *, size_t); - -int -getnameinfo(const struct sockaddr *sa, socklen_t salen, - char *host, size_t hostlen, char *serv, size_t servlen, - int flags) -{ - if (sa == NULL) - return (EAI_FAIL); - - switch (sa->sa_family) { - case AF_INET: -#ifdef INET6 - case AF_INET6: -#endif - return getnameinfo_inet(sa, salen, host, hostlen, serv, - servlen, flags); - case AF_LINK: - return getnameinfo_link(sa, salen, host, hostlen, serv, - servlen, flags); - default: - return EAI_FAMILY; - } -} static const struct afd { int a_af; size_t a_addrlen; socklen_t a_socklen; int a_off; + int (*a_func)(const struct afd *, + const struct sockaddr *, socklen_t, char *, + size_t, char *, size_t, int); } afdl [] = { #ifdef INET6 {PF_INET6, sizeof(struct in6_addr), sizeof(struct sockaddr_in6), - offsetof(struct sockaddr_in6, sin6_addr)}, + offsetof(struct sockaddr_in6, sin6_addr), + getnameinfo_inet}, #endif {PF_INET, sizeof(struct in_addr), sizeof(struct sockaddr_in), - offsetof(struct sockaddr_in, sin_addr)}, + offsetof(struct sockaddr_in, sin_addr), + getnameinfo_inet}, +#define sizeofmember(type, member) (sizeof(((type *)0)->member)) + {PF_LOCAL, sizeofmember(struct sockaddr_un, sun_path), + sizeof(struct sockaddr_un), + offsetof(struct sockaddr_un, sun_path), + getnameinfo_un}, + {PF_LINK, sizeofmember(struct sockaddr_dl, sdl_data), + sizeof(struct sockaddr_dl), + offsetof(struct sockaddr_dl, sdl_data), + getnameinfo_link}, {0, 0, 0}, }; -struct sockinet { - u_char si_len; - u_char si_family; - u_short si_port; -}; +int +getnameinfo(const struct sockaddr *sa, socklen_t salen, + char *host, size_t hostlen, char *serv, size_t servlen, + int flags) +{ + const struct afd *afd; + + if (sa == NULL) + return (EAI_FAIL); + + afd = find_afd(sa->sa_family); + if (afd == NULL) + return (EAI_FAMILY); + if (sa->sa_family == PF_LOCAL) { + /* + * PF_LOCAL uses variable sa->sa_len depending on the + * content length of sun_path. Require 1 byte in + * sun_path at least. + */ + if (salen > afd->a_socklen || + salen <= afd->a_socklen - + sizeofmember(struct sockaddr_un, sun_path)) + return (EAI_FAIL); + } else if (salen != afd->a_socklen) + return (EAI_FAIL); + + return ((*afd->a_func)(afd, sa, salen, host, hostlen, + serv, servlen, flags)); +} + +static const struct afd * +find_afd(int af) +{ + const struct afd *afd; + + if (af == PF_UNSPEC) + return (NULL); + for (afd = &afdl[0]; afd->a_af > 0; afd++) { + if (afd->a_af == af) + return (afd); + } + return (NULL); +} static int -getnameinfo_inet(const struct sockaddr *sa, socklen_t salen, +getnameinfo_inet(const struct afd *afd, + const struct sockaddr *sa, socklen_t salen, char *host, size_t hostlen, char *serv, size_t servlen, int flags) { - const struct afd *afd; struct servent *sp; struct hostent *hp; u_short port; @@ -132,18 +168,8 @@ getnameinfo_inet(const struct sockaddr * char numserv[512]; char numaddr[512]; - for (afd = &afdl[0]; afd->a_af > 0; afd++) { - if (afd->a_af == sa->sa_family) - break; - } - if (afd->a_af == 0) - return (EAI_FAMILY); - - if (salen != afd->a_socklen) - return EAI_FAIL; - /* network byte order */ - port = ((const struct sockinet *)sa)->si_port; + port = ((const struct sockaddr_in *)sa)->sin_port; addr = (const char *)sa + afd->a_off; if (serv == NULL || servlen == 0) { @@ -377,7 +403,8 @@ ip6_sa2str(const struct sockaddr_in6 *sa */ /* ARGSUSED */ static int -getnameinfo_link(const struct sockaddr *sa, socklen_t salen, +getnameinfo_link(const struct afd *afd, + const struct sockaddr *sa, socklen_t salen, char *host, size_t hostlen, char *serv, size_t servlen, int flags) { const struct sockaddr_dl *sdl = @@ -465,3 +492,30 @@ hexname(const u_int8_t *cp, size_t len, } return 0; } + +/* + * getnameinfo_un(): + * Format a UNIX IPC domain address (pathname). + */ +/* ARGSUSED */ +static int +getnameinfo_un(const struct afd *afd, + const struct sockaddr *sa, socklen_t salen, + char *host, size_t hostlen, char *serv, size_t servlen, int flags) +{ + size_t pathlen; + + if (serv != NULL && servlen > 0) + *serv = '\0'; + if (host != NULL && hostlen > 0) { + pathlen = sa->sa_len - afd->a_off; + + if (pathlen + 1 > hostlen) { + *host = '\0'; + return (EAI_MEMORY); + } + strlcpy(host, (const char *)sa + afd->a_off, pathlen + 1); + } + + return (0); +} From owner-svn-src-head@freebsd.org Sun Sep 20 01:28:03 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F20A9A02DB2; Sun, 20 Sep 2015 01:28:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E0F8B1C6E; Sun, 20 Sep 2015 01:28:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K1S2lo005916; Sun, 20 Sep 2015 01:28:02 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K1S02o005905; Sun, 20 Sep 2015 01:28:00 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509200128.t8K1S02o005905@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 20 Sep 2015 01:28:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288000 - in head/sys: amd64/amd64 arm/arm i386/i386 kern mips/mips powerpc/powerpc sparc64/sparc64 sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 01:28:03 -0000 Author: kib Date: Sun Sep 20 01:27:59 2015 New Revision: 288000 URL: https://svnweb.freebsd.org/changeset/base/288000 Log: Add support for weak symbols to the kernel linkers. It means that linkers no longer raise an error when undefined weak symbols are found, but relocate as if the symbol value was 0. Note that we do not repeat the mistake of userspace dynamic linker of making the symbol lookup prefer non-weak symbol definition over the weak one, if both are available. In fact, kernel linker uses the first definition found, and ignores duplicates. Signature of the elf_lookup() and elf_obj_lookup() functions changed to split result/error code and the symbol address returned. Otherwise, it is impossible to return zero address as the symbol value, to MD relocation code. This explains the mechanical changes in elf_machdep.c sources. The powerpc64 R_PPC_JMP_SLOT handler did not checked error from the lookup() call, the patch leaves the code as is (untested). Reported by: glebius Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/amd64/amd64/elf_machdep.c head/sys/arm/arm/elf_machdep.c head/sys/i386/i386/elf_machdep.c head/sys/kern/link_elf.c head/sys/kern/link_elf_obj.c head/sys/mips/mips/elf_machdep.c head/sys/powerpc/powerpc/elf32_machdep.c head/sys/powerpc/powerpc/elf64_machdep.c head/sys/sparc64/sparc64/elf_machdep.c head/sys/sys/linker.h Modified: head/sys/amd64/amd64/elf_machdep.c ============================================================================== --- head/sys/amd64/amd64/elf_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/amd64/amd64/elf_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -168,6 +168,7 @@ elf_reloc_internal(linker_file_t lf, Elf Elf_Size rtype, symidx; const Elf_Rel *rel; const Elf_Rela *rela; + int error; switch (type) { case ELF_RELOC_REL: @@ -203,29 +204,29 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_X86_64_64: /* S + A */ - addr = lookup(lf, symidx, 1); + error = lookup(lf, symidx, 1, &addr); val = addr + addend; - if (addr == 0) + if (error != 0) return -1; if (*where != val) *where = val; break; case R_X86_64_PC32: /* S + A - P */ - addr = lookup(lf, symidx, 1); + error = lookup(lf, symidx, 1, &addr); where32 = (Elf32_Addr *)where; val32 = (Elf32_Addr)(addr + addend - (Elf_Addr)where); - if (addr == 0) + if (error != 0) return -1; if (*where32 != val32) *where32 = val32; break; case R_X86_64_32S: /* S + A sign extend */ - addr = lookup(lf, symidx, 1); + error = lookup(lf, symidx, 1, &addr); val32 = (Elf32_Addr)(addr + addend); where32 = (Elf32_Addr *)where; - if (addr == 0) + if (error != 0) return -1; if (*where32 != val32) *where32 = val32; @@ -242,8 +243,8 @@ elf_reloc_internal(linker_file_t lf, Elf case R_X86_64_GLOB_DAT: /* S */ case R_X86_64_JMP_SLOT: /* XXX need addend + offset */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; if (*where != addr) *where = addr; Modified: head/sys/arm/arm/elf_machdep.c ============================================================================== --- head/sys/arm/arm/elf_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/arm/arm/elf_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -164,6 +164,7 @@ elf_reloc_internal(linker_file_t lf, Elf Elf_Word rtype, symidx; const Elf_Rel *rel; const Elf_Rela *rela; + int error; switch (type) { case ELF_RELOC_REL: @@ -199,8 +200,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_ARM_ABS32: - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; store_ptr(where, addr + load_ptr(where)); break; @@ -215,8 +216,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_ARM_JUMP_SLOT: - addr = lookup(lf, symidx, 1); - if (addr) { + error = lookup(lf, symidx, 1, &addr); + if (error == 0) { store_ptr(where, addr); return (0); } Modified: head/sys/i386/i386/elf_machdep.c ============================================================================== --- head/sys/i386/i386/elf_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/i386/i386/elf_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -178,6 +178,7 @@ elf_reloc_internal(linker_file_t lf, Elf Elf_Word rtype, symidx; const Elf_Rel *rel; const Elf_Rela *rela; + int error; switch (type) { case ELF_RELOC_REL: @@ -213,8 +214,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_386_32: /* S + A */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; addr += addend; if (*where != addr) @@ -222,8 +223,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_386_PC32: /* S + A - P */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; addr += addend - (Elf_Addr)where; if (*where != addr) @@ -240,8 +241,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_386_GLOB_DAT: /* S */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; if (*where != addr) *where = addr; Modified: head/sys/kern/link_elf.c ============================================================================== --- head/sys/kern/link_elf.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/kern/link_elf.c Sun Sep 20 01:27:59 2015 (r288000) @@ -158,7 +158,7 @@ static int link_elf_each_function_nameva static void link_elf_reloc_local(linker_file_t); static long link_elf_symtab_get(linker_file_t, const Elf_Sym **); static long link_elf_strtab_get(linker_file_t, caddr_t *); -static Elf_Addr elf_lookup(linker_file_t, Elf_Size, int); +static int elf_lookup(linker_file_t, Elf_Size, int, Elf_Addr *); static kobj_method_t link_elf_methods[] = { KOBJMETHOD(linker_lookup_symbol, link_elf_lookup_symbol), @@ -1548,8 +1548,8 @@ elf_get_symname(linker_file_t lf, Elf_Si * This is not only more efficient, it's also more correct. It's not always * the case that the symbol can be found through the hash table. */ -static Elf_Addr -elf_lookup(linker_file_t lf, Elf_Size symidx, int deps) +static int +elf_lookup(linker_file_t lf, Elf_Size symidx, int deps, Elf_Addr *res) { elf_file_t ef = (elf_file_t)lf; const Elf_Sym *sym; @@ -1557,8 +1557,10 @@ elf_lookup(linker_file_t lf, Elf_Size sy Elf_Addr addr, start, base; /* Don't even try to lookup the symbol if the index is bogus. */ - if (symidx >= ef->nchains) - return (0); + if (symidx >= ef->nchains) { + *res = 0; + return (EINVAL); + } sym = ef->symtab + symidx; @@ -1568,9 +1570,12 @@ elf_lookup(linker_file_t lf, Elf_Size sy */ if (ELF_ST_BIND(sym->st_info) == STB_LOCAL) { /* Force lookup failure when we have an insanity. */ - if (sym->st_shndx == SHN_UNDEF || sym->st_value == 0) - return (0); - return ((Elf_Addr)ef->address + sym->st_value); + if (sym->st_shndx == SHN_UNDEF || sym->st_value == 0) { + *res = 0; + return (EINVAL); + } + *res = ((Elf_Addr)ef->address + sym->st_value); + return (0); } /* @@ -1583,8 +1588,10 @@ elf_lookup(linker_file_t lf, Elf_Size sy symbol = ef->strtab + sym->st_name; /* Force a lookup failure if the symbol name is bogus. */ - if (*symbol == 0) - return (0); + if (*symbol == 0) { + *res = 0; + return (EINVAL); + } addr = ((Elf_Addr)linker_file_lookup_symbol(lf, symbol, deps)); @@ -1594,7 +1601,8 @@ elf_lookup(linker_file_t lf, Elf_Size sy else if (elf_set_find(&set_vnet_list, addr, &start, &base)) addr = addr - start + base; #endif - return addr; + *res = addr; + return (0); } static void Modified: head/sys/kern/link_elf_obj.c ============================================================================== --- head/sys/kern/link_elf_obj.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/kern/link_elf_obj.c Sun Sep 20 01:27:59 2015 (r288000) @@ -144,7 +144,8 @@ static void link_elf_reloc_local(linker_ static long link_elf_symtab_get(linker_file_t, const Elf_Sym **); static long link_elf_strtab_get(linker_file_t, caddr_t *); -static Elf_Addr elf_obj_lookup(linker_file_t lf, Elf_Size symidx, int deps); +static int elf_obj_lookup(linker_file_t lf, Elf_Size symidx, int deps, + Elf_Addr *); static kobj_method_t link_elf_methods[] = { KOBJMETHOD(linker_lookup_symbol, link_elf_lookup_symbol), @@ -1253,38 +1254,46 @@ elf_obj_cleanup_globals_cache(elf_file_t * This is not only more efficient, it's also more correct. It's not always * the case that the symbol can be found through the hash table. */ -static Elf_Addr -elf_obj_lookup(linker_file_t lf, Elf_Size symidx, int deps) +static int +elf_obj_lookup(linker_file_t lf, Elf_Size symidx, int deps, Elf_Addr *res) { elf_file_t ef = (elf_file_t)lf; Elf_Sym *sym; const char *symbol; - Elf_Addr ret; + Elf_Addr res1; /* Don't even try to lookup the symbol if the index is bogus. */ - if (symidx >= ef->ddbsymcnt) - return (0); + if (symidx >= ef->ddbsymcnt) { + *res = 0; + return (EINVAL); + } sym = ef->ddbsymtab + symidx; /* Quick answer if there is a definition included. */ - if (sym->st_shndx != SHN_UNDEF) - return (sym->st_value); + if (sym->st_shndx != SHN_UNDEF) { + *res = sym->st_value; + return (0); + } /* If we get here, then it is undefined and needs a lookup. */ switch (ELF_ST_BIND(sym->st_info)) { case STB_LOCAL: /* Local, but undefined? huh? */ - return (0); + *res = 0; + return (EINVAL); case STB_GLOBAL: + case STB_WEAK: /* Relative to Data or Function name */ symbol = ef->ddbstrtab + sym->st_name; /* Force a lookup failure if the symbol name is bogus. */ - if (*symbol == 0) - return (0); - ret = ((Elf_Addr)linker_file_lookup_symbol(lf, symbol, deps)); + if (*symbol == 0) { + *res = 0; + return (EINVAL); + } + res1 = (Elf_Addr)linker_file_lookup_symbol(lf, symbol, deps); /* * Cache global lookups during module relocation. The failure @@ -1296,18 +1305,20 @@ elf_obj_lookup(linker_file_t lf, Elf_Siz * restored to SHN_UNDEF in elf_obj_cleanup_globals_cache(), * above. */ - if (ret != 0) { + if (res1 != 0) { sym->st_shndx = SHN_FBSD_CACHED; - sym->st_value = ret; + sym->st_value = res1; + *res = res1; + return (0); + } else if (ELF_ST_BIND(sym->st_info) == STB_WEAK) { + sym->st_value = 0; + *res = 0; + return (0); } - return (ret); - - case STB_WEAK: - printf("link_elf_obj: Weak symbols not supported\n"); - return (0); + return (EINVAL); default: - return (0); + return (EINVAL); } } Modified: head/sys/mips/mips/elf_machdep.c ============================================================================== --- head/sys/mips/mips/elf_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/mips/mips/elf_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -176,6 +176,7 @@ elf_reloc_internal(linker_file_t lf, Elf Elf_Word rtype = (Elf_Word)0, symidx; const Elf_Rel *rel = NULL; const Elf_Rela *rela = NULL; + int error; /* * Stash R_MIPS_HI16 info so we can use it when processing R_MIPS_LO16 @@ -215,8 +216,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_MIPS_32: /* S + A */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addr += addend; if (*where != addr) @@ -224,8 +225,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_MIPS_26: /* ((A << 2) | (P & 0xf0000000) + S) >> 2 */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addend &= 0x03ffffff; @@ -243,8 +244,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_MIPS_64: /* S + A */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addr += addend; if (*(Elf64_Addr*)where != addr) @@ -253,8 +254,8 @@ elf_reloc_internal(linker_file_t lf, Elf case R_MIPS_HI16: /* ((AHL + S) - ((short)(AHL + S)) >> 16 */ if (rela != NULL) { - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addr += addend; *where &= 0xffff0000; @@ -268,8 +269,8 @@ elf_reloc_internal(linker_file_t lf, Elf case R_MIPS_LO16: /* AHL + S */ if (rela != NULL) { - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addr += addend; *where &= 0xffff0000; @@ -277,8 +278,8 @@ elf_reloc_internal(linker_file_t lf, Elf } else { ahl += (int16_t)addend; - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addend &= 0xffff0000; @@ -294,8 +295,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_MIPS_HIGHER: /* %higher(A+S) */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addr += addend; *where &= 0xffff0000; @@ -303,8 +304,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_MIPS_HIGHEST: /* %highest(A+S) */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); addr += addend; *where &= 0xffff0000; Modified: head/sys/powerpc/powerpc/elf32_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf32_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/powerpc/powerpc/elf32_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -183,6 +183,7 @@ elf_reloc_internal(linker_file_t lf, Elf Elf_Addr addend; Elf_Word rtype, symidx; const Elf_Rela *rela; + int error; switch (type) { case ELF_RELOC_REL: @@ -206,15 +207,15 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_PPC_ADDR32: /* word32 S + A */ - addr = lookup(lf, symidx, 1); - if (addr == 0) - return -1; + error = lookup(lf, symidx, 1, &addr); + if (error != 0) + return -1; *where = elf_relocaddr(lf, addr + addend); break; case R_PPC_ADDR16_LO: /* #lo(S) */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; /* * addend values are sometimes relative to sections @@ -228,8 +229,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_PPC_ADDR16_HA: /* #ha(S) */ - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return -1; /* * addend values are sometimes relative to sections Modified: head/sys/powerpc/powerpc/elf64_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf64_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/powerpc/powerpc/elf64_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -154,6 +154,7 @@ elf_reloc_internal(linker_file_t lf, Elf Elf_Addr addend; Elf_Word rtype, symidx; const Elf_Rela *rela; + int error; switch (type) { case ELF_RELOC_REL: @@ -176,9 +177,9 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_PPC64_ADDR64: /* doubleword64 S + A */ - addr = lookup(lf, symidx, 1); - if (addr == 0) - return -1; + error = lookup(lf, symidx, 1, &addr); + if (error != 0) + return -1; addr += addend; *where = addr; break; @@ -188,7 +189,7 @@ elf_reloc_internal(linker_file_t lf, Elf break; case R_PPC_JMP_SLOT: /* function descriptor copy */ - addr = lookup(lf, symidx, 1); + lookup(lf, symidx, 1, &addr); memcpy(where, (Elf_Addr *)addr, 3*sizeof(Elf_Addr)); __asm __volatile("dcbst 0,%0; sync" :: "r"(where) : "memory"); break; Modified: head/sys/sparc64/sparc64/elf_machdep.c ============================================================================== --- head/sys/sparc64/sparc64/elf_machdep.c Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/sparc64/sparc64/elf_machdep.c Sun Sep 20 01:27:59 2015 (r288000) @@ -344,6 +344,7 @@ elf_reloc(linker_file_t lf, Elf_Addr rel Elf_Addr value; Elf_Addr mask; Elf_Addr addr; + int error; if (type != ELF_RELOC_RELA) return (-1); @@ -372,8 +373,8 @@ elf_reloc(linker_file_t lf, Elf_Addr rel value = rela->r_addend; if (RELOC_RESOLVE_SYMBOL(rtype)) { - addr = lookup(lf, symidx, 1); - if (addr == 0) + error = lookup(lf, symidx, 1, &addr); + if (error != 0) return (-1); value += addr; if (RELOC_BARE_SYMBOL(rtype)) Modified: head/sys/sys/linker.h ============================================================================== --- head/sys/sys/linker.h Sun Sep 20 01:09:23 2015 (r287999) +++ head/sys/sys/linker.h Sun Sep 20 01:27:59 2015 (r288000) @@ -264,7 +264,7 @@ extern int kld_debug; #endif -typedef Elf_Addr elf_lookup_fn(linker_file_t, Elf_Size, int); +typedef int elf_lookup_fn(linker_file_t, Elf_Size, int, Elf_Addr *); /* Support functions */ int elf_reloc(linker_file_t _lf, Elf_Addr base, const void *_rel, int _type, elf_lookup_fn _lu); From owner-svn-src-head@freebsd.org Sun Sep 20 01:35:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0151CA033D5; Sun, 20 Sep 2015 01:35:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D71B910A6; Sun, 20 Sep 2015 01:35:52 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K1ZqOo009910; Sun, 20 Sep 2015 01:35:52 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K1ZqSS009907; Sun, 20 Sep 2015 01:35:52 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509200135.t8K1ZqSS009907@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 20 Sep 2015 01:35:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288001 - head/sys/powerpc/powerpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 01:35:53 -0000 Author: kib Date: Sun Sep 20 01:35:51 2015 New Revision: 288001 URL: https://svnweb.freebsd.org/changeset/base/288001 Log: Use tabs for indend. Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/powerpc/powerpc/elf32_machdep.c head/sys/powerpc/powerpc/elf64_machdep.c Modified: head/sys/powerpc/powerpc/elf32_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf32_machdep.c Sun Sep 20 01:27:59 2015 (r288000) +++ head/sys/powerpc/powerpc/elf32_machdep.c Sun Sep 20 01:35:51 2015 (r288001) @@ -203,17 +203,17 @@ elf_reloc_internal(linker_file_t lf, Elf switch (rtype) { - case R_PPC_NONE: - break; + case R_PPC_NONE: + break; case R_PPC_ADDR32: /* word32 S + A */ error = lookup(lf, symidx, 1, &addr); if (error != 0) return -1; *where = elf_relocaddr(lf, addr + addend); - break; + break; - case R_PPC_ADDR16_LO: /* #lo(S) */ + case R_PPC_ADDR16_LO: /* #lo(S) */ error = lookup(lf, symidx, 1, &addr); if (error != 0) return -1; @@ -240,17 +240,17 @@ elf_reloc_internal(linker_file_t lf, Elf if (addr > relocbase && addr <= (relocbase + addend)) addr = relocbase; addr = elf_relocaddr(lf, addr + addend); - *hwhere = ((addr >> 16) + ((addr & 0x8000) ? 1 : 0)) + *hwhere = ((addr >> 16) + ((addr & 0x8000) ? 1 : 0)) & 0xffff; break; case R_PPC_RELATIVE: /* word32 B + A */ - *where = elf_relocaddr(lf, relocbase + addend); - break; + *where = elf_relocaddr(lf, relocbase + addend); + break; default: - printf("kldload: unexpected relocation type %d\n", - (int) rtype); + printf("kldload: unexpected relocation type %d\n", + (int) rtype); return -1; } return(0); Modified: head/sys/powerpc/powerpc/elf64_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf64_machdep.c Sun Sep 20 01:27:59 2015 (r288000) +++ head/sys/powerpc/powerpc/elf64_machdep.c Sun Sep 20 01:35:51 2015 (r288001) @@ -173,20 +173,20 @@ elf_reloc_internal(linker_file_t lf, Elf switch (rtype) { - case R_PPC_NONE: - break; + case R_PPC_NONE: + break; case R_PPC64_ADDR64: /* doubleword64 S + A */ error = lookup(lf, symidx, 1, &addr); if (error != 0) return -1; addr += addend; - *where = addr; - break; + *where = addr; + break; case R_PPC_RELATIVE: /* doubleword64 B + A */ - *where = elf_relocaddr(lf, relocbase + addend); - break; + *where = elf_relocaddr(lf, relocbase + addend); + break; case R_PPC_JMP_SLOT: /* function descriptor copy */ lookup(lf, symidx, 1, &addr); @@ -195,8 +195,8 @@ elf_reloc_internal(linker_file_t lf, Elf break; default: - printf("kldload: unexpected relocation type %d\n", - (int) rtype); + printf("kldload: unexpected relocation type %d\n", + (int) rtype); return -1; } return(0); From owner-svn-src-head@freebsd.org Sun Sep 20 01:38:47 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 46636A0359A; Sun, 20 Sep 2015 01:38:47 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-ig0-x22f.google.com (mail-ig0-x22f.google.com [IPv6:2607:f8b0:4001:c05::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 043DA123E; Sun, 20 Sep 2015 01:38:47 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by igcrk20 with SMTP id rk20so40709373igc.1; Sat, 19 Sep 2015 18:38:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=pmCJiqZRHMfQ8WEJwLnLJBOFRAZKZMp3TlBYxNazuvk=; b=n4TMe3a5JK+kB7TEWIHtkxkk3B4a2tem0l6cC2CQSaBuorfof+Cm6Hk+b0dXQFamfG jaPoo0SRcJuhsRAPJeX9bB1kscVyM0tx726UZItDt4E72C/PR74bIySRWxBPn9NtEgy0 HNjQBxIpHsAKCaiASMmrqo0Wokoa5FKmHErTy0iJJlFsWvqouNYuGloDfl2ZZF/0lgUd S2SD//tpF2WrU1zsW/2cC8n+ENFuGpVjjJ1N07mUlpZWEAlyz+qqnET2a7mwItICDGlQ 2xcM/HAMus7/aWeAddEPNdMzXvXVumbH6q+kmoyR+xWV9dBro3hzz6F1aHsW8Ed4RpNd cX2Q== MIME-Version: 1.0 X-Received: by 10.50.43.227 with SMTP id z3mr4750952igl.22.1442713126165; Sat, 19 Sep 2015 18:38:46 -0700 (PDT) Received: by 10.36.28.208 with HTTP; Sat, 19 Sep 2015 18:38:46 -0700 (PDT) In-Reply-To: <55FDA1E7.8050007@fastmail.net> References: <201509141052.t8EAqRWf008293@repo.freebsd.org> <20150916220559.GS1023@FreeBSD.org> <55FA69BD.10507@selasky.org> <0952027A-5276-487D-99B8-74747B0EEF5D@FreeBSD.org> <55FD23C5.5010008@selasky.org> <64D8263B-1F5D-40E5-994C-479C39B69DC9@neville-neil.com> <1442684369.1224.179.camel@freebsd.org> <55FDA1E7.8050007@fastmail.net> Date: Sat, 19 Sep 2015 18:38:46 -0700 Message-ID: Subject: Re: svn commit: r287780 - in head: share/man/man9 sys/kern sys/sys From: Adrian Chadd To: Bruce Simpson Cc: Ian Lepore , George Neville-Neil , Hans Petter Selasky , David Chisnall , Gleb Smirnoff , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 01:38:47 -0000 On 19 September 2015 at 10:56, Bruce Simpson wrote: > Ian, > > To paraphrase what I said privately to the various dramatis personae in > January: > > Changes like this need to be reviewed before they go in. As timing is > central to the entire OS, change review has to be meticulous, on par with > the virtual memory management. We have a VM tsar; we do not have a timing > tsar. > > On 19/09/15 18:39, Ian Lepore wrote: >> >> I'm afraid this message can be interpetted as "reviews are now mandatory >> for a 'core component of the system' (whatever that means)". If so, >> this would be a Big Change from the last thing I heard about code >> reviews, which was basically: as much as some people would like it to be >> so, they are not mandatory. > > ... >> >> a definition as meaningless and vague as[.] > > > I don't believe for one moment that George is advocating for mandatory > reviews. But common sense should apply, _as timing is central to the entire > OS_. It touches absolutely everything. > > Hell, I wouldn't feel comfortable checking anything in to e.g. timecounters > without at least running it by phk first. > > So, +1 from me for backout until the change can be reviewed. > > But to be fair to all involved, perhaps Hans should set out a timeline for > how he wants to proceed, subject to the jitter inherent to an all-volunteer > project. What isn't necessarily public knowledge is the sheer volume of emails that went out a few months ago whilst chasing down callout and tcp bugs. There were (and maybe still are) very subtle bugs in the callout system and after a few attempts at fixing them there were some very careful bug fixes made. Some attempts failed, I think a couple of successful ones made it into the tree. Yes, this whole callout system is very delicate at the moment. hps@ has some very specific ideas of how the API should behave in order to be predictable/reasoning-able (and I agree with him about almost all of it, even though it makes RSS painful, but that's because of our TCP stack and how we use callouts, not because its his fault!) but it's a pretty big fundamental change to how things currently work and he was shot down. I think people are just very weary of new changes. On the flip side, he did actively solicit reviews - rrs, kib, hiren, jhb, wblock and jch were included in the review request, which dates back to August 28. He gave people a little short of three weeks for review before he committed the code. So as much as I'm cautious about things (and it gets me in trouble at work, hi alfred!) I think he did the right thing here - he added a new thing, documented it, solicited a review, and it timed out. If people would like more time to review it then fine, but please give him either a firm "no, not ever" right now and be honest about your intentions, or give him a timeframe that you'll review it before it times out. Hans - personally, I think you should've emailed out a review request on freebsd-arch@ and put out a request for testers and give a firm date that you'll commit it. That makes it all very explicit. People channel phrases involving silence and agreement and all that; this is one of those times it happened. -adrian From owner-svn-src-head@freebsd.org Sun Sep 20 03:45:59 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DDAF39CD4A0; Sun, 20 Sep 2015 03:45:59 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B4B651AF0; Sun, 20 Sep 2015 03:45:59 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3jxwk063908; Sun, 20 Sep 2015 03:45:59 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3jwtb063901; Sun, 20 Sep 2015 03:45:58 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200345.t8K3jwtb063901@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:45:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288002 - head/lib/libc/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:46:00 -0000 Author: rodrigc Date: Sun Sep 20 03:45:57 2015 New Revision: 288002 URL: https://svnweb.freebsd.org/changeset/base/288002 Log: Add missing includes to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/sys/close.c head/lib/libc/sys/fsync.c head/lib/libc/sys/msync.c head/lib/libc/sys/readv.c head/lib/libc/sys/writev.c Modified: head/lib/libc/sys/close.c ============================================================================== --- head/lib/libc/sys/close.c Sun Sep 20 01:35:51 2015 (r288001) +++ head/lib/libc/sys/close.c Sun Sep 20 03:45:57 2015 (r288002) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include "libc_private.h" __weak_reference(__sys_close, __close); Modified: head/lib/libc/sys/fsync.c ============================================================================== --- head/lib/libc/sys/fsync.c Sun Sep 20 01:35:51 2015 (r288001) +++ head/lib/libc/sys/fsync.c Sun Sep 20 03:45:57 2015 (r288002) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include "libc_private.h" __weak_reference(__sys_fsync, __fsync); Modified: head/lib/libc/sys/msync.c ============================================================================== --- head/lib/libc/sys/msync.c Sun Sep 20 01:35:51 2015 (r288001) +++ head/lib/libc/sys/msync.c Sun Sep 20 03:45:57 2015 (r288002) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include "libc_private.h" __weak_reference(__sys_msync, __msync); Modified: head/lib/libc/sys/readv.c ============================================================================== --- head/lib/libc/sys/readv.c Sun Sep 20 01:35:51 2015 (r288001) +++ head/lib/libc/sys/readv.c Sun Sep 20 03:45:57 2015 (r288002) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include "libc_private.h" Modified: head/lib/libc/sys/writev.c ============================================================================== --- head/lib/libc/sys/writev.c Sun Sep 20 01:35:51 2015 (r288001) +++ head/lib/libc/sys/writev.c Sun Sep 20 03:45:57 2015 (r288002) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include "libc_private.h" From owner-svn-src-head@freebsd.org Sun Sep 20 03:49:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7D1549CD626; Sun, 20 Sep 2015 03:49:09 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6D54F1C90; Sun, 20 Sep 2015 03:49:09 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3n9DQ064075; Sun, 20 Sep 2015 03:49:09 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3n9AL064074; Sun, 20 Sep 2015 03:49:09 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200349.t8K3n9AL064074@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:49:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288003 - head/lib/libc/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:49:09 -0000 Author: rodrigc Date: Sun Sep 20 03:49:08 2015 New Revision: 288003 URL: https://svnweb.freebsd.org/changeset/base/288003 Log: Add missing include to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/sys/__error.c Modified: head/lib/libc/sys/__error.c ============================================================================== --- head/lib/libc/sys/__error.c Sun Sep 20 03:45:57 2015 (r288002) +++ head/lib/libc/sys/__error.c Sun Sep 20 03:49:08 2015 (r288003) @@ -30,6 +30,8 @@ #include __FBSDID("$FreeBSD$"); +#include "libc_private.h" + extern int errno; static int * From owner-svn-src-head@freebsd.org Sun Sep 20 03:51:16 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1ECFB9CD843; Sun, 20 Sep 2015 03:51:16 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F5BD1ECD; Sun, 20 Sep 2015 03:51:16 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3pFVH065230; Sun, 20 Sep 2015 03:51:15 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3pFQv065229; Sun, 20 Sep 2015 03:51:15 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200351.t8K3pFQv065229@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:51:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288004 - head/lib/libc/string X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:51:16 -0000 Author: rodrigc Date: Sun Sep 20 03:51:15 2015 New Revision: 288004 URL: https://svnweb.freebsd.org/changeset/base/288004 Log: Add declaration to eliminate -Wmissing-prototypes warning. Modified: head/lib/libc/string/strchrnul.c Modified: head/lib/libc/string/strchrnul.c ============================================================================== --- head/lib/libc/string/strchrnul.c Sun Sep 20 03:49:08 2015 (r288003) +++ head/lib/libc/string/strchrnul.c Sun Sep 20 03:51:15 2015 (r288004) @@ -33,6 +33,8 @@ __FBSDID("$FreeBSD$"); __weak_reference(__strchrnul, strchrnul); +char *__strchrnul(const char *, int); + char * __strchrnul(const char *p, int ch) { From owner-svn-src-head@freebsd.org Sun Sep 20 03:53:10 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C0079CD9A5; Sun, 20 Sep 2015 03:53:10 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0248C117E; Sun, 20 Sep 2015 03:53:10 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3r9lK067927; Sun, 20 Sep 2015 03:53:09 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3r9bb067924; Sun, 20 Sep 2015 03:53:09 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200353.t8K3r9bb067924@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:53:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288005 - head/lib/libc/stdlib X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:53:10 -0000 Author: rodrigc Date: Sun Sep 20 03:53:08 2015 New Revision: 288005 URL: https://svnweb.freebsd.org/changeset/base/288005 Log: Add declarations to eliminate -Wmissing-prototypes warnings. Modified: head/lib/libc/stdlib/atexit.c head/lib/libc/stdlib/heapsort.c head/lib/libc/stdlib/merge.c Modified: head/lib/libc/stdlib/atexit.c ============================================================================== --- head/lib/libc/stdlib/atexit.c Sun Sep 20 03:51:15 2015 (r288004) +++ head/lib/libc/stdlib/atexit.c Sun Sep 20 03:53:08 2015 (r288005) @@ -82,6 +82,9 @@ struct atexit { static struct atexit *__atexit; /* points to head of LIFO stack */ typedef DECLARE_BLOCK(void, atexit_block, void); +int atexit_b(atexit_block func); +int __cxa_atexit(void (*func)(void *), void *arg, void *dso); + /* * Register the function described by 'fptr' to be called at application * exit or owning shared object unload time. This is a helper function Modified: head/lib/libc/stdlib/heapsort.c ============================================================================== --- head/lib/libc/stdlib/heapsort.c Sun Sep 20 03:51:15 2015 (r288004) +++ head/lib/libc/stdlib/heapsort.c Sun Sep 20 03:53:08 2015 (r288005) @@ -138,6 +138,12 @@ typedef DECLARE_BLOCK(int, heapsort_bloc } \ } +#ifdef I_AM_HEAPSORT_B +int heapsort_b(void *vbase, size_t nmemb, size_t size, heapsort_block compar); +#else +int heapsort(void *vbase, size_t nmemb, size_t size, + int (*compar)(const void *, const void *)); +#endif /* * Heapsort -- Knuth, Vol. 3, page 145. Runs in O (N lg N), both average * and worst. While heapsort is faster than the worst case of quicksort, Modified: head/lib/libc/stdlib/merge.c ============================================================================== --- head/lib/libc/stdlib/merge.c Sun Sep 20 03:51:15 2015 (r288004) +++ head/lib/libc/stdlib/merge.c Sun Sep 20 03:53:08 2015 (r288005) @@ -99,6 +99,12 @@ static void insertionsort(u_char *, size ((u_char *)0 + \ (((u_char *)p + PSIZE - 1 - (u_char *) 0) & ~(PSIZE - 1))) +#ifdef I_AM_MERGESORT_B +int mergesort_b(void *base, size_t nmemb, size_t size, cmp_t cmp); +#else +int mergesort(void *base, size_t nmemb, size_t size, cmp_t cmp); +#endif + /* * Arguments are as for qsort. */ From owner-svn-src-head@freebsd.org Sun Sep 20 03:55:04 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5FF49CDAAC; Sun, 20 Sep 2015 03:55:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D637812EF; Sun, 20 Sep 2015 03:55:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3t4EY068073; Sun, 20 Sep 2015 03:55:04 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3t4md068069; Sun, 20 Sep 2015 03:55:04 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200355.t8K3t4md068069@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:55:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288006 - head/lib/libc/stdio X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:55:05 -0000 Author: rodrigc Date: Sun Sep 20 03:55:03 2015 New Revision: 288006 URL: https://svnweb.freebsd.org/changeset/base/288006 Log: Add declarations to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/stdio/_flock_stub.c head/lib/libc/stdio/fgetwln.c head/lib/libc/stdio/findfp.c Modified: head/lib/libc/stdio/_flock_stub.c ============================================================================== --- head/lib/libc/stdio/_flock_stub.c Sun Sep 20 03:53:08 2015 (r288005) +++ head/lib/libc/stdio/_flock_stub.c Sun Sep 20 03:55:03 2015 (r288006) @@ -55,6 +55,9 @@ __weak_reference(_flockfile_debug_stub, __weak_reference(_ftrylockfile, ftrylockfile); __weak_reference(_funlockfile, funlockfile); +void _flockfile_debug_stub(FILE *fp, char *fname, int lineno); +int _ftrylockfile(FILE *fp); + void _flockfile(FILE *fp) { Modified: head/lib/libc/stdio/fgetwln.c ============================================================================== --- head/lib/libc/stdio/fgetwln.c Sun Sep 20 03:53:08 2015 (r288005) +++ head/lib/libc/stdio/fgetwln.c Sun Sep 20 03:55:03 2015 (r288006) @@ -40,6 +40,8 @@ __FBSDID("$FreeBSD$"); #include "local.h" #include "xlocale_private.h" +wchar_t *fgetwln_l(FILE * __restrict fp, size_t *lenp, locale_t locale); + wchar_t * fgetwln_l(FILE * __restrict fp, size_t *lenp, locale_t locale) { Modified: head/lib/libc/stdio/findfp.c ============================================================================== --- head/lib/libc/stdio/findfp.c Sun Sep 20 03:53:08 2015 (r288005) +++ head/lib/libc/stdio/findfp.c Sun Sep 20 03:55:03 2015 (r288006) @@ -164,6 +164,7 @@ found: */ __warn_references(f_prealloc, "warning: this program uses f_prealloc(), which is not recommended."); +void f_prealloc_void(); void f_prealloc(void) From owner-svn-src-head@freebsd.org Sun Sep 20 03:56:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CE4709CDB8A; Sun, 20 Sep 2015 03:56:58 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BEC62149A; Sun, 20 Sep 2015 03:56:58 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3uwuL068199; Sun, 20 Sep 2015 03:56:58 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3uweX068198; Sun, 20 Sep 2015 03:56:58 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200356.t8K3uweX068198@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:56:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288007 - head/lib/libc/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:56:58 -0000 Author: rodrigc Date: Sun Sep 20 03:56:57 2015 New Revision: 288007 URL: https://svnweb.freebsd.org/changeset/base/288007 Log: Adding missing include to eliminate -Wmissing-prototypes warning Modified: head/lib/libc/gen/feature_present.c Modified: head/lib/libc/gen/feature_present.c ============================================================================== --- head/lib/libc/gen/feature_present.c Sun Sep 20 03:55:03 2015 (r288006) +++ head/lib/libc/gen/feature_present.c Sun Sep 20 03:56:57 2015 (r288007) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include /* * Returns true if the named feature is present in the currently From owner-svn-src-head@freebsd.org Sun Sep 20 03:58:33 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 101409CDC90; Sun, 20 Sep 2015 03:58:33 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F35991643; Sun, 20 Sep 2015 03:58:32 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3wWBx068348; Sun, 20 Sep 2015 03:58:32 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3wRsd068328; Sun, 20 Sep 2015 03:58:27 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200358.t8K3wRsd068328@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:58:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288008 - head/lib/libc/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:58:33 -0000 Author: rodrigc Date: Sun Sep 20 03:58:27 2015 New Revision: 288008 URL: https://svnweb.freebsd.org/changeset/base/288008 Log: Add declarations to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/gen/dlfcn.c head/lib/libc/gen/dup3.c head/lib/libc/gen/elf_utils.c head/lib/libc/gen/fmtcheck.c head/lib/libc/gen/getgrent.c head/lib/libc/gen/nlist.c head/lib/libc/gen/pause.c head/lib/libc/gen/raise.c head/lib/libc/gen/semctl.c head/lib/libc/gen/sleep.c head/lib/libc/gen/ttyslot.c head/lib/libc/gen/uname.c head/lib/libc/gen/unvis-compat.c head/lib/libc/gen/usleep.c head/lib/libc/gen/wait.c head/lib/libc/gen/wait3.c head/lib/libc/gen/waitid.c head/lib/libc/gen/waitpid.c Modified: head/lib/libc/gen/dlfcn.c ============================================================================== --- head/lib/libc/gen/dlfcn.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/dlfcn.c Sun Sep 20 03:58:27 2015 (r288008) @@ -41,6 +41,10 @@ __FBSDID("$FreeBSD$"); static char sorry[] = "Service unavailable"; +void _rtld_thread_init(void * li); +void _rtld_atfork_pre(int *locks); +void _rtld_atfork_post(int *locks); + /* * For ELF, the dynamic linker directly resolves references to its * services to functions inside the dynamic linker itself. These Modified: head/lib/libc/gen/dup3.c ============================================================================== --- head/lib/libc/gen/dup3.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/dup3.c Sun Sep 20 03:58:27 2015 (r288008) @@ -35,6 +35,8 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +int __dup3(int oldfd, int newfd, int flags); + int __dup3(int oldfd, int newfd, int flags) { Modified: head/lib/libc/gen/elf_utils.c ============================================================================== --- head/lib/libc/gen/elf_utils.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/elf_utils.c Sun Sep 20 03:58:27 2015 (r288008) @@ -33,6 +33,9 @@ #include #include +int __elf_phdr_match_addr(struct dl_phdr_info *phdr_info, void *addr); +void __pthread_map_stacks_exec(void); + int __elf_phdr_match_addr(struct dl_phdr_info *phdr_info, void *addr) { Modified: head/lib/libc/gen/fmtcheck.c ============================================================================== --- head/lib/libc/gen/fmtcheck.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/fmtcheck.c Sun Sep 20 03:58:27 2015 (r288008) @@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$"); #include __weak_reference(__fmtcheck, fmtcheck); +const char * __fmtcheck(const char *f1, const char *f2); enum __e_fmtcheck_types { FMTCHECK_START, Modified: head/lib/libc/gen/getgrent.c ============================================================================== --- head/lib/libc/gen/getgrent.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/getgrent.c Sun Sep 20 03:58:27 2015 (r288008) @@ -75,6 +75,8 @@ static const ns_src defaultsrc[] = { { NULL, 0 } }; +int __getgroupmembership(const char *uname, gid_t agroup, gid_t *groups, + int maxgrp, int *grpcnt); int __gr_match_entry(const char *, size_t, enum nss_lookup_type, const char *, gid_t); int __gr_parse_entry(char *, size_t, struct group *, char *, size_t, Modified: head/lib/libc/gen/nlist.c ============================================================================== --- head/lib/libc/gen/nlist.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/nlist.c Sun Sep 20 03:58:27 2015 (r288008) @@ -61,6 +61,7 @@ __FBSDID("$FreeBSD$"); int __fdnlist(int, struct nlist *); int __aout_fdnlist(int, struct nlist *); int __elf_fdnlist(int, struct nlist *); +int __elf_is_okay__(Elf_Ehdr *ehdr); int nlist(const char *name, struct nlist *list) Modified: head/lib/libc/gen/pause.c ============================================================================== --- head/lib/libc/gen/pause.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/pause.c Sun Sep 20 03:58:27 2015 (r288008) @@ -38,6 +38,8 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" +int __pause(void); + /* * Backwards compatible pause. */ Modified: head/lib/libc/gen/raise.c ============================================================================== --- head/lib/libc/gen/raise.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/raise.c Sun Sep 20 03:58:27 2015 (r288008) @@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$"); __weak_reference(__raise, raise); __weak_reference(__raise, _raise); +int __raise(int s); int __raise(int s) Modified: head/lib/libc/gen/semctl.c ============================================================================== --- head/lib/libc/gen/semctl.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/semctl.c Sun Sep 20 03:58:27 2015 (r288008) @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); int __semctl(int semid, int semnum, int cmd, union semun *arg); int freebsd7___semctl(int semid, int semnum, int cmd, union semun_old *arg); +int freebsd7_semctl(int semid, int semnum, int cmd, ...); int semctl(int semid, int semnum, int cmd, ...) Modified: head/lib/libc/gen/sleep.c ============================================================================== --- head/lib/libc/gen/sleep.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/sleep.c Sun Sep 20 03:58:27 2015 (r288008) @@ -42,6 +42,8 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" +unsigned int __sleep(unsigned int seconds); + unsigned int __sleep(unsigned int seconds) { Modified: head/lib/libc/gen/ttyslot.c ============================================================================== --- head/lib/libc/gen/ttyslot.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/ttyslot.c Sun Sep 20 03:58:27 2015 (r288008) @@ -33,6 +33,8 @@ static char sccsid[] = "@(#)ttyslot.c 8. #include __FBSDID("$FreeBSD$"); +int __ttyslot(void); + int __ttyslot(void) { Modified: head/lib/libc/gen/uname.c ============================================================================== --- head/lib/libc/gen/uname.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/uname.c Sun Sep 20 03:58:27 2015 (r288008) @@ -40,6 +40,8 @@ __FBSDID("$FreeBSD$"); #include #undef uname +int uname(struct utsname *name); + int uname(struct utsname *name) { Modified: head/lib/libc/gen/unvis-compat.c ============================================================================== --- head/lib/libc/gen/unvis-compat.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/unvis-compat.c Sun Sep 20 03:58:27 2015 (r288008) @@ -34,6 +34,8 @@ #define _UNVIS_END 1 +int __unvis_44bsd(char *cp, int c, int *astate, int flag); + int __unvis_44bsd(char *cp, int c, int *astate, int flag) { Modified: head/lib/libc/gen/usleep.c ============================================================================== --- head/lib/libc/gen/usleep.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/usleep.c Sun Sep 20 03:58:27 2015 (r288008) @@ -40,6 +40,8 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" +int __usleep(useconds_t useconds); + int __usleep(useconds_t useconds) { Modified: head/lib/libc/gen/wait.c ============================================================================== --- head/lib/libc/gen/wait.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/wait.c Sun Sep 20 03:58:27 2015 (r288008) @@ -42,6 +42,8 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" +pid_t __wait(int *istat); + pid_t __wait(int *istat) { Modified: head/lib/libc/gen/wait3.c ============================================================================== --- head/lib/libc/gen/wait3.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/wait3.c Sun Sep 20 03:58:27 2015 (r288008) @@ -42,6 +42,8 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" +pid_t __wait3(int *istat, int options, struct rusage *rup); + pid_t __wait3(int *istat, int options, struct rusage *rup) { Modified: head/lib/libc/gen/waitid.c ============================================================================== --- head/lib/libc/gen/waitid.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/waitid.c Sun Sep 20 03:58:27 2015 (r288008) @@ -39,6 +39,8 @@ __FBSDID("$FreeBSD$"); #include "un-namespace.h" #include "libc_private.h" +int __waitid(idtype_t idtype, id_t id, siginfo_t *info, int flags); + int __waitid(idtype_t idtype, id_t id, siginfo_t *info, int flags) { Modified: head/lib/libc/gen/waitpid.c ============================================================================== --- head/lib/libc/gen/waitpid.c Sun Sep 20 03:56:57 2015 (r288007) +++ head/lib/libc/gen/waitpid.c Sun Sep 20 03:58:27 2015 (r288008) @@ -42,6 +42,8 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" +pid_t __waitpid(pid_t pid, int *istat, int options); + pid_t __waitpid(pid_t pid, int *istat, int options) { From owner-svn-src-head@freebsd.org Sun Sep 20 03:59:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83AB29CDD45; Sun, 20 Sep 2015 03:59:28 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7410818BF; Sun, 20 Sep 2015 03:59:28 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K3xSA9068429; Sun, 20 Sep 2015 03:59:28 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K3xS97068428; Sun, 20 Sep 2015 03:59:28 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200359.t8K3xS97068428@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 03:59:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288009 - head/lib/libc/gmon X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 03:59:28 -0000 Author: rodrigc Date: Sun Sep 20 03:59:27 2015 New Revision: 288009 URL: https://svnweb.freebsd.org/changeset/base/288009 Log: Add declaration to eliminate -Wmissing-prototypes warning Modified: head/lib/libc/gmon/gmon.c Modified: head/lib/libc/gmon/gmon.c ============================================================================== --- head/lib/libc/gmon/gmon.c Sun Sep 20 03:58:27 2015 (r288008) +++ head/lib/libc/gmon/gmon.c Sun Sep 20 03:59:27 2015 (r288009) @@ -68,6 +68,7 @@ static int s_scale; void moncontrol(int); static int hertz(void); +void _mcleanup(void); void monstartup(u_long lowpc, u_long highpc) From owner-svn-src-head@freebsd.org Sun Sep 20 04:06:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D8E7FA0516F; Sun, 20 Sep 2015 04:06:05 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C92AC1CB1; Sun, 20 Sep 2015 04:06:05 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K465jf072382; Sun, 20 Sep 2015 04:06:05 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4658K072381; Sun, 20 Sep 2015 04:06:05 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200406.t8K4658K072381@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:06:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288010 - head/lib/libc/gdtoa X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:06:06 -0000 Author: rodrigc Date: Sun Sep 20 04:06:04 2015 New Revision: 288010 URL: https://svnweb.freebsd.org/changeset/base/288010 Log: Add missing include to eliminate -Wmissing-prototypes warning Modified: head/lib/libc/gdtoa/_ldtoa.c Modified: head/lib/libc/gdtoa/_ldtoa.c ============================================================================== --- head/lib/libc/gdtoa/_ldtoa.c Sun Sep 20 03:59:27 2015 (r288009) +++ head/lib/libc/gdtoa/_ldtoa.c Sun Sep 20 04:06:04 2015 (r288010) @@ -32,6 +32,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include "../stdio/floatio.h" #include "fpmath.h" #include "gdtoaimp.h" From owner-svn-src-head@freebsd.org Sun Sep 20 04:06:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0A860A051CE; Sun, 20 Sep 2015 04:06:56 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EE9451DFC; Sun, 20 Sep 2015 04:06:55 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K46teH072462; Sun, 20 Sep 2015 04:06:55 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K46tKl072460; Sun, 20 Sep 2015 04:06:55 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200406.t8K46tKl072460@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:06:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288011 - head/lib/libc/posix1e X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:06:56 -0000 Author: rodrigc Date: Sun Sep 20 04:06:55 2015 New Revision: 288011 URL: https://svnweb.freebsd.org/changeset/base/288011 Log: Adding missing declarations to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/posix1e/acl_compat.c head/lib/libc/posix1e/acl_support.h Modified: head/lib/libc/posix1e/acl_compat.c ============================================================================== --- head/lib/libc/posix1e/acl_compat.c Sun Sep 20 04:06:04 2015 (r288010) +++ head/lib/libc/posix1e/acl_compat.c Sun Sep 20 04:06:55 2015 (r288011) @@ -29,6 +29,10 @@ __FBSDID("$FreeBSD$"); #include +int __oldacl_get_perm_np(acl_permset_t permset_d, oldacl_perm_t perm); +int __oldacl_add_perm(acl_permset_t permset_d, oldacl_perm_t perm); +int __oldacl_delete_perm(acl_permset_t permset_d, oldacl_perm_t perm); + /* * Compatibility wrappers for applications compiled against libc from before * NFSv4 ACLs were added. Modified: head/lib/libc/posix1e/acl_support.h ============================================================================== --- head/lib/libc/posix1e/acl_support.h Sun Sep 20 04:06:04 2015 (r288010) +++ head/lib/libc/posix1e/acl_support.h Sun Sep 20 04:06:55 2015 (r288011) @@ -45,6 +45,8 @@ int _acl_brand_may_be(const acl_t acl, i int _entry_brand_may_be(const acl_entry_t entry, int brand); void _acl_brand_as(acl_t acl, int brand); void _entry_brand_as(const acl_entry_t entry, int brand); +int _nfs4_acl_entry_from_text(acl_t aclp, char *str); +char *_nfs4_acl_to_text_np(const acl_t aclp, ssize_t *len_p, int flags); int _nfs4_format_flags(char *str, size_t size, acl_flag_t var, int verbose); int _nfs4_format_access_mask(char *str, size_t size, acl_perm_t var, int verbose); int _nfs4_parse_flags(const char *str, acl_flag_t *var); From owner-svn-src-head@freebsd.org Sun Sep 20 04:15:38 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CF42DA05871; Sun, 20 Sep 2015 04:15:38 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BF5D612A3; Sun, 20 Sep 2015 04:15:38 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4FcZw076540; Sun, 20 Sep 2015 04:15:38 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4FcT3076537; Sun, 20 Sep 2015 04:15:38 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200415.t8K4FcT3076537@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:15:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288012 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:15:38 -0000 Author: rodrigc Date: Sun Sep 20 04:15:37 2015 New Revision: 288012 URL: https://svnweb.freebsd.org/changeset/base/288012 Log: Add missing includes to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/net/ntoh.c head/lib/libc/net/sockatmark.c Modified: head/lib/libc/net/ntoh.c ============================================================================== --- head/lib/libc/net/ntoh.c Sun Sep 20 04:06:55 2015 (r288011) +++ head/lib/libc/net/ntoh.c Sun Sep 20 04:15:37 2015 (r288012) @@ -28,6 +28,8 @@ __FBSDID("$FreeBSD$"); #include +#define _BYTEORDER_FUNC_DEFINED +#include uint32_t htonl(uint32_t hl) Modified: head/lib/libc/net/sockatmark.c ============================================================================== --- head/lib/libc/net/sockatmark.c Sun Sep 20 04:06:55 2015 (r288011) +++ head/lib/libc/net/sockatmark.c Sun Sep 20 04:15:37 2015 (r288012) @@ -26,6 +26,7 @@ */ #include "namespace.h" #include +#include #include "un-namespace.h" int sockatmark(int s) From owner-svn-src-head@freebsd.org Sun Sep 20 04:17:04 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 02930A05921; Sun, 20 Sep 2015 04:17:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E6EFE143C; Sun, 20 Sep 2015 04:17:03 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4H3L2076641; Sun, 20 Sep 2015 04:17:03 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4H3Oc076640; Sun, 20 Sep 2015 04:17:03 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200417.t8K4H3Oc076640@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:17:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288013 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:17:04 -0000 Author: rodrigc Date: Sun Sep 20 04:17:03 2015 New Revision: 288013 URL: https://svnweb.freebsd.org/changeset/base/288013 Log: Define _NS_PRIVATE to make declarations visible. This eliminates -Wmissing-prototypes warnings. Modified: head/lib/libc/net/nscache.c Modified: head/lib/libc/net/nscache.c ============================================================================== --- head/lib/libc/net/nscache.c Sun Sep 20 04:15:37 2015 (r288012) +++ head/lib/libc/net/nscache.c Sun Sep 20 04:17:03 2015 (r288013) @@ -29,6 +29,7 @@ __FBSDID("$FreeBSD$"); #include "namespace.h" +#define _NS_PRIVATE #include #include #include From owner-svn-src-head@freebsd.org Sun Sep 20 04:17:54 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BEA92A059D8; Sun, 20 Sep 2015 04:17:54 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AEDEB15E9; Sun, 20 Sep 2015 04:17:54 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4HsIw076715; Sun, 20 Sep 2015 04:17:54 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4HsTq076714; Sun, 20 Sep 2015 04:17:54 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200417.t8K4HsTq076714@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:17:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288014 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:17:54 -0000 Author: rodrigc Date: Sun Sep 20 04:17:53 2015 New Revision: 288014 URL: https://svnweb.freebsd.org/changeset/base/288014 Log: Add declarations to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/net/nss_compat.c Modified: head/lib/libc/net/nss_compat.c ============================================================================== --- head/lib/libc/net/nss_compat.c Sun Sep 20 04:17:03 2015 (r288013) +++ head/lib/libc/net/nss_compat.c Sun Sep 20 04:17:53 2015 (r288014) @@ -79,6 +79,16 @@ do { \ DECLARE_TERMINATOR(group); +int __nss_compat_getgrnam_r(void *retval, void *mdata, va_list ap); +int __nss_compat_getgrgid_r(void *retval, void *mdata, va_list ap); +int __nss_compat_getgrent_r(void *retval, void *mdata, va_list ap); +int __nss_compat_setgrent(void *retval, void *mdata, va_list ap); +int __nss_compat_endgrent(void *retval, void *mdata, va_list ap); +int __nss_compat_getpwnam_r(void *retval, void *mdata, va_list ap); +int __nss_compat_getpwuid_r(void *retval, void *mdata, va_list ap); +int __nss_compat_getpwent_r(void *retval, void *mdata, va_list ap); +int __nss_compat_setpwent(void *retval, void *mdata, va_list ap); +int __nss_compat_endpwent(void *retval, void *mdata, va_list ap); int __nss_compat_getgrnam_r(void *retval, void *mdata, va_list ap) From owner-svn-src-head@freebsd.org Sun Sep 20 04:20:33 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3C9E7A05C30; Sun, 20 Sep 2015 04:20:33 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2C7691A42; Sun, 20 Sep 2015 04:20:33 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4KXA1078183; Sun, 20 Sep 2015 04:20:33 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4KVne078177; Sun, 20 Sep 2015 04:20:31 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200420.t8K4KVne078177@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:20:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288015 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:20:33 -0000 Author: rodrigc Date: Sun Sep 20 04:20:31 2015 New Revision: 288015 URL: https://svnweb.freebsd.org/changeset/base/288015 Log: Add declarations to netdb_private.h to eliminate -Wmissing-prototypes warnings. Modified: head/lib/libc/net/gethostnamadr.c head/lib/libc/net/getnetnamadr.c head/lib/libc/net/getproto.c head/lib/libc/net/map_v4v6.c head/lib/libc/net/netdb_private.h Modified: head/lib/libc/net/gethostnamadr.c ============================================================================== --- head/lib/libc/net/gethostnamadr.c Sun Sep 20 04:17:53 2015 (r288014) +++ head/lib/libc/net/gethostnamadr.c Sun Sep 20 04:20:31 2015 (r288015) @@ -48,13 +48,6 @@ __FBSDID("$FreeBSD$"); #include "nscache.h" #endif -extern int _ht_gethostbyname(void *, void *, va_list); -extern int _dns_gethostbyname(void *, void *, va_list); -extern int _nis_gethostbyname(void *, void *, va_list); -extern int _ht_gethostbyaddr(void *, void *, va_list); -extern int _dns_gethostbyaddr(void *, void *, va_list); -extern int _nis_gethostbyaddr(void *, void *, va_list); - static int gethostbyname_internal(const char *, int, struct hostent *, char *, size_t, struct hostent **, int *, res_state); Modified: head/lib/libc/net/getnetnamadr.c ============================================================================== --- head/lib/libc/net/getnetnamadr.c Sun Sep 20 04:17:53 2015 (r288014) +++ head/lib/libc/net/getnetnamadr.c Sun Sep 20 04:20:31 2015 (r288015) @@ -46,13 +46,6 @@ __FBSDID("$FreeBSD$"); #include "nscache.h" #endif -extern int _ht_getnetbyname(void *, void *, va_list); -extern int _dns_getnetbyname(void *, void *, va_list); -extern int _nis_getnetbyname(void *, void *, va_list); -extern int _ht_getnetbyaddr(void *, void *, va_list); -extern int _dns_getnetbyaddr(void *, void *, va_list); -extern int _nis_getnetbyaddr(void *, void *, va_list); - /* Network lookup order if nsswitch.conf is broken or nonexistant */ static const ns_src default_src[] = { { NSSRC_FILES, NS_SUCCESS }, Modified: head/lib/libc/net/getproto.c ============================================================================== --- head/lib/libc/net/getproto.c Sun Sep 20 04:17:53 2015 (r288014) +++ head/lib/libc/net/getproto.c Sun Sep 20 04:20:31 2015 (r288015) @@ -47,12 +47,6 @@ static const ns_src defaultsrc[] = { { NULL, 0 } }; -#ifdef NS_CACHING -extern int __proto_id_func(char *, size_t *, va_list, void *); -extern int __proto_marshal_func(char *, size_t *, void *, va_list, void *); -extern int __proto_unmarshal_func(char *, size_t, void *, va_list, void *); -#endif - static int files_getprotobynumber(void *retval, void *mdata, va_list ap) { Modified: head/lib/libc/net/map_v4v6.c ============================================================================== --- head/lib/libc/net/map_v4v6.c Sun Sep 20 04:17:53 2015 (r288014) +++ head/lib/libc/net/map_v4v6.c Sun Sep 20 04:20:31 2015 (r288015) @@ -68,6 +68,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include "netdb_private.h" typedef union { int32_t al; Modified: head/lib/libc/net/netdb_private.h ============================================================================== --- head/lib/libc/net/netdb_private.h Sun Sep 20 04:17:53 2015 (r288014) +++ head/lib/libc/net/netdb_private.h Sun Sep 20 04:20:31 2015 (r288015) @@ -142,4 +142,23 @@ void _sethosthtent(int, struct hostent_d void _setnetdnsent(int); void _setnethtent(int, struct netent_data *); +struct hostent *__dns_getanswer(const char *, int, const char *, int); +int _dns_gethostbyaddr(void *, void *, va_list); +int _dns_gethostbyname(void *, void *, va_list); +int _dns_getnetbyaddr(void *, void *, va_list); +int _dns_getnetbyname(void *, void *, va_list); +int _ht_gethostbyaddr(void *, void *, va_list); +int _ht_gethostbyname(void *, void *, va_list); +int _ht_getnetbyaddr(void *, void *, va_list); +int _ht_getnetbyname(void *, void *, va_list); +int _nis_gethostbyaddr(void *, void *, va_list); +int _nis_gethostbyname(void *, void *, va_list); +int _nis_getnetbyaddr(void *, void *, va_list); +int _nis_getnetbyname(void *, void *, va_list); +#ifdef NS_CACHING +int __proto_id_func(char *, size_t *, va_list, void *); +int __proto_marshal_func(char *, size_t *, void *, va_list, void *); +int __proto_unmarshal_func(char *, size_t, void *, va_list, void *); +#endif + #endif /* _NETDB_PRIVATE_H_ */ From owner-svn-src-head@freebsd.org Sun Sep 20 04:21:45 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8913FA05CB8; Sun, 20 Sep 2015 04:21:45 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7950F1D55; Sun, 20 Sep 2015 04:21:45 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4Lj8e080418; Sun, 20 Sep 2015 04:21:45 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4LjY2080399; Sun, 20 Sep 2015 04:21:45 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200421.t8K4LjY2080399@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:21:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288016 - head/lib/libc/compat-43 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:21:45 -0000 Author: rodrigc Date: Sun Sep 20 04:21:44 2015 New Revision: 288016 URL: https://svnweb.freebsd.org/changeset/base/288016 Log: Add declaration to eliminate -Wmissing-prototypes warning Modified: head/lib/libc/compat-43/creat.c Modified: head/lib/libc/compat-43/creat.c ============================================================================== --- head/lib/libc/compat-43/creat.c Sun Sep 20 04:20:31 2015 (r288015) +++ head/lib/libc/compat-43/creat.c Sun Sep 20 04:21:44 2015 (r288016) @@ -41,6 +41,8 @@ __FBSDID("$FreeBSD$"); __weak_reference(__creat, creat); __weak_reference(__creat, _creat); +int __creat(const char *path, mode_t mode); + #pragma weak creat int __creat(const char *path, mode_t mode) From owner-svn-src-head@freebsd.org Sun Sep 20 04:23:17 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 89D00A05D8B; Sun, 20 Sep 2015 04:23:17 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 794911F0A; Sun, 20 Sep 2015 04:23:17 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4NHOh080819; Sun, 20 Sep 2015 04:23:17 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4NHAF080818; Sun, 20 Sep 2015 04:23:17 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200423.t8K4NHAF080818@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:23:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288017 - head/lib/libc/rpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:23:17 -0000 Author: rodrigc Date: Sun Sep 20 04:23:16 2015 New Revision: 288017 URL: https://svnweb.freebsd.org/changeset/base/288017 Log: Use ANSI C prototypes. Eliminates gcc 4.9 warnings. Modified: head/lib/libc/rpc/svc.c Modified: head/lib/libc/rpc/svc.c ============================================================================== --- head/lib/libc/rpc/svc.c Sun Sep 20 04:21:44 2015 (r288016) +++ head/lib/libc/rpc/svc.c Sun Sep 20 04:23:16 2015 (r288017) @@ -97,8 +97,7 @@ static void __xprt_do_unregister (SVCXPR * Activate a transport handle. */ void -xprt_register(xprt) - SVCXPRT *xprt; +xprt_register(SVCXPRT *xprt) { int sock; @@ -140,9 +139,7 @@ __xprt_unregister_unlocked(SVCXPRT *xprt * De-activate a transport handle. */ static void -__xprt_do_unregister(xprt, dolock) - SVCXPRT *xprt; - bool_t dolock; +__xprt_do_unregister(SVCXPRT *xprt, bool_t dolock) { int sock; @@ -171,12 +168,9 @@ __xprt_do_unregister(xprt, dolock) * program number comes in. */ bool_t -svc_reg(xprt, prog, vers, dispatch, nconf) - SVCXPRT *xprt; - const rpcprog_t prog; - const rpcvers_t vers; - void (*dispatch)(struct svc_req *, SVCXPRT *); - const struct netconfig *nconf; +svc_reg(SVCXPRT *xprt, const rpcprog_t prog, const rpcvers_t vers, + void (*dispatch)(struct svc_req *, SVCXPRT *), + const struct netconfig *nconf) { bool_t dummy; struct svc_callout *prev; @@ -245,9 +239,7 @@ rpcb_it: * Remove a service program from the callout list. */ void -svc_unreg(prog, vers) - const rpcprog_t prog; - const rpcvers_t vers; +svc_unreg(const rpcprog_t prog, const rpcvers_t vers) { struct svc_callout *prev; struct svc_callout *s; @@ -278,12 +270,9 @@ svc_unreg(prog, vers) * program number comes in. */ bool_t -svc_register(xprt, prog, vers, dispatch, protocol) - SVCXPRT *xprt; - u_long prog; - u_long vers; - void (*dispatch)(struct svc_req *, SVCXPRT *); - int protocol; +svc_register(SVCXPRT *xprt, u_long prog, u_long vers, + void (*dispatch)(struct svc_req *, SVCXPRT *), + int protocol) { struct svc_callout *prev; struct svc_callout *s; @@ -318,9 +307,7 @@ pmap_it: * Remove a service program from the callout list. */ void -svc_unregister(prog, vers) - u_long prog; - u_long vers; +svc_unregister(u_long prog, u_long vers) { struct svc_callout *prev; struct svc_callout *s; @@ -345,11 +332,8 @@ svc_unregister(prog, vers) * struct. */ static struct svc_callout * -svc_find(prog, vers, prev, netid) - rpcprog_t prog; - rpcvers_t vers; - struct svc_callout **prev; - char *netid; +svc_find(rpcprog_t prog, rpcvers_t vers, struct svc_callout **prev, + char *netid) { struct svc_callout *s, *p; @@ -373,10 +357,8 @@ svc_find(prog, vers, prev, netid) * Send a reply to an rpc request */ bool_t -svc_sendreply(xprt, xdr_results, xdr_location) - SVCXPRT *xprt; - xdrproc_t xdr_results; - void * xdr_location; +svc_sendreply(SVCXPRT *xprt, xdrproc_t xdr_results, + void * xdr_location) { struct rpc_msg rply; @@ -395,8 +377,7 @@ svc_sendreply(xprt, xdr_results, xdr_loc * No procedure error reply */ void -svcerr_noproc(xprt) - SVCXPRT *xprt; +svcerr_noproc(SVCXPRT *xprt) { struct rpc_msg rply; @@ -413,8 +394,7 @@ svcerr_noproc(xprt) * Can't decode args error reply */ void -svcerr_decode(xprt) - SVCXPRT *xprt; +svcerr_decode(SVCXPRT *xprt) { struct rpc_msg rply; @@ -431,8 +411,7 @@ svcerr_decode(xprt) * Some system error */ void -svcerr_systemerr(xprt) - SVCXPRT *xprt; +svcerr_systemerr(SVCXPRT *xprt) { struct rpc_msg rply; @@ -453,31 +432,27 @@ svcerr_systemerr(xprt) * protocol: the portmapper (or rpc binder). */ void -__svc_versquiet_on(xprt) - SVCXPRT *xprt; +__svc_versquiet_on(SVCXPRT *xprt) { SVC_EXT(xprt)->xp_flags |= SVC_VERSQUIET; } void -__svc_versquiet_off(xprt) - SVCXPRT *xprt; +__svc_versquiet_off(SVCXPRT *xprt) { SVC_EXT(xprt)->xp_flags &= ~SVC_VERSQUIET; } void -svc_versquiet(xprt) - SVCXPRT *xprt; +svc_versquiet(SVCXPRT *xprt) { __svc_versquiet_on(xprt); } int -__svc_versquiet_get(xprt) - SVCXPRT *xprt; +__svc_versquiet_get(SVCXPRT *xprt) { return (SVC_EXT(xprt)->xp_flags & SVC_VERSQUIET); @@ -488,9 +463,7 @@ __svc_versquiet_get(xprt) * Authentication error reply */ void -svcerr_auth(xprt, why) - SVCXPRT *xprt; - enum auth_stat why; +svcerr_auth(SVCXPRT *xprt, enum auth_stat why) { struct rpc_msg rply; @@ -507,8 +480,7 @@ svcerr_auth(xprt, why) * Auth too weak error reply */ void -svcerr_weakauth(xprt) - SVCXPRT *xprt; +svcerr_weakauth(SVCXPRT *xprt) { assert(xprt != NULL); @@ -520,8 +492,7 @@ svcerr_weakauth(xprt) * Program unavailable error reply */ void -svcerr_noprog(xprt) - SVCXPRT *xprt; +svcerr_noprog(SVCXPRT *xprt) { struct rpc_msg rply; @@ -538,10 +509,7 @@ svcerr_noprog(xprt) * Program version mismatch error reply */ void -svcerr_progvers(xprt, low_vers, high_vers) - SVCXPRT *xprt; - rpcvers_t low_vers; - rpcvers_t high_vers; +svcerr_progvers(SVCXPRT *xprt, rpcvers_t low_vers, rpcvers_t high_vers) { struct rpc_msg rply; @@ -563,7 +531,7 @@ svcerr_progvers(xprt, low_vers, high_ver * parameters. */ SVCXPRT * -svc_xprt_alloc() +svc_xprt_alloc(void) { SVCXPRT *xprt; SVCXPRT_EXT *ext; @@ -588,8 +556,7 @@ svc_xprt_alloc() * Free a server transport structure. */ void -svc_xprt_free(xprt) - SVCXPRT *xprt; +svc_xprt_free(SVCXPRT *xprt) { mem_free(xprt->xp_p3, sizeof(SVCXPRT_EXT)); @@ -615,8 +582,7 @@ svc_xprt_free(xprt) */ void -svc_getreq(rdfds) - int rdfds; +svc_getreq(int rdfds) { fd_set readfds; @@ -626,8 +592,7 @@ svc_getreq(rdfds) } void -svc_getreqset(readfds) - fd_set *readfds; +svc_getreqset(fd_set *readfds) { int bit, fd; fd_mask mask, *maskp; @@ -647,8 +612,7 @@ svc_getreqset(readfds) } void -svc_getreq_common(fd) - int fd; +svc_getreq_common(int fd) { SVCXPRT *xprt; struct svc_req r; @@ -743,9 +707,7 @@ call_done: void -svc_getreq_poll(pfdp, pollretval) - struct pollfd *pfdp; - int pollretval; +svc_getreq_poll(struct pollfd *pfdp, int pollretval) { int i; int fds_found; From owner-svn-src-head@freebsd.org Sun Sep 20 04:26:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CE2BBA05F3C; Sun, 20 Sep 2015 04:26:56 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BE6031192; Sun, 20 Sep 2015 04:26:56 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4QuKQ081019; Sun, 20 Sep 2015 04:26:56 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4QuKw081018; Sun, 20 Sep 2015 04:26:56 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200426.t8K4QuKw081018@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:26:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288018 - head/lib/libc/resolv X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:26:56 -0000 Author: rodrigc Date: Sun Sep 20 04:26:55 2015 New Revision: 288018 URL: https://svnweb.freebsd.org/changeset/base/288018 Log: Add declarations to eliminate -Wmissing-prototypes warnings Modified: head/lib/libc/resolv/h_errno.c Modified: head/lib/libc/resolv/h_errno.c ============================================================================== --- head/lib/libc/resolv/h_errno.c Sun Sep 20 04:23:16 2015 (r288017) +++ head/lib/libc/resolv/h_errno.c Sun Sep 20 04:26:55 2015 (r288018) @@ -33,6 +33,9 @@ #undef h_errno extern int h_errno; +int *__h_errno(void); +void __h_errno_set(res_state res, int err); + int * __h_errno(void) { From owner-svn-src-head@freebsd.org Sun Sep 20 04:59:04 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 71D26A03073; Sun, 20 Sep 2015 04:59:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 60B701E14; Sun, 20 Sep 2015 04:59:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8K4x4DW093168; Sun, 20 Sep 2015 04:59:04 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8K4x2RC093161; Sun, 20 Sep 2015 04:59:02 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509200459.t8K4x2RC093161@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 04:59:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288019 - in head/lib/libc: aarch64/gen amd64/gen arm/gen mips/gen powerpc/gen powerpc64/gen sparc64/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:59:04 -0000 Author: rodrigc Date: Sun Sep 20 04:59:01 2015 New Revision: 288019 URL: https://svnweb.freebsd.org/changeset/base/288019 Log: Add include for declaration of _set_tp(). Eliminates -Wmissing-prototypes warnings. Modified: head/lib/libc/aarch64/gen/_set_tp.c head/lib/libc/amd64/gen/_set_tp.c head/lib/libc/arm/gen/_set_tp.c head/lib/libc/mips/gen/_set_tp.c head/lib/libc/powerpc/gen/_set_tp.c head/lib/libc/powerpc64/gen/_set_tp.c head/lib/libc/sparc64/gen/_set_tp.c Modified: head/lib/libc/aarch64/gen/_set_tp.c ============================================================================== --- head/lib/libc/aarch64/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/aarch64/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include "libc_private.h" void _set_tp(void *tp) Modified: head/lib/libc/amd64/gen/_set_tp.c ============================================================================== --- head/lib/libc/amd64/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/amd64/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -29,6 +29,7 @@ #include #include #include +#include "libc_private.h" void _set_tp(void *tp) Modified: head/lib/libc/arm/gen/_set_tp.c ============================================================================== --- head/lib/libc/arm/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/arm/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -30,6 +30,7 @@ #include #include +#include "libc_private.h" void _set_tp(void *tp) Modified: head/lib/libc/mips/gen/_set_tp.c ============================================================================== --- head/lib/libc/mips/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/mips/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -30,6 +30,7 @@ #include #include +#include "libc_private.h" void _set_tp(void *tp) Modified: head/lib/libc/powerpc/gen/_set_tp.c ============================================================================== --- head/lib/libc/powerpc/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/powerpc/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -25,6 +25,7 @@ * * $FreeBSD$ */ +#include "libc_private.h" void _set_tp(void *tpval) Modified: head/lib/libc/powerpc64/gen/_set_tp.c ============================================================================== --- head/lib/libc/powerpc64/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/powerpc64/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -25,6 +25,7 @@ * * $FreeBSD$ */ +#include "libc_private.h" void _set_tp(void *tpval) Modified: head/lib/libc/sparc64/gen/_set_tp.c ============================================================================== --- head/lib/libc/sparc64/gen/_set_tp.c Sun Sep 20 04:26:55 2015 (r288018) +++ head/lib/libc/sparc64/gen/_set_tp.c Sun Sep 20 04:59:01 2015 (r288019) @@ -25,6 +25,7 @@ * * $FreeBSD$ */ +#include "libc_private.h" void _set_tp(void *tpval) From owner-svn-src-head@freebsd.org Sun Sep 20 10:40:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ECBF6A0223A; Sun, 20 Sep 2015 10:40:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DDA591D45; Sun, 20 Sep 2015 10:40:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KAeWO6033766; Sun, 20 Sep 2015 10:40:32 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KAeVZs033760; Sun, 20 Sep 2015 10:40:31 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509201040.t8KAeVZs033760@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 20 Sep 2015 10:40:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288020 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 10:40:33 -0000 Author: mav Date: Sun Sep 20 10:40:30 2015 New Revision: 288020 URL: https://svnweb.freebsd.org/changeset/base/288020 Log: Remove couple excess SGLIST I/O flags. Those flags duplicated respective (sg_entries > 0) values. Modified: head/sys/cam/ctl/ctl_backend_block.c head/sys/cam/ctl/ctl_backend_ramdisk.c head/sys/cam/ctl/ctl_frontend_ioctl.c head/sys/cam/ctl/ctl_io.h head/sys/cam/ctl/ctl_tpc_local.c head/sys/cam/ctl/ctl_util.c Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Sun Sep 20 04:59:01 2015 (r288019) +++ head/sys/cam/ctl/ctl_backend_block.c Sun Sep 20 10:40:30 2015 (r288020) @@ -1649,7 +1649,7 @@ ctl_be_block_dispatch(struct ctl_be_bloc io->scsiio.kern_data_len = beio->io_len; io->scsiio.kern_data_resid = 0; io->scsiio.kern_sg_entries = beio->num_segs; - io->io_hdr.flags |= CTL_FLAG_ALLOCATED | CTL_FLAG_KDPTR_SGLIST; + io->io_hdr.flags |= CTL_FLAG_ALLOCATED; /* * For the read case, we need to read the data into our buffers and Modified: head/sys/cam/ctl/ctl_backend_ramdisk.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_ramdisk.c Sun Sep 20 04:59:01 2015 (r288019) +++ head/sys/cam/ctl/ctl_backend_ramdisk.c Sun Sep 20 10:40:30 2015 (r288020) @@ -321,7 +321,6 @@ ctl_backend_ramdisk_continue(union ctl_i sg_entries[i].len = MIN(PAGE_SIZE, len - len_filled); len_filled += sg_entries[i].len; } - io->io_hdr.flags |= CTL_FLAG_KDPTR_SGLIST; } else { sg_filled = 0; len_filled = len; Modified: head/sys/cam/ctl/ctl_frontend_ioctl.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_ioctl.c Sun Sep 20 04:59:01 2015 (r288019) +++ head/sys/cam/ctl/ctl_frontend_ioctl.c Sun Sep 20 10:40:30 2015 (r288020) @@ -149,7 +149,7 @@ ctl_ioctl_do_datamove(struct ctl_scsiio * To simplify things here, if we have a single buffer, stick it in * a S/G entry and just make it a single entry S/G list. */ - if (ctsio->io_hdr.flags & CTL_FLAG_EDPTR_SGLIST) { + if (ctsio->ext_sg_entries > 0) { int len_seen; ext_sglen = ctsio->ext_sg_entries * sizeof(*ext_sglist); Modified: head/sys/cam/ctl/ctl_io.h ============================================================================== --- head/sys/cam/ctl/ctl_io.h Sun Sep 20 04:59:01 2015 (r288019) +++ head/sys/cam/ctl/ctl_io.h Sun Sep 20 10:40:30 2015 (r288020) @@ -88,8 +88,6 @@ typedef enum { CTL_FLAG_DATA_OUT = 0x00000002, /* DATA OUT */ CTL_FLAG_DATA_NONE = 0x00000003, /* no data */ CTL_FLAG_DATA_MASK = 0x00000003, - CTL_FLAG_KDPTR_SGLIST = 0x00000008, /* kern_data_ptr is S/G list*/ - CTL_FLAG_EDPTR_SGLIST = 0x00000010, /* ext_data_ptr is S/G list */ CTL_FLAG_DO_AUTOSENSE = 0x00000020, /* grab sense info */ CTL_FLAG_USER_REQ = 0x00000040, /* request came from userland */ CTL_FLAG_ALLOCATED = 0x00000100, /* data space allocated */ Modified: head/sys/cam/ctl/ctl_tpc_local.c ============================================================================== --- head/sys/cam/ctl/ctl_tpc_local.c Sun Sep 20 04:59:01 2015 (r288019) +++ head/sys/cam/ctl/ctl_tpc_local.c Sun Sep 20 10:40:30 2015 (r288020) @@ -162,7 +162,7 @@ tpcl_datamove(union ctl_io *io) * To simplify things here, if we have a single buffer, stick it in * a S/G entry and just make it a single entry S/G list. */ - if (ctsio->io_hdr.flags & CTL_FLAG_EDPTR_SGLIST) { + if (ctsio->ext_sg_entries > 0) { int len_seen; ext_sglist = (struct ctl_sg_entry *)ctsio->ext_data_ptr; Modified: head/sys/cam/ctl/ctl_util.c ============================================================================== --- head/sys/cam/ctl/ctl_util.c Sun Sep 20 04:59:01 2015 (r288019) +++ head/sys/cam/ctl/ctl_util.c Sun Sep 20 10:40:30 2015 (r288020) @@ -882,7 +882,7 @@ ctl_data_print(union ctl_io *io) return; if (io->io_hdr.flags & CTL_FLAG_BUS_ADDR) return; - if (io->io_hdr.flags & CTL_FLAG_EDPTR_SGLIST) /* XXX: Implement */ + if (io->scsiio.ext_sg_entries > 0) /* XXX: Implement */ return; ctl_scsi_path_string(io, path_str, sizeof(path_str)); len = min(io->scsiio.kern_data_len, 4096); From owner-svn-src-head@freebsd.org Sun Sep 20 11:39:20 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5F27F9CE5AC; Sun, 20 Sep 2015 11:39:20 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4F63013BF; Sun, 20 Sep 2015 11:39:20 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KBdKXc057909; Sun, 20 Sep 2015 11:39:20 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KBdK8V057908; Sun, 20 Sep 2015 11:39:20 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509201139.t8KBdK8V057908@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 20 Sep 2015 11:39:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288021 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 11:39:20 -0000 Author: mav Date: Sun Sep 20 11:39:19 2015 New Revision: 288021 URL: https://svnweb.freebsd.org/changeset/base/288021 Log: Mark with DMA flag I/Os waiting for iSCSI write data after R2T. Reads and immediate writes are not blocking, so don't bother. Modified: head/sys/cam/ctl/ctl_frontend_iscsi.c Modified: head/sys/cam/ctl/ctl_frontend_iscsi.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_iscsi.c Sun Sep 20 10:40:30 2015 (r288020) +++ head/sys/cam/ctl/ctl_frontend_iscsi.c Sun Sep 20 11:39:19 2015 (r288021) @@ -966,6 +966,7 @@ cfiscsi_pdu_handle_data_out(struct icl_p done = (io->scsiio.ext_data_filled != cdw->cdw_r2t_end || io->scsiio.ext_data_filled == io->scsiio.kern_data_len); cfiscsi_data_wait_free(cs, cdw); + io->io_hdr.flags &= ~CTL_FLAG_DMA_INPROG; if (done) io->scsiio.be_move_done(io); else @@ -1178,6 +1179,7 @@ cfiscsi_session_terminate_tasks(struct c * assuming that the data transfer actually succeeded * and writing uninitialized data to disk. */ + cdw->cdw_ctl_io->io_hdr.flags &= ~CTL_FLAG_DMA_INPROG; cdw->cdw_ctl_io->scsiio.io_hdr.port_status = 42; cdw->cdw_ctl_io->scsiio.be_move_done(cdw->cdw_ctl_io); cfiscsi_data_wait_free(cs, cdw); @@ -2738,6 +2740,7 @@ cfiscsi_datamove_out(union ctl_io *io) cfiscsi_session_terminate(cs); return; } + io->io_hdr.flags |= CTL_FLAG_DMA_INPROG; bhsr2t = (struct iscsi_bhs_r2t *)response->ip_bhs; bhsr2t->bhsr2t_opcode = ISCSI_BHS_OPCODE_R2T; bhsr2t->bhsr2t_flags = 0x80; @@ -2914,6 +2917,8 @@ cfiscsi_task_management_done(union ctl_i #endif TAILQ_REMOVE(&cs->cs_waiting_for_data_out, cdw, cdw_next); + io->io_hdr.flags &= ~CTL_FLAG_DMA_INPROG; + cdw->cdw_ctl_io->scsiio.io_hdr.port_status = 43; cdw->cdw_ctl_io->scsiio.be_move_done(cdw->cdw_ctl_io); cfiscsi_data_wait_free(cs, cdw); } From owner-svn-src-head@freebsd.org Sun Sep 20 04:26:10 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4FDACA05EE1; Sun, 20 Sep 2015 04:26:10 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 3AD6B10A0; Sun, 20 Sep 2015 04:26:10 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1033) id 3A1B01624; Sun, 20 Sep 2015 04:26:10 +0000 (UTC) Date: Sun, 20 Sep 2015 04:26:10 +0000 From: Alexey Dokuchaev To: Adrian Chadd Cc: Bruce Simpson , Hans Petter Selasky , "src-committers@freebsd.org" , Ian Lepore , George Neville-Neil , David Chisnall , Gleb Smirnoff , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" Subject: Re: svn commit: r287780 - in head: share/man/man9 sys/kern sys/sys Message-ID: <20150920042609.GA28414@FreeBSD.org> References: <201509141052.t8EAqRWf008293@repo.freebsd.org> <20150916220559.GS1023@FreeBSD.org> <55FA69BD.10507@selasky.org> <0952027A-5276-487D-99B8-74747B0EEF5D@FreeBSD.org> <55FD23C5.5010008@selasky.org> <64D8263B-1F5D-40E5-994C-479C39B69DC9@neville-neil.com> <1442684369.1224.179.camel@freebsd.org> <55FDA1E7.8050007@fastmail.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-Mailman-Approved-At: Sun, 20 Sep 2015 11:40:24 +0000 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 04:26:10 -0000 On Sat, Sep 19, 2015 at 06:38:46PM -0700, Adrian Chadd wrote: > [...] > Hans - personally, I think you should've emailed out a review request > on freebsd-arch@ and put out a request for testers and give a firm date > that you'll commit it. That makes it all very explicit. I agree with general idea of important differentials to be announced on a mail list. There were probably more than one case when interested people did not know about a DR because they were not put on a revievers list and could only comment on the actual commit. ./danfe From owner-svn-src-head@freebsd.org Sun Sep 20 02:19:51 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3C4D8A02E2E; Sun, 20 Sep 2015 02:19:51 +0000 (UTC) (envelope-from hiren@strugglingcoder.info) Received: from mail.strugglingcoder.info (strugglingcoder.info [65.19.130.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.strugglingcoder.info", Issuer "mail.strugglingcoder.info" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 1C9141137; Sun, 20 Sep 2015 02:19:50 +0000 (UTC) (envelope-from hiren@strugglingcoder.info) Received: from localhost (unknown [10.1.1.3]) (Authenticated sender: hiren@strugglingcoder.info) by mail.strugglingcoder.info (Postfix) with ESMTPA id 7E738C0997; Sat, 19 Sep 2015 19:19:43 -0700 (PDT) Date: Sat, 19 Sep 2015 19:19:43 -0700 From: hiren panchasara To: Adrian Chadd Cc: Bruce Simpson , Ian Lepore , George Neville-Neil , Hans Petter Selasky , David Chisnall , Gleb Smirnoff , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r287780 - in head: share/man/man9 sys/kern sys/sys Message-ID: <20150920021943.GK62855@strugglingcoder.info> References: <201509141052.t8EAqRWf008293@repo.freebsd.org> <20150916220559.GS1023@FreeBSD.org> <55FA69BD.10507@selasky.org> <0952027A-5276-487D-99B8-74747B0EEF5D@FreeBSD.org> <55FD23C5.5010008@selasky.org> <64D8263B-1F5D-40E5-994C-479C39B69DC9@neville-neil.com> <1442684369.1224.179.camel@freebsd.org> <55FDA1E7.8050007@fastmail.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="RD6GsZsdEJvsf78O" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) X-Mailman-Approved-At: Sun, 20 Sep 2015 11:40:24 +0000 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 02:19:51 -0000 --RD6GsZsdEJvsf78O Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Couldn't have said this any better. On 09/19/15 at 06:38P, Adrian Chadd wrote: > What isn't necessarily public knowledge is the sheer volume of emails > that went out a few months ago whilst chasing down callout and tcp > bugs. There were (and maybe still are) very subtle bugs in the callout > system and after a few attempts at fixing them there were some very > careful bug fixes made. Some attempts failed, I think a couple of > successful ones made it into the tree. jch@ and hans have been working on callout lately. Both collaborate on reviews/commits, take each other's suggestions and catch each other's mistakes. In this particular instance, rrs@ didn't like the change and he asked some questions. Hans responded to that. Which is pretty normal for this list. What I do not understand is, why is everyone coming out with "please revert right away"?? >=20 > Yes, this whole callout system is very delicate at the moment. hps@ > has some very specific ideas of how the API should behave in order to > be predictable/reasoning-able (and I agree with him about almost all > of it, even though it makes RSS painful, but that's because of our TCP > stack and how we use callouts, not because its his fault!) but it's a > pretty big fundamental change to how things currently work and he was > shot down. I think people are just very weary of new changes. >=20 > On the flip side, he did actively solicit reviews - rrs, kib, hiren, > jhb, wblock and jch were included in the review request, which dates > back to August 28. He gave people a little short of three weeks for > review before he committed the code. So as much as I'm cautious about > things (and it gets me in trouble at work, hi alfred!) I think he did > the right thing here - he added a new thing, documented it, solicited > a review, and it timed out. If people would like more time to review > it then fine, but please give him either a firm "no, not ever" right > now and be honest about your intentions, or give him a timeframe that > you'll review it before it times out. In principle, jch@ agreed to the review/change in question so it'd be incorrect to say that hans made this changes without anyone's knowledge. Now, without any other reviewers commenting on the review or asking him to wait for the review for 3 weeks, how long should he have waited before committing the changes? >=20 > Hans - personally, I think you should've emailed out a review request > on freebsd-arch@ and put out a request for testers and give a firm > date that you'll commit it. That makes it all very explicit. >=20 That indeed would have made things clearer. Hans - if you think that questions raised by Randall would take more iterations to get answered, please revert the change and discuss it on the review you already have opened for this issue. Also, try and get explicit YES/APPROVED on callout related reviews from jch, rrs and others. (Others: please speak up so hans can add you to this review and future reviews.) > People channel phrases involving silence and agreement and all that; > this is one of those times it happened. Cheers, Hiren --RD6GsZsdEJvsf78O Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQF8BAABCgBmBQJV/he8XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRBNEUyMEZBMUQ4Nzg4RjNGMTdFNjZGMDI4 QjkyNTBFMTU2M0VERkU1AAoJEIuSUOFWPt/lJXMIAJ3IDkqq5GgxVzTvWfnHhGji m0Wc79uMllceQzWsfeazFxpd7TZCv16cIh+4/7QkQOfUfm3wpPn908PUTT54dTKt Gy116AJd9Grb9EO7y5e04LkvIrIcmC3eXyQ6vMh7hnUSU1RGoZCmYdOlpluDeKqQ Po9XQjcGzp6YObKO/vPxT2SLM1SV44lAMm1V0ZV2NcZ2peELBXcvhtcYs0A2XOon gZC8rtHDLY4x39yQWcG8FPsPGs929dyA3Ynm+kkr8M6ud0nJMSSf30UEHENEzOr/ zCB5o9jzamegXspaqkLqsFAs9VCs09oZlA7sSqS/oAy39Of0+dSeD+50vOlrVQU= =mGwx -----END PGP SIGNATURE----- --RD6GsZsdEJvsf78O-- From owner-svn-src-head@freebsd.org Sun Sep 20 08:48:18 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 91CC3A033B1; Sun, 20 Sep 2015 08:48:18 +0000 (UTC) (envelope-from hps@selasky.org) Received: from mail.turbocat.net (mail.turbocat.net [IPv6:2a01:4f8:d16:4514::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 521F61FBC; Sun, 20 Sep 2015 08:48:18 +0000 (UTC) (envelope-from hps@selasky.org) Received: from laptop015.home.selasky.org (cm-176.74.213.204.customer.telag.net [176.74.213.204]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.turbocat.net (Postfix) with ESMTPSA id 57E091FE023; Sun, 20 Sep 2015 10:48:15 +0200 (CEST) Subject: Re: svn commit: r287780 - in head: share/man/man9 sys/kern sys/sys To: Alexey Dokuchaev , Adrian Chadd References: <201509141052.t8EAqRWf008293@repo.freebsd.org> <20150916220559.GS1023@FreeBSD.org> <55FA69BD.10507@selasky.org> <0952027A-5276-487D-99B8-74747B0EEF5D@FreeBSD.org> <55FD23C5.5010008@selasky.org> <64D8263B-1F5D-40E5-994C-479C39B69DC9@neville-neil.com> <1442684369.1224.179.camel@freebsd.org> <55FDA1E7.8050007@fastmail.net> <20150920042609.GA28414@FreeBSD.org> Cc: Bruce Simpson , "src-committers@freebsd.org" , Ian Lepore , George Neville-Neil , David Chisnall , Gleb Smirnoff , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" From: Hans Petter Selasky Message-ID: <55FE732E.1010305@selasky.org> Date: Sun, 20 Sep 2015 10:49:50 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: <20150920042609.GA28414@FreeBSD.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Mailman-Approved-At: Sun, 20 Sep 2015 11:40:24 +0000 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 08:48:18 -0000 On 09/20/15 06:26, Alexey Dokuchaev wrote: > On Sat, Sep 19, 2015 at 06:38:46PM -0700, Adrian Chadd wrote: >> [...] >> Hans - personally, I think you should've emailed out a review request >> on freebsd-arch@ and put out a request for testers and give a firm date >> that you'll commit it. That makes it all very explicit. > > I agree with general idea of important differentials to be announced on a > mail list. There were probably more than one case when interested people > did not know about a DR because they were not put on a revievers list and > could only comment on the actual commit. > Hi, I've put up a discussion about the FreeBSD's callout subsystem at the coming EuroBSDcon2015 devsummit (approved by Erwin) See: https://wiki.freebsd.org/201510DevSummit Bruce: The code in question is currently so-called dead, already stated several times (davide@) and I see no point to revert right away. Nobody is physically burning because of this change from what I can see. No crashes, no panics. And jch@ wants to test it. I will let some days pass so that the many questions arising in this thread can be properly answered and addressed, because some people are at sleep while others are online and also it is weekend, and some people might be aways from their computers. Alexey+hiren+adrian: You are right about freebsd-arch@. I will put up more stuff at freebsd-arch@ . I thought Phabricator was enough for this change. ian+george+glebius: Being an active kernel developer, growing out of the "USB box" as some have said, it is really frustrating to learn the new non-USB driving rules. I agree with Ian that core should clarify the requirement of pre-commit reviews when not stated in MAINTAINERS for regular FreeBSD kernel developers, to avoid discrimination among the kernel developers. hiren: jch@, wrote in a comment in Phabricator he wanted to approve the change, so it is not fully true that no other kernel developers approved the change, for that matter. --HPS From owner-svn-src-head@freebsd.org Sun Sep 20 13:15:10 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 45E7CA02CA0; Sun, 20 Sep 2015 13:15:10 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 364EA121D; Sun, 20 Sep 2015 13:15:10 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KDFARE099190; Sun, 20 Sep 2015 13:15:10 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KDFAbP099189; Sun, 20 Sep 2015 13:15:10 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201509201315.t8KDFAbP099189@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Sun, 20 Sep 2015 13:15:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288022 - head/sys/dev/dwc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 13:15:10 -0000 Author: loos Date: Sun Sep 20 13:15:09 2015 New Revision: 288022 URL: https://svnweb.freebsd.org/changeset/base/288022 Log: Remove unnecessary includes and, while here, sort them. Modified: head/sys/dev/dwc/if_dwc.c Modified: head/sys/dev/dwc/if_dwc.c ============================================================================== --- head/sys/dev/dwc/if_dwc.c Sun Sep 20 11:39:19 2015 (r288021) +++ head/sys/dev/dwc/if_dwc.c Sun Sep 20 13:15:09 2015 (r288022) @@ -43,21 +43,14 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include -#include -#include -#include #include +#include #include +#include #include +#include #include #include -#include - -#include -#include -#include -#include #include #include @@ -66,13 +59,15 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include -#include +#include #include #include +#include +#include + #include "miibus_if.h" #define READ4(_sc, _reg) \ @@ -85,8 +80,6 @@ __FBSDID("$FreeBSD$"); #define STATS_HARVEST_INTERVAL 2 #define MII_CLK_VAL 2 -#include - #define DWC_LOCK(sc) mtx_lock(&(sc)->mtx) #define DWC_UNLOCK(sc) mtx_unlock(&(sc)->mtx) #define DWC_ASSERT_LOCKED(sc) mtx_assert(&(sc)->mtx, MA_OWNED) From owner-svn-src-head@freebsd.org Sun Sep 20 14:13:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 302759CFB57; Sun, 20 Sep 2015 14:13:32 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1D428188B; Sun, 20 Sep 2015 14:13:32 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KEDVq9023575; Sun, 20 Sep 2015 14:13:31 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KEDUv1023569; Sun, 20 Sep 2015 14:13:30 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201509201413.t8KEDUv1023569@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Sun, 20 Sep 2015 14:13:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288023 - in head/sys: arm/altera/socfpga arm/amlogic/aml8726 conf dev/dwc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 14:13:32 -0000 Author: loos Date: Sun Sep 20 14:13:29 2015 New Revision: 288023 URL: https://svnweb.freebsd.org/changeset/base/288023 Log: Add alternate descriptors support for if_dwc. This also adds a newbus interface that allows a SoC to override the following settings: - if_dwc specific SoC initialization; - if_dwc descriptor type; - if_dwc MII clock. This seems to be an old version of the hardware descriptors but it is still in use in a few SoCs (namely Allwinner A20 and Amlogic at least). Tested on Cubieboard2 and Banana pi. Tested for regressions on Altera Cyclone by br@ (old version). Obtained from: NetBSD Added: head/sys/dev/dwc/if_dwc_if.m (contents, props changed) head/sys/dev/dwc/if_dwcvar.h (contents, props changed) Modified: head/sys/arm/altera/socfpga/files.socfpga head/sys/arm/amlogic/aml8726/files.aml8726 head/sys/conf/files.arm head/sys/dev/dwc/if_dwc.c Modified: head/sys/arm/altera/socfpga/files.socfpga ============================================================================== --- head/sys/arm/altera/socfpga/files.socfpga Sun Sep 20 13:15:09 2015 (r288022) +++ head/sys/arm/altera/socfpga/files.socfpga Sun Sep 20 14:13:29 2015 (r288023) @@ -15,7 +15,6 @@ arm/altera/socfpga/socfpga_rstmgr.c sta arm/altera/socfpga/socfpga_mp.c optional smp arm/altera/socfpga/socfpga_gpio.c optional gpio -dev/dwc/if_dwc.c optional dwc dev/mii/micphy.c optional micphy dev/mmc/host/dwmmc.c optional dwmmc Modified: head/sys/arm/amlogic/aml8726/files.aml8726 ============================================================================== --- head/sys/arm/amlogic/aml8726/files.aml8726 Sun Sep 20 13:15:09 2015 (r288022) +++ head/sys/arm/amlogic/aml8726/files.aml8726 Sun Sep 20 14:13:29 2015 (r288023) @@ -32,5 +32,3 @@ arm/amlogic/aml8726/aml8726_pinctrl.c o arm/amlogic/aml8726/uart_dev_aml8726.c optional uart arm/amlogic/aml8726/aml8726_usb_phy-m3.c optional dwcotg usb gpio arm/amlogic/aml8726/aml8726_usb_phy-m6.c optional dwcotg usb gpio - -dev/dwc/if_dwc.c optional dwc Modified: head/sys/conf/files.arm ============================================================================== --- head/sys/conf/files.arm Sun Sep 20 13:15:09 2015 (r288022) +++ head/sys/conf/files.arm Sun Sep 20 14:13:29 2015 (r288023) @@ -84,6 +84,8 @@ cddl/dev/dtrace/arm/dtrace_subr.c opti cddl/dev/fbt/arm/fbt_isa.c optional dtrace_fbt | dtraceall compile-with "${FBT_C}" crypto/blowfish/bf_enc.c optional crypto | ipsec crypto/des/des_enc.c optional crypto | ipsec | netsmb +dev/dwc/if_dwc.c optional dwc +dev/dwc/if_dwc_if.m optional dwc dev/fb/fb.c optional sc dev/fdt/fdt_arm_platform.c optional platform fdt dev/hwpmc/hwpmc_arm.c optional hwpmc Modified: head/sys/dev/dwc/if_dwc.c ============================================================================== --- head/sys/dev/dwc/if_dwc.c Sun Sep 20 13:15:09 2015 (r288022) +++ head/sys/dev/dwc/if_dwc.c Sun Sep 20 14:13:29 2015 (r288023) @@ -63,11 +63,13 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include #include +#include "if_dwc_if.h" #include "miibus_if.h" #define READ4(_sc, _reg) \ @@ -78,7 +80,6 @@ __FBSDID("$FreeBSD$"); #define MAC_RESET_TIMEOUT 100 #define WATCHDOG_TIMEOUT_SECS 5 #define STATS_HARVEST_INTERVAL 2 -#define MII_CLK_VAL 2 #define DWC_LOCK(sc) mtx_lock(&(sc)->mtx) #define DWC_UNLOCK(sc) mtx_unlock(&(sc)->mtx) @@ -98,77 +99,34 @@ __FBSDID("$FreeBSD$"); #define DDESC_RDES0_FL_SHIFT 16 /* Frame Length */ #define DDESC_RDES1_CHAINED (1U << 14) -struct dwc_bufmap { - bus_dmamap_t map; - struct mbuf *mbuf; -}; +/* Alt descriptor bits. */ +#define DDESC_CNTL_TXINT (1U << 31) +#define DDESC_CNTL_TXLAST (1U << 30) +#define DDESC_CNTL_TXFIRST (1U << 29) +#define DDESC_CNTL_TXCRCDIS (1U << 26) +#define DDESC_CNTL_TXRINGEND (1U << 25) +#define DDESC_CNTL_TXCHAIN (1U << 24) + +#define DDESC_CNTL_CHAINED (1U << 24) /* * A hardware buffer descriptor. Rx and Tx buffers have the same descriptor - * layout, but the bits in the flags field have different meanings. + * layout, but the bits in the fields have different meanings. */ struct dwc_hwdesc { - uint32_t tdes0; - uint32_t tdes1; + uint32_t tdes0; /* status for alt layout */ + uint32_t tdes1; /* cntl for alt layout */ uint32_t addr; /* pointer to buffer data */ uint32_t addr_next; /* link to next descriptor */ }; /* - * Driver data and defines. - */ -#define RX_DESC_COUNT 1024 -#define RX_DESC_SIZE (sizeof(struct dwc_hwdesc) * RX_DESC_COUNT) -#define TX_DESC_COUNT 1024 -#define TX_DESC_SIZE (sizeof(struct dwc_hwdesc) * TX_DESC_COUNT) - -/* * The hardware imposes alignment restrictions on various objects involved in * DMA transfers. These values are expressed in bytes (not bits). */ #define DWC_DESC_RING_ALIGN 2048 -struct dwc_softc { - struct resource *res[2]; - bus_space_tag_t bst; - bus_space_handle_t bsh; - device_t dev; - int mii_clk; - device_t miibus; - struct mii_data * mii_softc; - struct ifnet *ifp; - int if_flags; - struct mtx mtx; - void * intr_cookie; - struct callout dwc_callout; - boolean_t link_is_up; - boolean_t is_attached; - boolean_t is_detaching; - int tx_watchdog_count; - int stats_harvest_count; - - /* RX */ - bus_dma_tag_t rxdesc_tag; - bus_dmamap_t rxdesc_map; - struct dwc_hwdesc *rxdesc_ring; - bus_addr_t rxdesc_ring_paddr; - bus_dma_tag_t rxbuf_tag; - struct dwc_bufmap rxbuf_map[RX_DESC_COUNT]; - uint32_t rx_idx; - - /* TX */ - bus_dma_tag_t txdesc_tag; - bus_dmamap_t txdesc_map; - struct dwc_hwdesc *txdesc_ring; - bus_addr_t txdesc_ring_paddr; - bus_dma_tag_t txbuf_tag; - struct dwc_bufmap txbuf_map[RX_DESC_COUNT]; - uint32_t tx_idx_head; - uint32_t tx_idx_tail; - int txcount; -}; - static struct resource_spec dwc_spec[] = { { SYS_RES_MEMORY, 0, RF_ACTIVE }, { SYS_RES_IRQ, 0, RF_ACTIVE }, @@ -217,14 +175,23 @@ dwc_setup_txdesc(struct dwc_softc *sc, i flags = 0; --sc->txcount; } else { - flags = DDESC_TDES0_TXCHAIN | DDESC_TDES0_TXFIRST - | DDESC_TDES0_TXLAST | DDESC_TDES0_TXINT; + if (sc->mactype == DWC_GMAC_ALT_DESC) + flags = DDESC_CNTL_TXCHAIN | DDESC_CNTL_TXFIRST + | DDESC_CNTL_TXLAST | DDESC_CNTL_TXINT; + else + flags = DDESC_TDES0_TXCHAIN | DDESC_TDES0_TXFIRST + | DDESC_TDES0_TXLAST | DDESC_TDES0_TXINT; ++sc->txcount; } sc->txdesc_ring[idx].addr = (uint32_t)(paddr); - sc->txdesc_ring[idx].tdes0 = flags; - sc->txdesc_ring[idx].tdes1 = len; + if (sc->mactype == DWC_GMAC_ALT_DESC) { + sc->txdesc_ring[idx].tdes0 = 0; + sc->txdesc_ring[idx].tdes1 = flags | len; + } else { + sc->txdesc_ring[idx].tdes0 = flags; + sc->txdesc_ring[idx].tdes1 = len; + } if (paddr && len) { wmb(); @@ -497,7 +464,10 @@ dwc_setup_rxdesc(struct dwc_softc *sc, i nidx = next_rxidx(sc, idx); sc->rxdesc_ring[idx].addr_next = sc->rxdesc_ring_paddr + \ (nidx * sizeof(struct dwc_hwdesc)); - sc->rxdesc_ring[idx].tdes1 = DDESC_RDES1_CHAINED | MCLBYTES; + if (sc->mactype == DWC_GMAC_ALT_DESC) + sc->rxdesc_ring[idx].tdes1 = DDESC_CNTL_CHAINED | RX_MAX_PACKET; + else + sc->rxdesc_ring[idx].tdes1 = DDESC_RDES1_CHAINED | MCLBYTES; wmb(); sc->rxdesc_ring[idx].tdes0 = DDESC_RDES0_OWN; @@ -1065,10 +1035,13 @@ dwc_attach(device_t dev) sc = device_get_softc(dev); sc->dev = dev; - sc->mii_clk = MII_CLK_VAL; sc->rx_idx = 0; - sc->txcount = TX_DESC_COUNT; + sc->mii_clk = IF_DWC_MII_CLK(dev); + sc->mactype = IF_DWC_MAC_TYPE(dev); + + if (IF_DWC_INIT(dev) != 0) + return (ENXIO); if (bus_alloc_resources(dev, dwc_spec, sc->res)) { device_printf(dev, "could not allocate resources\n"); @@ -1100,8 +1073,11 @@ dwc_attach(device_t dev) return (ENXIO); } - reg = READ4(sc, BUS_MODE); - reg |= (BUS_MODE_EIGHTXPBL); + if (sc->mactype == DWC_GMAC_ALT_DESC) { + reg = BUS_MODE_FIXEDBURST; + reg |= (BUS_MODE_PRIORXTX_41 << BUS_MODE_PRIORXTX_SHIFT); + } else + reg = (BUS_MODE_EIGHTXPBL); reg |= (BUS_MODE_PBL_BEATS_8 << BUS_MODE_PBL_SHIFT); WRITE4(sc, BUS_MODE, reg); @@ -1146,7 +1122,6 @@ dwc_attach(device_t dev) IFQ_SET_MAXLEN(&ifp->if_snd, TX_DESC_COUNT - 1); ifp->if_snd.ifq_drv_maxlen = TX_DESC_COUNT - 1; IFQ_SET_READY(&ifp->if_snd); - ifp->if_hdrlen = sizeof(struct ether_vlan_header); /* Attach the mii driver. */ error = mii_attach(dev, &sc->miibus, ifp, dwc_media_change, @@ -1285,7 +1260,7 @@ static device_method_t dwc_methods[] = { { 0, 0 } }; -static driver_t dwc_driver = { +driver_t dwc_driver = { "dwc", dwc_methods, sizeof(struct dwc_softc), Added: head/sys/dev/dwc/if_dwc_if.m ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/dwc/if_dwc_if.m Sun Sep 20 14:13:29 2015 (r288023) @@ -0,0 +1,76 @@ +#- +# Copyright (c) 2015 Luiz Otavio O Souza +# Copyright (c) 2014 Ruslan Bukin +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD$ +# + +INTERFACE if_dwc; + +#include + +CODE { + static int + if_dwc_default_init(device_t dev) + { + return (0); + } + + static int + if_dwc_default_mac_type(device_t dev) + { + return (DWC_GMAC); + } + + static int + if_dwc_default_mii_clk(device_t dev) + { + return (GMAC_MII_CLK_25_35M_DIV16); + } +}; + +HEADER { +}; + +# +# Initialize the SoC specific registers. +# +METHOD int init { + device_t dev; +} DEFAULT if_dwc_default_init; + +# +# Return the DWC MAC type (descriptor type). +# +METHOD int mac_type { + device_t dev; +} DEFAULT if_dwc_default_mac_type; + +# +# Return the DWC MII clock for a specific hardware. +# +METHOD int mii_clk { + device_t dev; +} DEFAULT if_dwc_default_mii_clk; Added: head/sys/dev/dwc/if_dwcvar.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/dwc/if_dwcvar.h Sun Sep 20 14:13:29 2015 (r288023) @@ -0,0 +1,99 @@ +/*- + * Copyright (c) 2014 Ruslan Bukin + * All rights reserved. + * + * This software was developed by SRI International and the University of + * Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) + * ("CTSRD"), as part of the DARPA CRASH research programme. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +/* + * Ethernet media access controller (EMAC) + * Chapter 17, Altera Cyclone V Device Handbook (CV-5V2 2014.07.22) + * + * EMAC is an instance of the Synopsys DesignWare 3504-0 + * Universal 10/100/1000 Ethernet MAC (DWC_gmac). + */ + +#ifndef __IF_DWCVAR_H__ +#define __IF_DWCVAR_H__ + +/* + * Driver data and defines. + */ +#define RX_MAX_PACKET 0x7ff +#define RX_DESC_COUNT 1024 +#define RX_DESC_SIZE (sizeof(struct dwc_hwdesc) * RX_DESC_COUNT) +#define TX_DESC_COUNT 1024 +#define TX_DESC_SIZE (sizeof(struct dwc_hwdesc) * TX_DESC_COUNT) + +struct dwc_bufmap { + bus_dmamap_t map; + struct mbuf *mbuf; +}; + +struct dwc_softc { + struct resource *res[2]; + bus_space_tag_t bst; + bus_space_handle_t bsh; + device_t dev; + int mactype; + int mii_clk; + device_t miibus; + struct mii_data * mii_softc; + struct ifnet *ifp; + int if_flags; + struct mtx mtx; + void * intr_cookie; + struct callout dwc_callout; + boolean_t link_is_up; + boolean_t is_attached; + boolean_t is_detaching; + int tx_watchdog_count; + int stats_harvest_count; + + /* RX */ + bus_dma_tag_t rxdesc_tag; + bus_dmamap_t rxdesc_map; + struct dwc_hwdesc *rxdesc_ring; + bus_addr_t rxdesc_ring_paddr; + bus_dma_tag_t rxbuf_tag; + struct dwc_bufmap rxbuf_map[RX_DESC_COUNT]; + uint32_t rx_idx; + + /* TX */ + bus_dma_tag_t txdesc_tag; + bus_dmamap_t txdesc_map; + struct dwc_hwdesc *txdesc_ring; + bus_addr_t txdesc_ring_paddr; + bus_dma_tag_t txbuf_tag; + struct dwc_bufmap txbuf_map[RX_DESC_COUNT]; + uint32_t tx_idx_head; + uint32_t tx_idx_tail; + int txcount; +}; + +#endif /* __IF_DWCVAR_H__ */ From owner-svn-src-head@freebsd.org Sun Sep 20 14:28:07 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8E68EA051CD; Sun, 20 Sep 2015 14:28:07 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5EEAC1E9B; Sun, 20 Sep 2015 14:28:07 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KES7iI027886; Sun, 20 Sep 2015 14:28:07 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KES7ag027885; Sun, 20 Sep 2015 14:28:07 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201509201428.t8KES7ag027885@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Sun, 20 Sep 2015 14:28:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288024 - head/sys/dev/dwc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 14:28:07 -0000 Author: loos Date: Sun Sep 20 14:28:06 2015 New Revision: 288024 URL: https://svnweb.freebsd.org/changeset/base/288024 Log: Fix the build by adding the alternate descriptors and MII clock defines. This obviously should be in the last commit. Modified: head/sys/dev/dwc/if_dwc.h Modified: head/sys/dev/dwc/if_dwc.h ============================================================================== --- head/sys/dev/dwc/if_dwc.h Sun Sep 20 14:13:29 2015 (r288023) +++ head/sys/dev/dwc/if_dwc.h Sun Sep 20 14:28:06 2015 (r288024) @@ -34,6 +34,9 @@ * Register names were taken almost as is from the documentation. */ +#ifndef __IF_DWC_H__ +#define __IF_DWC_H__ + #define MAC_CONFIGURATION 0x0 #define CONF_JD (1 << 22) /* jabber timer disable */ #define CONF_BE (1 << 21) /* Frame Burst Enable */ @@ -207,6 +210,12 @@ /* DMA */ #define BUS_MODE 0x1000 #define BUS_MODE_EIGHTXPBL (1 << 24) /* Multiplies PBL by 8 */ +#define BUS_MODE_FIXEDBURST (1 << 16) +#define BUS_MODE_PRIORXTX_SHIFT 14 +#define BUS_MODE_PRIORXTX_41 3 +#define BUS_MODE_PRIORXTX_31 2 +#define BUS_MODE_PRIORXTX_21 1 +#define BUS_MODE_PRIORXTX_11 0 #define BUS_MODE_PBL_SHIFT 8 /* Single block transfer size */ #define BUS_MODE_PBL_BEATS_8 8 #define BUS_MODE_SWR (1 << 0) /* Reset */ @@ -260,3 +269,22 @@ #define CURRENT_HOST_TRANSMIT_BUF_ADDR 0x1050 #define CURRENT_HOST_RECEIVE_BUF_ADDR 0x1054 #define HW_FEATURE 0x1058 + +#define DWC_GMAC 0x1 +#define DWC_GMAC_ALT_DESC 0x2 +#define GMAC_MII_CLK_60_100M_DIV42 0x0 +#define GMAC_MII_CLK_100_150M_DIV62 0x1 +#define GMAC_MII_CLK_25_35M_DIV16 0x2 +#define GMAC_MII_CLK_35_60M_DIV26 0x3 +#define GMAC_MII_CLK_150_250M_DIV102 0x4 +#define GMAC_MII_CLK_250_300M_DIV124 0x5 +#define GMAC_MII_CLK_DIV4 0x8 +#define GMAC_MII_CLK_DIV6 0x9 +#define GMAC_MII_CLK_DIV8 0xa +#define GMAC_MII_CLK_DIV10 0xb +#define GMAC_MII_CLK_DIV12 0xc +#define GMAC_MII_CLK_DIV14 0xd +#define GMAC_MII_CLK_DIV16 0xe +#define GMAC_MII_CLK_DIV18 0xf + +#endif /* __IF_DWC_H__ */ From owner-svn-src-head@freebsd.org Sun Sep 20 19:20:04 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 857A09D06DC; Sun, 20 Sep 2015 19:20:04 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4455915E2; Sun, 20 Sep 2015 19:20:04 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KJK4Ch048410; Sun, 20 Sep 2015 19:20:04 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KJK4I3048409; Sun, 20 Sep 2015 19:20:04 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201509201920.t8KJK4I3048409@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sun, 20 Sep 2015 19:20:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288025 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 19:20:04 -0000 Author: alc Date: Sun Sep 20 19:20:03 2015 New Revision: 288025 URL: https://svnweb.freebsd.org/changeset/base/288025 Log: Correct a non-fatal error in vm_pageout_worker(). vm_pageout_worker() should not assume that vm_pages_needed will remain set while it sleeps. Other threads can clear vm_pages_needed by performing a sufficient number of vm_page_free() calls, e.g., process termination. The effect of this error was that vm_pageout_worker() would free and/or launder pages when, in fact, there was no shortage of free pages. Rewrite a nearby comment to describe all of the possible cases and not just the most common case. The problem being that the comment made the most common case seem like the only case. Reviewed by: kib MFC after: 1 week Sponsored by: EMC / Isilon Storage Division Modified: head/sys/vm/vm_pageout.c Modified: head/sys/vm/vm_pageout.c ============================================================================== --- head/sys/vm/vm_pageout.c Sun Sep 20 14:28:06 2015 (r288024) +++ head/sys/vm/vm_pageout.c Sun Sep 20 19:20:03 2015 (r288025) @@ -1638,9 +1638,15 @@ vm_pageout_worker(void *arg) } if (vm_pages_needed) { /* - * Still not done, take a second pass without waiting - * (unlimited dirty cleaning), otherwise sleep a bit - * and try again. + * We're still not done. Either vm_pages_needed was + * set by another thread during the previous scan + * (typically, this happens during a level 0 scan) or + * vm_pages_needed was already set and the scan failed + * to free enough pages. If we haven't yet performed + * a level >= 2 scan (unlimited dirty cleaning), then + * upgrade the level and scan again now. Otherwise, + * sleep a bit and try again later. While sleeping, + * vm_pages_needed can be cleared. */ if (domain->vmd_pass > 1) msleep(&vm_pages_needed, @@ -1651,15 +1657,14 @@ vm_pageout_worker(void *arg) * Good enough, sleep until required to refresh * stats. */ - domain->vmd_pass = 0; msleep(&vm_pages_needed, &vm_page_queue_free_mtx, PVM, "psleep", hz); - } if (vm_pages_needed) { vm_cnt.v_pdwakeups++; domain->vmd_pass++; - } + } else + domain->vmd_pass = 0; mtx_unlock(&vm_page_queue_free_mtx); vm_pageout_scan(domain, domain->vmd_pass); } From owner-svn-src-head@freebsd.org Sun Sep 20 20:15:46 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4E593A05301; Sun, 20 Sep 2015 20:15:46 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 272701C65; Sun, 20 Sep 2015 20:15:46 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKFjCZ075083; Sun, 20 Sep 2015 20:15:45 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKFjaN075016; Sun, 20 Sep 2015 20:15:45 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202015.t8KKFjaN075016@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:15:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288026 - head/lib/libc/stdlib X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:15:46 -0000 Author: rodrigc Date: Sun Sep 20 20:15:44 2015 New Revision: 288026 URL: https://svnweb.freebsd.org/changeset/base/288026 Log: Remove names from prototypes Modified: head/lib/libc/stdlib/atexit.c head/lib/libc/stdlib/heapsort.c head/lib/libc/stdlib/merge.c Modified: head/lib/libc/stdlib/atexit.c ============================================================================== --- head/lib/libc/stdlib/atexit.c Sun Sep 20 19:20:03 2015 (r288025) +++ head/lib/libc/stdlib/atexit.c Sun Sep 20 20:15:44 2015 (r288026) @@ -82,8 +82,8 @@ struct atexit { static struct atexit *__atexit; /* points to head of LIFO stack */ typedef DECLARE_BLOCK(void, atexit_block, void); -int atexit_b(atexit_block func); -int __cxa_atexit(void (*func)(void *), void *arg, void *dso); +int atexit_b(atexit_block); +int __cxa_atexit(void (*)(void *), void *, void *); /* * Register the function described by 'fptr' to be called at application Modified: head/lib/libc/stdlib/heapsort.c ============================================================================== --- head/lib/libc/stdlib/heapsort.c Sun Sep 20 19:20:03 2015 (r288025) +++ head/lib/libc/stdlib/heapsort.c Sun Sep 20 20:15:44 2015 (r288026) @@ -139,10 +139,10 @@ typedef DECLARE_BLOCK(int, heapsort_bloc } #ifdef I_AM_HEAPSORT_B -int heapsort_b(void *vbase, size_t nmemb, size_t size, heapsort_block compar); +int heapsort_b(void *, size_t, size_t, heapsort_block); #else -int heapsort(void *vbase, size_t nmemb, size_t size, - int (*compar)(const void *, const void *)); +int heapsort(void *, size_t, size_t, + int (*)(const void *, const void *)); #endif /* * Heapsort -- Knuth, Vol. 3, page 145. Runs in O (N lg N), both average Modified: head/lib/libc/stdlib/merge.c ============================================================================== --- head/lib/libc/stdlib/merge.c Sun Sep 20 19:20:03 2015 (r288025) +++ head/lib/libc/stdlib/merge.c Sun Sep 20 20:15:44 2015 (r288026) @@ -100,9 +100,9 @@ static void insertionsort(u_char *, size (((u_char *)p + PSIZE - 1 - (u_char *) 0) & ~(PSIZE - 1))) #ifdef I_AM_MERGESORT_B -int mergesort_b(void *base, size_t nmemb, size_t size, cmp_t cmp); +int mergesort_b(void *, size_t, size_t, cmp_t); #else -int mergesort(void *base, size_t nmemb, size_t size, cmp_t cmp); +int mergesort(void *, size_t, size_t, cmp_t); #endif /* From owner-svn-src-head@freebsd.org Sun Sep 20 20:16:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B24B4A05470; Sun, 20 Sep 2015 20:16:35 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 67844128E; Sun, 20 Sep 2015 20:16:35 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKGZK4075781; Sun, 20 Sep 2015 20:16:35 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKGYIw075772; Sun, 20 Sep 2015 20:16:34 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202016.t8KKGYIw075772@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:16:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288027 - head/lib/libc/posix1e X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:16:35 -0000 Author: rodrigc Date: Sun Sep 20 20:16:34 2015 New Revision: 288027 URL: https://svnweb.freebsd.org/changeset/base/288027 Log: Remove names from some prototypes Modified: head/lib/libc/posix1e/acl_compat.c head/lib/libc/posix1e/acl_support.h Modified: head/lib/libc/posix1e/acl_compat.c ============================================================================== --- head/lib/libc/posix1e/acl_compat.c Sun Sep 20 20:15:44 2015 (r288026) +++ head/lib/libc/posix1e/acl_compat.c Sun Sep 20 20:16:34 2015 (r288027) @@ -29,9 +29,9 @@ __FBSDID("$FreeBSD$"); #include -int __oldacl_get_perm_np(acl_permset_t permset_d, oldacl_perm_t perm); -int __oldacl_add_perm(acl_permset_t permset_d, oldacl_perm_t perm); -int __oldacl_delete_perm(acl_permset_t permset_d, oldacl_perm_t perm); +int __oldacl_get_perm_np(acl_permset_t, oldacl_perm_t); +int __oldacl_add_perm(acl_permset_t, oldacl_perm_t); +int __oldacl_delete_perm(acl_permset_t, oldacl_perm_t); /* * Compatibility wrappers for applications compiled against libc from before Modified: head/lib/libc/posix1e/acl_support.h ============================================================================== --- head/lib/libc/posix1e/acl_support.h Sun Sep 20 20:15:44 2015 (r288026) +++ head/lib/libc/posix1e/acl_support.h Sun Sep 20 20:16:34 2015 (r288027) @@ -45,8 +45,8 @@ int _acl_brand_may_be(const acl_t acl, i int _entry_brand_may_be(const acl_entry_t entry, int brand); void _acl_brand_as(acl_t acl, int brand); void _entry_brand_as(const acl_entry_t entry, int brand); -int _nfs4_acl_entry_from_text(acl_t aclp, char *str); -char *_nfs4_acl_to_text_np(const acl_t aclp, ssize_t *len_p, int flags); +int _nfs4_acl_entry_from_text(acl_t, char *); +char *_nfs4_acl_to_text_np(const acl_t, ssize_t *, int); int _nfs4_format_flags(char *str, size_t size, acl_flag_t var, int verbose); int _nfs4_format_access_mask(char *str, size_t size, acl_perm_t var, int verbose); int _nfs4_parse_flags(const char *str, acl_flag_t *var); From owner-svn-src-head@freebsd.org Sun Sep 20 20:21:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BA9B9A05AF2; Sun, 20 Sep 2015 20:21:53 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AB6B018B0; Sun, 20 Sep 2015 20:21:53 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKLrqp079844; Sun, 20 Sep 2015 20:21:53 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKLoVj079832; Sun, 20 Sep 2015 20:21:50 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202021.t8KKLoVj079832@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:21:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288028 - head/lib/libc/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:21:53 -0000 Author: rodrigc Date: Sun Sep 20 20:21:49 2015 New Revision: 288028 URL: https://svnweb.freebsd.org/changeset/base/288028 Log: Remove names from some prototypes Modified: head/lib/libc/gen/dlfcn.c head/lib/libc/gen/dup3.c head/lib/libc/gen/elf_utils.c head/lib/libc/gen/fmtcheck.c head/lib/libc/gen/nlist.c head/lib/libc/gen/sleep.c head/lib/libc/gen/uname.c head/lib/libc/gen/usleep.c head/lib/libc/gen/wait.c head/lib/libc/gen/wait3.c head/lib/libc/gen/waitid.c head/lib/libc/gen/waitpid.c Modified: head/lib/libc/gen/dlfcn.c ============================================================================== --- head/lib/libc/gen/dlfcn.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/dlfcn.c Sun Sep 20 20:21:49 2015 (r288028) @@ -41,9 +41,9 @@ __FBSDID("$FreeBSD$"); static char sorry[] = "Service unavailable"; -void _rtld_thread_init(void * li); -void _rtld_atfork_pre(int *locks); -void _rtld_atfork_post(int *locks); +void _rtld_thread_init(void *); +void _rtld_atfork_pre(int *); +void _rtld_atfork_post(int *); /* * For ELF, the dynamic linker directly resolves references to its Modified: head/lib/libc/gen/dup3.c ============================================================================== --- head/lib/libc/gen/dup3.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/dup3.c Sun Sep 20 20:21:49 2015 (r288028) @@ -35,7 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" -int __dup3(int oldfd, int newfd, int flags); +int __dup3(int, int, int); int __dup3(int oldfd, int newfd, int flags) Modified: head/lib/libc/gen/elf_utils.c ============================================================================== --- head/lib/libc/gen/elf_utils.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/elf_utils.c Sun Sep 20 20:21:49 2015 (r288028) @@ -33,7 +33,7 @@ #include #include -int __elf_phdr_match_addr(struct dl_phdr_info *phdr_info, void *addr); +int __elf_phdr_match_addr(struct dl_phdr_info *, void *); void __pthread_map_stacks_exec(void); int Modified: head/lib/libc/gen/fmtcheck.c ============================================================================== --- head/lib/libc/gen/fmtcheck.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/fmtcheck.c Sun Sep 20 20:21:49 2015 (r288028) @@ -36,7 +36,7 @@ __FBSDID("$FreeBSD$"); #include __weak_reference(__fmtcheck, fmtcheck); -const char * __fmtcheck(const char *f1, const char *f2); +const char * __fmtcheck(const char *, const char *); enum __e_fmtcheck_types { FMTCHECK_START, Modified: head/lib/libc/gen/nlist.c ============================================================================== --- head/lib/libc/gen/nlist.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/nlist.c Sun Sep 20 20:21:49 2015 (r288028) @@ -61,7 +61,7 @@ __FBSDID("$FreeBSD$"); int __fdnlist(int, struct nlist *); int __aout_fdnlist(int, struct nlist *); int __elf_fdnlist(int, struct nlist *); -int __elf_is_okay__(Elf_Ehdr *ehdr); +int __elf_is_okay__(Elf_Ehdr *); int nlist(const char *name, struct nlist *list) Modified: head/lib/libc/gen/sleep.c ============================================================================== --- head/lib/libc/gen/sleep.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/sleep.c Sun Sep 20 20:21:49 2015 (r288028) @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" -unsigned int __sleep(unsigned int seconds); +unsigned int __sleep(unsigned int); unsigned int __sleep(unsigned int seconds) Modified: head/lib/libc/gen/uname.c ============================================================================== --- head/lib/libc/gen/uname.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/uname.c Sun Sep 20 20:21:49 2015 (r288028) @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); #include #undef uname -int uname(struct utsname *name); +int uname(struct utsname *); int uname(struct utsname *name) Modified: head/lib/libc/gen/usleep.c ============================================================================== --- head/lib/libc/gen/usleep.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/usleep.c Sun Sep 20 20:21:49 2015 (r288028) @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" -int __usleep(useconds_t useconds); +int __usleep(useconds_t); int __usleep(useconds_t useconds) Modified: head/lib/libc/gen/wait.c ============================================================================== --- head/lib/libc/gen/wait.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/wait.c Sun Sep 20 20:21:49 2015 (r288028) @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" -pid_t __wait(int *istat); +pid_t __wait(int *); pid_t __wait(int *istat) Modified: head/lib/libc/gen/wait3.c ============================================================================== --- head/lib/libc/gen/wait3.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/wait3.c Sun Sep 20 20:21:49 2015 (r288028) @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" -pid_t __wait3(int *istat, int options, struct rusage *rup); +pid_t __wait3(int *, int, struct rusage *); pid_t __wait3(int *istat, int options, struct rusage *rup) Modified: head/lib/libc/gen/waitid.c ============================================================================== --- head/lib/libc/gen/waitid.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/waitid.c Sun Sep 20 20:21:49 2015 (r288028) @@ -39,7 +39,7 @@ __FBSDID("$FreeBSD$"); #include "un-namespace.h" #include "libc_private.h" -int __waitid(idtype_t idtype, id_t id, siginfo_t *info, int flags); +int __waitid(idtype_t, id_t, siginfo_t *, int); int __waitid(idtype_t idtype, id_t id, siginfo_t *info, int flags) Modified: head/lib/libc/gen/waitpid.c ============================================================================== --- head/lib/libc/gen/waitpid.c Sun Sep 20 20:16:34 2015 (r288027) +++ head/lib/libc/gen/waitpid.c Sun Sep 20 20:21:49 2015 (r288028) @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" -pid_t __waitpid(pid_t pid, int *istat, int options); +pid_t __waitpid(pid_t, int *, int); pid_t __waitpid(pid_t pid, int *istat, int options) From owner-svn-src-head@freebsd.org Sun Sep 20 20:23:26 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FE98A05BD1; Sun, 20 Sep 2015 20:23:26 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2FBD51A5D; Sun, 20 Sep 2015 20:23:26 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKNQdO081932; Sun, 20 Sep 2015 20:23:26 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKNGsP081894; Sun, 20 Sep 2015 20:23:16 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202023.t8KKNGsP081894@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:23:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288029 - head/lib/libc/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:23:26 -0000 Author: rodrigc Date: Sun Sep 20 20:23:16 2015 New Revision: 288029 URL: https://svnweb.freebsd.org/changeset/base/288029 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/gen/alarm.c head/lib/libc/gen/assert.c head/lib/libc/gen/err.c head/lib/libc/gen/exec.c head/lib/libc/gen/fnmatch.c head/lib/libc/gen/ftok.c head/lib/libc/gen/fts-compat.c head/lib/libc/gen/fts.c head/lib/libc/gen/getbsize.c head/lib/libc/gen/getcwd.c head/lib/libc/gen/getdomainname.c head/lib/libc/gen/getgrent.c head/lib/libc/gen/gethostname.c head/lib/libc/gen/getpagesize.c head/lib/libc/gen/getusershell.c head/lib/libc/gen/getvfsbyname.c head/lib/libc/gen/initgroups.c head/lib/libc/gen/isatty.c head/lib/libc/gen/popen.c head/lib/libc/gen/psignal.c head/lib/libc/gen/raise.c head/lib/libc/gen/readdir.c head/lib/libc/gen/rewinddir.c head/lib/libc/gen/seekdir.c head/lib/libc/gen/setjmperr.c head/lib/libc/gen/sigsetops.c head/lib/libc/gen/sysconf.c head/lib/libc/gen/telldir.c head/lib/libc/gen/tls.c head/lib/libc/gen/ualarm.c head/lib/libc/gen/unvis-compat.c head/lib/libc/gen/utime.c Modified: head/lib/libc/gen/alarm.c ============================================================================== --- head/lib/libc/gen/alarm.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/alarm.c Sun Sep 20 20:23:16 2015 (r288029) @@ -40,8 +40,7 @@ __FBSDID("$FreeBSD$"); #include unsigned int -alarm(secs) - unsigned int secs; +alarm(unsigned int secs) { struct itimerval it, oitv; struct itimerval *itp = ⁢ Modified: head/lib/libc/gen/assert.c ============================================================================== --- head/lib/libc/gen/assert.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/assert.c Sun Sep 20 20:23:16 2015 (r288029) @@ -38,10 +38,7 @@ __FBSDID("$FreeBSD$"); #include void -__assert(func, file, line, failedexpr) - const char *func, *file; - int line; - const char *failedexpr; +__assert(const char *func, const char *file, int line, const char *failedexpr) { if (func == NULL) (void)fprintf(stderr, Modified: head/lib/libc/gen/err.c ============================================================================== --- head/lib/libc/gen/err.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/err.c Sun Sep 20 20:23:16 2015 (r288029) @@ -79,10 +79,7 @@ _err(int eval, const char *fmt, ...) } void -verr(eval, fmt, ap) - int eval; - const char *fmt; - va_list ap; +verr(int eval, const char *fmt, va_list ap) { verrc(eval, errno, fmt, ap); } Modified: head/lib/libc/gen/exec.c ============================================================================== --- head/lib/libc/gen/exec.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/exec.c Sun Sep 20 20:23:16 2015 (r288029) @@ -131,9 +131,7 @@ execlp(const char *name, const char *arg } int -execv(name, argv) - const char *name; - char * const *argv; +execv(const char *name, char * const *argv) { (void)_execve(name, argv, environ); return (-1); Modified: head/lib/libc/gen/fnmatch.c ============================================================================== --- head/lib/libc/gen/fnmatch.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/fnmatch.c Sun Sep 20 20:23:16 2015 (r288029) @@ -76,9 +76,7 @@ static int fnmatch1(const char *, const mbstate_t); int -fnmatch(pattern, string, flags) - const char *pattern, *string; - int flags; +fnmatch(const char *pattern, const char *string, int flags) { static const mbstate_t initial; @@ -86,10 +84,8 @@ fnmatch(pattern, string, flags) } static int -fnmatch1(pattern, string, stringstart, flags, patmbs, strmbs) - const char *pattern, *string, *stringstart; - int flags; - mbstate_t patmbs, strmbs; +fnmatch1(const char *pattern, const char *string, const char *stringstart, + int flags, mbstate_t patmbs, mbstate_t strmbs) { char *newp; char c; @@ -214,12 +210,8 @@ fnmatch1(pattern, string, stringstart, f } static int -rangematch(pattern, test, flags, newp, patmbs) - const char *pattern; - wchar_t test; - int flags; - char **newp; - mbstate_t *patmbs; +rangematch(const char *pattern, wchar_t test, int flags, char **newp, + mbstate_t *patmbs) { int negate, ok; wchar_t c, c2; Modified: head/lib/libc/gen/ftok.c ============================================================================== --- head/lib/libc/gen/ftok.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/ftok.c Sun Sep 20 20:23:16 2015 (r288029) @@ -33,9 +33,7 @@ __FBSDID("$FreeBSD$"); #include key_t -ftok(path, id) - const char *path; - int id; +ftok(const char *path, int id) { struct stat st; Modified: head/lib/libc/gen/fts-compat.c ============================================================================== --- head/lib/libc/gen/fts-compat.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/fts-compat.c Sun Sep 20 20:23:16 2015 (r288029) @@ -120,10 +120,8 @@ static const char *ufslike_filesystems[] }; FTS * -__fts_open_44bsd(argv, options, compar) - char * const *argv; - int options; - int (*compar)(const FTSENT * const *, const FTSENT * const *); +__fts_open_44bsd(char * const *argv, int options, + int (*compar)(const FTSENT * const *, const FTSENT * const *)) { struct _fts_private *priv; FTS *sp; @@ -234,9 +232,7 @@ mem1: free(sp); } static void -fts_load(sp, p) - FTS *sp; - FTSENT *p; +fts_load(FTS *sp, FTSENT *p) { int len; char *cp; @@ -260,8 +256,7 @@ fts_load(sp, p) } int -__fts_close_44bsd(sp) - FTS *sp; +__fts_close_44bsd(FTS *sp) { FTSENT *freep, *p; int saved_errno; @@ -315,8 +310,7 @@ __fts_close_44bsd(sp) ? p->fts_pathlen - 1 : p->fts_pathlen) FTSENT * -__fts_read_44bsd(sp) - FTS *sp; +__fts_read_44bsd(FTS *sp) { FTSENT *p, *tmp; int instr; @@ -510,10 +504,7 @@ name: t = sp->fts_path + NAPPEND(p->fts */ /* ARGSUSED */ int -__fts_set_44bsd(sp, p, instr) - FTS *sp; - FTSENT *p; - int instr; +__fts_set_44bsd(FTS *sp, FTSENT *p, int instr) { if (instr != 0 && instr != FTS_AGAIN && instr != FTS_FOLLOW && instr != FTS_NOINSTR && instr != FTS_SKIP) { @@ -525,9 +516,7 @@ __fts_set_44bsd(sp, p, instr) } FTSENT * -__fts_children_44bsd(sp, instr) - FTS *sp; - int instr; +__fts_children_44bsd(FTS *sp, int instr) { FTSENT *p; int fd; Modified: head/lib/libc/gen/fts.c ============================================================================== --- head/lib/libc/gen/fts.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/fts.c Sun Sep 20 20:23:16 2015 (r288029) @@ -110,10 +110,8 @@ static const char *ufslike_filesystems[] }; FTS * -fts_open(argv, options, compar) - char * const *argv; - int options; - int (*compar)(const FTSENT * const *, const FTSENT * const *); +fts_open(char * const *argv, int options, + int (*compar)(const FTSENT * const *, const FTSENT * const *)) { struct _fts_private *priv; FTS *sp; @@ -1105,8 +1103,7 @@ fts_padjust(FTS *sp, FTSENT *head) } static size_t -fts_maxarglen(argv) - char * const *argv; +fts_maxarglen(char * const *argv) { size_t len, max; Modified: head/lib/libc/gen/getbsize.c ============================================================================== --- head/lib/libc/gen/getbsize.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getbsize.c Sun Sep 20 20:23:16 2015 (r288029) @@ -39,9 +39,7 @@ __FBSDID("$FreeBSD$"); #include char * -getbsize(headerlenp, blocksizep) - int *headerlenp; - long *blocksizep; +getbsize(int *headerlenp, long *blocksizep) { static char header[20]; long n, max, mul, blocksize; Modified: head/lib/libc/gen/getcwd.c ============================================================================== --- head/lib/libc/gen/getcwd.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getcwd.c Sun Sep 20 20:23:16 2015 (r288029) @@ -55,9 +55,7 @@ __FBSDID("$FreeBSD$"); extern int __getcwd(char *, size_t); char * -getcwd(pt, size) - char *pt; - size_t size; +getcwd(char *pt, size_t size) { struct dirent *dp; DIR *dir = NULL; Modified: head/lib/libc/gen/getdomainname.c ============================================================================== --- head/lib/libc/gen/getdomainname.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getdomainname.c Sun Sep 20 20:23:16 2015 (r288029) @@ -39,9 +39,7 @@ __FBSDID("$FreeBSD$"); #include int -getdomainname(name, namelen) - char *name; - int namelen; +getdomainname(char *name, int namelen) { int mib[2]; size_t size; Modified: head/lib/libc/gen/getgrent.c ============================================================================== --- head/lib/libc/gen/getgrent.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getgrent.c Sun Sep 20 20:23:16 2015 (r288029) @@ -75,8 +75,7 @@ static const ns_src defaultsrc[] = { { NULL, 0 } }; -int __getgroupmembership(const char *uname, gid_t agroup, gid_t *groups, - int maxgrp, int *grpcnt); +int __getgroupmembership(const char *, gid_t, gid_t *, int, int *); int __gr_match_entry(const char *, size_t, enum nss_lookup_type, const char *, gid_t); int __gr_parse_entry(char *, size_t, struct group *, char *, size_t, Modified: head/lib/libc/gen/gethostname.c ============================================================================== --- head/lib/libc/gen/gethostname.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/gethostname.c Sun Sep 20 20:23:16 2015 (r288029) @@ -40,9 +40,7 @@ __FBSDID("$FreeBSD$"); #include int -gethostname(name, namelen) - char *name; - size_t namelen; +gethostname(char *name, size_t namelen) { int mib[2]; Modified: head/lib/libc/gen/getpagesize.c ============================================================================== --- head/lib/libc/gen/getpagesize.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getpagesize.c Sun Sep 20 20:23:16 2015 (r288029) @@ -51,7 +51,7 @@ __FBSDID("$FreeBSD$"); */ int -getpagesize() +getpagesize(void) { int mib[2]; static int value; Modified: head/lib/libc/gen/getusershell.c ============================================================================== --- head/lib/libc/gen/getusershell.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getusershell.c Sun Sep 20 20:23:16 2015 (r288029) @@ -102,10 +102,7 @@ static int _local_initshells(void *, voi /*ARGSUSED*/ static int -_local_initshells(rv, cb_data, ap) - void *rv; - void *cb_data; - va_list ap; +_local_initshells(void *rv, void *cb_data, va_list ap) { char *sp, *cp; FILE *fp; @@ -139,10 +136,7 @@ static int _dns_initshells(void *, void /*ARGSUSED*/ static int -_dns_initshells(rv, cb_data, ap) - void *rv; - void *cb_data; - va_list ap; +_dns_initshells(void *rv, void *cb_data, va_list ap) { char shellname[] = "shells-XXXXX"; int hsindex, hpi, r; @@ -183,10 +177,7 @@ static int _nis_initshells(void *, void /*ARGSUSED*/ static int -_nis_initshells(rv, cb_data, ap) - void *rv; - void *cb_data; - va_list ap; +_nis_initshells(void *rv, void *cb_data, va_list ap) { static char *ypdomain; char *key, *data; @@ -239,7 +230,7 @@ _nis_initshells(rv, cb_data, ap) #endif /* YP */ static const char *const * -initshells() +initshells(void) { static const ns_dtab dtab[] = { NS_FILES_CB(_local_initshells, NULL) Modified: head/lib/libc/gen/getvfsbyname.c ============================================================================== --- head/lib/libc/gen/getvfsbyname.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/getvfsbyname.c Sun Sep 20 20:23:16 2015 (r288029) @@ -45,9 +45,7 @@ __FBSDID("$FreeBSD$"); * and if it is resident, return its xvfsconf structure. */ int -getvfsbyname(fsname, vfcp) - const char *fsname; - struct xvfsconf *vfcp; +getvfsbyname(const char *fsname, struct xvfsconf *vfcp) { struct xvfsconf *xvfsp; size_t buflen; Modified: head/lib/libc/gen/initgroups.c ============================================================================== --- head/lib/libc/gen/initgroups.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/initgroups.c Sun Sep 20 20:23:16 2015 (r288029) @@ -44,9 +44,7 @@ __FBSDID("$FreeBSD$"); #include int -initgroups(uname, agroup) - const char *uname; - gid_t agroup; +initgroups(const char *uname, gid_t agroup) { int ngroups, ret; long ngroups_max; Modified: head/lib/libc/gen/isatty.c ============================================================================== --- head/lib/libc/gen/isatty.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/isatty.c Sun Sep 20 20:23:16 2015 (r288029) @@ -37,8 +37,7 @@ __FBSDID("$FreeBSD$"); #include int -isatty(fd) - int fd; +isatty(int fd) { int retval; struct termios t; Modified: head/lib/libc/gen/popen.c ============================================================================== --- head/lib/libc/gen/popen.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/popen.c Sun Sep 20 20:23:16 2015 (r288029) @@ -67,8 +67,7 @@ static pthread_mutex_t pidlist_mutex = P #define THREAD_UNLOCK() if (__isthreaded) _pthread_mutex_unlock(&pidlist_mutex) FILE * -popen(command, type) - const char *command, *type; +popen(const char *command, const char *type) { struct pid *cur; FILE *iop; @@ -179,8 +178,7 @@ popen(command, type) * if already `pclosed', or waitpid returns an error. */ int -pclose(iop) - FILE *iop; +pclose(FILE *iop) { struct pid *cur, *last = NULL; int pstat; Modified: head/lib/libc/gen/psignal.c ============================================================================== --- head/lib/libc/gen/psignal.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/psignal.c Sun Sep 20 20:23:16 2015 (r288029) @@ -44,9 +44,7 @@ __FBSDID("$FreeBSD$"); #include "un-namespace.h" void -psignal(sig, s) - unsigned int sig; - const char *s; +psignal(unsigned int sig, const char *s) { const char *c; Modified: head/lib/libc/gen/raise.c ============================================================================== --- head/lib/libc/gen/raise.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/raise.c Sun Sep 20 20:23:16 2015 (r288029) @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); __weak_reference(__raise, raise); __weak_reference(__raise, _raise); -int __raise(int s); +int __raise(int); int __raise(int s) Modified: head/lib/libc/gen/readdir.c ============================================================================== --- head/lib/libc/gen/readdir.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/readdir.c Sun Sep 20 20:23:16 2015 (r288029) @@ -49,9 +49,7 @@ __FBSDID("$FreeBSD$"); * get next entry in a directory. */ struct dirent * -_readdir_unlocked(dirp, skip) - DIR *dirp; - int skip; +_readdir_unlocked(DIR *dirp, int skip) { struct dirent *dp; long initial_seek; @@ -91,8 +89,7 @@ _readdir_unlocked(dirp, skip) } struct dirent * -readdir(dirp) - DIR *dirp; +readdir(DIR *dirp) { struct dirent *dp; @@ -107,10 +104,7 @@ readdir(dirp) } int -readdir_r(dirp, entry, result) - DIR *dirp; - struct dirent *entry; - struct dirent **result; +readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) { struct dirent *dp; int saved_errno; Modified: head/lib/libc/gen/rewinddir.c ============================================================================== --- head/lib/libc/gen/rewinddir.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/rewinddir.c Sun Sep 20 20:23:16 2015 (r288029) @@ -45,8 +45,7 @@ __FBSDID("$FreeBSD$"); #include "telldir.h" void -rewinddir(dirp) - DIR *dirp; +rewinddir(DIR *dirp) { if (__isthreaded) Modified: head/lib/libc/gen/seekdir.c ============================================================================== --- head/lib/libc/gen/seekdir.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/seekdir.c Sun Sep 20 20:23:16 2015 (r288029) @@ -48,9 +48,7 @@ __FBSDID("$FreeBSD$"); * _seekdir is in telldir.c so that it can share opaque data structures. */ void -seekdir(dirp, loc) - DIR *dirp; - long loc; +seekdir(DIR *dirp, long loc) { if (__isthreaded) _pthread_mutex_lock(&dirp->dd_lock); Modified: head/lib/libc/gen/setjmperr.c ============================================================================== --- head/lib/libc/gen/setjmperr.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/setjmperr.c Sun Sep 20 20:23:16 2015 (r288029) @@ -46,7 +46,7 @@ __FBSDID("$FreeBSD$"); #include "un-namespace.h" void -longjmperror() +longjmperror(void) { #define ERRMSG "longjmp botch.\n" (void)_write(STDERR_FILENO, ERRMSG, sizeof(ERRMSG) - 1); Modified: head/lib/libc/gen/sigsetops.c ============================================================================== --- head/lib/libc/gen/sigsetops.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/sigsetops.c Sun Sep 20 20:23:16 2015 (r288029) @@ -39,9 +39,7 @@ __FBSDID("$FreeBSD$"); #include int -sigaddset(set, signo) - sigset_t *set; - int signo; +sigaddset(sigset_t *set, int signo) { if (signo <= 0 || signo > _SIG_MAXSIG) { @@ -53,9 +51,7 @@ sigaddset(set, signo) } int -sigdelset(set, signo) - sigset_t *set; - int signo; +sigdelset(sigset_t *set, int signo) { if (signo <= 0 || signo > _SIG_MAXSIG) { @@ -67,8 +63,7 @@ sigdelset(set, signo) } int -sigemptyset(set) - sigset_t *set; +sigemptyset(sigset_t *set) { int i; @@ -78,8 +73,7 @@ sigemptyset(set) } int -sigfillset(set) - sigset_t *set; +sigfillset(sigset_t *set) { int i; @@ -89,9 +83,7 @@ sigfillset(set) } int -sigismember(set, signo) - const sigset_t *set; - int signo; +sigismember(const sigset_t *set, int signo) { if (signo <= 0 || signo > _SIG_MAXSIG) { Modified: head/lib/libc/gen/sysconf.c ============================================================================== --- head/lib/libc/gen/sysconf.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/sysconf.c Sun Sep 20 20:23:16 2015 (r288029) @@ -69,8 +69,7 @@ __FBSDID("$FreeBSD$"); * less useful than returning up-to-date values, however. */ long -sysconf(name) - int name; +sysconf(int name) { struct rlimit rl; size_t len; Modified: head/lib/libc/gen/telldir.c ============================================================================== --- head/lib/libc/gen/telldir.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/telldir.c Sun Sep 20 20:23:16 2015 (r288029) @@ -50,8 +50,7 @@ __FBSDID("$FreeBSD$"); * return a pointer into a directory */ long -telldir(dirp) - DIR *dirp; +telldir(DIR *dirp) { struct ddloc *lp; long idx; @@ -86,9 +85,7 @@ telldir(dirp) * Only values returned by "telldir" should be passed to seekdir. */ void -_seekdir(dirp, loc) - DIR *dirp; - long loc; +_seekdir(DIR *dirp, long loc) { struct ddloc *lp; struct dirent *dp; @@ -152,8 +149,7 @@ _fixtelldir(DIR *dirp, long oldseek, lon * Reclaim memory for telldir cookies which weren't used. */ void -_reclaim_telldir(dirp) - DIR *dirp; +_reclaim_telldir(DIR *dirp) { struct ddloc *lp; struct ddloc *templp; Modified: head/lib/libc/gen/tls.c ============================================================================== --- head/lib/libc/gen/tls.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/tls.c Sun Sep 20 20:23:16 2015 (r288029) @@ -270,7 +270,7 @@ __libc_free_tls(void *tcb __unused, size extern char **environ; void -_init_tls() +_init_tls(void) { #ifndef PIC Elf_Addr *sp; Modified: head/lib/libc/gen/ualarm.c ============================================================================== --- head/lib/libc/gen/ualarm.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/ualarm.c Sun Sep 20 20:23:16 2015 (r288029) @@ -44,9 +44,7 @@ __FBSDID("$FreeBSD$"); * every ``reload'' microseconds after the first signal. */ useconds_t -ualarm(usecs, reload) - useconds_t usecs; - useconds_t reload; +ualarm(useconds_t usecs, useconds_t reload) { struct itimerval new, old; Modified: head/lib/libc/gen/unvis-compat.c ============================================================================== --- head/lib/libc/gen/unvis-compat.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/unvis-compat.c Sun Sep 20 20:23:16 2015 (r288029) @@ -34,7 +34,7 @@ #define _UNVIS_END 1 -int __unvis_44bsd(char *cp, int c, int *astate, int flag); +int __unvis_44bsd(char *, int, int *, int); int __unvis_44bsd(char *cp, int c, int *astate, int flag) Modified: head/lib/libc/gen/utime.c ============================================================================== --- head/lib/libc/gen/utime.c Sun Sep 20 20:21:49 2015 (r288028) +++ head/lib/libc/gen/utime.c Sun Sep 20 20:23:16 2015 (r288029) @@ -38,9 +38,7 @@ __FBSDID("$FreeBSD$"); #include int -utime(path, times) - const char *path; - const struct utimbuf *times; +utime(const char *path, const struct utimbuf *times) { struct timeval tv[2], *tvp; From owner-svn-src-head@freebsd.org Sun Sep 20 20:24:33 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7800AA05C7E; Sun, 20 Sep 2015 20:24:33 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5D0851CAE; Sun, 20 Sep 2015 20:24:33 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKOXpP082237; Sun, 20 Sep 2015 20:24:33 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKOTnV082111; Sun, 20 Sep 2015 20:24:29 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202024.t8KKOTnV082111@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:24:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288030 - head/lib/libc/stdlib X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:24:33 -0000 Author: rodrigc Date: Sun Sep 20 20:24:28 2015 New Revision: 288030 URL: https://svnweb.freebsd.org/changeset/base/288030 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/stdlib/abort.c head/lib/libc/stdlib/abs.c head/lib/libc/stdlib/atof.c head/lib/libc/stdlib/atoi.c head/lib/libc/stdlib/atol.c head/lib/libc/stdlib/atoll.c head/lib/libc/stdlib/bsearch.c head/lib/libc/stdlib/exit.c head/lib/libc/stdlib/labs.c head/lib/libc/stdlib/qsort.c head/lib/libc/stdlib/rand.c head/lib/libc/stdlib/tfind.c Modified: head/lib/libc/stdlib/abort.c ============================================================================== --- head/lib/libc/stdlib/abort.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/abort.c Sun Sep 20 20:24:28 2015 (r288030) @@ -44,7 +44,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" void -abort() +abort(void) { struct sigaction act; Modified: head/lib/libc/stdlib/abs.c ============================================================================== --- head/lib/libc/stdlib/abs.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/abs.c Sun Sep 20 20:24:28 2015 (r288030) @@ -36,8 +36,7 @@ __FBSDID("$FreeBSD$"); #include int -abs(j) - int j; +abs(int j) { return(j < 0 ? -j : j); } Modified: head/lib/libc/stdlib/atof.c ============================================================================== --- head/lib/libc/stdlib/atof.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/atof.c Sun Sep 20 20:24:28 2015 (r288030) @@ -42,16 +42,13 @@ __FBSDID("$FreeBSD$"); #include double -atof(ascii) - const char *ascii; +atof(const char *ascii) { return strtod(ascii, (char **)NULL); } double -atof_l(ascii, locale) - const char *ascii; - locale_t locale; +atof_l(const char *ascii, locale_t locale) { return strtod_l(ascii, (char **)NULL, locale); } Modified: head/lib/libc/stdlib/atoi.c ============================================================================== --- head/lib/libc/stdlib/atoi.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/atoi.c Sun Sep 20 20:24:28 2015 (r288030) @@ -42,16 +42,13 @@ __FBSDID("$FreeBSD$"); #include int -atoi(str) - const char *str; +atoi(const char *str) { return (int)strtol(str, (char **)NULL, 10); } int -atoi_l(str, locale) - const char *str; - locale_t locale; +atoi_l(const char *str, locale_t locale) { return (int)strtol_l(str, (char **)NULL, 10, locale); } Modified: head/lib/libc/stdlib/atol.c ============================================================================== --- head/lib/libc/stdlib/atol.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/atol.c Sun Sep 20 20:24:28 2015 (r288030) @@ -42,16 +42,13 @@ __FBSDID("$FreeBSD$"); #include long -atol(str) - const char *str; +atol(const char *str) { return strtol(str, (char **)NULL, 10); } long -atol_l(str, locale) - const char *str; - locale_t locale; +atol_l(const char *str, locale_t locale) { return strtol_l(str, (char **)NULL, 10, locale); } Modified: head/lib/libc/stdlib/atoll.c ============================================================================== --- head/lib/libc/stdlib/atoll.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/atoll.c Sun Sep 20 20:24:28 2015 (r288030) @@ -39,16 +39,13 @@ __FBSDID("$FreeBSD$"); #include long long -atoll(str) - const char *str; +atoll(const char *str) { return strtoll(str, (char **)NULL, 10); } long long -atoll_l(str, locale) - const char *str; - locale_t locale; +atoll_l(const char *str, locale_t locale) { return strtoll_l(str, (char **)NULL, 10, locale); } Modified: head/lib/libc/stdlib/bsearch.c ============================================================================== --- head/lib/libc/stdlib/bsearch.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/bsearch.c Sun Sep 20 20:24:28 2015 (r288030) @@ -61,20 +61,12 @@ __FBSDID("$FreeBSD$"); */ #ifdef I_AM_BSEARCH_B void * -bsearch_b(key, base0, nmemb, size, compar) - const void *key; - const void *base0; - size_t nmemb; - size_t size; - DECLARE_BLOCK(int, compar, const void *, const void *); +bsearch_b(const void *key, const void *base0, size_t nmemb, size_t size, + DECLARE_BLOCK(int, compar, const void *, const void *)) #else void * -bsearch(key, base0, nmemb, size, compar) - const void *key; - const void *base0; - size_t nmemb; - size_t size; - int (*compar)(const void *, const void *); +bsearch(const void *key, const void *base0, size_t nmemb, size_t size, + int (*compar)(const void *, const void *)) #endif { const char *base = base0; Modified: head/lib/libc/stdlib/exit.c ============================================================================== --- head/lib/libc/stdlib/exit.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/exit.c Sun Sep 20 20:24:28 2015 (r288030) @@ -56,8 +56,7 @@ int __isthreaded = 0; * Exit, flushing stdio buffers if necessary. */ void -exit(status) - int status; +exit(int status) { /* Ensure that the auto-initialization routine is linked in: */ extern int _thread_autoinit_dummy_decl; Modified: head/lib/libc/stdlib/labs.c ============================================================================== --- head/lib/libc/stdlib/labs.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/labs.c Sun Sep 20 20:24:28 2015 (r288030) @@ -36,8 +36,7 @@ __FBSDID("$FreeBSD$"); #include long -labs(j) - long j; +labs(long j) { return(j < 0 ? -j : j); } Modified: head/lib/libc/stdlib/qsort.c ============================================================================== --- head/lib/libc/stdlib/qsort.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/qsort.c Sun Sep 20 20:24:28 2015 (r288030) @@ -64,9 +64,7 @@ static inline void swapfunc(char *, cha es % sizeof(TYPE) ? 2 : es == sizeof(TYPE) ? 0 : 1; static inline void -swapfunc(a, b, n, swaptype_long, swaptype_int) - char *a, *b; - int n, swaptype_long, swaptype_int; +swapfunc( char *a, char *b, int n, int swaptype_long, int swaptype_int) { if (swaptype_long <= 1) swapcode(long, a, b, n) Modified: head/lib/libc/stdlib/rand.c ============================================================================== --- head/lib/libc/stdlib/rand.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/rand.c Sun Sep 20 20:24:28 2015 (r288030) @@ -111,14 +111,13 @@ static u_long next = #endif int -rand() +rand(void) { return (do_rand(&next)); } void -srand(seed) -u_int seed; +srand(u_int seed) { next = seed; #ifndef USE_WEAK_SEEDING @@ -136,7 +135,7 @@ u_int seed; * data from the kernel. */ void -sranddev() +sranddev(void) { int mib[2]; size_t len; Modified: head/lib/libc/stdlib/tfind.c ============================================================================== --- head/lib/libc/stdlib/tfind.c Sun Sep 20 20:23:16 2015 (r288029) +++ head/lib/libc/stdlib/tfind.c Sun Sep 20 20:24:28 2015 (r288030) @@ -23,12 +23,15 @@ __FBSDID("$FreeBSD$"); #include #include -/* find a node, or return 0 */ +/* + * find a node, or return 0 + * + * vkey - key to be found + * vrootp - address of the tree root + */ void * -tfind(vkey, vrootp, compar) - const void *vkey; /* key to be found */ - void * const *vrootp; /* address of the tree root */ - int (*compar)(const void *, const void *); +tfind(const void *vkey, void * const *vrootp, + int (*compar)(const void *, const void *)) { node_t **rootp = (node_t **)vrootp; From owner-svn-src-head@freebsd.org Sun Sep 20 20:26:47 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 876D9A061E5; Sun, 20 Sep 2015 20:26:47 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6B0E5146F; Sun, 20 Sep 2015 20:26:47 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKQlBK084921; Sun, 20 Sep 2015 20:26:47 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKQluJ084920; Sun, 20 Sep 2015 20:26:47 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202026.t8KKQluJ084920@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:26:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288031 - head/lib/libc/stdio X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:26:47 -0000 Author: rodrigc Date: Sun Sep 20 20:26:46 2015 New Revision: 288031 URL: https://svnweb.freebsd.org/changeset/base/288031 Log: Remove names from some prototypes Modified: head/lib/libc/stdio/_flock_stub.c Modified: head/lib/libc/stdio/_flock_stub.c ============================================================================== --- head/lib/libc/stdio/_flock_stub.c Sun Sep 20 20:24:28 2015 (r288030) +++ head/lib/libc/stdio/_flock_stub.c Sun Sep 20 20:26:46 2015 (r288031) @@ -55,8 +55,8 @@ __weak_reference(_flockfile_debug_stub, __weak_reference(_ftrylockfile, ftrylockfile); __weak_reference(_funlockfile, funlockfile); -void _flockfile_debug_stub(FILE *fp, char *fname, int lineno); -int _ftrylockfile(FILE *fp); +void _flockfile_debug_stub(FILE *, char *, int); +int _ftrylockfile(FILE *); void _flockfile(FILE *fp) From owner-svn-src-head@freebsd.org Sun Sep 20 20:27:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0AF50A06486; Sun, 20 Sep 2015 20:27:58 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F07B21238; Sun, 20 Sep 2015 20:27:57 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKRvZi086078; Sun, 20 Sep 2015 20:27:57 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKRv2G086077; Sun, 20 Sep 2015 20:27:57 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202027.t8KKRv2G086077@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:27:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288032 - head/lib/libc/stdio X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:27:58 -0000 Author: rodrigc Date: Sun Sep 20 20:27:57 2015 New Revision: 288032 URL: https://svnweb.freebsd.org/changeset/base/288032 Log: Remove names from some prototypes Modified: head/lib/libc/stdio/fgetwln.c Modified: head/lib/libc/stdio/fgetwln.c ============================================================================== --- head/lib/libc/stdio/fgetwln.c Sun Sep 20 20:26:46 2015 (r288031) +++ head/lib/libc/stdio/fgetwln.c Sun Sep 20 20:27:57 2015 (r288032) @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); #include "local.h" #include "xlocale_private.h" -wchar_t *fgetwln_l(FILE * __restrict fp, size_t *lenp, locale_t locale); +wchar_t *fgetwln_l(FILE * __restrict, size_t *, locale_t); wchar_t * fgetwln_l(FILE * __restrict fp, size_t *lenp, locale_t locale) From owner-svn-src-head@freebsd.org Sun Sep 20 20:28:51 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2874AA0652E; Sun, 20 Sep 2015 20:28:51 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F3CCD14BE; Sun, 20 Sep 2015 20:28:50 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKSoWR086276; Sun, 20 Sep 2015 20:28:50 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKSoJG086271; Sun, 20 Sep 2015 20:28:50 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202028.t8KKSoJG086271@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:28:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288033 - head/lib/libc/stdio X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:28:51 -0000 Author: rodrigc Date: Sun Sep 20 20:28:49 2015 New Revision: 288033 URL: https://svnweb.freebsd.org/changeset/base/288033 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/stdio/findfp.c head/lib/libc/stdio/getchar.c head/lib/libc/stdio/vfscanf.c Modified: head/lib/libc/stdio/findfp.c ============================================================================== --- head/lib/libc/stdio/findfp.c Sun Sep 20 20:27:57 2015 (r288032) +++ head/lib/libc/stdio/findfp.c Sun Sep 20 20:28:49 2015 (r288033) @@ -113,7 +113,7 @@ moreglue(int n) * Find a free FILE for fopen et al. */ FILE * -__sfp() +__sfp(void) { FILE *fp; int n; @@ -164,7 +164,7 @@ found: */ __warn_references(f_prealloc, "warning: this program uses f_prealloc(), which is not recommended."); -void f_prealloc_void(); +void f_prealloc(void); void f_prealloc(void) @@ -196,7 +196,7 @@ f_prealloc(void) * The name `_cleanup' is, alas, fairly well known outside stdio. */ void -_cleanup() +_cleanup(void) { /* (void) _fwalk(fclose); */ (void) _fwalk(__sflush); /* `cheating' */ @@ -206,7 +206,7 @@ _cleanup() * __sinit() is called whenever stdio's internal variables must be set up. */ void -__sinit() +__sinit(void) { /* Make sure we clean up on exit. */ Modified: head/lib/libc/stdio/getchar.c ============================================================================== --- head/lib/libc/stdio/getchar.c Sun Sep 20 20:27:57 2015 (r288032) +++ head/lib/libc/stdio/getchar.c Sun Sep 20 20:28:49 2015 (r288033) @@ -49,7 +49,7 @@ __FBSDID("$FreeBSD$"); #undef getchar_unlocked int -getchar() +getchar(void) { int retval; FLOCKFILE(stdin); Modified: head/lib/libc/stdio/vfscanf.c ============================================================================== --- head/lib/libc/stdio/vfscanf.c Sun Sep 20 20:27:57 2015 (r288032) +++ head/lib/libc/stdio/vfscanf.c Sun Sep 20 20:28:49 2015 (r288033) @@ -814,9 +814,7 @@ match_failure: * considered part of the scanset. */ static const u_char * -__sccl(tab, fmt) - char *tab; - const u_char *fmt; +__sccl(char *tab, const u_char *fmt) { int c, n, v, i; struct xlocale_collate *table = From owner-svn-src-head@freebsd.org Sun Sep 20 20:37:51 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C74F6A06965; Sun, 20 Sep 2015 20:37:51 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from mx1.stack.nl (relay02.stack.nl [IPv6:2001:610:1108:5010::104]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "mailhost.stack.nl", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 903AE1D72; Sun, 20 Sep 2015 20:37:51 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from snail.stack.nl (snail.stack.nl [IPv6:2001:610:1108:5010::131]) by mx1.stack.nl (Postfix) with ESMTP id E784F3592ED; Sun, 20 Sep 2015 22:37:47 +0200 (CEST) Received: by snail.stack.nl (Postfix, from userid 1677) id A0EF528494; Sun, 20 Sep 2015 22:37:47 +0200 (CEST) Date: Sun, 20 Sep 2015 22:37:47 +0200 From: Jilles Tjoelker To: Craig Rodrigues Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r288026 - head/lib/libc/stdlib Message-ID: <20150920203747.GA53002@stack.nl> References: <201509202015.t8KKFjaN075016@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201509202015.t8KKFjaN075016@repo.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:37:51 -0000 On Sun, Sep 20, 2015 at 08:15:45PM +0000, Craig Rodrigues wrote: > Author: rodrigc > Date: Sun Sep 20 20:15:44 2015 > New Revision: 288026 > URL: https://svnweb.freebsd.org/changeset/base/288026 > Log: > Remove names from prototypes > Modified: > head/lib/libc/stdlib/atexit.c > head/lib/libc/stdlib/heapsort.c > head/lib/libc/stdlib/merge.c > [snip patch] Although style(9) does not mention userland implementation files explicitly, I think it is OK to use parameter names for them, for the extra information. Since these are not header files visible to applications, protected names (_foo) are not necessary. I wouldn't commit a change that only either adds or removes parameter names in prototypes myself, except to a header file visible to applications (to fix namespace pollution). -- Jilles Tjoelker From owner-svn-src-head@freebsd.org Sun Sep 20 20:50:21 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 18386A06E3C; Sun, 20 Sep 2015 20:50:21 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F0B671336; Sun, 20 Sep 2015 20:50:20 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKoK7D094755; Sun, 20 Sep 2015 20:50:20 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKoJUP094750; Sun, 20 Sep 2015 20:50:19 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202050.t8KKoJUP094750@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:50:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288037 - head/lib/libc/locale X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:50:21 -0000 Author: rodrigc Date: Sun Sep 20 20:50:18 2015 New Revision: 288037 URL: https://svnweb.freebsd.org/changeset/base/288037 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/locale/isctype.c head/lib/libc/locale/iswctype.c head/lib/libc/locale/setlocale.c head/lib/libc/locale/tolower.c head/lib/libc/locale/toupper.c Modified: head/lib/libc/locale/isctype.c ============================================================================== --- head/lib/libc/locale/isctype.c Sun Sep 20 20:47:19 2015 (r288036) +++ head/lib/libc/locale/isctype.c Sun Sep 20 20:50:18 2015 (r288037) @@ -45,184 +45,161 @@ __FBSDID("$FreeBSD$"); #undef digittoint int -digittoint(c) - int c; +digittoint(int c) { return (__sbmaskrune(c, 0xFF)); } #undef isalnum int -isalnum(c) - int c; +isalnum(int c) { return (__sbistype(c, _CTYPE_A|_CTYPE_D)); } #undef isalpha int -isalpha(c) - int c; +isalpha(int c) { return (__sbistype(c, _CTYPE_A)); } #undef isascii int -isascii(c) - int c; +isascii(int c) { return ((c & ~0x7F) == 0); } #undef isblank int -isblank(c) - int c; +isblank(int c) { return (__sbistype(c, _CTYPE_B)); } #undef iscntrl int -iscntrl(c) - int c; +iscntrl(int c) { return (__sbistype(c, _CTYPE_C)); } #undef isdigit int -isdigit(c) - int c; +isdigit(int c) { return (__isctype(c, _CTYPE_D)); } #undef isgraph int -isgraph(c) - int c; +isgraph(int c) { return (__sbistype(c, _CTYPE_G)); } #undef ishexnumber int -ishexnumber(c) - int c; +ishexnumber(int c) { return (__sbistype(c, _CTYPE_X)); } #undef isideogram int -isideogram(c) - int c; +isideogram(int c) { return (__sbistype(c, _CTYPE_I)); } #undef islower int -islower(c) - int c; +islower(int c) { return (__sbistype(c, _CTYPE_L)); } #undef isnumber int -isnumber(c) - int c; +isnumber(int c) { return (__sbistype(c, _CTYPE_D)); } #undef isphonogram int -isphonogram(c) - int c; +isphonogram(int c) { return (__sbistype(c, _CTYPE_Q)); } #undef isprint int -isprint(c) - int c; +isprint(int c) { return (__sbistype(c, _CTYPE_R)); } #undef ispunct int -ispunct(c) - int c; +ispunct(int c) { return (__sbistype(c, _CTYPE_P)); } #undef isrune int -isrune(c) - int c; +isrune(int c) { return (__sbistype(c, 0xFFFFFF00L)); } #undef isspace int -isspace(c) - int c; +isspace(int c) { return (__sbistype(c, _CTYPE_S)); } #undef isspecial int -isspecial(c) - int c; +isspecial(int c) { return (__sbistype(c, _CTYPE_T)); } #undef isupper int -isupper(c) - int c; +isupper(int c) { return (__sbistype(c, _CTYPE_U)); } #undef isxdigit int -isxdigit(c) - int c; +isxdigit(int c) { return (__isctype(c, _CTYPE_X)); } #undef toascii int -toascii(c) - int c; +toascii(int c) { return (c & 0x7F); } #undef tolower int -tolower(c) - int c; +tolower(int c) { return (__sbtolower(c)); } #undef toupper int -toupper(c) - int c; +toupper(int c) { return (__sbtoupper(c)); } Modified: head/lib/libc/locale/iswctype.c ============================================================================== --- head/lib/libc/locale/iswctype.c Sun Sep 20 20:47:19 2015 (r288036) +++ head/lib/libc/locale/iswctype.c Sun Sep 20 20:50:18 2015 (r288037) @@ -42,168 +42,147 @@ __FBSDID("$FreeBSD$"); #undef iswalnum int -iswalnum(wc) - wint_t wc; +iswalnum(wint_t wc) { return (__istype(wc, _CTYPE_A|_CTYPE_D)); } #undef iswalpha int -iswalpha(wc) - wint_t wc; +iswalpha(wint_t wc) { return (__istype(wc, _CTYPE_A)); } #undef iswascii int -iswascii(wc) - wint_t wc; +iswascii(wint_t wc) { return ((wc & ~0x7F) == 0); } #undef iswblank int -iswblank(wc) - wint_t wc; +iswblank(wint_t wc) { return (__istype(wc, _CTYPE_B)); } #undef iswcntrl int -iswcntrl(wc) - wint_t wc; +iswcntrl(wint_t wc) { return (__istype(wc, _CTYPE_C)); } #undef iswdigit int -iswdigit(wc) - wint_t wc; +iswdigit(wint_t wc) { return (__isctype(wc, _CTYPE_D)); } #undef iswgraph int -iswgraph(wc) - wint_t wc; +iswgraph(wint_t wc) { return (__istype(wc, _CTYPE_G)); } #undef iswhexnumber int -iswhexnumber(wc) - wint_t wc; +iswhexnumber(wint_t wc) { return (__istype(wc, _CTYPE_X)); } #undef iswideogram int -iswideogram(wc) - wint_t wc; +iswideogram(wint_t wc) { return (__istype(wc, _CTYPE_I)); } #undef iswlower int -iswlower(wc) - wint_t wc; +iswlower(wint_t wc) { return (__istype(wc, _CTYPE_L)); } #undef iswnumber int -iswnumber(wc) - wint_t wc; +iswnumber(wint_t wc) { return (__istype(wc, _CTYPE_D)); } #undef iswphonogram int -iswphonogram(wc) - wint_t wc; +iswphonogram(wint_t wc) { return (__istype(wc, _CTYPE_Q)); } #undef iswprint int -iswprint(wc) - wint_t wc; +iswprint(wint_t wc) { return (__istype(wc, _CTYPE_R)); } #undef iswpunct int -iswpunct(wc) - wint_t wc; +iswpunct(wint_t wc) { return (__istype(wc, _CTYPE_P)); } #undef iswrune int -iswrune(wc) - wint_t wc; +iswrune(wint_t wc) { return (__istype(wc, 0xFFFFFF00L)); } #undef iswspace int -iswspace(wc) - wint_t wc; +iswspace(wint_t wc) { return (__istype(wc, _CTYPE_S)); } #undef iswspecial int -iswspecial(wc) - wint_t wc; +iswspecial(wint_t wc) { return (__istype(wc, _CTYPE_T)); } #undef iswupper int -iswupper(wc) - wint_t wc; +iswupper(wint_t wc) { return (__istype(wc, _CTYPE_U)); } #undef iswxdigit int -iswxdigit(wc) - wint_t wc; +iswxdigit(wint_t wc) { return (__isctype(wc, _CTYPE_X)); } #undef towlower wint_t -towlower(wc) - wint_t wc; +towlower(wint_t wc) { return (__tolower(wc)); } #undef towupper wint_t -towupper(wc) - wint_t wc; +towupper(wint_t wc) { return (__toupper(wc)); } Modified: head/lib/libc/locale/setlocale.c ============================================================================== --- head/lib/libc/locale/setlocale.c Sun Sep 20 20:47:19 2015 (r288036) +++ head/lib/libc/locale/setlocale.c Sun Sep 20 20:50:18 2015 (r288037) @@ -98,9 +98,7 @@ static char *loadlocale(int); const char *__get_locale_env(int); char * -setlocale(category, locale) - int category; - const char *locale; +setlocale(int category, const char *locale) { int i, j, len, saverr; const char *env, *r; @@ -209,7 +207,7 @@ setlocale(category, locale) } static char * -currentlocale() +currentlocale(void) { int i; @@ -228,8 +226,7 @@ currentlocale() } static char * -loadlocale(category) - int category; +loadlocale(int category) { char *new = new_categories[category]; char *old = current_categories[category]; @@ -286,8 +283,7 @@ loadlocale(category) } const char * -__get_locale_env(category) - int category; +__get_locale_env(int category) { const char *env; Modified: head/lib/libc/locale/tolower.c ============================================================================== --- head/lib/libc/locale/tolower.c Sun Sep 20 20:47:19 2015 (r288036) +++ head/lib/libc/locale/tolower.c Sun Sep 20 20:50:18 2015 (r288037) @@ -45,9 +45,7 @@ __FBSDID("$FreeBSD$"); #include "mblocal.h" __ct_rune_t -___tolower_l(c, l) - __ct_rune_t c; - locale_t l; +___tolower_l(__ct_rune_t c, locale_t l) { size_t lim; FIX_LOCALE(l); @@ -72,8 +70,7 @@ ___tolower_l(c, l) return(c); } __ct_rune_t -___tolower(c) - __ct_rune_t c; +___tolower(__ct_rune_t c) { return ___tolower_l(c, __get_locale()); } Modified: head/lib/libc/locale/toupper.c ============================================================================== --- head/lib/libc/locale/toupper.c Sun Sep 20 20:47:19 2015 (r288036) +++ head/lib/libc/locale/toupper.c Sun Sep 20 20:50:18 2015 (r288037) @@ -45,9 +45,7 @@ __FBSDID("$FreeBSD$"); #include "mblocal.h" __ct_rune_t -___toupper_l(c, l) - __ct_rune_t c; - locale_t l; +___toupper_l(__ct_rune_t c, locale_t l) { size_t lim; FIX_LOCALE(l); @@ -74,8 +72,7 @@ ___toupper_l(c, l) return(c); } __ct_rune_t -___toupper(c) - __ct_rune_t c; +___toupper(__ct_rune_t c) { return ___toupper_l(c, __get_locale()); } From owner-svn-src-head@freebsd.org Sun Sep 20 20:50:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C70A3A06F44; Sun, 20 Sep 2015 20:50:58 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B8465156A; Sun, 20 Sep 2015 20:50:58 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKowu0096002; Sun, 20 Sep 2015 20:50:58 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKovBX095995; Sun, 20 Sep 2015 20:50:57 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202050.t8KKovBX095995@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:50:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288038 - head/lib/libc/inet X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:50:59 -0000 Author: rodrigc Date: Sun Sep 20 20:50:56 2015 New Revision: 288038 URL: https://svnweb.freebsd.org/changeset/base/288038 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/inet/inet_lnaof.c head/lib/libc/inet/inet_makeaddr.c head/lib/libc/inet/inet_net_ntop.c head/lib/libc/inet/inet_neta.c head/lib/libc/inet/inet_netof.c head/lib/libc/inet/inet_network.c Modified: head/lib/libc/inet/inet_lnaof.c ============================================================================== --- head/lib/libc/inet/inet_lnaof.c Sun Sep 20 20:50:18 2015 (r288037) +++ head/lib/libc/inet/inet_lnaof.c Sun Sep 20 20:50:56 2015 (r288038) @@ -47,8 +47,7 @@ __FBSDID("$FreeBSD$"); * number formats. */ in_addr_t -inet_lnaof(in) - struct in_addr in; +inet_lnaof(struct in_addr in) { in_addr_t i = ntohl(in.s_addr); Modified: head/lib/libc/inet/inet_makeaddr.c ============================================================================== --- head/lib/libc/inet/inet_makeaddr.c Sun Sep 20 20:50:18 2015 (r288037) +++ head/lib/libc/inet/inet_makeaddr.c Sun Sep 20 20:50:56 2015 (r288038) @@ -46,8 +46,7 @@ __FBSDID("$FreeBSD$"); * building addresses stored in the ifnet structure. */ struct in_addr -inet_makeaddr(net, host) - in_addr_t net, host; +inet_makeaddr(in_addr_t net, in_addr_t host) { struct in_addr a; Modified: head/lib/libc/inet/inet_net_ntop.c ============================================================================== --- head/lib/libc/inet/inet_net_ntop.c Sun Sep 20 20:50:18 2015 (r288037) +++ head/lib/libc/inet/inet_net_ntop.c Sun Sep 20 20:50:56 2015 (r288038) @@ -57,12 +57,7 @@ static char * inet_net_ntop_ipv6(const u * Paul Vixie (ISC), July 1996 */ char * -inet_net_ntop(af, src, bits, dst, size) - int af; - const void *src; - int bits; - char *dst; - size_t size; +inet_net_ntop(int af, const void *src, int bits, char *dst, size_t size) { switch (af) { case AF_INET: @@ -89,11 +84,7 @@ inet_net_ntop(af, src, bits, dst, size) * Paul Vixie (ISC), July 1996 */ static char * -inet_net_ntop_ipv4(src, bits, dst, size) - const u_char *src; - int bits; - char *dst; - size_t size; +inet_net_ntop_ipv4(const u_char *src, int bits, char *dst, size_t size) { char *odst = dst; char *t; Modified: head/lib/libc/inet/inet_neta.c ============================================================================== --- head/lib/libc/inet/inet_neta.c Sun Sep 20 20:50:18 2015 (r288037) +++ head/lib/libc/inet/inet_neta.c Sun Sep 20 20:50:56 2015 (r288038) @@ -52,10 +52,7 @@ __FBSDID("$FreeBSD$"); * Paul Vixie (ISC), July 1996 */ char * -inet_neta(src, dst, size) - in_addr_t src; - char *dst; - size_t size; +inet_neta(in_addr_t src, char *dst, size_t size) { char *odst = dst; char *tp; Modified: head/lib/libc/inet/inet_netof.c ============================================================================== --- head/lib/libc/inet/inet_netof.c Sun Sep 20 20:50:18 2015 (r288037) +++ head/lib/libc/inet/inet_netof.c Sun Sep 20 20:50:56 2015 (r288038) @@ -46,8 +46,7 @@ __FBSDID("$FreeBSD$"); * address; handles class a/b/c network #'s. */ in_addr_t -inet_netof(in) - struct in_addr in; +inet_netof(struct in_addr in) { in_addr_t i = ntohl(in.s_addr); Modified: head/lib/libc/inet/inet_network.c ============================================================================== --- head/lib/libc/inet/inet_network.c Sun Sep 20 20:50:18 2015 (r288037) +++ head/lib/libc/inet/inet_network.c Sun Sep 20 20:50:56 2015 (r288038) @@ -48,8 +48,7 @@ __FBSDID("$FreeBSD$"); * network numbers. */ in_addr_t -inet_network(cp) - const char *cp; +inet_network(const char *cp) { in_addr_t val, base, n; char c; From owner-svn-src-head@freebsd.org Sun Sep 20 20:51:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 234DFA06FA8; Sun, 20 Sep 2015 20:51:53 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EED311870; Sun, 20 Sep 2015 20:51:52 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKpqQK098005; Sun, 20 Sep 2015 20:51:52 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKpqQL098004; Sun, 20 Sep 2015 20:51:52 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202051.t8KKpqQL098004@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:51:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288039 - head/lib/libc/stdtime X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:51:53 -0000 Author: rodrigc Date: Sun Sep 20 20:51:52 2015 New Revision: 288039 URL: https://svnweb.freebsd.org/changeset/base/288039 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/stdtime/strftime.c Modified: head/lib/libc/stdtime/strftime.c ============================================================================== --- head/lib/libc/stdtime/strftime.c Sun Sep 20 20:50:56 2015 (r288038) +++ head/lib/libc/stdtime/strftime.c Sun Sep 20 20:51:52 2015 (r288039) @@ -127,13 +127,8 @@ strftime(char * __restrict s, size_t max } static char * -_fmt(format, t, pt, ptlim, warnp, loc) -const char * format; -const struct tm * const t; -char * pt; -const char * const ptlim; -int * warnp; -locale_t loc; +_fmt(const char *format, const struct tm * const t, char *pt, + const char * const ptlim, int *warnp, locale_t loc) { int Ealternative, Oalternative, PadIndex; struct lc_time_T *tptr = __get_current_time_locale(loc); @@ -592,12 +587,8 @@ label: } static char * -_conv(n, format, pt, ptlim, loc) -const int n; -const char * const format; -char * const pt; -const char * const ptlim; -locale_t loc; +_conv(const int n, const char * const format, char * const pt, + const char * const ptlim, locale_t loc) { char buf[INT_STRLEN_MAXIMUM(int) + 1]; @@ -606,10 +597,7 @@ locale_t loc; } static char * -_add(str, pt, ptlim) -const char * str; -char * pt; -const char * const ptlim; +_add(const char *str, char *pt, const char * const ptlim) { while (pt < ptlim && (*pt = *str++) != '\0') ++pt; @@ -625,14 +613,8 @@ const char * const ptlim; */ static char * -_yconv(a, b, convert_top, convert_yy, pt, ptlim, loc) -const int a; -const int b; -const int convert_top; -const int convert_yy; -char * pt; -const char * const ptlim; -locale_t loc; +_yconv(const int a, const int b, const int convert_top, const int convert_yy, + char *pt, const char * const ptlim, locale_t loc) { register int lead; register int trail; From owner-svn-src-head@freebsd.org Sun Sep 20 20:52:14 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A890DA06FF3; Sun, 20 Sep 2015 20:52:14 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 99E9E1AA1; Sun, 20 Sep 2015 20:52:14 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKqEmq098571; Sun, 20 Sep 2015 20:52:14 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKqEbW098570; Sun, 20 Sep 2015 20:52:14 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202052.t8KKqEbW098570@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:52:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288040 - head/lib/libc/xdr X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:52:14 -0000 Author: rodrigc Date: Sun Sep 20 20:52:13 2015 New Revision: 288040 URL: https://svnweb.freebsd.org/changeset/base/288040 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/xdr/xdr_float.c Modified: head/lib/libc/xdr/xdr_float.c ============================================================================== --- head/lib/libc/xdr/xdr_float.c Sun Sep 20 20:51:52 2015 (r288039) +++ head/lib/libc/xdr/xdr_float.c Sun Sep 20 20:52:13 2015 (r288040) @@ -102,9 +102,7 @@ static struct sgl_limits { #endif /* vax */ bool_t -xdr_float(xdrs, fp) - XDR *xdrs; - float *fp; +xdr_float(XDR *xdrs, float *fp) { #ifndef IEEEFP struct ieee_single is; From owner-svn-src-head@freebsd.org Sun Sep 20 20:53:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B644A050D5; Sun, 20 Sep 2015 20:53:25 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7CB7B1C5C; Sun, 20 Sep 2015 20:53:25 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKrPYT098664; Sun, 20 Sep 2015 20:53:25 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKrPc2098663; Sun, 20 Sep 2015 20:53:25 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202053.t8KKrPc2098663@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:53:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288041 - head/lib/libc/compat-43 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:53:25 -0000 Author: rodrigc Date: Sun Sep 20 20:53:24 2015 New Revision: 288041 URL: https://svnweb.freebsd.org/changeset/base/288041 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/compat-43/sigcompat.c Modified: head/lib/libc/compat-43/sigcompat.c ============================================================================== --- head/lib/libc/compat-43/sigcompat.c Sun Sep 20 20:52:13 2015 (r288040) +++ head/lib/libc/compat-43/sigcompat.c Sun Sep 20 20:53:24 2015 (r288041) @@ -42,9 +42,7 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" int -sigvec(signo, sv, osv) - int signo; - struct sigvec *sv, *osv; +sigvec(int signo, struct sigvec *sv, struct sigvec *osv) { struct sigaction sa, osa; struct sigaction *sap, *osap; @@ -69,8 +67,7 @@ sigvec(signo, sv, osv) } int -sigsetmask(mask) - int mask; +sigsetmask(int mask) { sigset_t set, oset; int n; @@ -84,8 +81,7 @@ sigsetmask(mask) } int -sigblock(mask) - int mask; +sigblock(int mask) { sigset_t set, oset; int n; From owner-svn-src-head@freebsd.org Sun Sep 20 20:55:01 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6B3FA051D6; Sun, 20 Sep 2015 20:55:01 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9E1B51EB7; Sun, 20 Sep 2015 20:55:01 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KKt17L000295; Sun, 20 Sep 2015 20:55:01 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KKt11m000294; Sun, 20 Sep 2015 20:55:01 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202055.t8KKt11m000294@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 20:55:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288042 - head/lib/libc/db/hash X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 20:55:01 -0000 Author: rodrigc Date: Sun Sep 20 20:55:00 2015 New Revision: 288042 URL: https://svnweb.freebsd.org/changeset/base/288042 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/db/hash/ndbm.c Modified: head/lib/libc/db/hash/ndbm.c ============================================================================== --- head/lib/libc/db/hash/ndbm.c Sun Sep 20 20:53:24 2015 (r288041) +++ head/lib/libc/db/hash/ndbm.c Sun Sep 20 20:55:00 2015 (r288042) @@ -56,9 +56,7 @@ __FBSDID("$FreeBSD$"); * NULL on failure */ extern DBM * -dbm_open(file, flags, mode) - const char *file; - int flags, mode; +dbm_open(const char *file, int flags, int mode) { HASHINFO info; char path[MAXPATHLEN]; @@ -80,8 +78,7 @@ dbm_open(file, flags, mode) } extern void -dbm_close(db) - DBM *db; +dbm_close(DBM *db) { (void)(db->close)(db); } @@ -92,9 +89,7 @@ dbm_close(db) * NULL on failure */ extern datum -dbm_fetch(db, key) - DBM *db; - datum key; +dbm_fetch(DBM *db, datum key) { datum retdata; int status; @@ -118,8 +113,7 @@ dbm_fetch(db, key) * NULL on failure */ extern datum -dbm_firstkey(db) - DBM *db; +dbm_firstkey(DBM *db) { int status; datum retkey; @@ -139,8 +133,7 @@ dbm_firstkey(db) * NULL on failure */ extern datum -dbm_nextkey(db) - DBM *db; +dbm_nextkey(DBM *db) { int status; datum retkey; @@ -160,9 +153,7 @@ dbm_nextkey(db) * <0 failure */ extern int -dbm_delete(db, key) - DBM *db; - datum key; +dbm_delete(DBM *db, datum key) { int status; DBT dbtkey; @@ -183,10 +174,7 @@ dbm_delete(db, key) * 1 if DBM_INSERT and entry exists */ extern int -dbm_store(db, key, data, flags) - DBM *db; - datum key, data; - int flags; +dbm_store(DBM *db, datum key, datum data, int flags) { DBT dbtkey, dbtdata; @@ -199,8 +187,7 @@ dbm_store(db, key, data, flags) } extern int -dbm_error(db) - DBM *db; +dbm_error(DBM *db) { HTAB *hp; @@ -209,8 +196,7 @@ dbm_error(db) } extern int -dbm_clearerr(db) - DBM *db; +dbm_clearerr(DBM *db) { HTAB *hp; @@ -220,8 +206,7 @@ dbm_clearerr(db) } extern int -dbm_dirfno(db) - DBM *db; +dbm_dirfno(DBM *db) { return(((HTAB *)db->internal)->fp); } From owner-svn-src-head@freebsd.org Sun Sep 20 21:06:38 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 94777A05A37; Sun, 20 Sep 2015 21:06:38 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 85DBC1A78; Sun, 20 Sep 2015 21:06:38 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KL6c4X004576; Sun, 20 Sep 2015 21:06:38 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KL6cfJ004575; Sun, 20 Sep 2015 21:06:38 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509202106.t8KL6cfJ004575@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 20 Sep 2015 21:06:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288043 - head/usr.bin/ctlstat X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 21:06:38 -0000 Author: mav Date: Sun Sep 20 21:06:37 2015 New Revision: 288043 URL: https://svnweb.freebsd.org/changeset/base/288043 Log: Output times as normal microseconds, rather then in bintime format. Modified: head/usr.bin/ctlstat/ctlstat.c Modified: head/usr.bin/ctlstat/ctlstat.c ============================================================================== --- head/usr.bin/ctlstat/ctlstat.c Sun Sep 20 20:55:00 2015 (r288042) +++ head/usr.bin/ctlstat/ctlstat.c Sun Sep 20 21:06:37 2015 (r288043) @@ -326,8 +326,8 @@ compute_stats(struct ctl_lun_io_stats *c */ #define PRINT_BINTIME(prefix, bt) \ - printf("%s %jd s %ju frac\n", prefix, (intmax_t)(bt).sec, \ - (uintmax_t)(bt).frac) + printf("%s %jd.%06ju\n", prefix, (intmax_t)(bt).sec, \ + (uintmax_t)(((bt).frac >> 32) * 1000000 >> 32)) static const char *iotypes[] = {"NO IO", "READ", "WRITE"}; static void @@ -360,9 +360,8 @@ ctlstat_dump(struct ctlstat_context *ctx } #define JSON_BINTIME(prefix, bt) \ - printf("\"%s\":{\"sec\":%jd,\"frac\":%ju},", \ - prefix, (intmax_t)(bt).sec, (uintmax_t)(bt).frac) - + printf("\"%s\":%jd.%06ju,", prefix, (intmax_t)(bt).sec, \ + (uintmax_t)(((bt).frac >> 32) * 1000000 >> 32)) static void ctlstat_json(struct ctlstat_context *ctx) { int iotype, lun, port; From owner-svn-src-head@freebsd.org Sun Sep 20 21:18:34 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A8DB2A06061; Sun, 20 Sep 2015 21:18:34 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8FDA8100B; Sun, 20 Sep 2015 21:18:34 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KLIYr4009835; Sun, 20 Sep 2015 21:18:34 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KLIYxJ009834; Sun, 20 Sep 2015 21:18:34 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509202118.t8KLIYxJ009834@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 20 Sep 2015 21:18:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288044 - head/sys/fs/fifofs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 21:18:34 -0000 Author: kib Date: Sun Sep 20 21:18:33 2015 New Revision: 288044 URL: https://svnweb.freebsd.org/changeset/base/288044 Log: Ensure that when a blockable open of fifo returns success, a valid file descriptor opened for complimentary access exists as well. The implementation of the guarantee is done by counting the generations of readers and writers opens. We return success and not EINTR or ERESTART error, when the sleep for complimentary opening is interrupted, but the generation was changed during the sleep. Longer explanation: assume there are two threads, A doing open("fifo", O_RDONLY) and B doing open("fifo", O_WRONLY), and no other threads either trying to open the fifo, nor there are any file descriptors referencing the fifo. Before the change, it was possible e.g. for for thread A to return a valid file descriptor, while thread B returned EINTR if a signal to B was delivered simultaneously with the wakeup from A. After the change, in this situation both A::open() and B::open() succeed and the signal is made "as if" it was noticed slightly later. Note that the signal actual delivery is not changed, it is done by ast on syscall return path, so signal handler is still executed before first instruction after syscall. See PR for the code demonstrating the issue. PR: 203162 Reported by: Victor Stinner victor.stinner@gmail.com Reviewed by: jilles Tested by: bapt, pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/fs/fifofs/fifo_vnops.c Modified: head/sys/fs/fifofs/fifo_vnops.c ============================================================================== --- head/sys/fs/fifofs/fifo_vnops.c Sun Sep 20 21:06:37 2015 (r288043) +++ head/sys/fs/fifofs/fifo_vnops.c Sun Sep 20 21:18:33 2015 (r288044) @@ -64,6 +64,8 @@ struct fifoinfo { struct pipe *fi_pipe; long fi_readers; long fi_writers; + u_int fi_rgen; + u_int fi_wgen; }; static vop_print_t fifo_print; @@ -137,6 +139,7 @@ fifo_open(ap) struct thread *td; struct fifoinfo *fip; struct pipe *fpipe; + u_int gen; int error, stops_deferred; vp = ap->a_vp; @@ -164,6 +167,7 @@ fifo_open(ap) PIPE_LOCK(fpipe); if (ap->a_mode & FREAD) { fip->fi_readers++; + fip->fi_rgen++; if (fip->fi_readers == 1) { fpipe->pipe_state &= ~PIPE_EOF; if (fip->fi_writers > 0) @@ -179,6 +183,7 @@ fifo_open(ap) return (ENXIO); } fip->fi_writers++; + fip->fi_wgen++; if (fip->fi_writers == 1) { fpipe->pipe_state &= ~PIPE_EOF; if (fip->fi_readers > 0) @@ -187,6 +192,7 @@ fifo_open(ap) } if ((ap->a_mode & O_NONBLOCK) == 0) { if ((ap->a_mode & FREAD) && fip->fi_writers == 0) { + gen = fip->fi_wgen; VOP_UNLOCK(vp, 0); stops_deferred = sigallowstop(); error = msleep(&fip->fi_readers, PIPE_MTX(fpipe), @@ -194,7 +200,7 @@ fifo_open(ap) if (stops_deferred) sigdeferstop(); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); - if (error) { + if (error != 0 && gen == fip->fi_wgen) { fip->fi_readers--; if (fip->fi_readers == 0) { PIPE_LOCK(fpipe); @@ -214,6 +220,7 @@ fifo_open(ap) */ } if ((ap->a_mode & FWRITE) && fip->fi_readers == 0) { + gen = fip->fi_rgen; VOP_UNLOCK(vp, 0); stops_deferred = sigallowstop(); error = msleep(&fip->fi_writers, PIPE_MTX(fpipe), @@ -221,7 +228,7 @@ fifo_open(ap) if (stops_deferred) sigdeferstop(); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); - if (error) { + if (error != 0 && gen == fip->fi_rgen) { fip->fi_writers--; if (fip->fi_writers == 0) { PIPE_LOCK(fpipe); From owner-svn-src-head@freebsd.org Sun Sep 20 21:21:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 001B4A0625A; Sun, 20 Sep 2015 21:21:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E22F21294; Sun, 20 Sep 2015 21:21:04 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KLL4iR011710; Sun, 20 Sep 2015 21:21:04 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KLL24u011698; Sun, 20 Sep 2015 21:21:02 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202121.t8KLL24u011698@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 21:21:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288045 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 21:21:05 -0000 Author: rodrigc Date: Sun Sep 20 21:21:01 2015 New Revision: 288045 URL: https://svnweb.freebsd.org/changeset/base/288045 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/net/gethostbydns.c head/lib/libc/net/getnetbydns.c head/lib/libc/net/getservent.c head/lib/libc/net/linkaddr.c head/lib/libc/net/nslexer.l head/lib/libc/net/nsparser.y head/lib/libc/net/recv.c head/lib/libc/net/rthdr.c head/lib/libc/net/send.c Modified: head/lib/libc/net/gethostbydns.c ============================================================================== --- head/lib/libc/net/gethostbydns.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/gethostbydns.c Sun Sep 20 21:21:01 2015 (r288045) @@ -107,10 +107,7 @@ int _dns_ttl_; #ifdef DEBUG static void -dprintf(msg, num, res) - char *msg; - int num; - res_state res; +dprintf(char *msg, int num, res_state res) { if (res->options & RES_DEBUG) { int save = errno; @@ -769,7 +766,7 @@ _sethostdnsent(int stayopen) } void -_endhostdnsent() +_endhostdnsent(void) { res_state statp; Modified: head/lib/libc/net/getnetbydns.c ============================================================================== --- head/lib/libc/net/getnetbydns.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/getnetbydns.c Sun Sep 20 21:21:01 2015 (r288045) @@ -455,7 +455,7 @@ _setnetdnsent(int stayopen) } void -_endnetdnsent() +_endnetdnsent(void) { res_state statp; Modified: head/lib/libc/net/getservent.c ============================================================================== --- head/lib/libc/net/getservent.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/getservent.c Sun Sep 20 21:21:01 2015 (r288045) @@ -1241,7 +1241,7 @@ setservent(int stayopen) } void -endservent() +endservent(void) { #ifdef NS_CACHING static const nss_cache_info cache_info = NS_MP_CACHE_INFO_INITIALIZER( @@ -1362,7 +1362,7 @@ getservbyport(int port, const char *prot } struct servent * -getservent() +getservent(void) { struct key key; Modified: head/lib/libc/net/linkaddr.c ============================================================================== --- head/lib/libc/net/linkaddr.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/linkaddr.c Sun Sep 20 21:21:01 2015 (r288045) @@ -50,9 +50,7 @@ __FBSDID("$FreeBSD$"); #define LETTER (4*3) void -link_addr(addr, sdl) - const char *addr; - struct sockaddr_dl *sdl; +link_addr(const char *addr, struct sockaddr_dl *sdl) { char *cp = sdl->sdl_data; char *cplim = sdl->sdl_len + (char *)sdl; @@ -121,8 +119,7 @@ link_addr(addr, sdl) static const char hexlist[] = "0123456789abcdef"; char * -link_ntoa(sdl) - const struct sockaddr_dl *sdl; +link_ntoa(const struct sockaddr_dl *sdl) { static char obuf[64]; char *out = obuf; Modified: head/lib/libc/net/nslexer.l ============================================================================== --- head/lib/libc/net/nslexer.l Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/nslexer.l Sun Sep 20 21:21:01 2015 (r288045) @@ -97,14 +97,13 @@ STRING [a-zA-Z][a-zA-Z0-9_]* #undef _nsyywrap int -_nsyywrap() +_nsyywrap(void) { return 1; } /* _nsyywrap */ void -_nsyyerror(msg) - const char *msg; +_nsyyerror(const char *msg) { syslog(LOG_ERR, "NSSWITCH(nslexer): %s line %d: %s at '%s'", Modified: head/lib/libc/net/nsparser.y ============================================================================== --- head/lib/libc/net/nsparser.y Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/nsparser.y Sun Sep 20 21:21:01 2015 (r288045) @@ -145,8 +145,7 @@ Action %% static void -_nsaddsrctomap(elem) - const char *elem; +_nsaddsrctomap(const char *elem) { int i, lineno; extern int _nsyylineno; Modified: head/lib/libc/net/recv.c ============================================================================== --- head/lib/libc/net/recv.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/recv.c Sun Sep 20 21:21:01 2015 (r288045) @@ -40,10 +40,7 @@ __FBSDID("$FreeBSD$"); #include ssize_t -recv(s, buf, len, flags) - int s, flags; - size_t len; - void *buf; +recv(int s, void *buf, size_t len, int flags) { /* * POSIX says recv() shall be a cancellation point, so call the Modified: head/lib/libc/net/rthdr.c ============================================================================== --- head/lib/libc/net/rthdr.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/rthdr.c Sun Sep 20 21:21:01 2015 (r288045) @@ -47,8 +47,7 @@ __FBSDID("$FreeBSD$"); */ size_t -inet6_rthdr_space(type, seg) - int type, seg; +inet6_rthdr_space(int type, int seg) { switch (type) { case IPV6_RTHDR_TYPE_0: @@ -67,9 +66,7 @@ inet6_rthdr_space(type, seg) } struct cmsghdr * -inet6_rthdr_init(bp, type) - void *bp; - int type; +inet6_rthdr_init(void *bp, int type) { struct cmsghdr *ch = (struct cmsghdr *)bp; struct ip6_rthdr *rthdr; @@ -98,10 +95,7 @@ inet6_rthdr_init(bp, type) /* ARGSUSED */ int -inet6_rthdr_add(cmsg, addr, flags) - struct cmsghdr *cmsg; - const struct in6_addr *addr; - u_int flags; +inet6_rthdr_add(struct cmsghdr *cmsg, const struct in6_addr *addr, u_int flags) { struct ip6_rthdr *rthdr; @@ -143,9 +137,7 @@ inet6_rthdr_add(cmsg, addr, flags) /* ARGSUSED */ int -inet6_rthdr_lasthop(cmsg, flags) - struct cmsghdr *cmsg; - unsigned int flags; +inet6_rthdr_lasthop(struct cmsghdr *cmsg, unsigned int flags) { struct ip6_rthdr *rthdr; @@ -183,9 +175,7 @@ inet6_rthdr_lasthop(cmsg, flags) #if 0 int -inet6_rthdr_reverse(in, out) - const struct cmsghdr *in; - struct cmsghdr *out; +inet6_rthdr_reverse(const struct cmsghdr *in, struct cmsghdr *out) { return (-1); @@ -193,8 +183,7 @@ inet6_rthdr_reverse(in, out) #endif int -inet6_rthdr_segments(cmsg) - const struct cmsghdr *cmsg; +inet6_rthdr_segments(const struct cmsghdr *cmsg) { struct ip6_rthdr *rthdr; @@ -217,9 +206,7 @@ inet6_rthdr_segments(cmsg) } struct in6_addr * -inet6_rthdr_getaddr(cmsg, idx) - struct cmsghdr *cmsg; - int idx; +inet6_rthdr_getaddr(struct cmsghdr *cmsg, int idx) { struct ip6_rthdr *rthdr; @@ -249,9 +236,7 @@ inet6_rthdr_getaddr(cmsg, idx) } int -inet6_rthdr_getflags(cmsg, idx) - const struct cmsghdr *cmsg; - int idx; +inet6_rthdr_getflags(const struct cmsghdr *cmsg, int idx) { struct ip6_rthdr *rthdr; Modified: head/lib/libc/net/send.c ============================================================================== --- head/lib/libc/net/send.c Sun Sep 20 21:18:33 2015 (r288044) +++ head/lib/libc/net/send.c Sun Sep 20 21:21:01 2015 (r288045) @@ -40,10 +40,7 @@ __FBSDID("$FreeBSD$"); #include ssize_t -send(s, msg, len, flags) - int s, flags; - size_t len; - const void *msg; +send(int s, const void *msg, size_t len, int flags) { /* * POSIX says send() shall be a cancellation point, so call the From owner-svn-src-head@freebsd.org Sun Sep 20 21:21:18 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3AB6BA0628D; Sun, 20 Sep 2015 21:21:18 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2BBF7143F; Sun, 20 Sep 2015 21:21:18 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KLLIw4011763; Sun, 20 Sep 2015 21:21:18 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KLLIEM011762; Sun, 20 Sep 2015 21:21:18 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509202121.t8KLLIEM011762@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Sun, 20 Sep 2015 21:21:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288046 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 21:21:18 -0000 Author: rodrigc Date: Sun Sep 20 21:21:17 2015 New Revision: 288046 URL: https://svnweb.freebsd.org/changeset/base/288046 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/net/rcmd.c Modified: head/lib/libc/net/rcmd.c ============================================================================== --- head/lib/libc/net/rcmd.c Sun Sep 20 21:21:01 2015 (r288045) +++ head/lib/libc/net/rcmd.c Sun Sep 20 21:21:17 2015 (r288046) @@ -73,22 +73,15 @@ static int __icheckhost(const struct soc char paddr[NI_MAXHOST]; int -rcmd(ahost, rport, locuser, remuser, cmd, fd2p) - char **ahost; - u_short rport; - const char *locuser, *remuser, *cmd; - int *fd2p; +rcmd(char **ahost, int rport, const char *locuser, const char *remuser, + const char *cmd, int *fd2p) { return rcmd_af(ahost, rport, locuser, remuser, cmd, fd2p, AF_INET); } int -rcmd_af(ahost, rport, locuser, remuser, cmd, fd2p, af) - char **ahost; - u_short rport; - const char *locuser, *remuser, *cmd; - int *fd2p; - int af; +rcmd_af(char **ahost, int rport, const char *locuser, const char *remuser, + const char *cmd, int *fd2p, int af) { struct addrinfo hints, *res, *ai; struct sockaddr_storage from; @@ -321,15 +314,13 @@ bad: } int -rresvport(port) - int *port; +rresvport(int *port) { return rresvport_af(port, AF_INET); } int -rresvport_af(alport, family) - int *alport, family; +rresvport_af(int *alport, int family) { int s; struct sockaddr_storage ss; @@ -380,9 +371,7 @@ int __check_rhosts_file = 1; char *__rcmd_errstr; int -ruserok(rhost, superuser, ruser, luser) - const char *rhost, *ruser, *luser; - int superuser; +ruserok(const char *rhost, int superuser, const char *ruser, const char *luser) { struct addrinfo hints, *res, *r; int error; @@ -415,10 +404,7 @@ ruserok(rhost, superuser, ruser, luser) * Returns 0 if ok, -1 if not ok. */ int -iruserok(raddr, superuser, ruser, luser) - unsigned long raddr; - int superuser; - const char *ruser, *luser; +iruserok(unsigned long raddr, int superuser, const char *ruser, const char *luser) { struct sockaddr_in sin; @@ -436,11 +422,8 @@ iruserok(raddr, superuser, ruser, luser) * Returns 0 if ok, -1 if not ok. */ int -iruserok_sa(ra, rlen, superuser, ruser, luser) - const void *ra; - int rlen; - int superuser; - const char *ruser, *luser; +iruserok_sa(const void *ra, int rlen, int superuser, const char *ruser, + const char *luser) { char *cp; struct stat sbuf; @@ -520,10 +503,7 @@ again: * Returns 0 if ok, -1 if not ok. */ int -__ivaliduser(hostf, raddr, luser, ruser) - FILE *hostf; - u_int32_t raddr; - const char *luser, *ruser; +__ivaliduser(FILE *hostf, u_int32_t raddr, const char *luser, const char *ruser) { struct sockaddr_in sin; @@ -541,11 +521,8 @@ __ivaliduser(hostf, raddr, luser, ruser) * XXX obsolete API. */ int -__ivaliduser_af(hostf, raddr, luser, ruser, af, len) - FILE *hostf; - const void *raddr; - const char *luser, *ruser; - int af, len; +__ivaliduser_af(FILE *hostf, const void *raddr, const char *luser, + const char *ruser, int af, int len) { struct sockaddr *sa = NULL; struct sockaddr_in *sin = NULL; @@ -584,11 +561,8 @@ __ivaliduser_af(hostf, raddr, luser, rus } int -__ivaliduser_sa(hostf, raddr, salen, luser, ruser) - FILE *hostf; - const struct sockaddr *raddr; - socklen_t salen; - const char *luser, *ruser; +__ivaliduser_sa(FILE *hostf, const struct sockaddr *raddr, socklen_t salen, + const char *luser, const char *ruser) { char *user, *p; int ch; @@ -707,10 +681,7 @@ __ivaliduser_sa(hostf, raddr, salen, lus * Returns "true" if match, 0 if no match. */ static int -__icheckhost(raddr, salen, lhost) - const struct sockaddr *raddr; - socklen_t salen; - const char *lhost; +__icheckhost(const struct sockaddr *raddr, socklen_t salen, const char *lhost) { struct sockaddr_in sin; struct sockaddr_in6 *sin6; From owner-svn-src-head@freebsd.org Sun Sep 20 22:52:41 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 296F6A06FC1; Sun, 20 Sep 2015 22:52:41 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 17C15141A; Sun, 20 Sep 2015 22:52:41 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8KMqeV4051290; Sun, 20 Sep 2015 22:52:40 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8KMqeYQ051289; Sun, 20 Sep 2015 22:52:40 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509202252.t8KMqeYQ051289@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sun, 20 Sep 2015 22:52:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288049 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 22:52:41 -0000 Author: adrian Date: Sun Sep 20 22:52:40 2015 New Revision: 288049 URL: https://svnweb.freebsd.org/changeset/base/288049 Log: Disable HT40 in if_rsu for now. There's something missing in the HT40 setup pieces and so (at least) transmit doesn't work. It'll just fall back to being a straight HT20 device and negotiate HT20 only. Tested by: Idwer Vollering Modified: head/sys/dev/usb/wlan/if_rsu.c Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Sun Sep 20 22:27:19 2015 (r288048) +++ head/sys/dev/usb/wlan/if_rsu.c Sun Sep 20 22:52:40 2015 (r288049) @@ -445,7 +445,13 @@ rsu_attach(device_t self) IEEE80211_HTCAP_MAXAMSDU_3839 | IEEE80211_HTCAP_SMPS_OFF; + /* + * XXX HT40 isn't working in this driver yet - there's + * something missing. Disable it for now. + */ +#if 0 ic->ic_htcaps |= IEEE80211_HTCAP_CHWIDTH40; +#endif /* set number of spatial streams */ ic->ic_txstream = 1; From owner-svn-src-head@freebsd.org Sun Sep 20 23:09:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7D76A056FB; Sun, 20 Sep 2015 23:09:25 +0000 (UTC) (envelope-from hiren@strugglingcoder.info) Received: from mail.strugglingcoder.info (strugglingcoder.info [65.19.130.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.strugglingcoder.info", Issuer "mail.strugglingcoder.info" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id A071C1B6F; Sun, 20 Sep 2015 23:09:25 +0000 (UTC) (envelope-from hiren@strugglingcoder.info) Received: from localhost (unknown [10.1.1.3]) (Authenticated sender: hiren@strugglingcoder.info) by mail.strugglingcoder.info (Postfix) with ESMTPA id 96AABCE048; Sun, 20 Sep 2015 16:09:24 -0700 (PDT) Date: Sun, 20 Sep 2015 16:09:24 -0700 From: hiren panchasara To: Hans Petter Selasky Cc: "src-committers@freebsd.org" , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" Subject: Re: svn commit: r287780 - in head: share/man/man9 sys/kern sys/sys Message-ID: <20150920230924.GA61906@strugglingcoder.info> References: <20150916220559.GS1023@FreeBSD.org> <55FA69BD.10507@selasky.org> <0952027A-5276-487D-99B8-74747B0EEF5D@FreeBSD.org> <55FD23C5.5010008@selasky.org> <64D8263B-1F5D-40E5-994C-479C39B69DC9@neville-neil.com> <1442684369.1224.179.camel@freebsd.org> <55FDA1E7.8050007@fastmail.net> <20150920042609.GA28414@FreeBSD.org> <55FE732E.1010305@selasky.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="0F1p//8PRICkK4MW" Content-Disposition: inline In-Reply-To: <55FE732E.1010305@selasky.org> User-Agent: Mutt/1.5.23 (2014-03-12) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Sep 2015 23:09:25 -0000 --0F1p//8PRICkK4MW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 09/20/15 at 10:49P, Hans Petter Selasky wrote: > hiren: jch@, wrote in a comment in Phabricator he wanted to approve the= =20 > change, so it is not fully true that no other kernel developers approved= =20 > the change, for that matter. Yes, I know. And I think that's what I said in my previous email. Cheers, Hiren --0F1p//8PRICkK4MW Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQF8BAABCgBmBQJV/zyhXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRBNEUyMEZBMUQ4Nzg4RjNGMTdFNjZGMDI4 QjkyNTBFMTU2M0VERkU1AAoJEIuSUOFWPt/l5xoIAJzxesbSmLPFbyRxQW1zinkI cF8jffDzhcRPl2+uChnzhbhsazgO+uTTCn4IqElTMIc0AEHyZC4wQDUrgkuXCvfj l/C+OQYgEfGxYig8pOXVLD6xfzTkFj3m7pwgTELEIkGhd6iGEQFnjNXjLR//yH3Y AnobsQxO2alDIVV+gC+s6Y9LxQVjVNnKVF/Mp+RsPQEs9pAR/G5ASXnbVtJGtEla vUTAPDnSiE8jj8Dlb2Cokwyzvej0g0iOTygG4IqPJFn3zizYu26yu/nlBpVQZffA a6YWelmVA3HdMYZc2FH5nP5cKCFd3Do6H0bzLizDTB7ulZW5tcVd+VNzXBRWPWM= =RReZ -----END PGP SIGNATURE----- --0F1p//8PRICkK4MW-- From owner-svn-src-head@freebsd.org Mon Sep 21 01:51:39 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0A4FDA06455; Mon, 21 Sep 2015 01:51:39 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EE82119DB; Mon, 21 Sep 2015 01:51:38 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L1pcxY022916; Mon, 21 Sep 2015 01:51:38 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L1pcWF022914; Mon, 21 Sep 2015 01:51:38 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201509210151.t8L1pcWF022914@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Mon, 21 Sep 2015 01:51:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288050 - head/sys/arm/allwinner/a20 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 01:51:39 -0000 Author: loos Date: Mon Sep 21 01:51:37 2015 New Revision: 288050 URL: https://svnweb.freebsd.org/changeset/base/288050 Log: Add the A20 glue code for if_dwc. This code initializes the GMAC clock and sets the pin mux to rgmii. It also override the if_dwc defaults to set the alternate descriptor type and MII clock used on A20. Tested on cubieboard2 and banana pi. Added: head/sys/arm/allwinner/a20/a20_if_dwc.c (contents, props changed) Modified: head/sys/arm/allwinner/a20/files.a20 Added: head/sys/arm/allwinner/a20/a20_if_dwc.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/allwinner/a20/a20_if_dwc.c Mon Sep 21 01:51:37 2015 (r288050) @@ -0,0 +1,107 @@ +/*- + * Copyright (c) 2015 Luiz Otavio O Souza + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include + +#include + +#include +#include +#include +#include + +#include +#include + +#include "if_dwc_if.h" + +static int +a20_if_dwc_probe(device_t dev) +{ + + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + if (!ofw_bus_is_compatible(dev, "allwinner,sun7i-a20-gmac")) + return (ENXIO); + device_set_desc(dev, "A20 Gigabit Ethernet Controller"); + + return (BUS_PROBE_DEFAULT); +} + +static int +a20_if_dwc_init(device_t dev) +{ + + /* Activate GMAC clock and set the pin mux to rgmii. */ + if (a10_clk_gmac_activate(ofw_bus_get_node(dev)) != 0 || + a10_gpio_ethernet_activate(A10_GPIO_FUNC_RGMII)) { + device_printf(dev, "could not activate gmac module\n"); + return (ENXIO); + } + + return (0); +} + +static int +a20_if_dwc_mac_type(device_t dev) +{ + + return (DWC_GMAC_ALT_DESC); +} + +static int +a20_if_dwc_mii_clk(device_t dev) +{ + + return (GMAC_MII_CLK_150_250M_DIV102); +} + +static device_method_t a20_dwc_methods[] = { + DEVMETHOD(device_probe, a20_if_dwc_probe), + + DEVMETHOD(if_dwc_init, a20_if_dwc_init), + DEVMETHOD(if_dwc_mac_type, a20_if_dwc_mac_type), + DEVMETHOD(if_dwc_mii_clk, a20_if_dwc_mii_clk), + + DEVMETHOD_END +}; + +static devclass_t a20_dwc_devclass; + +extern driver_t dwc_driver; + +DEFINE_CLASS_1(dwc, a20_dwc_driver, a20_dwc_methods, sizeof(struct dwc_softc), + dwc_driver); +DRIVER_MODULE(a20_dwc, simplebus, a20_dwc_driver, a20_dwc_devclass, 0, 0); + +MODULE_DEPEND(a20_dwc, dwc, 1, 1, 1); Modified: head/sys/arm/allwinner/a20/files.a20 ============================================================================== --- head/sys/arm/allwinner/a20/files.a20 Sun Sep 20 22:52:40 2015 (r288049) +++ head/sys/arm/allwinner/a20/files.a20 Mon Sep 21 01:51:37 2015 (r288050) @@ -1,3 +1,4 @@ # $FreeBSD$ arm/allwinner/a20/a20_mp.c optional smp +arm/allwinner/a20/a20_if_dwc.c optional dwc From owner-svn-src-head@freebsd.org Mon Sep 21 02:12:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 92715A06CC9; Mon, 21 Sep 2015 02:12:02 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7C34611CF; Mon, 21 Sep 2015 02:12:02 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L2C206033044; Mon, 21 Sep 2015 02:12:02 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L2C2IF033043; Mon, 21 Sep 2015 02:12:02 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509210212.t8L2C2IF033043@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Mon, 21 Sep 2015 02:12:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288051 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 02:12:02 -0000 Author: adrian Date: Mon Sep 21 02:12:01 2015 New Revision: 288051 URL: https://svnweb.freebsd.org/changeset/base/288051 Log: Drain the mbuf queue upon rsu_stop(). Correctly (I hope!) remove net80211 references before doing so. Just doing a dumb mbufq drain isn't enough. If enough traffic occurs and the mbuf queue fills up then transmit stalls (which I'm not fixing in this commit!) but then the mbuf queue stays full until the driver is removed. There's also the net80211 node refcounting leak. This just ensures that during rsu_stop and detach the mbuf queue is purged (and references!) so the queue-full situation can be recovered from. Modified: head/sys/dev/usb/wlan/if_rsu.c Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Mon Sep 21 01:51:37 2015 (r288050) +++ head/sys/dev/usb/wlan/if_rsu.c Mon Sep 21 02:12:01 2015 (r288051) @@ -508,6 +508,8 @@ rsu_detach(device_t self) rsu_stop(sc); RSU_UNLOCK(sc); usbd_transfer_unsetup(sc->sc_xfer, RSU_N_TRANSFER); + + /* Frames are freed; detach from net80211 */ ieee80211_ifdetach(ic); taskqueue_drain_timeout(taskqueue_thread, &sc->calib_task); @@ -516,7 +518,6 @@ rsu_detach(device_t self) rsu_free_tx_list(sc); rsu_free_rx_list(sc); - mbufq_drain(&sc->sc_snd); mtx_destroy(&sc->sc_mtx); return (0); @@ -759,6 +760,9 @@ rsu_getbuf(struct rsu_softc *sc) RSU_ASSERT_LOCKED(sc); bf = _rsu_getbuf(sc); + if (bf == NULL) { + RSU_DPRINTF(sc, RSU_DEBUG_TX, "%s: no buffers\n", __func__); + } return (bf); } @@ -1997,6 +2001,10 @@ rsu_transmit(struct ieee80211com *ic, st } error = mbufq_enqueue(&sc->sc_snd, m); if (error) { + RSU_DPRINTF(sc, RSU_DEBUG_TX, + "%s: mbufq_enable: failed (%d)\n", + __func__, + error); RSU_UNLOCK(sc); return (error); } @@ -2007,6 +2015,21 @@ rsu_transmit(struct ieee80211com *ic, st } static void +rsu_drain_mbufq(struct rsu_softc *sc) +{ + struct mbuf *m; + struct ieee80211_node *ni; + + RSU_ASSERT_LOCKED(sc); + while ((m = mbufq_dequeue(&sc->sc_snd)) != NULL) { + ni = (struct ieee80211_node *)m->m_pkthdr.rcvif; + m->m_pkthdr.rcvif = NULL; + ieee80211_free_node(ni); + m_freem(m); + } +} + +static void rsu_start(struct rsu_softc *sc) { struct ieee80211_node *ni; @@ -2018,6 +2041,8 @@ rsu_start(struct rsu_softc *sc) while ((m = mbufq_dequeue(&sc->sc_snd)) != NULL) { bf = rsu_getbuf(sc); if (bf == NULL) { + RSU_DPRINTF(sc, RSU_DEBUG_TX, + "%s: failed to get buffer\n", __func__); mbufq_prepend(&sc->sc_snd, m); break; } @@ -2026,6 +2051,8 @@ rsu_start(struct rsu_softc *sc) m->m_pkthdr.rcvif = NULL; if (rsu_tx_start(sc, ni, m, bf) != 0) { + RSU_DPRINTF(sc, RSU_DEBUG_TX, + "%s: failed to transmit\n", __func__); if_inc_counter(ni->ni_vap->iv_ifp, IFCOUNTER_OERRORS, 1); rsu_freebuf(sc, bf); @@ -2551,6 +2578,9 @@ rsu_init(struct rsu_softc *sc) RSU_ASSERT_LOCKED(sc); + /* Ensure the mbuf queue is drained */ + rsu_drain_mbufq(sc); + /* Init host async commands ring. */ sc->cmdq.cur = sc->cmdq.next = sc->cmdq.queued = 0; @@ -2660,6 +2690,9 @@ rsu_stop(struct rsu_softc *sc) for (i = 0; i < RSU_N_TRANSFER; i++) usbd_transfer_stop(sc->sc_xfer[i]); + + /* Ensure the mbuf queue is drained */ + rsu_drain_mbufq(sc); } /* From owner-svn-src-head@freebsd.org Mon Sep 21 02:30:24 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F3A6DA05692; Mon, 21 Sep 2015 02:30:23 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D73DD1910; Mon, 21 Sep 2015 02:30:23 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L2UNcv039371; Mon, 21 Sep 2015 02:30:23 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L2UNcs039369; Mon, 21 Sep 2015 02:30:23 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509210230.t8L2UNcs039369@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Mon, 21 Sep 2015 02:30:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288052 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 02:30:24 -0000 Author: adrian Date: Mon Sep 21 02:30:22 2015 New Revision: 288052 URL: https://svnweb.freebsd.org/changeset/base/288052 Log: Convert if_rsu to use a deferred transmit task rather than using rsu_start() to do it directly. Ensure that we re-queue starting transmit upon TX completion. This solves two issues: * It stops tx stalls - before this, if the transmit path filled the mbuf queue then it'd never start another transmit. * It enforces ordering - this is very required for 802.11n which requires frames to be transmitted in the order they're queued. Since everything remotely involved in USB has an unlock/thing/relock pattern with that mutex, the only way to guarantee TX ordering is to 100% defer it into a separate thread. This now survives an iperf test and gets a reliable 30mbit/sec. Modified: head/sys/dev/usb/wlan/if_rsu.c head/sys/dev/usb/wlan/if_rsureg.h Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Mon Sep 21 02:12:01 2015 (r288051) +++ head/sys/dev/usb/wlan/if_rsu.c Mon Sep 21 02:30:22 2015 (r288052) @@ -190,6 +190,7 @@ static uint8_t rsu_efuse_read_1(struct r static int rsu_read_rom(struct rsu_softc *); static int rsu_fw_cmd(struct rsu_softc *, uint8_t, void *, int); static void rsu_calib_task(void *, int); +static void rsu_tx_task(void *, int); static int rsu_newstate(struct ieee80211vap *, enum ieee80211_state, int); #ifdef notyet static void rsu_set_key(struct rsu_softc *, const struct ieee80211_key *); @@ -217,6 +218,7 @@ static int rsu_tx_start(struct rsu_softc struct mbuf *, struct rsu_data *); static int rsu_transmit(struct ieee80211com *, struct mbuf *); static void rsu_start(struct rsu_softc *); +static void _rsu_start(struct rsu_softc *); static void rsu_parent(struct ieee80211com *); static void rsu_stop(struct rsu_softc *); static void rsu_ms_delay(struct rsu_softc *, int); @@ -379,6 +381,7 @@ rsu_attach(device_t self) MTX_DEF); TIMEOUT_TASK_INIT(taskqueue_thread, &sc->calib_task, 0, rsu_calib_task, sc); + TASK_INIT(&sc->tx_task, 0, rsu_tx_task, sc); mbufq_init(&sc->sc_snd, ifqmaxlen); /* Allocate Tx/Rx buffers. */ @@ -513,6 +516,7 @@ rsu_detach(device_t self) ieee80211_ifdetach(ic); taskqueue_drain_timeout(taskqueue_thread, &sc->calib_task); + taskqueue_drain(taskqueue_thread, &sc->tx_task); /* Free Tx/Rx buffers. */ rsu_free_tx_list(sc); @@ -1026,6 +1030,16 @@ rsu_calib_task(void *arg, int pending __ RSU_UNLOCK(sc); } +static void +rsu_tx_task(void *arg, int pending __unused) +{ + struct rsu_softc *sc = arg; + + RSU_LOCK(sc); + _rsu_start(sc); + RSU_UNLOCK(sc); +} + static int rsu_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) { @@ -1050,6 +1064,7 @@ rsu_newstate(struct ieee80211vap *vap, e sc->sc_calibrating = 0; RSU_UNLOCK(sc); taskqueue_drain_timeout(taskqueue_thread, &sc->calib_task); + taskqueue_drain(taskqueue_thread, &sc->tx_task); /* Disassociate from our current BSS. */ RSU_LOCK(sc); rsu_disconnect(sc); @@ -1838,19 +1853,34 @@ tr_setup: static void rsu_bulk_tx_callback_be_bk(struct usb_xfer *xfer, usb_error_t error) { + struct rsu_softc *sc = usbd_xfer_softc(xfer); + rsu_bulk_tx_callback_sub(xfer, error, RSU_BULK_TX_BE_BK); + + /* This kicks the TX taskqueue */ + rsu_start(sc); } static void rsu_bulk_tx_callback_vi_vo(struct usb_xfer *xfer, usb_error_t error) { + struct rsu_softc *sc = usbd_xfer_softc(xfer); + rsu_bulk_tx_callback_sub(xfer, error, RSU_BULK_TX_VI_VO); + + /* This kicks the TX taskqueue */ + rsu_start(sc); } static void rsu_bulk_tx_callback_h2c(struct usb_xfer *xfer, usb_error_t error) { + struct rsu_softc *sc = usbd_xfer_softc(xfer); + rsu_bulk_tx_callback_sub(xfer, error, RSU_BULK_TX_H2C); + + /* This kicks the TX taskqueue */ + rsu_start(sc); } static int @@ -2008,9 +2038,11 @@ rsu_transmit(struct ieee80211com *ic, st RSU_UNLOCK(sc); return (error); } - rsu_start(sc); RSU_UNLOCK(sc); + /* This kicks the TX taskqueue */ + rsu_start(sc); + return (0); } @@ -2030,7 +2062,7 @@ rsu_drain_mbufq(struct rsu_softc *sc) } static void -rsu_start(struct rsu_softc *sc) +_rsu_start(struct rsu_softc *sc) { struct ieee80211_node *ni; struct rsu_data *bf; @@ -2063,6 +2095,13 @@ rsu_start(struct rsu_softc *sc) } static void +rsu_start(struct rsu_softc *sc) +{ + + taskqueue_enqueue(taskqueue_thread, &sc->tx_task); +} + +static void rsu_parent(struct ieee80211com *ic) { struct rsu_softc *sc = ic->ic_softc; @@ -2684,6 +2723,7 @@ rsu_stop(struct rsu_softc *sc) sc->sc_running = 0; sc->sc_calibrating = 0; taskqueue_cancel_timeout(taskqueue_thread, &sc->calib_task, NULL); + taskqueue_cancel(taskqueue_thread, &sc->tx_task, NULL); /* Power off adapter. */ rsu_power_off(sc); Modified: head/sys/dev/usb/wlan/if_rsureg.h ============================================================================== --- head/sys/dev/usb/wlan/if_rsureg.h Mon Sep 21 02:12:01 2015 (r288051) +++ head/sys/dev/usb/wlan/if_rsureg.h Mon Sep 21 02:30:22 2015 (r288052) @@ -740,6 +740,7 @@ struct rsu_softc { enum ieee80211_state, int); struct usbd_interface *sc_iface; struct timeout_task calib_task; + struct task tx_task; const uint8_t *qid2idx; struct mtx sc_mtx; int sc_ht; From owner-svn-src-head@freebsd.org Mon Sep 21 02:32:12 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 98188A05848; Mon, 21 Sep 2015 02:32:12 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8579D1C5E; Mon, 21 Sep 2015 02:32:12 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L2WCQS041160; Mon, 21 Sep 2015 02:32:12 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L2WCmF041159; Mon, 21 Sep 2015 02:32:12 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509210232.t8L2WCmF041159@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Mon, 21 Sep 2015 02:32:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288053 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 02:32:12 -0000 Author: adrian Date: Mon Sep 21 02:32:11 2015 New Revision: 288053 URL: https://svnweb.freebsd.org/changeset/base/288053 Log: Flip on 11n by default; update TODO items. Modified: head/sys/dev/usb/wlan/if_rsu.c Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Mon Sep 21 02:30:22 2015 (r288052) +++ head/sys/dev/usb/wlan/if_rsu.c Mon Sep 21 02:32:11 2015 (r288053) @@ -22,9 +22,11 @@ __FBSDID("$FreeBSD$"); * Driver for Realtek RTL8188SU/RTL8191SU/RTL8192SU. * * TODO: - * o 11n support + * o 11n HT40 support * o h/w crypto * o hostap / ibss / mesh + * o sensible RSSI levels + * o power-save operation */ #include @@ -84,7 +86,7 @@ SYSCTL_INT(_hw_usb_rsu, OID_AUTO, debug, #define RSU_DPRINTF(_sc, _flg, ...) #endif -static int rsu_enable_11n = 0; +static int rsu_enable_11n = 1; TUNABLE_INT("hw.usb.rsu.enable_11n", &rsu_enable_11n); #define RSU_DEBUG_ANY 0xffffffff From owner-svn-src-head@freebsd.org Mon Sep 21 02:33:12 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6E64A05926; Mon, 21 Sep 2015 02:33:12 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B77CC1DB7; Mon, 21 Sep 2015 02:33:12 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L2XCdc041264; Mon, 21 Sep 2015 02:33:12 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L2XCwW041263; Mon, 21 Sep 2015 02:33:12 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509210233.t8L2XCwW041263@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Mon, 21 Sep 2015 02:33:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288054 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 02:33:12 -0000 Author: adrian Date: Mon Sep 21 02:33:11 2015 New Revision: 288054 URL: https://svnweb.freebsd.org/changeset/base/288054 Log: Yes, it supports 802.11n. Modified: head/share/man/man4/rsu.4 Modified: head/share/man/man4/rsu.4 ============================================================================== --- head/share/man/man4/rsu.4 Mon Sep 21 02:32:11 2015 (r288053) +++ head/share/man/man4/rsu.4 Mon Sep 21 02:33:11 2015 (r288054) @@ -178,5 +178,4 @@ and ported by .Sh CAVEATS The .Nm -driver does not support any of the 802.11n capabilities offered by the -adapters. +driver only supports 1T1R 802.11n operation. From owner-svn-src-head@freebsd.org Mon Sep 21 03:17:42 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5D5FDA06DE1; Mon, 21 Sep 2015 03:17:42 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4DFC01174; Mon, 21 Sep 2015 03:17:42 +0000 (UTC) (envelope-from loos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L3HgO6058509; Mon, 21 Sep 2015 03:17:42 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L3HfWY058507; Mon, 21 Sep 2015 03:17:41 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201509210317.t8L3HfWY058507@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Mon, 21 Sep 2015 03:17:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288056 - in head/sys: arm/conf boot/fdt/dts/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 03:17:42 -0000 Author: loos Date: Mon Sep 21 03:17:41 2015 New Revision: 288056 URL: https://svnweb.freebsd.org/changeset/base/288056 Log: Enable if_dwc for Allwinner A20 based boards. This enables the gigabit ethernet on cubieboard2 and banana pi. A special thanks to Netgate who gently provided me with a banana pi almost a year ago. Modified: head/sys/arm/conf/A20 head/sys/boot/fdt/dts/arm/cubieboard2.dts Modified: head/sys/arm/conf/A20 ============================================================================== --- head/sys/arm/conf/A20 Mon Sep 21 03:03:57 2015 (r288055) +++ head/sys/arm/conf/A20 Mon Sep 21 03:17:41 2015 (r288056) @@ -47,7 +47,7 @@ options WITNESS_SKIPSPIN # Don't run wi #options BOOTP_NFSROOT #options BOOTP_COMPAT #options BOOTP_NFSV3 -#options BOOTP_WIRED_TO=cpsw0 +#options BOOTP_WIRED_TO=dwc0 # Boot device is 2nd slice on MMC/SD card options ROOTDEVNAME=\"ufs:/dev/da0s2\" @@ -102,7 +102,8 @@ device ether device mii device bpf -device emac +#device emac # 10/100 integrated EMAC controller +device dwc # 10/100/1000 integrated GMAC controller # USB ethernet support, requires miibus device miibus Modified: head/sys/boot/fdt/dts/arm/cubieboard2.dts ============================================================================== --- head/sys/boot/fdt/dts/arm/cubieboard2.dts Mon Sep 21 03:03:57 2015 (r288055) +++ head/sys/boot/fdt/dts/arm/cubieboard2.dts Mon Sep 21 03:17:41 2015 (r288056) @@ -67,6 +67,10 @@ status = "okay"; }; + gmac@01c50000 { + status = "okay"; + }; + ahci: sata@01c18000 { status = "okay"; }; From owner-svn-src-head@freebsd.org Mon Sep 21 03:39:14 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AAF0FA058D9; Mon, 21 Sep 2015 03:39:14 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9B6331B73; Mon, 21 Sep 2015 03:39:14 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L3dEdi066720; Mon, 21 Sep 2015 03:39:14 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L3dEEw066719; Mon, 21 Sep 2015 03:39:14 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201509210339.t8L3dEEw066719@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Mon, 21 Sep 2015 03:39:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288057 - head/tools/build/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 03:39:14 -0000 Author: ngie Date: Mon Sep 21 03:39:13 2015 New Revision: 288057 URL: https://svnweb.freebsd.org/changeset/base/288057 Log: Delete /etc/autofs/special_noauto when MK_AUTOFS == no MFC after: 1 week Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Mon Sep 21 03:17:41 2015 (r288056) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Mon Sep 21 03:39:13 2015 (r288057) @@ -155,6 +155,7 @@ OLD_FILES+=usr/share/man/man8/authpf-noi OLD_FILES+=etc/autofs/include_ldap OLD_FILES+=etc/autofs/special_hosts OLD_FILES+=etc/autofs/special_media +OLD_FILES+=etc/autofs/special_noauto OLD_FILES+=etc/autofs/special_null OLD_FILES+=etc/auto_master OLD_FILES+=etc/rc.d/automount From owner-svn-src-head@freebsd.org Mon Sep 21 09:37:50 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A6CDEA058AC; Mon, 21 Sep 2015 09:37:50 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 924B21AFD; Mon, 21 Sep 2015 09:37:50 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8L9boLe029011; Mon, 21 Sep 2015 09:37:50 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8L9boLW029009; Mon, 21 Sep 2015 09:37:50 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509210937.t8L9boLW029009@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 21 Sep 2015 09:37:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288059 - head/usr.bin/ctlstat X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 09:37:50 -0000 Author: mav Date: Mon Sep 21 09:37:49 2015 New Revision: 288059 URL: https://svnweb.freebsd.org/changeset/base/288059 Log: Bunch of improvements to ctlstat. Add -p option to allow filtering by ports. Make -l and -p options work in all modes as filters. Improve output formatting to better fit columns. Modified: head/usr.bin/ctlstat/ctlstat.8 head/usr.bin/ctlstat/ctlstat.c Modified: head/usr.bin/ctlstat/ctlstat.8 ============================================================================== --- head/usr.bin/ctlstat/ctlstat.8 Mon Sep 21 08:44:23 2015 (r288058) +++ head/usr.bin/ctlstat/ctlstat.8 Mon Sep 21 09:37:49 2015 (r288059) @@ -34,7 +34,7 @@ .\" $Id: //depot/users/kenm/FreeBSD-test2/usr.bin/ctlstat/ctlstat.8#2 $ .\" $FreeBSD$ .\" -.Dd May 22, 2015 +.Dd September 21, 2015 .Dt CTLSTAT 8 .Os .Sh NAME @@ -50,6 +50,7 @@ .Op Fl j .Op Fl l Ar lun .Op Fl n Ar numdevs +.Op Fl p Ar port .Op Fl w Ar wait .Sh DESCRIPTION The @@ -64,7 +65,7 @@ The options are as follows: .Bl -tag -width 10n .It Fl t Total mode. -This displays separate columns with the total CTL read and write output, +This displays separate columns with the total read and write output, and a combined total column that also includes non I/O operations. .It Fl c Ar count Display statistics this many times. @@ -74,23 +75,20 @@ Disable CPU statistics display. Display DMA operation time (latency) instead of overall I/O time (latency). .It Fl D Text dump mode. -Dump all available statistics every 30 seconds in a text format suitable -for parsing. +Dump statistics every 30 seconds in a text format suitable for parsing. No statistics are computed in this mode, only raw numbers are displayed. .It Fl h Suppress display of the header. .It Fl j JSON dump mode. -Dump all available statistics every 30 seconds in JavaScript Object -Notation (JSON) format. +Dump statistics every 30 seconds in JavaScript Object Notation (JSON) format. No statistics are computed in this mode, only raw numbers are displayed. .It Fl l Ar lun Request statistics for the specified LUN. -This option is incompatible with total -.Fl ( t ) -mode. .It Fl n Ar numdevs Display statistics for this many devices. +.It Fl p Ar port +Request statistics for the specified port. .It Fl w Ar wait Wait this many seconds in between displays. If this option is not specified, Modified: head/usr.bin/ctlstat/ctlstat.c ============================================================================== --- head/usr.bin/ctlstat/ctlstat.c Mon Sep 21 08:44:23 2015 (r288058) +++ head/usr.bin/ctlstat/ctlstat.c Mon Sep 21 09:37:49 2015 (r288059) @@ -78,7 +78,7 @@ __FBSDID("$FreeBSD$"); */ #define CTL_STAT_LUN_BITS 1024L -static const char *ctlstat_opts = "Cc:Ddhjl:n:tw:"; +static const char *ctlstat_opts = "Cc:Ddhjl:n:p:tw:"; static const char *ctlstat_usage = "Usage: ctlstat [-CDdjht] [-l lunnum]" "[-c count] [-n numdevs] [-w wait]\n"; @@ -102,12 +102,16 @@ typedef enum { #define CTLSTAT_FLAG_TOTALS (1 << 3) #define CTLSTAT_FLAG_DMA_TIME (1 << 4) #define CTLSTAT_FLAG_LUN_TIME_VALID (1 << 5) +#define CTLSTAT_FLAG_LUN_MASK (1 << 6) +#define CTLSTAT_FLAG_PORT_MASK (1 << 7) #define F_CPU(ctx) ((ctx)->flags & CTLSTAT_FLAG_CPU) #define F_HDR(ctx) ((ctx)->flags & CTLSTAT_FLAG_HEADER) #define F_FIRST(ctx) ((ctx)->flags & CTLSTAT_FLAG_FIRST_RUN) #define F_TOTALS(ctx) ((ctx)->flags & CTLSTAT_FLAG_TOTALS) #define F_DMA(ctx) ((ctx)->flags & CTLSTAT_FLAG_DMA_TIME) #define F_LUNVAL(ctx) ((ctx)->flags & CTLSTAT_FLAG_LUN_TIME_VALID) +#define F_LUNMASK(ctx) ((ctx)->flags & CTLSTAT_FLAG_LUN_MASK) +#define F_PORTMASK(ctx) ((ctx)->flags & CTLSTAT_FLAG_PORT_MASK) struct ctlstat_context { ctlstat_mode_types mode; @@ -120,6 +124,7 @@ struct ctlstat_context { uint64_t cur_total_jiffies, prev_total_jiffies; uint64_t cur_idle, prev_idle; bitstr_t bit_decl(lun_mask, CTL_STAT_LUN_BITS); + bitstr_t bit_decl(port_mask, CTL_MAX_PORTS); int num_luns; int numdevs; int header_interval; @@ -133,7 +138,8 @@ static void usage(int error); static int getstats(int fd, int *num_luns, struct ctl_lun_io_stats **xlun_stats, struct timespec *cur_time, int *lun_time_valid); static int getcpu(struct ctl_cpu_stats *cpu_stats); -static void compute_stats(struct ctl_lun_io_stats *cur_stats, +static void compute_stats(struct ctlstat_context *ctx, + struct ctl_lun_io_stats *cur_stats, struct ctl_lun_io_stats *prev_stats, long double etime, long double *mbsec, long double *kb_per_transfer, @@ -234,7 +240,7 @@ getcpu(struct ctl_cpu_stats *cpu_stats) } static void -compute_stats(struct ctl_lun_io_stats *cur_stats, +compute_stats(struct ctlstat_context *ctx, struct ctl_lun_io_stats *cur_stats, struct ctl_lun_io_stats *prev_stats, long double etime, long double *mbsec, long double *kb_per_transfer, long double *transfers_per_second, long double *ms_per_transfer, @@ -251,6 +257,9 @@ compute_stats(struct ctl_lun_io_stats *c bzero(&total_time_ts, sizeof(total_time_ts)); bzero(&total_dma_ts, sizeof(total_dma_ts)); for (port = 0; port < CTL_MAX_PORTS; port++) { + if (F_PORTMASK(ctx) && + bit_test(ctx->port_mask, port) == 0) + continue; for (i = 0; i < CTL_STATS_NUM_TYPES; i++) { total_bytes += cur_stats->ports[port].bytes[i]; total_operations += @@ -336,8 +345,13 @@ ctlstat_dump(struct ctlstat_context *ctx struct ctl_lun_io_stats *stats = ctx->cur_lun_stats; for (lun = 0; lun < ctx->num_luns;lun++) { + if (F_LUNMASK(ctx) && bit_test(ctx->lun_mask, lun) == 0) + continue; printf("lun %d\n", lun); for (port = 0; port < CTL_MAX_PORTS; port++) { + if (F_PORTMASK(ctx) && + bit_test(ctx->port_mask, port) == 0) + continue; printf(" port %d\n", stats[lun].ports[port].targ_port); for (iotype = 0; iotype < CTL_STATS_NUM_TYPES; @@ -369,8 +383,13 @@ ctlstat_json(struct ctlstat_context *ctx printf("{\"luns\":["); for (lun = 0; lun < ctx->num_luns; lun++) { + if (F_LUNMASK(ctx) && bit_test(ctx->lun_mask, lun) == 0) + continue; printf("{\"ports\":["); for (port = 0; port < CTL_MAX_PORTS;port++) { + if (F_PORTMASK(ctx) && + bit_test(ctx->port_mask, port) == 0) + continue; printf("{\"num\":%d,\"io\":[", stats[lun].ports[port].targ_port); for (iotype = 0; iotype < CTL_STATS_NUM_TYPES; @@ -441,17 +460,16 @@ ctlstat_standard(struct ctlstat_context hdr_devs = 0; + if (F_CPU(ctx)) + fprintf(stdout, " CPU"); if (F_TOTALS(ctx)) { - fprintf(stdout, "%s System Read %s" - "System Write %sSystem Total%s\n", - (F_LUNVAL(ctx) != 0) ? " " : "", - (F_LUNVAL(ctx) != 0) ? " " : "", - (F_LUNVAL(ctx) != 0) ? " " : "", - (F_CPU(ctx)) ? " CPU" : ""); + fprintf(stdout, "%s Read %s" + " Write %s Total\n", + (F_LUNVAL(ctx) != 0) ? " " : "", + (F_LUNVAL(ctx) != 0) ? " " : "", + (F_LUNVAL(ctx) != 0) ? " " : ""); hdr_devs = 3; } else { - if (F_CPU(ctx)) - fprintf(stdout, " CPU "); for (i = 0; i < min(CTL_STAT_LUN_BITS, ctx->num_luns); i++) { int lun; @@ -464,7 +482,8 @@ ctlstat_standard(struct ctlstat_context lun = (int)ctx->cur_lun_stats[i ].lun_number; - if (bit_test(ctx->lun_mask, lun) == 0) + if (F_LUNMASK(ctx) && + bit_test(ctx->lun_mask, lun) == 0) continue; fprintf(stdout, "%15.6s%d %s", "lun", lun, @@ -473,17 +492,19 @@ ctlstat_standard(struct ctlstat_context } fprintf(stdout, "\n"); } + if (F_CPU(ctx)) + fprintf(stdout, " "); for (i = 0; i < hdr_devs; i++) - fprintf(stdout, "%s %sKB/t %s MB/s ", - ((F_CPU(ctx) != 0) && (i == 0) && - (F_TOTALS(ctx) == 0)) ? " " : "", - (F_LUNVAL(ctx) != 0) ? " ms " : "", + fprintf(stdout, "%s KB/t %s MB/s", + (F_LUNVAL(ctx) != 0) ? " ms" : "", (F_DMA(ctx) == 0) ? "tps" : "dps"); fprintf(stdout, "\n"); ctx->header_interval = 20; } } + if (F_CPU(ctx)) + fprintf(stdout, "%3.0Lf%%", cpu_percentage); if (F_TOTALS(ctx) != 0) { long double mbsec[3]; long double kb_per_transfer[3]; @@ -515,7 +536,13 @@ ctlstat_standard(struct ctlstat_context &ctx->cur_lun_stats[i].ports[p].dma_time[j]) for (i = 0; i < ctx->num_luns; i++) { + if (F_LUNMASK(ctx) && bit_test(ctx->lun_mask, + (int)ctx->cur_lun_stats[i].lun_number) == 0) + continue; for (port = 0; port < CTL_MAX_PORTS; port++) { + if (F_PORTMASK(ctx) && + bit_test(ctx->port_mask, port) == 0) + continue; for (j = 0; j < CTL_STATS_NUM_TYPES; j++) { ADD_STATS_BYTES(2, port, i, j); ADD_STATS_OPERATIONS(2, port, i, j); @@ -540,29 +567,24 @@ ctlstat_standard(struct ctlstat_context } for (i = 0; i < 3; i++) { - compute_stats(&ctx->cur_total_stats[i], + compute_stats(ctx, &ctx->cur_total_stats[i], F_FIRST(ctx) ? NULL : &ctx->prev_total_stats[i], etime, &mbsec[i], &kb_per_transfer[i], &transfers_per_sec[i], &ms_per_transfer[i], &ms_per_dma[i], &dmas_per_sec[i]); if (F_DMA(ctx) != 0) - fprintf(stdout, " %2.2Lf", + fprintf(stdout, " %5.1Lf", ms_per_dma[i]); else if (F_LUNVAL(ctx) != 0) - fprintf(stdout, " %2.2Lf", + fprintf(stdout, " %5.1Lf", ms_per_transfer[i]); - fprintf(stdout, " %5.2Lf %3.0Lf %5.2Lf ", + fprintf(stdout, " %4.0Lf %5.0Lf %4.0Lf", kb_per_transfer[i], (F_DMA(ctx) == 0) ? transfers_per_sec[i] : dmas_per_sec[i], mbsec[i]); } - if (F_CPU(ctx)) - fprintf(stdout, " %5.1Lf%%", cpu_percentage); } else { - if (F_CPU(ctx)) - fprintf(stdout, "%5.1Lf%% ", cpu_percentage); - for (i = 0; i < min(CTL_STAT_LUN_BITS, ctx->num_luns); i++) { long double mbsec, kb_per_transfer; long double transfers_per_sec; @@ -570,21 +592,21 @@ ctlstat_standard(struct ctlstat_context long double ms_per_dma; long double dmas_per_sec; - if (bit_test(ctx->lun_mask, + if (F_LUNMASK(ctx) && bit_test(ctx->lun_mask, (int)ctx->cur_lun_stats[i].lun_number) == 0) continue; - compute_stats(&ctx->cur_lun_stats[i], F_FIRST(ctx) ? - NULL : &ctx->prev_lun_stats[i], etime, - &mbsec, &kb_per_transfer, - &transfers_per_sec, &ms_per_transfer, - &ms_per_dma, &dmas_per_sec); + compute_stats(ctx, &ctx->cur_lun_stats[i], + F_FIRST(ctx) ? NULL : &ctx->prev_lun_stats[i], + etime, &mbsec, &kb_per_transfer, + &transfers_per_sec, &ms_per_transfer, + &ms_per_dma, &dmas_per_sec); if (F_DMA(ctx)) - fprintf(stdout, " %2.2Lf", + fprintf(stdout, " %5.1Lf", ms_per_dma); else if (F_LUNVAL(ctx) != 0) - fprintf(stdout, " %2.2Lf", + fprintf(stdout, " %5.1Lf", ms_per_transfer); - fprintf(stdout, " %5.2Lf %3.0Lf %5.2Lf ", + fprintf(stdout, " %4.0Lf %5.0Lf %4.0Lf", kb_per_transfer, (F_DMA(ctx) == 0) ? transfers_per_sec : dmas_per_sec, mbsec); } @@ -596,7 +618,6 @@ main(int argc, char **argv) { int c; int count, waittime; - int set_lun; int fd, retval; struct ctlstat_context ctx; @@ -640,20 +661,30 @@ main(int argc, char **argv) if (cur_lun > CTL_STAT_LUN_BITS) errx(1, "Invalid LUN number %d", cur_lun); - bit_ffs(ctx.lun_mask, CTL_STAT_LUN_BITS, &set_lun); - if (set_lun == -1) + if (!F_LUNMASK(&ctx)) ctx.numdevs = 1; else ctx.numdevs++; bit_set(ctx.lun_mask, cur_lun); + ctx.flags |= CTLSTAT_FLAG_LUN_MASK; break; } case 'n': ctx.numdevs = atoi(optarg); break; + case 'p': { + int cur_port; + + cur_port = atoi(optarg); + if (cur_port > CTL_MAX_PORTS) + errx(1, "Invalid LUN number %d", cur_port); + + bit_set(ctx.port_mask, cur_port); + ctx.flags |= CTLSTAT_FLAG_PORT_MASK; + break; + } case 't': ctx.flags |= CTLSTAT_FLAG_TOTALS; - ctx.numdevs = 3; break; case 'w': waittime = atoi(optarg); @@ -666,13 +697,7 @@ main(int argc, char **argv) } } - bit_ffs(ctx.lun_mask, CTL_STAT_LUN_BITS, &set_lun); - - if ((F_TOTALS(&ctx)) - && (set_lun != -1)) { - errx(1, "Total Mode (-t) is incompatible with individual " - "LUN mode (-l)"); - } else if (set_lun == -1) { + if (!F_TOTALS(&ctx) && !F_LUNMASK(&ctx)) { /* * Note that this just selects the first N LUNs to display, * but at this point we have no knoweledge of which LUN @@ -681,6 +706,7 @@ main(int argc, char **argv) */ bit_nset(ctx.lun_mask, 0, min(ctx.numdevs - 1, CTL_STAT_LUN_BITS - 1)); + ctx.flags |= CTLSTAT_FLAG_LUN_MASK; } if ((fd = open(CTL_DEFAULT_DEV, O_RDWR)) == -1) From owner-svn-src-head@freebsd.org Mon Sep 21 10:24:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7330A06F1F; Mon, 21 Sep 2015 10:24:35 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B4B5A1364; Mon, 21 Sep 2015 10:24:35 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LAOZ0P053215; Mon, 21 Sep 2015 10:24:35 GMT (envelope-from melifaro@FreeBSD.org) Received: (from melifaro@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LAOZsJ053214; Mon, 21 Sep 2015 10:24:35 GMT (envelope-from melifaro@FreeBSD.org) Message-Id: <201509211024.t8LAOZsJ053214@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: melifaro set sender to melifaro@FreeBSD.org using -f From: "Alexander V. Chernikov" Date: Mon, 21 Sep 2015 10:24:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288060 - head/sys/netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 10:24:35 -0000 Author: melifaro Date: Mon Sep 21 10:24:34 2015 New Revision: 288060 URL: https://svnweb.freebsd.org/changeset/base/288060 Log: Add "stale" timer back to nd6_cache_lladdr(). Setting timer was accidentally removed in r276844 due to misleading comment on its meaningless. Add it back to restore proper behaviour. Modified: head/sys/netinet6/nd6.c Modified: head/sys/netinet6/nd6.c ============================================================================== --- head/sys/netinet6/nd6.c Mon Sep 21 09:37:49 2015 (r288059) +++ head/sys/netinet6/nd6.c Mon Sep 21 10:24:34 2015 (r288060) @@ -1729,7 +1729,6 @@ nd6_cache_lladdr(struct ifnet *ifp, stru if (lladdr != NULL) { bcopy(lladdr, &ln->ll_addr, ifp->if_addrlen); ln->la_flags |= LLE_VALID; - ln->ln_state = ND6_LLINFO_STALE; } IF_AFDATA_WLOCK(ifp); LLE_WLOCK(ln); @@ -1738,10 +1737,12 @@ nd6_cache_lladdr(struct ifnet *ifp, stru if (ln_tmp == NULL) lltable_link_entry(LLTABLE6(ifp), ln); IF_AFDATA_WUNLOCK(ifp); - if (ln_tmp == NULL) + if (ln_tmp == NULL) { /* No existing lle, mark as new entry */ is_newentry = 1; - else { + ln->ln_state = ND6_LLINFO_STALE; + nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); + } else { lltable_free_entry(LLTABLE6(ifp), ln); ln = ln_tmp; ln_tmp = NULL; @@ -1788,6 +1789,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru bcopy(lladdr, &ln->ll_addr, ifp->if_addrlen); ln->la_flags |= LLE_VALID; ln->ln_state = ND6_LLINFO_STALE; + nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); EVENTHANDLER_INVOKE(lle_event, ln, LLENTRY_RESOLVED); From owner-svn-src-head@freebsd.org Mon Sep 21 10:27:31 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0950FA05135; Mon, 21 Sep 2015 10:27:31 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EE4541589; Mon, 21 Sep 2015 10:27:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LARUdB053607; Mon, 21 Sep 2015 10:27:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LARUWe053606; Mon, 21 Sep 2015 10:27:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509211027.t8LARUWe053606@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 21 Sep 2015 10:27:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288061 - head/usr.sbin/ctld X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 10:27:31 -0000 Author: mav Date: Mon Sep 21 10:27:30 2015 New Revision: 288061 URL: https://svnweb.freebsd.org/changeset/base/288061 Log: Make cltd ignore HA ports. Modified: head/usr.sbin/ctld/kernel.c Modified: head/usr.sbin/ctld/kernel.c ============================================================================== --- head/usr.sbin/ctld/kernel.c Mon Sep 21 10:24:34 2015 (r288060) +++ head/usr.sbin/ctld/kernel.c Mon Sep 21 10:27:30 2015 (r288061) @@ -119,6 +119,7 @@ struct cctl_lun { struct cctl_port { uint32_t port_id; + char *port_frontend; char *port_name; int pp; int vp; @@ -331,7 +332,10 @@ cctl_end_pelement(void *user_data, const devlist->cur_sb[devlist->level] = NULL; devlist->level--; - if (strcmp(name, "port_name") == 0) { + if (strcmp(name, "frontend_type") == 0) { + cur_port->port_frontend = str; + str = NULL; + } else if (strcmp(name, "port_name") == 0) { cur_port->port_name = str; str = NULL; } else if (strcmp(name, "physical_port") == 0) { @@ -506,6 +510,8 @@ retry_port: name = NULL; STAILQ_FOREACH(port, &devlist.port_list, links) { + if (strcmp(port->port_frontend, "ha") == 0) + continue; if (name) free(name); if (port->pp == 0 && port->vp == 0) From owner-svn-src-head@freebsd.org Mon Sep 21 11:19:55 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 58CB6A06ACC; Mon, 21 Sep 2015 11:19:55 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3CC411F5D; Mon, 21 Sep 2015 11:19:55 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LBJt1X077573; Mon, 21 Sep 2015 11:19:55 GMT (envelope-from melifaro@FreeBSD.org) Received: (from melifaro@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LBJsLE077569; Mon, 21 Sep 2015 11:19:54 GMT (envelope-from melifaro@FreeBSD.org) Message-Id: <201509211119.t8LBJsLE077569@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: melifaro set sender to melifaro@FreeBSD.org using -f From: "Alexander V. Chernikov" Date: Mon, 21 Sep 2015 11:19:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288062 - in head/sys: netinet netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 11:19:55 -0000 Author: melifaro Date: Mon Sep 21 11:19:53 2015 New Revision: 288062 URL: https://svnweb.freebsd.org/changeset/base/288062 Log: Unify nd6 state switching by using newly-created nd6_llinfo_setstate() function. The change is mostly mechanical with the following exception: Last piece of nd6_resolve_slow() was refactored: ND6_LLINFO_PERMANENT condition was removed as always-true, explicit ND6_LLINFO_NOSTATE -> ND6_LLINFO_INCOMPLETE state transition was removed as duplicate. Reviewed by: ae Sponsored by: Yandex LLC Modified: head/sys/netinet/toecore.c head/sys/netinet6/nd6.c head/sys/netinet6/nd6.h head/sys/netinet6/nd6_nbr.c Modified: head/sys/netinet/toecore.c ============================================================================== --- head/sys/netinet/toecore.c Mon Sep 21 10:27:30 2015 (r288061) +++ head/sys/netinet/toecore.c Mon Sep 21 11:19:53 2015 (r288062) @@ -468,7 +468,6 @@ restart: lle = nd6_alloc(&sin6->sin6_addr, 0, ifp); if (lle == NULL) return (ENOMEM); /* Couldn't create entry in cache. */ - lle->ln_state = ND6_LLINFO_INCOMPLETE; IF_AFDATA_WLOCK(ifp); LLE_WLOCK(lle); lle_tmp = nd6_lookup(&sin6->sin6_addr, ND6_EXCLUSIVE, ifp); @@ -478,8 +477,7 @@ restart: IF_AFDATA_WUNLOCK(ifp); if (lle_tmp == NULL) { /* Arm timer for newly-created entry and send NS */ - nd6_llinfo_settimer_locked(lle, - (long)ND_IFINFO(ifp)->retrans * hz / 1000); + nd6_llinfo_setstate(lle, ND6_LLINFO_INCOMPLETE); LLE_WUNLOCK(lle); nd6_ns_output(ifp, NULL, NULL, &sin6->sin6_addr, 0); @@ -503,8 +501,7 @@ restart: LLE_WLOCK_ASSERT(lle); lle->la_asked = 0; - lle->ln_state = ND6_LLINFO_DELAY; - nd6_llinfo_settimer_locked(lle, (long)V_nd6_delay * hz); + nd6_llinfo_setstate(lle, ND6_LLINFO_DELAY); } if (lle->la_flags & LLE_VALID) { Modified: head/sys/netinet6/nd6.c ============================================================================== --- head/sys/netinet6/nd6.c Mon Sep 21 10:27:30 2015 (r288061) +++ head/sys/netinet6/nd6.c Mon Sep 21 11:19:53 2015 (r288062) @@ -539,6 +539,44 @@ nd6_llinfo_get_holdsrc(struct llentry *l return (src); } +/* + * Switch @lle state to new state optionally arming timers. + */ +void +nd6_llinfo_setstate(struct llentry *lle, int newstate) +{ + struct ifnet *ifp; + long delay; + + delay = 0; + + switch (newstate) { + case ND6_LLINFO_INCOMPLETE: + ifp = lle->lle_tbl->llt_ifp; + delay = (long)ND_IFINFO(ifp)->retrans * hz / 1000; + break; + case ND6_LLINFO_REACHABLE: + if (!ND6_LLINFO_PERMANENT(lle)) { + ifp = lle->lle_tbl->llt_ifp; + delay = (long)ND_IFINFO(ifp)->reachable * hz; + } + break; + case ND6_LLINFO_STALE: + delay = (long)V_nd6_gctimer * hz; + break; + case ND6_LLINFO_DELAY: + lle->la_asked = 0; + delay = (long)V_nd6_delay * hz; + break; + } + + if (delay > 0) + nd6_llinfo_settimer_locked(lle, delay); + + lle->ln_state = newstate; +} + + void nd6_llinfo_settimer(struct llentry *ln, long tick) { @@ -638,10 +676,8 @@ nd6_llinfo_timer(void *arg) } break; case ND6_LLINFO_REACHABLE: - if (!ND6_LLINFO_PERMANENT(ln)) { - ln->ln_state = ND6_LLINFO_STALE; - nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); - } + if (!ND6_LLINFO_PERMANENT(ln)) + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); break; case ND6_LLINFO_STALE: @@ -657,12 +693,10 @@ nd6_llinfo_timer(void *arg) if (ndi && (ndi->flags & ND6_IFF_PERFORMNUD) != 0) { /* We need NUD */ ln->la_asked = 1; - ln->ln_state = ND6_LLINFO_PROBE; + nd6_llinfo_setstate(ln, ND6_LLINFO_PROBE); send_ns = 1; - } else { - ln->ln_state = ND6_LLINFO_STALE; /* XXX */ - nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); - } + } else + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); /* XXX */ break; case ND6_LLINFO_PROBE: if (ln->la_asked < V_nd6_umaxtries) { @@ -1316,11 +1350,7 @@ nd6_nud_hint(struct rtentry *rt, struct } } - ln->ln_state = ND6_LLINFO_REACHABLE; - if (!ND6_LLINFO_PERMANENT(ln)) { - nd6_llinfo_settimer_locked(ln, - (long)ND_IFINFO(rt->rt_ifp)->reachable * hz); - } + nd6_llinfo_setstate(ln, ND6_LLINFO_REACHABLE); done: LLE_WUNLOCK(ln); } @@ -1740,8 +1770,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru if (ln_tmp == NULL) { /* No existing lle, mark as new entry */ is_newentry = 1; - ln->ln_state = ND6_LLINFO_STALE; - nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); } else { lltable_free_entry(LLTABLE6(ifp), ln); ln = ln_tmp; @@ -1788,8 +1817,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru */ bcopy(lladdr, &ln->ll_addr, ifp->if_addrlen); ln->la_flags |= LLE_VALID; - ln->ln_state = ND6_LLINFO_STALE; - nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); EVENTHANDLER_INVOKE(lle_event, ln, LLENTRY_RESOLVED); @@ -1892,9 +1920,7 @@ nd6_grab_holdchain(struct llentry *ln, s * detection on expiration. * (RFC 2461 7.3.3) */ - ln->la_asked = 0; - ln->ln_state = ND6_LLINFO_DELAY; - nd6_llinfo_settimer_locked(ln, (long)V_nd6_delay * hz); + nd6_llinfo_setstate(ln, ND6_LLINFO_DELAY); } } @@ -2034,6 +2060,8 @@ nd6_resolve_slow(struct ifnet *ifp, stru const struct sockaddr_in6 *dst, u_char *desten, uint32_t *pflags) { struct llentry *lle = NULL, *lle_tmp; + struct in6_addr *psrc, src; + int send_ns; /* * Address resolution or Neighbor Unreachability Detection @@ -2061,7 +2089,6 @@ nd6_resolve_slow(struct ifnet *ifp, stru m_freem(m); return (ENOBUFS); } - lle->ln_state = ND6_LLINFO_NOSTATE; IF_AFDATA_WLOCK(ifp); LLE_WLOCK(lle); @@ -2097,11 +2124,8 @@ nd6_resolve_slow(struct ifnet *ifp, stru * neighbor unreachability detection on expiration. * (RFC 2461 7.3.3) */ - if (lle->ln_state == ND6_LLINFO_STALE) { - lle->la_asked = 0; - lle->ln_state = ND6_LLINFO_DELAY; - nd6_llinfo_settimer_locked(lle, (long)V_nd6_delay * hz); - } + if (lle->ln_state == ND6_LLINFO_STALE) + nd6_llinfo_setstate(lle, ND6_LLINFO_DELAY); /* * If the neighbor cache entry has a state other than INCOMPLETE @@ -2123,8 +2147,6 @@ nd6_resolve_slow(struct ifnet *ifp, stru * does not exceed nd6_maxqueuelen. When it exceeds nd6_maxqueuelen, * the oldest packet in the queue will be removed. */ - if (lle->ln_state == ND6_LLINFO_NOSTATE) - lle->ln_state = ND6_LLINFO_INCOMPLETE; if (lle->la_hold != NULL) { struct mbuf *m_hold; @@ -2151,20 +2173,22 @@ nd6_resolve_slow(struct ifnet *ifp, stru /* * If there has been no NS for the neighbor after entering the * INCOMPLETE state, send the first solicitation. + * Note that for newly-created lle la_asked will be 0, + * so we will transition from ND6_LLINFO_NOSTATE to + * ND6_LLINFO_INCOMPLETE state here. */ - if (!ND6_LLINFO_PERMANENT(lle) && lle->la_asked == 0) { - struct in6_addr src, *psrc; + psrc = NULL; + send_ns = 0; + if (lle->la_asked == 0) { lle->la_asked++; - - nd6_llinfo_settimer_locked(lle, - (long)ND_IFINFO(ifp)->retrans * hz / 1000); + send_ns = 1; psrc = nd6_llinfo_get_holdsrc(lle, &src); - LLE_WUNLOCK(lle); - nd6_ns_output(ifp, psrc, NULL, &dst->sin6_addr, NULL); - } else { - /* We did the lookup so we need to do the unlock here. */ - LLE_WUNLOCK(lle); + + nd6_llinfo_setstate(lle, ND6_LLINFO_INCOMPLETE); } + LLE_WUNLOCK(lle); + if (send_ns != 0) + nd6_ns_output(ifp, psrc, NULL, &dst->sin6_addr, NULL); return (EWOULDBLOCK); } Modified: head/sys/netinet6/nd6.h ============================================================================== --- head/sys/netinet6/nd6.h Mon Sep 21 10:27:30 2015 (r288061) +++ head/sys/netinet6/nd6.h Mon Sep 21 11:19:53 2015 (r288062) @@ -409,6 +409,7 @@ int nd6_options(union nd_opts *); struct llentry *nd6_lookup(const struct in6_addr *, int, struct ifnet *); struct llentry *nd6_alloc(const struct in6_addr *, int, struct ifnet *); void nd6_setmtu(struct ifnet *); +void nd6_llinfo_setstate(struct llentry *lle, int newstate); void nd6_llinfo_settimer(struct llentry *, long); void nd6_llinfo_settimer_locked(struct llentry *, long); void nd6_timer(void *); Modified: head/sys/netinet6/nd6_nbr.c ============================================================================== --- head/sys/netinet6/nd6_nbr.c Mon Sep 21 10:27:30 2015 (r288061) +++ head/sys/netinet6/nd6_nbr.c Mon Sep 21 11:19:53 2015 (r288062) @@ -769,16 +769,10 @@ nd6_na_input(struct mbuf *m, int off, in ln->la_flags |= LLE_VALID; EVENTHANDLER_INVOKE(lle_event, ln, LLENTRY_RESOLVED); if (is_solicited) { - ln->ln_state = ND6_LLINFO_REACHABLE; + nd6_llinfo_setstate(ln, ND6_LLINFO_REACHABLE); ln->ln_byhint = 0; - if (!ND6_LLINFO_PERMANENT(ln)) { - nd6_llinfo_settimer_locked(ln, - (long)ND_IFINFO(ln->lle_tbl->llt_ifp)->reachable * hz); - } - } else { - ln->ln_state = ND6_LLINFO_STALE; - nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); - } + } else + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); if ((ln->ln_router = is_router) != 0) { /* * This means a router's state has changed from @@ -829,10 +823,8 @@ nd6_na_input(struct mbuf *m, int off, in * If state is REACHABLE, make it STALE. * no other updates should be done. */ - if (ln->ln_state == ND6_LLINFO_REACHABLE) { - ln->ln_state = ND6_LLINFO_STALE; - nd6_llinfo_settimer_locked(ln, (long)V_nd6_gctimer * hz); - } + if (ln->ln_state == ND6_LLINFO_REACHABLE) + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); goto freeit; } else if (is_override /* (2a) */ || (!is_override && (lladdr != NULL && !llchange)) /* (2b) */ @@ -853,18 +845,11 @@ nd6_na_input(struct mbuf *m, int off, in * changed, make it STALE. */ if (is_solicited) { - ln->ln_state = ND6_LLINFO_REACHABLE; ln->ln_byhint = 0; - if (!ND6_LLINFO_PERMANENT(ln)) { - nd6_llinfo_settimer_locked(ln, - (long)ND_IFINFO(ifp)->reachable * hz); - } + nd6_llinfo_setstate(ln, ND6_LLINFO_REACHABLE); } else { - if (lladdr != NULL && llchange) { - ln->ln_state = ND6_LLINFO_STALE; - nd6_llinfo_settimer_locked(ln, - (long)V_nd6_gctimer * hz); - } + if (lladdr != NULL && llchange) + nd6_llinfo_setstate(ln, ND6_LLINFO_STALE); } } From owner-svn-src-head@freebsd.org Mon Sep 21 12:23:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CBF78A06DCD; Mon, 21 Sep 2015 12:23:02 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B83E010C7; Mon, 21 Sep 2015 12:23:02 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LCN2Pi006167; Mon, 21 Sep 2015 12:23:02 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LCN2ZG006166; Mon, 21 Sep 2015 12:23:02 GMT (envelope-from avg@FreeBSD.org) Message-Id: <201509211223.t8LCN2ZG006166@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Mon, 21 Sep 2015 12:23:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288064 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 12:23:02 -0000 Author: avg Date: Mon Sep 21 12:23:01 2015 New Revision: 288064 URL: https://svnweb.freebsd.org/changeset/base/288064 Log: MFV r287817: 6220 memleak in l2arc on debug build https://github.com/illumos/illumos-gate/commit/c546f36aa898d913ff77674fb5ff97f15b2e08b4 https://www.illumos.org/issues/6220 5408 introduced a memleak in l2arc, namely the member b_thawed gets leaked when an arc_hdr is realloced from full to l2only. Reviewed by: Saso Kiselkov Reviewed by: Simon Klinkert Reviewed by: George Wilson Approved by: Robert Mustacchi Author: Arne Jansen Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Mon Sep 21 12:00:12 2015 (r288063) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c Mon Sep 21 12:23:01 2015 (r288064) @@ -1485,6 +1485,13 @@ arc_hdr_realloc(arc_buf_hdr_t *hdr, kmem VERIFY(!HDR_L2_WRITING(hdr)); VERIFY3P(hdr->b_l1hdr.b_tmp_cdata, ==, NULL); +#ifdef ZFS_DEBUG + if (hdr->b_l1hdr.b_thawed != NULL) { + kmem_free(hdr->b_l1hdr.b_thawed, 1); + hdr->b_l1hdr.b_thawed = NULL; + } +#endif + nhdr->b_flags &= ~ARC_FLAG_HAS_L1HDR; } /* From owner-svn-src-head@freebsd.org Mon Sep 21 12:32:37 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E3D589D031F; Mon, 21 Sep 2015 12:32:37 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C86821986; Mon, 21 Sep 2015 12:32:37 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LCWb8A010441; Mon, 21 Sep 2015 12:32:37 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LCWbmD010440; Mon, 21 Sep 2015 12:32:37 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201509211232.t8LCWbmD010440@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Mon, 21 Sep 2015 12:32:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288065 - head/sys/netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 12:32:38 -0000 Author: bz Date: Mon Sep 21 12:32:36 2015 New Revision: 288065 URL: https://svnweb.freebsd.org/changeset/base/288065 Log: In the UDP over IPv6 implementation several cases are using the wrong protocol, e.g., based on wrong "next header" assumptions (which does not have to point to the upper layer protocol), or using hard-coded UDP instead of UDP or UDP-Lite possibly switching protocols. Fix those cases for UDP-Lite to work correctly. PR: 202788 Submitted by: Tiwei Bie (btw mail.ustc.edu.cn) [parts] Reviewed by: gnn, Tiwei Bie (btw mail.ustc.edu.cn), kevlo (earlier version) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D3686 Modified: head/sys/netinet6/udp6_usrreq.c Modified: head/sys/netinet6/udp6_usrreq.c ============================================================================== --- head/sys/netinet6/udp6_usrreq.c Mon Sep 21 12:23:01 2015 (r288064) +++ head/sys/netinet6/udp6_usrreq.c Mon Sep 21 12:32:36 2015 (r288065) @@ -233,7 +233,7 @@ udp6_input(struct mbuf **mp, int *offp, plen = ntohs(ip6->ip6_plen) - off + sizeof(*ip6); ulen = ntohs((u_short)uh->uh_ulen); - nxt = ip6->ip6_nxt; + nxt = proto; cscov_partial = (nxt == IPPROTO_UDPLITE) ? 1 : 0; if (nxt == IPPROTO_UDPLITE) { /* Zero means checksum over the complete packet. */ @@ -668,9 +668,11 @@ udp6_output(struct inpcb *inp, struct mb return (error); } + nxt = (inp->inp_socket->so_proto->pr_protocol == IPPROTO_UDP) ? + IPPROTO_UDP : IPPROTO_UDPLITE; if (control) { if ((error = ip6_setpktopts(control, &opt, - inp->in6p_outputopts, td->td_ucred, IPPROTO_UDP)) != 0) + inp->in6p_outputopts, td->td_ucred, nxt)) != 0) goto release; optp = &opt; } else @@ -794,8 +796,6 @@ udp6_output(struct inpcb *inp, struct mb /* * Stuff checksum and output datagram. */ - nxt = (inp->inp_socket->so_proto->pr_protocol == IPPROTO_UDP) ? - IPPROTO_UDP : IPPROTO_UDPLITE; udp6 = (struct udphdr *)(mtod(m, caddr_t) + hlen); udp6->uh_sport = inp->inp_lport; /* lport is always set in the PCB */ udp6->uh_dport = fport; @@ -912,17 +912,21 @@ udp6_abort(struct socket *so) inp = sotoinpcb(so); KASSERT(inp != NULL, ("udp6_abort: inp == NULL")); + INP_WLOCK(inp); #ifdef INET if (inp->inp_vflag & INP_IPV4) { struct pr_usrreqs *pru; + uint8_t nxt; - pru = inetsw[ip_protox[IPPROTO_UDP]].pr_usrreqs; + nxt = (inp->inp_socket->so_proto->pr_protocol == IPPROTO_UDP) ? + IPPROTO_UDP : IPPROTO_UDPLITE; + INP_WUNLOCK(inp); + pru = inetsw[ip_protox[nxt]].pr_usrreqs; (*pru->pru_abort)(so); return; } #endif - INP_WLOCK(inp); if (!IN6_IS_ADDR_UNSPECIFIED(&inp->in6p_faddr)) { INP_HASH_WLOCK(pcbinfo); in6_pcbdisconnect(inp); @@ -1036,16 +1040,20 @@ udp6_close(struct socket *so) inp = sotoinpcb(so); KASSERT(inp != NULL, ("udp6_close: inp == NULL")); + INP_WLOCK(inp); #ifdef INET if (inp->inp_vflag & INP_IPV4) { struct pr_usrreqs *pru; + uint8_t nxt; - pru = inetsw[ip_protox[IPPROTO_UDP]].pr_usrreqs; + nxt = (inp->inp_socket->so_proto->pr_protocol == IPPROTO_UDP) ? + IPPROTO_UDP : IPPROTO_UDPLITE; + INP_WUNLOCK(inp); + pru = inetsw[ip_protox[nxt]].pr_usrreqs; (*pru->pru_disconnect)(so); return; } #endif - INP_WLOCK(inp); if (!IN6_IS_ADDR_UNSPECIFIED(&inp->in6p_faddr)) { INP_HASH_WLOCK(pcbinfo); in6_pcbdisconnect(inp); @@ -1151,18 +1159,21 @@ udp6_disconnect(struct socket *so) inp = sotoinpcb(so); KASSERT(inp != NULL, ("udp6_disconnect: inp == NULL")); + INP_WLOCK(inp); #ifdef INET if (inp->inp_vflag & INP_IPV4) { struct pr_usrreqs *pru; + uint8_t nxt; - pru = inetsw[ip_protox[IPPROTO_UDP]].pr_usrreqs; + nxt = (inp->inp_socket->so_proto->pr_protocol == IPPROTO_UDP) ? + IPPROTO_UDP : IPPROTO_UDPLITE; + INP_WUNLOCK(inp); + pru = inetsw[ip_protox[nxt]].pr_usrreqs; (void)(*pru->pru_disconnect)(so); return (0); } #endif - INP_WLOCK(inp); - if (IN6_IS_ADDR_UNSPECIFIED(&inp->in6p_faddr)) { error = ENOTCONN; goto out; @@ -1218,7 +1229,10 @@ udp6_send(struct socket *so, int flags, } if (hasv4addr) { struct pr_usrreqs *pru; + uint8_t nxt; + nxt = (inp->inp_socket->so_proto->pr_protocol == + IPPROTO_UDP) ? IPPROTO_UDP : IPPROTO_UDPLITE; /* * XXXRW: We release UDP-layer locks before calling * udp_send() in order to avoid recursion. However, @@ -1230,7 +1244,7 @@ udp6_send(struct socket *so, int flags, INP_WUNLOCK(inp); if (sin6) in6_sin6_2_sin_in_sock(addr); - pru = inetsw[ip_protox[IPPROTO_UDP]].pr_usrreqs; + pru = inetsw[ip_protox[nxt]].pr_usrreqs; /* addr will just be freed in sendit(). */ return ((*pru->pru_send)(so, flags, m, addr, control, td)); From owner-svn-src-head@freebsd.org Mon Sep 21 12:53:27 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 887389D0C45; Mon, 21 Sep 2015 12:53:27 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 79F751311; Mon, 21 Sep 2015 12:53:27 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LCrRRG018864; Mon, 21 Sep 2015 12:53:27 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LCrRQ7018863; Mon, 21 Sep 2015 12:53:27 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201509211253.t8LCrRQ7018863@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Mon, 21 Sep 2015 12:53:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288066 - head/sys/netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 12:53:27 -0000 Author: bz Date: Mon Sep 21 12:53:26 2015 New Revision: 288066 URL: https://svnweb.freebsd.org/changeset/base/288066 Log: Compare mbuf pointer to NULL rather than to 0. No functional change. MFC after: 2 weeks Modified: head/sys/netinet6/udp6_usrreq.c Modified: head/sys/netinet6/udp6_usrreq.c ============================================================================== --- head/sys/netinet6/udp6_usrreq.c Mon Sep 21 12:32:36 2015 (r288065) +++ head/sys/netinet6/udp6_usrreq.c Mon Sep 21 12:53:26 2015 (r288066) @@ -788,7 +788,7 @@ udp6_output(struct inpcb *inp, struct mb * for UDP and IP6 headers. */ M_PREPEND(m, hlen + sizeof(struct udphdr), M_NOWAIT); - if (m == 0) { + if (m == NULL) { error = ENOBUFS; goto release; } From owner-svn-src-head@freebsd.org Mon Sep 21 13:25:30 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 82F53A05C15; Mon, 21 Sep 2015 13:25:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7451F124B; Mon, 21 Sep 2015 13:25:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LDPUSt032144; Mon, 21 Sep 2015 13:25:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LDPUM7032143; Mon, 21 Sep 2015 13:25:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509211325.t8LDPUM7032143@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 21 Sep 2015 13:25:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288067 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 13:25:30 -0000 Author: mav Date: Mon Sep 21 13:25:29 2015 New Revision: 288067 URL: https://svnweb.freebsd.org/changeset/base/288067 Log: Log iSCSI session reinstatements. False session reinstatements can be result of misconfiguration, when several initiators use the same initiator name and ISID. Modified: head/sys/cam/ctl/ctl_frontend_iscsi.c Modified: head/sys/cam/ctl/ctl_frontend_iscsi.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_iscsi.c Mon Sep 21 12:53:26 2015 (r288066) +++ head/sys/cam/ctl/ctl_frontend_iscsi.c Mon Sep 21 13:25:29 2015 (r288067) @@ -1611,6 +1611,16 @@ restart: if (cs2 != cs && cs2->cs_tasks_aborted == false && cs->cs_target == cs2->cs_target && strcmp(cs->cs_initiator_id, cs2->cs_initiator_id) == 0) { + if (strcmp(cs->cs_initiator_addr, + cs2->cs_initiator_addr) != 0) { + CFISCSI_SESSION_WARN(cs2, + "session reinstatement from " + "different address %s", + cs->cs_initiator_addr); + } else { + CFISCSI_SESSION_DEBUG(cs2, + "session reinstatement"); + } cfiscsi_session_terminate(cs2); mtx_unlock(&softc->lock); pause("cfiscsi_reinstate", 1); From owner-svn-src-head@freebsd.org Mon Sep 21 15:03:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5E7E3A0687C; Mon, 21 Sep 2015 15:03:00 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4CE641EF8; Mon, 21 Sep 2015 15:03:00 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LF30wN073385; Mon, 21 Sep 2015 15:03:00 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LF30dc073384; Mon, 21 Sep 2015 15:03:00 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509211503.t8LF30dc073384@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 21 Sep 2015 15:03:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288068 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 15:03:00 -0000 Author: kib Date: Mon Sep 21 15:02:59 2015 New Revision: 288068 URL: https://svnweb.freebsd.org/changeset/base/288068 Log: Ensure that maxproc does not exceed pid_max, at the time of boot. Changes to kern.pid_max mib after the boot can break this relation. The maxfiles value was calculated by the MAXFILES formula based on maxproc value, but this change decouples them, and MAXFILES now references maxusers. Without manual tuning, the maxfiles default value remains as it was prior to this commit. But for systems which have tuned maxproc and rely on maxfiles to adjust, additional reconfiguration is needed. Reported by: rwatson Reviewed by: emaste Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Modified: head/sys/kern/subr_param.c Modified: head/sys/kern/subr_param.c ============================================================================== --- head/sys/kern/subr_param.c Mon Sep 21 13:25:29 2015 (r288067) +++ head/sys/kern/subr_param.c Mon Sep 21 15:02:59 2015 (r288068) @@ -76,7 +76,7 @@ __FBSDID("$FreeBSD$"); #define NBUF 0 #endif #ifndef MAXFILES -#define MAXFILES (maxproc * 2) +#define MAXFILES (40 + 32 * maxusers) #endif static int sysctl_kern_vm_guest(SYSCTL_HANDLER_ARGS); @@ -253,6 +253,8 @@ init_param2(long physpages) TUNABLE_INT_FETCH("kern.maxproc", &maxproc); if (maxproc > (physpages / 12)) maxproc = physpages / 12; + if (maxproc > pid_max) + maxproc = pid_max; maxprocperuid = (maxproc * 9) / 10; /* From owner-svn-src-head@freebsd.org Mon Sep 21 15:54:17 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A38EDA0633D; Mon, 21 Sep 2015 15:54:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-io0-x22e.google.com (mail-io0-x22e.google.com [IPv6:2607:f8b0:4001:c06::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6D9F811F6; Mon, 21 Sep 2015 15:54:17 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by iofb144 with SMTP id b144so124939282iof.1; Mon, 21 Sep 2015 08:54:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=NwViF+iA8L2YkxxH6boFCCuFj8C0733ZEJy1IMGVc7A=; b=aUOp6W/mrjaCTTxGnTQ5JvytlJkiId17wuwBQo17Ro7eFkiOfBSVabsrSdDAvi9/8q 0BcOxMPyQJ0BwyK4qv5mt3E3DG8EzNFhYTIf68aTaWacs+LjM9D3OM/lcEALOb3Z577a 6wnuLxvnYNGq5G3gI1kJGUOu1pP2rsnQ/j8N843h+QikroA08BWemJeiMyY46It1j7Dn aSOkWtExYzJZ29dLoothu4F/sG8BVUw+gFz6ACl1UOo+K7Eq7c6F91H4Mo0cVJZHMfjQ nUs3+OdZyM1K0tDxlHVGPAi2ozWk8+sRZ7/vvQ75sSct/sbg2WyHwgYZ5gz5K+scusMQ RHpQ== X-Received: by 10.107.130.149 with SMTP id m21mr26983717ioi.180.1442850856676; Mon, 21 Sep 2015 08:54:16 -0700 (PDT) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.158.75 with HTTP; Mon, 21 Sep 2015 08:53:57 -0700 (PDT) In-Reply-To: <201509211503.t8LF30dc073384@repo.freebsd.org> References: <201509211503.t8LF30dc073384@repo.freebsd.org> From: Ed Maste Date: Mon, 21 Sep 2015 11:53:57 -0400 X-Google-Sender-Auth: ZP1bVRHsziyW1oc6hpTKvfBLsME Message-ID: Subject: Re: svn commit: r288068 - head/sys/kern To: Konstantin Belousov Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 15:54:17 -0000 On 21 September 2015 at 11:03, Konstantin Belousov wrote: > Author: kib > Date: Mon Sep 21 15:02:59 2015 > New Revision: 288068 > URL: https://svnweb.freebsd.org/changeset/base/288068 > > Log: > Ensure that maxproc does not exceed pid_max, at the time of boot. > Changes to kern.pid_max mib after the boot can break this relation. > > The maxfiles value was calculated by the MAXFILES formula based on > maxproc value, but this change decouples them, and MAXFILES now > references maxusers. Without manual tuning, the maxfiles default > value remains as it was prior to this commit. But for systems which > have tuned maxproc and rely on maxfiles to adjust, additional > reconfiguration is needed. > > Reported by: rwatson > Reviewed by: emaste > Sponsored by: The FreeBSD Foundation > MFC after: 2 weeks I believe this should also be: Relnotes: Yes From owner-svn-src-head@freebsd.org Mon Sep 21 16:07:23 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68D4DA068B2; Mon, 21 Sep 2015 16:07:23 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3FC16199C; Mon, 21 Sep 2015 16:07:23 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LG7NZW099442; Mon, 21 Sep 2015 16:07:23 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LG7NVe099441; Mon, 21 Sep 2015 16:07:23 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509211607.t8LG7NVe099441@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 21 Sep 2015 16:07:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288069 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 16:07:23 -0000 Author: emaste Date: Mon Sep 21 16:07:22 2015 New Revision: 288069 URL: https://svnweb.freebsd.org/changeset/base/288069 Log: Move DTrace tools to cross-tools stage Bootstrap tools exist for backwards compatibility support. DTrace tools tools are also needed for cross builds, so belong in cross-tools. Reviewed by: imp (earlier), markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2144 Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Mon Sep 21 15:02:59 2015 (r288068) +++ head/Makefile.inc1 Mon Sep 21 16:07:22 2015 (r288069) @@ -1357,16 +1357,6 @@ ${_bt}-usr.bin/clang/clang-tblgen: ${_bt ${_bt}-usr.bin/clang/tblgen: ${_bt}-lib/clang/libllvmtablegen ${_bt}-lib/clang/libllvmsupport .endif -# Rebuild ctfconvert and ctfmerge to avoid difficult-to-diagnose failures -# resulting from missing bug fixes or ELF Toolchain updates. -.if ${MK_CDDL} != "no" -_dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf cddl/usr.bin/ctfconvert \ - cddl/usr.bin/ctfmerge - -${_bt}-cddl/usr.bin/ctfconvert: ${_bt}-cddl/lib/libctf -${_bt}-cddl/usr.bin/ctfmerge: ${_bt}-cddl/lib/libctf -.endif - # Default to building the GPL DTC, but build the BSDL one if users explicitly # request it. _dtc= usr.bin/dtc @@ -1406,7 +1396,6 @@ bootstrap-tools: .PHONY .for _tool in \ ${_clang_tblgen} \ ${_kerberos5_bootstrap_tools} \ - ${_dtrace_tools} \ ${_strfile} \ ${_gperf} \ ${_groff} \ @@ -1502,6 +1491,13 @@ _btxld= usr.sbin/btxld .endif .endif +# Rebuild ctfconvert and ctfmerge to avoid difficult-to-diagnose failures +# resulting from missing bug fixes or ELF Toolchain updates. +.if ${MK_CDDL} != "no" +_dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf cddl/usr.bin/ctfconvert \ + cddl/usr.bin/ctfmerge +.endif + # If we're given an XAS, don't build binutils. .if ${XAS:M/*} == "" .if ${MK_BINUTILS_BOOTSTRAP} != "no" @@ -1545,6 +1541,7 @@ cross-tools: .MAKE ${_clang} \ ${_binutils} \ ${_elftctools} \ + ${_dtrace_tools} \ ${_cc} \ ${_btxld} \ ${_crunchide} \ From owner-svn-src-head@freebsd.org Mon Sep 21 17:26:36 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D2580A06E35; Mon, 21 Sep 2015 17:26:36 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A87301D36; Mon, 21 Sep 2015 17:26:36 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LHQatx032201; Mon, 21 Sep 2015 17:26:36 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LHQZI0032196; Mon, 21 Sep 2015 17:26:35 GMT (envelope-from des@FreeBSD.org) Message-Id: <201509211726.t8LHQZI0032196@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: des set sender to des@FreeBSD.org using -f From: =?UTF-8?Q?Dag-Erling_Sm=c3=b8rgrav?= Date: Mon, 21 Sep 2015 17:26:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288070 - in head: contrib/openpam/lib/libpam lib/libpam lib/libpam/libpam X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 17:26:36 -0000 Author: des Date: Mon Sep 21 17:26:35 2015 New Revision: 288070 URL: https://svnweb.freebsd.org/changeset/base/288070 Log: Restore the upstream (and documented) behavior of searching for modules both in /usr/lib and /usr/local/lib, thus simplifying the use of modules from ports, without breaking the compat32 case again. PR: 191151 MFC after: 3 weeks Modified: head/contrib/openpam/lib/libpam/openpam_constants.c head/lib/libpam/Makefile.inc head/lib/libpam/libpam/Makefile Modified: head/contrib/openpam/lib/libpam/openpam_constants.c ============================================================================== --- head/contrib/openpam/lib/libpam/openpam_constants.c Mon Sep 21 16:07:22 2015 (r288069) +++ head/contrib/openpam/lib/libpam/openpam_constants.c Mon Sep 21 17:26:35 2015 (r288070) @@ -137,6 +137,9 @@ const char *openpam_policy_path[] = { const char *openpam_module_path[] = { #ifdef OPENPAM_MODULES_DIRECTORY OPENPAM_MODULES_DIRECTORY, +#elif COMPAT_32BIT + "/usr/lib32", + "/usr/local/lib32", #else "/usr/lib", "/usr/local/lib", Modified: head/lib/libpam/Makefile.inc ============================================================================== --- head/lib/libpam/Makefile.inc Mon Sep 21 16:07:22 2015 (r288069) +++ head/lib/libpam/Makefile.inc Mon Sep 21 17:26:35 2015 (r288070) @@ -27,7 +27,6 @@ CFLAGS+= -DOPENPAM_DEBUG SHLIB_MAJOR= 5 -PAM_MOD_DIR= ${LIBDIR} STATIC_CFLAGS+= -DOPENPAM_STATIC_MODULES Modified: head/lib/libpam/libpam/Makefile ============================================================================== --- head/lib/libpam/libpam/Makefile Mon Sep 21 16:07:22 2015 (r288069) +++ head/lib/libpam/libpam/Makefile Mon Sep 21 17:26:35 2015 (r288070) @@ -155,7 +155,6 @@ MLINKS= pam.conf.5 pam.d.5 CSTD?= c99 CFLAGS+= -I${.CURDIR} -I${OPENPAM}/include CFLAGS+= -DLIB_MAJ=${SHLIB_MAJOR} -CFLAGS+= -DOPENPAM_MODULES_DIRECTORY='"${PAM_MOD_DIR:C/\/*$//}/"' CFLAGS+= -DHAVE_DLFUNC=1 CFLAGS+= -DHAVE_FDLOPEN=1 CFLAGS+= -DHAVE_FPURGE=1 From owner-svn-src-head@freebsd.org Mon Sep 21 17:31:15 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 126CBA05152; Mon, 21 Sep 2015 17:31:15 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EA3161FF2; Mon, 21 Sep 2015 17:31:14 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LHVEov035073; Mon, 21 Sep 2015 17:31:14 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LHVCGc035061; Mon, 21 Sep 2015 17:31:12 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509211731.t8LHVCGc035061@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 21 Sep 2015 17:31:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288071 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 17:31:15 -0000 Author: emaste Date: Mon Sep 21 17:31:11 2015 New Revision: 288071 URL: https://svnweb.freebsd.org/changeset/base/288071 Log: Move kbd.c to main sys/conf/files list It is (optionally) used on all architectures. Sponsored by: The FreeBSD Foundation Modified: head/sys/conf/files head/sys/conf/files.amd64 head/sys/conf/files.arm head/sys/conf/files.arm64 head/sys/conf/files.i386 head/sys/conf/files.mips head/sys/conf/files.pc98 head/sys/conf/files.powerpc head/sys/conf/files.sparc64 Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files Mon Sep 21 17:31:11 2015 (r288071) @@ -1881,6 +1881,7 @@ dev/ixgbe/ixgbe_dcb_82599.c optional ix dev/jme/if_jme.c optional jme pci dev/joy/joy.c optional joy dev/joy/joy_isa.c optional joy isa +dev/kbd/kbd.c optional atkbd | pckbd | sc | ukbd | vt dev/kbdmux/kbdmux.c optional kbdmux dev/ksyms/ksyms.c optional ksyms dev/le/am7990.c optional le Modified: head/sys/conf/files.amd64 ============================================================================== --- head/sys/conf/files.amd64 Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.amd64 Mon Sep 21 17:31:11 2015 (r288071) @@ -275,7 +275,6 @@ dev/hyperv/vmbus/hv_connection.c optio dev/hyperv/vmbus/hv_hv.c optional hyperv dev/hyperv/vmbus/hv_ring_buffer.c optional hyperv dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c optional hyperv -dev/kbd/kbd.c optional atkbd | sc | ukbd | vt dev/nfe/if_nfe.c optional nfe pci dev/ntb/if_ntb/if_ntb.c optional if_ntb dev/ntb/ntb_hw/ntb_hw.c optional if_ntb | ntb_hw Modified: head/sys/conf/files.arm ============================================================================== --- head/sys/conf/files.arm Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.arm Mon Sep 21 17:31:11 2015 (r288071) @@ -90,7 +90,6 @@ dev/fb/fb.c optional sc dev/fdt/fdt_arm_platform.c optional platform fdt dev/hwpmc/hwpmc_arm.c optional hwpmc dev/hwpmc/hwpmc_armv7.c optional hwpmc armv6 -dev/kbd/kbd.c optional sc | vt dev/psci/psci.c optional psci dev/psci/psci_arm.S optional psci dev/syscons/scgfbrndr.c optional sc Modified: head/sys/conf/files.arm64 ============================================================================== --- head/sys/conf/files.arm64 Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.arm64 Mon Sep 21 17:31:11 2015 (r288071) @@ -59,7 +59,6 @@ dev/acpica/acpi_if.m optional acpi dev/fdt/fdt_arm64.c optional fdt dev/hwpmc/hwpmc_arm64.c optional hwpmc dev/hwpmc/hwpmc_arm64_md.c optional hwpmc -dev/kbd/kbd.c optional atkbd | sc | ukbd | vt dev/mmc/host/dwmmc.c optional dwmmc dev/mmc/host/dwmmc_hisi.c optional dwmmc soc_hisi_hi6220 dev/ofw/ofw_cpu.c optional fdt Modified: head/sys/conf/files.i386 ============================================================================== --- head/sys/conf/files.i386 Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.i386 Mon Sep 21 17:31:11 2015 (r288071) @@ -265,7 +265,6 @@ dev/ipmi/ipmi_smbios.c optional ipmi dev/ipmi/ipmi_ssif.c optional ipmi smbus dev/ipmi/ipmi_pci.c optional ipmi pci dev/ipmi/ipmi_linux.c optional ipmi compat_linux -dev/kbd/kbd.c optional atkbd | sc | ukbd | vt dev/le/if_le_isa.c optional le isa dev/mse/mse.c optional mse dev/mse/mse_isa.c optional mse isa Modified: head/sys/conf/files.mips ============================================================================== --- head/sys/conf/files.mips Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.mips Mon Sep 21 17:31:11 2015 (r288071) @@ -71,7 +71,6 @@ dev/cfe/cfe_env.c optional cfe_env # syscons support dev/fb/fb.c optional sc -dev/kbd/kbd.c optional sc | vt dev/syscons/scgfbrndr.c optional sc dev/syscons/scterm-teken.c optional sc dev/syscons/scvtb.c optional sc Modified: head/sys/conf/files.pc98 ============================================================================== --- head/sys/conf/files.pc98 Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.pc98 Mon Sep 21 17:31:11 2015 (r288071) @@ -127,7 +127,6 @@ dev/hwpmc/hwpmc_ppro.c optional hwpmc dev/hwpmc/hwpmc_tsc.c optional hwpmc dev/hwpmc/hwpmc_x86.c optional hwpmc dev/io/iodev.c optional io -dev/kbd/kbd.c optional pckbd | sc | ukbd dev/le/if_le_cbus.c optional le isa dev/mse/mse.c optional mse dev/mse/mse_cbus.c optional mse isa Modified: head/sys/conf/files.powerpc ============================================================================== --- head/sys/conf/files.powerpc Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.powerpc Mon Sep 21 17:31:11 2015 (r288071) @@ -44,7 +44,6 @@ dev/iicbus/adt746x.c optional ad dev/iicbus/ds1631.c optional ds1631 powermac dev/iicbus/ds1775.c optional ds1775 powermac dev/iicbus/max6690.c optional max6690 powermac -dev/kbd/kbd.c optional sc | vt dev/nand/nfc_fsl.c optional nand mpc85xx dev/nand/nfc_rb.c optional nand mpc85xx # ofw can be either aim or fdt: fdt case handled in files. aim only powerpc specific. Modified: head/sys/conf/files.sparc64 ============================================================================== --- head/sys/conf/files.sparc64 Mon Sep 21 17:26:35 2015 (r288070) +++ head/sys/conf/files.sparc64 Mon Sep 21 17:31:11 2015 (r288071) @@ -40,7 +40,6 @@ dev/fb/fb.c optional sc dev/fb/gallant12x22.c optional sc dev/fb/machfb.c optional machfb sc dev/hwpmc/hwpmc_sparc64.c optional hwpmc -dev/kbd/kbd.c optional atkbd | sc | ukbd | vt dev/le/if_le_lebuffer.c optional le sbus dev/le/if_le_ledma.c optional le sbus dev/le/lebuffer_sbus.c optional le sbus From owner-svn-src-head@freebsd.org Mon Sep 21 17:56:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0EFB7A06309; Mon, 21 Sep 2015 17:56:02 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-ig0-x231.google.com (mail-ig0-x231.google.com [IPv6:2607:f8b0:4001:c05::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CF7551F04; Mon, 21 Sep 2015 17:56:01 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by igcrk20 with SMTP id rk20so66071543igc.1; Mon, 21 Sep 2015 10:56:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=zPc3Dwjl+qwcRsqCf6/JYJJkgVAyCmcwuH7rH553er0=; b=Drw2/5Wo2OavCiWMmxHnkYlIF1r6U/pD6lsDwUTnUzAjG0XtPxlm1md2bL1Noe+pJ4 ubMJXnUSPU8OJc6wJ+mddSJJvTTVOYo+B9FTqtCe6t/wsdK7oeIOzMoviOe6jh6VOBEd +mpo/C+qK8irmoj7sBbBK/DzH1/pyMuik3yo1VN8jiJj/oKTkXAfEHPDZgYZEPh9qgsN 48zTj3YKv6ws8pn97Bv5hyrCPosVY5TACMe7+/x04tJ2JiU8hSaGwNCzY+XsmC5XAbmv xvOfjAzCQIf/29+/iYqnhjd7AT2/B6jerZHdcpQCKKdi1lUnE7nZ6SPLimVV39N7k0u8 DWRQ== X-Received: by 10.50.117.10 with SMTP id ka10mr11523517igb.33.1442858161082; Mon, 21 Sep 2015 10:56:01 -0700 (PDT) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.158.75 with HTTP; Mon, 21 Sep 2015 10:55:41 -0700 (PDT) In-Reply-To: <258A339C-B951-4A4F-98FC-C5CC4C1940F5@fubar.geek.nz> References: <201509152344.t8FNiJeN060399@repo.freebsd.org> <258A339C-B951-4A4F-98FC-C5CC4C1940F5@fubar.geek.nz> From: Ed Maste Date: Mon, 21 Sep 2015 13:55:41 -0400 X-Google-Sender-Auth: D2wkB6canVJ3hp6UI8TqMxqh-34 Message-ID: Subject: Re: svn commit: r287836 - head/sys/conf To: Andrew Turner Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 17:56:02 -0000 On 16 September 2015 at 02:45, Andrew Turner wrote: > > Are we expecting atkbd or sc to be used on arm64? Almost certainly not, but I kept it consistent with amd64's entry. kbd.c is (optionally) used on all architectures and I've now moved it to the global 'files'. From owner-svn-src-head@freebsd.org Mon Sep 21 18:02:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2635A0668A; Mon, 21 Sep 2015 18:02:57 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from st11p02im-asmtp001.me.com (st11p02im-asmtp001.me.com [17.172.220.113]) (using TLSv1.2 with cipher DHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C735315A1; Mon, 21 Sep 2015 18:02:57 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from st11p02im-spool001.me.com ([17.172.220.115]) by st11p02im-asmtp001.me.com (Oracle Communications Messaging Server 7.0.5.35.0 64bit (built Mar 31 2015)) with ESMTP id <0NV101DC8GSJEX30@st11p02im-asmtp001.me.com>; Mon, 21 Sep 2015 18:02:45 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2015-09-21_06:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 kscore.is_bulkscore=1.0882977297122e-09 compositescore=0.988224937070463 phishscore=0 kscore.is_spamscore=0 rbsscore=0.988224937070463 recipient_to_sender_totalscore=0 spamscore=0 urlsuspectscore=0.988224937070463 adultscore=0 kscore.compositescore=0 circleOfTrustscore=0 suspectscore=0 recipient_domain_to_sender_totalscore=0 bulkscore=0 recipient_domain_to_sender_domain_totalscore=0 recipient_to_sender_domain_totalscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1412110000 definitions=main-1509210257 MIME-version: 1.0 Received: from localhost ([17.172.220.163]) by st11p02im-spool001.mac.com (Oracle Communications Messaging Server 7.0.5.35.0 64bit (built Mar 31 2015)) with ESMTP id <0NV100CSOGSJ5N60@st11p02im-spool001.mac.com>; Mon, 21 Sep 2015 18:02:43 +0000 (GMT) To: John Baldwin Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Rui Paulo Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Date: Mon, 21 Sep 2015 18:02:43 +0000 (GMT) X-Mailer: iCloud MailClient15E.bfdff5b MailServer15E43.20056 X-Originating-IP: [12.218.212.178] Message-id: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 18:02:58 -0000 So, we're going to keep ignoring the problem and keep =EF=BB=BFpatching th= ings up? It's a bit sad that a single driver (pmspcv) is able to cause so= much problems.=0A=0A--=0ARui Paulo=0A=0A=0AOn Sep 17, 2015, at 01:36 PM, = John Baldwin wrote:=0A=0A> Author: jhb=0A> Date: Thu Sep= 17 20:36:46 2015=0A> New Revision: 287934=0A> URL: https://svnweb.freebsd= .org/changeset/base/287934=0A>=0A> Log:=0A> The EFI boot loader allocates = a single chunk of contiguous memory to=0A> hold the kernel, modules, and a= ny other loaded data. This memory block=0A> is relocated to the kernel's e= xpected location during the transfer of=0A> control from the loader to the= kernel.=0A>=0A> The GENERIC kernel on amd64 has recently grown such that = a kernel + zfs.ko=0A> no longer fits in the default staging size. Bump the= default size from=0A> 32MB to 48MB to provide more breathing room.=0A>=0A= > PR: 201679=0A> Reviewed by: imp=0A> MFC after: 1 = week=0A> Differential Revision: https://reviews.freebsd.org/D3666=0A= >=0A> Modified:=0A> head/sys/boot/efi/loader/copy.c=0A>=0A> Modified: head= /sys/boot/efi/loader/copy.c=0A> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=0A> --- head/sys/boot/efi/loade= r/copy.c Thu Sep 17 20:36:34 2015 (r287933)=0A> +++ head/sys/boot/= efi/loader/copy.c Thu Sep 17 20:36:46 2015 (r287934)=0A> @@ = -38,7 +38,7 @@ __FBSDID("$FreeBSD$");=0A> #include =0A>=0A> #ifn= def EFI_STAGING_SIZE=0A> -#define EFI_STAGING_SIZE 32=0A> +#define= EFI_STAGING_SIZE 48=0A> #endif=0A>=0A> #define STAGE_PAGES = ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096)=0A>=0A= From owner-svn-src-head@freebsd.org Mon Sep 21 18:24:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6E916A0520A; Mon, 21 Sep 2015 18:24:28 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-io0-x22c.google.com (mail-io0-x22c.google.com [IPv6:2607:f8b0:4001:c06::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3BC5811DF; Mon, 21 Sep 2015 18:24:28 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by iofb144 with SMTP id b144so129519910iof.1; Mon, 21 Sep 2015 11:24:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=z8xlrPhzgkglqMH/HLV4+eqBPryJ1aUuWAExAQ/A0J8=; b=XTU1ypx5E2+e24QRwt43c8WxYpT5UVVuaF2XowMOcOptzjtJApxrtquvH0rNGAD2eI SWOTFCQqPzLKKq+eo8vl1+dgJArf2vUs4iDjvpAgxd0eH2Xnm9k/eXlCejosgC5Ml8rM W0HsusZKFpZnoQ7groFp3ZVd/1ZdbUwE1n+dmB25rTkH3h6BiMItrib34enBbtmiQm1h DffKRVVfLSoSjaP8Ra58pw6Zg23xZ04GimOqhy/7lYwB+XGo4aRh0GTqa9FmMQLZlwSl ZotrDjxHYNMwmDdQ5r3yTh0YI9M8gc3OuyadmCQQSt0hDMU7HansnYbA+3hqSi8S5N61 MSRQ== MIME-Version: 1.0 X-Received: by 10.107.46.228 with SMTP id u97mr26856823iou.165.1442859867618; Mon, 21 Sep 2015 11:24:27 -0700 (PDT) Received: by 10.36.28.208 with HTTP; Mon, 21 Sep 2015 11:24:27 -0700 (PDT) In-Reply-To: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> References: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> Date: Mon, 21 Sep 2015 11:24:27 -0700 Message-ID: Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Adrian Chadd To: Rui Paulo Cc: John Baldwin , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 18:24:28 -0000 Hi, Warner has been working on the modular kernel thing. But honestly, I think we should just start biting that bullet and ship a modules-only GENERIC by default.. -a On 21 September 2015 at 11:02, Rui Paulo wrote: > So, we're going to keep ignoring the problem and keep patching things up? > It's a bit sad that a single driver (pmspcv) is able to cause so much > problems. > > -- > Rui Paulo > > > On Sep 17, 2015, at 01:36 PM, John Baldwin wrote: > > Author: jhb > Date: Thu Sep 17 20:36:46 2015 > New Revision: 287934 > URL: https://svnweb.freebsd.org/changeset/base/287934 > > Log: > The EFI boot loader allocates a single chunk of contiguous memory to > hold the kernel, modules, and any other loaded data. This memory block > is relocated to the kernel's expected location during the transfer of > control from the loader to the kernel. > > The GENERIC kernel on amd64 has recently grown such that a kernel + zfs.ko > no longer fits in the default staging size. Bump the default size from > 32MB to 48MB to provide more breathing room. > > PR: 201679 > Reviewed by: imp > MFC after: 1 week > Differential Revision: https://reviews.freebsd.org/D3666 > > Modified: > head/sys/boot/efi/loader/copy.c > > Modified: head/sys/boot/efi/loader/copy.c > ============================================================================== > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 > (r287933) > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 > (r287934) > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); > #include > > #ifndef EFI_STAGING_SIZE > -#define EFI_STAGING_SIZE 32 > +#define EFI_STAGING_SIZE 48 > #endif > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) > From owner-svn-src-head@freebsd.org Mon Sep 21 18:35:33 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D344A059DC; Mon, 21 Sep 2015 18:35:33 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2DAB41B79; Mon, 21 Sep 2015 18:35:33 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LIZXYG061031; Mon, 21 Sep 2015 18:35:33 GMT (envelope-from andrew@FreeBSD.org) Received: (from andrew@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LIZXgo061030; Mon, 21 Sep 2015 18:35:33 GMT (envelope-from andrew@FreeBSD.org) Message-Id: <201509211835.t8LIZXgo061030@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: andrew set sender to andrew@FreeBSD.org using -f From: Andrew Turner Date: Mon, 21 Sep 2015 18:35:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288073 - head/sys/libkern/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 18:35:33 -0000 Author: andrew Date: Mon Sep 21 18:35:32 2015 New Revision: 288073 URL: https://svnweb.freebsd.org/changeset/base/288073 Log: Add the __aeabi_memclr8 symbol, clang 3.7 uses this. MFC after: 1 week Sponsored by: ABT Systems Lts Modified: head/sys/libkern/arm/memclr.S Modified: head/sys/libkern/arm/memclr.S ============================================================================== --- head/sys/libkern/arm/memclr.S Mon Sep 21 18:32:43 2015 (r288072) +++ head/sys/libkern/arm/memclr.S Mon Sep 21 18:35:32 2015 (r288073) @@ -35,6 +35,8 @@ __FBSDID("$FreeBSD$"); * void bzero(dest, len) */ ENTRY_NP(__aeabi_memclr4) +EENTRY_NP(__aeabi_memclr8) b bzero +EEND(__aeabi_memclr8) END(__aeabi_memclr4) From owner-svn-src-head@freebsd.org Mon Sep 21 18:39:16 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B93D7A05BA9; Mon, 21 Sep 2015 18:39:16 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A7A3B1DAD; Mon, 21 Sep 2015 18:39:16 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LIdGH1061358; Mon, 21 Sep 2015 18:39:16 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LIdD9M061348; Mon, 21 Sep 2015 18:39:13 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509211839.t8LIdD9M061348@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Mon, 21 Sep 2015 18:39:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288074 - in head: gnu/lib/csu lib/csu lib/csu/aarch64 lib/csu/amd64 lib/csu/arm lib/csu/i386 lib/csu/mips lib/csu/powerpc lib/csu/powerpc64 lib/csu/sparc64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 18:39:16 -0000 Author: bdrewery Date: Mon Sep 21 18:39:13 2015 New Revision: 288074 URL: https://svnweb.freebsd.org/changeset/base/288074 Log: Replace realinstall: and META_MODE staging hacks with FILES mechanism. This partially reverts r270170 for lib/csu/i386 while retaining the change for using bsd.lib.mk. These FILES groups could go into lib/csu/Makefile.inc but I've kept them in the Makefiles for clarity. Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/lib/csu/Makefile head/lib/csu/Makefile.inc head/lib/csu/aarch64/Makefile head/lib/csu/amd64/Makefile head/lib/csu/arm/Makefile head/lib/csu/i386/Makefile head/lib/csu/mips/Makefile head/lib/csu/powerpc/Makefile head/lib/csu/powerpc64/Makefile head/lib/csu/sparc64/Makefile Modified: head/gnu/lib/csu/Makefile ============================================================================== --- head/gnu/lib/csu/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/gnu/lib/csu/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -1,7 +1,5 @@ # $FreeBSD$ -.MAIN: all - .include MK_SSP= no @@ -41,7 +39,12 @@ SRCS+= crtfastmath.c BEGINSRC?= crtstuff.c ENDSRC?= crtstuff.c -all: ${OBJS} ${SOBJS} ${TGTOBJS} +FILES= ${OBJS} ${SOBJS} ${TGTOBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} + ${OBJS} ${SOBJS}: ${SRCS:M*.h} CLEANFILES= ${OBJS} ${SOBJS} ${TGTOBJS} @@ -70,17 +73,6 @@ CLEANFILES+= tm.h tconfig.h options.h op tm.h tconfig.h options.h: ${CCDIR}/cc_tools/Makefile (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) -realinstall: -.for file in ${OBJS} ${SOBJS} ${TGTOBJS} - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${file} ${DESTDIR}${LIBDIR}/${file} -.endfor - -.if ${MK_STAGING} == "yes" -STAGE_DIR= ${STAGE_LIBDIR} -STAGE_FILES= ${OBJS} ${SOBJS} ${TGTOBJS} -staging: stage_files -.endif .NOPATH: ${CLEANFILES} .include Modified: head/lib/csu/Makefile.inc ============================================================================== --- head/lib/csu/Makefile.inc Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/Makefile.inc Mon Sep 21 18:39:13 2015 (r288074) @@ -7,8 +7,3 @@ SED_FIX_NOTE = -i "" -e '/\.note\.tag/s/ NO_WMISSING_VARIABLE_DECLARATIONS= .include "../Makefile.inc" - -.if ${MK_STAGING} == "yes" && ${.TARGETS:Nall} == "" -FILES?= ${OBJS} -FILESDIR?= ${LIBDIR} -.endif Modified: head/lib/csu/aarch64/Makefile ============================================================================== --- head/lib/csu/aarch64/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/aarch64/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -8,7 +8,11 @@ OBJS+= Scrt1.o gcrt1.o CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s @@ -37,8 +41,4 @@ Scrt1.s: crt1.c Scrt1.o: Scrt1.s ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/amd64/Makefile ============================================================================== --- head/lib/csu/amd64/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/amd64/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -9,7 +9,11 @@ CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include CFLAGS+= -fno-omit-frame-pointer -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s @@ -38,8 +42,4 @@ Scrt1.s: crt1.c Scrt1.o: Scrt1.s ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/arm/Makefile ============================================================================== --- head/lib/csu/arm/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/arm/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -8,7 +8,11 @@ OBJS+= Scrt1.o gcrt1.o CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s @@ -37,8 +41,4 @@ Scrt1.s: crt1.c Scrt1.o: Scrt1.s ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/i386/Makefile ============================================================================== --- head/lib/csu/i386/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/i386/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -8,7 +8,11 @@ OBJS+= gcrt1.o crt1.o Scrt1.o CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} crt1_c.o crt1_s.o gcrt1_c.o Scrt1_c.o CLEANFILES+= crt1_c.s gcrt1_c.s Scrt1_c.s @@ -48,8 +52,4 @@ Scrt1.o: Scrt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o Scrt1.o -r crt1_s.o Scrt1_c.o ${OBJCOPY} --localize-symbol _start1 Scrt1.o -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/mips/Makefile ============================================================================== --- head/lib/csu/mips/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/mips/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -8,7 +8,11 @@ OBJS+= Scrt1.o gcrt1.o CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s @@ -37,8 +41,4 @@ Scrt1.s: crt1.c Scrt1.o: Scrt1.s ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/powerpc/Makefile ============================================================================== --- head/lib/csu/powerpc/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/powerpc/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -8,7 +8,11 @@ OBJS+= Scrt1.o gcrt1.o CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s @@ -37,8 +41,4 @@ Scrt1.s: crt1.c Scrt1.o: Scrt1.s ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/powerpc64/Makefile ============================================================================== --- head/lib/csu/powerpc64/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/powerpc64/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -16,7 +16,11 @@ CFLAGS+= -I${.CURDIR}/../common \ CC:= gcc COMPILER_TYPE:= gcc -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s @@ -45,8 +49,4 @@ Scrt1.s: crt1.c Scrt1.o: Scrt1.s ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include Modified: head/lib/csu/sparc64/Makefile ============================================================================== --- head/lib/csu/sparc64/Makefile Mon Sep 21 18:35:32 2015 (r288073) +++ head/lib/csu/sparc64/Makefile Mon Sep 21 18:39:13 2015 (r288074) @@ -7,7 +7,11 @@ OBJS= ${SRCS:N*.h:R:S/$/.o/g} OBJS+= Scrt1.o gcrt1.o CFLAGS+= -I${.CURDIR}/../common -I${.CURDIR}/../../libc/include -all: ${OBJS} +FILES= ${OBJS} +FILESMODE= ${LIBMODE} +FILESOWN= ${LIBOWN} +FILESGRP= ${LIBGRP} +FILESDIR= ${LIBDIR} CLEANFILES= ${OBJS} @@ -17,8 +21,4 @@ gcrt1.o: crt1.c Scrt1.o: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -c -o Scrt1.o ${.ALLSRC} -realinstall: - ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${OBJS} ${DESTDIR}${LIBDIR} - .include From owner-svn-src-head@freebsd.org Mon Sep 21 18:52:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0D38DA065FB; Mon, 21 Sep 2015 18:52:53 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EF4781617; Mon, 21 Sep 2015 18:52:52 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LIqqkg069224; Mon, 21 Sep 2015 18:52:52 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LIqqiW069223; Mon, 21 Sep 2015 18:52:52 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509211852.t8LIqqiW069223@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Mon, 21 Sep 2015 18:52:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288075 - head/gnu/usr.bin/binutils/ld X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 18:52:53 -0000 Author: bdrewery Date: Mon Sep 21 18:52:52 2015 New Revision: 288075 URL: https://svnweb.freebsd.org/changeset/base/288075 Log: Use SHAREOWN/SHAREMODE/SHAREGRP rather than LIB* as these are plain ASCII scripts that the linker can load rather than binary library objects. Effectively no change. Suggested by: hrs Modified: head/gnu/usr.bin/binutils/ld/Makefile Modified: head/gnu/usr.bin/binutils/ld/Makefile ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile Mon Sep 21 18:39:13 2015 (r288074) +++ head/gnu/usr.bin/binutils/ld/Makefile Mon Sep 21 18:52:52 2015 (r288075) @@ -46,9 +46,6 @@ CLEANDIRS+= ldscripts CLEANFILES+= ldemul-list.h stringify.sed FILES= ${LDSCRIPTS:S|^|ldscripts/|} -FILESOWN= ${LIBOWN} -FILESGRP= ${LIBGRP} -FILESMODE= ${LIBMODE} FILESDIR= ${SCRIPTDIR} HOST= ${TARGET_TUPLE} From owner-svn-src-head@freebsd.org Mon Sep 21 21:44:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 96FA1A0606C; Mon, 21 Sep 2015 21:44:05 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 78A501D46; Mon, 21 Sep 2015 21:44:05 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8LLi5lS050350; Mon, 21 Sep 2015 21:44:05 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8LLi2Vv050334; Mon, 21 Sep 2015 21:44:02 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509212144.t8LLi2Vv050334@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Mon, 21 Sep 2015 21:44:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288076 - in head: gnu/lib/csu lib/csu/aarch64 lib/csu/amd64 lib/csu/arm lib/csu/i386 lib/csu/mips lib/csu/powerpc lib/csu/powerpc64 lib/csu/sparc64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 21:44:05 -0000 Author: bdrewery Date: Mon Sep 21 21:44:02 2015 New Revision: 288076 URL: https://svnweb.freebsd.org/changeset/base/288076 Log: Fix installation of 32bit libraries after r288074. FILES is not used when LIBRARIES_ONLY is set, which is used to build and install the lib32 sysroot. All of the csu files do quality as "libraries" for this case so just undefine LIBRARIES_ONLY. This is still better than the previous realinstall handling as it does not hook into META_MODE properly. Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/lib/csu/Makefile head/lib/csu/aarch64/Makefile head/lib/csu/amd64/Makefile head/lib/csu/arm/Makefile head/lib/csu/i386/Makefile head/lib/csu/mips/Makefile head/lib/csu/powerpc/Makefile head/lib/csu/powerpc64/Makefile head/lib/csu/sparc64/Makefile Modified: head/gnu/lib/csu/Makefile ============================================================================== --- head/gnu/lib/csu/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/gnu/lib/csu/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -44,6 +44,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY ${OBJS} ${SOBJS}: ${SRCS:M*.h} Modified: head/lib/csu/aarch64/Makefile ============================================================================== --- head/lib/csu/aarch64/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/aarch64/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -13,6 +13,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s Modified: head/lib/csu/amd64/Makefile ============================================================================== --- head/lib/csu/amd64/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/amd64/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -14,6 +14,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s Modified: head/lib/csu/arm/Makefile ============================================================================== --- head/lib/csu/arm/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/arm/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -13,6 +13,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s Modified: head/lib/csu/i386/Makefile ============================================================================== --- head/lib/csu/i386/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/i386/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -13,6 +13,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} crt1_c.o crt1_s.o gcrt1_c.o Scrt1_c.o CLEANFILES+= crt1_c.s gcrt1_c.s Scrt1_c.s Modified: head/lib/csu/mips/Makefile ============================================================================== --- head/lib/csu/mips/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/mips/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -13,6 +13,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s Modified: head/lib/csu/powerpc/Makefile ============================================================================== --- head/lib/csu/powerpc/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/powerpc/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -13,6 +13,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s Modified: head/lib/csu/powerpc64/Makefile ============================================================================== --- head/lib/csu/powerpc64/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/powerpc64/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -21,6 +21,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} CLEANFILES+= crt1.s gcrt1.s Scrt1.s Modified: head/lib/csu/sparc64/Makefile ============================================================================== --- head/lib/csu/sparc64/Makefile Mon Sep 21 18:52:52 2015 (r288075) +++ head/lib/csu/sparc64/Makefile Mon Sep 21 21:44:02 2015 (r288076) @@ -12,6 +12,8 @@ FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} FILESGRP= ${LIBGRP} FILESDIR= ${LIBDIR} +# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. +.undef LIBRARIES_ONLY CLEANFILES= ${OBJS} From owner-svn-src-head@freebsd.org Mon Sep 21 22:31:37 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B750DA0576B; Mon, 21 Sep 2015 22:31:37 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8FFE81568; Mon, 21 Sep 2015 22:31:37 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from ralph.baldwin.cx (c-73-231-226-104.hsd1.ca.comcast.net [73.231.226.104]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 8D255B91E; Mon, 21 Sep 2015 18:31:35 -0400 (EDT) From: John Baldwin To: Adrian Chadd Cc: Rui Paulo , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Date: Mon, 21 Sep 2015 15:31:11 -0700 Message-ID: <7425989.fyHR6C7Hof@ralph.baldwin.cx> User-Agent: KMail/4.14.3 (FreeBSD/10.2-PRERELEASE; KDE/4.14.3; amd64; ; ) In-Reply-To: References: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Mon, 21 Sep 2015 18:31:35 -0400 (EDT) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 22:31:37 -0000 On Monday, September 21, 2015 11:24:27 AM Adrian Chadd wrote: > Hi, > > Warner has been working on the modular kernel thing. But honestly, I > think we should just start biting that bullet and ship a modules-only > GENERIC by default.. That will not help. In fact, that will probably make it worse. The modules have to fit into the same staging area as the kernel, and each module adds overhead in the form of headers, etc. OTOH, since we penalize performance in modules by not inlining locks and such, that may even out. If we decide to fix those instead then it would be back to being worse. :) (I'm of the opinion we should inline atomics and locks, etc. in modules built as part of a kernel to match that kernel's config and only use shims for modules built standalone. Most of this can probably be accomplished by having modules built as part of a kernel not define KLD_MODULE during their build but only use that for standalone modules. However, I haven't audited all the uses of KLD_MODULE to see if we might want some of them to be on for "bundled" modules in which case we'd need to add a new #define that gets defined for "bundled" modules but not standalone modules (or gets defined for both?) and fixup the code appropriately.) > -a > > > On 21 September 2015 at 11:02, Rui Paulo wrote: > > So, we're going to keep ignoring the problem and keep patching things up? > > It's a bit sad that a single driver (pmspcv) is able to cause so much > > problems. It's a harder problem to solve. Feel free to submit patches. One option is to let the staging code allocate more memory chunks from EFI and chain them together. However, your relocate code will now have to be smart enough to order the various copies in such a way that none of them copy over top of each other. I haven't sat down to see if that's easy to solve or not. The other approach I suggested earlier is to make the kernel relocatable (and allow the module metadata to be anywhere and live in a chain instead of an array) so that we can just load things wherever and leave them there without having to relocate. -- John Baldwin From owner-svn-src-head@freebsd.org Mon Sep 21 23:04:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5BBE79D07D4; Mon, 21 Sep 2015 23:04:56 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C82E415C9; Mon, 21 Sep 2015 23:04:55 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id t8LN4oaF077521 (version=TLSv1 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 22 Sep 2015 02:04:50 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua t8LN4oaF077521 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id t8LN4oLw077520; Tue, 22 Sep 2015 02:04:50 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Tue, 22 Sep 2015 02:04:50 +0300 From: Konstantin Belousov To: John Baldwin Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Message-ID: <20150921230450.GB67105@kib.kiev.ua> References: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> <7425989.fyHR6C7Hof@ralph.baldwin.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <7425989.fyHR6C7Hof@ralph.baldwin.cx> User-Agent: Mutt/1.5.24 (2015-08-30) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 23:04:56 -0000 On Mon, Sep 21, 2015 at 03:31:11PM -0700, John Baldwin wrote: > (I'm of the opinion we should inline atomics and locks, etc. in modules > built as part of a kernel to match that kernel's config and only use shims > for modules built standalone. Most of this can probably be accomplished by > having modules built as part of a kernel not define KLD_MODULE during their > build but only use that for standalone modules. However, I haven't audited > all the uses of KLD_MODULE to see if we might want some of them to be on > for "bundled" modules in which case we'd need to add a new #define that > gets defined for "bundled" modules but not standalone modules (or gets > defined for both?) and fixup the code appropriately.) At least one use of KLD_MODULE outside the atomics and locks category is the definition of MAKEDEV_ETERNAL_KLD in sys/conf.h. From owner-svn-src-head@freebsd.org Mon Sep 21 23:54:07 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9957EA05F61; Mon, 21 Sep 2015 23:54:07 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from st11p02im-asmtp002.me.com (st11p02im-asmtp002.me.com [17.172.220.114]) (using TLSv1.2 with cipher DHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6D9E81AA4; Mon, 21 Sep 2015 23:54:07 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from st11p02im-spool002.me.com ([17.172.220.214]) by st11p02im-asmtp002.me.com (Oracle Communications Messaging Server 7.0.5.35.0 64bit (built Mar 31 2015)) with ESMTP id <0NV100XX0U8NZ150@st11p02im-asmtp002.me.com>; Mon, 21 Sep 2015 22:53:13 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2015-09-21_08:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 kscore.is_bulkscore=3.33066907387547e-16 compositescore=0.988224937070463 phishscore=0 kscore.is_spamscore=0 rbsscore=0.988224937070463 recipient_to_sender_totalscore=0 spamscore=0 urlsuspectscore=0.988224937070463 adultscore=0 kscore.compositescore=0 circleOfTrustscore=0 suspectscore=0 recipient_domain_to_sender_totalscore=0 bulkscore=0 recipient_domain_to_sender_domain_totalscore=0 recipient_to_sender_domain_totalscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1412110000 definitions=main-1509210324 MIME-version: 1.0 Received: from localhost ([17.172.220.163]) by st11p02im-spool002.mac.com (Oracle Communications Messaging Server 7.0.5.35.0 64bit (built Mar 31 2015)) with ESMTP id <0NV100SK9U8NC420@st11p02im-spool002.mac.com>; Mon, 21 Sep 2015 22:53:11 +0000 (GMT) To: Adrian Chadd Cc: jhb@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Rui Paulo Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Date: Mon, 21 Sep 2015 22:53:11 +0000 (GMT) X-Mailer: iCloud MailClient15E.bfdff5b MailServer15E43.20056 X-Originating-IP: [12.218.212.178] Message-id: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2015 23:54:07 -0000 No, that doesn't work very well. Not only the modules don't auto-load, th= e way the modules are compiled is different. See, for example, cam ctl wh= ich doesn't compile the sg code when it's built into the kernel, but compi= les it when it's built as a module. The sg code is currently buggy and ca= uses insta-panics with GNOME 3 (perhaps the auto-mounter in hald (?)=EF=BB= =BF).=0A=0A--=0ARui Paulo=0A=0A=0AOn Sep 21, 2015, at 11:24 AM, Adrian Cha= dd wrote:=0A=0A> Hi,=0A>=0A> Warner has been work= ing on the modular kernel thing. But honestly, I=0A> think we should just = start biting that bullet and ship a modules-only=0A> GENERIC by default..=0A= >=0A>=0A> -a=0A>=0A>=0A> On 21 September 2015 at 11:02, Rui Paulo wrote:=0A>> So, we're going to keep ignoring the problem and keep = patching things up?=0A>> It's a bit sad that a single driver (pmspcv) is a= ble to cause so much=0A>> problems.=0A>>=0A>> --=0A>> Rui Paulo=0A>>=0A>>=0A= >> On Sep 17, 2015, at 01:36 PM, John Baldwin wrote:=0A>= >=0A>> Author: jhb=0A>> Date: Thu Sep 17 20:36:46 2015=0A>> New Revision: = 287934=0A>> URL: https://svnweb.freebsd.org/changeset/base/287934=0A>> =0A= >>=0A>> Log:=0A>> The EFI boot loader allocates a single chunk of contiguo= us memory to=0A>> hold the kernel, modules, and any other loaded data. Thi= s memory block=0A>> is relocated to the kernel's expected location during = the transfer of=0A>> control from the loader to the kernel.=0A>>=0A>> The = GENERIC kernel on amd64 has recently grown such that a kernel + zfs.ko=0A>= > no longer fits in the default staging size. Bump the default size from=0A= >> 32MB to 48MB to provide more breathing room.=0A>>=0A>> PR: 201679=0A>> = Reviewed by: imp=0A>> MFC after: 1 week=0A>> Differential Revision: https:= //reviews.freebsd.org/D3666=0A>> =0A>>=0A>> Modified:=0A>> head/sys/boot/= efi/loader/copy.c=0A>>=0A>> Modified: head/sys/boot/efi/loader/copy.c=0A>>= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=0A>> --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 201= 5=0A>> (r287933)=0A>> +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36= :46 2015=0A>> (r287934)=0A>> @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$");=0A>>= #include =0A>>=0A>> #ifndef EFI_STAGING_SIZE=0A>> -#define EFI_= STAGING_SIZE 32=0A>> +#define EFI_STAGING_SIZE 48=0A>> #endif=0A>>=0A>> #d= efine STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096)=0A>>=0A= From owner-svn-src-head@freebsd.org Tue Sep 22 00:07:29 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7345A066F4 for ; Tue, 22 Sep 2015 00:07:29 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-pa0-f46.google.com (mail-pa0-f46.google.com [209.85.220.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BC33C11D4 for ; Tue, 22 Sep 2015 00:07:29 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: by padhy16 with SMTP id hy16so130310743pad.1 for ; Mon, 21 Sep 2015 17:07:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=kZDosOQH4cCHDkQue4WDZ2IlFQ8yQwwL5WM0dfBq7rA=; b=PPCYgRix+8pyxSGLGscqXt2wls4DjigrK6iyN3CMnW9Qxgk0tkyMm15JYMiqSqkTv1 OynXYZBi9D4INX/u7TlRHwz3uGuDFHj+UMZdXPox3TfAQJun5GbMztRI1RfEIuSrD5ju FJQyuz+2sTHd1yAPYV+3+qsgX4+aTnyS9Q7vNcdLTJoE+XtQg2Y6jqHkyX7Ub+d8JpQZ dp35ZxyL1UumWNVDZ8mLik6ZeAyMM/hbcOHm5lD3YggnYYKgIIiPWclv4WzoyBdrZtWc gfBHLYbS4JzwpXG99Fx6TiIK+Eno1/Fou+gMfcrCFoEdazWqsZ/0Jm8I5VHc1LK1De7y PLBA== X-Gm-Message-State: ALoCoQkD+huCFn0FkSat9tMz4VTGgB/HpwrdlnKcg1u6ClGlsWjX7SJ+o406SANJtvf4NB6ERJzd X-Received: by 10.68.102.225 with SMTP id fr1mr27999640pbb.65.1442879991784; Mon, 21 Sep 2015 16:59:51 -0700 (PDT) Received: from ip-100-127-128-187.compute.internal.netflix.com ([69.53.245.18]) by smtp.gmail.com with ESMTPSA id cn4sm26649068pbc.94.2015.09.21.16.59.50 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 21 Sep 2015 16:59:51 -0700 (PDT) Sender: Warner Losh Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Content-Type: multipart/signed; boundary="Apple-Mail=_866F59F0-1E14-4EC5-BE5A-1CCF664C119E"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5 From: Warner Losh In-Reply-To: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> Date: Mon, 21 Sep 2015 17:59:48 -0600 Cc: Adrian Chadd , jhb@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <5427AC7C-1B0B-4273-B758-DB0C1BDF656F@bsdimp.com> References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> To: Rui Paulo X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 00:07:30 -0000 --Apple-Mail=_866F59F0-1E14-4EC5-BE5A-1CCF664C119E Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Apart from the inlining issue John raised (which I agree with his = solution on, btw) and the one cam ctl module, what other modules are meaningfully = different when compiled as modules. Assume that the auto-loading bit is solved, at least for devices on = self-enumerating busses. Warner > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: >=20 > No, that doesn't work very well. Not only the modules don't = auto-load, the way the modules are compiled is different. See, for = example, cam ctl which doesn't compile the sg code when it's built into = the kernel, but compiles it when it's built as a module. The sg code is = currently buggy and causes insta-panics with GNOME 3 (perhaps the = auto-mounter in hald (?)). > -- > Rui Paulo >=20 >=20 > On Sep 21, 2015, at 11:24 AM, Adrian Chadd = wrote: >=20 >> Hi, >>=20 >> Warner has been working on the modular kernel thing. But honestly, I >> think we should just start biting that bullet and ship a modules-only >> GENERIC by default.. >>=20 >>=20 >> -a >>=20 >>=20 >> On 21 September 2015 at 11:02, Rui Paulo wrote: >>> So, we're going to keep ignoring the problem and keep patching = things up? >>> It's a bit sad that a single driver (pmspcv) is able to cause so = much >>> problems. >>>=20 >>> -- >>> Rui Paulo >>>=20 >>>=20 >>> On Sep 17, 2015, at 01:36 PM, John Baldwin wrote: >>>=20 >>> Author: jhb >>> Date: Thu Sep 17 20:36:46 2015 >>> New Revision: 287934 >>> URL: https://svnweb.freebsd.org/changeset/base/287934 >>>=20 >>>=20 >>> Log: >>> The EFI boot loader allocates a single chunk of contiguous memory to >>> hold the kernel, modules, and any other loaded data. This memory = block >>> is relocated to the kernel's expected location during the transfer = of >>> control from the loader to the kernel. >>>=20 >>> The GENERIC kernel on amd64 has recently grown such that a kernel + = zfs.ko >>> no longer fits in the default staging size. Bump the default size = from >>> 32MB to 48MB to provide more breathing room. >>>=20 >>> PR: 201679 >>> Reviewed by: imp >>> MFC after: 1 week >>> Differential Revision: https://reviews.freebsd.org/D3666 >>>=20 >>>=20 >>> Modified: >>> head/sys/boot/efi/loader/copy.c >>>=20 >>> Modified: head/sys/boot/efi/loader/copy.c >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 >>> (r287933) >>> +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 >>> (r287934) >>> @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); >>> #include >>>=20 >>> #ifndef EFI_STAGING_SIZE >>> -#define EFI_STAGING_SIZE 32 >>> +#define EFI_STAGING_SIZE 48 >>> #endif >>>=20 >>> #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) >>>=20 --Apple-Mail=_866F59F0-1E14-4EC5-BE5A-1CCF664C119E Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJWAJn0AAoJEGwc0Sh9sBEANREP/iu9rtcXKEXWoA/cjk7SKUFs CZcKGlqWU62fIGR/EcZ4jiXQjUHkC7XW/I+91jZr/DXQMCWYhJ5HKza2gmb53yKG QS8lZsqt0bACMKrRS3QP9G0SpR+oGFVIx7eCUHBeTGbHzxCbuAqYN+fPV45843TH e7mo/Om6aOrrXg6lLueWttuqN4l+I11BBALULXytEnypMXgF/eVbBl5MMHVTgd+J 9sMLFMnZmLjZ+pzS1mPf7oJPWK+OjlMrzc1tKKc+itg9ZsP1BNhZR0OPNp1CkAiL cV4JwlrnIBb2aFBTyzGL2KelcxcG8XqSGbVWeQqVL6iXmh/O3c0zh9CI+fkgWCJz iDykOc7Z/SWrPG7N3V13JP7ICgO8qXvtZO58Li69zTm0CfdDX/i9d7qTDWax2oHm 5NrhIpxRg18s8DSCWJh/dVuC3P8IAW0Poa3twkoHZTxh2p3VXxQJpgPNPp8t6fLY qaNTPNfPsAuC3cVZTCnoQcYM1gK5gKYkJ2o/ImF4R/QylH2AD0LxAZbcUDaLFxlw jiljctlhtpW1s9JsbT704K0RrNI8W22PVni0NnfCmeGfT/6T2ZHQHV3yotTzcvCq mZ9xDwmX21Y5pNGG8xI08i9aAosH/NLUFg1YoI7m8pfRGYfUq27FbEiRrko5fKk4 7hpVjXKKXMqDDZ7LhHGS =DoMH -----END PGP SIGNATURE----- --Apple-Mail=_866F59F0-1E14-4EC5-BE5A-1CCF664C119E-- From owner-svn-src-head@freebsd.org Tue Sep 22 00:20:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A45EA06EEC for ; Tue, 22 Sep 2015 00:20:09 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-pa0-f48.google.com (mail-pa0-f48.google.com [209.85.220.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5D611175D for ; Tue, 22 Sep 2015 00:20:09 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: by pacex6 with SMTP id ex6so130791013pac.0 for ; Mon, 21 Sep 2015 17:20:08 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=nOIl+N+WLXAcEY9kzr6Lvc0mkN+wPi3Zg50aoTGKiAs=; b=K9zmTkuVVDY/Tn1eR995M+NbU8RXC88XKnwUGH1aLUmQFPacG0uZcTcoWKlC5gHYVr AcAGHnkjYdGP3+3RbzNoTlSSs3miK+UXF7rpvVm17G5yuZXnk94xy3az50LBZCwyMO1I hOQgkPev3yui5eUbm1+vvK3J6WSTyIwhNhzZ6t95hbZp47JffdtHUIYDuD/PoNRe+C7J ewh6TPCK6LSiXeneknGcSAF/a5Blhe2sB6mEuj8ryWX2xz9SToepkroXuBlgMPjlRrOS JlZ8nbCXNHOiM5gFeRCkeeH3JVbGcnBJXNaS2ZGTVmsV2hbwZ4Yv1WIVJ/WXMVAnARGl UdgA== X-Gm-Message-State: ALoCoQlL2u8c9xF1TDxm9rXDi61BEergXD8w3lNE6wxdu4oN+mhJ/ajJkrq/l2OZZPncK8ZAShJd X-Received: by 10.66.131.10 with SMTP id oi10mr28016223pab.87.1442879878854; Mon, 21 Sep 2015 16:57:58 -0700 (PDT) Received: from ip-100-127-128-187.compute.internal.netflix.com ([69.53.245.18]) by smtp.gmail.com with ESMTPSA id a2sm26877790pas.47.2015.09.21.16.57.57 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 21 Sep 2015 16:57:58 -0700 (PDT) Sender: Warner Losh Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Content-Type: multipart/signed; boundary="Apple-Mail=_F8E1F80B-230E-49C1-9DC4-2A9A640EE68A"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5 From: Warner Losh In-Reply-To: Date: Mon, 21 Sep 2015 17:57:56 -0600 Cc: Rui Paulo , John Baldwin , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-Id: <4103BB2E-6B7B-4AC9-8F7F-06F30717867E@bsdimp.com> References: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> To: Adrian Chadd X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 00:20:09 -0000 --Apple-Mail=_F8E1F80B-230E-49C1-9DC4-2A9A640EE68A Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 I have both a modules-only kernel (checked in as MINIMAL, but it needs a little love). I also have most of the modules loading automatically infrastructure in place, except for some code to parse data and create devd.conf scripts on boot. Konstantin asked that I write this before pushing the bulk of my work in. There will be a chore to convert all the PCI drivers in the tree to mark the PNP data (maybe tweaking it a bit), but it=E2=80=99s pure grunt = work. I=E2=80=99ve done all the USB and (less relevantly) PC Card. Warner > On Sep 21, 2015, at 12:24 PM, Adrian Chadd = wrote: >=20 > Hi, >=20 > Warner has been working on the modular kernel thing. But honestly, I > think we should just start biting that bullet and ship a modules-only > GENERIC by default.. >=20 >=20 > -a >=20 >=20 > On 21 September 2015 at 11:02, Rui Paulo wrote: >> So, we're going to keep ignoring the problem and keep patching things = up? >> It's a bit sad that a single driver (pmspcv) is able to cause so much >> problems. >>=20 >> -- >> Rui Paulo >>=20 >>=20 >> On Sep 17, 2015, at 01:36 PM, John Baldwin wrote: >>=20 >> Author: jhb >> Date: Thu Sep 17 20:36:46 2015 >> New Revision: 287934 >> URL: https://svnweb.freebsd.org/changeset/base/287934 >>=20 >> Log: >> The EFI boot loader allocates a single chunk of contiguous memory to >> hold the kernel, modules, and any other loaded data. This memory = block >> is relocated to the kernel's expected location during the transfer of >> control from the loader to the kernel. >>=20 >> The GENERIC kernel on amd64 has recently grown such that a kernel + = zfs.ko >> no longer fits in the default staging size. Bump the default size = from >> 32MB to 48MB to provide more breathing room. >>=20 >> PR: 201679 >> Reviewed by: imp >> MFC after: 1 week >> Differential Revision: https://reviews.freebsd.org/D3666 >>=20 >> Modified: >> head/sys/boot/efi/loader/copy.c >>=20 >> Modified: head/sys/boot/efi/loader/copy.c >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 >> (r287933) >> +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 >> (r287934) >> @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); >> #include >>=20 >> #ifndef EFI_STAGING_SIZE >> -#define EFI_STAGING_SIZE 32 >> +#define EFI_STAGING_SIZE 48 >> #endif >>=20 >> #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) >>=20 >=20 --Apple-Mail=_F8E1F80B-230E-49C1-9DC4-2A9A640EE68A Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJWAJmEAAoJEGwc0Sh9sBEAMdYQAKDgS4AzjsJRjbq4NX8f7Yqk ZrpfmL7uUMCMPrCrH8qFkzr4DuDyMmsO81RtiOLR3c0M2WmQ3aH5TFlUBLpWKIR5 MgLSP7dDf60HIa/II24Oj0ahMcrHNQ6UJ2yoK6guAorf8ahe47vZk9/+4D+xJL79 y+4m+/Z/upM64qYTKKBLS0+LX8qegbDv0LlfJ4ZN5rUE1zNqyM8zMROmfRnfBZLd 4icLD4GdOVzqvnK+sNt6HU/yzp7s1nFFZvks86IJxiPq1Lr4r0XqiyNQ/pJoIUcF aPave073rfxlfRIeuB+dSdjLVV64IY1d0gFJKiDnI1oUizcom/Bpzjn6QOaYGwju kK4L9rZBzNEosrXB/0bQXs9JJ3ydk2T/8c1SlYS23piuUJvDuj+cCn2xKKtmsFQt gQQdR6Zfy3oT3V+PMiV2rBnV+oQw52GA21sc5P/Xrs1VbafJeSvlwyfAwPI3H/L/ YI20x2/YAcL+mvgxIYKKGtDkyW3nhQZcH4eaLhf9qBnIlZCnb0X5ivB32dIok9Bn 7pQaAOHbUFLsx7/Z5QUTHfw1KRCe+XQVwFh4+3iAwd6f2FA22zUp2HloKSgYU8Vr 96njOkPFcEjo6/LrcLSaXeq6la2oBFtYbKHwg3D/713XIRarzp1QoZQQlGetrEMN UfgzriVats2VXxe6LAkT =bGen -----END PGP SIGNATURE----- --Apple-Mail=_F8E1F80B-230E-49C1-9DC4-2A9A640EE68A-- From owner-svn-src-head@freebsd.org Tue Sep 22 00:56:44 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8061EA06392; Tue, 22 Sep 2015 00:56:44 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6D51B1883; Tue, 22 Sep 2015 00:56:44 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M0uiL8039129; Tue, 22 Sep 2015 00:56:44 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M0ui9L039128; Tue, 22 Sep 2015 00:56:44 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509220056.t8M0ui9L039128@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 22 Sep 2015 00:56:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288081 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 00:56:44 -0000 Author: emaste Date: Tue Sep 22 00:56:43 2015 New Revision: 288081 URL: https://svnweb.freebsd.org/changeset/base/288081 Log: Add MIPS ELF section type SHT_MIPS_ABIFLAGS definition Sponsored by: The FreeBSD Foundation Modified: head/sys/sys/elf_common.h Modified: head/sys/sys/elf_common.h ============================================================================== --- head/sys/sys/elf_common.h Tue Sep 22 00:45:16 2015 (r288080) +++ head/sys/sys/elf_common.h Tue Sep 22 00:56:43 2015 (r288081) @@ -452,6 +452,7 @@ typedef struct { #define SHT_MIPS_EH_REGION 0x70000027 #define SHT_MIPS_XLATE_OLD 0x70000028 #define SHT_MIPS_PDR_EXCEPTION 0x70000029 +#define SHT_MIPS_ABIFLAGS 0x7000002a #define SHT_SPARC_GOTDATA 0x70000000 From owner-svn-src-head@freebsd.org Tue Sep 22 01:31:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 77F61A05695; Tue, 22 Sep 2015 01:31:02 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 692E21835; Tue, 22 Sep 2015 01:31:02 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M1V2U6051417; Tue, 22 Sep 2015 01:31:02 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M1V2oe051416; Tue, 22 Sep 2015 01:31:02 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201509220131.t8M1V2oe051416@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: "Conrad E. Meyer" Date: Tue, 22 Sep 2015 01:31:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288082 - head/usr.sbin/ngctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 01:31:02 -0000 Author: cem Date: Tue Sep 22 01:31:01 2015 New Revision: 288082 URL: https://svnweb.freebsd.org/changeset/base/288082 Log: ngctl dot: Drop invalid trailing semi-colon PR: 203257 Submitted by: Daniel O'Connor Sponsored by: EMC / Isilon Storage Division Modified: head/usr.sbin/ngctl/dot.c Modified: head/usr.sbin/ngctl/dot.c ============================================================================== --- head/usr.sbin/ngctl/dot.c Tue Sep 22 00:56:43 2015 (r288081) +++ head/usr.sbin/ngctl/dot.c Tue Sep 22 01:31:01 2015 (r288082) @@ -187,7 +187,7 @@ DotCmd(int ac, char **av) free(hlresp); } - fprintf(f, "};\n"); + fprintf(f, "}\n"); free(nlresp); if (f != stdout) From owner-svn-src-head@freebsd.org Tue Sep 22 01:45:44 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0419BA061A7; Tue, 22 Sep 2015 01:45:44 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E951F1FF3; Tue, 22 Sep 2015 01:45:43 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M1jhHf059253; Tue, 22 Sep 2015 01:45:43 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M1jhLh059252; Tue, 22 Sep 2015 01:45:43 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509220145.t8M1jhLh059252@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 22 Sep 2015 01:45:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288083 - head/usr.bin/elfdump X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 01:45:44 -0000 Author: emaste Date: Tue Sep 22 01:45:43 2015 New Revision: 288083 URL: https://svnweb.freebsd.org/changeset/base/288083 Log: elfdump: report MIPS-specific section type SHT_MIPS_ABIFLAGS Sponsored by: The FreeBSD Foundation Modified: head/usr.bin/elfdump/elfdump.c Modified: head/usr.bin/elfdump/elfdump.c ============================================================================== --- head/usr.bin/elfdump/elfdump.c Tue Sep 22 01:31:01 2015 (r288082) +++ head/usr.bin/elfdump/elfdump.c Tue Sep 22 01:45:43 2015 (r288083) @@ -380,6 +380,7 @@ sh_types(uint64_t machine, uint64_t sht) case EM_MIPS: switch (sht) { case SHT_MIPS_OPTIONS: return "SHT_MIPS_OPTIONS"; + case SHT_MIPS_ABIFLAGS: return "SHT_MIPS_ABIFLAGS"; } break; } From owner-svn-src-head@freebsd.org Tue Sep 22 02:24:14 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 57C28A0587B; Tue, 22 Sep 2015 02:24:14 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4710C10D3; Tue, 22 Sep 2015 02:24:14 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M2OEBv075464; Tue, 22 Sep 2015 02:24:14 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M2OEbw075463; Tue, 22 Sep 2015 02:24:14 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220224.t8M2OEbw075463@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 02:24:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288084 - head/sys/net80211 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 02:24:14 -0000 Author: adrian Date: Tue Sep 22 02:24:13 2015 New Revision: 288084 URL: https://svnweb.freebsd.org/changeset/base/288084 Log: Define a rateval macro that drivers tend to hard-code. Submitted by: Andriy Voskoboinyk Differential Revision: https://reviews.freebsd.org/D3705 Modified: head/sys/net80211/ieee80211.h Modified: head/sys/net80211/ieee80211.h ============================================================================== --- head/sys/net80211/ieee80211.h Tue Sep 22 01:45:43 2015 (r288083) +++ head/sys/net80211/ieee80211.h Tue Sep 22 02:24:13 2015 (r288084) @@ -815,6 +815,7 @@ struct ieee80211_csa_ie { /* rate set entries are in .5 Mb/s units, and potentially marked as basic */ #define IEEE80211_RATE_BASIC 0x80 #define IEEE80211_RATE_VAL 0x7f +#define IEEE80211_RV(v) ((v) & IEEE80211_RATE_VAL) /* ERP information element flags */ #define IEEE80211_ERP_NON_ERP_PRESENT 0x01 From owner-svn-src-head@freebsd.org Tue Sep 22 02:25:30 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8530EA059C1; Tue, 22 Sep 2015 02:25:30 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 698C2124E; Tue, 22 Sep 2015 02:25:30 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M2PUwI075565; Tue, 22 Sep 2015 02:25:30 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M2PTrR075563; Tue, 22 Sep 2015 02:25:29 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220225.t8M2PTrR075563@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 02:25:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288085 - head/sys/net80211 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 02:25:30 -0000 Author: adrian Date: Tue Sep 22 02:25:29 2015 New Revision: 288085 URL: https://svnweb.freebsd.org/changeset/base/288085 Log: Add external facing methods to control TX A-MPDU negotiaton. Some fullmac devices may rely on the stack starting it but not doing it. Whilst here, remove a duplicate LE_* macro definition, thanks to Andriy Voskoboinyk . Modified: head/sys/net80211/ieee80211_ht.c head/sys/net80211/ieee80211_ht.h Modified: head/sys/net80211/ieee80211_ht.c ============================================================================== --- head/sys/net80211/ieee80211_ht.c Tue Sep 22 02:24:13 2015 (r288084) +++ head/sys/net80211/ieee80211_ht.c Tue Sep 22 02:25:29 2015 (r288085) @@ -1415,12 +1415,6 @@ ieee80211_ht_timeout(struct ieee80211com } } -/* unalligned little endian access */ -#define LE_READ_2(p) \ - ((uint16_t) \ - ((((const uint8_t *)(p))[0] ) | \ - (((const uint8_t *)(p))[1] << 8))) - /* * Process an 802.11n HT capabilities ie. */ @@ -1833,6 +1827,55 @@ ieee80211_addba_request(struct ieee80211 } /* + * Called by drivers that wish to request an ADDBA session be + * setup. This brings it up and starts the request timer. + */ +int +ieee80211_ampdu_tx_request_ext(struct ieee80211_node *ni, int tid) +{ + struct ieee80211_tx_ampdu *tap; + + if (tid < 0 || tid > 15) + return (0); + tap = &ni->ni_tx_ampdu[tid]; + + /* XXX locking */ + if ((tap->txa_flags & IEEE80211_AGGR_SETUP) == 0) { + /* do deferred setup of state */ + ampdu_tx_setup(tap); + } + /* XXX hack for not doing proper locking */ + tap->txa_flags &= ~IEEE80211_AGGR_NAK; + addba_start_timeout(tap); + return (1); +} + +/* + * Called by drivers that have marked a session as active. + */ +int +ieee80211_ampdu_tx_request_active_ext(struct ieee80211_node *ni, int tid, + int status) +{ + struct ieee80211_tx_ampdu *tap; + + if (tid < 0 || tid > 15) + return (0); + tap = &ni->ni_tx_ampdu[tid]; + + /* XXX locking */ + addba_stop_timeout(tap); + if (status == 1) { + tap->txa_flags |= IEEE80211_AGGR_RUNNING; + tap->txa_attempts = 0; + } else { + /* mark tid so we don't try again */ + tap->txa_flags |= IEEE80211_AGGR_NAK; + } + return (1); +} + +/* * Default method for processing an A-MPDU tx aggregation * response. We shutdown any pending timer and update the * state block according to the reply. Modified: head/sys/net80211/ieee80211_ht.h ============================================================================== --- head/sys/net80211/ieee80211_ht.h Tue Sep 22 02:24:13 2015 (r288084) +++ head/sys/net80211/ieee80211_ht.h Tue Sep 22 02:25:29 2015 (r288085) @@ -202,5 +202,8 @@ void ieee80211_ht_update_beacon(struct i struct ieee80211_beacon_offsets *); int ieee80211_ampdu_rx_start_ext(struct ieee80211_node *ni, int tid, int seq, int baw); +int ieee80211_ampdu_tx_request_ext(struct ieee80211_node *ni, int tid); +int ieee80211_ampdu_tx_request_active_ext(struct ieee80211_node *ni, + int tid, int status); #endif /* _NET80211_IEEE80211_HT_H_ */ From owner-svn-src-head@freebsd.org Tue Sep 22 02:25:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E8ADDA05A42; Tue, 22 Sep 2015 02:25:53 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CCEEC139F; Tue, 22 Sep 2015 02:25:53 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M2PrPI075636; Tue, 22 Sep 2015 02:25:53 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M2PqmH075633; Tue, 22 Sep 2015 02:25:52 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220225.t8M2PqmH075633@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 02:25:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288086 - head/sys/net80211 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 02:25:54 -0000 Author: adrian Date: Tue Sep 22 02:25:52 2015 New Revision: 288086 URL: https://svnweb.freebsd.org/changeset/base/288086 Log: Remove duplicate use of RV(), LE_* and other macros. Submitted by: Andriy Voskoboinyk Differential Revision: https://reviews.freebsd.org/D3705 Modified: head/sys/net80211/ieee80211_mesh.c head/sys/net80211/ieee80211_proto.c head/sys/net80211/ieee80211_scan_sta.c Modified: head/sys/net80211/ieee80211_mesh.c ============================================================================== --- head/sys/net80211/ieee80211_mesh.c Tue Sep 22 02:25:29 2015 (r288085) +++ head/sys/net80211/ieee80211_mesh.c Tue Sep 22 02:25:52 2015 (r288086) @@ -434,13 +434,12 @@ mesh_rt_flush_invalid(struct ieee80211va MESH_RT_UNLOCK(ms); } -#define N(a) (sizeof(a) / sizeof(a[0])) int ieee80211_mesh_register_proto_path(const struct ieee80211_mesh_proto_path *mpp) { int i, firstempty = -1; - for (i = 0; i < N(mesh_proto_paths); i++) { + for (i = 0; i < nitems(mesh_proto_paths); i++) { if (strncmp(mpp->mpp_descr, mesh_proto_paths[i].mpp_descr, IEEE80211_MESH_PROTO_DSZ) == 0) return EEXIST; @@ -460,7 +459,7 @@ ieee80211_mesh_register_proto_metric(con { int i, firstempty = -1; - for (i = 0; i < N(mesh_proto_metrics); i++) { + for (i = 0; i < nitems(mesh_proto_metrics); i++) { if (strncmp(mpm->mpm_descr, mesh_proto_metrics[i].mpm_descr, IEEE80211_MESH_PROTO_DSZ) == 0) return EEXIST; @@ -480,7 +479,7 @@ mesh_select_proto_path(struct ieee80211v struct ieee80211_mesh_state *ms = vap->iv_mesh; int i; - for (i = 0; i < N(mesh_proto_paths); i++) { + for (i = 0; i < nitems(mesh_proto_paths); i++) { if (strcasecmp(mesh_proto_paths[i].mpp_descr, name) == 0) { ms->ms_ppath = &mesh_proto_paths[i]; return 0; @@ -495,7 +494,7 @@ mesh_select_proto_metric(struct ieee8021 struct ieee80211_mesh_state *ms = vap->iv_mesh; int i; - for (i = 0; i < N(mesh_proto_metrics); i++) { + for (i = 0; i < nitems(mesh_proto_metrics); i++) { if (strcasecmp(mesh_proto_metrics[i].mpm_descr, name) == 0) { ms->ms_pmetric = &mesh_proto_metrics[i]; return 0; @@ -503,7 +502,6 @@ mesh_select_proto_metric(struct ieee8021 } return ENOENT; } -#undef N static void mesh_gatemode_setup(struct ieee80211vap *vap) Modified: head/sys/net80211/ieee80211_proto.c ============================================================================== --- head/sys/net80211/ieee80211_proto.c Tue Sep 22 02:25:29 2015 (r288085) +++ head/sys/net80211/ieee80211_proto.c Tue Sep 22 02:25:52 2015 (r288086) @@ -491,7 +491,6 @@ int ieee80211_fix_rate(struct ieee80211_node *ni, struct ieee80211_rateset *nrs, int flags) { -#define RV(v) ((v) & IEEE80211_RATE_VAL) struct ieee80211vap *vap = ni->ni_vap; struct ieee80211com *ic = ni->ni_ic; int i, j, rix, error; @@ -545,7 +544,8 @@ ieee80211_fix_rate(struct ieee80211_node * Sort rates. */ for (j = i + 1; j < nrs->rs_nrates; j++) { - if (RV(nrs->rs_rates[i]) > RV(nrs->rs_rates[j])) { + if (IEEE80211_RV(nrs->rs_rates[i]) > + IEEE80211_RV(nrs->rs_rates[j])) { r = nrs->rs_rates[i]; nrs->rs_rates[i] = nrs->rs_rates[j]; nrs->rs_rates[j] = r; @@ -604,8 +604,7 @@ ieee80211_fix_rate(struct ieee80211_node "ucastrate %x\n", __func__, fixedrate, ucastrate, flags); return badrate | IEEE80211_RATE_BASIC; } else - return RV(okrate); -#undef RV + return IEEE80211_RV(okrate); } /* Modified: head/sys/net80211/ieee80211_scan_sta.c ============================================================================== --- head/sys/net80211/ieee80211_scan_sta.c Tue Sep 22 02:25:29 2015 (r288085) +++ head/sys/net80211/ieee80211_scan_sta.c Tue Sep 22 02:25:52 2015 (r288086) @@ -737,12 +737,6 @@ sta_cancel(struct ieee80211_scan_state * return 0; } -/* unaligned little endian access */ -#define LE_READ_2(p) \ - ((uint16_t) \ - ((((const uint8_t *)(p))[0] ) | \ - (((const uint8_t *)(p))[1] << 8))) - /* * Demote any supplied 11g channel to 11b. There should * always be an 11b channel but we check anyway... @@ -876,7 +870,6 @@ static int check_rate(struct ieee80211vap *vap, const struct ieee80211_channel *chan, const struct ieee80211_scan_entry *se) { -#define RV(v) ((v) & IEEE80211_RATE_VAL) const struct ieee80211_rateset *srs; int i, j, nrs, r, okrate, badrate, fixedrate, ucastrate; const uint8_t *rs; @@ -891,7 +884,7 @@ check_rate(struct ieee80211vap *vap, con fixedrate = IEEE80211_FIXED_RATE_NONE; again: for (i = 0; i < nrs; i++) { - r = RV(rs[i]); + r = IEEE80211_RV(rs[i]); badrate = r; /* * Check any fixed rate is included. @@ -902,7 +895,7 @@ again: * Check against our supported rates. */ for (j = 0; j < srs->rs_nrates; j++) - if (r == RV(srs->rs_rates[j])) { + if (r == IEEE80211_RV(srs->rs_rates[j])) { if (r > okrate) /* NB: track max */ okrate = r; break; @@ -928,8 +921,7 @@ back: if (okrate == 0 || ucastrate != fixedrate) return badrate | IEEE80211_RATE_BASIC; else - return RV(okrate); -#undef RV + return IEEE80211_RV(okrate); } static __inline int From owner-svn-src-head@freebsd.org Tue Sep 22 02:45:04 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08A38A06480; Tue, 22 Sep 2015 02:45:04 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EC3F01C17; Tue, 22 Sep 2015 02:45:03 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M2j3JP083830; Tue, 22 Sep 2015 02:45:03 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M2ix6a083800; Tue, 22 Sep 2015 02:44:59 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220244.t8M2ix6a083800@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 02:44:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288087 - in head/sys/dev: ath bwi ipw iwi iwn malo mwl ral X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 02:45:04 -0000 Author: adrian Date: Tue Sep 22 02:44:59 2015 New Revision: 288087 URL: https://svnweb.freebsd.org/changeset/base/288087 Log: net80211 & wireless drivers: remove duplicate defines (noop) * IEEE80211_DIR_DSTODS(wh) -> IEEE80211_IS_DSTODS(wh). * N(a) -> nitems(a). * Remove LE_READ_2(p)/LE_READ_4(p) definitions (and include ieee80211_input.h instead). * _TXOP_TO_US(txop) -> IEEE80211_TXOP_TO_US(txop). * Put IEEE80211_RV(v) into ieee80211_proto.h and remove local RV(v) definitions. Submitted by: Andriy Voskoboinyk Differential Revision: https://reviews.freebsd.org/D3705 Modified: head/sys/dev/ath/if_ath.c head/sys/dev/ath/if_ath_keycache.c head/sys/dev/bwi/bwimac.c head/sys/dev/bwi/bwiphy.c head/sys/dev/bwi/bwirf.c head/sys/dev/bwi/if_bwi.c head/sys/dev/ipw/if_ipw.c head/sys/dev/iwi/if_iwi.c head/sys/dev/iwn/if_iwn.c head/sys/dev/malo/if_malo.c head/sys/dev/malo/if_malo_pci.c head/sys/dev/mwl/if_mwl.c head/sys/dev/ral/rt2560.c head/sys/dev/ral/rt2661.c head/sys/dev/ral/rt2860.c Modified: head/sys/dev/ath/if_ath.c ============================================================================== --- head/sys/dev/ath/if_ath.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/ath/if_ath.c Tue Sep 22 02:44:59 2015 (r288087) @@ -4127,7 +4127,6 @@ ath_txq_init(struct ath_softc *sc, struc static struct ath_txq * ath_txq_setup(struct ath_softc *sc, int qtype, int subtype) { -#define N(a) (sizeof(a)/sizeof(a[0])) struct ath_hal *ah = sc->sc_ah; HAL_TXQ_INFO qi; int qnum; @@ -4164,10 +4163,10 @@ ath_txq_setup(struct ath_softc *sc, int */ return NULL; } - if (qnum >= N(sc->sc_txq)) { + if (qnum >= nitems(sc->sc_txq)) { device_printf(sc->sc_dev, "hal qnum %u out of range, max %zu!\n", - qnum, N(sc->sc_txq)); + qnum, nitems(sc->sc_txq)); ath_hal_releasetxqueue(ah, qnum); return NULL; } @@ -4176,7 +4175,6 @@ ath_txq_setup(struct ath_softc *sc, int sc->sc_txqsetup |= 1<sc_txq[qnum]; -#undef N } /* @@ -4191,12 +4189,11 @@ ath_txq_setup(struct ath_softc *sc, int static int ath_tx_setup(struct ath_softc *sc, int ac, int haltype) { -#define N(a) (sizeof(a)/sizeof(a[0])) struct ath_txq *txq; - if (ac >= N(sc->sc_ac2q)) { + if (ac >= nitems(sc->sc_ac2q)) { device_printf(sc->sc_dev, "AC %u out of range, max %zu!\n", - ac, N(sc->sc_ac2q)); + ac, nitems(sc->sc_ac2q)); return 0; } txq = ath_txq_setup(sc, HAL_TX_QUEUE_DATA, haltype); @@ -4206,7 +4203,6 @@ ath_tx_setup(struct ath_softc *sc, int a return 1; } else return 0; -#undef N } /* @@ -4216,7 +4212,6 @@ static int ath_txq_update(struct ath_softc *sc, int ac) { #define ATH_EXPONENT_TO_VALUE(v) ((1<sc_ic; struct ath_txq *txq = sc->sc_ac2q[ac]; struct wmeParams *wmep = &ic->ic_wme.wme_chanParams.cap_wmeParams[ac]; @@ -4262,7 +4257,7 @@ ath_txq_update(struct ath_softc *sc, int qi.tqi_cwmin = ATH_EXPONENT_TO_VALUE(wmep->wmep_logcwmin); qi.tqi_cwmax = ATH_EXPONENT_TO_VALUE(wmep->wmep_logcwmax); qi.tqi_readyTime = 0; - qi.tqi_burstTime = ATH_TXOP_TO_US(wmep->wmep_txopLimit); + qi.tqi_burstTime = IEEE80211_TXOP_TO_US(wmep->wmep_txopLimit); #ifdef IEEE80211_SUPPORT_TDMA } #endif @@ -4280,7 +4275,6 @@ ath_txq_update(struct ath_softc *sc, int ath_hal_resettxqueue(ah, txq->axq_qnum); /* push to h/w */ return 1; } -#undef ATH_TXOP_TO_US #undef ATH_EXPONENT_TO_VALUE } @@ -6302,7 +6296,6 @@ ath_rate_setup(struct ath_softc *sc, u_i static void ath_setcurmode(struct ath_softc *sc, enum ieee80211_phymode mode) { -#define N(a) (sizeof(a)/sizeof(a[0])) /* NB: on/off times from the Atheros NDIS driver, w/ permission */ static const struct { u_int rate; /* tx/rx 802.11 rate */ @@ -6339,7 +6332,7 @@ ath_setcurmode(struct ath_softc *sc, enu sc->sc_rixmap[ieeerate | IEEE80211_RATE_MCS] = i; } memset(sc->sc_hwmap, 0, sizeof(sc->sc_hwmap)); - for (i = 0; i < N(sc->sc_hwmap); i++) { + for (i = 0; i < nitems(sc->sc_hwmap); i++) { if (i >= rt->rateCount) { sc->sc_hwmap[i].ledon = (500 * hz) / 1000; sc->sc_hwmap[i].ledoff = (130 * hz) / 1000; @@ -6354,7 +6347,7 @@ ath_setcurmode(struct ath_softc *sc, enu rt->info[i].phy == IEEE80211_T_OFDM) sc->sc_hwmap[i].txflags |= IEEE80211_RADIOTAP_F_SHORTPRE; sc->sc_hwmap[i].rxflags = sc->sc_hwmap[i].txflags; - for (j = 0; j < N(blinkrates)-1; j++) + for (j = 0; j < nitems(blinkrates)-1; j++) if (blinkrates[j].rate == sc->sc_hwmap[i].ieeerate) break; /* NB: this uses the last entry if the rate isn't found */ @@ -6373,7 +6366,6 @@ ath_setcurmode(struct ath_softc *sc, enu else sc->sc_protrix = ath_tx_findrix(sc, 2*1); /* NB: caller is responsible for resetting rate control state */ -#undef N } static void Modified: head/sys/dev/ath/if_ath_keycache.c ============================================================================== --- head/sys/dev/ath/if_ath_keycache.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/ath/if_ath_keycache.c Tue Sep 22 02:44:59 2015 (r288087) @@ -184,7 +184,6 @@ ath_keyset(struct ath_softc *sc, struct const struct ieee80211_key *k, struct ieee80211_node *bss) { -#define N(a) (sizeof(a)/sizeof(a[0])) static const u_int8_t ciphermap[] = { HAL_CIPHER_WEP, /* IEEE80211_CIPHER_WEP */ HAL_CIPHER_TKIP, /* IEEE80211_CIPHER_TKIP */ @@ -208,7 +207,7 @@ ath_keyset(struct ath_softc *sc, struct * so that rx frames have an entry to match. */ if ((k->wk_flags & IEEE80211_KEY_SWCRYPT) == 0) { - KASSERT(cip->ic_cipher < N(ciphermap), + KASSERT(cip->ic_cipher < nitems(ciphermap), ("invalid cipher type %u", cip->ic_cipher)); hk.kv_type = ciphermap[cip->ic_cipher]; hk.kv_len = k->wk_keylen; @@ -266,7 +265,6 @@ ath_keyset(struct ath_softc *sc, struct ATH_UNLOCK(sc); return (ret); -#undef N } /* @@ -277,12 +275,11 @@ static u_int16_t key_alloc_2pair(struct ath_softc *sc, ieee80211_keyix *txkeyix, ieee80211_keyix *rxkeyix) { -#define N(a) (sizeof(a)/sizeof(a[0])) u_int i, keyix; KASSERT(sc->sc_splitmic, ("key cache !split")); /* XXX could optimize */ - for (i = 0; i < N(sc->sc_keymap)/4; i++) { + for (i = 0; i < nitems(sc->sc_keymap)/4; i++) { u_int8_t b = sc->sc_keymap[i]; if (b != 0xff) { /* @@ -321,7 +318,6 @@ key_alloc_2pair(struct ath_softc *sc, } DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s: out of pair space\n", __func__); return 0; -#undef N } /* @@ -332,12 +328,11 @@ static u_int16_t key_alloc_pair(struct ath_softc *sc, ieee80211_keyix *txkeyix, ieee80211_keyix *rxkeyix) { -#define N(a) (sizeof(a)/sizeof(a[0])) u_int i, keyix; KASSERT(!sc->sc_splitmic, ("key cache split")); /* XXX could optimize */ - for (i = 0; i < N(sc->sc_keymap)/4; i++) { + for (i = 0; i < nitems(sc->sc_keymap)/4; i++) { u_int8_t b = sc->sc_keymap[i]; if (b != 0xff) { /* @@ -369,7 +364,6 @@ key_alloc_pair(struct ath_softc *sc, } DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s: out of pair space\n", __func__); return 0; -#undef N } /* @@ -379,7 +373,6 @@ static int key_alloc_single(struct ath_softc *sc, ieee80211_keyix *txkeyix, ieee80211_keyix *rxkeyix) { -#define N(a) (sizeof(a)/sizeof(a[0])) u_int i, keyix; if (sc->sc_hasclrkey == 0) { @@ -391,7 +384,7 @@ key_alloc_single(struct ath_softc *sc, } /* XXX try i,i+32,i+64,i+32+64 to minimize key pair conflicts */ - for (i = 0; i < N(sc->sc_keymap); i++) { + for (i = 0; i < nitems(sc->sc_keymap); i++) { u_int8_t b = sc->sc_keymap[i]; if (b != 0xff) { /* @@ -409,7 +402,6 @@ key_alloc_single(struct ath_softc *sc, } DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s: out of space\n", __func__); return 0; -#undef N } /* Modified: head/sys/dev/bwi/bwimac.c ============================================================================== --- head/sys/dev/bwi/bwimac.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/bwi/bwimac.c Tue Sep 22 02:44:59 2015 (r288087) @@ -1657,17 +1657,15 @@ bwi_mac_attach(struct bwi_softc *sc, int /* * Test whether the revision of this MAC is supported */ -#define N(arr) (int)(sizeof(arr) / sizeof(arr[0])) - for (i = 0; i < N(bwi_sup_macrev); ++i) { + for (i = 0; i < nitems(bwi_sup_macrev); ++i) { if (bwi_sup_macrev[i] == rev) break; } - if (i == N(bwi_sup_macrev)) { + if (i == nitems(bwi_sup_macrev)) { device_printf(sc->sc_dev, "MAC rev %u is " "not supported\n", rev); return ENXIO; } -#undef N BWI_CREATE_MAC(mac, sc, id, rev); sc->sc_nmac++; Modified: head/sys/dev/bwi/bwiphy.c ============================================================================== --- head/sys/dev/bwi/bwiphy.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/bwi/bwiphy.c Tue Sep 22 02:44:59 2015 (r288087) @@ -185,19 +185,17 @@ bwi_phy_attach(struct bwi_mac *mac) phy->phy_tbl_data_hi = BWI_PHYR_TBL_DATA_HI_11A; break; case BWI_PHYINFO_TYPE_11B: -#define N(arr) (int)(sizeof(arr) / sizeof(arr[0])) - for (i = 0; i < N(bwi_sup_bphy); ++i) { + for (i = 0; i < nitems(bwi_sup_bphy); ++i) { if (phyrev == bwi_sup_bphy[i].rev) { phy->phy_init = bwi_sup_bphy[i].init; break; } } - if (i == N(bwi_sup_bphy)) { + if (i == nitems(bwi_sup_bphy)) { device_printf(sc->sc_dev, "unsupported 11B PHY, " "rev %u\n", phyrev); return ENXIO; } -#undef N phy->phy_mode = IEEE80211_MODE_11B; break; case BWI_PHYINFO_TYPE_11G: @@ -745,8 +743,6 @@ bwi_phy_init_11b_rev6(struct bwi_mac *ma } } -#define N(arr) (int)(sizeof(arr) / sizeof(arr[0])) - static void bwi_phy_config_11g(struct bwi_mac *mac) { @@ -763,19 +759,19 @@ bwi_phy_config_11g(struct bwi_mac *mac) PHY_WRITE(mac, 0x427, 0x1a); /* Fill frequency table */ - for (i = 0; i < N(bwi_phy_freq_11g_rev1); ++i) { + for (i = 0; i < nitems(bwi_phy_freq_11g_rev1); ++i) { bwi_tbl_write_2(mac, BWI_PHYTBL_FREQ + i, bwi_phy_freq_11g_rev1[i]); } /* Fill noise table */ - for (i = 0; i < N(bwi_phy_noise_11g_rev1); ++i) { + for (i = 0; i < nitems(bwi_phy_noise_11g_rev1); ++i) { bwi_tbl_write_2(mac, BWI_PHYTBL_NOISE + i, bwi_phy_noise_11g_rev1[i]); } /* Fill rotor table */ - for (i = 0; i < N(bwi_phy_rotor_11g_rev1); ++i) { + for (i = 0; i < nitems(bwi_phy_rotor_11g_rev1); ++i) { /* NB: data length is 4 bytes */ bwi_tbl_write_4(mac, BWI_PHYTBL_ROTOR + i, bwi_phy_rotor_11g_rev1[i]); @@ -798,7 +794,7 @@ bwi_phy_config_11g(struct bwi_mac *mac) bwi_tbl_write_2(mac, BWI_PHYTBL_RSSI + i, i); /* Fill noise table */ - for (i = 0; i < N(bwi_phy_noise_11g); ++i) { + for (i = 0; i < nitems(bwi_phy_noise_11g); ++i) { bwi_tbl_write_2(mac, BWI_PHYTBL_NOISE + i, bwi_phy_noise_11g[i]); } @@ -809,13 +805,13 @@ bwi_phy_config_11g(struct bwi_mac *mac) */ if (phy->phy_rev <= 2) { tbl = bwi_phy_noise_scale_11g_rev2; - n = N(bwi_phy_noise_scale_11g_rev2); + n = nitems(bwi_phy_noise_scale_11g_rev2); } else if (phy->phy_rev >= 7 && (PHY_READ(mac, 0x449) & 0x200)) { tbl = bwi_phy_noise_scale_11g_rev7; - n = N(bwi_phy_noise_scale_11g_rev7); + n = nitems(bwi_phy_noise_scale_11g_rev7); } else { tbl = bwi_phy_noise_scale_11g; - n = N(bwi_phy_noise_scale_11g); + n = nitems(bwi_phy_noise_scale_11g); } for (i = 0; i < n; ++i) bwi_tbl_write_2(mac, BWI_PHYTBL_NOISE_SCALE + i, tbl[i]); @@ -825,10 +821,10 @@ bwi_phy_config_11g(struct bwi_mac *mac) */ if (phy->phy_rev == 2) { tbl = bwi_phy_sigma_sq_11g_rev2; - n = N(bwi_phy_sigma_sq_11g_rev2); + n = nitems(bwi_phy_sigma_sq_11g_rev2); } else if (phy->phy_rev > 2 && phy->phy_rev <= 8) { tbl = bwi_phy_sigma_sq_11g_rev7; - n = N(bwi_phy_sigma_sq_11g_rev7); + n = nitems(bwi_phy_sigma_sq_11g_rev7); } else { tbl = NULL; n = 0; @@ -838,7 +834,7 @@ bwi_phy_config_11g(struct bwi_mac *mac) if (phy->phy_rev == 1) { /* Fill delay table */ - for (i = 0; i < N(bwi_phy_delay_11g_rev1); ++i) { + for (i = 0; i < nitems(bwi_phy_delay_11g_rev1); ++i) { bwi_tbl_write_4(mac, BWI_PHYTBL_DELAY + i, bwi_phy_delay_11g_rev1[i]); } @@ -877,8 +873,6 @@ bwi_phy_config_11g(struct bwi_mac *mac) PHY_WRITE(mac, 0x46e, 0x3cf); } -#undef N - /* * Configure Automatic Gain Controller */ Modified: head/sys/dev/bwi/bwirf.c ============================================================================== --- head/sys/dev/bwi/bwirf.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/bwi/bwirf.c Tue Sep 22 02:44:59 2015 (r288087) @@ -1155,7 +1155,6 @@ bwi_rf_map_txpower(struct bwi_mac *mac) } #define IS_VALID_PA_PARAM(p) ((p) != 0 && (p) != -1) -#define N(arr) (int)(sizeof(arr) / sizeof(arr[0])) /* * Extract PA parameters @@ -1164,10 +1163,10 @@ bwi_rf_map_txpower(struct bwi_mac *mac) sprom_ofs = BWI_SPROM_PA_PARAM_11A; else sprom_ofs = BWI_SPROM_PA_PARAM_11BG; - for (i = 0; i < N(pa_params); ++i) + for (i = 0; i < nitems(pa_params); ++i) pa_params[i] = (int16_t)bwi_read_sprom(sc, sprom_ofs + (i * 2)); - for (i = 0; i < N(pa_params); ++i) { + for (i = 0; i < nitems(pa_params); ++i) { /* * If one of the PA parameters from SPROM is not valid, * fall back to the default values, if there are any. @@ -1200,8 +1199,6 @@ bwi_rf_map_txpower(struct bwi_mac *mac) } } -#undef N - /* * All of the PA parameters from SPROM are valid. */ Modified: head/sys/dev/bwi/if_bwi.c ============================================================================== --- head/sys/dev/bwi/if_bwi.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/bwi/if_bwi.c Tue Sep 22 02:44:59 2015 (r288087) @@ -762,7 +762,6 @@ bwi_regwin_info(struct bwi_softc *sc, ui static int bwi_bbp_attach(struct bwi_softc *sc) { -#define N(arr) (int)(sizeof(arr) / sizeof(arr[0])) uint16_t bbp_id, rw_type; uint8_t rw_rev; uint32_t info; @@ -792,7 +791,7 @@ bwi_bbp_attach(struct bwi_softc *sc) sc->sc_cap = CSR_READ_4(sc, BWI_CAPABILITY); } else { - for (i = 0; i < N(bwi_bbpid_map); ++i) { + for (i = 0; i < nitems(bwi_bbpid_map); ++i) { if (sc->sc_pci_did >= bwi_bbpid_map[i].did_min && sc->sc_pci_did <= bwi_bbpid_map[i].did_max) { bbp_id = bwi_bbpid_map[i].bbp_id; @@ -816,7 +815,7 @@ bwi_bbp_attach(struct bwi_softc *sc) if (rw_type == BWI_REGWIN_T_COM && rw_rev >= 4) { nregwin = __SHIFTOUT(info, BWI_INFO_NREGWIN_MASK); } else { - for (i = 0; i < N(bwi_regwin_count); ++i) { + for (i = 0; i < nitems(bwi_regwin_count); ++i) { if (bwi_regwin_count[i].bbp_id == bbp_id) { nregwin = bwi_regwin_count[i].nregwin; break; @@ -898,7 +897,6 @@ bwi_bbp_attach(struct bwi_softc *sc) return error; return 0; -#undef N } int @@ -3765,9 +3763,7 @@ bwi_led_attach(struct bwi_softc *sc) uint16_t gpio, val[BWI_LED_MAX]; int i; -#define N(arr) (int)(sizeof(arr) / sizeof(arr[0])) - - for (i = 0; i < N(bwi_vendor_led_act); ++i) { + for (i = 0; i < nitems(bwi_vendor_led_act); ++i) { if (sc->sc_pci_subvid == bwi_vendor_led_act[i].vid) { led_act = bwi_vendor_led_act[i].led_act; break; @@ -3776,8 +3772,6 @@ bwi_led_attach(struct bwi_softc *sc) if (led_act == NULL) led_act = bwi_default_led_act; -#undef N - gpio = bwi_read_sprom(sc, BWI_SPROM_GPIO01); val[0] = __SHIFTOUT(gpio, BWI_SPROM_GPIO_0); val[1] = __SHIFTOUT(gpio, BWI_SPROM_GPIO_1); Modified: head/sys/dev/ipw/if_ipw.c ============================================================================== --- head/sys/dev/ipw/if_ipw.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/ipw/if_ipw.c Tue Sep 22 02:44:59 2015 (r288087) @@ -1417,7 +1417,6 @@ ipw_dma_map_addr(void *arg, bus_dma_segm static const char * ipw_cmdname(int cmd) { -#define N(a) (sizeof(a) / sizeof(a[0])) static const struct { int cmd; const char *name; @@ -1454,12 +1453,11 @@ ipw_cmdname(int cmd) static char buf[12]; int i; - for (i = 0; i < N(cmds); i++) + for (i = 0; i < nitems(cmds); i++) if (cmds[i].cmd == cmd) return cmds[i].name; snprintf(buf, sizeof(buf), "%u", cmd); return buf; -#undef N } /* Modified: head/sys/dev/iwi/if_iwi.c ============================================================================== --- head/sys/dev/iwi/if_iwi.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/iwi/if_iwi.c Tue Sep 22 02:44:59 2015 (r288087) @@ -3415,7 +3415,6 @@ iwi_led_blink(struct iwi_softc *sc, int static void iwi_led_event(struct iwi_softc *sc, int event) { -#define N(a) (sizeof(a)/sizeof(a[0])) /* NB: on/off times from the Atheros NDIS driver, w/ permission */ static const struct { u_int rate; /* tx/rx iwi rate */ @@ -3445,13 +3444,13 @@ iwi_led_event(struct iwi_softc *sc, int return; switch (event) { case IWI_LED_POLL: - j = N(blinkrates)-1; + j = nitems(blinkrates)-1; break; case IWI_LED_TX: /* read current transmission rate from adapter */ txrate = CSR_READ_4(sc, IWI_CSR_CURRENT_TX_RATE); if (blinkrates[sc->sc_txrix].rate != txrate) { - for (j = 0; j < N(blinkrates)-1; j++) + for (j = 0; j < nitems(blinkrates)-1; j++) if (blinkrates[j].rate == txrate) break; sc->sc_txrix = j; @@ -3460,7 +3459,7 @@ iwi_led_event(struct iwi_softc *sc, int break; case IWI_LED_RX: if (blinkrates[sc->sc_rxrix].rate != sc->sc_rxrate) { - for (j = 0; j < N(blinkrates)-1; j++) + for (j = 0; j < nitems(blinkrates)-1; j++) if (blinkrates[j].rate == sc->sc_rxrate) break; sc->sc_rxrix = j; @@ -3471,7 +3470,6 @@ iwi_led_event(struct iwi_softc *sc, int /* XXX beware of overflow */ iwi_led_blink(sc, (blinkrates[j].timeOn * hz) / 1000, (blinkrates[j].timeOff * hz) / 1000); -#undef N } static int Modified: head/sys/dev/iwn/if_iwn.c ============================================================================== --- head/sys/dev/iwn/if_iwn.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/iwn/if_iwn.c Tue Sep 22 02:44:59 2015 (r288087) @@ -2716,7 +2716,6 @@ static uint32_t iwn_rate_to_plcp(struct iwn_softc *sc, struct ieee80211_node *ni, uint8_t rate) { -#define RV(v) ((v) & IEEE80211_RATE_VAL) struct ieee80211com *ic = ni->ni_ic; uint32_t plcp = 0; int ridx; @@ -2731,7 +2730,7 @@ iwn_rate_to_plcp(struct iwn_softc *sc, s * MCS 0 -> MCS 31, then set the "I'm an MCS rate!" * flag. */ - plcp = RV(rate) | IWN_RFLAG_MCS; + plcp = IEEE80211_RV(rate) | IWN_RFLAG_MCS; /* * XXX the following should only occur if both @@ -2792,7 +2791,6 @@ iwn_rate_to_plcp(struct iwn_softc *sc, s plcp); return (htole32(plcp)); -#undef RV } static void @@ -5179,7 +5177,6 @@ iwn5000_add_node(struct iwn_softc *sc, s static int iwn_set_link_quality(struct iwn_softc *sc, struct ieee80211_node *ni) { -#define RV(v) ((v) & IEEE80211_RATE_VAL) struct iwn_node *wn = (void *)ni; struct ieee80211_rateset *rs; struct iwn_cmd_link_quality linkq; @@ -5238,7 +5235,7 @@ iwn_set_link_quality(struct iwn_softc *s if (is_11n) rate = IEEE80211_RATE_MCS | rs->rs_rates[txrate]; else - rate = RV(rs->rs_rates[txrate]); + rate = IEEE80211_RV(rs->rs_rates[txrate]); /* Do rate -> PLCP config mapping */ plcp = iwn_rate_to_plcp(sc, ni, rate); @@ -5263,7 +5260,7 @@ iwn_set_link_quality(struct iwn_softc *s * entry, we're already pointing at it. */ if ((le32toh(plcp) & IWN_RFLAG_MCS) && - RV(le32toh(plcp)) > 7) + IEEE80211_RV(le32toh(plcp)) > 7) linkq.mimo = i + 1; /* Next retry at immediate lower bit-rate. */ @@ -5283,7 +5280,6 @@ iwn_set_link_quality(struct iwn_softc *s DPRINTF(sc, IWN_DEBUG_TRACE, "->%s: end\n",__func__); return iwn_cmd(sc, IWN_CMD_LINK_QUALITY, &linkq, sizeof linkq, 1); -#undef RV } /* Modified: head/sys/dev/malo/if_malo.c ============================================================================== --- head/sys/dev/malo/if_malo.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/malo/if_malo.c Tue Sep 22 02:44:59 2015 (r288087) @@ -901,22 +901,18 @@ malo_printtxbuf(const struct malo_txbuf static __inline void malo_updatetxrate(struct ieee80211_node *ni, int rix) { -#define N(x) (sizeof(x)/sizeof(x[0])) static const int ieeerates[] = { 2, 4, 11, 22, 44, 12, 18, 24, 36, 48, 96, 108 }; - if (rix < N(ieeerates)) + if (rix < nitems(ieeerates)) ni->ni_txrate = ieeerates[rix]; -#undef N } static int malo_fix2rate(int fix_rate) { -#define N(x) (sizeof(x)/sizeof(x[0])) static const int rates[] = { 2, 4, 11, 22, 12, 18, 24, 36, 48, 96, 108 }; - return (fix_rate < N(rates) ? rates[fix_rate] : 0); -#undef N + return (fix_rate < nitems(rates) ? rates[fix_rate] : 0); } /* idiomatic shorthands: MS = mask+shift, SM = shift+mask */ @@ -1034,8 +1030,6 @@ static int malo_tx_start(struct malo_softc *sc, struct ieee80211_node *ni, struct malo_txbuf *bf, struct mbuf *m0) { -#define IEEE80211_DIR_DSTODS(wh) \ - ((wh->i_fc[1] & IEEE80211_FC1_DIR_MASK) == IEEE80211_FC1_DIR_DSTODS) #define IS_DATA_FRAME(wh) \ ((wh->i_fc[0] & (IEEE80211_FC0_TYPE_MASK)) == IEEE80211_FC0_TYPE_DATA) int error, ismcast, iswep; @@ -1054,7 +1048,7 @@ malo_tx_start(struct malo_softc *sc, str copyhdrlen = hdrlen = ieee80211_anyhdrsize(wh); pktlen = m0->m_pkthdr.len; if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_DIR_DSTODS(wh)) { + if (IEEE80211_IS_DSTODS(wh)) { qos = *(uint16_t *) (((struct ieee80211_qosframe_addr4 *) wh)->i_qos); copyhdrlen -= sizeof(qos); @@ -1210,7 +1204,6 @@ malo_tx_start(struct malo_softc *sc, str sc->malo_timer = 5; MALO_TXQ_UNLOCK(txq); return 0; -#undef IEEE80211_DIR_DSTODS } static int @@ -1960,9 +1953,6 @@ malo_set_channel(struct ieee80211com *ic static void malo_rx_proc(void *arg, int npending) { -#define IEEE80211_DIR_DSTODS(wh) \ - ((((const struct ieee80211_frame *)wh)->i_fc[1] & \ - IEEE80211_FC1_DIR_MASK) == IEEE80211_FC1_DIR_DSTODS) struct malo_softc *sc = arg; struct ieee80211com *ic = &sc->malo_ic; struct malo_rxbuf *bf; @@ -2080,7 +2070,7 @@ malo_rx_proc(void *arg, int npending) /* XXX special case so we can memcpy after m_devget? */ ovbcopy(data + sizeof(uint16_t), wh, hdrlen); if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_DIR_DSTODS(wh)) { + if (IEEE80211_IS_DSTODS(wh)) { wh4 = mtod(m, struct ieee80211_qosframe_addr4*); *(uint16_t *)wh4->i_qos = ds->qosctrl; @@ -2119,7 +2109,6 @@ rx_next: if (mbufq_first(&sc->malo_snd) != NULL) malo_start(sc); -#undef IEEE80211_DIR_DSTODS } /* Modified: head/sys/dev/malo/if_malo_pci.c ============================================================================== --- head/sys/dev/malo/if_malo_pci.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/malo/if_malo_pci.c Tue Sep 22 02:44:59 2015 (r288087) @@ -131,7 +131,6 @@ static int malo_pci_detach(device_t); static int malo_pci_probe(device_t dev) { -#define N(a) (sizeof(a) / sizeof((a)[0])) struct malo_product *mp; uint16_t vendor, devid; int i; @@ -140,7 +139,7 @@ malo_pci_probe(device_t dev) devid = pci_get_device(dev); mp = malo_products; - for (i = 0; i < N(malo_products); i++, mp++) { + for (i = 0; i < nitems(malo_products); i++, mp++) { if (vendor == mp->mp_vendorid && devid == mp->mp_deviceid) { device_set_desc(dev, mp->mp_name); return (BUS_PROBE_DEFAULT); @@ -148,7 +147,6 @@ malo_pci_probe(device_t dev) } return (ENXIO); -#undef N } static int Modified: head/sys/dev/mwl/if_mwl.c ============================================================================== --- head/sys/dev/mwl/if_mwl.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/mwl/if_mwl.c Tue Sep 22 02:44:59 2015 (r288087) @@ -70,6 +70,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #ifdef INET @@ -1707,18 +1708,6 @@ mwl_key_set(struct ieee80211vap *vap, co #undef GRPXMIT } -/* unaligned little endian access */ -#define LE_READ_2(p) \ - ((uint16_t) \ - ((((const uint8_t *)(p))[0] ) | \ - (((const uint8_t *)(p))[1] << 8))) -#define LE_READ_4(p) \ - ((uint32_t) \ - ((((const uint8_t *)(p))[0] ) | \ - (((const uint8_t *)(p))[1] << 8) | \ - (((const uint8_t *)(p))[2] << 16) | \ - (((const uint8_t *)(p))[3] << 24))) - /* * Set the multicast filter contents into the hardware. * XXX f/w has no support; just defer to the os. @@ -2619,8 +2608,6 @@ cvtrssi(uint8_t ssi) static void mwl_rx_proc(void *arg, int npending) { -#define IEEE80211_DIR_DSTODS(wh) \ - ((((const struct ieee80211_frame *)wh)->i_fc[1] & IEEE80211_FC1_DIR_MASK) == IEEE80211_FC1_DIR_DSTODS) struct mwl_softc *sc = arg; struct ieee80211com *ic = &sc->sc_ic; struct mwl_rxbuf *bf; @@ -2775,7 +2762,7 @@ mwl_rx_proc(void *arg, int npending) /* XXX special case so we can memcpy after m_devget? */ ovbcopy(data + sizeof(uint16_t), wh, hdrlen); if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_DIR_DSTODS(wh)) { + if (IEEE80211_IS_DSTODS(wh)) { wh4 = mtod(m, struct ieee80211_qosframe_addr4*); *(uint16_t *)wh4->i_qos = ds->QosCtrl; @@ -2845,7 +2832,6 @@ rx_stop: mwl_hal_txstart(sc->sc_mh, 0); mwl_start(sc); } -#undef IEEE80211_DIR_DSTODS } static void @@ -2881,12 +2867,11 @@ mwl_txq_init(struct mwl_softc *sc, struc static int mwl_tx_setup(struct mwl_softc *sc, int ac, int mvtype) { -#define N(a) (sizeof(a)/sizeof(a[0])) struct mwl_txq *txq; - if (ac >= N(sc->sc_ac2q)) { + if (ac >= nitems(sc->sc_ac2q)) { device_printf(sc->sc_dev, "AC %u out of range, max %zu!\n", - ac, N(sc->sc_ac2q)); + ac, nitems(sc->sc_ac2q)); return 0; } if (mvtype >= MWL_NUM_TX_QUEUES) { @@ -2898,7 +2883,6 @@ mwl_tx_setup(struct mwl_softc *sc, int a mwl_txq_init(sc, txq, mvtype); sc->sc_ac2q[ac] = txq; return 1; -#undef N } /* @@ -3091,8 +3075,6 @@ static int mwl_tx_start(struct mwl_softc *sc, struct ieee80211_node *ni, struct mwl_txbuf *bf, struct mbuf *m0) { -#define IEEE80211_DIR_DSTODS(wh) \ - ((wh->i_fc[1] & IEEE80211_FC1_DIR_MASK) == IEEE80211_FC1_DIR_DSTODS) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = ni->ni_vap; int error, iswep, ismcast; @@ -3114,7 +3096,7 @@ mwl_tx_start(struct mwl_softc *sc, struc copyhdrlen = hdrlen; pktlen = m0->m_pkthdr.len; if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_DIR_DSTODS(wh)) { + if (IEEE80211_IS_DSTODS(wh)) { qos = *(uint16_t *) (((struct ieee80211_qosframe_addr4 *) wh)->i_qos); copyhdrlen -= sizeof(qos); @@ -3331,17 +3313,14 @@ mwl_tx_start(struct mwl_softc *sc, struc MWL_TXQ_UNLOCK(txq); return 0; -#undef IEEE80211_DIR_DSTODS } static __inline int mwl_cvtlegacyrix(int rix) { -#define N(x) (sizeof(x)/sizeof(x[0])) static const int ieeerates[] = { 2, 4, 11, 22, 44, 12, 18, 24, 36, 48, 72, 96, 108 }; - return (rix < N(ieeerates) ? ieeerates[rix] : 0); -#undef N + return (rix < nitems(ieeerates) ? ieeerates[rix] : 0); } /* Modified: head/sys/dev/ral/rt2560.c ============================================================================== --- head/sys/dev/ral/rt2560.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/ral/rt2560.c Tue Sep 22 02:44:59 2015 (r288087) @@ -2301,7 +2301,6 @@ static void rt2560_set_basicrates(struct rt2560_softc *sc, const struct ieee80211_rateset *rs) { -#define RV(r) ((r) & IEEE80211_RATE_VAL) struct ieee80211com *ic = &sc->sc_ic; uint32_t mask = 0; uint8_t rate; @@ -2313,13 +2312,13 @@ rt2560_set_basicrates(struct rt2560_soft if (!(rate & IEEE80211_RATE_BASIC)) continue; - mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, RV(rate)); + mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, + IEEE80211_RV(rate)); } RAL_WRITE(sc, RT2560_ARSP_PLCP_1, mask); DPRINTF(sc, "Setting basic rate mask to 0x%x\n", mask); -#undef RV } static void @@ -2478,7 +2477,6 @@ rt2560_scan_end(struct ieee80211com *ic) static int rt2560_bbp_init(struct rt2560_softc *sc) { -#define N(a) (sizeof (a) / sizeof ((a)[0])) int i, ntries; /* wait for BBP to be ready */ @@ -2493,7 +2491,7 @@ rt2560_bbp_init(struct rt2560_softc *sc) } /* initialize BBP registers to default values */ - for (i = 0; i < N(rt2560_def_bbp); i++) { + for (i = 0; i < nitems(rt2560_def_bbp); i++) { rt2560_bbp_write(sc, rt2560_def_bbp[i].reg, rt2560_def_bbp[i].val); } @@ -2507,7 +2505,6 @@ rt2560_bbp_init(struct rt2560_softc *sc) rt2560_bbp_write(sc, 17, 0x48); /* XXX restore bbp17 */ return 0; -#undef N } static void @@ -2560,7 +2557,6 @@ rt2560_set_rxantenna(struct rt2560_softc static void rt2560_init_locked(struct rt2560_softc *sc) { -#define N(a) (sizeof (a) / sizeof ((a)[0])) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); uint32_t tmp; @@ -2590,7 +2586,7 @@ rt2560_init_locked(struct rt2560_softc * RAL_WRITE(sc, RT2560_RXCSR2, sc->rxq.physaddr); /* initialize MAC registers to default values */ - for (i = 0; i < N(rt2560_def_mac); i++) + for (i = 0; i < nitems(rt2560_def_mac); i++) RAL_WRITE(sc, rt2560_def_mac[i].reg, rt2560_def_mac[i].val); rt2560_set_macaddr(sc, vap ? vap->iv_myaddr : ic->ic_macaddr); @@ -2641,7 +2637,6 @@ rt2560_init_locked(struct rt2560_softc * sc->sc_flags |= RT2560_F_RUNNING; callout_reset(&sc->watchdog_ch, hz, rt2560_watchdog, sc); -#undef N } static void Modified: head/sys/dev/ral/rt2661.c ============================================================================== --- head/sys/dev/ral/rt2661.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/ral/rt2661.c Tue Sep 22 02:44:59 2015 (r288087) @@ -1859,7 +1859,6 @@ static void rt2661_set_basicrates(struct rt2661_softc *sc, const struct ieee80211_rateset *rs) { -#define RV(r) ((r) & IEEE80211_RATE_VAL) struct ieee80211com *ic = &sc->sc_ic; uint32_t mask = 0; uint8_t rate; @@ -1871,13 +1870,13 @@ rt2661_set_basicrates(struct rt2661_soft if (!(rate & IEEE80211_RATE_BASIC)) continue; - mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, RV(rate)); + mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, + IEEE80211_RV(rate)); } RAL_WRITE(sc, RT2661_TXRX_CSR5, mask); DPRINTF(sc, "Setting basic rate mask to 0x%x\n", mask); -#undef RV } /* @@ -2208,7 +2207,6 @@ rt2661_read_eeprom(struct rt2661_softc * static int rt2661_bbp_init(struct rt2661_softc *sc) { -#define N(a) (sizeof (a) / sizeof ((a)[0])) int i, ntries; uint8_t val; @@ -2225,7 +2223,7 @@ rt2661_bbp_init(struct rt2661_softc *sc) } /* initialize BBP registers to default values */ - for (i = 0; i < N(rt2661_def_bbp); i++) { + for (i = 0; i < nitems(rt2661_def_bbp); i++) { rt2661_bbp_write(sc, rt2661_def_bbp[i].reg, rt2661_def_bbp[i].val); } @@ -2238,13 +2236,11 @@ rt2661_bbp_init(struct rt2661_softc *sc) } return 0; -#undef N } static void rt2661_init_locked(struct rt2661_softc *sc) { -#define N(a) (sizeof (a) / sizeof ((a)[0])) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); uint32_t tmp, sta[3]; @@ -2305,7 +2301,7 @@ rt2661_init_locked(struct rt2661_softc * RAL_WRITE(sc, RT2661_RX_CNTL_CSR, 2); /* initialize MAC registers to default values */ - for (i = 0; i < N(rt2661_def_mac); i++) + for (i = 0; i < nitems(rt2661_def_mac); i++) RAL_WRITE(sc, rt2661_def_mac[i].reg, rt2661_def_mac[i].val); rt2661_set_macaddr(sc, vap ? vap->iv_myaddr : ic->ic_macaddr); @@ -2354,7 +2350,7 @@ rt2661_init_locked(struct rt2661_softc * RAL_WRITE(sc, RT2661_TXRX_CSR0, tmp); /* clear STA registers */ - RAL_READ_REGION_4(sc, RT2661_STA_CSR0, sta, N(sta)); + RAL_READ_REGION_4(sc, RT2661_STA_CSR0, sta, nitems(sta)); /* initialize ASIC */ RAL_WRITE(sc, RT2661_MAC_CSR1, 4); @@ -2372,7 +2368,6 @@ rt2661_init_locked(struct rt2661_softc * sc->sc_flags |= RAL_RUNNING; callout_reset(&sc->watchdog_ch, hz, rt2661_watchdog, sc); -#undef N } static void Modified: head/sys/dev/ral/rt2860.c ============================================================================== --- head/sys/dev/ral/rt2860.c Tue Sep 22 02:25:52 2015 (r288086) +++ head/sys/dev/ral/rt2860.c Tue Sep 22 02:44:59 2015 (r288087) @@ -2260,7 +2260,6 @@ void rt2860_set_basicrates(struct rt2860_softc *sc, const struct ieee80211_rateset *rs) { -#define RV(r) ((r) & IEEE80211_RATE_VAL) struct ieee80211com *ic = &sc->sc_ic; uint32_t mask = 0; uint8_t rate; @@ -2272,11 +2271,11 @@ rt2860_set_basicrates(struct rt2860_soft if (!(rate & IEEE80211_RATE_BASIC)) continue; - mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, RV(rate)); + mask |= 1 << ieee80211_legacy_rate_lookup(ic->ic_rt, + IEEE80211_RV(rate)); } RAL_WRITE(sc, RT2860_LEGACY_BASIC_RATE, mask); -#undef RV } static void From owner-svn-src-head@freebsd.org Tue Sep 22 02:49:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A9CBBA065EA; Tue, 22 Sep 2015 02:49:02 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 91DA61DE5; Tue, 22 Sep 2015 02:49:02 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M2n2Yb084047; Tue, 22 Sep 2015 02:49:02 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M2n0Br084040; Tue, 22 Sep 2015 02:49:00 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220249.t8M2n0Br084040@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 02:49:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288088 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 02:49:02 -0000 Author: adrian Date: Tue Sep 22 02:48:59 2015 New Revision: 288088 URL: https://svnweb.freebsd.org/changeset/base/288088 Log: net80211 & wireless drivers: remove duplicate defines (noop) - IEEE80211_DIR_DSTODS(wh) -> IEEE80211_IS_DSTODS(wh). - N(a) -> nitems(a). - Remove LE_READ_2(p)/LE_READ_4(p) definitions (and include ieee80211_input.h instead). - _TXOP_TO_US(txop) -> IEEE80211_TXOP_TO_US(txop). - Put IEEE80211_RV(v) into ieee80211_proto.h and remove local RV(v) definitions. Submitted by: Andriy Voskoboinyk Differential Revision: https://reviews.freebsd.org/D3705 Modified: head/sys/dev/usb/wlan/if_uath.c head/sys/dev/usb/wlan/if_uathvar.h head/sys/dev/usb/wlan/if_ural.c head/sys/dev/usb/wlan/if_urtw.c head/sys/dev/usb/wlan/if_urtwn.c head/sys/dev/usb/wlan/if_urtwnreg.h head/sys/dev/usb/wlan/if_zyd.c Modified: head/sys/dev/usb/wlan/if_uath.c ============================================================================== --- head/sys/dev/usb/wlan/if_uath.c Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_uath.c Tue Sep 22 02:48:59 2015 (r288088) @@ -102,6 +102,7 @@ __FBSDID("$FreeBSD$"); #endif #include +#include #include #include @@ -156,15 +157,6 @@ enum { } while (0) #endif -/* unaligned little endian access */ -#define LE_READ_2(p) \ - ((u_int16_t) \ - ((((u_int8_t *)(p))[0] ) | (((u_int8_t *)(p))[1] << 8))) -#define LE_READ_4(p) \ - ((u_int32_t) \ - ((((u_int8_t *)(p))[0] ) | (((u_int8_t *)(p))[1] << 8) | \ - (((u_int8_t *)(p))[2] << 16) | (((u_int8_t *)(p))[3] << 24))) - /* recognized device vendors/products */ static const STRUCT_USB_HOST_ID uath_devs[] = { #define UATH_DEV(v,p) { USB_VP(USB_VENDOR_##v, USB_PRODUCT_##v##_##p) } @@ -599,7 +591,6 @@ uath_dump_cmd(const uint8_t *buf, int le static const char * uath_codename(int code) { -#define N(a) (sizeof(a)/sizeof(a[0])) static const char *names[] = { "0x00", "HOST_AVAILABLE", @@ -662,13 +653,12 @@ uath_codename(int code) }; static char buf[8]; - if (code < N(names)) + if (code < nitems(names)) return names[code]; if (code == WDCMSG_SET_DEFAULT_KEY) return "SET_DEFAULT_KEY"; snprintf(buf, sizeof(buf), "0x%02x", code); return buf; -#undef N } #endif @@ -1486,7 +1476,7 @@ uath_wme_init(struct uath_softc *sc) qinfo.attr.aifs = htobe32(uath_wme_11g[ac].aifsn); qinfo.attr.logcwmin = htobe32(uath_wme_11g[ac].logcwmin); qinfo.attr.logcwmax = htobe32(uath_wme_11g[ac].logcwmax); - qinfo.attr.bursttime = htobe32(UATH_TXOP_TO_US( + qinfo.attr.bursttime = htobe32(IEEE80211_TXOP_TO_US( uath_wme_11g[ac].txop)); qinfo.attr.mode = htobe32(uath_wme_11g[ac].acm);/*XXX? */ qinfo.attr.qflags = htobe32(1); /* XXX? */ Modified: head/sys/dev/usb/wlan/if_uathvar.h ============================================================================== --- head/sys/dev/usb/wlan/if_uathvar.h Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_uathvar.h Tue Sep 22 02:48:59 2015 (r288088) @@ -102,7 +102,6 @@ struct uath_wme_settings { uint8_t logcwmin; uint8_t logcwmax; uint16_t txop; -#define UATH_TXOP_TO_US(txop) ((txop) << 5) uint8_t acm; }; Modified: head/sys/dev/usb/wlan/if_ural.c ============================================================================== --- head/sys/dev/usb/wlan/if_ural.c Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_ural.c Tue Sep 22 02:48:59 2015 (r288088) @@ -1929,7 +1929,6 @@ ural_read_eeprom(struct ural_softc *sc) static int ural_bbp_init(struct ural_softc *sc) { -#define N(a) ((int)(sizeof (a) / sizeof ((a)[0]))) int i, ntries; /* wait for BBP to be ready */ @@ -1945,7 +1944,7 @@ ural_bbp_init(struct ural_softc *sc) } /* initialize BBP registers to default values */ - for (i = 0; i < N(ural_def_bbp); i++) + for (i = 0; i < nitems(ural_def_bbp); i++) ural_bbp_write(sc, ural_def_bbp[i].reg, ural_def_bbp[i].val); #if 0 @@ -1958,7 +1957,6 @@ ural_bbp_init(struct ural_softc *sc) #endif return 0; -#undef N } static void @@ -2013,7 +2011,6 @@ ural_set_rxantenna(struct ural_softc *sc static void ural_init(struct ural_softc *sc) { -#define N(a) ((int)(sizeof (a) / sizeof ((a)[0]))) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); uint16_t tmp; @@ -2027,7 +2024,7 @@ ural_init(struct ural_softc *sc) ural_stop(sc); /* initialize MAC registers to default values */ - for (i = 0; i < N(ural_def_mac); i++) + for (i = 0; i < nitems(ural_def_mac); i++) ural_write(sc, ural_def_mac[i].reg, ural_def_mac[i].val); /* wait for BBP and RF to wake up (this can take a long time!) */ @@ -2086,7 +2083,6 @@ ural_init(struct ural_softc *sc) return; fail: ural_stop(sc); -#undef N } static void Modified: head/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- head/sys/dev/usb/wlan/if_urtw.c Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_urtw.c Tue Sep 22 02:48:59 2015 (r288088) @@ -1093,7 +1093,6 @@ fail: static usb_error_t urtw_adapter_start_b(struct urtw_softc *sc) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) uint8_t data8; usb_error_t error; @@ -1176,7 +1175,6 @@ urtw_adapter_start_b(struct urtw_softc * urtw_write16_m(sc, 0x1ec, 0x800); /* RX MAX SIZE */ fail: return (error); -#undef N } static usb_error_t @@ -1914,31 +1912,27 @@ fail: static uint16_t urtw_rate2rtl(uint32_t rate) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int i; - for (i = 0; i < N(urtw_ratetable); i++) { + for (i = 0; i < nitems(urtw_ratetable); i++) { if (rate == urtw_ratetable[i].reg) return urtw_ratetable[i].val; } return (3); -#undef N } static uint16_t urtw_rtl2rate(uint32_t rate) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int i; - for (i = 0; i < N(urtw_ratetable); i++) { + for (i = 0; i < nitems(urtw_ratetable); i++) { if (rate == urtw_ratetable[i].val) return urtw_ratetable[i].reg; } return (0); -#undef N } static usb_error_t @@ -2458,7 +2452,6 @@ fail: static usb_error_t urtw_8225_rf_init(struct urtw_softc *sc) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int i; uint16_t data; usb_error_t error; @@ -2489,7 +2482,7 @@ urtw_8225_rf_init(struct urtw_softc *sc) goto fail; usb_pause_mtx(&sc->sc_mtx, 1000); - for (i = 0; i < N(urtw_8225_rf_part1); i++) { + for (i = 0; i < nitems(urtw_8225_rf_part1); i++) { urtw_8225_write(sc, urtw_8225_rf_part1[i].reg, urtw_8225_rf_part1[i].val); usb_pause_mtx(&sc->sc_mtx, 1); @@ -2521,7 +2514,7 @@ urtw_8225_rf_init(struct urtw_softc *sc) usb_pause_mtx(&sc->sc_mtx, 1); } - for (i = 0; i < N(urtw_8225_rf_part2); i++) { + for (i = 0; i < nitems(urtw_8225_rf_part2); i++) { urtw_8187_write_phy_ofdm(sc, urtw_8225_rf_part2[i].reg, urtw_8225_rf_part2[i].val); usb_pause_mtx(&sc->sc_mtx, 1); @@ -2531,7 +2524,7 @@ urtw_8225_rf_init(struct urtw_softc *sc) if (error) goto fail; - for (i = 0; i < N(urtw_8225_rf_part3); i++) { + for (i = 0; i < nitems(urtw_8225_rf_part3); i++) { urtw_8187_write_phy_cck(sc, urtw_8225_rf_part3[i].reg, urtw_8225_rf_part3[i].val); usb_pause_mtx(&sc->sc_mtx, 1); @@ -2557,7 +2550,6 @@ urtw_8225_rf_init(struct urtw_softc *sc) error = urtw_8225_rf_set_chan(sc, 1); fail: return (error); -#undef N } static usb_error_t @@ -2841,7 +2833,6 @@ fail: static usb_error_t urtw_8225v2_rf_init(struct urtw_softc *sc) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int i; uint16_t data; uint32_t data32; @@ -2874,7 +2865,7 @@ urtw_8225v2_rf_init(struct urtw_softc *s usb_pause_mtx(&sc->sc_mtx, 500); - for (i = 0; i < N(urtw_8225v2_rf_part1); i++) { + for (i = 0; i < nitems(urtw_8225v2_rf_part1); i++) { urtw_8225_write(sc, urtw_8225v2_rf_part1[i].reg, urtw_8225v2_rf_part1[i].val); } @@ -2929,7 +2920,7 @@ urtw_8225v2_rf_init(struct urtw_softc *s urtw_8187_write_phy_ofdm(sc, 0xa, (uint8_t)i + 0x80); } - for (i = 0; i < N(urtw_8225v2_rf_part2); i++) { + for (i = 0; i < nitems(urtw_8225v2_rf_part2); i++) { urtw_8187_write_phy_ofdm(sc, urtw_8225v2_rf_part2[i].reg, urtw_8225v2_rf_part2[i].val); } @@ -2938,7 +2929,7 @@ urtw_8225v2_rf_init(struct urtw_softc *s if (error) goto fail; - for (i = 0; i < N(urtw_8225v2_rf_part3); i++) { + for (i = 0; i < nitems(urtw_8225v2_rf_part3); i++) { urtw_8187_write_phy_cck(sc, urtw_8225v2_rf_part3[i].reg, urtw_8225v2_rf_part3[i].val); } @@ -2961,7 +2952,6 @@ urtw_8225v2_rf_init(struct urtw_softc *s error = urtw_8225_rf_set_chan(sc, 1); fail: return (error); -#undef N } static usb_error_t @@ -3329,7 +3319,6 @@ urtw_8225v2b_rf_init(struct urtw_softc * fail: return (error); -#undef N } static usb_error_t Modified: head/sys/dev/usb/wlan/if_urtwn.c ============================================================================== --- head/sys/dev/usb/wlan/if_urtwn.c Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_urtwn.c Tue Sep 22 02:48:59 2015 (r288088) @@ -61,6 +61,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -83,8 +84,7 @@ SYSCTL_INT(_hw_usb_urtwn, OID_AUTO, debu #endif #define URTWN_RSSI(r) (r) - 110 -#define IEEE80211_HAS_ADDR4(wh) \ - (((wh)->i_fc[1] & IEEE80211_FC1_DIR_MASK) == IEEE80211_FC1_DIR_DSTODS) +#define IEEE80211_HAS_ADDR4(wh) IEEE80211_IS_DSTODS(wh) /* various supported device vendors/products */ static const STRUCT_USB_HOST_ID urtwn_devs[] = { Modified: head/sys/dev/usb/wlan/if_urtwnreg.h ============================================================================== --- head/sys/dev/usb/wlan/if_urtwnreg.h Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_urtwnreg.h Tue Sep 22 02:48:59 2015 (r288088) @@ -801,10 +801,6 @@ #define R92C_RAID_11B 6 -/* Macros to access unaligned little-endian memory. */ -#define LE_READ_2(x) ((x)[0] | (x)[1] << 8) -#define LE_READ_4(x) ((x)[0] | (x)[1] << 8 | (x)[2] << 16 | (x)[3] << 24) - /* * Macros to access subfields in registers. */ Modified: head/sys/dev/usb/wlan/if_zyd.c ============================================================================== --- head/sys/dev/usb/wlan/if_zyd.c Tue Sep 22 02:44:59 2015 (r288087) +++ head/sys/dev/usb/wlan/if_zyd.c Tue Sep 22 02:48:59 2015 (r288088) @@ -930,25 +930,23 @@ fail: static int zyd_rfmd_init(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini[] = ZYD_RFMD_PHY; static const uint32_t rfini[] = ZYD_RFMD_RF; int i, error; /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) { + for (i = 0; i < nitems(phyini); i++) { zyd_write16_m(sc, phyini[i].reg, phyini[i].val); } /* init RFMD radio */ - for (i = 0; i < N(rfini); i++) { + for (i = 0; i < nitems(rfini); i++) { if ((error = zyd_rfwrite(sc, rfini[i])) != 0) return (error); } fail: return (error); -#undef N } static int @@ -989,7 +987,6 @@ fail: static int zyd_al2230_init(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini[] = ZYD_AL2230_PHY; static const struct zyd_phy_pair phy2230s[] = ZYD_AL2230S_PHY_INIT; @@ -1003,16 +1000,16 @@ zyd_al2230_init(struct zyd_rf *rf) int i, error; /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) + for (i = 0; i < nitems(phyini); i++) zyd_write16_m(sc, phyini[i].reg, phyini[i].val); if (sc->sc_rfrev == ZYD_RF_AL2230S || sc->sc_al2230s != 0) { - for (i = 0; i < N(phy2230s); i++) + for (i = 0; i < nitems(phy2230s); i++) zyd_write16_m(sc, phy2230s[i].reg, phy2230s[i].val); } /* init AL2230 radio */ - for (i = 0; i < N(rfini1); i++) { + for (i = 0; i < nitems(rfini1); i++) { error = zyd_rfwrite(sc, rfini1[i]); if (error != 0) goto fail; @@ -1025,34 +1022,32 @@ zyd_al2230_init(struct zyd_rf *rf) if (error != 0) goto fail; - for (i = 0; i < N(rfini2); i++) { + for (i = 0; i < nitems(rfini2); i++) { error = zyd_rfwrite(sc, rfini2[i]); if (error != 0) goto fail; } - for (i = 0; i < N(phypll); i++) + for (i = 0; i < nitems(phypll); i++) zyd_write16_m(sc, phypll[i].reg, phypll[i].val); - for (i = 0; i < N(rfini3); i++) { + for (i = 0; i < nitems(rfini3); i++) { error = zyd_rfwrite(sc, rfini3[i]); if (error != 0) goto fail; } fail: return (error); -#undef N } static int zyd_al2230_fini(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int error, i; struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phy[] = ZYD_AL2230_PHY_FINI_PART1; - for (i = 0; i < N(phy); i++) + for (i = 0; i < nitems(phy); i++) zyd_write16_m(sc, phy[i].reg, phy[i].val); if (sc->sc_newphy != 0) @@ -1061,13 +1056,11 @@ zyd_al2230_fini(struct zyd_rf *rf) zyd_write16_m(sc, ZYD_CR203, 0x6); fail: return (error); -#undef N } static int zyd_al2230_init_b(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phy1[] = ZYD_AL2230_PHY_PART1; static const struct zyd_phy_pair phy2[] = ZYD_AL2230_PHY_PART2; @@ -1080,15 +1073,15 @@ zyd_al2230_init_b(struct zyd_rf *rf) static const uint32_t zyd_al2230_chtable[][3] = ZYD_AL2230_CHANTABLE; int i, error; - for (i = 0; i < N(phy1); i++) + for (i = 0; i < nitems(phy1); i++) zyd_write16_m(sc, phy1[i].reg, phy1[i].val); /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) + for (i = 0; i < nitems(phyini); i++) zyd_write16_m(sc, phyini[i].reg, phyini[i].val); if (sc->sc_rfrev == ZYD_RF_AL2230S || sc->sc_al2230s != 0) { - for (i = 0; i < N(phy2230s); i++) + for (i = 0; i < nitems(phy2230s); i++) zyd_write16_m(sc, phy2230s[i].reg, phy2230s[i].val); } @@ -1098,7 +1091,7 @@ zyd_al2230_init_b(struct zyd_rf *rf) return (error); } - for (i = 0; i < N(rfini_part1); i++) { + for (i = 0; i < nitems(rfini_part1); i++) { error = zyd_rfwrite_cr(sc, rfini_part1[i]); if (error != 0) return (error); @@ -1111,28 +1104,27 @@ zyd_al2230_init_b(struct zyd_rf *rf) if (error != 0) goto fail; - for (i = 0; i < N(rfini_part2); i++) { + for (i = 0; i < nitems(rfini_part2); i++) { error = zyd_rfwrite_cr(sc, rfini_part2[i]); if (error != 0) return (error); } - for (i = 0; i < N(phy2); i++) + for (i = 0; i < nitems(phy2); i++) zyd_write16_m(sc, phy2[i].reg, phy2[i].val); - for (i = 0; i < N(rfini_part3); i++) { + for (i = 0; i < nitems(rfini_part3); i++) { error = zyd_rfwrite_cr(sc, rfini_part3[i]); if (error != 0) return (error); } - for (i = 0; i < N(phy3); i++) + for (i = 0; i < nitems(phy3); i++) zyd_write16_m(sc, phy3[i].reg, phy3[i].val); error = zyd_al2230_fini(rf); fail: return (error); -#undef N } static int @@ -1150,7 +1142,6 @@ fail: static int zyd_al2230_set_channel(struct zyd_rf *rf, uint8_t chan) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int error, i; struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phy1[] = { @@ -1170,17 +1161,15 @@ zyd_al2230_set_channel(struct zyd_rf *rf if (error != 0) goto fail; - for (i = 0; i < N(phy1); i++) + for (i = 0; i < nitems(phy1); i++) zyd_write16_m(sc, phy1[i].reg, phy1[i].val); fail: return (error); -#undef N } static int zyd_al2230_set_channel_b(struct zyd_rf *rf, uint8_t chan) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int error, i; struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phy1[] = ZYD_AL2230_PHY_PART1; @@ -1188,7 +1177,7 @@ zyd_al2230_set_channel_b(struct zyd_rf * uint32_t r1, r2, r3; } rfprog[] = ZYD_AL2230_CHANTABLE_B; - for (i = 0; i < N(phy1); i++) + for (i = 0; i < nitems(phy1); i++) zyd_write16_m(sc, phy1[i].reg, phy1[i].val); error = zyd_rfwrite_cr(sc, rfprog[chan - 1].r1); @@ -1203,7 +1192,6 @@ zyd_al2230_set_channel_b(struct zyd_rf * error = zyd_al2230_fini(rf); fail: return (error); -#undef N } #define ZYD_AL2230_PHY_BANDEDGE6 \ @@ -1215,7 +1203,6 @@ fail: static int zyd_al2230_bandedge6(struct zyd_rf *rf, struct ieee80211_channel *c) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int error = 0, i; struct zyd_softc *sc = rf->rf_sc; struct ieee80211com *ic = &sc->sc_ic; @@ -1225,11 +1212,10 @@ zyd_al2230_bandedge6(struct zyd_rf *rf, if (chan == 1 || chan == 11) r[0].val = 0x12; - for (i = 0; i < N(r); i++) + for (i = 0; i < nitems(r); i++) zyd_write16_m(sc, r[i].reg, r[i].val); fail: return (error); -#undef N } /* @@ -1238,7 +1224,6 @@ fail: static int zyd_al7230B_init(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini_1[] = ZYD_AL7230B_PHY_1; static const struct zyd_phy_pair phyini_2[] = ZYD_AL7230B_PHY_2; @@ -1250,29 +1235,28 @@ zyd_al7230B_init(struct zyd_rf *rf) /* for AL7230B, PHY and RF need to be initialized in "phases" */ /* init RF-dependent PHY registers, part one */ - for (i = 0; i < N(phyini_1); i++) + for (i = 0; i < nitems(phyini_1); i++) zyd_write16_m(sc, phyini_1[i].reg, phyini_1[i].val); /* init AL7230B radio, part one */ - for (i = 0; i < N(rfini_1); i++) { + for (i = 0; i < nitems(rfini_1); i++) { if ((error = zyd_rfwrite(sc, rfini_1[i])) != 0) return (error); } /* init RF-dependent PHY registers, part two */ - for (i = 0; i < N(phyini_2); i++) + for (i = 0; i < nitems(phyini_2); i++) zyd_write16_m(sc, phyini_2[i].reg, phyini_2[i].val); /* init AL7230B radio, part two */ - for (i = 0; i < N(rfini_2); i++) { + for (i = 0; i < nitems(rfini_2); i++) { if ((error = zyd_rfwrite(sc, rfini_2[i])) != 0) return (error); } /* init RF-dependent PHY registers, part three */ - for (i = 0; i < N(phyini_3); i++) + for (i = 0; i < nitems(phyini_3); i++) zyd_write16_m(sc, phyini_3[i].reg, phyini_3[i].val); fail: return (error); -#undef N } static int @@ -1290,7 +1274,6 @@ fail: static int zyd_al7230B_set_channel(struct zyd_rf *rf, uint8_t chan) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct { uint32_t r1, r2; @@ -1301,7 +1284,7 @@ zyd_al7230B_set_channel(struct zyd_rf *r zyd_write16_m(sc, ZYD_CR240, 0x57); zyd_write16_m(sc, ZYD_CR251, 0x2f); - for (i = 0; i < N(rfsc); i++) { + for (i = 0; i < nitems(rfsc); i++) { if ((error = zyd_rfwrite(sc, rfsc[i])) != 0) return (error); } @@ -1327,7 +1310,6 @@ zyd_al7230B_set_channel(struct zyd_rf *r zyd_write16_m(sc, ZYD_CR240, 0x08); fail: return (error); -#undef N } /* @@ -1336,7 +1318,6 @@ fail: static int zyd_al2210_init(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini[] = ZYD_AL2210_PHY; static const uint32_t rfini[] = ZYD_AL2210_RF; @@ -1346,11 +1327,11 @@ zyd_al2210_init(struct zyd_rf *rf) zyd_write32_m(sc, ZYD_CR18, 2); /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) + for (i = 0; i < nitems(phyini); i++) zyd_write16_m(sc, phyini[i].reg, phyini[i].val); /* init AL2210 radio */ - for (i = 0; i < N(rfini); i++) { + for (i = 0; i < nitems(rfini); i++) { if ((error = zyd_rfwrite(sc, rfini[i])) != 0) return (error); } @@ -1364,7 +1345,6 @@ zyd_al2210_init(struct zyd_rf *rf) zyd_write32_m(sc, ZYD_CR18, 3); fail: return (error); -#undef N } static int @@ -1409,7 +1389,6 @@ static int zyd_gct_init(struct zyd_rf *rf) { #define ZYD_GCT_INTR_REG 0x85c1 -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini[] = ZYD_GCT_PHY; static const uint32_t rfini[] = ZYD_GCT_RF; @@ -1418,11 +1397,11 @@ zyd_gct_init(struct zyd_rf *rf) uint16_t data; /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) + for (i = 0; i < nitems(phyini); i++) zyd_write16_m(sc, phyini[i].reg, phyini[i].val); /* init cgt radio */ - for (i = 0; i < N(rfini); i++) { + for (i = 0; i < nitems(rfini); i++) { if ((error = zyd_rfwrite(sc, rfini[i])) != 0) return (error); } @@ -1431,7 +1410,7 @@ zyd_gct_init(struct zyd_rf *rf) if (error != 0) return (error); - for (i = 0; i < (int)(N(vco) - 1); i++) { + for (i = 0; i < (int)(nitems(vco) - 1); i++) { error = zyd_gct_set_channel_synth(rf, 1, 0); if (error != 0) goto fail; @@ -1458,26 +1437,23 @@ zyd_gct_init(struct zyd_rf *rf) zyd_write16_m(sc, ZYD_CR203, 0x6); fail: return (error); -#undef N #undef ZYD_GCT_INTR_REG } static int zyd_gct_mode(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const uint32_t mode[] = { 0x25f98, 0x25f9a, 0x25f94, 0x27fd4 }; int i, error; - for (i = 0; i < N(mode); i++) { + for (i = 0; i < nitems(mode); i++) { if ((error = zyd_rfwrite(sc, mode[i])) != 0) break; } return (error); -#undef N } static int @@ -1524,7 +1500,6 @@ fail: static int zyd_gct_set_channel(struct zyd_rf *rf, uint8_t chan) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) int error, i; struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair cmd[] = { @@ -1543,7 +1518,7 @@ zyd_gct_set_channel(struct zyd_rf *rf, u error = zyd_gct_mode(rf); if (error != 0) return (error); - for (i = 0; i < N(cmd); i++) + for (i = 0; i < nitems(cmd); i++) zyd_write16_m(sc, cmd[i].reg, cmd[i].val); error = zyd_gct_txgain(rf, chan); if (error != 0) @@ -1551,25 +1526,22 @@ zyd_gct_set_channel(struct zyd_rf *rf, u zyd_write16_m(sc, ZYD_CR203, 0x6); fail: return (error); -#undef N } static int zyd_gct_txgain(struct zyd_rf *rf, uint8_t chan) { -#define N(a) (sizeof(a) / sizeof((a)[0])) struct zyd_softc *sc = rf->rf_sc; static uint32_t txgain[] = ZYD_GCT_TXGAIN; uint8_t idx = sc->sc_pwrint[chan - 1]; - if (idx >= N(txgain)) { + if (idx >= nitems(txgain)) { device_printf(sc->sc_dev, "could not set TX gain (%d %#x)\n", chan, idx); return 0; } return zyd_rfwrite(sc, 0x700000 | txgain[idx]); -#undef N } /* @@ -1578,7 +1550,6 @@ zyd_gct_txgain(struct zyd_rf *rf, uint8_ static int zyd_maxim2_init(struct zyd_rf *rf) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini[] = ZYD_MAXIM2_PHY; static const uint32_t rfini[] = ZYD_MAXIM2_RF; @@ -1586,14 +1557,14 @@ zyd_maxim2_init(struct zyd_rf *rf) int i, error; /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) + for (i = 0; i < nitems(phyini); i++) zyd_write16_m(sc, phyini[i].reg, phyini[i].val); zyd_read16_m(sc, ZYD_CR203, &tmp); zyd_write16_m(sc, ZYD_CR203, tmp & ~(1 << 4)); /* init maxim2 radio */ - for (i = 0; i < N(rfini); i++) { + for (i = 0; i < nitems(rfini); i++) { if ((error = zyd_rfwrite(sc, rfini[i])) != 0) return (error); } @@ -1601,7 +1572,6 @@ zyd_maxim2_init(struct zyd_rf *rf) zyd_write16_m(sc, ZYD_CR203, tmp | (1 << 4)); fail: return (error); -#undef N } static int @@ -1615,7 +1585,6 @@ zyd_maxim2_switch_radio(struct zyd_rf *r static int zyd_maxim2_set_channel(struct zyd_rf *rf, uint8_t chan) { -#define N(a) ((int)(sizeof(a) / sizeof((a)[0]))) struct zyd_softc *sc = rf->rf_sc; static const struct zyd_phy_pair phyini[] = ZYD_MAXIM2_PHY; static const uint32_t rfini[] = ZYD_MAXIM2_RF; @@ -1631,7 +1600,7 @@ zyd_maxim2_set_channel(struct zyd_rf *rf */ /* init RF-dependent PHY registers */ - for (i = 0; i < N(phyini); i++) + for (i = 0; i < nitems(phyini); i++) zyd_write16_m(sc, phyini[i].reg, phyini[i].val); zyd_read16_m(sc, ZYD_CR203, &tmp); @@ -1646,7 +1615,7 @@ zyd_maxim2_set_channel(struct zyd_rf *rf goto fail; /* init maxim2 radio - skipping the two first values */ - for (i = 2; i < N(rfini); i++) { + for (i = 2; i < nitems(rfini); i++) { if ((error = zyd_rfwrite(sc, rfini[i])) != 0) return (error); } @@ -1654,7 +1623,6 @@ zyd_maxim2_set_channel(struct zyd_rf *rf zyd_write16_m(sc, ZYD_CR203, tmp | (1 << 4)); fail: return (error); -#undef N } static int From owner-svn-src-head@freebsd.org Tue Sep 22 02:57:19 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B63B1A069C7; Tue, 22 Sep 2015 02:57:19 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 979E811E0; Tue, 22 Sep 2015 02:57:19 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M2vJum088042; Tue, 22 Sep 2015 02:57:19 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M2vJKI088040; Tue, 22 Sep 2015 02:57:19 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220257.t8M2vJKI088040@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 02:57:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288089 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 02:57:19 -0000 Author: adrian Date: Tue Sep 22 02:57:18 2015 New Revision: 288089 URL: https://svnweb.freebsd.org/changeset/base/288089 Log: Begin fleshing out basic power-on / power-off and A-MPDU TX support. * Add a new method to control NIC poweron / network-sleep / power off; * Add in A-MPDU TX negotiation support, but comment it out because it does break TX traffic; * blank out the tx buffer before sending a firmware message, just in case; * go into network-sleep once associated; TODO: * figure out why ampdu negotiation isn't working and breaking TX traffic, then enable it. Modified: head/sys/dev/usb/wlan/if_rsu.c head/sys/dev/usb/wlan/if_rsureg.h Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Tue Sep 22 02:48:59 2015 (r288088) +++ head/sys/dev/usb/wlan/if_rsu.c Tue Sep 22 02:57:18 2015 (r288089) @@ -100,6 +100,7 @@ TUNABLE_INT("hw.usb.rsu.enable_11n", &rs #define RSU_DEBUG_TXDONE 0x00000080 #define RSU_DEBUG_FW 0x00000100 #define RSU_DEBUG_FWDBG 0x00000200 +#define RSU_DEBUG_AMPDU 0x00000400 static const STRUCT_USB_HOST_ID rsu_devs[] = { #define RSU_HT_NOT_SUPPORTED 0 @@ -336,11 +337,51 @@ rsu_update_chw(struct ieee80211com *ic) } +/* + * notification from net80211 that it'd like to do A-MPDU on the given TID. + * + * Note: this actually hangs traffic at the present moment, so don't use it. + * The firmware debug does indiciate it's sending and establishing a TX AMPDU + * session, but then no traffic flows. + */ static int rsu_ampdu_enable(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap) { +#if 0 + struct rsu_softc *sc = ni->ni_ic->ic_softc; + struct r92s_add_ba_req req; - /* Firmware handles this; not our problem */ + /* Don't enable if it's requested or running */ + if (IEEE80211_AMPDU_REQUESTED(tap)) + return (0); + if (IEEE80211_AMPDU_RUNNING(tap)) + return (0); + + /* We've decided to send addba; so send it */ + req.tid = htole32(tap->txa_tid); + + /* Attempt net80211 state */ + if (ieee80211_ampdu_tx_request_ext(ni, tap->txa_tid) != 1) + return (0); + + /* Send the firmware command */ + RSU_DPRINTF(sc, RSU_DEBUG_AMPDU, "%s: establishing AMPDU TX for TID %d\n", + __func__, + tap->txa_tid); + + RSU_LOCK(sc); + if (rsu_fw_cmd(sc, R92S_CMD_ADDBA_REQ, &req, sizeof(req)) != 1) { + RSU_UNLOCK(sc); + /* Mark failure */ + (void) ieee80211_ampdu_tx_request_active_ext(ni, tap->txa_tid, 0); + return (0); + } + RSU_UNLOCK(sc); + + /* Mark success; we don't get any further notifications */ + (void) ieee80211_ampdu_tx_request_active_ext(ni, tap->txa_tid, 1); +#endif + /* Return 0, we're driving this ourselves */ return (0); } @@ -606,6 +647,7 @@ rsu_scan_start(struct ieee80211com *ic) /* Scanning is done by the firmware. */ RSU_LOCK(sc); + /* XXX TODO: force awake if in in network-sleep? */ error = rsu_site_survey(sc, TAILQ_FIRST(&ic->ic_vaps)); RSU_UNLOCK(sc); if (error != 0) @@ -965,7 +1007,11 @@ rsu_fw_cmd(struct rsu_softc *sc, uint8_t if (data == NULL) return (ENOMEM); + /* Blank the entire payload, just to be safe */ + memset(data->buf, '\0', RSU_TXBUFSZ); + /* Round-up command length to a multiple of 8 bytes. */ + /* XXX TODO: is this required? */ cmdsz = (len + 7) & ~7; xferlen = sizeof(*txd) + sizeof(*cmd) + cmdsz; @@ -1042,6 +1088,66 @@ rsu_tx_task(void *arg, int pending __unu RSU_UNLOCK(sc); } +#define RSU_PWR_ACTIVE 0x1 +#define RSU_PWR_OFF 0x2 +#define RSU_PWR_SLEEP 0x3 + +/* + * Set the current power state. + * + * The rtlwifi code doesn't do this so aggressively; it + * waits for an idle period after association with + * no traffic before doing this. + * + * For now - it's on in all states except RUN, and + * in RUN it'll transition to allow sleep. + */ + +struct r92s_pwr_cmd { + uint8_t mode; + uint8_t smart_ps; + uint8_t bcn_pass_time; +}; + +static int +rsu_set_fw_power_state(struct rsu_softc *sc, int state) +{ + struct r92s_set_pwr_mode cmd; + //struct r92s_pwr_cmd cmd; + int error; + + memset(&cmd, 0, sizeof(cmd)); + + /* XXX TODO: only change state if required */ + RSU_ASSERT_LOCKED(sc); + + switch (state) { + case RSU_PWR_ACTIVE: + /* Force the hardware awake */ + rsu_write_1(sc, R92S_USB_HRPWM, + R92S_USB_HRPWM_PS_ST_ACTIVE | R92S_USB_HRPWM_PS_ALL_ON); + cmd.mode = R92S_PS_MODE_ACTIVE; + break; + case RSU_PWR_SLEEP: + cmd.mode = R92S_PS_MODE_DTIM; /* XXX configurable? */ + cmd.smart_ps = 1; /* XXX 2 if doing p2p */ + cmd.bcn_pass_time = 5; /* in 100mS usb.c, linux/rtlwifi */ + break; + default: + device_printf(sc->sc_dev, "%s: unknown ps mode (%d)\n", + __func__, + state); + return (ENXIO); + } + + RSU_DPRINTF(sc, RSU_DEBUG_RESET, + "%s: setting ps mode to %d (mode %d)\n", + __func__, state, cmd.mode); + error = rsu_fw_cmd(sc, R92S_CMD_SET_PWR_MODE, &cmd, sizeof(cmd)); + + return (error); +} + static int rsu_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) { @@ -1074,9 +1180,11 @@ rsu_newstate(struct ieee80211vap *vap, e RSU_LOCK(sc); switch (nstate) { case IEEE80211_S_INIT: + (void) rsu_set_fw_power_state(sc, RSU_PWR_ACTIVE); break; case IEEE80211_S_AUTH: ni = ieee80211_ref_node(vap->iv_bss); + (void) rsu_set_fw_power_state(sc, RSU_PWR_ACTIVE); error = rsu_join_bss(sc, ni); ieee80211_free_node(ni); if (error != 0) { @@ -1089,6 +1197,7 @@ rsu_newstate(struct ieee80211vap *vap, e rs = &ni->ni_rates; /* Indicate highest supported rate. */ ni->ni_txrate = rs->rs_rates[rs->rs_nrates - 1]; + (void) rsu_set_fw_power_state(sc, RSU_PWR_SLEEP); ieee80211_free_node(ni); startcal = 1; break; @@ -1477,13 +1586,11 @@ rsu_rx_event(struct rsu_softc *sc, uint8 buf[60] = '\0'; RSU_DPRINTF(sc, RSU_DEBUG_FWDBG, "FWDBG: %s\n", (char *)buf); break; - case R92S_EVT_ADDBA_REQ_REPORT: rsu_event_addba_req_report(sc, buf, len); break; default: - RSU_DPRINTF(sc, RSU_DEBUG_ANY, "%s: unhandled code (%d)\n", - __func__, code); + device_printf(sc->sc_dev, "%s: unhandled code (%d)\n", __func__, code); break; } } @@ -2403,7 +2510,7 @@ rsu_load_firmware(struct rsu_softc *sc) int ntries, error; if (rsu_read_1(sc, R92S_TCR) & R92S_TCR_FWRDY) { - RSU_DPRINTF(sc, RSU_DEBUG_FW | RSU_DEBUG_RESET, + RSU_DPRINTF(sc, RSU_DEBUG_ANY, "%s: Firmware already loaded\n", __func__); return (0); @@ -2527,6 +2634,7 @@ rsu_load_firmware(struct rsu_softc *sc) memset(dmem, 0, sizeof(*dmem)); dmem->hci_sel = R92S_HCI_SEL_USB | R92S_HCI_SEL_8172; dmem->nendpoints = sc->sc_nendpoints; + dmem->chip_version = sc->cut; /* XXX TODO: rf_config should come from ROM */ dmem->rf_config = 0x11; /* 1T1R */ dmem->vcs_type = R92S_VCS_TYPE_AUTO; @@ -2537,6 +2645,8 @@ rsu_load_firmware(struct rsu_softc *sc) dmem->ampdu_en = !! (sc->sc_ht); dmem->agg_offload = !! (sc->sc_ht); dmem->qos_en = 1; + dmem->ps_offload = 1; + dmem->lowpower_mode = 1; /* XXX TODO: configurable? */ /* Load DMEM section. */ error = rsu_fw_loadsection(sc, (uint8_t *)dmem, sizeof(*dmem)); if (error != 0) { @@ -2613,7 +2723,6 @@ rsu_init(struct rsu_softc *sc) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); uint8_t macaddr[IEEE80211_ADDR_LEN]; - struct r92s_set_pwr_mode cmd; int error; int i; @@ -2625,6 +2734,9 @@ rsu_init(struct rsu_softc *sc) /* Init host async commands ring. */ sc->cmdq.cur = sc->cmdq.next = sc->cmdq.queued = 0; + /* Reset power management state. */ + rsu_write_1(sc, R92S_USB_HRPWM, 0); + /* Power on adapter. */ if (sc->cut == 1) rsu_power_on_acut(sc); @@ -2677,15 +2789,9 @@ rsu_init(struct rsu_softc *sc) goto fail; } - rsu_write_1(sc, R92S_USB_HRPWM, - R92S_USB_HRPWM_PS_ST_ACTIVE | R92S_USB_HRPWM_PS_ALL_ON); - /* Set PS mode fully active */ - memset(&cmd, 0, sizeof(cmd)); - cmd.mode = R92S_PS_MODE_ACTIVE; - RSU_DPRINTF(sc, RSU_DEBUG_RESET, "%s: setting ps mode to %d\n", - __func__, cmd.mode); - error = rsu_fw_cmd(sc, R92S_CMD_SET_PWR_MODE, &cmd, sizeof(cmd)); + error = rsu_set_fw_power_state(sc, RSU_PWR_ACTIVE); + if (error != 0) { device_printf(sc->sc_dev, "could not set PS mode\n"); goto fail; Modified: head/sys/dev/usb/wlan/if_rsureg.h ============================================================================== --- head/sys/dev/usb/wlan/if_rsureg.h Tue Sep 22 02:48:59 2015 (r288088) +++ head/sys/dev/usb/wlan/if_rsureg.h Tue Sep 22 02:57:18 2015 (r288089) @@ -599,6 +599,10 @@ struct r92s_add_ba_event { uint8_t tid; }; +struct r92s_add_ba_req { + uint32_t tid; +}; + /* * Driver definitions. */ From owner-svn-src-head@freebsd.org Tue Sep 22 03:02:22 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 626E2A06F8A; Tue, 22 Sep 2015 03:02:22 +0000 (UTC) (envelope-from jasone@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 511361B9E; Tue, 22 Sep 2015 03:02:22 +0000 (UTC) (envelope-from jasone@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M32MgX092965; Tue, 22 Sep 2015 03:02:22 GMT (envelope-from jasone@FreeBSD.org) Received: (from jasone@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M32JVj092954; Tue, 22 Sep 2015 03:02:19 GMT (envelope-from jasone@FreeBSD.org) Message-Id: <201509220302.t8M32JVj092954@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jasone set sender to jasone@FreeBSD.org using -f From: Jason Evans Date: Tue, 22 Sep 2015 03:02:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288090 - in head/contrib/jemalloc: . doc include/jemalloc include/jemalloc/internal src X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 03:02:22 -0000 Author: jasone Date: Tue Sep 22 03:02:18 2015 New Revision: 288090 URL: https://svnweb.freebsd.org/changeset/base/288090 Log: Update jemalloc to 4.0.2. Modified: head/contrib/jemalloc/ChangeLog head/contrib/jemalloc/FREEBSD-diffs head/contrib/jemalloc/VERSION head/contrib/jemalloc/doc/jemalloc.3 head/contrib/jemalloc/include/jemalloc/internal/arena.h head/contrib/jemalloc/include/jemalloc/internal/huge.h head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h head/contrib/jemalloc/include/jemalloc/internal/private_namespace.h head/contrib/jemalloc/include/jemalloc/internal/prof.h head/contrib/jemalloc/include/jemalloc/internal/size_classes.h head/contrib/jemalloc/include/jemalloc/internal/tcache.h head/contrib/jemalloc/include/jemalloc/internal/tsd.h head/contrib/jemalloc/include/jemalloc/jemalloc.h head/contrib/jemalloc/src/arena.c head/contrib/jemalloc/src/chunk_dss.c head/contrib/jemalloc/src/chunk_mmap.c head/contrib/jemalloc/src/huge.c head/contrib/jemalloc/src/jemalloc.c head/contrib/jemalloc/src/prof.c head/contrib/jemalloc/src/tcache.c Modified: head/contrib/jemalloc/ChangeLog ============================================================================== --- head/contrib/jemalloc/ChangeLog Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/ChangeLog Tue Sep 22 03:02:18 2015 (r288090) @@ -4,6 +4,76 @@ brevity. Much more detail can be found https://github.com/jemalloc/jemalloc +* 4.0.2 (September 21, 2015) + + This bugfix release addresses a few bugs specific to heap profiling. + + Bug fixes: + - Fix ixallocx_prof_sample() to never modify nor create sampled small + allocations. xallocx() is in general incapable of moving small allocations, + so this fix removes buggy code without loss of generality. + - Fix irallocx_prof_sample() to always allocate large regions, even when + alignment is non-zero. + - Fix prof_alloc_rollback() to read tdata from thread-specific data rather + than dereferencing a potentially invalid tctx. + +* 4.0.1 (September 15, 2015) + + This is a bugfix release that is somewhat high risk due to the amount of + refactoring required to address deep xallocx() problems. As a side effect of + these fixes, xallocx() now tries harder to partially fulfill requests for + optional extra space. Note that a couple of minor heap profiling + optimizations are included, but these are better thought of as performance + fixes that were integral to disovering most of the other bugs. + + Optimizations: + - Avoid a chunk metadata read in arena_prof_tctx_set(), since it is in the + fast path when heap profiling is enabled. Additionally, split a special + case out into arena_prof_tctx_reset(), which also avoids chunk metadata + reads. + - Optimize irallocx_prof() to optimistically update the sampler state. The + prior implementation appears to have been a holdover from when + rallocx()/xallocx() functionality was combined as rallocm(). + + Bug fixes: + - Fix TLS configuration such that it is enabled by default for platforms on + which it works correctly. + - Fix arenas_cache_cleanup() and arena_get_hard() to handle + allocation/deallocation within the application's thread-specific data + cleanup functions even after arenas_cache is torn down. + - Fix xallocx() bugs related to size+extra exceeding HUGE_MAXCLASS. + - Fix chunk purge hook calls for in-place huge shrinking reallocation to + specify the old chunk size rather than the new chunk size. This bug caused + no correctness issues for the default chunk purge function, but was + visible to custom functions set via the "arena..chunk_hooks" mallctl. + - Fix heap profiling bugs: + + Fix heap profiling to distinguish among otherwise identical sample sites + with interposed resets (triggered via the "prof.reset" mallctl). This bug + could cause data structure corruption that would most likely result in a + segfault. + + Fix irealloc_prof() to prof_alloc_rollback() on OOM. + + Make one call to prof_active_get_unlocked() per allocation event, and use + the result throughout the relevant functions that handle an allocation + event. Also add a missing check in prof_realloc(). These fixes protect + allocation events against concurrent prof_active changes. + + Fix ixallocx_prof() to pass usize_max and zero to ixallocx_prof_sample() + in the correct order. + + Fix prof_realloc() to call prof_free_sampled_object() after calling + prof_malloc_sample_object(). Prior to this fix, if tctx and old_tctx were + the same, the tctx could have been prematurely destroyed. + - Fix portability bugs: + + Don't bitshift by negative amounts when encoding/decoding run sizes in + chunk header maps. This affected systems with page sizes greater than 8 + KiB. + + Rename index_t to szind_t to avoid an existing type on Solaris. + + Add JEMALLOC_CXX_THROW to the memalign() function prototype, in order to + match glibc and avoid compilation errors when including both + jemalloc/jemalloc.h and malloc.h in C++ code. + + Don't assume that /bin/sh is appropriate when running size_classes.sh + during configuration. + + Consider __sparcv9 a synonym for __sparc64__ when defining LG_QUANTUM. + + Link tests to librt if it contains clock_gettime(2). + * 4.0.0 (August 17, 2015) This version contains many speed and space optimizations, both minor and Modified: head/contrib/jemalloc/FREEBSD-diffs ============================================================================== --- head/contrib/jemalloc/FREEBSD-diffs Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/FREEBSD-diffs Tue Sep 22 03:02:18 2015 (r288090) @@ -47,7 +47,7 @@ index 8fc774b..fdbef95 100644 + diff --git a/include/jemalloc/internal/jemalloc_internal.h.in b/include/jemalloc/internal/jemalloc_internal.h.in -index 7a137b6..b0001e9 100644 +index 8536a3e..0c2a81f 100644 --- a/include/jemalloc/internal/jemalloc_internal.h.in +++ b/include/jemalloc/internal/jemalloc_internal.h.in @@ -8,6 +8,9 @@ @@ -111,10 +111,10 @@ index f051f29..561378f 100644 #endif /* JEMALLOC_H_EXTERNS */ diff --git a/include/jemalloc/internal/private_symbols.txt b/include/jemalloc/internal/private_symbols.txt -index dbf6aa7..f87dba8 100644 +index a90021a..34904bf 100644 --- a/include/jemalloc/internal/private_symbols.txt +++ b/include/jemalloc/internal/private_symbols.txt -@@ -277,7 +277,6 @@ iralloct_realign +@@ -280,7 +280,6 @@ iralloct_realign isalloc isdalloct isqalloc @@ -282,7 +282,7 @@ index f943891..47d032c 100755 +#include "jemalloc_FreeBSD.h" EOF diff --git a/src/jemalloc.c b/src/jemalloc.c -index ed7863b..d078a1f 100644 +index 5a2d324..b6cbb79 100644 --- a/src/jemalloc.c +++ b/src/jemalloc.c @@ -4,6 +4,10 @@ @@ -296,7 +296,7 @@ index ed7863b..d078a1f 100644 /* Runtime configuration options. */ const char *je_malloc_conf JEMALLOC_ATTR(weak); bool opt_abort = -@@ -2475,6 +2479,107 @@ je_malloc_usable_size(JEMALLOC_USABLE_SIZE_CONST void *ptr) +@@ -2490,6 +2494,107 @@ je_malloc_usable_size(JEMALLOC_USABLE_SIZE_CONST void *ptr) */ /******************************************************************************/ /* @@ -404,7 +404,7 @@ index ed7863b..d078a1f 100644 * The following functions are used by threading libraries for protection of * malloc during fork(). */ -@@ -2575,4 +2680,11 @@ jemalloc_postfork_child(void) +@@ -2590,4 +2695,11 @@ jemalloc_postfork_child(void) ctl_postfork_child(); } Modified: head/contrib/jemalloc/VERSION ============================================================================== --- head/contrib/jemalloc/VERSION Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/VERSION Tue Sep 22 03:02:18 2015 (r288090) @@ -1 +1 @@ -4.0.0-0-g6e98caf8f064482b9ab292ef3638dea67420bbc2 +4.0.2-0-g486d249fb4715fd3de679b6c2a04f7e657883111 Modified: head/contrib/jemalloc/doc/jemalloc.3 ============================================================================== --- head/contrib/jemalloc/doc/jemalloc.3 Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/doc/jemalloc.3 Tue Sep 22 03:02:18 2015 (r288090) @@ -2,12 +2,12 @@ .\" Title: JEMALLOC .\" Author: Jason Evans .\" Generator: DocBook XSL Stylesheets v1.76.1 -.\" Date: 08/18/2015 +.\" Date: 09/21/2015 .\" Manual: User Manual -.\" Source: jemalloc 4.0.0-0-g6e98caf8f064482b9ab292ef3638dea67420bbc2 +.\" Source: jemalloc 4.0.2-0-g486d249fb4715fd3de679b6c2a04f7e657883111 .\" Language: English .\" -.TH "JEMALLOC" "3" "08/18/2015" "jemalloc 4.0.0-0-g6e98caf8f064" "User Manual" +.TH "JEMALLOC" "3" "09/21/2015" "jemalloc 4.0.2-0-g486d249fb471" "User Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -31,7 +31,7 @@ jemalloc \- general purpose memory allocation functions .SH "LIBRARY" .PP -This manual describes jemalloc 4\&.0\&.0\-0\-g6e98caf8f064482b9ab292ef3638dea67420bbc2\&. More information can be found at the +This manual describes jemalloc 4\&.0\&.2\-0\-g486d249fb4715fd3de679b6c2a04f7e657883111\&. More information can be found at the \m[blue]\fBjemalloc website\fR\m[]\&\s-2\u[1]\d\s+2\&. .PP The following configuration options are enabled in libc\*(Aqs built\-in jemalloc: Modified: head/contrib/jemalloc/include/jemalloc/internal/arena.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/arena.h Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/include/jemalloc/internal/arena.h Tue Sep 22 03:02:18 2015 (r288090) @@ -39,7 +39,7 @@ typedef struct arena_s arena_t; #ifdef JEMALLOC_ARENA_STRUCTS_A struct arena_run_s { /* Index of bin this run is associated with. */ - index_t binind; + szind_t binind; /* Number of free regions in run. */ unsigned nfree; @@ -424,7 +424,7 @@ extern arena_bin_info_t arena_bin_info[N extern size_t map_bias; /* Number of arena chunk header pages. */ extern size_t map_misc_offset; extern size_t arena_maxrun; /* Max run size for arenas. */ -extern size_t arena_maxclass; /* Max size class for arenas. */ +extern size_t large_maxclass; /* Max large size class. */ extern unsigned nlclasses; /* Number of large size classes. */ extern unsigned nhclasses; /* Number of huge size classes. */ @@ -448,7 +448,7 @@ bool arena_lg_dirty_mult_set(arena_t *ar void arena_maybe_purge(arena_t *arena); void arena_purge_all(arena_t *arena); void arena_tcache_fill_small(arena_t *arena, tcache_bin_t *tbin, - index_t binind, uint64_t prof_accumbytes); + szind_t binind, uint64_t prof_accumbytes); void arena_alloc_junk_small(void *ptr, arena_bin_info_t *bin_info, bool zero); #ifdef JEMALLOC_JET @@ -488,7 +488,7 @@ extern arena_ralloc_junk_large_t *arena_ bool arena_ralloc_no_move(void *ptr, size_t oldsize, size_t size, size_t extra, bool zero); void *arena_ralloc(tsd_t *tsd, arena_t *arena, void *ptr, size_t oldsize, - size_t size, size_t extra, size_t alignment, bool zero, tcache_t *tcache); + size_t size, size_t alignment, bool zero, tcache_t *tcache); dss_prec_t arena_dss_prec_get(arena_t *arena); bool arena_dss_prec_set(arena_t *arena, dss_prec_t dss_prec); ssize_t arena_lg_dirty_mult_default_get(void); @@ -519,17 +519,19 @@ arena_chunk_map_misc_t *arena_run_to_mis size_t *arena_mapbitsp_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbitsp_read(size_t *mapbitsp); size_t arena_mapbits_get(arena_chunk_t *chunk, size_t pageind); +size_t arena_mapbits_size_decode(size_t mapbits); size_t arena_mapbits_unallocated_size_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_large_size_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_small_runind_get(arena_chunk_t *chunk, size_t pageind); -index_t arena_mapbits_binind_get(arena_chunk_t *chunk, size_t pageind); +szind_t arena_mapbits_binind_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_dirty_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_unzeroed_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_decommitted_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_large_get(arena_chunk_t *chunk, size_t pageind); size_t arena_mapbits_allocated_get(arena_chunk_t *chunk, size_t pageind); void arena_mapbitsp_write(size_t *mapbitsp, size_t mapbits); +size_t arena_mapbits_size_encode(size_t size); void arena_mapbits_unallocated_set(arena_chunk_t *chunk, size_t pageind, size_t size, size_t flags); void arena_mapbits_unallocated_size_set(arena_chunk_t *chunk, size_t pageind, @@ -539,21 +541,23 @@ void arena_mapbits_internal_set(arena_ch void arena_mapbits_large_set(arena_chunk_t *chunk, size_t pageind, size_t size, size_t flags); void arena_mapbits_large_binind_set(arena_chunk_t *chunk, size_t pageind, - index_t binind); + szind_t binind); void arena_mapbits_small_set(arena_chunk_t *chunk, size_t pageind, - size_t runind, index_t binind, size_t flags); + size_t runind, szind_t binind, size_t flags); void arena_metadata_allocated_add(arena_t *arena, size_t size); void arena_metadata_allocated_sub(arena_t *arena, size_t size); size_t arena_metadata_allocated_get(arena_t *arena); bool arena_prof_accum_impl(arena_t *arena, uint64_t accumbytes); bool arena_prof_accum_locked(arena_t *arena, uint64_t accumbytes); bool arena_prof_accum(arena_t *arena, uint64_t accumbytes); -index_t arena_ptr_small_binind_get(const void *ptr, size_t mapbits); -index_t arena_bin_index(arena_t *arena, arena_bin_t *bin); +szind_t arena_ptr_small_binind_get(const void *ptr, size_t mapbits); +szind_t arena_bin_index(arena_t *arena, arena_bin_t *bin); unsigned arena_run_regind(arena_run_t *run, arena_bin_info_t *bin_info, const void *ptr); prof_tctx_t *arena_prof_tctx_get(const void *ptr); -void arena_prof_tctx_set(const void *ptr, prof_tctx_t *tctx); +void arena_prof_tctx_set(const void *ptr, size_t usize, prof_tctx_t *tctx); +void arena_prof_tctx_reset(const void *ptr, size_t usize, + const void *old_ptr, prof_tctx_t *old_tctx); void *arena_malloc(tsd_t *tsd, arena_t *arena, size_t size, bool zero, tcache_t *tcache); arena_t *arena_aalloc(const void *ptr); @@ -653,13 +657,29 @@ arena_mapbits_get(arena_chunk_t *chunk, } JEMALLOC_ALWAYS_INLINE size_t +arena_mapbits_size_decode(size_t mapbits) +{ + size_t size; + +#if CHUNK_MAP_SIZE_SHIFT > 0 + size = (mapbits & CHUNK_MAP_SIZE_MASK) >> CHUNK_MAP_SIZE_SHIFT; +#elif CHUNK_MAP_SIZE_SHIFT == 0 + size = mapbits & CHUNK_MAP_SIZE_MASK; +#else + size = (mapbits & CHUNK_MAP_SIZE_MASK) << -CHUNK_MAP_SIZE_SHIFT; +#endif + + return (size); +} + +JEMALLOC_ALWAYS_INLINE size_t arena_mapbits_unallocated_size_get(arena_chunk_t *chunk, size_t pageind) { size_t mapbits; mapbits = arena_mapbits_get(chunk, pageind); assert((mapbits & (CHUNK_MAP_LARGE|CHUNK_MAP_ALLOCATED)) == 0); - return ((mapbits & CHUNK_MAP_SIZE_MASK) >> CHUNK_MAP_SIZE_SHIFT); + return (arena_mapbits_size_decode(mapbits)); } JEMALLOC_ALWAYS_INLINE size_t @@ -670,7 +690,7 @@ arena_mapbits_large_size_get(arena_chunk mapbits = arena_mapbits_get(chunk, pageind); assert((mapbits & (CHUNK_MAP_LARGE|CHUNK_MAP_ALLOCATED)) == (CHUNK_MAP_LARGE|CHUNK_MAP_ALLOCATED)); - return ((mapbits & CHUNK_MAP_SIZE_MASK) >> CHUNK_MAP_SIZE_SHIFT); + return (arena_mapbits_size_decode(mapbits)); } JEMALLOC_ALWAYS_INLINE size_t @@ -684,11 +704,11 @@ arena_mapbits_small_runind_get(arena_chu return (mapbits >> CHUNK_MAP_RUNIND_SHIFT); } -JEMALLOC_ALWAYS_INLINE index_t +JEMALLOC_ALWAYS_INLINE szind_t arena_mapbits_binind_get(arena_chunk_t *chunk, size_t pageind) { size_t mapbits; - index_t binind; + szind_t binind; mapbits = arena_mapbits_get(chunk, pageind); binind = (mapbits & CHUNK_MAP_BININD_MASK) >> CHUNK_MAP_BININD_SHIFT; @@ -754,6 +774,23 @@ arena_mapbitsp_write(size_t *mapbitsp, s *mapbitsp = mapbits; } +JEMALLOC_ALWAYS_INLINE size_t +arena_mapbits_size_encode(size_t size) +{ + size_t mapbits; + +#if CHUNK_MAP_SIZE_SHIFT > 0 + mapbits = size << CHUNK_MAP_SIZE_SHIFT; +#elif CHUNK_MAP_SIZE_SHIFT == 0 + mapbits = size; +#else + mapbits = size >> -CHUNK_MAP_SIZE_SHIFT; +#endif + + assert((mapbits & ~CHUNK_MAP_SIZE_MASK) == 0); + return (mapbits); +} + JEMALLOC_ALWAYS_INLINE void arena_mapbits_unallocated_set(arena_chunk_t *chunk, size_t pageind, size_t size, size_t flags) @@ -761,11 +798,10 @@ arena_mapbits_unallocated_set(arena_chun size_t *mapbitsp = arena_mapbitsp_get(chunk, pageind); assert((size & PAGE_MASK) == 0); - assert(((size << CHUNK_MAP_SIZE_SHIFT) & ~CHUNK_MAP_SIZE_MASK) == 0); assert((flags & CHUNK_MAP_FLAGS_MASK) == flags); assert((flags & CHUNK_MAP_DECOMMITTED) == 0 || (flags & (CHUNK_MAP_DIRTY|CHUNK_MAP_UNZEROED)) == 0); - arena_mapbitsp_write(mapbitsp, (size << CHUNK_MAP_SIZE_SHIFT) | + arena_mapbitsp_write(mapbitsp, arena_mapbits_size_encode(size) | CHUNK_MAP_BININD_INVALID | flags); } @@ -777,10 +813,9 @@ arena_mapbits_unallocated_size_set(arena size_t mapbits = arena_mapbitsp_read(mapbitsp); assert((size & PAGE_MASK) == 0); - assert(((size << CHUNK_MAP_SIZE_SHIFT) & ~CHUNK_MAP_SIZE_MASK) == 0); assert((mapbits & (CHUNK_MAP_LARGE|CHUNK_MAP_ALLOCATED)) == 0); - arena_mapbitsp_write(mapbitsp, (size << CHUNK_MAP_SIZE_SHIFT) | (mapbits - & ~CHUNK_MAP_SIZE_MASK)); + arena_mapbitsp_write(mapbitsp, arena_mapbits_size_encode(size) | + (mapbits & ~CHUNK_MAP_SIZE_MASK)); } JEMALLOC_ALWAYS_INLINE void @@ -799,18 +834,17 @@ arena_mapbits_large_set(arena_chunk_t *c size_t *mapbitsp = arena_mapbitsp_get(chunk, pageind); assert((size & PAGE_MASK) == 0); - assert(((size << CHUNK_MAP_SIZE_SHIFT) & ~CHUNK_MAP_SIZE_MASK) == 0); assert((flags & CHUNK_MAP_FLAGS_MASK) == flags); assert((flags & CHUNK_MAP_DECOMMITTED) == 0 || (flags & (CHUNK_MAP_DIRTY|CHUNK_MAP_UNZEROED)) == 0); - arena_mapbitsp_write(mapbitsp, (size << CHUNK_MAP_SIZE_SHIFT) | + arena_mapbitsp_write(mapbitsp, arena_mapbits_size_encode(size) | CHUNK_MAP_BININD_INVALID | flags | CHUNK_MAP_LARGE | CHUNK_MAP_ALLOCATED); } JEMALLOC_ALWAYS_INLINE void arena_mapbits_large_binind_set(arena_chunk_t *chunk, size_t pageind, - index_t binind) + szind_t binind) { size_t *mapbitsp = arena_mapbitsp_get(chunk, pageind); size_t mapbits = arena_mapbitsp_read(mapbitsp); @@ -824,7 +858,7 @@ arena_mapbits_large_binind_set(arena_chu JEMALLOC_ALWAYS_INLINE void arena_mapbits_small_set(arena_chunk_t *chunk, size_t pageind, size_t runind, - index_t binind, size_t flags) + szind_t binind, size_t flags) { size_t *mapbitsp = arena_mapbitsp_get(chunk, pageind); @@ -901,10 +935,10 @@ arena_prof_accum(arena_t *arena, uint64_ } } -JEMALLOC_ALWAYS_INLINE index_t +JEMALLOC_ALWAYS_INLINE szind_t arena_ptr_small_binind_get(const void *ptr, size_t mapbits) { - index_t binind; + szind_t binind; binind = (mapbits & CHUNK_MAP_BININD_MASK) >> CHUNK_MAP_BININD_SHIFT; @@ -916,7 +950,7 @@ arena_ptr_small_binind_get(const void *p size_t rpages_ind; arena_run_t *run; arena_bin_t *bin; - index_t run_binind, actual_binind; + szind_t run_binind, actual_binind; arena_bin_info_t *bin_info; arena_chunk_map_misc_t *miscelm; void *rpages; @@ -950,10 +984,10 @@ arena_ptr_small_binind_get(const void *p # endif /* JEMALLOC_ARENA_INLINE_A */ # ifdef JEMALLOC_ARENA_INLINE_B -JEMALLOC_INLINE index_t +JEMALLOC_INLINE szind_t arena_bin_index(arena_t *arena, arena_bin_t *bin) { - index_t binind = bin - arena->bins; + szind_t binind = bin - arena->bins; assert(binind < NBINS); return (binind); } @@ -1060,7 +1094,7 @@ arena_prof_tctx_get(const void *ptr) } JEMALLOC_INLINE void -arena_prof_tctx_set(const void *ptr, prof_tctx_t *tctx) +arena_prof_tctx_set(const void *ptr, size_t usize, prof_tctx_t *tctx) { arena_chunk_t *chunk; @@ -1070,17 +1104,59 @@ arena_prof_tctx_set(const void *ptr, pro chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); if (likely(chunk != ptr)) { size_t pageind = ((uintptr_t)ptr - (uintptr_t)chunk) >> LG_PAGE; + assert(arena_mapbits_allocated_get(chunk, pageind) != 0); - if (unlikely(arena_mapbits_large_get(chunk, pageind) != 0)) { - arena_chunk_map_misc_t *elm = arena_miscelm_get(chunk, - pageind); + if (unlikely(usize > SMALL_MAXCLASS || (uintptr_t)tctx > + (uintptr_t)1U)) { + arena_chunk_map_misc_t *elm; + + assert(arena_mapbits_large_get(chunk, pageind) != 0); + + elm = arena_miscelm_get(chunk, pageind); atomic_write_p(&elm->prof_tctx_pun, tctx); + } else { + /* + * tctx must always be initialized for large runs. + * Assert that the surrounding conditional logic is + * equivalent to checking whether ptr refers to a large + * run. + */ + assert(arena_mapbits_large_get(chunk, pageind) == 0); } } else huge_prof_tctx_set(ptr, tctx); } +JEMALLOC_INLINE void +arena_prof_tctx_reset(const void *ptr, size_t usize, const void *old_ptr, + prof_tctx_t *old_tctx) +{ + + cassert(config_prof); + assert(ptr != NULL); + + if (unlikely(usize > SMALL_MAXCLASS || (ptr == old_ptr && + (uintptr_t)old_tctx > (uintptr_t)1U))) { + arena_chunk_t *chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(ptr); + if (likely(chunk != ptr)) { + size_t pageind; + arena_chunk_map_misc_t *elm; + + pageind = ((uintptr_t)ptr - (uintptr_t)chunk) >> + LG_PAGE; + assert(arena_mapbits_allocated_get(chunk, pageind) != + 0); + assert(arena_mapbits_large_get(chunk, pageind) != 0); + + elm = arena_miscelm_get(chunk, pageind); + atomic_write_p(&elm->prof_tctx_pun, + (prof_tctx_t *)(uintptr_t)1U); + } else + huge_prof_tctx_reset(ptr); + } +} + JEMALLOC_ALWAYS_INLINE void * arena_malloc(tsd_t *tsd, arena_t *arena, size_t size, bool zero, tcache_t *tcache) @@ -1098,7 +1174,7 @@ arena_malloc(tsd_t *tsd, arena_t *arena, zero)); } else return (arena_malloc_small(arena, size, zero)); - } else if (likely(size <= arena_maxclass)) { + } else if (likely(size <= large_maxclass)) { /* * Initialize tcache after checking size in order to avoid * infinite recursion during tcache initialization. @@ -1131,7 +1207,7 @@ arena_salloc(const void *ptr, bool demot size_t ret; arena_chunk_t *chunk; size_t pageind; - index_t binind; + szind_t binind; assert(ptr != NULL); @@ -1190,7 +1266,7 @@ arena_dalloc(tsd_t *tsd, void *ptr, tcac if (likely((mapbits & CHUNK_MAP_LARGE) == 0)) { /* Small allocation. */ if (likely(tcache != NULL)) { - index_t binind = arena_ptr_small_binind_get(ptr, + szind_t binind = arena_ptr_small_binind_get(ptr, mapbits); tcache_dalloc_small(tsd, tcache, ptr, binind); } else { @@ -1242,7 +1318,7 @@ arena_sdalloc(tsd_t *tsd, void *ptr, siz if (likely(size <= SMALL_MAXCLASS)) { /* Small allocation. */ if (likely(tcache != NULL)) { - index_t binind = size2index(size); + szind_t binind = size2index(size); tcache_dalloc_small(tsd, tcache, ptr, binind); } else { size_t pageind = ((uintptr_t)ptr - Modified: head/contrib/jemalloc/include/jemalloc/internal/huge.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/huge.h Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/include/jemalloc/internal/huge.h Tue Sep 22 03:02:18 2015 (r288090) @@ -13,11 +13,10 @@ void *huge_malloc(tsd_t *tsd, arena_t *a tcache_t *tcache); void *huge_palloc(tsd_t *tsd, arena_t *arena, size_t size, size_t alignment, bool zero, tcache_t *tcache); -bool huge_ralloc_no_move(void *ptr, size_t oldsize, size_t size, - size_t extra, bool zero); +bool huge_ralloc_no_move(void *ptr, size_t oldsize, size_t usize_min, + size_t usize_max, bool zero); void *huge_ralloc(tsd_t *tsd, arena_t *arena, void *ptr, size_t oldsize, - size_t size, size_t extra, size_t alignment, bool zero, - tcache_t *tcache); + size_t usize, size_t alignment, bool zero, tcache_t *tcache); #ifdef JEMALLOC_JET typedef void (huge_dalloc_junk_t)(void *, size_t); extern huge_dalloc_junk_t *huge_dalloc_junk; @@ -27,6 +26,7 @@ arena_t *huge_aalloc(const void *ptr); size_t huge_salloc(const void *ptr); prof_tctx_t *huge_prof_tctx_get(const void *ptr); void huge_prof_tctx_set(const void *ptr, prof_tctx_t *tctx); +void huge_prof_tctx_reset(const void *ptr); #endif /* JEMALLOC_H_EXTERNS */ /******************************************************************************/ Modified: head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h Tue Sep 22 03:02:18 2015 (r288090) @@ -181,7 +181,7 @@ static const bool config_cache_oblivious #include "jemalloc/internal/jemalloc_internal_macros.h" /* Size class index type. */ -typedef unsigned index_t; +typedef unsigned szind_t; /* * Flags bits: @@ -229,7 +229,7 @@ typedef unsigned index_t; # ifdef __alpha__ # define LG_QUANTUM 4 # endif -# ifdef __sparc64__ +# if (defined(__sparc64__) || defined(__sparcv9)) # define LG_QUANTUM 4 # endif # if (defined(__amd64__) || defined(__x86_64__) || defined(_M_X64)) @@ -508,12 +508,12 @@ void jemalloc_postfork_child(void); #include "jemalloc/internal/huge.h" #ifndef JEMALLOC_ENABLE_INLINE -index_t size2index_compute(size_t size); -index_t size2index_lookup(size_t size); -index_t size2index(size_t size); -size_t index2size_compute(index_t index); -size_t index2size_lookup(index_t index); -size_t index2size(index_t index); +szind_t size2index_compute(size_t size); +szind_t size2index_lookup(size_t size); +szind_t size2index(size_t size); +size_t index2size_compute(szind_t index); +size_t index2size_lookup(szind_t index); +size_t index2size(szind_t index); size_t s2u_compute(size_t size); size_t s2u_lookup(size_t size); size_t s2u(size_t size); @@ -524,7 +524,7 @@ arena_t *arena_get(tsd_t *tsd, unsigned #endif #if (defined(JEMALLOC_ENABLE_INLINE) || defined(JEMALLOC_C_)) -JEMALLOC_INLINE index_t +JEMALLOC_INLINE szind_t size2index_compute(size_t size) { @@ -555,7 +555,7 @@ size2index_compute(size_t size) } } -JEMALLOC_ALWAYS_INLINE index_t +JEMALLOC_ALWAYS_INLINE szind_t size2index_lookup(size_t size) { @@ -568,7 +568,7 @@ size2index_lookup(size_t size) } } -JEMALLOC_ALWAYS_INLINE index_t +JEMALLOC_ALWAYS_INLINE szind_t size2index(size_t size) { @@ -579,7 +579,7 @@ size2index(size_t size) } JEMALLOC_INLINE size_t -index2size_compute(index_t index) +index2size_compute(szind_t index) { #if (NTBINS > 0) @@ -606,7 +606,7 @@ index2size_compute(index_t index) } JEMALLOC_ALWAYS_INLINE size_t -index2size_lookup(index_t index) +index2size_lookup(szind_t index) { size_t ret = (size_t)index2size_tab[index]; assert(ret == index2size_compute(index)); @@ -614,7 +614,7 @@ index2size_lookup(index_t index) } JEMALLOC_ALWAYS_INLINE size_t -index2size(index_t index) +index2size(szind_t index) { assert(index < NSIZES); @@ -702,7 +702,7 @@ sa2u(size_t size, size_t alignment) } /* Try for a large size class. */ - if (likely(size <= arena_maxclass) && likely(alignment < chunksize)) { + if (likely(size <= large_maxclass) && likely(alignment < chunksize)) { /* * We can't achieve subpage alignment, so round up alignment * to the minimum that can actually be supported. @@ -973,7 +973,7 @@ u2rz(size_t usize) size_t ret; if (usize <= SMALL_MAXCLASS) { - index_t binind = size2index(usize); + szind_t binind = size2index(usize); ret = arena_bin_info[binind].redzone_size; } else ret = 0; @@ -1093,7 +1093,7 @@ iralloct(tsd_t *tsd, void *ptr, size_t o zero, tcache, arena)); } - return (arena_ralloc(tsd, arena, ptr, oldsize, size, 0, alignment, zero, + return (arena_ralloc(tsd, arena, ptr, oldsize, size, alignment, zero, tcache)); } Modified: head/contrib/jemalloc/include/jemalloc/internal/private_namespace.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/private_namespace.h Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/include/jemalloc/internal/private_namespace.h Tue Sep 22 03:02:18 2015 (r288090) @@ -50,13 +50,14 @@ #define arena_mapbitsp_get JEMALLOC_N(arena_mapbitsp_get) #define arena_mapbitsp_read JEMALLOC_N(arena_mapbitsp_read) #define arena_mapbitsp_write JEMALLOC_N(arena_mapbitsp_write) +#define arena_mapbits_size_decode JEMALLOC_N(arena_mapbits_size_decode) +#define arena_mapbits_size_encode JEMALLOC_N(arena_mapbits_size_encode) #define arena_mapbits_small_runind_get JEMALLOC_N(arena_mapbits_small_runind_get) #define arena_mapbits_small_set JEMALLOC_N(arena_mapbits_small_set) #define arena_mapbits_unallocated_set JEMALLOC_N(arena_mapbits_unallocated_set) #define arena_mapbits_unallocated_size_get JEMALLOC_N(arena_mapbits_unallocated_size_get) #define arena_mapbits_unallocated_size_set JEMALLOC_N(arena_mapbits_unallocated_size_set) #define arena_mapbits_unzeroed_get JEMALLOC_N(arena_mapbits_unzeroed_get) -#define arena_maxclass JEMALLOC_N(arena_maxclass) #define arena_maxrun JEMALLOC_N(arena_maxrun) #define arena_maybe_purge JEMALLOC_N(arena_maybe_purge) #define arena_metadata_allocated_add JEMALLOC_N(arena_metadata_allocated_add) @@ -79,6 +80,7 @@ #define arena_prof_accum_locked JEMALLOC_N(arena_prof_accum_locked) #define arena_prof_promoted JEMALLOC_N(arena_prof_promoted) #define arena_prof_tctx_get JEMALLOC_N(arena_prof_tctx_get) +#define arena_prof_tctx_reset JEMALLOC_N(arena_prof_tctx_reset) #define arena_prof_tctx_set JEMALLOC_N(arena_prof_tctx_set) #define arena_ptr_small_binind_get JEMALLOC_N(arena_ptr_small_binind_get) #define arena_purge_all JEMALLOC_N(arena_purge_all) @@ -249,6 +251,7 @@ #define huge_malloc JEMALLOC_N(huge_malloc) #define huge_palloc JEMALLOC_N(huge_palloc) #define huge_prof_tctx_get JEMALLOC_N(huge_prof_tctx_get) +#define huge_prof_tctx_reset JEMALLOC_N(huge_prof_tctx_reset) #define huge_prof_tctx_set JEMALLOC_N(huge_prof_tctx_set) #define huge_ralloc JEMALLOC_N(huge_ralloc) #define huge_ralloc_no_move JEMALLOC_N(huge_ralloc_no_move) @@ -282,6 +285,7 @@ #define jemalloc_postfork_child JEMALLOC_N(jemalloc_postfork_child) #define jemalloc_postfork_parent JEMALLOC_N(jemalloc_postfork_parent) #define jemalloc_prefork JEMALLOC_N(jemalloc_prefork) +#define large_maxclass JEMALLOC_N(large_maxclass) #define lg_floor JEMALLOC_N(lg_floor) #define malloc_cprintf JEMALLOC_N(malloc_cprintf) #define malloc_mutex_init JEMALLOC_N(malloc_mutex_init) @@ -376,6 +380,7 @@ #define prof_sample_accum_update JEMALLOC_N(prof_sample_accum_update) #define prof_sample_threshold_update JEMALLOC_N(prof_sample_threshold_update) #define prof_tctx_get JEMALLOC_N(prof_tctx_get) +#define prof_tctx_reset JEMALLOC_N(prof_tctx_reset) #define prof_tctx_set JEMALLOC_N(prof_tctx_set) #define prof_tdata_cleanup JEMALLOC_N(prof_tdata_cleanup) #define prof_tdata_get JEMALLOC_N(prof_tdata_get) Modified: head/contrib/jemalloc/include/jemalloc/internal/prof.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/prof.h Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/include/jemalloc/internal/prof.h Tue Sep 22 03:02:18 2015 (r288090) @@ -90,10 +90,11 @@ struct prof_tctx_s { prof_tdata_t *tdata; /* - * Copy of tdata->thr_uid, necessary because tdata may be defunct during - * teardown. + * Copy of tdata->thr_{uid,discrim}, necessary because tdata may be + * defunct during teardown. */ uint64_t thr_uid; + uint64_t thr_discrim; /* Profiling counters, protected by tdata->lock. */ prof_cnt_t cnts; @@ -330,14 +331,18 @@ bool prof_gdump_get_unlocked(void); prof_tdata_t *prof_tdata_get(tsd_t *tsd, bool create); bool prof_sample_accum_update(tsd_t *tsd, size_t usize, bool commit, prof_tdata_t **tdata_out); -prof_tctx_t *prof_alloc_prep(tsd_t *tsd, size_t usize, bool update); +prof_tctx_t *prof_alloc_prep(tsd_t *tsd, size_t usize, bool prof_active, + bool update); prof_tctx_t *prof_tctx_get(const void *ptr); -void prof_tctx_set(const void *ptr, prof_tctx_t *tctx); +void prof_tctx_set(const void *ptr, size_t usize, prof_tctx_t *tctx); +void prof_tctx_reset(const void *ptr, size_t usize, const void *old_ptr, + prof_tctx_t *tctx); void prof_malloc_sample_object(const void *ptr, size_t usize, prof_tctx_t *tctx); void prof_malloc(const void *ptr, size_t usize, prof_tctx_t *tctx); void prof_realloc(tsd_t *tsd, const void *ptr, size_t usize, - prof_tctx_t *tctx, bool updated, size_t old_usize, prof_tctx_t *old_tctx); + prof_tctx_t *tctx, bool prof_active, bool updated, const void *old_ptr, + size_t old_usize, prof_tctx_t *old_tctx); void prof_free(tsd_t *tsd, const void *ptr, size_t usize); #endif @@ -402,13 +407,24 @@ prof_tctx_get(const void *ptr) } JEMALLOC_ALWAYS_INLINE void -prof_tctx_set(const void *ptr, prof_tctx_t *tctx) +prof_tctx_set(const void *ptr, size_t usize, prof_tctx_t *tctx) { cassert(config_prof); assert(ptr != NULL); - arena_prof_tctx_set(ptr, tctx); + arena_prof_tctx_set(ptr, usize, tctx); +} + +JEMALLOC_ALWAYS_INLINE void +prof_tctx_reset(const void *ptr, size_t usize, const void *old_ptr, + prof_tctx_t *old_tctx) +{ + + cassert(config_prof); + assert(ptr != NULL); + + arena_prof_tctx_reset(ptr, usize, old_ptr, old_tctx); } JEMALLOC_ALWAYS_INLINE bool @@ -442,7 +458,7 @@ prof_sample_accum_update(tsd_t *tsd, siz } JEMALLOC_ALWAYS_INLINE prof_tctx_t * -prof_alloc_prep(tsd_t *tsd, size_t usize, bool update) +prof_alloc_prep(tsd_t *tsd, size_t usize, bool prof_active, bool update) { prof_tctx_t *ret; prof_tdata_t *tdata; @@ -450,8 +466,8 @@ prof_alloc_prep(tsd_t *tsd, size_t usize assert(usize == s2u(usize)); - if (!prof_active_get_unlocked() || likely(prof_sample_accum_update(tsd, - usize, update, &tdata))) + if (!prof_active || likely(prof_sample_accum_update(tsd, usize, update, + &tdata))) ret = (prof_tctx_t *)(uintptr_t)1U; else { bt_init(&bt, tdata->vec); @@ -473,22 +489,24 @@ prof_malloc(const void *ptr, size_t usiz if (unlikely((uintptr_t)tctx > (uintptr_t)1U)) prof_malloc_sample_object(ptr, usize, tctx); else - prof_tctx_set(ptr, (prof_tctx_t *)(uintptr_t)1U); + prof_tctx_set(ptr, usize, (prof_tctx_t *)(uintptr_t)1U); } JEMALLOC_ALWAYS_INLINE void prof_realloc(tsd_t *tsd, const void *ptr, size_t usize, prof_tctx_t *tctx, - bool updated, size_t old_usize, prof_tctx_t *old_tctx) + bool prof_active, bool updated, const void *old_ptr, size_t old_usize, + prof_tctx_t *old_tctx) { + bool sampled, old_sampled; cassert(config_prof); assert(ptr != NULL || (uintptr_t)tctx <= (uintptr_t)1U); - if (!updated && ptr != NULL) { + if (prof_active && !updated && ptr != NULL) { assert(usize == isalloc(ptr, true)); if (prof_sample_accum_update(tsd, usize, true, NULL)) { /* - * Don't sample. The usize passed to PROF_ALLOC_PREP() + * Don't sample. The usize passed to prof_alloc_prep() * was larger than what actually got allocated, so a * backtrace was captured for this allocation, even * though its actual usize was insufficient to cross the @@ -498,12 +516,16 @@ prof_realloc(tsd_t *tsd, const void *ptr } } - if (unlikely((uintptr_t)old_tctx > (uintptr_t)1U)) - prof_free_sampled_object(tsd, old_usize, old_tctx); - if (unlikely((uintptr_t)tctx > (uintptr_t)1U)) + sampled = ((uintptr_t)tctx > (uintptr_t)1U); + old_sampled = ((uintptr_t)old_tctx > (uintptr_t)1U); + + if (unlikely(sampled)) prof_malloc_sample_object(ptr, usize, tctx); else - prof_tctx_set(ptr, (prof_tctx_t *)(uintptr_t)1U); + prof_tctx_reset(ptr, usize, old_ptr, old_tctx); + + if (unlikely(old_sampled)) + prof_free_sampled_object(tsd, old_usize, old_tctx); } JEMALLOC_ALWAYS_INLINE void Modified: head/contrib/jemalloc/include/jemalloc/internal/size_classes.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/size_classes.h Tue Sep 22 02:57:18 2015 (r288089) +++ head/contrib/jemalloc/include/jemalloc/internal/size_classes.h Tue Sep 22 03:02:18 2015 (r288090) @@ -25,6 +25,7 @@ * LOOKUP_MAXCLASS: Maximum size class included in lookup table. * SMALL_MAXCLASS: Maximum small size class. * LG_LARGE_MINCLASS: Lg of minimum large size class. + * HUGE_MAXCLASS: Maximum (huge) size class. */ #define LG_SIZE_CLASS_GROUP 2 @@ -180,6 +181,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) #define LG_LARGE_MINCLASS 14 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 13) @@ -333,6 +335,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) #define LG_LARGE_MINCLASS 15 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 14) @@ -486,6 +489,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) #define LG_LARGE_MINCLASS 16 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 16) @@ -639,6 +643,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) #define LG_LARGE_MINCLASS 18 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 12) @@ -789,6 +794,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) #define LG_LARGE_MINCLASS 14 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 13) @@ -939,6 +945,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) #define LG_LARGE_MINCLASS 15 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 14) @@ -1089,6 +1096,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) #define LG_LARGE_MINCLASS 16 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 16) @@ -1239,6 +1247,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) #define LG_LARGE_MINCLASS 18 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 12) @@ -1387,6 +1396,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) #define LG_LARGE_MINCLASS 14 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 13) @@ -1535,6 +1545,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) #define LG_LARGE_MINCLASS 15 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 14) @@ -1683,6 +1694,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) #define LG_LARGE_MINCLASS 16 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 2 && LG_TINY_MIN == 4 && LG_QUANTUM == 4 && LG_PAGE == 16) @@ -1831,6 +1843,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) #define LG_LARGE_MINCLASS 18 +#define HUGE_MAXCLASS ((((size_t)1) << 31) + (((size_t)3) << 29)) #endif #if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 12) @@ -2144,6 +2157,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) #define LG_LARGE_MINCLASS 14 +#define HUGE_MAXCLASS ((((size_t)1) << 63) + (((size_t)3) << 61)) #endif #if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 13) @@ -2457,6 +2471,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 14) + (((size_t)3) << 12)) #define LG_LARGE_MINCLASS 15 +#define HUGE_MAXCLASS ((((size_t)1) << 63) + (((size_t)3) << 61)) #endif #if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 14) @@ -2770,6 +2785,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 15) + (((size_t)3) << 13)) #define LG_LARGE_MINCLASS 16 +#define HUGE_MAXCLASS ((((size_t)1) << 63) + (((size_t)3) << 61)) #endif #if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 3 && LG_PAGE == 16) @@ -3083,6 +3099,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 17) + (((size_t)3) << 15)) #define LG_LARGE_MINCLASS 18 +#define HUGE_MAXCLASS ((((size_t)1) << 63) + (((size_t)3) << 61)) #endif #if (LG_SIZEOF_PTR == 3 && LG_TINY_MIN == 3 && LG_QUANTUM == 4 && LG_PAGE == 12) @@ -3393,6 +3410,7 @@ #define LOOKUP_MAXCLASS ((((size_t)1) << 11) + (((size_t)4) << 9)) #define SMALL_MAXCLASS ((((size_t)1) << 13) + (((size_t)3) << 11)) #define LG_LARGE_MINCLASS 14 +#define HUGE_MAXCLASS ((((size_t)1) << 63) + (((size_t)3) << 61)) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Tue Sep 22 03:34:08 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 86755A02181; Tue, 22 Sep 2015 03:34:08 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 774271976; Tue, 22 Sep 2015 03:34:08 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M3Y8qR005222; Tue, 22 Sep 2015 03:34:08 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M3Y8bJ005221; Tue, 22 Sep 2015 03:34:08 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509220334.t8M3Y8bJ005221@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Tue, 22 Sep 2015 03:34:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288091 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 03:34:08 -0000 Author: bdrewery Date: Tue Sep 22 03:34:07 2015 New Revision: 288091 URL: https://svnweb.freebsd.org/changeset/base/288091 Log: vfs_mountroot_shuffle() never returns non-zero. Modified: head/sys/kern/vfs_mountroot.c Modified: head/sys/kern/vfs_mountroot.c ============================================================================== --- head/sys/kern/vfs_mountroot.c Tue Sep 22 03:02:18 2015 (r288090) +++ head/sys/kern/vfs_mountroot.c Tue Sep 22 03:34:07 2015 (r288091) @@ -262,7 +262,7 @@ vfs_mountroot_devfs(struct thread *td, s return (error); } -static int +static void vfs_mountroot_shuffle(struct thread *td, struct mount *mpdevfs) { struct nameidata nd; @@ -373,8 +373,6 @@ vfs_mountroot_shuffle(struct thread *td, printf("mountroot: unable to unlink /dev/dev " "(error %d)\n", error); } - - return (0); } /* @@ -972,12 +970,10 @@ vfs_mountroot(void) while (!error) { error = vfs_mountroot_parse(sb, mp); if (!error) { - error = vfs_mountroot_shuffle(td, mp); - if (!error) { - sbuf_clear(sb); - error = vfs_mountroot_readconf(td, sb); - sbuf_finish(sb); - } + vfs_mountroot_shuffle(td, mp); + sbuf_clear(sb); + error = vfs_mountroot_readconf(td, sb); + sbuf_finish(sb); } } From owner-svn-src-head@freebsd.org Tue Sep 22 04:55:29 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 76758A02190; Tue, 22 Sep 2015 04:55:29 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6738E17D0; Tue, 22 Sep 2015 04:55:29 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M4tTnX037859; Tue, 22 Sep 2015 04:55:29 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M4tTe8037858; Tue, 22 Sep 2015 04:55:29 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509220455.t8M4tTe8037858@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Tue, 22 Sep 2015 04:55:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288092 - head/lib/libc/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 04:55:29 -0000 Author: bdrewery Date: Tue Sep 22 04:55:28 2015 New Revision: 288092 URL: https://svnweb.freebsd.org/changeset/base/288092 Log: Avoid adding duplicates into OBJS. bsd.lib.mk already handles adding entries to OBJS based on SRCS. MFC after: 1 week Sponsored by: EMC / Isilon Storage Division Modified: head/lib/libc/sys/Makefile.inc Modified: head/lib/libc/sys/Makefile.inc ============================================================================== --- head/lib/libc/sys/Makefile.inc Tue Sep 22 03:34:07 2015 (r288091) +++ head/lib/libc/sys/Makefile.inc Tue Sep 22 04:55:28 2015 (r288092) @@ -90,8 +90,6 @@ ASM+=$(_asm) .endif .endfor -OBJS+= ${ASM} ${PSEUDO} - SASM= ${ASM:S/.o/.S/} SPSEUDO= ${PSEUDO:S/.o/.S/} From owner-svn-src-head@freebsd.org Tue Sep 22 05:05:54 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ABDD3A027B7; Tue, 22 Sep 2015 05:05:54 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9C2891BF1; Tue, 22 Sep 2015 05:05:54 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M55sGl041915; Tue, 22 Sep 2015 05:05:54 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M55sAJ041914; Tue, 22 Sep 2015 05:05:54 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509220505.t8M55sAJ041914@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Tue, 22 Sep 2015 05:05:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288093 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 05:05:54 -0000 Author: bdrewery Date: Tue Sep 22 05:05:53 2015 New Revision: 288093 URL: https://svnweb.freebsd.org/changeset/base/288093 Log: bsd.lib.mk: Simplify CLEANFILES handling. This limits CLEANFILES removal to just bsd.obj.mk now and removes the need for NOPATH_FILES. This reverts r96529 which was done due to the command line being too long for libc. Since then all architectures now use 256k for ARG_MAX (r170102). Regardless of that, the libc CLEANFILES is only 72k now. Others may be larger but not likely to hit the limit. If needed, we can improve the bsd.obj.mk clean: target to split up the list via bmake features. This also removes some workarounds that are no longer needed. - a.out removal - OBJS.tmp, which has not been needed since r117080. - *.so, which has not been needed since a .so->.So rename in r42450. This also fixes STATICOBJS and SHLIB_LINK not being in the .NOPATH list. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.lib.mk Modified: head/share/mk/bsd.lib.mk ============================================================================== --- head/share/mk/bsd.lib.mk Tue Sep 22 04:55:28 2015 (r288092) +++ head/share/mk/bsd.lib.mk Tue Sep 22 05:05:53 2015 (r288093) @@ -162,7 +162,7 @@ LDFLAGS+= -Wl,--version-script=${VERSION .if defined(LIB) && !empty(LIB) || defined(SHLIB_NAME) OBJS+= ${SRCS:N*.h:R:S/$/.o/} -NOPATH_FILES+= ${OBJS} +CLEANFILES+= ${OBJS} ${STATICOBJS} .endif .if defined(LIB) && !empty(LIB) @@ -180,7 +180,7 @@ lib${LIB_PRIVATE}${LIB}.a: ${OBJS} ${STA .if ${MK_PROFILE} != "no" && defined(LIB) && !empty(LIB) _LIBS+= lib${LIB_PRIVATE}${LIB}_p.a POBJS+= ${OBJS:.o=.po} ${STATICOBJS:.o=.po} -NOPATH_FILES+= ${POBJS} +CLEANFILES+= ${POBJS} lib${LIB_PRIVATE}${LIB}_p.a: ${POBJS} @${ECHO} building profiled ${LIB} library @@ -192,7 +192,7 @@ lib${LIB_PRIVATE}${LIB}_p.a: ${POBJS} .if defined(SHLIB_NAME) || \ defined(INSTALL_PIC_ARCHIVE) && defined(LIB) && !empty(LIB) SOBJS+= ${OBJS:.o=.So} -NOPATH_FILES+= ${SOBJS} +CLEANFILES+= ${SOBJS} .endif .if defined(SHLIB_NAME) @@ -238,7 +238,9 @@ ${SHLIB_LINK:R}.ld: ${.CURDIR}/${SHLIB_L ${.ALLSRC} > ${.TARGET} ${SHLIB_NAME_FULL}: ${SHLIB_LINK:R}.ld +CLEANFILES+= ${SHLIB_LINK:R}.ld .endif +CLEANFILES+= ${SHLIB_LINK} .endif ${SHLIB_NAME_FULL}: ${SOBJS} @@ -279,7 +281,7 @@ lib${LIB_PRIVATE}${LIB}_pic.a: ${SOBJS} LINTLIB= llib-l${LIB}.ln _LIBS+= ${LINTLIB} LINTOBJS+= ${SRCS:M*.c:.c=.ln} -NOPATH_FILES+= ${LINTOBJS} +CLEANFILES+= ${LINTOBJS} ${LINTLIB}: ${LINTOBJS} @${ECHO} building lint library ${.TARGET} @@ -292,7 +294,10 @@ ${LINTLIB}: ${LINTOBJS} .if defined(_SKIP_BUILD) all: .else +.if defined(_LIBS) && !empty(_LIBS) all: ${_LIBS} +CLEANFILES+= ${_LIBS} +.endif .if ${MK_MAN} != "no" && !defined(LIBRARIES_ONLY) all: _manpages @@ -423,49 +428,6 @@ ${_S:R}.So: ${_S} .endif .endif -.if !target(clean) -clean: -.if defined(CLEANFILES) && !empty(CLEANFILES) - rm -f ${CLEANFILES} -.endif -.if defined(LIB) && !empty(LIB) - rm -f a.out ${OBJS} ${OBJS:S/$/.tmp/} ${STATICOBJS} -.endif -.if !defined(INTERNALLIB) -.if ${MK_PROFILE} != "no" && defined(LIB) && !empty(LIB) - rm -f ${POBJS} ${POBJS:S/$/.tmp/} -.endif -.if defined(SHLIB_NAME) || \ - defined(INSTALL_PIC_ARCHIVE) && defined(LIB) && !empty(LIB) - rm -f ${SOBJS} ${SOBJS:.So=.so} ${SOBJS:S/$/.tmp/} -.endif -.if defined(SHLIB_NAME) -.if defined(SHLIB_LINK) -.if defined(SHLIB_LDSCRIPT) && exists(${.CURDIR}/${SHLIB_LDSCRIPT}) - rm -f lib${LIB}.ld -.endif - rm -f ${SHLIB_LINK} -.endif -.endif # defined(SHLIB_NAME) -.if defined(WANT_LINT) && defined(LIB) && !empty(LIB) - rm -f ${LINTOBJS} -.endif -.endif # !defined(INTERNALLIB) -.if defined(_LIBS) && !empty(_LIBS) - rm -f ${_LIBS} -.endif -.if defined(CLEANDIRS) && !empty(CLEANDIRS) - rm -rf ${CLEANDIRS} -.endif -.if !empty(VERSION_DEF) && !empty(SYMBOL_MAPS) - rm -f ${VERSION_MAP} -.endif -.endif - -.if !empty(_LIBS) -NOPATH_FILES+= ${_LIBS} -.endif - .include .include From owner-svn-src-head@freebsd.org Tue Sep 22 05:48:52 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E08A1A0534C; Tue, 22 Sep 2015 05:48:52 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B7C391F69; Tue, 22 Sep 2015 05:48:52 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M5mqBP058266; Tue, 22 Sep 2015 05:48:52 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M5mq82058264; Tue, 22 Sep 2015 05:48:52 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220548.t8M5mq82058264@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 05:48:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288094 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 05:48:53 -0000 Author: adrian Date: Tue Sep 22 05:48:51 2015 New Revision: 288094 URL: https://svnweb.freebsd.org/changeset/base/288094 Log: Send a power command to the firmware to shut down the radio as well during rsu_stop(). Modified: head/sys/dev/usb/wlan/if_rsu.c head/sys/dev/usb/wlan/if_rsureg.h Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Tue Sep 22 05:05:53 2015 (r288093) +++ head/sys/dev/usb/wlan/if_rsu.c Tue Sep 22 05:48:51 2015 (r288094) @@ -1088,6 +1088,7 @@ rsu_tx_task(void *arg, int pending __unu RSU_UNLOCK(sc); } +#define RSU_PWR_UNKNOWN 0x0 #define RSU_PWR_ACTIVE 0x1 #define RSU_PWR_OFF 0x2 #define RSU_PWR_SLEEP 0x3 @@ -1116,11 +1117,14 @@ rsu_set_fw_power_state(struct rsu_softc //struct r92s_pwr_cmd cmd; int error; - memset(&cmd, 0, sizeof(cmd)); - - /* XXX TODO: only change state if required */ RSU_ASSERT_LOCKED(sc); + /* only change state if required */ + if (sc->sc_curpwrstate == state) + return (0); + + memset(&cmd, 0, sizeof(cmd)); + switch (state) { case RSU_PWR_ACTIVE: /* Force the hardware awake */ @@ -1133,6 +1137,9 @@ rsu_set_fw_power_state(struct rsu_softc cmd.smart_ps = 1; /* XXX 2 if doing p2p */ cmd.bcn_pass_time = 5; /* in 100mS usb.c, linux/rtlwifi */ break; + case RSU_PWR_OFF: + cmd.mode = R92S_PS_MODE_RADIOOFF; + break; default: device_printf(sc->sc_dev, "%s: unknown ps mode (%d)\n", __func__, @@ -1144,6 +1151,8 @@ rsu_set_fw_power_state(struct rsu_softc "%s: setting ps mode to %d (mode %d)\n", __func__, state, cmd.mode); error = rsu_fw_cmd(sc, R92S_CMD_SET_PWR_MODE, &cmd, sizeof(cmd)); + if (error == 0) + sc->sc_curpwrstate = state; return (error); } @@ -2460,6 +2469,9 @@ rsu_power_off(struct rsu_softc *sc) /* Disable 1.6V LDO. */ rsu_write_1(sc, R92S_SPS0_CTRL + 0, 0x56); rsu_write_1(sc, R92S_SPS0_CTRL + 1, 0x43); + + /* Firmware - tell it to switch things off */ + (void) rsu_set_fw_power_state(sc, RSU_PWR_OFF); } static int @@ -2828,6 +2840,8 @@ rsu_stop(struct rsu_softc *sc) { int i; + RSU_ASSERT_LOCKED(sc); + sc->sc_running = 0; sc->sc_calibrating = 0; taskqueue_cancel_timeout(taskqueue_thread, &sc->calib_task, NULL); Modified: head/sys/dev/usb/wlan/if_rsureg.h ============================================================================== --- head/sys/dev/usb/wlan/if_rsureg.h Tue Sep 22 05:05:53 2015 (r288093) +++ head/sys/dev/usb/wlan/if_rsureg.h Tue Sep 22 05:48:51 2015 (r288094) @@ -749,6 +749,7 @@ struct rsu_softc { struct mtx sc_mtx; int sc_ht; int sc_nendpoints; + int sc_curpwrstate; u_int sc_running:1, sc_calibrating:1, From owner-svn-src-head@freebsd.org Tue Sep 22 06:30:01 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 39438A02C8E for ; Tue, 22 Sep 2015 06:30:01 +0000 (UTC) (envelope-from scott4long@yahoo.com) Received: from nm36-vm10.bullet.mail.gq1.yahoo.com (nm36-vm10.bullet.mail.gq1.yahoo.com [98.136.216.171]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0D009114D for ; Tue, 22 Sep 2015 06:30:00 +0000 (UTC) (envelope-from scott4long@yahoo.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1442903065; bh=dDJPIIPVSUF3KSnp5m9fnZaVox0RNAnyPOQs0KnhOVc=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From:Subject; b=ZTSvCcfQ/m+VQTOzSwKi6JcqVXWjuThQ4/Zsu80/NbQN5hUl/qVRyBYAZvaTtyURcf6YaBj1zvVGxhVDQCWSIR2qzq/m+Zeqhw+Cow4MBD3vzM5OHwKOHg0dnDxJi39RSZ/oBWXhZrDnIb+KRY3Jq0TowDt7JQ+ZYycPaazERYw5zQrA1mUbR7Wl9r5X+2MGw47qQRIC2atEl8nXBMBCV+Nqqo/ggQYp0u7aoQ876Kuna/pMPAydyY8DKxYGjsMOapiAcGGqsUx9OX5b2g/PmEseAW4Fyw391WaTjjr0Jo+4NFutA5JQtC+sJig1MUl9SchTR46UIqHc3Ir27bNCqA== Received: from [127.0.0.1] by nm36.bullet.mail.gq1.yahoo.com with NNFMP; 22 Sep 2015 06:24:25 -0000 Received: from [98.137.12.175] by nm36.bullet.mail.gq1.yahoo.com with NNFMP; 22 Sep 2015 06:21:28 -0000 Received: from [98.136.164.65] by tm14.bullet.mail.gq1.yahoo.com with NNFMP; 22 Sep 2015 06:21:28 -0000 Received: from [127.0.0.1] by smtp227.mail.gq1.yahoo.com with NNFMP; 22 Sep 2015 06:21:28 -0000 X-Yahoo-Newman-Id: 417741.30552.bm@smtp227.mail.gq1.yahoo.com X-Yahoo-Newman-Property: ymail-4 X-YMail-OSG: MroOKLwVM1l9WkJP8u44rhIzT.CIrDQjg2_QTEC6Ob1KaCm ZOgB9S0p0oVgbUyFAD6w8jJFW66uC6CYlT4NzjFhoHZ1zB4Hi138zJIiKfgp VP4SisSY1_D_EnzoyJ5e8H2LqztJW6pZxJPzOP3VNO4nv_q_1ry4IuhKEBIR 3k64PTnafQDYn82UJYZ0JyFfM4HYJmgpXJ1DCYs73gd_j5YgOppi9.2fQtN. _VO9itO3XQaweZy4k8q9F6XOzhxVwGcL67rz8rTN9_HpY_PhdIXZGbdROehM kYLH7tElsv2U20iqFtBVYpvHdw50y99a_oVSbpiQ2cZ.iZNAOfCAE9x8dFlA 9bln10VHjzqDPuzenLhzEsrbteWOl1wfsUaFo0lotcLuG4i9Xbd5u1lJyWbt ua6_jfSknVHv28hFMWz4uARWqKooopqd0hny4JaS2bwHTIGiDefHhLeYHvpg 3LA3aYcHtsSBwGrfzMOOlAQPS4jF1smpTjp.Ph9oOJroqX3DSP.H58n8GCXs 0.8GHy2WL1yz9RQ_P4PmB9r_Diy1FZvSQCJ50amAXkGOltVDwYvA- X-Yahoo-SMTP: clhABp.swBB7fs.LwIJpv3jkWgo2NU8- Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Scott Long In-Reply-To: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> Date: Mon, 21 Sep 2015 23:21:27 -0700 Cc: Adrian Chadd , jhb@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <1F2C327F-433E-4FA6-A083-4565A32C1146@yahoo.com> References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> To: Rui Paulo X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 06:30:01 -0000 As a side note, I=E2=80=99m still waiting for feedback on the patch I = sent you for scsi_sg. I=E2=80=99d like to get this fixed. Scott > On Sep 21, 2015, at 3:53 PM, Rui Paulo wrote: >=20 > No, that doesn't work very well. Not only the modules don't = auto-load, the way the modules are compiled is different. See, for = example, cam ctl which doesn't compile the sg code when it's built into = the kernel, but compiles it when it's built as a module. The sg code is = currently buggy and causes insta-panics with GNOME 3 (perhaps the = auto-mounter in hald (?)). > -- > Rui Paulo >=20 >=20 > On Sep 21, 2015, at 11:24 AM, Adrian Chadd = wrote: >=20 >> Hi, >>=20 >> Warner has been working on the modular kernel thing. But honestly, I >> think we should just start biting that bullet and ship a modules-only >> GENERIC by default.. >>=20 >>=20 >> -a >>=20 >>=20 >> On 21 September 2015 at 11:02, Rui Paulo wrote: >>> So, we're going to keep ignoring the problem and keep patching = things up? >>> It's a bit sad that a single driver (pmspcv) is able to cause so = much >>> problems. >>>=20 >>> -- >>> Rui Paulo >>>=20 >>>=20 >>> On Sep 17, 2015, at 01:36 PM, John Baldwin wrote: >>>=20 >>> Author: jhb >>> Date: Thu Sep 17 20:36:46 2015 >>> New Revision: 287934 >>> URL: https://svnweb.freebsd.org/changeset/base/287934 >>> =20 >>>=20 >>> Log: >>> The EFI boot loader allocates a single chunk of contiguous memory to >>> hold the kernel, modules, and any other loaded data. This memory = block >>> is relocated to the kernel's expected location during the transfer = of >>> control from the loader to the kernel. >>>=20 >>> The GENERIC kernel on amd64 has recently grown such that a kernel + = zfs.ko >>> no longer fits in the default staging size. Bump the default size = from >>> 32MB to 48MB to provide more breathing room. >>>=20 >>> PR: 201679 >>> Reviewed by: imp >>> MFC after: 1 week >>> Differential Revision: https://reviews.freebsd.org/D3666 >>> =20 >>>=20 >>> Modified: >>> head/sys/boot/efi/loader/copy.c >>>=20 >>> Modified: head/sys/boot/efi/loader/copy.c >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 >>> (r287933) >>> +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 >>> (r287934) >>> @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); >>> #include >>>=20 >>> #ifndef EFI_STAGING_SIZE >>> -#define EFI_STAGING_SIZE 32 >>> +#define EFI_STAGING_SIZE 48 >>> #endif >>>=20 >>> #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) >>>=20 From owner-svn-src-head@freebsd.org Tue Sep 22 06:34:14 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31E2FA03213; Tue, 22 Sep 2015 06:34:14 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1BC04160F; Tue, 22 Sep 2015 06:34:14 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M6YElB078204; Tue, 22 Sep 2015 06:34:14 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M6Y8tH078182; Tue, 22 Sep 2015 06:34:08 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509220634.t8M6Y8tH078182@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Tue, 22 Sep 2015 06:34:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288095 - in head/sys: dev/ath dev/mwl dev/ral dev/usb/wlan dev/wi dev/wpi dev/wtap net80211 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 06:34:14 -0000 Author: adrian Date: Tue Sep 22 06:34:07 2015 New Revision: 288095 URL: https://svnweb.freebsd.org/changeset/base/288095 Log: net80211: include one copy of struct ieee80211_beacon_offsets into ieee80211vap Submitted by: Andriy Voskoboinyk Differential Revision: https://reviews.freebsd.org/D3658 Modified: head/sys/dev/ath/if_ath_beacon.c head/sys/dev/ath/if_ath_tdma.c head/sys/dev/ath/if_athvar.h head/sys/dev/mwl/if_mwl.c head/sys/dev/ral/rt2560.c head/sys/dev/ral/rt2560var.h head/sys/dev/ral/rt2661.c head/sys/dev/ral/rt2860.c head/sys/dev/usb/wlan/if_rsureg.h head/sys/dev/usb/wlan/if_run.c head/sys/dev/usb/wlan/if_runvar.h head/sys/dev/usb/wlan/if_ural.c head/sys/dev/usb/wlan/if_uralvar.h head/sys/dev/usb/wlan/if_urtwnreg.h head/sys/dev/wi/if_wivar.h head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h head/sys/dev/wtap/if_wtap.c head/sys/dev/wtap/if_wtapvar.h head/sys/net80211/ieee80211_var.h Modified: head/sys/dev/ath/if_ath_beacon.c ============================================================================== --- head/sys/dev/ath/if_ath_beacon.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ath/if_ath_beacon.c Tue Sep 22 06:34:07 2015 (r288095) @@ -199,7 +199,7 @@ ath_beacon_alloc(struct ath_softc *sc, s * we assume the mbuf routines will return us something * with this alignment (perhaps should assert). */ - m = ieee80211_beacon_alloc(ni, &avp->av_boff); + m = ieee80211_beacon_alloc(ni, &vap->iv_bcn_off); if (m == NULL) { device_printf(sc->sc_dev, "%s: cannot get mbuf\n", __func__); sc->sc_stats.ast_be_nombuf++; @@ -374,7 +374,7 @@ ath_beacon_setup(struct ath_softc *sc, s void ath_beacon_update(struct ieee80211vap *vap, int item) { - struct ieee80211_beacon_offsets *bo = &ATH_VAP(vap)->av_boff; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; setbit(bo->bo_flags, item); } @@ -713,7 +713,7 @@ ath_beacon_generate(struct ath_softc *sc /* XXX lock mcastq? */ nmcastq = avp->av_mcastq.axq_depth; - if (ieee80211_beacon_update(bf->bf_node, &avp->av_boff, m, nmcastq)) { + if (ieee80211_beacon_update(bf->bf_node, &vap->iv_bcn_off, m, nmcastq)) { /* XXX too conservative? */ bus_dmamap_unload(sc->sc_dmat, bf->bf_dmamap); error = bus_dmamap_load_mbuf_sg(sc->sc_dmat, bf->bf_dmamap, m, @@ -726,7 +726,7 @@ ath_beacon_generate(struct ath_softc *sc return NULL; } } - if ((avp->av_boff.bo_tim[4] & 1) && cabq->axq_depth) { + if ((vap->iv_bcn_off.bo_tim[4] & 1) && cabq->axq_depth) { DPRINTF(sc, ATH_DEBUG_BEACON, "%s: cabq did not drain, mcastq %u cabq %u\n", __func__, nmcastq, cabq->axq_depth); @@ -764,7 +764,7 @@ ath_beacon_generate(struct ath_softc *sc * Enable the CAB queue before the beacon queue to * insure cab frames are triggered by this beacon. */ - if (avp->av_boff.bo_tim[4] & 1) { + if (vap->iv_bcn_off.bo_tim[4] & 1) { /* NB: only at DTIM */ ATH_TXQ_LOCK(&avp->av_mcastq); @@ -829,7 +829,7 @@ ath_beacon_start_adhoc(struct ath_softc */ bf = avp->av_bcbuf; m = bf->bf_m; - if (ieee80211_beacon_update(bf->bf_node, &avp->av_boff, m, 0)) { + if (ieee80211_beacon_update(bf->bf_node, &vap->iv_bcn_off, m, 0)) { /* XXX too conservative? */ bus_dmamap_unload(sc->sc_dmat, bf->bf_dmamap); error = bus_dmamap_load_mbuf_sg(sc->sc_dmat, bf->bf_dmamap, m, Modified: head/sys/dev/ath/if_ath_tdma.c ============================================================================== --- head/sys/dev/ath/if_ath_tdma.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ath/if_ath_tdma.c Tue Sep 22 06:34:07 2015 (r288095) @@ -548,7 +548,7 @@ ath_tdma_update(struct ieee80211_node *n * slot position changes) because ieee80211_add_tdma * skips over the data. */ - memcpy(ATH_VAP(vap)->av_boff.bo_tdma + + memcpy(vap->iv_bcn_off.bo_tdma + __offsetof(struct ieee80211_tdma_param, tdma_tstamp), &ni->ni_tstamp.data, 8); #if 0 Modified: head/sys/dev/ath/if_athvar.h ============================================================================== --- head/sys/dev/ath/if_athvar.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ath/if_athvar.h Tue Sep 22 06:34:07 2015 (r288095) @@ -477,7 +477,6 @@ struct ath_vap { struct ieee80211vap av_vap; /* base class */ int av_bslot; /* beacon slot index */ struct ath_buf *av_bcbuf; /* beacon buffer */ - struct ieee80211_beacon_offsets av_boff;/* dynamic update state */ struct ath_txq av_mcastq; /* buffered mcast s/w queue */ void (*av_recv_mgmt)(struct ieee80211_node *, Modified: head/sys/dev/mwl/if_mwl.c ============================================================================== --- head/sys/dev/mwl/if_mwl.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/mwl/if_mwl.c Tue Sep 22 06:34:07 2015 (r288095) @@ -1834,10 +1834,10 @@ mwl_beacon_setup(struct ieee80211vap *va { struct mwl_hal_vap *hvap = MWL_VAP(vap)->mv_hvap; struct ieee80211_node *ni = vap->iv_bss; - struct ieee80211_beacon_offsets bo; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; struct mbuf *m; - m = ieee80211_beacon_alloc(ni, &bo); + m = ieee80211_beacon_alloc(ni, bo); if (m == NULL) return ENOBUFS; mwl_hal_setbeacon(hvap, mtod(m, const void *), m->m_len); Modified: head/sys/dev/ral/rt2560.c ============================================================================== --- head/sys/dev/ral/rt2560.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ral/rt2560.c Tue Sep 22 06:34:07 2015 (r288095) @@ -768,7 +768,7 @@ rt2560_newstate(struct ieee80211vap *vap if (vap->iv_opmode == IEEE80211_M_HOSTAP || vap->iv_opmode == IEEE80211_M_IBSS || vap->iv_opmode == IEEE80211_M_MBSS) { - m = ieee80211_beacon_alloc(ni, &rvp->ral_bo); + m = ieee80211_beacon_alloc(ni, &vap->iv_bcn_off); if (m == NULL) { device_printf(sc->sc_dev, "could not allocate beacon\n"); @@ -1273,8 +1273,7 @@ rt2560_rx_intr(struct rt2560_softc *sc) static void rt2560_beacon_update(struct ieee80211vap *vap, int item) { - struct rt2560_vap *rvp = RT2560_VAP(vap); - struct ieee80211_beacon_offsets *bo = &rvp->ral_bo; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; setbit(bo->bo_flags, item); } @@ -1288,7 +1287,6 @@ rt2560_beacon_expire(struct rt2560_softc { struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); - struct rt2560_vap *rvp = RT2560_VAP(vap); struct rt2560_tx_data *data; if (ic->ic_opmode != IEEE80211_M_IBSS && @@ -1307,7 +1305,7 @@ rt2560_beacon_expire(struct rt2560_softc bus_dmamap_unload(sc->bcnq.data_dmat, data->map); /* XXX 1 =>'s mcast frames which means all PS sta's will wakeup! */ - ieee80211_beacon_update(data->ni, &rvp->ral_bo, data->m, 1); + ieee80211_beacon_update(data->ni, &vap->iv_bcn_off, data->m, 1); rt2560_tx_bcn(sc, data->m, data->ni); Modified: head/sys/dev/ral/rt2560var.h ============================================================================== --- head/sys/dev/ral/rt2560var.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ral/rt2560var.h Tue Sep 22 06:34:07 2015 (r288095) @@ -97,7 +97,6 @@ struct rt2560_rx_ring { struct rt2560_vap { struct ieee80211vap ral_vap; - struct ieee80211_beacon_offsets ral_bo; int (*ral_newstate)(struct ieee80211vap *, enum ieee80211_state, int); Modified: head/sys/dev/ral/rt2661.c ============================================================================== --- head/sys/dev/ral/rt2661.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ral/rt2661.c Tue Sep 22 06:34:07 2015 (r288095) @@ -2626,12 +2626,12 @@ static int rt2661_prepare_beacon(struct rt2661_softc *sc, struct ieee80211vap *vap) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_beacon_offsets bo; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; struct rt2661_tx_desc desc; struct mbuf *m0; int rate; - m0 = ieee80211_beacon_alloc(vap->iv_bss, &bo); + m0 = ieee80211_beacon_alloc(vap->iv_bss, bo); if (m0 == NULL) { device_printf(sc->sc_dev, "could not allocate beacon frame\n"); return ENOBUFS; Modified: head/sys/dev/ral/rt2860.c ============================================================================== --- head/sys/dev/ral/rt2860.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/ral/rt2860.c Tue Sep 22 06:34:07 2015 (r288095) @@ -4268,12 +4268,12 @@ static int rt2860_setup_beacon(struct rt2860_softc *sc, struct ieee80211vap *vap) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_beacon_offsets bo; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; struct rt2860_txwi txwi; struct mbuf *m; int ridx; - if ((m = ieee80211_beacon_alloc(vap->iv_bss, &bo)) == NULL) + if ((m = ieee80211_beacon_alloc(vap->iv_bss, bo)) == NULL) return ENOBUFS; memset(&txwi, 0, sizeof txwi); Modified: head/sys/dev/usb/wlan/if_rsureg.h ============================================================================== --- head/sys/dev/usb/wlan/if_rsureg.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/usb/wlan/if_rsureg.h Tue Sep 22 06:34:07 2015 (r288095) @@ -724,7 +724,6 @@ struct rsu_data { struct rsu_vap { struct ieee80211vap vap; - struct ieee80211_beacon_offsets bo; int (*newstate)(struct ieee80211vap *, enum ieee80211_state, int); Modified: head/sys/dev/usb/wlan/if_run.c ============================================================================== --- head/sys/dev/usb/wlan/if_run.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/usb/wlan/if_run.c Tue Sep 22 06:34:07 2015 (r288095) @@ -4811,13 +4811,13 @@ static void run_update_beacon(struct ieee80211vap *vap, int item) { struct ieee80211com *ic = vap->iv_ic; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; + struct ieee80211_node *ni = vap->iv_bss; struct run_softc *sc = ic->ic_softc; struct run_vap *rvp = RUN_VAP(vap); int mcast = 0; uint32_t i; - KASSERT(vap != NULL, ("no beacon")); - switch (item) { case IEEE80211_BEACON_ERP: run_updateslot(ic); @@ -4832,14 +4832,13 @@ run_update_beacon(struct ieee80211vap *v break; } - setbit(rvp->bo.bo_flags, item); + setbit(bo->bo_flags, item); if (rvp->beacon_mbuf == NULL) { - rvp->beacon_mbuf = ieee80211_beacon_alloc(vap->iv_bss, - &rvp->bo); + rvp->beacon_mbuf = ieee80211_beacon_alloc(ni, bo); if (rvp->beacon_mbuf == NULL) return; } - ieee80211_beacon_update(vap->iv_bss, &rvp->bo, rvp->beacon_mbuf, mcast); + ieee80211_beacon_update(ni, bo, rvp->beacon_mbuf, mcast); i = RUN_CMDQ_GET(&sc->cmdq_store); DPRINTF("cmdq_store=%d\n", i); @@ -4854,6 +4853,7 @@ static void run_update_beacon_cb(void *arg) { struct ieee80211vap *vap = arg; + struct ieee80211_node *ni = vap->iv_bss; struct run_vap *rvp = RUN_VAP(vap); struct ieee80211com *ic = vap->iv_ic; struct run_softc *sc = ic->ic_softc; @@ -4862,7 +4862,7 @@ run_update_beacon_cb(void *arg) uint16_t txwisize; uint8_t ridx; - if (vap->iv_bss->ni_chan == IEEE80211_CHAN_ANYC) + if (ni->ni_chan == IEEE80211_CHAN_ANYC) return; if (ic->ic_bsschan == IEEE80211_CHAN_ANYC) return; @@ -4872,8 +4872,8 @@ run_update_beacon_cb(void *arg) * is taking care of apropriate calls. */ if (rvp->beacon_mbuf == NULL) { - rvp->beacon_mbuf = ieee80211_beacon_alloc(vap->iv_bss, - &rvp->bo); + rvp->beacon_mbuf = ieee80211_beacon_alloc(ni, + &vap->iv_bcn_off); if (rvp->beacon_mbuf == NULL) return; } Modified: head/sys/dev/usb/wlan/if_runvar.h ============================================================================== --- head/sys/dev/usb/wlan/if_runvar.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/usb/wlan/if_runvar.h Tue Sep 22 06:34:07 2015 (r288095) @@ -119,7 +119,6 @@ struct run_cmdq { struct run_vap { struct ieee80211vap vap; - struct ieee80211_beacon_offsets bo; struct mbuf *beacon_mbuf; int (*newstate)(struct ieee80211vap *, Modified: head/sys/dev/usb/wlan/if_ural.c ============================================================================== --- head/sys/dev/usb/wlan/if_ural.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/usb/wlan/if_ural.c Tue Sep 22 06:34:07 2015 (r288095) @@ -713,7 +713,7 @@ ural_newstate(struct ieee80211vap *vap, if (vap->iv_opmode == IEEE80211_M_HOSTAP || vap->iv_opmode == IEEE80211_M_IBSS) { - m = ieee80211_beacon_alloc(ni, &uvp->bo); + m = ieee80211_beacon_alloc(ni, &vap->iv_bcn_off); if (m == NULL) { device_printf(sc->sc_dev, "could not allocate beacon\n"); Modified: head/sys/dev/usb/wlan/if_uralvar.h ============================================================================== --- head/sys/dev/usb/wlan/if_uralvar.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/usb/wlan/if_uralvar.h Tue Sep 22 06:34:07 2015 (r288095) @@ -73,7 +73,7 @@ typedef STAILQ_HEAD(, ural_tx_data) ural struct ural_vap { struct ieee80211vap vap; - struct ieee80211_beacon_offsets bo; + struct usb_callout ratectl_ch; struct task ratectl_task; Modified: head/sys/dev/usb/wlan/if_urtwnreg.h ============================================================================== --- head/sys/dev/usb/wlan/if_urtwnreg.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/usb/wlan/if_urtwnreg.h Tue Sep 22 06:34:07 2015 (r288095) @@ -1134,7 +1134,6 @@ struct urtwn_fw_info { struct urtwn_vap { struct ieee80211vap vap; - struct ieee80211_beacon_offsets bo; int (*newstate)(struct ieee80211vap *, enum ieee80211_state, int); Modified: head/sys/dev/wi/if_wivar.h ============================================================================== --- head/sys/dev/wi/if_wivar.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/wi/if_wivar.h Tue Sep 22 06:34:07 2015 (r288095) @@ -58,7 +58,6 @@ struct wi_vap { struct ieee80211vap wv_vap; - struct ieee80211_beacon_offsets wv_bo; void (*wv_recv_mgmt)(struct ieee80211_node *, struct mbuf *, int, const struct ieee80211_rx_stats *rxs, int, int); Modified: head/sys/dev/wpi/if_wpi.c ============================================================================== --- head/sys/dev/wpi/if_wpi.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/wpi/if_wpi.c Tue Sep 22 06:34:07 2015 (r288095) @@ -4309,8 +4309,9 @@ wpi_auth(struct wpi_softc *sc, struct ie static int wpi_config_beacon(struct wpi_vap *wvp) { - struct ieee80211com *ic = wvp->wv_vap.iv_ic; - struct ieee80211_beacon_offsets *bo = &wvp->wv_boff; + struct ieee80211vap *vap = &wvp->wv_vap; + struct ieee80211com *ic = vap->iv_ic; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; struct wpi_buf *bcn = &wvp->wv_bcbuf; struct wpi_softc *sc = ic->ic_softc; struct wpi_cmd_beacon *cmd = (struct wpi_cmd_beacon *)&bcn->data; @@ -4361,9 +4362,10 @@ end: bcn->m = m; static int wpi_setup_beacon(struct wpi_softc *sc, struct ieee80211_node *ni) { - struct wpi_vap *wvp = WPI_VAP(ni->ni_vap); + struct ieee80211vap *vap = ni->ni_vap; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; + struct wpi_vap *wvp = WPI_VAP(vap); struct wpi_buf *bcn = &wvp->wv_bcbuf; - struct ieee80211_beacon_offsets *bo = &wvp->wv_boff; struct mbuf *m; int error; @@ -4397,7 +4399,7 @@ wpi_update_beacon(struct ieee80211vap *v struct wpi_softc *sc = vap->iv_ic->ic_softc; struct wpi_vap *wvp = WPI_VAP(vap); struct wpi_buf *bcn = &wvp->wv_bcbuf; - struct ieee80211_beacon_offsets *bo = &wvp->wv_boff; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; struct ieee80211_node *ni = vap->iv_bss; int mcast = 0; Modified: head/sys/dev/wpi/if_wpivar.h ============================================================================== --- head/sys/dev/wpi/if_wpivar.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/wpi/if_wpivar.h Tue Sep 22 06:34:07 2015 (r288095) @@ -125,7 +125,6 @@ struct wpi_vap { struct ieee80211vap wv_vap; struct wpi_buf wv_bcbuf; - struct ieee80211_beacon_offsets wv_boff; struct mtx wv_mtx; uint32_t wv_gtk; Modified: head/sys/dev/wtap/if_wtap.c ============================================================================== --- head/sys/dev/wtap/if_wtap.c Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/wtap/if_wtap.c Tue Sep 22 06:34:07 2015 (r288095) @@ -183,7 +183,7 @@ wtap_reset_vap(struct ieee80211vap *vap, static void wtap_beacon_update(struct ieee80211vap *vap, int item) { - struct ieee80211_beacon_offsets *bo = &WTAP_VAP(vap)->av_boff; + struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off; DWTAP_PRINTF("%s\n", __func__); setbit(bo->bo_flags, item); @@ -205,7 +205,7 @@ wtap_beacon_alloc(struct wtap_softc *sc, * we assume the mbuf routines will return us something * with this alignment (perhaps should assert). */ - avp->beacon = ieee80211_beacon_alloc(ni, &avp->av_boff); + avp->beacon = ieee80211_beacon_alloc(ni, &vap->iv_bcn_off); if (avp->beacon == NULL) { printf("%s: cannot get mbuf\n", __func__); return ENOMEM; @@ -242,7 +242,7 @@ wtap_beacon_intrp(void *arg) * of the TIM bitmap). */ m = m_dup(avp->beacon, M_NOWAIT); - if (ieee80211_beacon_update(avp->bf_node, &avp->av_boff, m, 0)) { + if (ieee80211_beacon_update(avp->bf_node, &vap->iv_bcn_off, m, 0)) { printf("%s, need to remap the memory because the beacon frame" " changed size.\n",__func__); } Modified: head/sys/dev/wtap/if_wtapvar.h ============================================================================== --- head/sys/dev/wtap/if_wtapvar.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/dev/wtap/if_wtapvar.h Tue Sep 22 06:34:07 2015 (r288095) @@ -116,7 +116,6 @@ struct wtap_vap { struct wtap_medium *av_md; /* back pointer */ struct mbuf *beacon; /* beacon */ struct ieee80211_node *bf_node; /* pointer to the node */ - struct ieee80211_beacon_offsets av_boff;/* dynamic update state */ struct callout av_swba; /* software beacon alert */ uint32_t av_bcinterval; /* beacon interval */ void (*av_recv_mgmt)(struct ieee80211_node *, Modified: head/sys/net80211/ieee80211_var.h ============================================================================== --- head/sys/net80211/ieee80211_var.h Tue Sep 22 05:48:51 2015 (r288094) +++ head/sys/net80211/ieee80211_var.h Tue Sep 22 06:34:07 2015 (r288095) @@ -417,6 +417,7 @@ struct ieee80211vap { int iv_amsdu_limit; /* A-MSDU tx limit (bytes) */ u_int iv_ampdu_mintraffic[WME_NUM_AC]; + struct ieee80211_beacon_offsets iv_bcn_off; uint32_t *iv_aid_bitmap; /* association id map */ uint16_t iv_max_aid; uint16_t iv_sta_assoc; /* stations associated */ From owner-svn-src-head@freebsd.org Tue Sep 22 06:51:57 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 78C4CA03DDA; Tue, 22 Sep 2015 06:51:57 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5AD5512A4; Tue, 22 Sep 2015 06:51:57 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M6pvjb085740; Tue, 22 Sep 2015 06:51:57 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M6puGP085731; Tue, 22 Sep 2015 06:51:56 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201509220651.t8M6puGP085731@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 22 Sep 2015 06:51:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288096 - in head: share/man/man9 sys/kern sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 06:51:57 -0000 Author: hselasky Date: Tue Sep 22 06:51:55 2015 New Revision: 288096 URL: https://svnweb.freebsd.org/changeset/base/288096 Log: Revert r287780 until more developers have their say. Differential Revision: https://reviews.freebsd.org/D3521 Requested by: gnn Modified: head/share/man/man9/Makefile head/share/man/man9/timeout.9 head/sys/kern/kern_timeout.c head/sys/sys/_callout.h head/sys/sys/callout.h Modified: head/share/man/man9/Makefile ============================================================================== --- head/share/man/man9/Makefile Tue Sep 22 06:34:07 2015 (r288095) +++ head/share/man/man9/Makefile Tue Sep 22 06:51:55 2015 (r288096) @@ -1641,7 +1641,6 @@ MLINKS+=timeout.9 callout.9 \ timeout.9 callout_active.9 \ timeout.9 callout_deactivate.9 \ timeout.9 callout_drain.9 \ - timeout.9 callout_drain_async.9 \ timeout.9 callout_handle_init.9 \ timeout.9 callout_init.9 \ timeout.9 callout_init_mtx.9 \ Modified: head/share/man/man9/timeout.9 ============================================================================== --- head/share/man/man9/timeout.9 Tue Sep 22 06:34:07 2015 (r288095) +++ head/share/man/man9/timeout.9 Tue Sep 22 06:51:55 2015 (r288096) @@ -36,7 +36,6 @@ .Nm callout_active , .Nm callout_deactivate , .Nm callout_drain , -.Nm callout_drain_async , .Nm callout_handle_init , .Nm callout_init , .Nm callout_init_mtx , @@ -71,8 +70,6 @@ typedef void timeout_t (void *); .Fn callout_deactivate "struct callout *c" .Ft int .Fn callout_drain "struct callout *c" -.Ft int -.Fn callout_drain_async "struct callout *c" "callout_func_t *fn" "void *arg" .Ft void .Fn callout_handle_init "struct callout_handle *handle" .Bd -literal @@ -267,24 +264,6 @@ fully stopped before .Fn callout_drain returns. .Pp -The function -.Fn callout_drain_async -is non-blocking and works the same as the -.Fn callout_stop -function. -When this function returns non-zero, do not call it again until the callback function given by -.Fa fn -has been called with argument -.Fa arg . -Only one of -.Fn callout_drain -or -.Fn callout_drain_async -should be called at a time to drain a callout. -If this function returns zero, it is safe to free the callout structure pointed to by the -.Fa c -argument immediately. -.Pp The .Fn callout_reset and Modified: head/sys/kern/kern_timeout.c ============================================================================== --- head/sys/kern/kern_timeout.c Tue Sep 22 06:34:07 2015 (r288095) +++ head/sys/kern/kern_timeout.c Tue Sep 22 06:51:55 2015 (r288096) @@ -1145,45 +1145,6 @@ callout_schedule(struct callout *c, int } int -callout_drain_async(struct callout *c, callout_func_t *func, void *arg) -{ - struct callout_cpu *cc; - struct lock_class *class; - int retval; - int direct; - - /* stop callout */ - callout_stop(c); - - /* check if callback is being called */ - cc = callout_lock(c); - if (c->c_iflags & CALLOUT_DIRECT) { - direct = 1; - } else { - direct = 0; - } - retval = (cc_exec_curr(cc, direct) == c); - - /* drop locks, if any */ - if (retval && c->c_lock != NULL && - c->c_lock != &Giant.lock_object) { - /* ensure we are properly locked */ - class = LOCK_CLASS(c->c_lock); - class->lc_assert(c->c_lock, LA_XLOCKED); - /* the final callback should not be called locked */ - c->c_lock = NULL; - c->c_iflags |= CALLOUT_RETURNUNLOCKED; - } - CC_UNLOCK(cc); - - /* check if we should queue final callback */ - if (retval) - callout_reset(c, 1, func, arg); - - return (retval); -} - -int _callout_stop_safe(struct callout *c, int safe) { struct callout_cpu *cc, *old_cc; Modified: head/sys/sys/_callout.h ============================================================================== --- head/sys/sys/_callout.h Tue Sep 22 06:34:07 2015 (r288095) +++ head/sys/sys/_callout.h Tue Sep 22 06:51:55 2015 (r288096) @@ -46,8 +46,6 @@ LIST_HEAD(callout_list, callout); SLIST_HEAD(callout_slist, callout); TAILQ_HEAD(callout_tailq, callout); -typedef void callout_func_t(void *); - struct callout { union { LIST_ENTRY(callout) le; Modified: head/sys/sys/callout.h ============================================================================== --- head/sys/sys/callout.h Tue Sep 22 06:34:07 2015 (r288095) +++ head/sys/sys/callout.h Tue Sep 22 06:51:55 2015 (r288096) @@ -82,7 +82,6 @@ struct callout_handle { #define callout_active(c) ((c)->c_flags & CALLOUT_ACTIVE) #define callout_deactivate(c) ((c)->c_flags &= ~CALLOUT_ACTIVE) #define callout_drain(c) _callout_stop_safe(c, 1) -int callout_drain_async(struct callout *, callout_func_t *, void *); void callout_init(struct callout *, int); void _callout_init_lock(struct callout *, struct lock_object *, int); #define callout_init_mtx(c, mtx, flags) \ From owner-svn-src-head@freebsd.org Tue Sep 22 07:31:40 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E77CAA065CF; Tue, 22 Sep 2015 07:31:40 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D89E41A44; Tue, 22 Sep 2015 07:31:40 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M7VeUB002122; Tue, 22 Sep 2015 07:31:40 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M7VeGP002121; Tue, 22 Sep 2015 07:31:40 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509220731.t8M7VeGP002121@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Tue, 22 Sep 2015 07:31:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288097 - head/lib/libc/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 07:31:41 -0000 Author: rodrigc Date: Tue Sep 22 07:31:40 2015 New Revision: 288097 URL: https://svnweb.freebsd.org/changeset/base/288097 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/gen/clock.c Modified: head/lib/libc/gen/clock.c ============================================================================== --- head/lib/libc/gen/clock.c Tue Sep 22 06:51:55 2015 (r288096) +++ head/lib/libc/gen/clock.c Tue Sep 22 07:31:40 2015 (r288097) @@ -45,7 +45,7 @@ __FBSDID("$FreeBSD$"); + (r).tv_usec / (1000000 / CLOCKS_PER_SEC)) clock_t -clock() +clock(void) { struct rusage ru; From owner-svn-src-head@freebsd.org Tue Sep 22 07:40:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5A9B2A06B01; Tue, 22 Sep 2015 07:40:56 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4949E1E83; Tue, 22 Sep 2015 07:40:56 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M7euKv006174; Tue, 22 Sep 2015 07:40:56 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M7euD9006173; Tue, 22 Sep 2015 07:40:56 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509220740.t8M7euD9006173@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Tue, 22 Sep 2015 07:40:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288098 - head/lib/libc/gen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 07:40:56 -0000 Author: rodrigc Date: Tue Sep 22 07:40:55 2015 New Revision: 288098 URL: https://svnweb.freebsd.org/changeset/base/288098 Log: Use proper function prototype for readdir(). Eliminates -Wstrict-prototypes warning Submitted by: Joerg Sonnenberger Obtained from: DragonFlyBSD (commit 2a6aec8dab58c89961cabcfdb92e0d0ae256dea4) Modified: head/lib/libc/gen/glob.c Modified: head/lib/libc/gen/glob.c ============================================================================== --- head/lib/libc/gen/glob.c Tue Sep 22 07:31:40 2015 (r288097) +++ head/lib/libc/gen/glob.c Tue Sep 22 07:40:55 2015 (r288098) @@ -650,13 +650,7 @@ glob3(Char *pathbuf, Char *pathend, Char int err; char buf[MAXPATHLEN]; - /* - * The readdirfunc declaration can't be prototyped, because it is - * assigned, below, to two functions which are prototyped in glob.h - * and dirent.h as taking pointers to differently typed opaque - * structures. - */ - struct dirent *(*readdirfunc)(); + struct dirent *(*readdirfunc)(DIR *); if (pathend > pathend_last) return (GLOB_ABORTED); @@ -677,12 +671,14 @@ glob3(Char *pathbuf, Char *pathend, Char err = 0; - /* Search directory for matching names. */ + /* pglob->gl_readdir takes a void *, fix this manually */ if (pglob->gl_flags & GLOB_ALTDIRFUNC) - readdirfunc = pglob->gl_readdir; + readdirfunc = (struct dirent *(*)(DIR *))pglob->gl_readdir; else readdirfunc = readdir; - while ((dp = (*readdirfunc)(dirp))) { + + /* Search directory for matching names. */ + while ((dp = (*readdirfunc)(dirp)) != NULL) { char *sc; Char *dc; wchar_t wc; From owner-svn-src-head@freebsd.org Tue Sep 22 09:35:36 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0DCD6A06342; Tue, 22 Sep 2015 09:35:36 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F074710EB; Tue, 22 Sep 2015 09:35:35 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8M9ZZZe051028; Tue, 22 Sep 2015 09:35:35 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8M9ZZfD051027; Tue, 22 Sep 2015 09:35:35 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201509220935.t8M9ZZfD051027@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 22 Sep 2015 09:35:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288099 - head/contrib/binutils/opcodes X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 09:35:36 -0000 Author: dim Date: Tue Sep 22 09:35:35 2015 New Revision: 288099 URL: https://svnweb.freebsd.org/changeset/base/288099 Log: In binutils' arm-dis.c, avoid left-shifting a negative number. Submitted by: dan.mcgregor_usask.ca (Dan McGregor) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D3376 Modified: head/contrib/binutils/opcodes/arm-dis.c Modified: head/contrib/binutils/opcodes/arm-dis.c ============================================================================== --- head/contrib/binutils/opcodes/arm-dis.c Tue Sep 22 07:40:55 2015 (r288098) +++ head/contrib/binutils/opcodes/arm-dis.c Tue Sep 22 09:35:35 2015 (r288099) @@ -1767,7 +1767,7 @@ print_insn_coprocessor (bfd_vma pc, stru /* Is ``imm'' a negative number? */ if (imm & 0x40) - imm |= (-1 << 7); + imm |= -(1 << 7); func (stream, "%d", imm); } From owner-svn-src-head@freebsd.org Tue Sep 22 09:43:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7D6A1A06774; Tue, 22 Sep 2015 09:43:05 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3A6CD161B; Tue, 22 Sep 2015 09:43:05 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.84 (FreeBSD)) (envelope-from ) id 1ZeK6H-000Bai-Q5; Tue, 22 Sep 2015 12:43:01 +0300 Date: Tue, 22 Sep 2015 12:43:01 +0300 From: Slawa Olhovchenkov To: Dimitry Andric Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r288099 - head/contrib/binutils/opcodes Message-ID: <20150922094301.GW3158@zxy.spb.ru> References: <201509220935.t8M9ZZfD051027@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201509220935.t8M9ZZfD051027@repo.freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 09:43:05 -0000 On Tue, Sep 22, 2015 at 09:35:35AM +0000, Dimitry Andric wrote: > Author: dim > Date: Tue Sep 22 09:35:35 2015 > New Revision: 288099 > URL: https://svnweb.freebsd.org/changeset/base/288099 > > Log: > In binutils' arm-dis.c, avoid left-shifting a negative number. > > Submitted by: dan.mcgregor_usask.ca (Dan McGregor) > MFC after: 3 days > Differential Revision: https://reviews.freebsd.org/D3376 > > Modified: > head/contrib/binutils/opcodes/arm-dis.c > > Modified: head/contrib/binutils/opcodes/arm-dis.c > ============================================================================== > --- head/contrib/binutils/opcodes/arm-dis.c Tue Sep 22 07:40:55 2015 (r288098) > +++ head/contrib/binutils/opcodes/arm-dis.c Tue Sep 22 09:35:35 2015 (r288099) > @@ -1767,7 +1767,7 @@ print_insn_coprocessor (bfd_vma pc, stru > > /* Is ``imm'' a negative number? */ > if (imm & 0x40) > - imm |= (-1 << 7); > + imm |= -(1 << 7); May be (~0 << 7) is more simple to understund? From owner-svn-src-head@freebsd.org Tue Sep 22 09:53:49 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DBC8DA06DD3; Tue, 22 Sep 2015 09:53:49 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (tensor.andric.com [87.251.56.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9E2E41E65; Tue, 22 Sep 2015 09:53:49 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from [10.192.0.157] (unknown [178.20.49.58]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 109D41A3D8; Tue, 22 Sep 2015 11:53:39 +0200 (CEST) Subject: Re: svn commit: r288099 - head/contrib/binutils/opcodes Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Content-Type: multipart/signed; boundary="Apple-Mail=_F36ED1AA-2892-4258-B119-35DFAF35432C"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5.1 From: Dimitry Andric In-Reply-To: <20150922094301.GW3158@zxy.spb.ru> Date: Tue, 22 Sep 2015 11:53:32 +0200 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> References: <201509220935.t8M9ZZfD051027@repo.freebsd.org> <20150922094301.GW3158@zxy.spb.ru> To: Slawa Olhovchenkov X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 09:53:50 -0000 --Apple-Mail=_F36ED1AA-2892-4258-B119-35DFAF35432C Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On 22 Sep 2015, at 11:43, Slawa Olhovchenkov wrote: > > On Tue, Sep 22, 2015 at 09:35:35AM +0000, Dimitry Andric wrote: ... >> - imm |= (-1 << 7); >> + imm |= -(1 << 7); > > May be (~0 << 7) is more simple to understund? This will give the same warning. ~0 will implicitly convert to -1. (It would be better to convert all these masks to unsigned, where such shifting is always defined, but that gives a lot more churn.) -Dimitry --Apple-Mail=_F36ED1AA-2892-4258-B119-35DFAF35432C Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.28 iEYEARECAAYFAlYBJSEACgkQsF6jCi4glqP+rwCfTjg7PsgHQ+CGzXK0mjDocs8M sKkAoOjYCBgJzCqOE4MsaKx0ohV7F3Fg =2SDb -----END PGP SIGNATURE----- --Apple-Mail=_F36ED1AA-2892-4258-B119-35DFAF35432C-- From owner-svn-src-head@freebsd.org Tue Sep 22 10:02:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0F194A05333; Tue, 22 Sep 2015 10:02:32 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BA2D717AC; Tue, 22 Sep 2015 10:02:31 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.84 (FreeBSD)) (envelope-from ) id 1ZeKP7-000Bxk-IS; Tue, 22 Sep 2015 13:02:29 +0300 Date: Tue, 22 Sep 2015 13:02:29 +0300 From: Slawa Olhovchenkov To: Dimitry Andric Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r288099 - head/contrib/binutils/opcodes Message-ID: <20150922100229.GN21849@zxy.spb.ru> References: <201509220935.t8M9ZZfD051027@repo.freebsd.org> <20150922094301.GW3158@zxy.spb.ru> <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 10:02:32 -0000 On Tue, Sep 22, 2015 at 11:53:32AM +0200, Dimitry Andric wrote: > On 22 Sep 2015, at 11:43, Slawa Olhovchenkov wrote: > > > > On Tue, Sep 22, 2015 at 09:35:35AM +0000, Dimitry Andric wrote: > ... > >> - imm |= (-1 << 7); > >> + imm |= -(1 << 7); > > > > May be (~0 << 7) is more simple to understund? > > This will give the same warning. ~0 will implicitly convert to -1. (~0U << 7) ? > (It would be better to convert all these masks to unsigned, where such > shifting is always defined, but that gives a lot more churn.) > > -Dimitry > From owner-svn-src-head@freebsd.org Tue Sep 22 10:45:51 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 92A74A0698C; Tue, 22 Sep 2015 10:45:51 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 80D841C0B; Tue, 22 Sep 2015 10:45:51 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MAjpFE081943; Tue, 22 Sep 2015 10:45:51 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MAjp0e081942; Tue, 22 Sep 2015 10:45:51 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509221045.t8MAjp0e081942@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 22 Sep 2015 10:45:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288104 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 10:45:51 -0000 Author: mav Date: Tue Sep 22 10:45:50 2015 New Revision: 288104 URL: https://svnweb.freebsd.org/changeset/base/288104 Log: Remove duplicate and incomplete code handling LUN modify. Instead reuse code from LUN creation. This allows most of LUN media options to be changed live with modify request without full restart. Modified: head/sys/cam/ctl/ctl_backend_block.c Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Tue Sep 22 10:31:48 2015 (r288103) +++ head/sys/cam/ctl/ctl_backend_block.c Tue Sep 22 10:45:50 2015 (r288104) @@ -263,10 +263,6 @@ static int ctl_be_block_create(struct ct struct ctl_lun_req *req); static int ctl_be_block_rm(struct ctl_be_block_softc *softc, struct ctl_lun_req *req); -static int ctl_be_block_modify_file(struct ctl_be_block_lun *be_lun, - struct ctl_lun_req *req); -static int ctl_be_block_modify_dev(struct ctl_be_block_lun *be_lun, - struct ctl_lun_req *req); static int ctl_be_block_modify(struct ctl_be_block_softc *softc, struct ctl_lun_req *req); static void ctl_be_block_lun_shutdown(void *be_lun); @@ -2593,85 +2589,6 @@ bailout_error: } static int -ctl_be_block_modify_file(struct ctl_be_block_lun *be_lun, - struct ctl_lun_req *req) -{ - struct ctl_be_lun *cbe_lun = &be_lun->cbe_lun; - struct vattr vattr; - int error; - struct ctl_lun_create_params *params = &be_lun->params; - - if (params->lun_size_bytes != 0) { - be_lun->size_bytes = params->lun_size_bytes; - } else { - vn_lock(be_lun->vn, LK_SHARED | LK_RETRY); - error = VOP_GETATTR(be_lun->vn, &vattr, curthread->td_ucred); - VOP_UNLOCK(be_lun->vn, 0); - if (error != 0) { - snprintf(req->error_str, sizeof(req->error_str), - "error calling VOP_GETATTR() for file %s", - be_lun->dev_path); - return (error); - } - be_lun->size_bytes = vattr.va_size; - } - be_lun->size_blocks = be_lun->size_bytes / cbe_lun->blocksize; - cbe_lun->maxlba = (be_lun->size_blocks == 0) ? - 0 : (be_lun->size_blocks - 1); - return (0); -} - -static int -ctl_be_block_modify_dev(struct ctl_be_block_lun *be_lun, - struct ctl_lun_req *req) -{ - struct ctl_be_lun *cbe_lun = &be_lun->cbe_lun; - struct ctl_lun_create_params *params = &be_lun->params; - struct cdevsw *csw; - struct cdev *dev; - uint64_t size_bytes; - int error, ref; - - csw = devvn_refthread(be_lun->vn, &dev, &ref); - if (csw == NULL) - return (ENXIO); - if (csw->d_ioctl == NULL) { - dev_relthread(dev, ref); - snprintf(req->error_str, sizeof(req->error_str), - "no d_ioctl for device %s!", be_lun->dev_path); - return (ENODEV); - } - - error = csw->d_ioctl(dev, DIOCGMEDIASIZE, (caddr_t)&size_bytes, FREAD, - curthread); - dev_relthread(dev, ref); - if (error) { - snprintf(req->error_str, sizeof(req->error_str), - "error %d returned for DIOCGMEDIASIZE ioctl " - "on %s!", error, be_lun->dev_path); - return (error); - } - - if (params->lun_size_bytes != 0) { - if (params->lun_size_bytes > size_bytes) { - snprintf(req->error_str, sizeof(req->error_str), - "requested LUN size %ju > backing device " - "size %ju", - (uintmax_t)params->lun_size_bytes, - (uintmax_t)size_bytes); - return (EINVAL); - } - be_lun->size_bytes = params->lun_size_bytes; - } else { - be_lun->size_bytes = size_bytes; - } - be_lun->size_blocks = be_lun->size_bytes / cbe_lun->blocksize; - cbe_lun->maxlba = (be_lun->size_blocks == 0) ? - 0 : (be_lun->size_blocks - 1); - return (0); -} - -static int ctl_be_block_modify(struct ctl_be_block_softc *softc, struct ctl_lun_req *req) { struct ctl_lun_modify_params *params; @@ -2726,9 +2643,9 @@ ctl_be_block_modify(struct ctl_be_block_ if (be_lun->vn == NULL) error = ctl_be_block_open(softc, be_lun, req); else if (vn_isdisk(be_lun->vn, &error)) - error = ctl_be_block_modify_dev(be_lun, req); + error = ctl_be_block_open_dev(be_lun, req); else if (be_lun->vn->v_type == VREG) - error = ctl_be_block_modify_file(be_lun, req); + error = ctl_be_block_open_file(be_lun, req); else error = EINVAL; if ((cbe_lun->flags & CTL_LUN_FLAG_OFFLINE) && From owner-svn-src-head@freebsd.org Tue Sep 22 12:56:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 431569CFF4B; Tue, 22 Sep 2015 12:56:35 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 33CFA1C78; Tue, 22 Sep 2015 12:56:35 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MCuZ2f035282; Tue, 22 Sep 2015 12:56:35 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MCuZV2035281; Tue, 22 Sep 2015 12:56:35 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509221256.t8MCuZV2035281@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 22 Sep 2015 12:56:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288108 - head/sys/arm64/cavium X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 12:56:35 -0000 Author: emaste Date: Tue Sep 22 12:56:34 2015 New Revision: 288108 URL: https://svnweb.freebsd.org/changeset/base/288108 Log: arm64 ThunderX PCIe workaround: enumerate only one slot for now Otherwise an em(4) NIC is detected 32 times. Submitted by: wma@semihalf.com Obtained from: Semihalf Differential Revision: https://reviews.freebsd.org/D3706 Modified: head/sys/arm64/cavium/thunder_pcie_pem.c Modified: head/sys/arm64/cavium/thunder_pcie_pem.c ============================================================================== --- head/sys/arm64/cavium/thunder_pcie_pem.c Tue Sep 22 11:38:58 2015 (r288107) +++ head/sys/arm64/cavium/thunder_pcie_pem.c Tue Sep 22 12:56:34 2015 (r288108) @@ -183,8 +183,16 @@ static int thunder_pem_maxslots(device_t dev) { +#if 0 /* max slots per bus acc. to standard */ return (PCI_SLOTMAX); +#else + /* + * ARM64TODO Workaround - otherwise an em(4) interface appears to be + * present on every PCI function on the bus to which it is connected + */ + return (0); +#endif } static int From owner-svn-src-head@freebsd.org Tue Sep 22 14:24:18 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 52911A06DD8 for ; Tue, 22 Sep 2015 14:24:18 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1b.ore.mailhop.org (outbound1b.ore.mailhop.org [54.200.247.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 32CB514F1 for ; Tue, 22 Sep 2015 14:24:17 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from ilsoft.org (unknown [73.34.117.227]) by outbound1.ore.mailhop.org (Halon Mail Gateway) with ESMTPSA; Tue, 22 Sep 2015 14:23:41 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id t8MEN7o0001169; Tue, 22 Sep 2015 08:23:07 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <1442931787.1224.205.camel@freebsd.org> Subject: Re: svn commit: r288099 - head/contrib/binutils/opcodes From: Ian Lepore To: Dimitry Andric Cc: Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Tue, 22 Sep 2015 08:23:07 -0600 In-Reply-To: <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> References: <201509220935.t8M9ZZfD051027@repo.freebsd.org> <20150922094301.GW3158@zxy.spb.ru> <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.10 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 14:24:18 -0000 On Tue, 2015-09-22 at 11:53 +0200, Dimitry Andric wrote: > On 22 Sep 2015, at 11:43, Slawa Olhovchenkov wrote: > > > > On Tue, Sep 22, 2015 at 09:35:35AM +0000, Dimitry Andric wrote: > ... > >> - imm |= (-1 << 7); > >> + imm |= -(1 << 7); > > > > May be (~0 << 7) is more simple to understund? > > This will give the same warning. ~0 will implicitly convert to -1. > > (It would be better to convert all these masks to unsigned, where such > shifting is always defined, but that gives a lot more churn.) > > -Dimitry > How is (-1U << 7) more churn? -- Ian From owner-svn-src-head@freebsd.org Tue Sep 22 14:26:54 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C9595A06F0A; Tue, 22 Sep 2015 14:26:54 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 845561907; Tue, 22 Sep 2015 14:26:54 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.84 (FreeBSD)) (envelope-from ) id 1ZeOWy-000Ho8-JM; Tue, 22 Sep 2015 17:26:52 +0300 Date: Tue, 22 Sep 2015 17:26:52 +0300 From: Slawa Olhovchenkov To: Ian Lepore Cc: Dimitry Andric , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r288099 - head/contrib/binutils/opcodes Message-ID: <20150922142652.GO21849@zxy.spb.ru> References: <201509220935.t8M9ZZfD051027@repo.freebsd.org> <20150922094301.GW3158@zxy.spb.ru> <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> <1442931787.1224.205.camel@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1442931787.1224.205.camel@freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 14:26:54 -0000 On Tue, Sep 22, 2015 at 08:23:07AM -0600, Ian Lepore wrote: > On Tue, 2015-09-22 at 11:53 +0200, Dimitry Andric wrote: > > On 22 Sep 2015, at 11:43, Slawa Olhovchenkov wrote: > > > > > > On Tue, Sep 22, 2015 at 09:35:35AM +0000, Dimitry Andric wrote: > > ... > > >> - imm |= (-1 << 7); > > >> + imm |= -(1 << 7); > > > > > > May be (~0 << 7) is more simple to understund? > > > > This will give the same warning. ~0 will implicitly convert to -1. > > > > (It would be better to convert all these masks to unsigned, where such > > shifting is always defined, but that gives a lot more churn.) > > > > -Dimitry > > > > How is (-1U << 7) more churn? "There are no negative integer literals. Expressions such as -1 apply the unary minus operator to the value represented by the literal, which may involve implicit type conversions." From owner-svn-src-head@freebsd.org Tue Sep 22 14:55:47 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D98B4A07D1F; Tue, 22 Sep 2015 14:55:47 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CA36B1C03; Tue, 22 Sep 2015 14:55:47 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MEtltw084941; Tue, 22 Sep 2015 14:55:47 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MEtl0I084938; Tue, 22 Sep 2015 14:55:47 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509221455.t8MEtl0I084938@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 22 Sep 2015 14:55:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288110 - in head/sys/cam: ctl scsi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 14:55:48 -0000 Author: mav Date: Tue Sep 22 14:55:46 2015 New Revision: 288110 URL: https://svnweb.freebsd.org/changeset/base/288110 Log: Add support for Control extension mode page. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_private.h head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Tue Sep 22 14:33:43 2015 (r288109) +++ head/sys/cam/ctl/ctl.c Tue Sep 22 14:55:46 2015 (r288110) @@ -261,6 +261,26 @@ const static struct scsi_control_page co /*extended_selftest_completion_time*/{0, 0} }; +#define CTL_CEM_LEN (sizeof(struct scsi_control_ext_page) - 4) + +const static struct scsi_control_ext_page control_ext_page_default = { + /*page_code*/SMS_CONTROL_MODE_PAGE | SMPH_SPF, + /*subpage_code*/0x01, + /*page_length*/{CTL_CEM_LEN >> 8, CTL_CEM_LEN}, + /*flags*/0, + /*prio*/0, + /*max_sense*/0 +}; + +const static struct scsi_control_ext_page control_ext_page_changeable = { + /*page_code*/SMS_CONTROL_MODE_PAGE | SMPH_SPF, + /*subpage_code*/0x01, + /*page_length*/{CTL_CEM_LEN >> 8, CTL_CEM_LEN}, + /*flags*/0, + /*prio*/0, + /*max_sense*/0 +}; + const static struct scsi_info_exceptions_page ie_page_default = { /*page_code*/SMS_INFO_EXCEPTIONS_PAGE, /*page_length*/sizeof(struct scsi_info_exceptions_page) - 2, @@ -3956,35 +3976,65 @@ ctl_init_page_index(struct ctl_lun *lun) break; } case SMS_CONTROL_MODE_PAGE: { - struct scsi_control_page *control_page; - - if (page_index->subpage != SMS_SUBPAGE_PAGE_0) - panic("invalid subpage value %d", - page_index->subpage); + switch (page_index->subpage) { + case SMS_SUBPAGE_PAGE_0: { + struct scsi_control_page *control_page; - memcpy(&lun->mode_pages.control_page[CTL_PAGE_DEFAULT], - &control_page_default, - sizeof(control_page_default)); - memcpy(&lun->mode_pages.control_page[ - CTL_PAGE_CHANGEABLE], &control_page_changeable, - sizeof(control_page_changeable)); - memcpy(&lun->mode_pages.control_page[CTL_PAGE_SAVED], - &control_page_default, - sizeof(control_page_default)); - control_page = &lun->mode_pages.control_page[ - CTL_PAGE_SAVED]; - value = ctl_get_opt(&lun->be_lun->options, "reordering"); - if (value != NULL && strcmp(value, "unrestricted") == 0) { - control_page->queue_flags &= ~SCP_QUEUE_ALG_MASK; - control_page->queue_flags |= SCP_QUEUE_ALG_UNRESTRICTED; - } - memcpy(&lun->mode_pages.control_page[CTL_PAGE_CURRENT], - &lun->mode_pages.control_page[CTL_PAGE_SAVED], - sizeof(control_page_default)); - page_index->page_data = - (uint8_t *)lun->mode_pages.control_page; + memcpy(&lun->mode_pages.control_page[ + CTL_PAGE_DEFAULT], + &control_page_default, + sizeof(control_page_default)); + memcpy(&lun->mode_pages.control_page[ + CTL_PAGE_CHANGEABLE], + &control_page_changeable, + sizeof(control_page_changeable)); + memcpy(&lun->mode_pages.control_page[ + CTL_PAGE_SAVED], + &control_page_default, + sizeof(control_page_default)); + control_page = &lun->mode_pages.control_page[ + CTL_PAGE_SAVED]; + value = ctl_get_opt(&lun->be_lun->options, + "reordering"); + if (value != NULL && + strcmp(value, "unrestricted") == 0) { + control_page->queue_flags &= + ~SCP_QUEUE_ALG_MASK; + control_page->queue_flags |= + SCP_QUEUE_ALG_UNRESTRICTED; + } + memcpy(&lun->mode_pages.control_page[ + CTL_PAGE_CURRENT], + &lun->mode_pages.control_page[ + CTL_PAGE_SAVED], + sizeof(control_page_default)); + page_index->page_data = + (uint8_t *)lun->mode_pages.control_page; + break; + } + case 0x01: + memcpy(&lun->mode_pages.control_ext_page[ + CTL_PAGE_DEFAULT], + &control_ext_page_default, + sizeof(control_ext_page_default)); + memcpy(&lun->mode_pages.control_ext_page[ + CTL_PAGE_CHANGEABLE], + &control_ext_page_changeable, + sizeof(control_ext_page_changeable)); + memcpy(&lun->mode_pages.control_ext_page[ + CTL_PAGE_SAVED], + &control_ext_page_default, + sizeof(control_ext_page_default)); + memcpy(&lun->mode_pages.control_ext_page[ + CTL_PAGE_CURRENT], + &lun->mode_pages.control_ext_page[ + CTL_PAGE_SAVED], + sizeof(control_ext_page_default)); + page_index->page_data = + (uint8_t *)lun->mode_pages.control_ext_page; + break; + } break; - } case SMS_INFO_EXCEPTIONS_PAGE: { switch (page_index->subpage) { Modified: head/sys/cam/ctl/ctl_private.h ============================================================================== --- head/sys/cam/ctl/ctl_private.h Tue Sep 22 14:33:43 2015 (r288109) +++ head/sys/cam/ctl/ctl_private.h Tue Sep 22 14:55:46 2015 (r288110) @@ -283,6 +283,9 @@ static const struct ctl_page_index page_ CTL_PAGE_FLAG_DISK_ONLY, NULL, ctl_caching_sp_handler}, {SMS_CONTROL_MODE_PAGE, 0, sizeof(struct scsi_control_page), NULL, CTL_PAGE_FLAG_NONE, NULL, ctl_control_page_handler}, + {SMS_CONTROL_MODE_PAGE | SMPH_SPF, 0x01, + sizeof(struct scsi_control_ext_page), NULL, + CTL_PAGE_FLAG_NONE, NULL, NULL}, {SMS_INFO_EXCEPTIONS_PAGE, 0, sizeof(struct scsi_info_exceptions_page), NULL, CTL_PAGE_FLAG_NONE, NULL, NULL}, {SMS_INFO_EXCEPTIONS_PAGE | SMPH_SPF, 0x02, @@ -302,6 +305,7 @@ struct ctl_mode_pages { struct scsi_rigid_disk_page rigid_disk_page[4]; struct scsi_caching_page caching_page[4]; struct scsi_control_page control_page[4]; + struct scsi_control_ext_page control_ext_page[4]; struct scsi_info_exceptions_page ie_page[4]; struct ctl_logical_block_provisioning_page lbp_page[4]; struct copan_debugconf_subpage debugconf_subpage[4]; Modified: head/sys/cam/scsi/scsi_all.h ============================================================================== --- head/sys/cam/scsi/scsi_all.h Tue Sep 22 14:33:43 2015 (r288109) +++ head/sys/cam/scsi/scsi_all.h Tue Sep 22 14:55:46 2015 (r288110) @@ -700,6 +700,19 @@ struct scsi_control_page { u_int8_t extended_selftest_completion_time[2]; }; +struct scsi_control_ext_page { + uint8_t page_code; + uint8_t subpage_code; + uint8_t page_length[2]; + uint8_t flags; +#define SCEP_TCMOS 0x04 /* Timestamp Changeable by */ +#define SCEP_SCSIP 0x02 /* SCSI Precedence (clock) */ +#define SCEP_IALUAE 0x01 /* Implicit ALUA Enabled */ + uint8_t prio; + uint8_t max_sense; + uint8_t reserve[25]; +}; + struct scsi_cache_page { u_int8_t page_code; #define SCHP_PAGE_SAVABLE 0x80 /* Page is savable */ From owner-svn-src-head@freebsd.org Tue Sep 22 15:06:27 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D5F87A061C4; Tue, 22 Sep 2015 15:06:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C714613B2; Tue, 22 Sep 2015 15:06:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MF6RnE089142; Tue, 22 Sep 2015 15:06:27 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MF6RaE089141; Tue, 22 Sep 2015 15:06:27 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509221506.t8MF6RaE089141@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 22 Sep 2015 15:06:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288111 - head/sys/dev/ahci X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 15:06:27 -0000 Author: mav Date: Tue Sep 22 15:06:26 2015 New Revision: 288111 URL: https://svnweb.freebsd.org/changeset/base/288111 Log: Allow AHCI driver attach to all known chips reporting RAID class. Reported by: Michael BlackHeart MFC after: 1 week Modified: head/sys/dev/ahci/ahci_pci.c Modified: head/sys/dev/ahci/ahci_pci.c ============================================================================== --- head/sys/dev/ahci/ahci_pci.c Tue Sep 22 14:55:46 2015 (r288110) +++ head/sys/dev/ahci/ahci_pci.c Tue Sep 22 15:06:26 2015 (r288111) @@ -327,6 +327,9 @@ ahci_probe(device_t dev) pci_get_subclass(dev) == PCIS_STORAGE_SATA && pci_get_progif(dev) == PCIP_STORAGE_SATA_AHCI_1_0) valid = 1; + else if (pci_get_class(dev) == PCIC_STORAGE && + pci_get_subclass(dev) == PCIS_STORAGE_RAID) + valid = 2; /* Is this a known AHCI chip? */ for (i = 0; ahci_ids[i].id != 0; i++) { if (ahci_ids[i].id == devid && @@ -343,7 +346,7 @@ ahci_probe(device_t dev) return (BUS_PROBE_DEFAULT); } } - if (!valid) + if (valid != 1) return (ENXIO); device_set_desc_copy(dev, "AHCI SATA controller"); return (BUS_PROBE_DEFAULT); From owner-svn-src-head@freebsd.org Tue Sep 22 15:32:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C19E3A06DE8; Tue, 22 Sep 2015 15:32:28 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B2EA117F8; Tue, 22 Sep 2015 15:32:28 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MFWSRQ001162; Tue, 22 Sep 2015 15:32:28 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MFWS49001161; Tue, 22 Sep 2015 15:32:28 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201509221532.t8MFWS49001161@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Tue, 22 Sep 2015 15:32:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288112 - head/sys/dev/drm2 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 15:32:28 -0000 Author: bz Date: Tue Sep 22 15:32:27 2015 New Revision: 288112 URL: https://svnweb.freebsd.org/changeset/base/288112 Log: Hide an unused in FreeBSD function behind #ifdef linux to get rid of the compile time warning. Reviewed by: gnn MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D3710 Modified: head/sys/dev/drm2/drm_lock.c Modified: head/sys/dev/drm2/drm_lock.c ============================================================================== --- head/sys/dev/drm2/drm_lock.c Tue Sep 22 15:06:26 2015 (r288111) +++ head/sys/dev/drm2/drm_lock.c Tue Sep 22 15:32:27 2015 (r288112) @@ -38,7 +38,9 @@ __FBSDID("$FreeBSD$"); #include +#if defined(__linux__) static int drm_notifier(void *priv); +#endif static int drm_lock_take(struct drm_lock_data *lock_data, unsigned int context); @@ -284,6 +286,7 @@ int drm_lock_free(struct drm_lock_data * return 0; } +#if defined(__linux__) /** * If we get here, it means that the process has called DRM_IOCTL_LOCK * without calling DRM_IOCTL_UNLOCK. @@ -314,6 +317,7 @@ static int drm_notifier(void *priv) } while (prev != old); return 0; } +#endif /** * This function returns immediately and takes the hw lock From owner-svn-src-head@freebsd.org Tue Sep 22 15:40:14 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7BEDA051A3; Tue, 22 Sep 2015 15:40:14 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B7B231AC2; Tue, 22 Sep 2015 15:40:14 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MFeE5Z001612; Tue, 22 Sep 2015 15:40:14 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MFe8Yo001582; Tue, 22 Sep 2015 15:40:08 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509221540.t8MFe8Yo001582@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Tue, 22 Sep 2015 15:40:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288113 - head/lib/libc/rpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 15:40:15 -0000 Author: rodrigc Date: Tue Sep 22 15:40:07 2015 New Revision: 288113 URL: https://svnweb.freebsd.org/changeset/base/288113 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/rpc/auth_unix.c head/lib/libc/rpc/authdes_prot.c head/lib/libc/rpc/authunix_prot.c head/lib/libc/rpc/bindresvport.c head/lib/libc/rpc/clnt_bcast.c head/lib/libc/rpc/clnt_perror.c head/lib/libc/rpc/clnt_raw.c head/lib/libc/rpc/clnt_simple.c head/lib/libc/rpc/clnt_vc.c head/lib/libc/rpc/des_crypt.c head/lib/libc/rpc/getnetconfig.c head/lib/libc/rpc/getnetpath.c head/lib/libc/rpc/getrpcent.c head/lib/libc/rpc/getrpcport.c head/lib/libc/rpc/mt_misc.c head/lib/libc/rpc/netname.c head/lib/libc/rpc/netnamer.c head/lib/libc/rpc/pmap_getmaps.c head/lib/libc/rpc/pmap_getport.c head/lib/libc/rpc/pmap_prot.c head/lib/libc/rpc/pmap_prot2.c head/lib/libc/rpc/pmap_rmt.c head/lib/libc/rpc/rpc_callmsg.c head/lib/libc/rpc/rpc_generic.c head/lib/libc/rpc/rpc_prot.c head/lib/libc/rpc/rpc_soc.c head/lib/libc/rpc/rpcb_clnt.c head/lib/libc/rpc/rpcb_prot.c head/lib/libc/rpc/rpcb_st_xdr.c head/lib/libc/rpc/svc_auth.c head/lib/libc/rpc/svc_auth_unix.c head/lib/libc/rpc/svc_generic.c head/lib/libc/rpc/svc_raw.c head/lib/libc/rpc/svc_run.c head/lib/libc/rpc/svc_simple.c Modified: head/lib/libc/rpc/auth_unix.c ============================================================================== --- head/lib/libc/rpc/auth_unix.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/auth_unix.c Tue Sep 22 15:40:07 2015 (r288113) @@ -91,12 +91,7 @@ struct audata { * Returns an auth handle with the given stuff in it. */ AUTH * -authunix_create(machname, uid, gid, len, aup_gids) - char *machname; - u_int uid; - u_int gid; - int len; - u_int *aup_gids; +authunix_create(char *machname, u_int uid, u_int gid, int len, u_int *aup_gids) { struct authunix_parms aup; char mymem[MAX_AUTH_BYTES]; @@ -182,7 +177,7 @@ authunix_create(machname, uid, gid, len, * syscalls. */ AUTH * -authunix_create_default() +authunix_create_default(void) { AUTH *auth; int ngids; @@ -218,16 +213,13 @@ authunix_create_default() /* ARGSUSED */ static void -authunix_nextverf(auth) - AUTH *auth; +authunix_nextverf(AUTH *auth) { /* no action necessary */ } static bool_t -authunix_marshal(auth, xdrs) - AUTH *auth; - XDR *xdrs; +authunix_marshal(AUTH *auth, XDR *xdrs) { struct audata *au; @@ -239,9 +231,7 @@ authunix_marshal(auth, xdrs) } static bool_t -authunix_validate(auth, verf) - AUTH *auth; - struct opaque_auth *verf; +authunix_validate(AUTH *auth, struct opaque_auth *verf) { struct audata *au; XDR xdrs; @@ -317,8 +307,7 @@ done: } static void -authunix_destroy(auth) - AUTH *auth; +authunix_destroy(AUTH *auth) { struct audata *au; @@ -343,8 +332,7 @@ authunix_destroy(auth) * sets private data, au_marshed and au_mpos */ static void -marshal_new_auth(auth) - AUTH *auth; +marshal_new_auth(AUTH *auth) { XDR xdr_stream; XDR *xdrs = &xdr_stream; @@ -363,7 +351,7 @@ marshal_new_auth(auth) } static struct auth_ops * -authunix_ops() +authunix_ops(void) { static struct auth_ops ops; Modified: head/lib/libc/rpc/authdes_prot.c ============================================================================== --- head/lib/libc/rpc/authdes_prot.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/authdes_prot.c Tue Sep 22 15:40:07 2015 (r288113) @@ -49,9 +49,7 @@ __FBSDID("$FreeBSD$"); #define ATTEMPT(xdr_op) if (!(xdr_op)) return (FALSE) bool_t -xdr_authdes_cred(xdrs, cred) - XDR *xdrs; - struct authdes_cred *cred; +xdr_authdes_cred(XDR *xdrs, struct authdes_cred *cred) { enum authdes_namekind *padc_namekind = &cred->adc_namekind; /* @@ -78,9 +76,7 @@ xdr_authdes_cred(xdrs, cred) bool_t -xdr_authdes_verf(xdrs, verf) - XDR *xdrs; - struct authdes_verf *verf; +xdr_authdes_verf(XDR *xdrs, struct authdes_verf *verf) { /* * Unrolled xdr Modified: head/lib/libc/rpc/authunix_prot.c ============================================================================== --- head/lib/libc/rpc/authunix_prot.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/authunix_prot.c Tue Sep 22 15:40:07 2015 (r288113) @@ -55,9 +55,7 @@ __FBSDID("$FreeBSD$"); * XDR for unix authentication parameters. */ bool_t -xdr_authunix_parms(xdrs, p) - XDR *xdrs; - struct authunix_parms *p; +xdr_authunix_parms(XDR *xdrs, struct authunix_parms *p) { u_int **paup_gids; Modified: head/lib/libc/rpc/bindresvport.c ============================================================================== --- head/lib/libc/rpc/bindresvport.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/bindresvport.c Tue Sep 22 15:40:07 2015 (r288113) @@ -61,9 +61,7 @@ __FBSDID("$FreeBSD$"); * Bind a socket to a privileged IP port */ int -bindresvport(sd, sin) - int sd; - struct sockaddr_in *sin; +bindresvport(int sd, struct sockaddr_in *sin) { return bindresvport_sa(sd, (struct sockaddr *)sin); } @@ -72,9 +70,7 @@ bindresvport(sd, sin) * Bind a socket to a privileged IP port */ int -bindresvport_sa(sd, sa) - int sd; - struct sockaddr *sa; +bindresvport_sa(int sd, struct sockaddr *sa) { int old, error, af; struct sockaddr_storage myaddr; Modified: head/lib/libc/rpc/clnt_bcast.c ============================================================================== --- head/lib/libc/rpc/clnt_bcast.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/clnt_bcast.c Tue Sep 22 15:40:07 2015 (r288113) @@ -225,21 +225,26 @@ __rpc_broadenable(int af, int s, struct return 0; } - +/* + * rpc_broadcast_exp() + * + * prog - program number + * vers - version number + * proc - procedure number + * xargs - xdr routine for args + * argsp - pointer to args + * xresults - xdr routine for results + * resultsp - pointer to results + * eachresult - call with each result obtained + * inittime - how long to wait initially + * waittime - maximum time to wait + * nettype - transport type + */ enum clnt_stat -rpc_broadcast_exp(prog, vers, proc, xargs, argsp, xresults, resultsp, - eachresult, inittime, waittime, nettype) - rpcprog_t prog; /* program number */ - rpcvers_t vers; /* version number */ - rpcproc_t proc; /* procedure number */ - xdrproc_t xargs; /* xdr routine for args */ - caddr_t argsp; /* pointer to args */ - xdrproc_t xresults; /* xdr routine for results */ - caddr_t resultsp; /* pointer to results */ - resultproc_t eachresult; /* call with each result obtained */ - int inittime; /* how long to wait initially */ - int waittime; /* maximum time to wait */ - const char *nettype; /* transport type */ +rpc_broadcast_exp(rpcprog_t prog, rpcvers_t vers, rpcproc_t proc, + xdrproc_t xargs, caddr_t argsp, xdrproc_t xresults, caddr_t resultsp, + resultproc_t eachresult, int inittime, int waittime, + const char *nettype) { enum clnt_stat stat = RPC_SUCCESS; /* Return status */ XDR xdr_stream; /* XDR stream */ @@ -649,19 +654,23 @@ done_broad: return (stat); } - +/* + * rpc_broadcast() + * + * prog - program number + * vers - version number + * proc - procedure number + * xargs - xdr routine for args + * argsp - pointer to args + * xresults - xdr routine for results + * resultsp - pointer to results + * eachresult - call with each result obtained + * nettype - transport type + */ enum clnt_stat -rpc_broadcast(prog, vers, proc, xargs, argsp, xresults, resultsp, - eachresult, nettype) - rpcprog_t prog; /* program number */ - rpcvers_t vers; /* version number */ - rpcproc_t proc; /* procedure number */ - xdrproc_t xargs; /* xdr routine for args */ - caddr_t argsp; /* pointer to args */ - xdrproc_t xresults; /* xdr routine for results */ - caddr_t resultsp; /* pointer to results */ - resultproc_t eachresult; /* call with each result obtained */ - const char *nettype; /* transport type */ +rpc_broadcast(rpcprog_t prog, rpcvers_t vers, rpcproc_t proc, xdrproc_t xargs, + caddr_t argsp, xdrproc_t xresults, caddr_t resultsp, + resultproc_t eachresult, const char *nettype) { enum clnt_stat dummy; Modified: head/lib/libc/rpc/clnt_perror.c ============================================================================== --- head/lib/libc/rpc/clnt_perror.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/clnt_perror.c Tue Sep 22 15:40:07 2015 (r288113) @@ -61,7 +61,7 @@ static char *auth_errmsg(enum auth_stat) #define CLNT_PERROR_BUFLEN 256 static char * -_buf() +_buf(void) { if (buf == 0) @@ -73,9 +73,7 @@ _buf() * Print reply error info */ char * -clnt_sperror(rpch, s) - CLIENT *rpch; - const char *s; +clnt_sperror(CLIENT *rpch, const char *s) { struct rpc_err e; char *err; @@ -180,9 +178,7 @@ clnt_sperror(rpch, s) } void -clnt_perror(rpch, s) - CLIENT *rpch; - const char *s; +clnt_perror(CLIENT *rpch, const char *s) { assert(rpch != NULL); @@ -217,8 +213,7 @@ static const char *const rpc_errlist[] = * This interface for use by clntrpc */ char * -clnt_sperrno(stat) - enum clnt_stat stat; +clnt_sperrno(enum clnt_stat stat) { unsigned int errnum = stat; @@ -230,16 +225,14 @@ clnt_sperrno(stat) } void -clnt_perrno(num) - enum clnt_stat num; +clnt_perrno(enum clnt_stat num) { (void) fprintf(stderr, "%s\n", clnt_sperrno(num)); } char * -clnt_spcreateerror(s) - const char *s; +clnt_spcreateerror(const char *s) { char *str; size_t len, i; @@ -291,8 +284,7 @@ clnt_spcreateerror(s) } void -clnt_pcreateerror(s) - const char *s; +clnt_pcreateerror(const char *s) { assert(s != NULL); @@ -319,8 +311,7 @@ static const char *const auth_errlist[] }; static char * -auth_errmsg(stat) - enum auth_stat stat; +auth_errmsg(enum auth_stat stat) { unsigned int errnum = stat; Modified: head/lib/libc/rpc/clnt_raw.c ============================================================================== --- head/lib/libc/rpc/clnt_raw.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/clnt_raw.c Tue Sep 22 15:40:07 2015 (r288113) @@ -87,9 +87,7 @@ static struct clnt_ops *clnt_raw_ops(voi * Create a client handle for memory based rpc. */ CLIENT * -clnt_raw_create(prog, vers) - rpcprog_t prog; - rpcvers_t vers; +clnt_raw_create(rpcprog_t prog, rpcvers_t vers) { struct clntraw_private *clp; struct rpc_msg call_msg; @@ -142,14 +140,8 @@ clnt_raw_create(prog, vers) /* ARGSUSED */ static enum clnt_stat -clnt_raw_call(h, proc, xargs, argsp, xresults, resultsp, timeout) - CLIENT *h; - rpcproc_t proc; - xdrproc_t xargs; - void *argsp; - xdrproc_t xresults; - void *resultsp; - struct timeval timeout; +clnt_raw_call(CLIENT *h, rpcproc_t proc, xdrproc_t xargs, void *argsp, + xdrproc_t xresults, void *resultsp, struct timeval timeout) { struct clntraw_private *clp = clntraw_private; XDR *xdrs = &clp->xdr_stream; @@ -240,19 +232,14 @@ call_again: /*ARGSUSED*/ static void -clnt_raw_geterr(cl, err) - CLIENT *cl; - struct rpc_err *err; +clnt_raw_geterr(CLIENT *cl, struct rpc_err *err) { } /* ARGSUSED */ static bool_t -clnt_raw_freeres(cl, xdr_res, res_ptr) - CLIENT *cl; - xdrproc_t xdr_res; - void *res_ptr; +clnt_raw_freeres(CLIENT *cl, xdrproc_t xdr_res, void *res_ptr) { struct clntraw_private *clp = clntraw_private; XDR *xdrs = &clp->xdr_stream; @@ -271,30 +258,25 @@ clnt_raw_freeres(cl, xdr_res, res_ptr) /*ARGSUSED*/ static void -clnt_raw_abort(cl) - CLIENT *cl; +clnt_raw_abort(CLIENT *cl) { } /*ARGSUSED*/ static bool_t -clnt_raw_control(cl, ui, str) - CLIENT *cl; - u_int ui; - void *str; +clnt_raw_control(CLIENT *cl, u_int ui, void *str) { return (FALSE); } /*ARGSUSED*/ static void -clnt_raw_destroy(cl) - CLIENT *cl; +clnt_raw_destroy(CLIENT *cl) { } static struct clnt_ops * -clnt_raw_ops() +clnt_raw_ops(void) { static struct clnt_ops ops; Modified: head/lib/libc/rpc/clnt_simple.c ============================================================================== --- head/lib/libc/rpc/clnt_simple.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/clnt_simple.c Tue Sep 22 15:40:07 2015 (r288113) @@ -107,17 +107,19 @@ rpc_call_key_init(void) * the future calls to same prog, vers, host and nettype combination. * * The total time available is 25 seconds. + * + * host - host name + * prognum - program number + * versnum - version number + * procnum - procedure number + * inproc, outproc - in/out XDR procedures + * in, out - recv/send data + * nettype - nettype */ enum clnt_stat -rpc_call(host, prognum, versnum, procnum, inproc, in, outproc, out, nettype) - const char *host; /* host name */ - rpcprog_t prognum; /* program number */ - rpcvers_t versnum; /* version number */ - rpcproc_t procnum; /* procedure number */ - xdrproc_t inproc, outproc; /* in/out XDR procedures */ - const char *in; - char *out; /* recv/send data */ - const char *nettype; /* nettype */ +rpc_call(const char *host, const rpcprog_t prognum, const rpcvers_t versnum, + const rpcproc_t procnum, const xdrproc_t inproc, const char *in, + const xdrproc_t outproc, char *out, const char *nettype) { struct rpc_call_private *rcp = (struct rpc_call_private *) 0; enum clnt_stat clnt_stat; Modified: head/lib/libc/rpc/clnt_vc.c ============================================================================== --- head/lib/libc/rpc/clnt_vc.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/clnt_vc.c Tue Sep 22 15:40:07 2015 (r288113) @@ -153,15 +153,17 @@ static const char __no_mem_str[] = "out * set this something more useful. * * fd should be an open socket + * + * fd - open file descriptor + * raddr - servers address + * prog - program number + * vers - version number + * sendsz - buffer send size + * recvsz - buffer recv size */ CLIENT * -clnt_vc_create(fd, raddr, prog, vers, sendsz, recvsz) - int fd; /* open file descriptor */ - const struct netbuf *raddr; /* servers address */ - const rpcprog_t prog; /* program number */ - const rpcvers_t vers; /* version number */ - u_int sendsz; /* buffer recv size */ - u_int recvsz; /* buffer send size */ +clnt_vc_create(int fd, const struct netbuf *raddr, const rpcprog_t prog, + const rpcvers_t vers, u_int sendsz, u_int recvsz) { CLIENT *cl; /* client handle */ struct ct_data *ct = NULL; /* client handle */ @@ -311,14 +313,8 @@ err: } static enum clnt_stat -clnt_vc_call(cl, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout) - CLIENT *cl; - rpcproc_t proc; - xdrproc_t xdr_args; - void *args_ptr; - xdrproc_t xdr_results; - void *results_ptr; - struct timeval timeout; +clnt_vc_call(CLIENT *cl, rpcproc_t proc, xdrproc_t xdr_args, void *args_ptr, + xdrproc_t xdr_results, void *results_ptr, struct timeval timeout) { struct ct_data *ct = (struct ct_data *) cl->cl_private; XDR *xdrs = &(ct->ct_xdrs); @@ -461,9 +457,7 @@ call_again: } static void -clnt_vc_geterr(cl, errp) - CLIENT *cl; - struct rpc_err *errp; +clnt_vc_geterr(CLIENT *cl, struct rpc_err *errp) { struct ct_data *ct; @@ -475,10 +469,7 @@ clnt_vc_geterr(cl, errp) } static bool_t -clnt_vc_freeres(cl, xdr_res, res_ptr) - CLIENT *cl; - xdrproc_t xdr_res; - void *res_ptr; +clnt_vc_freeres(CLIENT *cl, xdrproc_t xdr_res, void *res_ptr) { struct ct_data *ct; XDR *xdrs; @@ -507,16 +498,12 @@ clnt_vc_freeres(cl, xdr_res, res_ptr) /*ARGSUSED*/ static void -clnt_vc_abort(cl) - CLIENT *cl; +clnt_vc_abort(CLIENT *cl) { } static bool_t -clnt_vc_control(cl, request, info) - CLIENT *cl; - u_int request; - void *info; +clnt_vc_control(CLIENT *cl, u_int request, void *info) { struct ct_data *ct; void *infop = info; @@ -644,8 +631,7 @@ clnt_vc_control(cl, request, info) static void -clnt_vc_destroy(cl) - CLIENT *cl; +clnt_vc_destroy(CLIENT *cl) { struct ct_data *ct = (struct ct_data *) cl->cl_private; int ct_fd = ct->ct_fd; @@ -684,10 +670,7 @@ clnt_vc_destroy(cl) * around for the rpc level. */ static int -read_vc(ctp, buf, len) - void *ctp; - void *buf; - int len; +read_vc(void *ctp, void *buf, int len) { struct sockaddr sa; socklen_t sal; @@ -741,10 +724,7 @@ read_vc(ctp, buf, len) } static int -write_vc(ctp, buf, len) - void *ctp; - void *buf; - int len; +write_vc(void *ctp, void *buf, int len) { struct sockaddr sa; socklen_t sal; @@ -775,7 +755,7 @@ write_vc(ctp, buf, len) } static struct clnt_ops * -clnt_vc_ops() +clnt_vc_ops(void) { static struct clnt_ops ops; sigset_t mask, newmask; @@ -803,18 +783,14 @@ clnt_vc_ops() * Note this is different from time_not_ok in clnt_dg.c */ static bool_t -time_not_ok(t) - struct timeval *t; +time_not_ok(struct timeval *t) { return (t->tv_sec <= -1 || t->tv_sec > 100000000 || t->tv_usec <= -1 || t->tv_usec > 1000000); } static int -__msgread(sock, buf, cnt) - int sock; - void *buf; - size_t cnt; +__msgread(int sock, void *buf, size_t cnt) { struct iovec iov[1]; struct msghdr msg; @@ -839,10 +815,7 @@ __msgread(sock, buf, cnt) } static int -__msgwrite(sock, buf, cnt) - int sock; - void *buf; - size_t cnt; +__msgwrite(int sock, void *buf, size_t cnt) { struct iovec iov[1]; struct msghdr msg; Modified: head/lib/libc/rpc/des_crypt.c ============================================================================== --- head/lib/libc/rpc/des_crypt.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/des_crypt.c Tue Sep 22 15:40:07 2015 (r288113) @@ -41,7 +41,7 @@ static char sccsid[] = "@(#)des_crypt.c __FBSDID("$FreeBSD$"); static int common_crypt( char *, char *, unsigned, unsigned, struct desparams * ); -int (*__des_crypt_LOCAL)() = 0; +int (*__des_crypt_LOCAL)(char *, unsigned, struct desparams *) = 0; extern int _des_crypt_call(char *, int, struct desparams *); /* * Copy 8 bytes Modified: head/lib/libc/rpc/getnetconfig.c ============================================================================== --- head/lib/libc/rpc/getnetconfig.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/getnetconfig.c Tue Sep 22 15:40:07 2015 (r288113) @@ -147,7 +147,7 @@ nc_key_init(void) #define MAXNETCONFIGLINE 1000 static int * -__nc_error() +__nc_error(void) { static int nc_error = 0; int *nc_addr; @@ -194,7 +194,7 @@ __nc_error() * the netconfig database is not present). */ void * -setnetconfig() +setnetconfig(void) { struct netconfig_vars *nc_vars; @@ -240,8 +240,7 @@ setnetconfig() */ struct netconfig * -getnetconfig(handlep) -void *handlep; +getnetconfig(void *handlep) { struct netconfig_vars *ncp = (struct netconfig_vars *)handlep; char *stringp; /* tmp string pointer */ @@ -378,8 +377,7 @@ void *handlep; * previously). */ int -endnetconfig(handlep) -void *handlep; +endnetconfig(void *handlep) { struct netconfig_vars *nc_handlep = (struct netconfig_vars *)handlep; @@ -444,8 +442,7 @@ void *handlep; */ struct netconfig * -getnetconfigent(netid) - const char *netid; +getnetconfigent(const char *netid) { FILE *file; /* NETCONFIG db's file pointer */ char *linep; /* holds current netconfig line */ @@ -536,8 +533,7 @@ getnetconfigent(netid) */ void -freenetconfigent(netconfigp) - struct netconfig *netconfigp; +freenetconfigent(struct netconfig *netconfigp) { if (netconfigp != NULL) { free(netconfigp->nc_netid); /* holds all netconfigp's strings */ @@ -558,12 +554,13 @@ freenetconfigent(netconfigp) * Note that we modify stringp (putting NULLs after tokens) and * we set the ncp's string field pointers to point to these tokens within * stringp. + * + * stringp - string to parse + * ncp - where to put results */ static int -parse_ncp(stringp, ncp) -char *stringp; /* string to parse */ -struct netconfig *ncp; /* where to put results */ +parse_ncp(char *stringp, struct netconfig *ncp) { char *tokenp; /* for processing tokens */ char *lasts; @@ -655,7 +652,7 @@ struct netconfig *ncp; /* where to put r * Returns a string describing the reason for failure. */ char * -nc_sperror() +nc_sperror(void) { const char *message; @@ -686,8 +683,7 @@ nc_sperror() * Prints a message onto standard error describing the reason for failure. */ void -nc_perror(s) - const char *s; +nc_perror(const char *s) { fprintf(stderr, "%s: %s\n", s, nc_sperror()); } @@ -696,8 +692,7 @@ nc_perror(s) * Duplicates the matched netconfig buffer. */ static struct netconfig * -dup_ncp(ncp) -struct netconfig *ncp; +dup_ncp(struct netconfig *ncp) { struct netconfig *p; char *tmp; Modified: head/lib/libc/rpc/getnetpath.c ============================================================================== --- head/lib/libc/rpc/getnetpath.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/getnetpath.c Tue Sep 22 15:40:07 2015 (r288113) @@ -82,7 +82,7 @@ char *_get_next_token(char *, int); */ void * -setnetpath() +setnetpath(void) { struct netpath_vars *np_sessionp; /* this session's variables */ @@ -141,8 +141,7 @@ failed: */ struct netconfig * -getnetpath(handlep) - void *handlep; +getnetpath(void *handlep) { struct netpath_vars *np_sessionp = (struct netpath_vars *)handlep; struct netconfig *ncp = NULL; /* temp. holds a netconfig session */ @@ -197,8 +196,7 @@ getnetpath(handlep) * (e.g. if setnetpath() was not called previously. */ int -endnetpath(handlep) - void *handlep; +endnetpath(void *handlep) { struct netpath_vars *np_sessionp = (struct netpath_vars *)handlep; struct netpath_chain *chainp, *lastp; @@ -231,12 +229,12 @@ endnetpath(handlep) * Returns pointer to the rest-of-the-string after the current token. * The token itself starts at arg, and we null terminate it. We return NULL * if either the arg is empty, or if this is the last token. + * + * npp - string + * token - char to parse string for */ - char * -_get_next_token(npp, token) -char *npp; /* string */ -int token; /* char to parse string for */ +_get_next_token(char *npp, int token) { char *cp; /* char pointer */ char *np; /* netpath pointer */ Modified: head/lib/libc/rpc/getrpcent.c ============================================================================== --- head/lib/libc/rpc/getrpcent.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/getrpcent.c Tue Sep 22 15:40:07 2015 (r288113) @@ -989,7 +989,7 @@ getrpcbynumber(int number) } struct rpcent * -getrpcent() +getrpcent(void) { union key key; @@ -1023,7 +1023,7 @@ setrpcent(int stayopen) } void -endrpcent() +endrpcent(void) { #ifdef NS_CACHING static const nss_cache_info cache_info = NS_MP_CACHE_INFO_INITIALIZER( Modified: head/lib/libc/rpc/getrpcport.c ============================================================================== --- head/lib/libc/rpc/getrpcport.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/getrpcport.c Tue Sep 22 15:40:07 2015 (r288113) @@ -53,9 +53,7 @@ __FBSDID("$FreeBSD$"); #include "un-namespace.h" int -getrpcport(host, prognum, versnum, proto) - char *host; - int prognum, versnum, proto; +getrpcport(char *host, int prognum, int versnum, int proto) { struct sockaddr_in addr; struct hostent *hp; Modified: head/lib/libc/rpc/mt_misc.c ============================================================================== --- head/lib/libc/rpc/mt_misc.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/mt_misc.c Tue Sep 22 15:40:07 2015 (r288113) @@ -93,7 +93,7 @@ rce_key_init(void) } struct rpc_createerr * -__rpc_createerr() +__rpc_createerr(void) { struct rpc_createerr *rce_addr = 0; Modified: head/lib/libc/rpc/netname.c ============================================================================== --- head/lib/libc/rpc/netname.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/netname.c Tue Sep 22 15:40:07 2015 (r288113) @@ -79,8 +79,7 @@ static char *OPSYS = "unix"; * Figure out my fully qualified network name */ int -getnetname(name) - char name[MAXNETNAMELEN+1]; +getnetname(char name[MAXNETNAMELEN+1]) { uid_t uid; @@ -97,10 +96,7 @@ getnetname(name) * Convert unix cred to network-name */ int -user2netname(netname, uid, domain) - char netname[MAXNETNAMELEN + 1]; - const uid_t uid; - const char *domain; +user2netname(char netname[MAXNETNAMELEN + 1], const uid_t uid, const char *domain) { char *dfltdom; @@ -122,10 +118,7 @@ user2netname(netname, uid, domain) * Convert host to network-name */ int -host2netname(netname, host, domain) - char netname[MAXNETNAMELEN + 1]; - const char *host; - const char *domain; +host2netname(char netname[MAXNETNAMELEN + 1], const char *host, const char *domain) { char *dfltdom; char hostname[MAXHOSTNAMELEN+1]; Modified: head/lib/libc/rpc/netnamer.c ============================================================================== --- head/lib/libc/rpc/netnamer.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/netnamer.c Tue Sep 22 15:40:07 2015 (r288113) @@ -68,12 +68,8 @@ static int _getgroups( char *, gid_t * ) * Convert network-name into unix credential */ int -netname2user(netname, uidp, gidp, gidlenp, gidlist) - char netname[MAXNETNAMELEN + 1]; - uid_t *uidp; - gid_t *gidp; - int *gidlenp; - gid_t *gidlist; +netname2user(char netname[MAXNETNAMELEN + 1], uid_t *uidp, gid_t *gidp, + int *gidlenp, gid_t *gidlist) { char *p; int gidlen; @@ -149,9 +145,7 @@ netname2user(netname, uidp, gidp, gidlen */ static int -_getgroups(uname, groups) - char *uname; - gid_t groups[NGRPS]; +_getgroups(char *uname, gid_t groups[NGRPS]) { gid_t ngroups = 0; struct group *grp; @@ -190,10 +184,7 @@ toomany: * Convert network-name to hostname */ int -netname2host(netname, hostname, hostlen) - char netname[MAXNETNAMELEN + 1]; - char *hostname; - int hostlen; +netname2host(char netname[MAXNETNAMELEN + 1], char *hostname, int hostlen) { int err; char valbuf[1024]; @@ -239,8 +230,7 @@ netname2host(netname, hostname, hostlen) * network information service. */ int -getnetid(key, ret) - char *key, *ret; +getnetid(char *key, char *ret) { char buf[1024]; /* big enough */ char *res; Modified: head/lib/libc/rpc/pmap_getmaps.c ============================================================================== --- head/lib/libc/rpc/pmap_getmaps.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/pmap_getmaps.c Tue Sep 22 15:40:07 2015 (r288113) @@ -70,8 +70,7 @@ __FBSDID("$FreeBSD$"); * Calls the pmap service remotely to do get the maps. */ struct pmaplist * -pmap_getmaps(address) - struct sockaddr_in *address; +pmap_getmaps(struct sockaddr_in *address) { struct pmaplist *head = NULL; int sock = -1; Modified: head/lib/libc/rpc/pmap_getport.c ============================================================================== --- head/lib/libc/rpc/pmap_getport.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/pmap_getport.c Tue Sep 22 15:40:07 2015 (r288113) @@ -66,11 +66,8 @@ static const struct timeval tottimeout = * Returns 0 if no map exists. */ u_short -pmap_getport(address, program, version, protocol) - struct sockaddr_in *address; - u_long program; - u_long version; - u_int protocol; +pmap_getport(struct sockaddr_in *address, u_long program, u_long version, + u_int protocol) { u_short port = 0; int sock = -1; Modified: head/lib/libc/rpc/pmap_prot.c ============================================================================== --- head/lib/libc/rpc/pmap_prot.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/pmap_prot.c Tue Sep 22 15:40:07 2015 (r288113) @@ -52,9 +52,7 @@ __FBSDID("$FreeBSD$"); bool_t -xdr_pmap(xdrs, regs) - XDR *xdrs; - struct pmap *regs; +xdr_pmap(XDR *xdrs, struct pmap *regs) { assert(xdrs != NULL); Modified: head/lib/libc/rpc/pmap_prot2.c ============================================================================== --- head/lib/libc/rpc/pmap_prot2.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/pmap_prot2.c Tue Sep 22 15:40:07 2015 (r288113) @@ -90,9 +90,7 @@ __FBSDID("$FreeBSD$"); * this sounds like a job for xdr_reference! */ bool_t -xdr_pmaplist(xdrs, rp) - XDR *xdrs; - struct pmaplist **rp; +xdr_pmaplist(XDR *xdrs, struct pmaplist **rp) { /* * more_elements is pre-computed in case the direction is @@ -134,9 +132,7 @@ xdr_pmaplist(xdrs, rp) * functionality to xdr_pmaplist(). */ bool_t -xdr_pmaplist_ptr(xdrs, rp) - XDR *xdrs; - struct pmaplist *rp; +xdr_pmaplist_ptr(XDR *xdrs, struct pmaplist *rp) { return xdr_pmaplist(xdrs, (struct pmaplist **)(void *)rp); } Modified: head/lib/libc/rpc/pmap_rmt.c ============================================================================== --- head/lib/libc/rpc/pmap_rmt.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/pmap_rmt.c Tue Sep 22 15:40:07 2015 (r288113) @@ -76,14 +76,9 @@ static const struct timeval timeout = { * programs to do a lookup and call in one step. */ enum clnt_stat -pmap_rmtcall(addr, prog, vers, proc, xdrargs, argsp, xdrres, resp, tout, - port_ptr) - struct sockaddr_in *addr; - u_long prog, vers, proc; - xdrproc_t xdrargs, xdrres; - caddr_t argsp, resp; - struct timeval tout; - u_long *port_ptr; +pmap_rmtcall(struct sockaddr_in *addr, u_long prog, u_long vers, u_long proc, + xdrproc_t xdrargs, caddr_t argsp, xdrproc_t xdrres, caddr_t resp, + struct timeval tout, u_long *port_ptr) { int sock = -1; CLIENT *client; @@ -122,9 +117,7 @@ pmap_rmtcall(addr, prog, vers, proc, xdr * written for XDR_ENCODE direction only */ bool_t -xdr_rmtcall_args(xdrs, cap) - XDR *xdrs; - struct rmtcallargs *cap; +xdr_rmtcall_args(XDR *xdrs, struct rmtcallargs *cap) { u_int lenposition, argposition, position; @@ -156,9 +149,7 @@ xdr_rmtcall_args(xdrs, cap) * written for XDR_DECODE direction only */ bool_t -xdr_rmtcallres(xdrs, crp) - XDR *xdrs; - struct rmtcallres *crp; +xdr_rmtcallres(XDR *xdrs, struct rmtcallres *crp) { caddr_t port_ptr; Modified: head/lib/libc/rpc/rpc_callmsg.c ============================================================================== --- head/lib/libc/rpc/rpc_callmsg.c Tue Sep 22 15:32:27 2015 (r288112) +++ head/lib/libc/rpc/rpc_callmsg.c Tue Sep 22 15:40:07 2015 (r288113) @@ -54,9 +54,7 @@ __FBSDID("$FreeBSD$"); * XDR a call message */ bool_t -xdr_callmsg(xdrs, cmsg) - XDR *xdrs; - struct rpc_msg *cmsg; +xdr_callmsg(XDR *xdrs, struct rpc_msg *cmsg) { enum msg_type *prm_direction; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Tue Sep 22 15:57:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9FFA5A05B89; Tue, 22 Sep 2015 15:57:28 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 889611986; Tue, 22 Sep 2015 15:57:28 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MFvSTj010269; Tue, 22 Sep 2015 15:57:28 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MFvRUH010265; Tue, 22 Sep 2015 15:57:27 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509221557.t8MFvRUH010265@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Tue, 22 Sep 2015 15:57:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288114 - head/lib/libc/resolv X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 15:57:28 -0000 Author: rodrigc Date: Tue Sep 22 15:57:26 2015 New Revision: 288114 URL: https://svnweb.freebsd.org/changeset/base/288114 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Modified: head/lib/libc/resolv/res_debug.c head/lib/libc/resolv/res_init.c head/lib/libc/resolv/res_mkupdate.c head/lib/libc/resolv/res_send.c Modified: head/lib/libc/resolv/res_debug.c ============================================================================== --- head/lib/libc/resolv/res_debug.c Tue Sep 22 15:40:07 2015 (r288113) +++ head/lib/libc/resolv/res_debug.c Tue Sep 22 15:57:26 2015 (r288114) @@ -367,11 +367,8 @@ p_cdname(const u_char *cp, const u_char length supplied). */ const u_char * -p_fqnname(cp, msg, msglen, name, namelen) - const u_char *cp, *msg; - int msglen; - char *name; - int namelen; +p_fqnname(const u_char *cp, const u_char *msg, int msglen, char *name, + int namelen) { int n, newlen; @@ -758,8 +755,7 @@ static unsigned int poweroften[10] = {1, /*% takes an XeY precision/size value, returns a string representation. */ static const char * -precsize_ntoa(prec) - u_int8_t prec; +precsize_ntoa(u_int8_t prec) { char *retbuf = precsize_ntoa_retbuf; unsigned long val; @@ -912,9 +908,7 @@ latlon2ul(const char **latlonstrptr, int * converts a zone file representation in a string to an RDATA on-the-wire * representation. */ int -loc_aton(ascii, binary) - const char *ascii; - u_char *binary; +loc_aton(const char *ascii, u_char *binary) { const char *cp, *maxcp; u_char *bcp; @@ -1023,9 +1017,7 @@ loc_aton(ascii, binary) /*% takes an on-the-wire LOC RR and formats it in a human readable format. */ const char * -loc_ntoa(binary, ascii) - const u_char *binary; - char *ascii; +loc_ntoa(const u_char *binary, char *ascii) { static const char *error = "?"; static char tmpbuf[sizeof Modified: head/lib/libc/resolv/res_init.c ============================================================================== --- head/lib/libc/resolv/res_init.c Tue Sep 22 15:40:07 2015 (r288113) +++ head/lib/libc/resolv/res_init.c Tue Sep 22 15:57:26 2015 (r288114) @@ -718,8 +718,7 @@ res_setoptions(res_state statp, const ch #ifdef RESOLVSORT /* XXX - should really support CIDR which means explicit masks always. */ static u_int32_t -net_mask(in) /*!< XXX - should really use system's version of this */ - struct in_addr in; +net_mask(struct in_addr in) /*!< XXX - should really use system's version of this */ { u_int32_t i = ntohl(in.s_addr); Modified: head/lib/libc/resolv/res_mkupdate.c ============================================================================== --- head/lib/libc/resolv/res_mkupdate.c Tue Sep 22 15:40:07 2015 (r288113) +++ head/lib/libc/resolv/res_mkupdate.c Tue Sep 22 15:57:26 2015 (r288114) @@ -973,7 +973,7 @@ struct valuelist { static struct valuelist *servicelist, *protolist; static void -res_buildservicelist() { +res_buildservicelist(void) { struct servent *sp; struct valuelist *slp; Modified: head/lib/libc/resolv/res_send.c ============================================================================== --- head/lib/libc/resolv/res_send.c Tue Sep 22 15:40:07 2015 (r288113) +++ head/lib/libc/resolv/res_send.c Tue Sep 22 15:57:26 2015 (r288114) @@ -574,8 +574,7 @@ res_nsend(res_state statp, /* Private */ static int -get_salen(sa) - const struct sockaddr *sa; +get_salen(const struct sockaddr *sa) { #ifdef HAVE_SA_LEN @@ -596,9 +595,7 @@ get_salen(sa) * pick appropriate nsaddr_list for use. see res_init() for initialization. */ static struct sockaddr * -get_nsaddr(statp, n) - res_state statp; - size_t n; +get_nsaddr(res_state statp, size_t n) { if (!statp->nsaddr_list[n].sin_family && EXT(statp).ext) { From owner-svn-src-head@freebsd.org Tue Sep 22 16:29:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A2256A06A90; Tue, 22 Sep 2015 16:29:56 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9379D1B10; Tue, 22 Sep 2015 16:29:56 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MGTuxS023195; Tue, 22 Sep 2015 16:29:56 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MGTuwH023193; Tue, 22 Sep 2015 16:29:56 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509221629.t8MGTuwH023193@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 22 Sep 2015 16:29:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288115 - head/sys/arm64/arm64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:29:56 -0000 Author: kib Date: Tue Sep 22 16:29:55 2015 New Revision: 288115 URL: https://svnweb.freebsd.org/changeset/base/288115 Log: Re-check for new ast after ast was handled. We should not return to usermode with pending asts. Reviewed by: andrew Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3667 Modified: head/sys/arm64/arm64/exception.S Modified: head/sys/arm64/arm64/exception.S ============================================================================== --- head/sys/arm64/arm64/exception.S Tue Sep 22 15:57:26 2015 (r288114) +++ head/sys/arm64/arm64/exception.S Tue Sep 22 16:29:55 2015 (r288115) @@ -100,10 +100,11 @@ __FBSDID("$FreeBSD$"); .macro do_ast /* Disable interrupts */ mrs x19, daif +1: msr daifset, #2 /* Read the current thread flags */ -1: ldr x1, [x18, #PC_CURTHREAD] /* Load curthread */ + ldr x1, [x18, #PC_CURTHREAD] /* Load curthread */ ldr x2, [x1, #TD_FLAGS] /* Check if we have either bits set */ @@ -120,9 +121,8 @@ __FBSDID("$FreeBSD$"); mov x0, sp bl _C_LABEL(ast) - /* Disable interrupts */ - mrs x19, daif - msr daifset, #2 + /* Re-check for new ast scheduled */ + b 1b 2: /* Restore interrupts */ From owner-svn-src-head@freebsd.org Tue Sep 22 16:35:33 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 689DFA06E35; Tue, 22 Sep 2015 16:35:33 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 59B981F70; Tue, 22 Sep 2015 16:35:33 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MGZX3f027155; Tue, 22 Sep 2015 16:35:33 GMT (envelope-from jkim@FreeBSD.org) Received: (from jkim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MGZXdX027154; Tue, 22 Sep 2015 16:35:33 GMT (envelope-from jkim@FreeBSD.org) Message-Id: <201509221635.t8MGZXdX027154@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jkim set sender to jkim@FreeBSD.org using -f From: Jung-uk Kim Date: Tue, 22 Sep 2015 16:35:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288116 - head/usr.sbin/acpi/acpiconf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:35:33 -0000 Author: jkim Date: Tue Sep 22 16:35:32 2015 New Revision: 288116 URL: https://svnweb.freebsd.org/changeset/base/288116 Log: Remove unsupported S5 (power off) state since r170976. Reported by: Iam Smith (smithi at nimnet dot asn dot au) MFC after: 3 days Modified: head/usr.sbin/acpi/acpiconf/acpiconf.8 Modified: head/usr.sbin/acpi/acpiconf/acpiconf.8 ============================================================================== --- head/usr.sbin/acpi/acpiconf/acpiconf.8 Tue Sep 22 16:29:55 2015 (r288115) +++ head/usr.sbin/acpi/acpiconf/acpiconf.8 Tue Sep 22 16:35:32 2015 (r288116) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 10, 2014 +.Dd September 22, 2015 .Dt ACPICONF 8 .Os .Sh NAME @@ -62,11 +62,9 @@ Recognized types are (not implemented on most systems but similar to S1), .Cm 3 (the CPU context is lost and memory context is preserved), -.Cm 4 -(the CPU context is lost and memory context is stored to disk) and -.Cm 5 -(soft off). +.Cm 4 +(the CPU context is lost and memory context is stored to disk). Sleep states may also be given as S1, S2, etc. The supported states depend on BIOS implementation, including ACPI byte code (AML). From owner-svn-src-head@freebsd.org Tue Sep 22 16:46:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B216FA07392; Tue, 22 Sep 2015 16:46:35 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A33771984; Tue, 22 Sep 2015 16:46:35 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MGkZGZ031634; Tue, 22 Sep 2015 16:46:35 GMT (envelope-from andrew@FreeBSD.org) Received: (from andrew@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MGkZ9n031633; Tue, 22 Sep 2015 16:46:35 GMT (envelope-from andrew@FreeBSD.org) Message-Id: <201509221646.t8MGkZ9n031633@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: andrew set sender to andrew@FreeBSD.org using -f From: Andrew Turner Date: Tue, 22 Sep 2015 16:46:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288117 - head/sys/arm64/arm64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:46:35 -0000 Author: andrew Date: Tue Sep 22 16:46:34 2015 New Revision: 288117 URL: https://svnweb.freebsd.org/changeset/base/288117 Log: Don't restore interrupts when we are about to disable them in the next instruction. Modified: head/sys/arm64/arm64/exception.S Modified: head/sys/arm64/arm64/exception.S ============================================================================== --- head/sys/arm64/arm64/exception.S Tue Sep 22 16:35:32 2015 (r288116) +++ head/sys/arm64/arm64/exception.S Tue Sep 22 16:46:34 2015 (r288117) @@ -123,10 +123,7 @@ __FBSDID("$FreeBSD$"); /* Re-check for new ast scheduled */ b 1b - 2: - /* Restore interrupts */ - msr daif, x19 .endm handle_el1h_sync: From owner-svn-src-head@freebsd.org Tue Sep 22 16:51:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9FB40A075CD; Tue, 22 Sep 2015 16:51:00 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 913591EF4; Tue, 22 Sep 2015 16:51:00 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MGp0Tr034429; Tue, 22 Sep 2015 16:51:00 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MGp0CX034428; Tue, 22 Sep 2015 16:51:00 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201509221651.t8MGp0CX034428@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Tue, 22 Sep 2015 16:51:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288118 - head/sys/x86/iommu X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:51:00 -0000 Author: bz Date: Tue Sep 22 16:50:59 2015 New Revision: 288118 URL: https://svnweb.freebsd.org/changeset/base/288118 Log: dmar_ctx_dtr() does not exist since r284869. Remove the static function declaration to avoid a cmpile time warning. Modified: head/sys/x86/iommu/intel_ctx.c Modified: head/sys/x86/iommu/intel_ctx.c ============================================================================== --- head/sys/x86/iommu/intel_ctx.c Tue Sep 22 16:46:34 2015 (r288117) +++ head/sys/x86/iommu/intel_ctx.c Tue Sep 22 16:50:59 2015 (r288118) @@ -74,7 +74,6 @@ static void dmar_domain_unload_task(void static void dmar_unref_domain_locked(struct dmar_unit *dmar, struct dmar_domain *domain); static void dmar_domain_destroy(struct dmar_domain *domain); -static void dmar_ctx_dtr(struct dmar_ctx *ctx); static void dmar_ensure_ctx_page(struct dmar_unit *dmar, int bus) From owner-svn-src-head@freebsd.org Tue Sep 22 16:51:41 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C15A0A07648; Tue, 22 Sep 2015 16:51:41 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B28171183; Tue, 22 Sep 2015 16:51:41 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MGpf2A034995; Tue, 22 Sep 2015 16:51:41 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MGpfLS034994; Tue, 22 Sep 2015 16:51:41 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509221651.t8MGpfLS034994@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 22 Sep 2015 16:51:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288119 - head/contrib/elftoolchain/addr2line X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:51:41 -0000 Author: emaste Date: Tue Sep 22 16:51:40 2015 New Revision: 288119 URL: https://svnweb.freebsd.org/changeset/base/288119 Log: addr2line: skip CUs lacking debug info instead of bailing out Some binaries (such as the FreeBSD kernel) contain a mixture of CUs with and without debug information. Previously translate() exited upon encountering a CU without debug information. Instead, just move on to the next CU. Reported by: royger Reviewed by: royger Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3712 Modified: head/contrib/elftoolchain/addr2line/addr2line.c Modified: head/contrib/elftoolchain/addr2line/addr2line.c ============================================================================== --- head/contrib/elftoolchain/addr2line/addr2line.c Tue Sep 22 16:50:59 2015 (r288118) +++ head/contrib/elftoolchain/addr2line/addr2line.c Tue Sep 22 16:51:40 2015 (r288119) @@ -248,7 +248,13 @@ translate(Dwarf_Debug dbg, const char* a continue; } - if (dwarf_srclines(die, &lbuf, &lcount, &de) != DW_DLV_OK) { + switch (dwarf_srclines(die, &lbuf, &lcount, &de)) { + case DW_DLV_OK: + break; + case DW_DLV_NO_ENTRY: + /* If one CU lacks debug info, just skip it. */ + continue; + default: warnx("dwarf_srclines: %s", dwarf_errmsg(de)); goto out; } From owner-svn-src-head@freebsd.org Tue Sep 22 16:59:42 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C5983A079D2; Tue, 22 Sep 2015 16:59:42 +0000 (UTC) (envelope-from amdmi3@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B692F15C3; Tue, 22 Sep 2015 16:59:42 +0000 (UTC) (envelope-from amdmi3@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MGxgYd036045; Tue, 22 Sep 2015 16:59:42 GMT (envelope-from amdmi3@FreeBSD.org) Received: (from amdmi3@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MGxgjg036043; Tue, 22 Sep 2015 16:59:42 GMT (envelope-from amdmi3@FreeBSD.org) Message-Id: <201509221659.t8MGxgjg036043@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: amdmi3 set sender to amdmi3@FreeBSD.org using -f From: Dmitry Marakasov Date: Tue, 22 Sep 2015 16:59:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288120 - head/usr.sbin/ndiscvt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:59:42 -0000 Author: amdmi3 (ports committer) Date: Tue Sep 22 16:59:41 2015 New Revision: 288120 URL: https://svnweb.freebsd.org/changeset/base/288120 Log: Fix crash on parsing some inf files ndiscvt uses 16 entry array for words into which it parses comma-separated lists of strings, like AddReg line in [somesection] AddReg = foo.reg, bar.reg, baz.reg, quiz.reg Overflows were not checked so it crashed on a line with 17 words encountered in some Broadcom/Dell Wireless 1704 802.11b-g-n driver So extend the array up to 32 entries and add an overflow check. Reviewed by: bapt Approved by: bapt MFC after: 2 weeks Differential Revision: D3713 Modified: head/usr.sbin/ndiscvt/inf.c head/usr.sbin/ndiscvt/inf.h Modified: head/usr.sbin/ndiscvt/inf.c ============================================================================== --- head/usr.sbin/ndiscvt/inf.c Tue Sep 22 16:51:40 2015 (r288119) +++ head/usr.sbin/ndiscvt/inf.c Tue Sep 22 16:59:41 2015 (r288120) @@ -887,6 +887,12 @@ regkey_add (const char *r) void push_word (const char *w) { + + if (idx == W_MAX) { + fprintf(stderr, "too many words; try bumping W_MAX in inf.h\n"); + exit(1); + } + if (w && strlen(w)) words[idx++] = w; else Modified: head/usr.sbin/ndiscvt/inf.h ============================================================================== --- head/usr.sbin/ndiscvt/inf.h Tue Sep 22 16:51:40 2015 (r288119) +++ head/usr.sbin/ndiscvt/inf.h Tue Sep 22 16:59:41 2015 (r288120) @@ -4,7 +4,7 @@ * $FreeBSD$ */ -#define W_MAX 16 +#define W_MAX 32 struct section { const char * name; From owner-svn-src-head@freebsd.org Tue Sep 22 16:43:41 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 244A0A0725A; Tue, 22 Sep 2015 16:43:41 +0000 (UTC) (envelope-from julien.charbon@gmail.com) Received: from mail-wi0-f173.google.com (mail-wi0-f173.google.com [209.85.212.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8AB351634; Tue, 22 Sep 2015 16:43:37 +0000 (UTC) (envelope-from julien.charbon@gmail.com) Received: by wicgb1 with SMTP id gb1so168600243wic.1; Tue, 22 Sep 2015 09:43:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-type; bh=qnArk2F8tjnwvAmyYzvZ16TAXqUJcDVKIn7svCLZ+h8=; b=CmxjroqQ/3XUWWYZkaHNDeKrX2rOmZNtVOoRgw+9m/gUDUUWQYCBZ3aC2xeJwzO5aZ zs/McI1YProlRM6k14WN2CKdFBoM28+bH6yO/SwrFIM30NnlfTAcKKFtjL1mQfw5qrsz IQmR6ZDFeKgs/HnCJ2C9gop3VQumSmHrB6ymgkRFHkW5kMd/YX3ET56UrlVhNiuwGqyc sWPnrNvdoDyLoFyvjnLLZyHgDq58hrXwLeIyOjX39HIqX7gwpMwRcsLEDVAovju1CFVk eJAcEA5xMBsW+6sfgTPzYbkKDCUGvQ9UG0hYscucmfdfirPDPseKBKw6FAz/W0jqVO5o oRiA== X-Received: by 10.194.122.66 with SMTP id lq2mr30178393wjb.156.1442940214722; Tue, 22 Sep 2015 09:43:34 -0700 (PDT) Received: from lon1sbrother-s1.vcorp.ad.vrsn.com ([217.30.88.7]) by smtp.googlemail.com with ESMTPSA id s9sm2755262wjy.16.2015.09.22.09.43.31 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 22 Sep 2015 09:43:34 -0700 (PDT) Subject: Re: svn commit: r287780 - in head: share/man/man9 sys/kern sys/sys To: Hans Petter Selasky , Davide Italiano , George Neville-Neil References: <201509141052.t8EAqRWf008293@repo.freebsd.org> <20150916220559.GS1023@FreeBSD.org> <55FA69BD.10507@selasky.org> <55FD22E9.2040508@selasky.org> Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , rss@freebsd.org, Gleb Smirnoff , "svn-src-head@freebsd.org" , Warner Losh , Randall Stewart From: Julien Charbon X-Enigmail-Draft-Status: N1210 Message-ID: <56018525.8050601@freebsd.org> Date: Tue, 22 Sep 2015 18:43:17 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <55FD22E9.2040508@selasky.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="sOHNcRUpvmhivD5NJfEUv3QNSDx20px3r" X-Mailman-Approved-At: Tue, 22 Sep 2015 17:11:25 +0000 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 16:43:41 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --sOHNcRUpvmhivD5NJfEUv3QNSDx20px3r Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Hi guys, On 19/09/15 10:55, Hans Petter Selasky wrote: > On 09/18/15 22:33, Davide Italiano wrote: >> On Thu, Sep 17, 2015 at 12:20 AM, Hans Petter Selasky=20 >> wrote: >>> On 09/17/15 00:05, Gleb Smirnoff wrote: >> [...] 2) Your commit message didn't explain what (if any) is the >> use case > for this. >=20 > It currently has one critical client, and that is destruction of > TCP connections. >=20 > The last 6 months there has been terribly much discussion, bugs > and panics in the callout area, and there seems no end with recent > panics posted to -current. Even the updates which rss & more did > slipped in new bugs. >=20 > I'm going to let Julien finish his work first. If he doesn't need > the KPI it will be removed. Else I want that it stays in. [...] It is too much pressure on my shoulders, I am a callout rookie after all. :) Let me continue this discussion at a technical level: o Short answers: - Is callout_drain_async() currently required for TCP timers callout: N= o - Are we using the same logic than callout_drain_async() in current TCP timers code: Yes - Would callout_drain_async() make TCP timer code cleaner: Yes - Is callout(9) with an associated mutex hard to use: No - Is callout(9) without an associated mutex (mpsafe callout) hard to use: Yes o My callout (rookie) solutions: - Short-term: At least, improve man callout(9) page for mpsafe callout usage. I am working on it. - Mid-term: Improve current mpsafe callout KPI. hps is working on it. - Long-term I: Deprecate mpsafe callout usage. On TCP stack side it would require to remove INP_INFO lock, this is achievable as soon as we have RCU-ish locks in kernel. gnn is working on getting RCU-ish lock. (@gnn you might feel a gentle backpressure here :) - Long-term II: Come with a new callout-ish KPI only for that brings more guarantee in mpsafe callout cases and use it (Lot of work!). o Long answers: - Is callout_drain_async() KPI required for TCP timers: No - Are we using the same logic than callout_drain_async() in current TCP timers code: Yes All TCP timers race conditions (so far) have been fixed in two commits: https://svnweb.freebsd.org/base?view=3Drevision&revision=3D281599 https://svnweb.freebsd.org/base?view=3Drevision&revision=3D284245 This logic is used currently in release/10.2.0, stable/10 and HEAD with no issues (so far). And it is the same logic than callout_drain_async(). - Would it make the TCP time code cleaner: Yes Below code with mpsafe callout is wrong: if (callout_stop(c)) { /* Free resources used in callout callback */ free_res(); <- Kernel panic here } else { /* Defer free resources used in callout callback */ defer_free_res(); } Below code with mpsafe callout is right, but tricky as in general callout_reset() and callout_stop() calls are far away (current TCP timers code login): r =3D callout_reset(c); ... s =3D callout_stop(c); if (r && s) { /* Free resources used in callout callback */ free_res(); } else { /* Defer free resources used in callout callback */ defer_free_res(); } Below code with mpsafe callout is right, and less tricky: if (callout_stop_async(c, defer_free_res)) { /* Free resources used in callout callback */ free_res(); } Sorry for this too long answer. -- Julien --sOHNcRUpvmhivD5NJfEUv3QNSDx20px3r Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJWAYUvAAoJEKVlQ5Je6dhxxZQIAJ3txCnzUdOBT0mjT0E9X8ft 9cSTXkNbPjmFUySl66mi6FFo98KzSpmCxJ3kp4e70dXmn1uyeyfH52VrpttHzU9z DUeqhj3EiHuWJiOH05uwMZhS/v37CZFdlILFZViOh8gfX/U6xEUhgfpGkruPfnMi pYXiiCe0Oha0QdpfiYPm9JclWeF5sPWrTxMs3zvUWJ3HHjQ46vk9/oInlemVCWmk MggvmO0KZdZJGqGwAhYuVuyJSmWl8m5EFyAuuyP5eJFyh3GVKm+INl934pbITE/5 fcaaShDAO3XGrrocl5IhGlLq7v8t9JmMtVyUzlp2DmdnrulW8GgxSY/uXKD8Pr4= =7fRS -----END PGP SIGNATURE----- --sOHNcRUpvmhivD5NJfEUv3QNSDx20px3r-- From owner-svn-src-head@freebsd.org Tue Sep 22 17:46:34 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C21BFA06F99; Tue, 22 Sep 2015 17:46:34 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (tensor.andric.com [IPv6:2001:7b8:3a7:1:2d0:b7ff:fea0:8c26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7F4FA11D3; Tue, 22 Sep 2015 17:46:34 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from [10.192.0.157] (unknown [178.20.49.58]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 008D31AA28; Tue, 22 Sep 2015 19:46:31 +0200 (CEST) Subject: Re: svn commit: r288099 - head/contrib/binutils/opcodes Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Content-Type: multipart/signed; boundary="Apple-Mail=_307ADA36-2350-41FD-898C-A6A18412F133"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5.1 From: Dimitry Andric In-Reply-To: <1442931787.1224.205.camel@freebsd.org> Date: Tue, 22 Sep 2015 19:46:26 +0200 Cc: Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: References: <201509220935.t8M9ZZfD051027@repo.freebsd.org> <20150922094301.GW3158@zxy.spb.ru> <4CD0DC75-0235-4890-827C-4FF41BBADD8A@FreeBSD.org> <1442931787.1224.205.camel@freebsd.org> To: Ian Lepore X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 17:46:34 -0000 --Apple-Mail=_307ADA36-2350-41FD-898C-A6A18412F133 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On 22 Sep 2015, at 16:23, Ian Lepore wrote: > > On Tue, 2015-09-22 at 11:53 +0200, Dimitry Andric wrote: >> On 22 Sep 2015, at 11:43, Slawa Olhovchenkov wrote: >>> >>> On Tue, Sep 22, 2015 at 09:35:35AM +0000, Dimitry Andric wrote: >> ... >>>> - imm |= (-1 << 7); >>>> + imm |= -(1 << 7); >>> >>> May be (~0 << 7) is more simple to understund? >> >> This will give the same warning. ~0 will implicitly convert to -1. >> >> (It would be better to convert all these masks to unsigned, where such >> shifting is always defined, but that gives a lot more churn.) >> >> -Dimitry >> > > How is (-1U << 7) more churn? For this one line, it isn't, of course. Writing -(1 << 7) is simply my personal preference, and it matches the type of 'imm'. But what I meant was changing all mask-containing int variables to unsigned, and suffixing all mask literals U, and so on. This is what should have been done by GNU in the first place. :) -Dimitry --Apple-Mail=_307ADA36-2350-41FD-898C-A6A18412F133 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.28 iEYEARECAAYFAlYBk/YACgkQsF6jCi4glqMrkQCfXZm7sEbmgnc2TQnEV84F1fua J2EAoJl0r19pDDLojwojDchEPrMoTo4N =7cUj -----END PGP SIGNATURE----- --Apple-Mail=_307ADA36-2350-41FD-898C-A6A18412F133-- From owner-svn-src-head@freebsd.org Tue Sep 22 18:16:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 85F4CA07B5A; Tue, 22 Sep 2015 18:16:53 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A2EF14F1; Tue, 22 Sep 2015 18:16:53 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MIGreM069280; Tue, 22 Sep 2015 18:16:53 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MIGqxV069276; Tue, 22 Sep 2015 18:16:52 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201509221816.t8MIGqxV069276@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Tue, 22 Sep 2015 18:16:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288122 - in head/sys: kern vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 18:16:53 -0000 Author: alc Date: Tue Sep 22 18:16:52 2015 New Revision: 288122 URL: https://svnweb.freebsd.org/changeset/base/288122 Log: Change vm_page_unwire() such that it (1) accepts PQ_NONE as the specified queue and (2) returns a Boolean indicating whether the page's wire count transitioned to zero. Exploit this change in vfs_vmio_release() to avoid pointlessly enqueueing a page that is about to be freed. (An earlier version of this change was developed by attilio@ and kmacy@. Any errors in this version are my own.) Reviewed by: kib Sponsored by: EMC / Isilon Storage Division Modified: head/sys/kern/vfs_bio.c head/sys/vm/vm_page.c head/sys/vm/vm_page.h Modified: head/sys/kern/vfs_bio.c ============================================================================== --- head/sys/kern/vfs_bio.c Tue Sep 22 17:34:51 2015 (r288121) +++ head/sys/kern/vfs_bio.c Tue Sep 22 18:16:52 2015 (r288122) @@ -2076,6 +2076,7 @@ vfs_vmio_release(struct buf *bp) vm_object_t obj; vm_page_t m; int i; + bool freed; if (buf_mapped(bp)) { BUF_CHECK_MAPPED(bp); @@ -2088,23 +2089,28 @@ vfs_vmio_release(struct buf *bp) for (i = 0; i < bp->b_npages; i++) { m = bp->b_pages[i]; bp->b_pages[i] = NULL; - /* - * In order to keep page LRU ordering consistent, put - * everything on the inactive queue. - */ vm_page_lock(m); - vm_page_unwire(m, PQ_INACTIVE); - - /* - * Might as well free the page if we can and it has - * no valid data. We also free the page if the - * buffer was used for direct I/O - */ - if ((bp->b_flags & B_ASYNC) == 0 && !m->valid) { - if (m->wire_count == 0 && !vm_page_busied(m)) - vm_page_free(m); - } else if (bp->b_flags & B_DIRECT) - vm_page_try_to_free(m); + if (vm_page_unwire(m, PQ_NONE)) { + /* + * Determine if the page should be freed before adding + * it to the inactive queue. + */ + if ((bp->b_flags & B_ASYNC) == 0 && m->valid == 0) { + freed = !vm_page_busied(m); + if (freed) + vm_page_free(m); + } else if ((bp->b_flags & B_DIRECT) != 0) + freed = vm_page_try_to_free(m); + else + freed = false; + if (!freed) { + /* + * In order to maintain LRU page ordering, put + * the page at the tail of the inactive queue. + */ + vm_page_deactivate(m); + } + } vm_page_unlock(m); } if (obj != NULL) Modified: head/sys/vm/vm_page.c ============================================================================== --- head/sys/vm/vm_page.c Tue Sep 22 17:34:51 2015 (r288121) +++ head/sys/vm/vm_page.c Tue Sep 22 18:16:52 2015 (r288122) @@ -2476,42 +2476,46 @@ vm_page_wire(vm_page_t m) /* * vm_page_unwire: * - * Release one wiring of the specified page, potentially enabling it to be - * paged again. If paging is enabled, then the value of the parameter - * "queue" determines the queue to which the page is added. - * - * However, unless the page belongs to an object, it is not enqueued because - * it cannot be paged out. + * Release one wiring of the specified page, potentially allowing it to be + * paged out. Returns TRUE if the number of wirings transitions to zero and + * FALSE otherwise. + * + * Only managed pages belonging to an object can be paged out. If the number + * of wirings transitions to zero and the page is eligible for page out, then + * the page is added to the specified paging queue (unless PQ_NONE is + * specified). * * If a page is fictitious, then its wire count must always be one. * * A managed page must be locked. */ -void +boolean_t vm_page_unwire(vm_page_t m, uint8_t queue) { - KASSERT(queue < PQ_COUNT, + KASSERT(queue < PQ_COUNT || queue == PQ_NONE, ("vm_page_unwire: invalid queue %u request for page %p", queue, m)); if ((m->oflags & VPO_UNMANAGED) == 0) - vm_page_lock_assert(m, MA_OWNED); + vm_page_assert_locked(m); if ((m->flags & PG_FICTITIOUS) != 0) { KASSERT(m->wire_count == 1, ("vm_page_unwire: fictitious page %p's wire count isn't one", m)); - return; + return (FALSE); } if (m->wire_count > 0) { m->wire_count--; if (m->wire_count == 0) { atomic_subtract_int(&vm_cnt.v_wire_count, 1); - if ((m->oflags & VPO_UNMANAGED) != 0 || - m->object == NULL) - return; - if (queue == PQ_INACTIVE) - m->flags &= ~PG_WINATCFLS; - vm_page_enqueue(queue, m); - } + if ((m->oflags & VPO_UNMANAGED) == 0 && + m->object != NULL && queue != PQ_NONE) { + if (queue == PQ_INACTIVE) + m->flags &= ~PG_WINATCFLS; + vm_page_enqueue(queue, m); + } + return (TRUE); + } else + return (FALSE); } else panic("vm_page_unwire: page %p's wire count is zero", m); } Modified: head/sys/vm/vm_page.h ============================================================================== --- head/sys/vm/vm_page.h Tue Sep 22 17:34:51 2015 (r288121) +++ head/sys/vm/vm_page.h Tue Sep 22 18:16:52 2015 (r288122) @@ -480,7 +480,7 @@ vm_offset_t vm_page_startup(vm_offset_t void vm_page_sunbusy(vm_page_t m); int vm_page_trysbusy(vm_page_t m); void vm_page_unhold_pages(vm_page_t *ma, int count); -void vm_page_unwire (vm_page_t m, uint8_t queue); +boolean_t vm_page_unwire(vm_page_t m, uint8_t queue); void vm_page_updatefake(vm_page_t m, vm_paddr_t paddr, vm_memattr_t memattr); void vm_page_wire (vm_page_t); void vm_page_xunbusy_hard(vm_page_t m); From owner-svn-src-head@freebsd.org Tue Sep 22 18:30:07 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B5DADA062D9; Tue, 22 Sep 2015 18:30:07 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A70C9189E; Tue, 22 Sep 2015 18:30:07 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MIU7a0074900; Tue, 22 Sep 2015 18:30:07 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MIU7c8074899; Tue, 22 Sep 2015 18:30:07 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509221830.t8MIU7c8074899@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 22 Sep 2015 18:30:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288123 - head/sys/arm64/arm64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 18:30:07 -0000 Author: kib Date: Tue Sep 22 18:30:06 2015 New Revision: 288123 URL: https://svnweb.freebsd.org/changeset/base/288123 Log: Call ast when handling irq from userspace, otherwise we could miss reschedule. Right now arm_cpu_intr() does critical_exit() as the last action, so the impact is not serious. Remove duplicated interrupt disable in restore_registers macro, when returning to usermode. The do_ast macro disabled interrupts for us. Reviewed by: andrew Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3714 Modified: head/sys/arm64/arm64/exception.S Modified: head/sys/arm64/arm64/exception.S ============================================================================== --- head/sys/arm64/arm64/exception.S Tue Sep 22 18:16:52 2015 (r288122) +++ head/sys/arm64/arm64/exception.S Tue Sep 22 18:30:06 2015 (r288123) @@ -63,8 +63,13 @@ __FBSDID("$FreeBSD$"); .endm .macro restore_registers el - msr daifset, #2 /* Disable interrupts, x18 may change - * in the interrupt exception handler */ +.if \el == 1 + msr daifset, #2 + /* + * Disable interrupts, x18 may change in the interrupt exception + * handler. For EL0 exceptions, do_ast already did this. + */ +.endif ldp x18, lr, [sp], #16 ldp x10, x11, [sp], #16 .if \el == 0 @@ -155,6 +160,7 @@ handle_el0_irq: save_registers 0 mov x0, sp bl arm_cpu_intr + do_ast restore_registers 0 eret From owner-svn-src-head@freebsd.org Tue Sep 22 19:05:45 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 639C4A07310; Tue, 22 Sep 2015 19:05:45 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3A9251D6E; Tue, 22 Sep 2015 19:05:45 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MJ5jSk090967; Tue, 22 Sep 2015 19:05:45 GMT (envelope-from melifaro@FreeBSD.org) Received: (from melifaro@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MJ5jQ2090966; Tue, 22 Sep 2015 19:05:45 GMT (envelope-from melifaro@FreeBSD.org) Message-Id: <201509221905.t8MJ5jQ2090966@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: melifaro set sender to melifaro@FreeBSD.org using -f From: "Alexander V. Chernikov" Date: Tue, 22 Sep 2015 19:05:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288124 - head/sys/netinet X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 19:05:45 -0000 Author: melifaro Date: Tue Sep 22 19:05:44 2015 New Revision: 288124 URL: https://svnweb.freebsd.org/changeset/base/288124 Log: Replace toe_nd6_resolve() with nd6_resolve(). Reviewed by: np Modified: head/sys/netinet/toecore.c Modified: head/sys/netinet/toecore.c ============================================================================== --- head/sys/netinet/toecore.c Tue Sep 22 18:30:06 2015 (r288123) +++ head/sys/netinet/toecore.c Tue Sep 22 19:05:44 2015 (r288124) @@ -448,77 +448,6 @@ toe_route_redirect_event(void *arg __unu return; } -#ifdef INET6 -/* - * XXX: no checks to verify that sa is really a neighbor because we assume it is - * the result of a route lookup and is on-link on the given ifp. - */ -static int -toe_nd6_resolve(struct ifnet *ifp, struct sockaddr *sa, uint8_t *lladdr) -{ - struct llentry *lle, *lle_tmp; - struct sockaddr_in6 *sin6 = (void *)sa; - int rc, flags = 0; - -restart: - IF_AFDATA_RLOCK(ifp); - lle = lla_lookup(LLTABLE6(ifp), flags, sa); - IF_AFDATA_RUNLOCK(ifp); - if (lle == NULL) { - lle = nd6_alloc(&sin6->sin6_addr, 0, ifp); - if (lle == NULL) - return (ENOMEM); /* Couldn't create entry in cache. */ - IF_AFDATA_WLOCK(ifp); - LLE_WLOCK(lle); - lle_tmp = nd6_lookup(&sin6->sin6_addr, ND6_EXCLUSIVE, ifp); - /* Prefer any existing lle over newly-created one */ - if (lle_tmp == NULL) - lltable_link_entry(LLTABLE6(ifp), lle); - IF_AFDATA_WUNLOCK(ifp); - if (lle_tmp == NULL) { - /* Arm timer for newly-created entry and send NS */ - nd6_llinfo_setstate(lle, ND6_LLINFO_INCOMPLETE); - LLE_WUNLOCK(lle); - - nd6_ns_output(ifp, NULL, NULL, &sin6->sin6_addr, 0); - - return (EWOULDBLOCK); - } else { - /* Drop newly-created lle and switch to existing one */ - lltable_free_entry(LLTABLE6(ifp), lle); - lle = lle_tmp; - lle_tmp = NULL; - } - } - - if (lle->ln_state == ND6_LLINFO_STALE) { - if ((flags & LLE_EXCLUSIVE) == 0) { - LLE_RUNLOCK(lle); - flags |= LLE_EXCLUSIVE; - goto restart; - } - - LLE_WLOCK_ASSERT(lle); - - lle->la_asked = 0; - nd6_llinfo_setstate(lle, ND6_LLINFO_DELAY); - } - - if (lle->la_flags & LLE_VALID) { - memcpy(lladdr, &lle->ll_addr, ifp->if_addrlen); - rc = 0; - } else - rc = EWOULDBLOCK; - - if (flags & LLE_EXCLUSIVE) - LLE_WUNLOCK(lle); - else - LLE_RUNLOCK(lle); - - return (rc); -} -#endif - /* * Returns 0 or EWOULDBLOCK on success (any other value is an error). 0 means * lladdr and vtag are valid on return, EWOULDBLOCK means the TOE driver's @@ -538,7 +467,7 @@ toe_l2_resolve(struct toedev *tod, struc #endif #ifdef INET6 case AF_INET6: - rc = toe_nd6_resolve(ifp, sa, lladdr); + rc = nd6_resolve(ifp, 0, NULL, sa, lladdr, NULL); break; #endif default: From owner-svn-src-head@freebsd.org Tue Sep 22 19:57:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A004A06F1D; Tue, 22 Sep 2015 19:57:32 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 618A810E7; Tue, 22 Sep 2015 19:57:32 +0000 (UTC) (envelope-from andrew@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MJvWDw011911; Tue, 22 Sep 2015 19:57:32 GMT (envelope-from andrew@FreeBSD.org) Received: (from andrew@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MJvWwY011910; Tue, 22 Sep 2015 19:57:32 GMT (envelope-from andrew@FreeBSD.org) Message-Id: <201509221957.t8MJvWwY011910@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: andrew set sender to andrew@FreeBSD.org using -f From: Andrew Turner Date: Tue, 22 Sep 2015 19:57:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288125 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 19:57:32 -0000 Author: andrew Date: Tue Sep 22 19:57:31 2015 New Revision: 288125 URL: https://svnweb.freebsd.org/changeset/base/288125 Log: Add support for __atomic_FOO_fetch on arm prior to armv6. These return the new value where the existing functions return the old value. MFC after: 1 Week Modified: head/sys/arm/arm/stdatomic.c Modified: head/sys/arm/arm/stdatomic.c ============================================================================== --- head/sys/arm/arm/stdatomic.c Tue Sep 22 19:05:44 2015 (r288124) +++ head/sys/arm/arm/stdatomic.c Tue Sep 22 19:57:31 2015 (r288125) @@ -270,11 +270,11 @@ __atomic_compare_exchange_##N(uintN_t *m } \ } -#define EMIT_FETCH_OP_N(N, uintN_t, ldr, str, name, op) \ +#define EMIT_FETCH_OP_N(N, uintN_t, ldr, str, name, op, ret) \ uintN_t \ __atomic_##name##_##N(uintN_t *mem, uintN_t val, int model __unused) \ { \ - uint32_t old, temp, ras_start; \ + uint32_t old, new, ras_start; \ \ ras_start = ARM_RAS_START; \ __asm volatile ( \ @@ -295,9 +295,9 @@ __atomic_##name##_##N(uintN_t *mem, uint "\tstr %2, [%5]\n" \ "\tmov %2, #0xffffffff\n" \ "\tstr %2, [%5, #4]\n" \ - : "=&r" (old), "=m" (*mem), "=&r" (temp) \ + : "=&r" (old), "=m" (*mem), "=&r" (new) \ : "r" (val), "m" (*mem), "r" (ras_start)); \ - return (old); \ + return (ret); \ } #define EMIT_ALL_OPS_N(N, uintN_t, ldr, str, streq) \ @@ -305,11 +305,16 @@ EMIT_LOAD_N(N, uintN_t) \ EMIT_STORE_N(N, uintN_t) \ EMIT_EXCHANGE_N(N, uintN_t, ldr, str) \ EMIT_COMPARE_EXCHANGE_N(N, uintN_t, ldr, streq) \ -EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_add, "add") \ -EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_and, "and") \ -EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_or, "orr") \ -EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_sub, "sub") \ -EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_xor, "eor") +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_add, "add", old) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_and, "and", old) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_or, "orr", old) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_sub, "sub", old) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, fetch_xor, "eor", old) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, add_fetch, "add", new) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, and_fetch, "and", new) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, or_fetch, "orr", new) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, sub_fetch, "sub", new) \ +EMIT_FETCH_OP_N(N, uintN_t, ldr, str, xor_fetch, "eor", new) EMIT_ALL_OPS_N(1, uint8_t, "ldrb", "strb", "strbeq") EMIT_ALL_OPS_N(2, uint16_t, "ldrh", "strh", "strheq") From owner-svn-src-head@freebsd.org Tue Sep 22 20:45:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3172CA02DA3; Tue, 22 Sep 2015 20:45:05 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 21CF11F5A; Tue, 22 Sep 2015 20:45:05 +0000 (UTC) (envelope-from melifaro@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MKj5lf033577; Tue, 22 Sep 2015 20:45:05 GMT (envelope-from melifaro@FreeBSD.org) Received: (from melifaro@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MKj4q0033575; Tue, 22 Sep 2015 20:45:04 GMT (envelope-from melifaro@FreeBSD.org) Message-Id: <201509222045.t8MKj4q0033575@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: melifaro set sender to melifaro@FreeBSD.org using -f From: "Alexander V. Chernikov" Date: Tue, 22 Sep 2015 20:45:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288129 - head/sys/netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 20:45:05 -0000 Author: melifaro Date: Tue Sep 22 20:45:04 2015 New Revision: 288129 URL: https://svnweb.freebsd.org/changeset/base/288129 Log: Use standard lle LLE_EXCLUSIVE request flags instead of its redefined version. Modified: head/sys/netinet6/nd6.c head/sys/netinet6/nd6.h Modified: head/sys/netinet6/nd6.c ============================================================================== --- head/sys/netinet6/nd6.c Tue Sep 22 20:42:14 2015 (r288128) +++ head/sys/netinet6/nd6.c Tue Sep 22 20:45:04 2015 (r288129) @@ -991,7 +991,6 @@ nd6_lookup(const struct in6_addr *addr6, { struct sockaddr_in6 sin6; struct llentry *ln; - int llflags; bzero(&sin6, sizeof(sin6)); sin6.sin6_len = sizeof(struct sockaddr_in6); @@ -1000,8 +999,7 @@ nd6_lookup(const struct in6_addr *addr6, IF_AFDATA_LOCK_ASSERT(ifp); - llflags = (flags & ND6_EXCLUSIVE) ? LLE_EXCLUSIVE : 0; - ln = lla_lookup(LLTABLE6(ifp), llflags, (struct sockaddr *)&sin6); + ln = lla_lookup(LLTABLE6(ifp), flags, (struct sockaddr *)&sin6); return (ln); } @@ -1331,7 +1329,7 @@ nd6_nud_hint(struct rtentry *rt, struct ifp = rt->rt_ifp; IF_AFDATA_RLOCK(ifp); - ln = nd6_lookup(dst6, ND6_EXCLUSIVE, NULL); + ln = nd6_lookup(dst6, LLE_EXCLUSIVE, NULL); IF_AFDATA_RUNLOCK(ifp); if (ln == NULL) return; @@ -1741,13 +1739,13 @@ nd6_cache_lladdr(struct ifnet *ifp, stru * Spec says nothing in sections for RA, RS and NA. There's small * description on it in NS section (RFC 2461 7.2.3). */ - flags = lladdr ? ND6_EXCLUSIVE : 0; + flags = lladdr ? LLE_EXCLUSIVE : 0; IF_AFDATA_RLOCK(ifp); ln = nd6_lookup(from, flags, ifp); IF_AFDATA_RUNLOCK(ifp); is_newentry = 0; if (ln == NULL) { - flags |= ND6_EXCLUSIVE; + flags |= LLE_EXCLUSIVE; ln = nd6_alloc(from, 0, ifp); if (ln == NULL) return; @@ -1763,7 +1761,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru IF_AFDATA_WLOCK(ifp); LLE_WLOCK(ln); /* Prefer any existing lle over newly-created one */ - ln_tmp = nd6_lookup(from, ND6_EXCLUSIVE, ifp); + ln_tmp = nd6_lookup(from, LLE_EXCLUSIVE, ifp); if (ln_tmp == NULL) lltable_link_entry(LLTABLE6(ifp), ln); IF_AFDATA_WUNLOCK(ifp); @@ -1779,7 +1777,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru } /* do nothing if static ndp is set */ if ((ln->la_flags & LLE_STATIC)) { - if (flags & ND6_EXCLUSIVE) + if (flags & LLE_EXCLUSIVE) LLE_WUNLOCK(ln); else LLE_RUNLOCK(ln); @@ -1836,7 +1834,7 @@ nd6_cache_lladdr(struct ifnet *ifp, stru if ((type & 0xFF) == ND_REDIRECT && code != ND_REDIRECT_ROUTER) ln->la_flags |= LLE_REDIRECT; - if (flags & ND6_EXCLUSIVE) + if (flags & LLE_EXCLUSIVE) LLE_WUNLOCK(ln); else LLE_RUNLOCK(ln); @@ -2053,7 +2051,7 @@ nd6_resolve(struct ifnet *ifp, int is_gw * * Heavy version. * Function assume that destination LLE does not exist, - * is invalid or stale, so ND6_EXCLUSIVE lock needs to be acquired. + * is invalid or stale, so LLE_EXCLUSIVE lock needs to be acquired. */ static int nd6_resolve_slow(struct ifnet *ifp, struct mbuf *m, @@ -2071,7 +2069,7 @@ nd6_resolve_slow(struct ifnet *ifp, stru */ if (lle == NULL) { IF_AFDATA_RLOCK(ifp); - lle = nd6_lookup(&dst->sin6_addr, ND6_EXCLUSIVE, ifp); + lle = nd6_lookup(&dst->sin6_addr, LLE_EXCLUSIVE, ifp); IF_AFDATA_RUNLOCK(ifp); if ((lle == NULL) && nd6_is_addr_neighbor(dst, ifp)) { /* @@ -2093,7 +2091,7 @@ nd6_resolve_slow(struct ifnet *ifp, stru IF_AFDATA_WLOCK(ifp); LLE_WLOCK(lle); /* Prefer any existing entry over newly-created one */ - lle_tmp = nd6_lookup(&dst->sin6_addr, ND6_EXCLUSIVE, ifp); + lle_tmp = nd6_lookup(&dst->sin6_addr, LLE_EXCLUSIVE, ifp); if (lle_tmp == NULL) lltable_link_entry(LLTABLE6(ifp), lle); IF_AFDATA_WUNLOCK(ifp); Modified: head/sys/netinet6/nd6.h ============================================================================== --- head/sys/netinet6/nd6.h Tue Sep 22 20:42:14 2015 (r288128) +++ head/sys/netinet6/nd6.h Tue Sep 22 20:45:04 2015 (r288129) @@ -89,8 +89,6 @@ struct nd_ifinfo { #define ND6_IFF_NO_PREFER_IFACE 0x80 /* XXX: not related to ND. */ #define ND6_IFF_NO_DAD 0x100 -#define ND6_EXCLUSIVE LLE_EXCLUSIVE - #ifdef _KERNEL #define ND_IFINFO(ifp) \ (((struct in6_ifextra *)(ifp)->if_afdata[AF_INET6])->nd_ifinfo) From owner-svn-src-head@freebsd.org Tue Sep 22 21:07:48 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 548CBA03A8A; Tue, 22 Sep 2015 21:07:48 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 415811D60; Tue, 22 Sep 2015 21:07:48 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8ML7mH4041826; Tue, 22 Sep 2015 21:07:48 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8ML7mSq041825; Tue, 22 Sep 2015 21:07:48 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <201509222107.t8ML7mSq041825@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Tue, 22 Sep 2015 21:07:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288131 - head/sys/amd64/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 21:07:48 -0000 Author: mjg Date: Tue Sep 22 21:07:47 2015 New Revision: 288131 URL: https://svnweb.freebsd.org/changeset/base/288131 Log: amd64: plug redundant bootAP declaration Reported by: gcc5 Modified: head/sys/amd64/include/smp.h Modified: head/sys/amd64/include/smp.h ============================================================================== --- head/sys/amd64/include/smp.h Tue Sep 22 20:48:12 2015 (r288130) +++ head/sys/amd64/include/smp.h Tue Sep 22 21:07:47 2015 (r288131) @@ -35,7 +35,6 @@ extern int mp_naps; extern int boot_cpu_id; extern struct pcb stoppcbs[]; extern int cpu_apic_ids[]; -extern int bootAP; extern void *dpcpu; extern char *bootSTK; extern int bootAP; From owner-svn-src-head@freebsd.org Tue Sep 22 21:43:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 23F31A06CB0; Tue, 22 Sep 2015 21:43:09 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 14B7F1FF0; Tue, 22 Sep 2015 21:43:09 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MLh8Lh057929; Tue, 22 Sep 2015 21:43:08 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MLh88q057928; Tue, 22 Sep 2015 21:43:08 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509222143.t8MLh88q057928@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 22 Sep 2015 21:43:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288132 - head/sys/arm64/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 21:43:09 -0000 Author: emaste Date: Tue Sep 22 21:43:08 2015 New Revision: 288132 URL: https://svnweb.freebsd.org/changeset/base/288132 Log: Add pass device to arm64 GENERIC (for smartctl) Sponsored by: The FreeBSD Foundation Modified: head/sys/arm64/conf/GENERIC Modified: head/sys/arm64/conf/GENERIC ============================================================================== --- head/sys/arm64/conf/GENERIC Tue Sep 22 21:07:47 2015 (r288131) +++ head/sys/arm64/conf/GENERIC Tue Sep 22 21:43:08 2015 (r288132) @@ -107,6 +107,9 @@ device ahci device scbus device da +# ATA/SCSI peripherals +device pass # Passthrough device (direct ATA/SCSI access) + # MMC/SD/SDIO Card slot support device mmc # mmc/sd bus device mmcsd # mmc/sd flash cards From owner-svn-src-head@freebsd.org Tue Sep 22 23:57:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 94A54A0700A; Tue, 22 Sep 2015 23:57:53 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8513015D3; Tue, 22 Sep 2015 23:57:53 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8MNvr88011833; Tue, 22 Sep 2015 23:57:53 GMT (envelope-from jeff@FreeBSD.org) Received: (from jeff@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8MNvrfh011832; Tue, 22 Sep 2015 23:57:53 GMT (envelope-from jeff@FreeBSD.org) Message-Id: <201509222357.t8MNvrfh011832@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jeff set sender to jeff@FreeBSD.org using -f From: Jeff Roberson Date: Tue, 22 Sep 2015 23:57:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288137 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Sep 2015 23:57:53 -0000 Author: jeff Date: Tue Sep 22 23:57:52 2015 New Revision: 288137 URL: https://svnweb.freebsd.org/changeset/base/288137 Log: Some refactoring of the buf/vm interface. - Eliminate bogus page replacement that is inconsistently applied in the invalidation loop in brelse. This has been a no-op in modern times as biodone() is responsible for cleaning up after bogus pages. This would've spammed the console with printfs at a minimum. - Allow the compiler and human readers alike to reason about allocbuf() by splitting it into constituent parts. - Separate the VM manipulating and buf manipulating code in brelse() and bufdone() so that the intentions are clear. This makes it evident that there are several duplicated buf pages loops that will be consolidated at a later time. Reviewed by: kib Tested by: pho Sponsored by: EMC / Isilon Storage Division Modified: head/sys/kern/vfs_bio.c Modified: head/sys/kern/vfs_bio.c ============================================================================== --- head/sys/kern/vfs_bio.c Tue Sep 22 22:35:42 2015 (r288136) +++ head/sys/kern/vfs_bio.c Tue Sep 22 23:57:52 2015 (r288137) @@ -110,7 +110,10 @@ static void vfs_page_set_validclean(stru vm_page_t m); static void vfs_clean_pages_dirty_buf(struct buf *bp); static void vfs_setdirty_locked_object(struct buf *bp); +static void vfs_vmio_invalidate(struct buf *bp); static void vfs_vmio_release(struct buf *bp); +static void vfs_vmio_truncate(struct buf *bp, int npages); +static void vfs_vmio_extend(struct buf *bp, int npages, int size); static int vfs_bio_clcheck(struct vnode *vp, int size, daddr_t lblkno, daddr_t blkno); static int buf_flush(struct vnode *vp, int); @@ -661,11 +664,9 @@ waitrunningbufspace(void) * bit if the newly extended portion of the buffer does not contain * valid data. */ -static __inline -void -vfs_buf_test_cache(struct buf *bp, - vm_ooffset_t foff, vm_offset_t off, vm_offset_t size, - vm_page_t m) +static __inline void +vfs_buf_test_cache(struct buf *bp, vm_ooffset_t foff, vm_offset_t off, + vm_offset_t size, vm_page_t m) { VM_OBJECT_ASSERT_LOCKED(m->object); @@ -1865,105 +1866,16 @@ brelse(struct buf *bp) * around to prevent it from being reconstituted and starting a second * background write. */ - if ((bp->b_flags & B_VMIO) - && !(bp->b_vp->v_mount != NULL && - (bp->b_vp->v_mount->mnt_vfc->vfc_flags & VFCF_NETWORK) != 0 && - !vn_isdisk(bp->b_vp, NULL) && - (bp->b_flags & B_DELWRI)) - ) { - - int i, j, resid; - vm_page_t m; - off_t foff; - vm_pindex_t poff; - vm_object_t obj; - - obj = bp->b_bufobj->bo_object; - - /* - * Get the base offset and length of the buffer. Note that - * in the VMIO case if the buffer block size is not - * page-aligned then b_data pointer may not be page-aligned. - * But our b_pages[] array *IS* page aligned. - * - * block sizes less then DEV_BSIZE (usually 512) are not - * supported due to the page granularity bits (m->valid, - * m->dirty, etc...). - * - * See man buf(9) for more information - */ - resid = bp->b_bufsize; - foff = bp->b_offset; - for (i = 0; i < bp->b_npages; i++) { - int had_bogus = 0; - - m = bp->b_pages[i]; - - /* - * If we hit a bogus page, fixup *all* the bogus pages - * now. - */ - if (m == bogus_page) { - poff = OFF_TO_IDX(bp->b_offset); - had_bogus = 1; - - VM_OBJECT_RLOCK(obj); - for (j = i; j < bp->b_npages; j++) { - vm_page_t mtmp; - mtmp = bp->b_pages[j]; - if (mtmp == bogus_page) { - mtmp = vm_page_lookup(obj, poff + j); - if (!mtmp) { - panic("brelse: page missing\n"); - } - bp->b_pages[j] = mtmp; - } - } - VM_OBJECT_RUNLOCK(obj); - - if ((bp->b_flags & B_INVAL) == 0 && - buf_mapped(bp)) { - BUF_CHECK_MAPPED(bp); - pmap_qenter( - trunc_page((vm_offset_t)bp->b_data), - bp->b_pages, bp->b_npages); - } - m = bp->b_pages[i]; - } - if ((bp->b_flags & B_NOCACHE) || - (bp->b_ioflags & BIO_ERROR && - bp->b_iocmd == BIO_READ)) { - int poffset = foff & PAGE_MASK; - int presid = resid > (PAGE_SIZE - poffset) ? - (PAGE_SIZE - poffset) : resid; - - KASSERT(presid >= 0, ("brelse: extra page")); - VM_OBJECT_WLOCK(obj); - while (vm_page_xbusied(m)) { - vm_page_lock(m); - VM_OBJECT_WUNLOCK(obj); - vm_page_busy_sleep(m, "mbncsh"); - VM_OBJECT_WLOCK(obj); - } - if (pmap_page_wired_mappings(m) == 0) - vm_page_set_invalid(m, poffset, presid); - VM_OBJECT_WUNLOCK(obj); - if (had_bogus) - printf("avoided corruption bug in bogus_page/brelse code\n"); - } - resid -= PAGE_SIZE - (foff & PAGE_MASK); - foff = (foff + PAGE_SIZE) & ~(off_t)PAGE_MASK; - } - if (bp->b_flags & (B_INVAL | B_RELBUF)) - vfs_vmio_release(bp); - - } else if (bp->b_flags & B_VMIO) { + if ((bp->b_flags & B_VMIO) && (bp->b_flags & B_NOCACHE || + (bp->b_ioflags & BIO_ERROR && bp->b_iocmd == BIO_READ)) && + !(bp->b_vp->v_mount != NULL && + (bp->b_vp->v_mount->mnt_vfc->vfc_flags & VFCF_NETWORK) != 0 && + !vn_isdisk(bp->b_vp, NULL) && (bp->b_flags & B_DELWRI))) + vfs_vmio_invalidate(bp); - if (bp->b_flags & (B_INVAL | B_RELBUF)) { + if ((bp->b_flags & (B_INVAL | B_RELBUF)) != 0) { + if (bp->b_flags & B_VMIO) vfs_vmio_release(bp); - } - - } else if ((bp->b_flags & (B_INVAL | B_RELBUF)) != 0) { if (bp->b_bufsize != 0) allocbuf(bp, 0); if (bp->b_vp != NULL) @@ -2069,6 +1981,132 @@ out: BUF_UNLOCK(bp); } +/* + * Complete I/O to a VMIO backed page. Validate the pages as appropriate, + * restore bogus pages. + */ +static void +vfs_vmio_iodone(struct buf *bp) +{ + vm_ooffset_t foff; + vm_page_t m; + vm_object_t obj; + struct vnode *vp; + int bogus, i, iosize; + + obj = bp->b_bufobj->bo_object; + KASSERT(obj->paging_in_progress >= bp->b_npages, + ("vfs_vmio_iodone: paging in progress(%d) < b_npages(%d)", + obj->paging_in_progress, bp->b_npages)); + + vp = bp->b_vp; + KASSERT(vp->v_holdcnt > 0, + ("vfs_vmio_iodone: vnode %p has zero hold count", vp)); + KASSERT(vp->v_object != NULL, + ("vfs_vmio_iodone: vnode %p has no vm_object", vp)); + + foff = bp->b_offset; + KASSERT(bp->b_offset != NOOFFSET, + ("vfs_vmio_iodone: bp %p has no buffer offset", bp)); + + bogus = 0; + iosize = bp->b_bcount - bp->b_resid; + VM_OBJECT_WLOCK(obj); + for (i = 0; i < bp->b_npages; i++) { + int resid; + + resid = ((foff + PAGE_SIZE) & ~(off_t)PAGE_MASK) - foff; + if (resid > iosize) + resid = iosize; + + /* + * cleanup bogus pages, restoring the originals + */ + m = bp->b_pages[i]; + if (m == bogus_page) { + bogus = 1; + m = vm_page_lookup(obj, OFF_TO_IDX(foff)); + if (m == NULL) + panic("biodone: page disappeared!"); + bp->b_pages[i] = m; + } else if ((bp->b_iocmd == BIO_READ) && resid > 0) { + /* + * In the write case, the valid and clean bits are + * already changed correctly ( see bdwrite() ), so we + * only need to do this here in the read case. + */ + KASSERT((m->dirty & vm_page_bits(foff & PAGE_MASK, + resid)) == 0, ("vfs_vmio_iodone: page %p " + "has unexpected dirty bits", m)); + vfs_page_set_valid(bp, foff, m); + } + KASSERT(OFF_TO_IDX(foff) == m->pindex, + ("vfs_vmio_iodone: foff(%jd)/pindex(%ju) mismatch", + (intmax_t)foff, (uintmax_t)m->pindex)); + + vm_page_sunbusy(m); + vm_object_pip_subtract(obj, 1); + foff = (foff + PAGE_SIZE) & ~(off_t)PAGE_MASK; + iosize -= resid; + } + vm_object_pip_wakeupn(obj, 0); + VM_OBJECT_WUNLOCK(obj); + if (bogus && buf_mapped(bp)) { + BUF_CHECK_MAPPED(bp); + pmap_qenter(trunc_page((vm_offset_t)bp->b_data), + bp->b_pages, bp->b_npages); + } +} + +/* + * Perform page invalidation when a buffer is released. The fully invalid + * pages will be reclaimed later in vfs_vmio_release(). + */ +static void +vfs_vmio_invalidate(struct buf *bp) +{ + vm_object_t obj; + vm_page_t m; + int i, resid, poffset, presid; + + /* + * Get the base offset and length of the buffer. Note that + * in the VMIO case if the buffer block size is not + * page-aligned then b_data pointer may not be page-aligned. + * But our b_pages[] array *IS* page aligned. + * + * block sizes less then DEV_BSIZE (usually 512) are not + * supported due to the page granularity bits (m->valid, + * m->dirty, etc...). + * + * See man buf(9) for more information + */ + obj = bp->b_bufobj->bo_object; + resid = bp->b_bufsize; + poffset = bp->b_offset & PAGE_MASK; + VM_OBJECT_WLOCK(obj); + for (i = 0; i < bp->b_npages; i++) { + m = bp->b_pages[i]; + if (m == bogus_page) + panic("vfs_vmio_invalidate: Unexpected bogus page."); + + KASSERT(presid >= 0, ("brelse: extra page")); + while (vm_page_xbusied(m)) { + vm_page_lock(m); + VM_OBJECT_WUNLOCK(obj); + vm_page_busy_sleep(m, "mbncsh"); + VM_OBJECT_WLOCK(obj); + } + presid = resid > (PAGE_SIZE - poffset) ? + (PAGE_SIZE - poffset) : resid; + if (pmap_page_wired_mappings(m) == 0) + vm_page_set_invalid(m, poffset, presid); + resid -= presid; + poffset = 0; + } + VM_OBJECT_WUNLOCK(obj); +} + /* Give pages used by the bp back to the VM system (where possible) */ static void vfs_vmio_release(struct buf *bp) @@ -2120,8 +2158,124 @@ vfs_vmio_release(struct buf *bp) bufspaceadjust(bp, 0); bp->b_npages = 0; bp->b_flags &= ~B_VMIO; - if (bp->b_vp) - brelvp(bp); +} + +/* + * Page-granular truncation of an existing VMIO buffer. + */ +static void +vfs_vmio_truncate(struct buf *bp, int desiredpages) +{ + vm_page_t m; + int i; + + if (bp->b_npages == desiredpages) + return; + + if (buf_mapped(bp)) { + BUF_CHECK_MAPPED(bp); + pmap_qremove((vm_offset_t)trunc_page((vm_offset_t)bp->b_data) + + (desiredpages << PAGE_SHIFT), bp->b_npages - desiredpages); + } else + BUF_CHECK_UNMAPPED(bp); + VM_OBJECT_WLOCK(bp->b_bufobj->bo_object); + for (i = desiredpages; i < bp->b_npages; i++) { + /* + * The page is not freed here -- it is the responsibility of + * vnode_pager_setsize. + */ + m = bp->b_pages[i]; + KASSERT(m != bogus_page, ("allocbuf: bogus page found")); + while (vm_page_sleep_if_busy(m, "biodep")) + continue; + bp->b_pages[i] = NULL; + vm_page_lock(m); + vm_page_unwire(m, PQ_INACTIVE); + vm_page_unlock(m); + } + VM_OBJECT_WUNLOCK(bp->b_bufobj->bo_object); + bp->b_npages = desiredpages; +} + +/* + * Byte granular extension of VMIO buffers. + */ +static void +vfs_vmio_extend(struct buf *bp, int desiredpages, int size) +{ + /* + * We are growing the buffer, possibly in a + * byte-granular fashion. + */ + vm_object_t obj; + vm_offset_t toff; + vm_offset_t tinc; + vm_page_t m; + + /* + * Step 1, bring in the VM pages from the object, allocating + * them if necessary. We must clear B_CACHE if these pages + * are not valid for the range covered by the buffer. + */ + obj = bp->b_bufobj->bo_object; + VM_OBJECT_WLOCK(obj); + while (bp->b_npages < desiredpages) { + /* + * We must allocate system pages since blocking + * here could interfere with paging I/O, no + * matter which process we are. + * + * Only exclusive busy can be tested here. + * Blocking on shared busy might lead to + * deadlocks once allocbuf() is called after + * pages are vfs_busy_pages(). + */ + m = vm_page_grab(obj, OFF_TO_IDX(bp->b_offset) + bp->b_npages, + VM_ALLOC_NOBUSY | VM_ALLOC_SYSTEM | + VM_ALLOC_WIRED | VM_ALLOC_IGN_SBUSY | + VM_ALLOC_COUNT(desiredpages - bp->b_npages)); + if (m->valid == 0) + bp->b_flags &= ~B_CACHE; + bp->b_pages[bp->b_npages] = m; + ++bp->b_npages; + } + + /* + * Step 2. We've loaded the pages into the buffer, + * we have to figure out if we can still have B_CACHE + * set. Note that B_CACHE is set according to the + * byte-granular range ( bcount and size ), not the + * aligned range ( newbsize ). + * + * The VM test is against m->valid, which is DEV_BSIZE + * aligned. Needless to say, the validity of the data + * needs to also be DEV_BSIZE aligned. Note that this + * fails with NFS if the server or some other client + * extends the file's EOF. If our buffer is resized, + * B_CACHE may remain set! XXX + */ + toff = bp->b_bcount; + tinc = PAGE_SIZE - ((bp->b_offset + toff) & PAGE_MASK); + while ((bp->b_flags & B_CACHE) && toff < size) { + vm_pindex_t pi; + + if (tinc > (size - toff)) + tinc = size - toff; + pi = ((bp->b_offset & PAGE_MASK) + toff) >> PAGE_SHIFT; + m = bp->b_pages[pi]; + vfs_buf_test_cache(bp, bp->b_offset, toff, tinc, m); + toff += tinc; + tinc = PAGE_SIZE; + } + VM_OBJECT_WUNLOCK(obj); + + /* + * Step 3, fixup the KVA pmap. + */ + if (buf_mapped(bp)) + bpmap_qenter(bp); + else + BUF_CHECK_UNMAPPED(bp); } /* @@ -3430,6 +3584,80 @@ geteblk(int size, int flags) } /* + * Truncate the backing store for a non-vmio buffer. + */ +static void +vfs_nonvmio_truncate(struct buf *bp, int newbsize) +{ + + if (bp->b_flags & B_MALLOC) { + /* + * malloced buffers are not shrunk + */ + if (newbsize == 0) { + bufmallocadjust(bp, 0); + free(bp->b_data, M_BIOBUF); + bp->b_data = bp->b_kvabase; + bp->b_flags &= ~B_MALLOC; + } + return; + } + vm_hold_free_pages(bp, newbsize); + bufspaceadjust(bp, newbsize); +} + +/* + * Extend the backing for a non-VMIO buffer. + */ +static void +vfs_nonvmio_extend(struct buf *bp, int newbsize) +{ + caddr_t origbuf; + int origbufsize; + + /* + * We only use malloced memory on the first allocation. + * and revert to page-allocated memory when the buffer + * grows. + * + * There is a potential smp race here that could lead + * to bufmallocspace slightly passing the max. It + * is probably extremely rare and not worth worrying + * over. + */ + if (bp->b_bufsize == 0 && newbsize <= PAGE_SIZE/2 && + bufmallocspace < maxbufmallocspace) { + bp->b_data = malloc(newbsize, M_BIOBUF, M_WAITOK); + bp->b_flags |= B_MALLOC; + bufmallocadjust(bp, newbsize); + return; + } + + /* + * If the buffer is growing on its other-than-first + * allocation then we revert to the page-allocation + * scheme. + */ + origbuf = NULL; + origbufsize = 0; + if (bp->b_flags & B_MALLOC) { + origbuf = bp->b_data; + origbufsize = bp->b_bufsize; + bp->b_data = bp->b_kvabase; + bufmallocadjust(bp, 0); + bp->b_flags &= ~B_MALLOC; + newbsize = round_page(newbsize); + } + vm_hold_load_pages(bp, (vm_offset_t) bp->b_data + bp->b_bufsize, + (vm_offset_t) bp->b_data + newbsize); + if (origbuf != NULL) { + bcopy(origbuf, bp->b_data, origbufsize); + free(origbuf, M_BIOBUF); + } + bufspaceadjust(bp, newbsize); +} + +/* * This code constitutes the buffer memory from either anonymous system * memory (in the case of non-VMIO operations) or from an associated * VM object (in the case of VMIO operations). This code is able to @@ -3443,100 +3671,33 @@ geteblk(int size, int flags) * allocbuf() only adjusts B_CACHE for VMIO buffers. getblk() deals with * B_CACHE for the non-VMIO case. */ - int allocbuf(struct buf *bp, int size) { - int newbsize, mbsize; - int i; + int newbsize; BUF_ASSERT_HELD(bp); if (bp->b_kvasize != 0 && bp->b_kvasize < size) panic("allocbuf: buffer too small"); + newbsize = (size + DEV_BSIZE - 1) & ~(DEV_BSIZE - 1); if ((bp->b_flags & B_VMIO) == 0) { - caddr_t origbuf; - int origbufsize; + if ((bp->b_flags & B_MALLOC) == 0) + newbsize = round_page(newbsize); /* * Just get anonymous memory from the kernel. Don't * mess with B_CACHE. */ - mbsize = (size + DEV_BSIZE - 1) & ~(DEV_BSIZE - 1); - if (bp->b_flags & B_MALLOC) - newbsize = mbsize; - else - newbsize = round_page(size); - - if (newbsize < bp->b_bufsize) { - /* - * malloced buffers are not shrunk - */ - if (bp->b_flags & B_MALLOC) { - if (newbsize) { - bp->b_bcount = size; - } else { - free(bp->b_data, M_BIOBUF); - bufmallocadjust(bp, 0); - bp->b_data = bp->b_kvabase; - bp->b_bcount = 0; - bp->b_flags &= ~B_MALLOC; - } - return 1; - } - vm_hold_free_pages(bp, newbsize); - } else if (newbsize > bp->b_bufsize) { - /* - * We only use malloced memory on the first allocation. - * and revert to page-allocated memory when the buffer - * grows. - */ - /* - * There is a potential smp race here that could lead - * to bufmallocspace slightly passing the max. It - * is probably extremely rare and not worth worrying - * over. - */ - if ((bufmallocspace < maxbufmallocspace) && - (bp->b_bufsize == 0) && - (mbsize <= PAGE_SIZE/2)) { - - bp->b_data = malloc(mbsize, M_BIOBUF, M_WAITOK); - bp->b_bcount = size; - bp->b_flags |= B_MALLOC; - bufmallocadjust(bp, mbsize); - return 1; - } - origbuf = NULL; - origbufsize = 0; - /* - * If the buffer is growing on its other-than-first - * allocation then we revert to the page-allocation - * scheme. - */ - if (bp->b_flags & B_MALLOC) { - origbuf = bp->b_data; - origbufsize = bp->b_bufsize; - bp->b_data = bp->b_kvabase; - bufmallocadjust(bp, 0); - bp->b_flags &= ~B_MALLOC; - newbsize = round_page(newbsize); - } - vm_hold_load_pages( - bp, - (vm_offset_t) bp->b_data + bp->b_bufsize, - (vm_offset_t) bp->b_data + newbsize); - if (origbuf) { - bcopy(origbuf, bp->b_data, origbufsize); - free(origbuf, M_BIOBUF); - } - } + if (newbsize < bp->b_bufsize) + vfs_nonvmio_truncate(bp, newbsize); + else if (newbsize > bp->b_bufsize) + vfs_nonvmio_extend(bp, newbsize); } else { int desiredpages; - newbsize = (size + DEV_BSIZE - 1) & ~(DEV_BSIZE - 1); desiredpages = (size == 0) ? 0 : - num_pages((bp->b_offset & PAGE_MASK) + newbsize); + num_pages((bp->b_offset & PAGE_MASK) + newbsize); if (bp->b_flags & B_MALLOC) panic("allocbuf: VMIO buffer can't be malloced"); @@ -3547,139 +3708,13 @@ allocbuf(struct buf *bp, int size) if (size == 0 || bp->b_bufsize == 0) bp->b_flags |= B_CACHE; - if (newbsize < bp->b_bufsize) { - /* - * DEV_BSIZE aligned new buffer size is less then the - * DEV_BSIZE aligned existing buffer size. Figure out - * if we have to remove any pages. - */ - if (desiredpages < bp->b_npages) { - vm_page_t m; - - if (buf_mapped(bp)) { - BUF_CHECK_MAPPED(bp); - pmap_qremove((vm_offset_t)trunc_page( - (vm_offset_t)bp->b_data) + - (desiredpages << PAGE_SHIFT), - (bp->b_npages - desiredpages)); - } else - BUF_CHECK_UNMAPPED(bp); - VM_OBJECT_WLOCK(bp->b_bufobj->bo_object); - for (i = desiredpages; i < bp->b_npages; i++) { - /* - * the page is not freed here -- it - * is the responsibility of - * vnode_pager_setsize - */ - m = bp->b_pages[i]; - KASSERT(m != bogus_page, - ("allocbuf: bogus page found")); - while (vm_page_sleep_if_busy(m, - "biodep")) - continue; - - bp->b_pages[i] = NULL; - vm_page_lock(m); - vm_page_unwire(m, PQ_INACTIVE); - vm_page_unlock(m); - } - VM_OBJECT_WUNLOCK(bp->b_bufobj->bo_object); - bp->b_npages = desiredpages; - } - } else if (size > bp->b_bcount) { - /* - * We are growing the buffer, possibly in a - * byte-granular fashion. - */ - vm_object_t obj; - vm_offset_t toff; - vm_offset_t tinc; - - /* - * Step 1, bring in the VM pages from the object, - * allocating them if necessary. We must clear - * B_CACHE if these pages are not valid for the - * range covered by the buffer. - */ - - obj = bp->b_bufobj->bo_object; - - VM_OBJECT_WLOCK(obj); - while (bp->b_npages < desiredpages) { - vm_page_t m; - - /* - * We must allocate system pages since blocking - * here could interfere with paging I/O, no - * matter which process we are. - * - * Only exclusive busy can be tested here. - * Blocking on shared busy might lead to - * deadlocks once allocbuf() is called after - * pages are vfs_busy_pages(). - */ - m = vm_page_grab(obj, OFF_TO_IDX(bp->b_offset) + - bp->b_npages, VM_ALLOC_NOBUSY | - VM_ALLOC_SYSTEM | VM_ALLOC_WIRED | - VM_ALLOC_IGN_SBUSY | - VM_ALLOC_COUNT(desiredpages - bp->b_npages)); - if (m->valid == 0) - bp->b_flags &= ~B_CACHE; - bp->b_pages[bp->b_npages] = m; - ++bp->b_npages; - } - - /* - * Step 2. We've loaded the pages into the buffer, - * we have to figure out if we can still have B_CACHE - * set. Note that B_CACHE is set according to the - * byte-granular range ( bcount and size ), new the - * aligned range ( newbsize ). - * - * The VM test is against m->valid, which is DEV_BSIZE - * aligned. Needless to say, the validity of the data - * needs to also be DEV_BSIZE aligned. Note that this - * fails with NFS if the server or some other client - * extends the file's EOF. If our buffer is resized, - * B_CACHE may remain set! XXX - */ - - toff = bp->b_bcount; - tinc = PAGE_SIZE - ((bp->b_offset + toff) & PAGE_MASK); - - while ((bp->b_flags & B_CACHE) && toff < size) { - vm_pindex_t pi; - - if (tinc > (size - toff)) - tinc = size - toff; - - pi = ((bp->b_offset & PAGE_MASK) + toff) >> - PAGE_SHIFT; - - vfs_buf_test_cache( - bp, - bp->b_offset, - toff, - tinc, - bp->b_pages[pi] - ); - toff += tinc; - tinc = PAGE_SIZE; - } - VM_OBJECT_WUNLOCK(obj); - - /* - * Step 3, fixup the KVA pmap. - */ - if (buf_mapped(bp)) - bpmap_qenter(bp); - else - BUF_CHECK_UNMAPPED(bp); - } - } - /* Record changes in allocation size. */ - if (bp->b_bufsize != newbsize) + if (newbsize < bp->b_bufsize) + vfs_vmio_truncate(bp, desiredpages); + /* XXX This looks as if it should be newbsize > b_bufsize */ + else if (size > bp->b_bcount) + vfs_vmio_extend(bp, desiredpages, size); bufspaceadjust(bp, newbsize); + } bp->b_bcount = size; /* requested buffer size. */ return 1; } @@ -3833,87 +3868,16 @@ bufdone_finish(struct buf *bp) buf_complete(bp); if (bp->b_flags & B_VMIO) { - vm_ooffset_t foff; - vm_page_t m; - vm_object_t obj; - struct vnode *vp; - int bogus, i, iosize; - - obj = bp->b_bufobj->bo_object; - KASSERT(obj->paging_in_progress >= bp->b_npages, - ("biodone_finish: paging in progress(%d) < b_npages(%d)", - obj->paging_in_progress, bp->b_npages)); - - vp = bp->b_vp; - KASSERT(vp->v_holdcnt > 0, - ("biodone_finish: vnode %p has zero hold count", vp)); - KASSERT(vp->v_object != NULL, - ("biodone_finish: vnode %p has no vm_object", vp)); - - foff = bp->b_offset; - KASSERT(bp->b_offset != NOOFFSET, - ("biodone_finish: bp %p has no buffer offset", bp)); - /* * Set B_CACHE if the op was a normal read and no error * occured. B_CACHE is set for writes in the b*write() * routines. */ - iosize = bp->b_bcount - bp->b_resid; if (bp->b_iocmd == BIO_READ && !(bp->b_flags & (B_INVAL|B_NOCACHE)) && - !(bp->b_ioflags & BIO_ERROR)) { + !(bp->b_ioflags & BIO_ERROR)) bp->b_flags |= B_CACHE; - } - bogus = 0; - VM_OBJECT_WLOCK(obj); - for (i = 0; i < bp->b_npages; i++) { - int bogusflag = 0; - int resid; - - resid = ((foff + PAGE_SIZE) & ~(off_t)PAGE_MASK) - foff; - if (resid > iosize) - resid = iosize; - - /* - * cleanup bogus pages, restoring the originals - */ - m = bp->b_pages[i]; - if (m == bogus_page) { - bogus = bogusflag = 1; - m = vm_page_lookup(obj, OFF_TO_IDX(foff)); - if (m == NULL) - panic("biodone: page disappeared!"); - bp->b_pages[i] = m; - } - KASSERT(OFF_TO_IDX(foff) == m->pindex, - ("biodone_finish: foff(%jd)/pindex(%ju) mismatch", - (intmax_t)foff, (uintmax_t)m->pindex)); - - /* - * In the write case, the valid and clean bits are - * already changed correctly ( see bdwrite() ), so we - * only need to do this here in the read case. - */ - if ((bp->b_iocmd == BIO_READ) && !bogusflag && resid > 0) { - KASSERT((m->dirty & vm_page_bits(foff & - PAGE_MASK, resid)) == 0, ("bufdone_finish:" - " page %p has unexpected dirty bits", m)); - vfs_page_set_valid(bp, foff, m); - } - - vm_page_sunbusy(m); - vm_object_pip_subtract(obj, 1); - foff = (foff + PAGE_SIZE) & ~(off_t)PAGE_MASK; - iosize -= resid; - } - vm_object_pip_wakeupn(obj, 0); - VM_OBJECT_WUNLOCK(obj); - if (bogus && buf_mapped(bp)) { - BUF_CHECK_MAPPED(bp); - pmap_qenter(trunc_page((vm_offset_t)bp->b_data), - bp->b_pages, bp->b_npages); - } + vfs_vmio_iodone(bp); } /* @@ -3921,9 +3885,9 @@ bufdone_finish(struct buf *bp) * will do a wakeup there if necessary - so no need to do a wakeup * here in the async case. The sync case always needs to do a wakeup. */ - if (bp->b_flags & B_ASYNC) { - if ((bp->b_flags & (B_NOCACHE | B_INVAL | B_RELBUF)) || (bp->b_ioflags & BIO_ERROR)) + if ((bp->b_flags & (B_NOCACHE | B_INVAL | B_RELBUF)) || + (bp->b_ioflags & BIO_ERROR)) brelse(bp); else bqrelse(bp); From owner-svn-src-head@freebsd.org Wed Sep 23 00:32:39 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4BFD0A06044; Wed, 23 Sep 2015 00:32:39 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3D2DB18EE; Wed, 23 Sep 2015 00:32:39 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8N0WdHO028062; Wed, 23 Sep 2015 00:32:39 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8N0Wdsc028061; Wed, 23 Sep 2015 00:32:39 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509230032.t8N0Wdsc028061@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 23 Sep 2015 00:32:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288138 - head/usr.bin/elfdump X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 00:32:39 -0000 Author: emaste Date: Wed Sep 23 00:32:38 2015 New Revision: 288138 URL: https://svnweb.freebsd.org/changeset/base/288138 Log: elfdump: report MIPS ELF section type SHT_MIPS_REGINFO Sponsored by: The FreeBSD Foundation Modified: head/usr.bin/elfdump/elfdump.c Modified: head/usr.bin/elfdump/elfdump.c ============================================================================== --- head/usr.bin/elfdump/elfdump.c Tue Sep 22 23:57:52 2015 (r288137) +++ head/usr.bin/elfdump/elfdump.c Wed Sep 23 00:32:38 2015 (r288138) @@ -379,6 +379,7 @@ sh_types(uint64_t machine, uint64_t sht) break; case EM_MIPS: switch (sht) { + case SHT_MIPS_REGINFO: return "SHT_MIPS_REGINFO"; case SHT_MIPS_OPTIONS: return "SHT_MIPS_OPTIONS"; case SHT_MIPS_ABIFLAGS: return "SHT_MIPS_ABIFLAGS"; } From owner-svn-src-head@freebsd.org Wed Sep 23 01:15:39 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 23767A0770A; Wed, 23 Sep 2015 01:15:39 +0000 (UTC) (envelope-from jmg@gold.funkthat.com) Received: from gold.funkthat.com (gate2.funkthat.com [208.87.223.18]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "gold.funkthat.com", Issuer "gold.funkthat.com" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 061771B4F; Wed, 23 Sep 2015 01:15:38 +0000 (UTC) (envelope-from jmg@gold.funkthat.com) Received: from gold.funkthat.com (localhost [127.0.0.1]) by gold.funkthat.com (8.14.5/8.14.5) with ESMTP id t8N1FWBU051402 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 22 Sep 2015 18:15:32 -0700 (PDT) (envelope-from jmg@gold.funkthat.com) Received: (from jmg@localhost) by gold.funkthat.com (8.14.5/8.14.5/Submit) id t8N1FWRO051401; Tue, 22 Sep 2015 18:15:32 -0700 (PDT) (envelope-from jmg) Date: Tue, 22 Sep 2015 18:15:32 -0700 From: John-Mark Gurney To: Steven Hartland Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r287886 - head/sys/sys Message-ID: <20150923011532.GE99677@funkthat.com> References: <201509170003.t8H03uSf070155@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201509170003.t8H03uSf070155@repo.freebsd.org> X-Operating-System: FreeBSD 9.1-PRERELEASE amd64 X-PGP-Fingerprint: 54BA 873B 6515 3F10 9E88 9322 9CB1 8F74 6D3F A396 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-TipJar: bitcoin:13Qmb6AeTgQecazTWph4XasEsP7nGRbAPE X-to-the-FBI-CIA-and-NSA: HI! HOW YA DOIN? can i haz chizburger? User-Agent: Mutt/1.5.21 (2010-09-15) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (gold.funkthat.com [127.0.0.1]); Tue, 22 Sep 2015 18:15:32 -0700 (PDT) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 01:15:39 -0000 Steven Hartland wrote this message on Thu, Sep 17, 2015 at 00:03 +0000: > Author: smh > Date: Thu Sep 17 00:03:55 2015 > New Revision: 287886 > URL: https://svnweb.freebsd.org/changeset/base/287886 > > Log: > Fix kqueue write events for files > 2GB > > Due to the use of int's for file offsets in the VOP_WRITE_(PRE|POST) > macros, kqueue write events for files greater 2GB where never fired. > > This caused tail -f on a file greater 2GB to never see updates. Could you possibly add a test for this? Thanks. -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-svn-src-head@freebsd.org Wed Sep 23 04:32:20 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5CA84A076DA; Wed, 23 Sep 2015 04:32:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 4944F1176; Wed, 23 Sep 2015 04:32:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 41D9D1849; Wed, 23 Sep 2015 04:32:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id E089C134BB; Wed, 23 Sep 2015 04:32:19 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id AcM0X7JRNbka; Wed, 23 Sep 2015 04:32:17 +0000 (UTC) Subject: Re: svn commit: r287185 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 83396134B5 To: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201508270152.t7R1qks4074549@repo.freebsd.org> From: Bryan Drewery Organization: FreeBSD Message-ID: <56022B4C.7070407@FreeBSD.org> Date: Tue, 22 Sep 2015 21:32:12 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <201508270152.t7R1qks4074549@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 04:32:20 -0000 On 8/26/15 6:52 PM, Warner Losh wrote: > Author: imp > Date: Thu Aug 27 01:52:45 2015 > New Revision: 287185 > URL: https://svnweb.freebsd.org/changeset/base/287185 > > Log: > For each FOO in FILESLISTS, append the value of FOO.yes, sort, and > remove duplicates. > > Modified: > head/share/mk/bsd.files.mk > > Modified: head/share/mk/bsd.files.mk > ============================================================================== > --- head/share/mk/bsd.files.mk Thu Aug 27 01:02:01 2015 (r287184) > +++ head/share/mk/bsd.files.mk Thu Aug 27 01:52:45 2015 (r287185) > @@ -10,6 +10,9 @@ ____: > FILESGROUPS?= FILES > > .for group in ${FILESGROUPS} > +# Add in foo.yes and remove duplicates from all the groups > +${${group}}:= ${${group}} ${${group}.yes} > +${${group}}:= ${${group}:O:u} > buildfiles: ${${group}} > .endfor > > What is this for? -- Regards, Bryan Drewery From owner-svn-src-head@freebsd.org Wed Sep 23 05:07:38 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 18CE3A066CB; Wed, 23 Sep 2015 05:07:38 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 011671EC9; Wed, 23 Sep 2015 05:07:38 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id EE1C11C88; Wed, 23 Sep 2015 05:07:37 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id A7FD1134E7; Wed, 23 Sep 2015 05:07:37 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id fPlPUoc0eNOd; Wed, 23 Sep 2015 05:07:35 +0000 (UTC) Subject: Re: svn commit: r286995 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com A1CA2134E1 To: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201508211515.t7LFFM0U028322@repo.freebsd.org> From: Bryan Drewery Organization: FreeBSD Message-ID: <56023395.2080904@FreeBSD.org> Date: Tue, 22 Sep 2015 22:07:33 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <201508211515.t7LFFM0U028322@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 05:07:38 -0000 On 8/21/15 8:15 AM, Warner Losh wrote: > Author: imp > Date: Fri Aug 21 15:15:22 2015 > New Revision: 286995 > URL: https://svnweb.freebsd.org/changeset/base/286995 > > Log: > Document bsd.progs.mk, including its status as being strongly > discouraged and that it will be going away as soon as is practicable. > > Modified: > head/share/mk/bsd.README I find this functionality irreplaceable for simplicity. The alternative is more Makefiles for simple extra progs. Granted it has meta mode dirdeps issues but I think that is acceptable as there are other ways to address that. Where is this deprecation coming from? Is it just due to bapt's in-progress (but not working) patch at https://reviews.freebsd.org/D3444 to remove bsd.progs.mk in place of PROGS in bsd.prog.mk? I would like to document PROGS properly. I had no idea how it worked until reading over it tonight. If the plan wasn't to remove PROGS itself I will do so. -- Regards, Bryan Drewery From owner-svn-src-head@freebsd.org Wed Sep 23 05:39:29 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E04C2A0790E; Wed, 23 Sep 2015 05:39:29 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C63C11F37; Wed, 23 Sep 2015 05:39:29 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8N5dTN4053712; Wed, 23 Sep 2015 05:39:29 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8N5dLr5053678; Wed, 23 Sep 2015 05:39:21 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201509230539.t8N5dLr5053678@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Wed, 23 Sep 2015 05:39:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288143 - in head: contrib/file contrib/file/doc contrib/file/magic/Magdir contrib/file/src lib/libmagic X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 05:39:30 -0000 Author: delphij Date: Wed Sep 23 05:39:20 2015 New Revision: 288143 URL: https://svnweb.freebsd.org/changeset/base/288143 Log: MFV r288140: update file to 5.25. MFC after: 1 month Modified: head/contrib/file/ChangeLog head/contrib/file/configure head/contrib/file/configure.ac head/contrib/file/doc/file.man head/contrib/file/doc/libmagic.man head/contrib/file/doc/magic.man head/contrib/file/magic/Magdir/adventure head/contrib/file/magic/Magdir/apple head/contrib/file/magic/Magdir/archive head/contrib/file/magic/Magdir/c-lang head/contrib/file/magic/Magdir/c64 head/contrib/file/magic/Magdir/compress head/contrib/file/magic/Magdir/database head/contrib/file/magic/Magdir/filesystems head/contrib/file/magic/Magdir/frame head/contrib/file/magic/Magdir/iff head/contrib/file/magic/Magdir/images head/contrib/file/magic/Magdir/karma head/contrib/file/magic/Magdir/linux head/contrib/file/magic/Magdir/make head/contrib/file/magic/Magdir/map head/contrib/file/magic/Magdir/msdos head/contrib/file/magic/Magdir/netscape head/contrib/file/magic/Magdir/python head/contrib/file/magic/Magdir/scientific head/contrib/file/magic/Magdir/sgi head/contrib/file/magic/Magdir/sgml head/contrib/file/magic/Magdir/windows head/contrib/file/src/apprentice.c head/contrib/file/src/file.c head/contrib/file/src/file.h head/contrib/file/src/file_opts.h head/contrib/file/src/funcs.c head/contrib/file/src/gmtime_r.c head/contrib/file/src/localtime_r.c head/contrib/file/src/magic.c head/contrib/file/src/magic.h head/contrib/file/src/magic.h.in head/contrib/file/src/print.c head/contrib/file/src/readelf.c head/contrib/file/src/softmagic.c head/lib/libmagic/config.h Directory Properties: head/contrib/file/ (props changed) Modified: head/contrib/file/ChangeLog ============================================================================== --- head/contrib/file/ChangeLog Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/ChangeLog Wed Sep 23 05:39:20 2015 (r288143) @@ -1,3 +1,19 @@ +2015-09-16 9:50 Christos Zoulas + + * release 5.25 + +2015-09-11 13:25 Christos Zoulas + + * add a limit to the length of regex searches + +2015-09-08 9:50 Christos Zoulas + + * fix problems with --parameter (Christoph Biedl) + +2015-07-11 10:35 Christos Zoulas + + * Windows fixes PR/466 (Jason Hood) + 2015-07-09 10:35 Christos Zoulas * release 5.24 Modified: head/contrib/file/configure ============================================================================== --- head/contrib/file/configure Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/configure Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for file 5.24. +# Generated by GNU Autoconf 2.69 for file 5.25. # # Report bugs to . # @@ -590,8 +590,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='file' PACKAGE_TARNAME='file' -PACKAGE_VERSION='5.24' -PACKAGE_STRING='file 5.24' +PACKAGE_VERSION='5.25' +PACKAGE_STRING='file 5.25' PACKAGE_BUGREPORT='christos@astron.com' PACKAGE_URL='' @@ -1327,7 +1327,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures file 5.24 to adapt to many kinds of systems. +\`configure' configures file 5.25 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1397,7 +1397,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of file 5.24:";; + short | recursive ) echo "Configuration of file 5.25:";; esac cat <<\_ACEOF @@ -1507,7 +1507,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -file configure 5.24 +file configure 5.25 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2163,7 +2163,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by file $as_me 5.24, which was +It was created by file $as_me 5.25, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3029,7 +3029,7 @@ fi # Define the identity of the package. PACKAGE='file' - VERSION='5.24' + VERSION='5.25' cat >>confdefs.h <<_ACEOF @@ -15036,7 +15036,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by file $as_me 5.24, which was +This file was extended by file $as_me 5.25, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -15102,7 +15102,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -file config.status 5.24 +file config.status 5.25 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Modified: head/contrib/file/configure.ac ============================================================================== --- head/contrib/file/configure.ac Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/configure.ac Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([file],[5.24],[christos@astron.com]) +AC_INIT([file],[5.25],[christos@astron.com]) AM_INIT_AUTOMAKE([subdir-objects foreign]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) Modified: head/contrib/file/doc/file.man ============================================================================== --- head/contrib/file/doc/file.man Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/doc/file.man Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ -.\" $File: file.man,v 1.117 2015/06/03 19:51:27 christos Exp $ -.Dd June 3, 2015 +.\" $File: file.man,v 1.118 2015/09/11 17:24:09 christos Exp $ +.Dd September 11, 2015 .Dt FILE __CSECTION__ .Os .Sh NAME @@ -316,6 +316,7 @@ Set various parameter limits. .It Li elf_notes Ta 256 Ta max ELF notes processed .It Li elf_phnum Ta 128 Ta max ELF program sections processed .It Li elf_shnum Ta 32768 Ta max ELF sections processed +.It Li regex Ta 8192 Ta length limit for regex searches .El .It Fl r , Fl Fl raw Don't translate unprintable characters to \eooo. Modified: head/contrib/file/doc/libmagic.man ============================================================================== --- head/contrib/file/doc/libmagic.man Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/doc/libmagic.man Wed Sep 23 05:39:20 2015 (r288143) @@ -1,4 +1,4 @@ -.\" $File: libmagic.man,v 1.37 2015/06/03 18:21:24 christos Exp $ +.\" $File: libmagic.man,v 1.38 2015/09/11 17:24:09 christos Exp $ .\" .\" Copyright (c) Christos Zoulas 2003. .\" All Rights Reserved. @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 3, 2015 +.Dd September 11, 2015 .Dt LIBMAGIC 3 .Os .Sh NAME @@ -291,6 +291,7 @@ library. .It Li MAGIC_PARAM_ELF_NOTES_MAX Ta size_t Ta 256 .It Li MAGIC_PARAM_ELF_PHNUM_MAX Ta size_t Ta 128 .It Li MAGIC_PARAM_ELF_SHNUM_MAX Ta size_t Ta 32768 +.It Li MAGIC_PARAM_REGEX_MAX Ta size_t Ta 8192 .El .Pp The Modified: head/contrib/file/doc/magic.man ============================================================================== --- head/contrib/file/doc/magic.man Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/doc/magic.man Wed Sep 23 05:39:20 2015 (r288143) @@ -1,4 +1,4 @@ -.\" $File: magic.man,v 1.85 2015/01/01 17:07:34 christos Exp $ +.\" $File: magic.man,v 1.86 2015/09/08 13:48:44 christos Exp $ .Dd January 1, 2015 .Dt MAGIC __FSECTION__ .Os @@ -200,7 +200,7 @@ interpreted as a UNIX-style date, but in than UTC. .It Dv indirect Starting at the given offset, consult the magic database again. -The offset of th +The offset of the .Dv indirect magic is by default absolute in the file, but one can specify .Dv /r Modified: head/contrib/file/magic/Magdir/adventure ============================================================================== --- head/contrib/file/magic/Magdir/adventure Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/adventure Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: adventure,v 1.14 2012/06/21 01:32:26 christos Exp $ +# $File: adventure,v 1.15 2015/09/07 10:03:21 christos Exp $ # adventure: file(1) magic for Adventure game files # # from Allen Garvin @@ -17,6 +17,7 @@ # Infocom (see z-machine) #------------------------------------------------------------------------------ # Z-machine: file(1) magic for Z-machine binaries. +# Sanity checks by David Griffith # Updated by Adam Buchbinder # #http://www.gnelson.demon.co.uk/zspec/sect11.html @@ -41,10 +42,12 @@ >>>>>>>2 ubeshort < 10 Release %d / >>>>>>>>18 string >\0 Serial %.6s) !:strength + 40 +!:mime application/x-zmachine #------------------------------------------------------------------------------ # Glulx: file(1) magic for Glulx binaries. # +# David Griffith # I haven't checked for false matches yet. # 0 string Glul Glulx game data @@ -52,7 +55,7 @@ >>6 byte x \b.%d >>8 byte x \b.%d) >36 string Info Compiled by Inform - +!:mime application/x-glulx # For Quetzal and blorb magic see iff @@ -66,11 +69,13 @@ >9 belong !0x0A0D1A00 game data, CORRUPTED >9 belong 0x0A0D1A00 >>13 string >\0 %s game data +!:mime application/x-tads # Resource files start with "TADS2 rsc\n\r\032\0" then the compiler version. 0 string TADS2\ rsc TADS >9 belong !0x0A0D1A00 resource data, CORRUPTED >9 belong 0x0A0D1A00 >>13 string >\0 %s resource data +!:mime application/x-tads # Some saved game files start with "TADS2 save/g\n\r\032\0", a little-endian # 2-byte length N, the N-char name of the game file *without* a NUL (darn!), # "TADS2 save\n\r\032\0" and the interpreter version. @@ -78,12 +83,14 @@ >12 belong !0x0A0D1A00 saved game data, CORRUPTED >12 belong 0x0A0D1A00 >>(16.s+32) string >\0 %s saved game data +!:mime application/x-tads # Other saved game files start with "TADS2 save\n\r\032\0" and the interpreter # version. 0 string TADS2\ save TADS >10 belong !0x0A0D1A00 saved game data, CORRUPTED >10 belong 0x0A0D1A00 >>14 string >\0 %s saved game data +!:mime application/x-tads # TADS (Text Adventure Development System) version 3 # Game files start with "T3-image\015\012\032" @@ -97,14 +104,18 @@ >>11 byte x \b%c >>12 byte x \b%c >>13 byte x \b%c) +!:mime application/x-t3vm-image +# edited by David Griffith # Danny Milosavljevic -# this are adrift (adventure game standard) game files, extension .taf -# depending on version magic continues with 0x93453E6139FA (V 4.0) -# 0x9445376139FA (V 3.90) -# 0x9445366139FA (V 3.80) -# this is from source (http://www.adrift.org.uk/) and I have some taf -# files, and checked them. -#0 belong 0x3C423FC9 -#>4 belong 0x6A87C2CF Adrift game file -#!:mime application/x-adrift +# These are ADRIFT (adventure game standard) game files, extension .taf +# Checked from source at (http://www.adrift.co/) and various taf files +# found at the Interactive Fiction Archive (http://ifarchive.org/) +0 belong 0x3C423FC9 +>4 belong 0x6A87C2CF Adrift game file version +>>8 belong 0x94453661 3.80 +>>8 belong 0x94453761 3.90 +>>8 belong 0x93453E61 4.0 +>>8 belong 0x92453E61 5.0 +>>8 default x unknown +!:mime application/x-adrift Modified: head/contrib/file/magic/Magdir/apple ============================================================================== --- head/contrib/file/magic/Magdir/apple Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/apple Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: apple,v 1.30 2015/04/13 13:09:06 christos Exp $ +# $File: apple,v 1.31 2015/08/29 07:10:35 christos Exp $ # apple: file(1) magic for Apple file formats # 0 search/1/t FiLeStArTfIlEsTaRt binscii (apple ][) text @@ -265,14 +265,14 @@ >>20 beshort x \b, descriptors %d # Assume 8 partitions each at a multiple of the sector size. # We could glean this from the partition descriptors, but they are empty!?!? ->>(2.S*1) indirect \b, contains[@0x%x]: ->>(2.S*2) indirect \b, contains[@0x%x]: ->>(2.S*3) indirect \b, contains[@0x%x]: ->>(2.S*4) indirect \b, contains[@0x%x]: ->>(2.S*5) indirect \b, contains[@0x%x]: ->>(2.S*6) indirect \b, contains[@0x%x]: ->>(2.S*7) indirect \b, contains[@0x%x]: ->>(2.S*8) indirect \b, contains[@0x%x]: +>>(2.S*1) indirect x \b, contains[@0x%x]: +>>(2.S*2) indirect x \b, contains[@0x%x]: +>>(2.S*3) indirect x \b, contains[@0x%x]: +>>(2.S*4) indirect x \b, contains[@0x%x]: +>>(2.S*5) indirect x \b, contains[@0x%x]: +>>(2.S*6) indirect x \b, contains[@0x%x]: +>>(2.S*7) indirect x \b, contains[@0x%x]: +>>(2.S*8) indirect x \b, contains[@0x%x]: # Yes, the 3rd and 4th bytes are reserved, but we use them to make the # magic stronger. Modified: head/contrib/file/magic/Magdir/archive ============================================================================== --- head/contrib/file/magic/Magdir/archive Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/archive Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# $File: archive,v 1.90 2015/04/24 15:44:12 christos Exp $ +# $File: archive,v 1.91 2015/09/16 13:49:33 christos Exp $ # archive: file(1) magic for archive formats (see also "msdos" for self- # extracting compressed archives) # @@ -434,16 +434,34 @@ # AIN 0 string \x33\x18 AIN archive data 0 string \x33\x17 AIN archive data -# XPA32 -0 string xpa\0\1 XPA32 archive data +# XPA32 test moved and merged with XPA by Joerg Jenderek at Sep 2015 # SZip (TODO: doesn't catch all versions) 0 string SZ\x0a\4 SZip archive data # XPack DiskImage -0 string jm XPack DiskImage archive data +# *.XDI updated by Joerg Jenderek Sep 2015 +# ftp://ftp.sac.sk/pub/sac/pack/0index.txt +# GRR: this test is still too general as it catches also text files starting with jm +0 string jm +# only found examples with this additional characteristic 2 bytes +>2 string \x2\x4 Xpack DiskImage archive data +#!:ext xdi # XPack Data -0 string xpa XPack archive data +# *.xpa updated by Joerg Jenderek Sep 2015 +# ftp://ftp.elf.stuba.sk/pub/pc/pack/ +0 string xpa XPA +!:ext xpa +# XPA32 +# ftp://ftp.elf.stuba.sk/pub/pc/pack/xpa32.zip +# created by XPA32.EXE version 1.0.2 for Windows +>0 string xpa\0\1 \b32 archive data +# created by XPACK.COM version 1.67m or 1.67r with short 0x1800 +>3 ubeshort !0x0001 \bck archive data # XPack Single Data -0 string \xc3\x8d\ jm XPack single archive data +# changed by Joerg Jenderek Sep 2015 back to like in version 5.12 +# letter 'I'+ acute accent is equivalent to \xcd +0 string \xcd\ jm Xpack single archive data +#!:mime application/x-xpa-compressed +!:ext xpa # TODO: missing due to unknown magic/magic at end of file: #DWC Modified: head/contrib/file/magic/Magdir/c-lang ============================================================================== --- head/contrib/file/magic/Magdir/c-lang Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/c-lang Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# $File: c-lang,v 1.19 2014/06/03 19:17:27 christos Exp $ +# $File: c-lang,v 1.20 2015/07/27 14:33:10 christos Exp $ # c-lang: file(1) magic for C and related languages programs # @@ -29,7 +29,7 @@ # C++ # The strength of these rules is increased so they beat the C rules above -0 regex \^template[\ \t\n]+ C++ source text +0 regex \^template[\ \t]+<.*>[\ \t\n]+ C++ source text !:strength + 5 !:mime text/x-c++ 0 regex \^virtual[\ \t\n]+ C++ source text Modified: head/contrib/file/magic/Magdir/c64 ============================================================================== --- head/contrib/file/magic/Magdir/c64 Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/c64 Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: c64,v 1.5 2009/09/19 16:28:08 christos Exp $ +# $File: c64,v 1.6 2015/08/24 05:17:42 christos Exp $ # c64: file(1) magic for various commodore 64 related files # # From: Dirk Jagdmann @@ -41,3 +41,9 @@ >32 leshort x Version:0x%x >36 leshort !0 Entries:%i >40 string x Name:%.24s + +# Raw tape file format (.tap files) +# Esa Hyyti +0 string C64-TAPE-RAW C64 Raw Tape File (.tap), +>0x0c byte x Version:%u, +>0x10 lelong x Length:%u cycles Modified: head/contrib/file/magic/Magdir/compress ============================================================================== --- head/contrib/file/magic/Magdir/compress Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/compress Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# $File: compress,v 1.63 2015/03/11 19:27:35 christos Exp $ +# $File: compress,v 1.64 2015/07/27 15:41:09 christos Exp $ # compress: file(1) magic for pure-compression formats (no archives) # # compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, etc. @@ -258,7 +258,8 @@ !:mime application/x-qpress # Zlib https://www.ietf.org/rfc/rfc6713.txt -0 beshort%31 =0 ->0 byte&0xf =8 ->>0 byte&0x80 =0 zlib compressed data +0 string/b x +>0 beshort%31 =0 +>>0 byte&0xf =8 +>>>0 byte&0x80 =0 zlib compressed data !:mime application/zlib Modified: head/contrib/file/magic/Magdir/database ============================================================================== --- head/contrib/file/magic/Magdir/database Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/database Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: database,v 1.44 2015/07/02 18:25:57 christos Exp $ +# $File: database,v 1.45 2015/09/09 16:25:29 christos Exp $ # database: file(1) magic for various databases # # extracted from header/code files by Graeme Wilford (eep2gw@ee.surrey.ac.uk) @@ -541,3 +541,7 @@ # IDA (Interactive Disassembler) database 0 string IDA1 IDA (Interactive Disassembler) database + +# Hopper (reverse engineering tool) http://www.hopperapp.com/ +0 string hopperdb Hopper database + Modified: head/contrib/file/magic/Magdir/filesystems ============================================================================== --- head/contrib/file/magic/Magdir/filesystems Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/filesystems Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# $File: filesystems,v 1.109 2015/02/22 01:22:54 christos Exp $ +# $File: filesystems,v 1.111 2015/09/09 16:26:54 christos Exp $ # filesystems: file(1) magic for different filesystems # 0 name partid @@ -1721,7 +1721,7 @@ 0x410 leshort 0x137f !:strength / 2 >0x402 beshort < 100 ->0x402 beshort > -1 Minix filesystem, V1, %d zones +>0x402 beshort > -1 Minix filesystem, V1, 14 char names, %d zones >0x1e string minix \b, bootable 0x410 beshort 0x137f !:strength / 2 @@ -1740,27 +1740,26 @@ >0x1e string minix \b, bootable 0x410 leshort 0x2468 >0x402 beshort < 100 ->>0x402 beshort > -1 Minix filesystem, V2, %d zones +>>0x402 beshort > -1 Minix filesystem, V2, 14 char names >0x1e string minix \b, bootable 0x410 beshort 0x2468 >0x402 beshort < 100 ->0x402 beshort > -1 Minix filesystem, V2 (big endian), %d zones +>0x402 beshort > -1 Minix filesystem, V2 (big endian) >0x1e string minix \b, bootable - 0x410 leshort 0x2478 >0x402 beshort < 100 ->0x402 beshort > -1 Minix filesystem, V2, 30 char names, %d zones +>0x402 beshort > -1 Minix filesystem, V2, 30 char names >0x1e string minix \b, bootable 0x410 leshort 0x2478 >0x402 beshort < 100 ->0x402 beshort > -1 Minix filesystem, V2, 30 char names, %d zones +>0x402 beshort > -1 Minix filesystem, V2, 30 char names >0x1e string minix \b, bootable 0x410 beshort 0x2478 ->0x402 beshort !0 Minix filesystem, V2, 30 char names (big endian), %d zones ->0x1e string minix \b, bootable -0x410 leshort 0x4d5a ->0x402 beshort !0 Minix filesystem, V3, %d zones +>0x402 beshort !0 Minix filesystem, V2, 30 char names (big endian) >0x1e string minix \b, bootable +0x418 leshort 0x4d5a +>0x402 beshort <100 +>>0x402 beshort > -1 Minix filesystem, V3, 60 char names # SGI disk labels - Nathan Scott 0 belong 0x0BE5A941 SGI disk label (volume header) @@ -2209,13 +2208,21 @@ >>0x10024 belong x (blocksize %d, >>0x10060 string >\0 lockproto %s) -# BTRFS -0x10040 string _BHRfS_M BTRFS Filesystem ->0x1012b string >\0 (label "%s", ->0x10090 lelong x sectorsize %d, ->0x10094 lelong x nodesize %d, ->0x10098 lelong x leafsize %d) - +# Russell Coker +0x10040 string _BHRfS_M BTRFS Filesystem +>0x1012b string >\0 label "%s", +>0x10090 lelong x sectorsize %d, +>0x10094 lelong x nodesize %d, +>0x10098 lelong x leafsize %d, +>0x10020 belong x UUID=%8x- +>0x10024 beshort x \b%4x- +>0x10026 beshort x \b%4x- +>0x10028 beshort x \b%4x- +>0x1002a beshort x \b%4x +>0x1002c belong x \b%8x, +>0x10078 lequad x %lld/ +>0x10070 lequad x \b%lld bytes used, +>0x10088 lequad x %lld devices # dvdisaster's .ecc # From: "Nelson A. de Oliveira" Modified: head/contrib/file/magic/Magdir/frame ============================================================================== --- head/contrib/file/magic/Magdir/frame Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/frame Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: frame,v 1.12 2009/09/19 16:28:09 christos Exp $ +# $File: frame,v 1.13 2015/08/29 07:10:35 christos Exp $ # frame: file(1) magic for FrameMaker files # # This stuff came on a FrameMaker demo tape, most of which is @@ -41,10 +41,10 @@ >10 string 1.0 (1.0 >13 byte x %c) # XXX - this book entry should be verified, if you find one, uncomment this -#0 string \6 string 3.0 (3.0) #>6 string 2.0 (2.0) #>6 string 1.0 (1.0) -0 string \ # I don't see why these might collide with anything else. # # Interactive Fiction related formats @@ -69,3 +70,4 @@ >8 string IFRS \b, Blorb Interactive Fiction >>24 string Exec with executable chunk >8 string IFZS \b, Z-machine or Glulx saved game file (Quetzal) +!:mime application/x-blorb Modified: head/contrib/file/magic/Magdir/images ============================================================================== --- head/contrib/file/magic/Magdir/images Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/images Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: images,v 1.106 2015/02/22 01:26:05 christos Exp $ +# $File: images,v 1.107 2015/07/11 14:40:10 christos Exp $ # images: file(1) magic for image formats (see also "iff", and "c-lang" for # XPM bitmaps) # @@ -37,7 +37,7 @@ # The next byte following the magic is always whitespace. # strength is changed to try these patterns before "x86 boot sector" 0 name netpbm ->3 regex/s =[0-9]{1,50}\ [0-9]{1,50} Netpbm PPM image data +>3 regex/s =[0-9]{1,50}\ [0-9]{1,50} Netpbm image data >>&0 regex =[0-9]{1,50} \b, size = %s x >>>&0 regex =[0-9]{1,50} \b %s @@ -59,7 +59,6 @@ !:strength + 45 !:mime image/x-portable-pixmap - 0 string P4 >0 use netpbm >>0 string x \b, rawbits, bitmap Modified: head/contrib/file/magic/Magdir/karma ============================================================================== --- head/contrib/file/magic/Magdir/karma Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/karma Wed Sep 23 05:39:20 2015 (r288143) @@ -1,9 +1,9 @@ #------------------------------------------------------------------------------ -# $File: karma,v 1.7 2014/04/30 21:41:02 christos Exp $ +# $File: karma,v 1.8 2015/08/29 07:10:35 christos Exp $ # karma: file(1) magic for Karma data files # # From -0 string KarmaRHD Version Karma Data Structure Version +0 string KarmaRHD\040Version Karma Data Structure Version >16 belong x %u Modified: head/contrib/file/magic/Magdir/linux ============================================================================== --- head/contrib/file/magic/Magdir/linux Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/linux Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: linux,v 1.62 2015/05/03 13:06:36 christos Exp $ +# $File: linux,v 1.63 2015/08/24 05:16:11 christos Exp $ # linux: file(1) magic for Linux files # # Values for Linux/i386 binaries, from Daniel Quinlan @@ -417,6 +417,25 @@ 0 lelong 0xde020109 locale archive >24 lelong x %d strings +# Linux Software RAID (mdadm) +# Russell Coker +0 name linuxraid +>16 belong x UUID=%8x: +>20 belong x \b%8x: +>24 belong x \b%8x: +>28 belong x \b%8x +>32 string x name=%s +>72 lelong x level=%d +>92 lelong x disks=%d + +4096 lelong 0xa92b4efc Linux Software RAID +>4100 lelong x version 1.2 (%d) +>4096 use linuxraid + +0 lelong 0xa92b4efc Linux Software RAID +>4 lelong x version 1.1 (%d) +>0 use linuxraid + # Summary: Database file for mlocate # Description: A database file as used by mlocate, a fast implementation # of locate/updatedb. It uses merging to reuse the existing Modified: head/contrib/file/magic/Magdir/make ============================================================================== --- head/contrib/file/magic/Magdir/make Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/make Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# $File: make,v 1.1 2011/12/08 12:12:46 rrt Exp $ +# $File: make,v 1.2 2015/08/25 07:34:06 christos Exp $ # make: file(1) magic for makefiles # 0 regex/100l \^CFLAGS makefile script text Modified: head/contrib/file/magic/Magdir/map ============================================================================== --- head/contrib/file/magic/Magdir/map Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/map Wed Sep 23 05:39:20 2015 (r288143) @@ -1,7 +1,7 @@ #------------------------------------------------------------------------------ -# $File: map,v 1.3 2015/07/09 15:16:41 christos Exp $ +# $File: map,v 1.4 2015/08/10 05:18:27 christos Exp $ # map: file(1) magic for Map data # @@ -25,3 +25,17 @@ >>53 byte 4 \b (Activity) >>53 byte 8 \b (Elevations) >>53 byte 10 \b (Totals) + +# TOM TOM GPS watches ttbin files: +# http://github.com/ryanbinns/ttwatch/tree/master/ttbin +# From: Daniel Lenski +0 byte 0x20 +>1 leshort 0x0007 +>>0x76 byte 0x20 +>>>0x77 leshort 0x0075 TomTom activity file, v7 +>>>>8 leldate x (%s, +>>>>3 byte x device firmware %d. +>>>>4 byte x \b%d. +>>>>5 byte x \b%d, +>>>>6 leshort x product ID %04d) + Modified: head/contrib/file/magic/Magdir/msdos ============================================================================== --- head/contrib/file/magic/Magdir/msdos Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/msdos Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: msdos,v 1.100 2014/06/03 19:17:27 christos Exp $ +# $File: msdos,v 1.101 2015/08/24 05:08:48 christos Exp $ # msdos: file(1) magic for MS-DOS files # @@ -772,7 +772,7 @@ 0 ulequad 0x3a000000024e4c MS Advisor help file # HtmlHelp files (.chm) -0 string/b ITSF\003\000\000\000\x60\000\000\000\001\000\000\000 MS Windows HtmlHelp Data +0 string/b ITSF\003\000\000\000\x60\000\000\000 MS Windows HtmlHelp Data # GFA-BASIC (Wolfram Kleff) 2 string/b GFA-BASIC3 GFA-BASIC 3 data Modified: head/contrib/file/magic/Magdir/netscape ============================================================================== --- head/contrib/file/magic/Magdir/netscape Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/netscape Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: netscape,v 1.6 2009/09/19 16:28:11 christos Exp $ +# $File: netscape,v 1.7 2015/08/24 05:20:52 christos Exp $ # netscape: file(1) magic for Netscape files # "H. Nanosecond" # version 3 and 4 I think @@ -22,4 +22,5 @@ # #This is files ending in .art, FIXME add more rules -0 string JG\004\016\0\0\0\0 ART +0 string JG\004\016\0\0\0\0 AOL ART image +0 string JG\003\016\0\0\0\0 AOL ART image Modified: head/contrib/file/magic/Magdir/python ============================================================================== --- head/contrib/file/magic/Magdir/python Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/python Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: python,v 1.26 2014/08/04 05:58:40 christos Exp $ +# $File: python,v 1.27 2015/09/08 13:59:44 christos Exp $ # python: file(1) magic for python # # Outlook puts """ too for urgent messages @@ -26,12 +26,16 @@ 0 belong 0xee0c0d0a python 3.4 byte-compiled 0 search/1/w #!\ /usr/bin/python Python script text executable +!:strength + 10 !:mime text/x-python 0 search/1/w #!\ /usr/local/bin/python Python script text executable +!:strength + 10 !:mime text/x-python 0 search/1 #!/usr/bin/env\ python Python script text executable +!:strength + 10 !:mime text/x-python -0 search/1 #!\ /usr/bin/env\ python Python script text executable +0 search/10 #!\ /usr/bin/env\ python Python script text executable +!:strength + 10 !:mime text/x-python Modified: head/contrib/file/magic/Magdir/scientific ============================================================================== --- head/contrib/file/magic/Magdir/scientific Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/scientific Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: scientific,v 1.9 2014/06/03 19:01:34 christos Exp $ +# $File: scientific,v 1.10 2015/08/24 05:18:55 christos Exp $ # scientific: file(1) magic for scientific formats # # From: Joe Krahn @@ -104,3 +104,8 @@ >>5 byte x version %d.0 >4 byte >0x00 version %d >>5 byte x \b.%d + +# Type: LXT (interLaced eXtensible Trace) +# chrysn +0 beshort 0x0138 interLaced eXtensible Trace (LXT) file +>2 beshort >0 (Version %u) Modified: head/contrib/file/magic/Magdir/sgi ============================================================================== --- head/contrib/file/magic/Magdir/sgi Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/sgi Wed Sep 23 05:39:20 2015 (r288143) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: sgi,v 1.21 2014/04/30 21:41:02 christos Exp $ +# $File: sgi,v 1.22 2015/08/29 07:10:35 christos Exp $ # sgi: file(1) magic for Silicon Graphics operating systems and applications # # Executable images are handled either in aout (for old-style a.out @@ -55,8 +55,8 @@ 0 string WNGZWZSS Wingz spreadsheet 0 string WNGZWZHP Wingz help file # -0 string #Inventor V IRIS Inventor 1.0 file -0 string #Inventor V2 Open Inventor 2.0 file +0 string #Inventor\040V IRIS Inventor 1.0 file +0 string #Inventor\040V2 Open Inventor 2.0 file # GLF is OpenGL stream encoding 0 string glfHeadMagic(); GLF_TEXT 4 belong 0x7d000000 GLF_BINARY_LSB_FIRST Modified: head/contrib/file/magic/Magdir/sgml ============================================================================== --- head/contrib/file/magic/Magdir/sgml Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/magic/Magdir/sgml Wed Sep 23 05:39:20 2015 (r288143) @@ -1,5 +1,4 @@ -#------------------------------------------------------------------------------ -# $File: sgml,v 1.31 2015/03/11 19:38:04 christos Exp $ +#------------------------------------------------------------------------------ # $File: sgml,v 1.32 2015/07/11 15:08:53 christos Exp $ # Type: SVG Vectorial Graphics # From: Noel Torres 0 string \15 string >\0 ->>19 search/4096/cWbt \19 search/4096/cWbt \>15 string >\0 (version %.3s) !:mime text/html 0 string/t \15 string >\0 ->>19 search/4096/cWbt \19 search/4096/cWbt \>15 string >\0 (version %.3s) !:mime text/html 0 string/t \15 string >\0 ->>19 search/4096/cWbt \19 search/4096/cWbt \>15 string >\0 (version %.3s) !:mime text/html #------------------------------------------------------------------------------ @@ -106,9 +105,6 @@ >15 string/t >\0 %.3s document text >>23 search/1 \>24 search/1 \20 lelong&16 16 \b, Has Working directory >20 lelong&32 32 \b, Has command line arguments >20 lelong&64 64 \b, Icon ->>56 lelong \b number=%d +>>56 lelong x \b number=%d >24 lelong&1 1 \b, Read-Only >24 lelong&2 2 \b, Hidden >24 lelong&4 4 \b, System @@ -239,6 +239,7 @@ # http://read.pudn.com/downloads3/sourcecode/windows/248345/win2k/private/windows/setup/setupapi/inf.h__.htm # GRR: line below too general as it catches also PDP-11 UNIX/RT ldp 0 leshort&0xFeFe 0x0000 +!:strength -5 # test for unused null bits in PNF_FLAGs >4 ulelong&0xFCffFe00 0x00000000 # only found 58h for Offset of WinDirPath immediately after _PNF_HEADER structure Modified: head/contrib/file/src/apprentice.c ============================================================================== --- head/contrib/file/src/apprentice.c Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/src/apprentice.c Wed Sep 23 05:39:20 2015 (r288143) @@ -32,7 +32,7 @@ #include "file.h" #ifndef lint -FILE_RCSID("@(#)$File: apprentice.c,v 1.233 2015/06/10 00:57:41 christos Exp $") +FILE_RCSID("@(#)$File: apprentice.c,v 1.238 2015/09/12 18:10:42 christos Exp $") #endif /* lint */ #include "magic.h" @@ -531,6 +531,7 @@ file_ms_alloc(int flags) ms->elf_shnum_max = FILE_ELF_SHNUM_MAX; ms->elf_phnum_max = FILE_ELF_PHNUM_MAX; ms->elf_notes_max = FILE_ELF_NOTES_MAX; + ms->regex_max = FILE_REGEX_MAX; return ms; free: free(ms); @@ -540,6 +541,7 @@ free: private void apprentice_unmap(struct magic_map *map) { + size_t i; if (map == NULL) return; @@ -552,6 +554,8 @@ apprentice_unmap(struct magic_map *map) #endif case MAP_TYPE_MALLOC: free(map->p); + for (i = 0; i < MAGIC_SETS; i++) + free(map->magic[i]); break; case MAP_TYPE_USER: break; @@ -1288,6 +1292,7 @@ apprentice_load(struct magic_set *ms, co file_oomem(ms, sizeof(*map)); return NULL; } + map->type = MAP_TYPE_MALLOC; /* print silly verbose header for USG compat. */ if (action == FILE_CHECK) @@ -1348,8 +1353,9 @@ apprentice_load(struct magic_set *ms, co } i = set_text_binary(ms, mset[j].me, mset[j].count, i); } - qsort(mset[j].me, mset[j].count, sizeof(*mset[j].me), - apprentice_sort); + if (mset[j].me) + qsort(mset[j].me, mset[j].count, sizeof(*mset[j].me), + apprentice_sort); /* * Make sure that any level 0 "default" line is last @@ -2555,12 +2561,14 @@ getvalue(struct magic_set *ms, struct ma case FILE_LEFLOAT: if (m->reln != 'x') { char *ep; + errno = 0; #ifdef HAVE_STRTOF m->value.f = strtof(*p, &ep); #else m->value.f = (float)strtod(*p, &ep); #endif - *p = ep; + if (errno == 0) + *p = ep; } return 0; case FILE_DOUBLE: @@ -2568,17 +2576,22 @@ getvalue(struct magic_set *ms, struct ma case FILE_LEDOUBLE: if (m->reln != 'x') { char *ep; + errno = 0; m->value.d = strtod(*p, &ep); - *p = ep; + if (errno == 0) + *p = ep; } return 0; default: if (m->reln != 'x') { char *ep; + errno = 0; m->value.q = file_signextend(ms, m, (uint64_t)strtoull(*p, &ep, 0)); - *p = ep; - eatsize(p); + if (errno == 0) { + *p = ep; + eatsize(p); + } } return 0; } @@ -2614,6 +2627,7 @@ getstr(struct magic_set *ms, struct magi case '\0': if (warn) file_magwarn(ms, "incomplete escape"); + s--; goto out; case '\t': @@ -2737,6 +2751,7 @@ getstr(struct magic_set *ms, struct magi } else *p++ = (char)c; } + --s; out: *p = '\0'; m->vallen = CAST(unsigned char, (p - origp)); @@ -3209,9 +3224,10 @@ file_pstring_length_size(const struct ma } } protected size_t -file_pstring_get_length(const struct magic *m, const char *s) +file_pstring_get_length(const struct magic *m, const char *ss) { size_t len = 0; + const unsigned char *s = (const unsigned char *)ss; switch (m->str_flags & PSTRING_LEN) { case PSTRING_1_LE: Modified: head/contrib/file/src/file.c ============================================================================== --- head/contrib/file/src/file.c Wed Sep 23 05:14:48 2015 (r288142) +++ head/contrib/file/src/file.c Wed Sep 23 05:39:20 2015 (r288143) @@ -32,7 +32,7 @@ #include "file.h" #ifndef lint -FILE_RCSID("@(#)$File: file.c,v 1.165 2015/06/11 12:52:32 christos Exp $") +FILE_RCSID("@(#)$File: file.c,v 1.167 2015/09/11 17:24:09 christos Exp $") #endif /* lint */ #include "magic.h" @@ -131,6 +131,7 @@ private struct { { "elf_phnum", MAGIC_PARAM_ELF_PHNUM_MAX, 0 }, { "elf_shnum", MAGIC_PARAM_ELF_SHNUM_MAX, 0 }, { "elf_notes", MAGIC_PARAM_ELF_NOTES_MAX, 0 }, + { "regex", MAGIC_PARAM_REGEX_MAX, 0 }, }; private char *progname; /* used throughout */ @@ -237,6 +238,7 @@ main(int argc, char *argv[]) if (magic == NULL) if ((magic = load(magicfile, flags)) == NULL) return 1; + applyparam(magic); e |= unwrap(magic, optarg); ++didsomefiles; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Wed Sep 23 06:25:46 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 26749A06E79; Wed, 23 Sep 2015 06:25:46 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: from mail-wi0-x22f.google.com (mail-wi0-x22f.google.com [IPv6:2a00:1450:400c:c05::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B2A3C1FE4; Wed, 23 Sep 2015 06:25:45 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: by wicgb1 with SMTP id gb1so190167130wic.1; Tue, 22 Sep 2015 23:25:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=BG44jH0wwRyDGhx8IzyE2aHgf7QC92gzXy4/nYbBaL0=; b=AjYbGSBmo3pL0hhs8n6++beOA2vhhMPbhNU8xkj0xNqAFp3FLGbk5t7BiT51v+BQOk sGT7z8JFTPKyrHOUxW/as6NaMYZRWJ4NSpKOq9QpPNcg+PrEB0qYMALxFSKBnrI2avGl pGt4j5YEsjdeoMcUo4NuKzbuXz8lBxCrkerV/GuUWd+g3AfrUwbRYzBjHVut65hvWPL2 upj2DXPi2s6Dpab3NTMADHrsP1XGx4A3HBuGUVlAj5kEBKUa17WP5dOLcGXm5/CxJIE+ 6ujb7mjqQWB7UdN9eJEqfaf/jfc0YHmbtzj51nblZHPd3CUq4RVuXyPg1fX8Je4ZHw9u vyvg== X-Received: by 10.180.182.84 with SMTP id ec20mr2011232wic.42.1442989543923; Tue, 22 Sep 2015 23:25:43 -0700 (PDT) Received: from ivaldir.etoilebsd.net ([2001:41d0:8:db4c::1]) by smtp.gmail.com with ESMTPSA id fs9sm6776838wic.24.2015.09.22.23.25.42 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 22 Sep 2015 23:25:43 -0700 (PDT) Sender: Baptiste Daroussin Date: Wed, 23 Sep 2015 08:25:41 +0200 From: Baptiste Daroussin To: Bryan Drewery Cc: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r286995 - head/share/mk Message-ID: <20150923062541.GH16800@ivaldir.etoilebsd.net> References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="y0Ed1hDcWxc3B7cn" Content-Disposition: inline In-Reply-To: <56023395.2080904@FreeBSD.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 06:25:46 -0000 --y0Ed1hDcWxc3B7cn Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Sep 22, 2015 at 10:07:33PM -0700, Bryan Drewery wrote: > On 8/21/15 8:15 AM, Warner Losh wrote: > > Author: imp > > Date: Fri Aug 21 15:15:22 2015 > > New Revision: 286995 > > URL: https://svnweb.freebsd.org/changeset/base/286995 > >=20 > > Log: > > Document bsd.progs.mk, including its status as being strongly > > discouraged and that it will be going away as soon as is practicable. > >=20 > > Modified: > > head/share/mk/bsd.README >=20 > I find this functionality irreplaceable for simplicity. The alternative > is more Makefiles for simple extra progs. Granted it has meta mode > dirdeps issues but I think that is acceptable as there are other ways to > address that. >=20 > Where is this deprecation coming from? Is it just due to bapt's > in-progress (but not working) patch at https://reviews.freebsd.org/D3444 > to remove bsd.progs.mk in place of PROGS in bsd.prog.mk? >=20 > I would like to document PROGS properly. I had no idea how it worked > until reading over it tonight. If the plan wasn't to remove PROGS itself > I will do so. >=20 This is the exact opposite. the review comes from the fact that bsd.progs.mk is broken.and has not be f= ixed for a while. The brokenness comes from the fact it is including magically bsd.prog.mk multiple times, the easiy to see brokenness is the fact that everything defining FILES/SCRIPTS and other magic macros that bsd.prog.mk a= ccept via it multiple inputs will be reinstalled multiple times, one can fix thos= e by exhaustively adding overwrites of every single macros, but hat would be rea= lly tedious each time one of the thing included in bsd.prog.mk get modified or = added You can easily see that for all the bsd.tests.mk. While I do really like the fonctionnality it is very complicticated to get = it working. My work in progress version is eaily fixable by adding: https://lists.freebsd.org/pipermail/freebsd-arch/2003-June/000906.html And extending the above for LDFLAGS and CXXFLAGS. Which had been rejected in the past multiple times :( The subject came back again https://lists.freebsd.org/pipermail/freebsd-arch/2010-September/010613.html I think D3444 would be a good excuse to bring back the idea of perfiles spe= cific FLAGS. But I didn't want to wake up dead subject noone agreed on. Best regards, Bapt --y0Ed1hDcWxc3B7cn Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlYCReUACgkQ8kTtMUmk6ExP8gCggOaXf+BbdsVaLGO6Qd70kFAL PZkAn0IoWKxxE80/2qDf8L6Jn3bunAcz =uGdF -----END PGP SIGNATURE----- --y0Ed1hDcWxc3B7cn-- From owner-svn-src-head@freebsd.org Wed Sep 23 07:17:37 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ACC7FA06A5A for ; Wed, 23 Sep 2015 07:17:37 +0000 (UTC) (envelope-from scott4long@yahoo.com) Received: from nm45-vm1.bullet.mail.gq1.yahoo.com (nm45-vm1.bullet.mail.gq1.yahoo.com [67.195.87.87]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8148B1828 for ; Wed, 23 Sep 2015 07:17:37 +0000 (UTC) (envelope-from scott4long@yahoo.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1442992650; bh=j1PCYCUG//Nq4/2uNTilttYwHpQIJ3hKr4bUssn86pw=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From:Subject; b=n6JKPh6Pql8inAZ3uggH625Zn95gVO83hjVdF7RgDo7ojMD2vFG5OwMXBdSjvE6u1rFL1WKoMJhmTk2btckFocvJqwoQiYMjfqLfY+yUfYD0m1oPdFn0AQ++1k68wUfEuqkDLePmOuunl3SNL6s59tYmMDtZspL+5Esx9ZViotcbHz5RzZnlthw2yVZ0zRj66GmX/iRhjaYL80V38CIPdAdxnxBDwtLQ47Bugc2CnLfJArc9Xfib9Kvp6dl1n9VYGWYqQATMERfW/NdaFsg+CRi+uhBJYm34M5jwgAwfFq/DLlDJtuIshPYM6MaVMnJAoKXyD3g86FkW0G+OKpuLaw== Received: from [127.0.0.1] by nm45.bullet.mail.gq1.yahoo.com with NNFMP; 23 Sep 2015 07:17:30 -0000 Received: from [98.137.12.56] by nm45.bullet.mail.gq1.yahoo.com with NNFMP; 23 Sep 2015 07:14:48 -0000 Received: from [208.71.42.202] by tm1.bullet.mail.gq1.yahoo.com with NNFMP; 23 Sep 2015 07:14:48 -0000 Received: from [127.0.0.1] by smtp213.mail.gq1.yahoo.com with NNFMP; 23 Sep 2015 07:14:48 -0000 X-Yahoo-Newman-Id: 109284.35164.bm@smtp213.mail.gq1.yahoo.com X-Yahoo-Newman-Property: ymail-4 X-YMail-OSG: UaM8eS8VM1lvACUJwgSJEp2pkR4wKTGlLMuW5aiDorEo4R0 3aLqmyAUpLX7BqwS2mYYy1TSt53jlZaq.6JeVUcNyJK5Yz0ZsZlvJAiLZ.nR _bQ6d79XIIuiHVij.8.Z2bIuBkdgAUk.UxYQEys08fXm40tAEdSSeyqH1SzD hF5XZAR15yW.ar33eoOK_0XFk9CcSMaFz0mP1huMvEfSnvkvaRYiB4p21i69 Z7QYTrRUJActYG_lAxfgJHazQcLTqOITejZ.y224TW2PQU4psWA2pUZb5X2S 6LOR5EBJkxrqZi5lzXim0pqCcEmYzi0bO3E_M1UR3CwFdZGnKRdTyplnpydn ujnVC7FzFlgsmi5rDyeT60eUJo185UMcwiCSw._7MtTWoXhFJLHos6T.m1hK Rb4qbTQdIt9LS0spH5FNo1vzJUwH5.dQwHDwTZ8tZjpTol9pejASTvNUQktJ 6ytBP6R_3pwd86L_eMMkitIp6frwBhGZ58fZ9hlgbOq1ZOksj1xisLWnlqGP a6TThHp5dMvUUFcf4DhmNPlBC_lmwPyRVzmG2_Xh.0QbA6Md8pv3DMQ-- X-Yahoo-SMTP: clhABp.swBB7fs.LwIJpv3jkWgo2NU8- Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: svn commit: r288122 - in head/sys: kern vm From: Scott Long In-Reply-To: <201509221816.t8MIGqxV069276@repo.freebsd.org> Date: Wed, 23 Sep 2015 00:14:45 -0700 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <04359280-61C0-4A59-AF04-54FA3D4F98C3@yahoo.com> References: <201509221816.t8MIGqxV069276@repo.freebsd.org> To: Alan Cox X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 07:17:37 -0000 It should be noted that Netflix has been running with an earlier version = of this patch for nearly 10 months. Scott > On Sep 22, 2015, at 11:16 AM, Alan Cox wrote: >=20 > Author: alc > Date: Tue Sep 22 18:16:52 2015 > New Revision: 288122 > URL: https://svnweb.freebsd.org/changeset/base/288122 >=20 > Log: > Change vm_page_unwire() such that it (1) accepts PQ_NONE as the = specified > queue and (2) returns a Boolean indicating whether the page's wire = count > transitioned to zero. >=20 > Exploit this change in vfs_vmio_release() to avoid pointlessly = enqueueing > a page that is about to be freed. >=20 > (An earlier version of this change was developed by attilio@ and = kmacy@. > Any errors in this version are my own.) >=20 > Reviewed by: kib > Sponsored by: EMC / Isilon Storage Division >=20 > Modified: > head/sys/kern/vfs_bio.c > head/sys/vm/vm_page.c > head/sys/vm/vm_page.h >=20 > Modified: head/sys/kern/vfs_bio.c > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/kern/vfs_bio.c Tue Sep 22 17:34:51 2015 = (r288121) > +++ head/sys/kern/vfs_bio.c Tue Sep 22 18:16:52 2015 = (r288122) > @@ -2076,6 +2076,7 @@ vfs_vmio_release(struct buf *bp) > vm_object_t obj; > vm_page_t m; > int i; > + bool freed; >=20 > if (buf_mapped(bp)) { > BUF_CHECK_MAPPED(bp); > @@ -2088,23 +2089,28 @@ vfs_vmio_release(struct buf *bp) > for (i =3D 0; i < bp->b_npages; i++) { > m =3D bp->b_pages[i]; > bp->b_pages[i] =3D NULL; > - /* > - * In order to keep page LRU ordering consistent, put > - * everything on the inactive queue. > - */ > vm_page_lock(m); > - vm_page_unwire(m, PQ_INACTIVE); > - > - /* > - * Might as well free the page if we can and it has > - * no valid data. We also free the page if the > - * buffer was used for direct I/O > - */ > - if ((bp->b_flags & B_ASYNC) =3D=3D 0 && !m->valid) { > - if (m->wire_count =3D=3D 0 && = !vm_page_busied(m)) > - vm_page_free(m); > - } else if (bp->b_flags & B_DIRECT) > - vm_page_try_to_free(m); > + if (vm_page_unwire(m, PQ_NONE)) { > + /* > + * Determine if the page should be freed before = adding > + * it to the inactive queue. > + */ > + if ((bp->b_flags & B_ASYNC) =3D=3D 0 && m->valid = =3D=3D 0) { > + freed =3D !vm_page_busied(m); > + if (freed) > + vm_page_free(m); > + } else if ((bp->b_flags & B_DIRECT) !=3D 0) > + freed =3D vm_page_try_to_free(m); > + else > + freed =3D false; > + if (!freed) { > + /* > + * In order to maintain LRU page = ordering, put > + * the page at the tail of the inactive = queue. > + */ > + vm_page_deactivate(m); > + } > + } > vm_page_unlock(m); > } > if (obj !=3D NULL) >=20 > Modified: head/sys/vm/vm_page.c > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/vm/vm_page.c Tue Sep 22 17:34:51 2015 = (r288121) > +++ head/sys/vm/vm_page.c Tue Sep 22 18:16:52 2015 = (r288122) > @@ -2476,42 +2476,46 @@ vm_page_wire(vm_page_t m) > /* > * vm_page_unwire: > * > - * Release one wiring of the specified page, potentially enabling it = to be > - * paged again. If paging is enabled, then the value of the = parameter > - * "queue" determines the queue to which the page is added. > - * > - * However, unless the page belongs to an object, it is not enqueued = because > - * it cannot be paged out. > + * Release one wiring of the specified page, potentially allowing it = to be > + * paged out. Returns TRUE if the number of wirings transitions to = zero and > + * FALSE otherwise. > + * > + * Only managed pages belonging to an object can be paged out. If = the number > + * of wirings transitions to zero and the page is eligible for page = out, then > + * the page is added to the specified paging queue (unless PQ_NONE is > + * specified). > * > * If a page is fictitious, then its wire count must always be one. > * > * A managed page must be locked. > */ > -void > +boolean_t > vm_page_unwire(vm_page_t m, uint8_t queue) > { >=20 > - KASSERT(queue < PQ_COUNT, > + KASSERT(queue < PQ_COUNT || queue =3D=3D PQ_NONE, > ("vm_page_unwire: invalid queue %u request for page %p", > queue, m)); > if ((m->oflags & VPO_UNMANAGED) =3D=3D 0) > - vm_page_lock_assert(m, MA_OWNED); > + vm_page_assert_locked(m); > if ((m->flags & PG_FICTITIOUS) !=3D 0) { > KASSERT(m->wire_count =3D=3D 1, > ("vm_page_unwire: fictitious page %p's wire count isn't = one", m)); > - return; > + return (FALSE); > } > if (m->wire_count > 0) { > m->wire_count--; > if (m->wire_count =3D=3D 0) { > atomic_subtract_int(&vm_cnt.v_wire_count, 1); > - if ((m->oflags & VPO_UNMANAGED) !=3D 0 || > - m->object =3D=3D NULL) > - return; > - if (queue =3D=3D PQ_INACTIVE) > - m->flags &=3D ~PG_WINATCFLS; > - vm_page_enqueue(queue, m); > - } > + if ((m->oflags & VPO_UNMANAGED) =3D=3D 0 && > + m->object !=3D NULL && queue !=3D PQ_NONE) { > + if (queue =3D=3D PQ_INACTIVE) > + m->flags &=3D ~PG_WINATCFLS; > + vm_page_enqueue(queue, m); > + } > + return (TRUE); > + } else > + return (FALSE); > } else > panic("vm_page_unwire: page %p's wire count is zero", = m); > } >=20 > Modified: head/sys/vm/vm_page.h > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/vm/vm_page.h Tue Sep 22 17:34:51 2015 = (r288121) > +++ head/sys/vm/vm_page.h Tue Sep 22 18:16:52 2015 = (r288122) > @@ -480,7 +480,7 @@ vm_offset_t vm_page_startup(vm_offset_t=20 > void vm_page_sunbusy(vm_page_t m); > int vm_page_trysbusy(vm_page_t m); > void vm_page_unhold_pages(vm_page_t *ma, int count); > -void vm_page_unwire (vm_page_t m, uint8_t queue); > +boolean_t vm_page_unwire(vm_page_t m, uint8_t queue); > void vm_page_updatefake(vm_page_t m, vm_paddr_t paddr, vm_memattr_t = memattr); > void vm_page_wire (vm_page_t); > void vm_page_xunbusy_hard(vm_page_t m); >=20 From owner-svn-src-head@freebsd.org Wed Sep 23 07:44:08 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 743FAA07917; Wed, 23 Sep 2015 07:44:08 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 64FD313B2; Wed, 23 Sep 2015 07:44:08 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8N7i8IS007320; Wed, 23 Sep 2015 07:44:08 GMT (envelope-from jeff@FreeBSD.org) Received: (from jeff@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8N7i8hs007319; Wed, 23 Sep 2015 07:44:08 GMT (envelope-from jeff@FreeBSD.org) Message-Id: <201509230744.t8N7i8hs007319@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jeff set sender to jeff@FreeBSD.org using -f From: Jeff Roberson Date: Wed, 23 Sep 2015 07:44:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288144 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 07:44:08 -0000 Author: jeff Date: Wed Sep 23 07:44:07 2015 New Revision: 288144 URL: https://svnweb.freebsd.org/changeset/base/288144 Log: - Fix a nonsense reordering that somehow slipped into my last diff. Reported by: pho Modified: head/sys/kern/vfs_bio.c Modified: head/sys/kern/vfs_bio.c ============================================================================== --- head/sys/kern/vfs_bio.c Wed Sep 23 05:39:20 2015 (r288143) +++ head/sys/kern/vfs_bio.c Wed Sep 23 07:44:07 2015 (r288144) @@ -2090,6 +2090,8 @@ vfs_vmio_invalidate(struct buf *bp) if (m == bogus_page) panic("vfs_vmio_invalidate: Unexpected bogus page."); + presid = resid > (PAGE_SIZE - poffset) ? + (PAGE_SIZE - poffset) : resid; KASSERT(presid >= 0, ("brelse: extra page")); while (vm_page_xbusied(m)) { vm_page_lock(m); @@ -2097,8 +2099,6 @@ vfs_vmio_invalidate(struct buf *bp) vm_page_busy_sleep(m, "mbncsh"); VM_OBJECT_WLOCK(obj); } - presid = resid > (PAGE_SIZE - poffset) ? - (PAGE_SIZE - poffset) : resid; if (pmap_page_wired_mappings(m) == 0) vm_page_set_invalid(m, poffset, presid); resid -= presid; From owner-svn-src-head@freebsd.org Wed Sep 23 08:09:23 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31926A06609; Wed, 23 Sep 2015 08:09:23 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pa0-x236.google.com (mail-pa0-x236.google.com [IPv6:2607:f8b0:400e:c03::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0151D1DC6; Wed, 23 Sep 2015 08:09:23 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by pacex6 with SMTP id ex6so34074056pac.0; Wed, 23 Sep 2015 01:09:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=pkNgPnT5jkBHS8EThRZpwH+MvpQR5UGPuev3Y3nkkWg=; b=Ot5Qk1Or6gbm4erAf2Ij+pXtWUmdK6/5jioJ6cvxkJAuJxaXZYPcaqN6rI15YktUCt 499lY3mHVpgGHB988bDW8ks3iVB9SurmFZFwHE15RmgqDYsXmsmnEvhZ5nzEVeYXVqMQ wMmcG/jD6zkWQRBLTCXeVfYBA6DycW+hU5+6usPywb8unVQ5m94EUwP2h2CUUlJl7JDW 3WSGfvhYzGX8PsIzZmuUOWL0TOsZLFmB6MajgZN8b/rrln6W489Qss4yKV6CsRfwztxV ry7VPBAt5/CWKlqXElk72Zz3K8Tnn8plfWw3or6BfNpOL4FXXfu+RiSjyrpK964CQFvT FYcQ== X-Received: by 10.68.65.104 with SMTP id w8mr36395546pbs.48.1442995762511; Wed, 23 Sep 2015 01:09:22 -0700 (PDT) Received: from [10.1.10.59] (c-71-231-224-9.hsd1.wa.comcast.net. [71.231.224.9]) by smtp.gmail.com with ESMTPSA id pt2sm6341461pbb.64.2015.09.23.01.09.20 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 23 Sep 2015 01:09:21 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r286995 - head/share/mk From: Garrett Cooper X-Mailer: iPhone Mail (12H321) In-Reply-To: <20150923062541.GH16800@ivaldir.etoilebsd.net> Date: Wed, 23 Sep 2015 01:09:18 -0700 Cc: Bryan Drewery , Warner Losh , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <41CC999A-9D05-4303-AAF8-ADFB56CD7D99@gmail.com> References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> <20150923062541.GH16800@ivaldir.etoilebsd.net> To: Baptiste Daroussin X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 08:09:23 -0000 > On Sep 22, 2015, at 23:25, Baptiste Daroussin wrote: >=20 >> On Tue, Sep 22, 2015 at 10:07:33PM -0700, Bryan Drewery wrote: >>> On 8/21/15 8:15 AM, Warner Losh wrote: >>> Author: imp >>> Date: Fri Aug 21 15:15:22 2015 >>> New Revision: 286995 >>> URL: https://svnweb.freebsd.org/changeset/base/286995 >>>=20 >>> Log: >>> Document bsd.progs.mk, including its status as being strongly >>> discouraged and that it will be going away as soon as is practicable. >>>=20 >>> Modified: >>> head/share/mk/bsd.README >>=20 >> I find this functionality irreplaceable for simplicity. The alternative >> is more Makefiles for simple extra progs. Granted it has meta mode >> dirdeps issues but I think that is acceptable as there are other ways to >> address that. >>=20 >> Where is this deprecation coming from? Is it just due to bapt's >> in-progress (but not working) patch at https://reviews.freebsd.org/D3444 >> to remove bsd.progs.mk in place of PROGS in bsd.prog.mk? >>=20 >> I would like to document PROGS properly. I had no idea how it worked >> until reading over it tonight. If the plan wasn't to remove PROGS itself >> I will do so. > This is the exact opposite. >=20 > the review comes from the fact that bsd.progs.mk is broken.and has not be f= ixed > for a while. The brokenness comes from the fact it is including magically > bsd.prog.mk multiple times, the easiy to see brokenness is the fact that > everything defining FILES/SCRIPTS and other magic macros that bsd.prog.mk a= ccept > via it multiple inputs will be reinstalled multiple times, one can fix tho= se by > exhaustively adding overwrites of every single macros, but hat would be re= ally > tedious each time one of the thing included in bsd.prog.mk get modified or= added >=20 > You can easily see that for all the bsd.tests.mk. >=20 > While I do really like the fonctionnality it is very complicticated to get= it > working. >=20 > My work in progress version is eaily fixable by adding: > https://lists.freebsd.org/pipermail/freebsd-arch/2003-June/000906.html >=20 > And extending the above for LDFLAGS and CXXFLAGS. >=20 > Which had been rejected in the past multiple times :( >=20 > The subject came back again > https://lists.freebsd.org/pipermail/freebsd-arch/2010-September/010613.htm= l >=20 > I think D3444 would be a good excuse to bring back the idea of perfiles sp= ecific > FLAGS. But I didn't want to wake up dead subject noone agreed on. I have some work in perforce that was largely tested, but the impact was "hi= gh" and bsd.progs.mk filled the gap, but it has a lot of gaps with bsd.prog.= mk (it's bsd.prog.mk with some assembly required type issues and the way bsd= .test.mk uses it is like putting a square peg in a round hole). I have other= work in svn I've been doing to fix it, but with work/life the way it is, I h= ave not incredibly motivated to follow through with it. Whatever's done though should probably leverage the tests I wrote up in perf= orce. There were a bunch of them that are worth capturing and using as "requ= irements" for PROGS in bsd.progs.mk.= From owner-svn-src-head@freebsd.org Wed Sep 23 12:45:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2B394A02DFA; Wed, 23 Sep 2015 12:45:09 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1BCD51B0B; Wed, 23 Sep 2015 12:45:09 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NCj8Y4029755; Wed, 23 Sep 2015 12:45:08 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NCj8RL029754; Wed, 23 Sep 2015 12:45:08 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <201509231245.t8NCj8RL029754@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Wed, 23 Sep 2015 12:45:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288145 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 12:45:09 -0000 Author: mjg Date: Wed Sep 23 12:45:08 2015 New Revision: 288145 URL: https://svnweb.freebsd.org/changeset/base/288145 Log: kqueue: simplify kern_kqueue by not refing/unrefing creds too early No functional changes. Modified: head/sys/kern/kern_event.c Modified: head/sys/kern/kern_event.c ============================================================================== --- head/sys/kern/kern_event.c Wed Sep 23 07:44:07 2015 (r288144) +++ head/sys/kern/kern_event.c Wed Sep 23 12:45:08 2015 (r288145) @@ -759,28 +759,25 @@ kern_kqueue(struct thread *td, int flags struct filedesc *fdp; struct kqueue *kq; struct file *fp; - struct proc *p; struct ucred *cred; int fd, error; - p = td->td_proc; + fdp = td->td_proc->p_fd; cred = td->td_ucred; - crhold(cred); - if (!chgkqcnt(cred->cr_ruidinfo, 1, lim_cur(td, RLIMIT_KQUEUES))) { - crfree(cred); + if (!chgkqcnt(cred->cr_ruidinfo, 1, lim_cur(td, RLIMIT_KQUEUES))) return (ENOMEM); - } - fdp = p->p_fd; error = falloc_caps(td, &fp, &fd, flags, fcaps); - if (error) - goto done2; + if (error != 0) { + chgkqcnt(cred->cr_ruidinfo, -1, 0); + return (error); + } /* An extra reference on `fp' has been held for us by falloc(). */ kq = malloc(sizeof *kq, M_KQUEUE, M_WAITOK | M_ZERO); kqueue_init(kq); kq->kq_fdp = fdp; - kq->kq_cred = cred; + kq->kq_cred = crhold(cred); FILEDESC_XLOCK(fdp); TAILQ_INSERT_HEAD(&fdp->fd_kqlist, kq, kq_list); @@ -790,12 +787,7 @@ kern_kqueue(struct thread *td, int flags fdrop(fp, td); td->td_retval[0] = fd; -done2: - if (error != 0) { - chgkqcnt(cred->cr_ruidinfo, -1, 0); - crfree(cred); - } - return (error); + return (0); } #ifndef _SYS_SYSPROTO_H_ From owner-svn-src-head@freebsd.org Wed Sep 23 15:21:10 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 370BEA07D3E; Wed, 23 Sep 2015 15:21:10 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 199C61D1D; Wed, 23 Sep 2015 15:21:10 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 0EB3419AB; Wed, 23 Sep 2015 15:21:10 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id C09CC13142; Wed, 23 Sep 2015 15:21:09 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id t6X3854UchgB; Wed, 23 Sep 2015 15:21:03 +0000 (UTC) Subject: Re: svn commit: r286995 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com F0E911313C To: Baptiste Daroussin References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> <20150923062541.GH16800@ivaldir.etoilebsd.net> Cc: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5602C35D.1030408@FreeBSD.org> Date: Wed, 23 Sep 2015 08:21:01 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <20150923062541.GH16800@ivaldir.etoilebsd.net> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="iI0jxQDCqGlFX7wOokEsUEcf8jeVx3jVI" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 15:21:10 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --iI0jxQDCqGlFX7wOokEsUEcf8jeVx3jVI Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 9/22/2015 11:25 PM, Baptiste Daroussin wrote: > On Tue, Sep 22, 2015 at 10:07:33PM -0700, Bryan Drewery wrote: >> On 8/21/15 8:15 AM, Warner Losh wrote: >>> Author: imp >>> Date: Fri Aug 21 15:15:22 2015 >>> New Revision: 286995 >>> URL: https://svnweb.freebsd.org/changeset/base/286995 >>> >>> Log: >>> Document bsd.progs.mk, including its status as being strongly >>> discouraged and that it will be going away as soon as is practicabl= e. >>> >>> Modified: >>> head/share/mk/bsd.README >> >> I find this functionality irreplaceable for simplicity. The alternativ= e >> is more Makefiles for simple extra progs. Granted it has meta mode >> dirdeps issues but I think that is acceptable as there are other ways = to >> address that. >> >> Where is this deprecation coming from? Is it just due to bapt's >> in-progress (but not working) patch at https://reviews.freebsd.org/D34= 44 >> to remove bsd.progs.mk in place of PROGS in bsd.prog.mk? >> >> I would like to document PROGS properly. I had no idea how it worked >> until reading over it tonight. If the plan wasn't to remove PROGS itse= lf >> I will do so. >> > This is the exact opposite. >=20 > the review comes from the fact that bsd.progs.mk is broken.and has not = be fixed > for a while. The brokenness comes from the fact it is including magical= ly > bsd.prog.mk multiple times, the easiy to see brokenness is the fact tha= t > everything defining FILES/SCRIPTS and other magic macros that bsd.prog.= mk accept > via it multiple inputs will be reinstalled multiple times, one can fix = those by > exhaustively adding overwrites of every single macros, but hat would be= really > tedious each time one of the thing included in bsd.prog.mk get modified= or added >=20 I have fixed this actually. I am committing today. > You can easily see that for all the bsd.tests.mk. >=20 > While I do really like the fonctionnality it is very complicticated to = get it > working. >=20 > My work in progress version is eaily fixable by adding: > https://lists.freebsd.org/pipermail/freebsd-arch/2003-June/000906.html >=20 > And extending the above for LDFLAGS and CXXFLAGS. >=20 > Which had been rejected in the past multiple times :( >=20 > The subject came back again > https://lists.freebsd.org/pipermail/freebsd-arch/2010-September/010613.= html >=20 > I think D3444 would be a good excuse to bring back the idea of perfiles= specific > FLAGS. But I didn't want to wake up dead subject noone agreed on. >=20 > Best regards, > Bapt >=20 --=20 Regards, Bryan Drewery --iI0jxQDCqGlFX7wOokEsUEcf8jeVx3jVI Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWAsNdAAoJEDXXcbtuRpfPnycIAKdy9a1JSpeJ4cicBLG3xw/g uqPDWenKbhfQdFJ8kFA93Tuy0g3VCA3c541f+bun+ef39q+LGzAnSffZX2g5AUcU 53JDWLl7vrq19loQXjfD/uEAuatJdfijDZKX+wQTKAEA+FgYmmOLbNJoPtoiTIGb Rnghe+FBAxYCM/ENzO/dBTAoNS1m0MmkpvqKvPRGELLF/Ux5D4urU+UTZP2OY32i IM3GEH0+keo0Pf2ivHD0Affg4uMbD3JpsoifAERGMIv+HIA6dyf4fhl1zbC8hj8Q LdmIXKri3Ndzdu4/hfLkCDlw8Kzu+lKiOw+ZROA56/XitZcENrJOHJjUKqbX18Q= =2AuN -----END PGP SIGNATURE----- --iI0jxQDCqGlFX7wOokEsUEcf8jeVx3jVI-- From owner-svn-src-head@freebsd.org Wed Sep 23 15:49:29 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 126ECA06BD9; Wed, 23 Sep 2015 15:49:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 02FDC1E24; Wed, 23 Sep 2015 15:49:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NFnSwH003686; Wed, 23 Sep 2015 15:49:28 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NFnR0d003682; Wed, 23 Sep 2015 15:49:27 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509231549.t8NFnR0d003682@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 23 Sep 2015 15:49:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288146 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 15:49:29 -0000 Author: mav Date: Wed Sep 23 15:49:27 2015 New Revision: 288146 URL: https://svnweb.freebsd.org/changeset/base/288146 Log: Make HA peers announce their parameters on connect. HA protocol requires strict version, parameters and configuration match. Differences there may cause full set of problems up to kernel panic. To avoid that, validate peer parameters on connect, and abort connection immediately if some mismatch detected. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_ha.c head/sys/cam/ctl/ctl_ha.h head/sys/cam/ctl/ctl_io.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Wed Sep 23 12:45:08 2015 (r288145) +++ head/sys/cam/ctl/ctl.c Wed Sep 23 15:49:27 2015 (r288146) @@ -715,8 +715,20 @@ ctl_isc_ha_link_up(struct ctl_softc *sof { struct ctl_port *port; struct ctl_lun *lun; + union ctl_ha_msg msg; int i; + /* Announce this node parameters to peer for validation. */ + msg.login.msg_type = CTL_MSG_LOGIN; + msg.login.version = CTL_HA_VERSION; + msg.login.ha_mode = softc->ha_mode; + msg.login.ha_id = softc->ha_id; + msg.login.max_luns = CTL_MAX_LUNS; + msg.login.max_ports = CTL_MAX_PORTS; + msg.login.max_init_per_port = CTL_MAX_INIT_PER_PORT; + ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg.login, sizeof(msg.login), + M_WAITOK); + STAILQ_FOREACH(port, &softc->port_list, links) { ctl_isc_announce_port(port); for (i = 0; i < CTL_MAX_INIT_PER_PORT; i++) { @@ -999,6 +1011,36 @@ ctl_isc_iid_sync(struct ctl_softc *softc port->wwpn_iid[iid].name = NULL; } +static void +ctl_isc_login(struct ctl_softc *softc, union ctl_ha_msg *msg, int len) +{ + + if (msg->login.version != CTL_HA_VERSION) { + printf("CTL HA peers have different versions %d != %d\n", + msg->login.version, CTL_HA_VERSION); + ctl_ha_msg_abort(CTL_HA_CHAN_CTL); + return; + } + if (msg->login.ha_mode != softc->ha_mode) { + printf("CTL HA peers have different ha_mode %d != %d\n", + msg->login.ha_mode, softc->ha_mode); + ctl_ha_msg_abort(CTL_HA_CHAN_CTL); + return; + } + if (msg->login.ha_id == softc->ha_id) { + printf("CTL HA peers have same ha_id %d\n", msg->login.ha_id); + ctl_ha_msg_abort(CTL_HA_CHAN_CTL); + return; + } + if (msg->login.max_luns != CTL_MAX_LUNS || + msg->login.max_ports != CTL_MAX_PORTS || + msg->login.max_init_per_port != CTL_MAX_INIT_PER_PORT) { + printf("CTL HA peers have different limits\n"); + ctl_ha_msg_abort(CTL_HA_CHAN_CTL); + return; + } +} + /* * ISC (Inter Shelf Communication) event handler. Events from the HA * subsystem come in here. @@ -1275,9 +1317,13 @@ ctl_isc_event_handler(ctl_ha_channel cha case CTL_MSG_IID_SYNC: ctl_isc_iid_sync(softc, msg, param); break; + case CTL_MSG_LOGIN: + ctl_isc_login(softc, msg, param); + break; default: printf("Received HA message of unknown type %d\n", msg->hdr.msg_type); + ctl_ha_msg_abort(CTL_HA_CHAN_CTL); break; } if (msg != &msgbuf) Modified: head/sys/cam/ctl/ctl_ha.c ============================================================================== --- head/sys/cam/ctl/ctl_ha.c Wed Sep 23 12:45:08 2015 (r288145) +++ head/sys/cam/ctl/ctl_ha.c Wed Sep 23 15:49:27 2015 (r288146) @@ -283,8 +283,9 @@ ctl_ha_rx_thread(void *arg) else next = sizeof(wire_hdr); SOCKBUF_LOCK(&so->so_rcv); - while (sbavail(&so->so_rcv) < next) { - if (softc->ha_connected == 0 || so->so_error || + while (sbavail(&so->so_rcv) < next || softc->ha_disconnect) { + if (softc->ha_connected == 0 || softc->ha_disconnect || + so->so_error || (so->so_rcv.sb_state & SBS_CANTRCVMORE)) { goto errout; } @@ -541,6 +542,18 @@ ctl_ha_listen(struct ha_softc *softc) printf("%s: REUSEADDR setting failed %d\n", __func__, error); } + bzero(&opt, sizeof(struct sockopt)); + opt.sopt_dir = SOPT_SET; + opt.sopt_level = SOL_SOCKET; + opt.sopt_name = SO_REUSEPORT; + opt.sopt_val = &val; + opt.sopt_valsize = sizeof(val); + val = 1; + error = sosetopt(softc->ha_lso, &opt); + if (error) { + printf("%s: REUSEPORT setting failed %d\n", + __func__, error); + } SOCKBUF_LOCK(&softc->ha_lso->so_rcv); soupcall_set(softc->ha_lso, SO_RCV, ctl_ha_lupcall, softc); SOCKBUF_UNLOCK(&softc->ha_lso->so_rcv); @@ -572,7 +585,8 @@ ctl_ha_conn_thread(void *arg) while (1) { if (softc->ha_disconnect || softc->ha_shutdown) { ctl_ha_close(softc); - ctl_ha_lclose(softc); + if (softc->ha_disconnect == 2 || softc->ha_shutdown) + ctl_ha_lclose(softc); softc->ha_disconnect = 0; if (softc->ha_shutdown) break; @@ -666,7 +680,7 @@ ctl_ha_peer_sysctl(SYSCTL_HANDLER_ARGS) sa->sin_addr.s_addr = htonl((b1 << 24) + (b2 << 16) + (b3 << 8) + b4); } - softc->ha_disconnect = 1; + softc->ha_disconnect = 2; softc->ha_wakeup = 1; mtx_unlock(&softc->ha_lock); wakeup(&softc->ha_wakeup); @@ -811,6 +825,19 @@ ctl_ha_msg_send(ctl_ha_channel channel, return (ctl_ha_msg_send2(channel, addr, len, NULL, 0, wait)); } +ctl_ha_status +ctl_ha_msg_abort(ctl_ha_channel channel) +{ + struct ha_softc *softc = &ha_softc; + + mtx_lock(&softc->ha_lock); + softc->ha_disconnect = 1; + softc->ha_wakeup = 1; + mtx_unlock(&softc->ha_lock); + wakeup(&softc->ha_wakeup); + return (CTL_HA_STATUS_SUCCESS); +} + /* * Allocate a data transfer request structure. */ Modified: head/sys/cam/ctl/ctl_ha.h ============================================================================== --- head/sys/cam/ctl/ctl_ha.h Wed Sep 23 12:45:08 2015 (r288145) +++ head/sys/cam/ctl/ctl_ha.h Wed Sep 23 15:49:27 2015 (r288146) @@ -125,6 +125,7 @@ ctl_ha_status ctl_ha_msg_send(ctl_ha_cha size_t len, int wait); ctl_ha_status ctl_ha_msg_send2(ctl_ha_channel channel, const void *addr, size_t len, const void *addr2, size_t len2, int wait); +ctl_ha_status ctl_ha_msg_abort(ctl_ha_channel channel); ctl_ha_status ctl_ha_msg_deregister(ctl_ha_channel channel); struct ctl_ha_dt_req * ctl_dt_req_alloc(void); Modified: head/sys/cam/ctl/ctl_io.h ============================================================================== --- head/sys/cam/ctl/ctl_io.h Wed Sep 23 12:45:08 2015 (r288145) +++ head/sys/cam/ctl/ctl_io.h Wed Sep 23 15:49:27 2015 (r288146) @@ -197,6 +197,7 @@ typedef enum { CTL_MSG_PORT_SYNC, /* Information about port. */ CTL_MSG_LUN_SYNC, /* Information about LUN. */ CTL_MSG_IID_SYNC, /* Information about initiator. */ + CTL_MSG_LOGIN, /* Information about HA peer. */ CTL_MSG_FAILOVER /* Fake, never sent though the wire */ } ctl_msg_type; @@ -358,6 +359,25 @@ struct ctl_taskio { uint8_t task_resp[3];/* Response information */ }; + +/* + * HA link messages. + */ +#define CTL_HA_VERSION 1 + +/* + * Used for CTL_MSG_LOGIN. + */ +struct ctl_ha_msg_login { + ctl_msg_type msg_type; + int version; + int ha_mode; + int ha_id; + int max_luns; + int max_ports; + int max_init_per_port; +}; + typedef enum { CTL_PR_REG_KEY, CTL_PR_UNREG_KEY, @@ -523,16 +543,14 @@ union ctl_ha_msg { struct ctl_ha_msg_port port; struct ctl_ha_msg_lun lun; struct ctl_ha_msg_iid iid; + struct ctl_ha_msg_login login; }; - struct ctl_prio { struct ctl_io_hdr io_hdr; struct ctl_ha_msg_pr pr_msg; }; - - union ctl_io { struct ctl_io_hdr io_hdr; /* common to all I/O types */ struct ctl_scsiio scsiio; /* Normal SCSI commands */ From owner-svn-src-head@freebsd.org Wed Sep 23 16:16:17 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 614C4A07A28; Wed, 23 Sep 2015 16:16:17 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5014910EE; Wed, 23 Sep 2015 16:16:17 +0000 (UTC) (envelope-from rodrigc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NGGHZ9015933; Wed, 23 Sep 2015 16:16:17 GMT (envelope-from rodrigc@FreeBSD.org) Received: (from rodrigc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NGGHtx015932; Wed, 23 Sep 2015 16:16:17 GMT (envelope-from rodrigc@FreeBSD.org) Message-Id: <201509231616.t8NGGHtx015932@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rodrigc set sender to rodrigc@FreeBSD.org using -f From: Craig Rodrigues Date: Wed, 23 Sep 2015 16:16:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288147 - head/lib/libc/isc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 16:16:17 -0000 Author: rodrigc Date: Wed Sep 23 16:16:16 2015 New Revision: 288147 URL: https://svnweb.freebsd.org/changeset/base/288147 Log: Use ANSI C prototypes. Eliminates -Wold-style-definition warnings. Submitted by: Sascha Wildner Obtained from: DragonFlyBSD (commit 5d7d35b17f98588c39b30036f1a3fe8802935c2c) Modified: head/lib/libc/isc/ev_timers.c Modified: head/lib/libc/isc/ev_timers.c ============================================================================== --- head/lib/libc/isc/ev_timers.c Wed Sep 23 15:49:27 2015 (r288146) +++ head/lib/libc/isc/ev_timers.c Wed Sep 23 16:16:16 2015 (r288147) @@ -117,7 +117,7 @@ evCmpTime(struct timespec a, struct time } struct timespec -evNowTime() { +evNowTime(void) { struct timeval now; #ifdef CLOCK_REALTIME struct timespec tsnow; @@ -136,7 +136,7 @@ evNowTime() { } struct timespec -evUTCTime() { +evUTCTime(void) { struct timeval now; #ifdef CLOCK_REALTIME struct timespec tsnow; From owner-svn-src-head@freebsd.org Wed Sep 23 16:37:13 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2215EA063EC for ; Wed, 23 Sep 2015 16:37:13 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk0-f175.google.com (mail-qk0-f175.google.com [209.85.220.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D9AB71D53 for ; Wed, 23 Sep 2015 16:37:12 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qkap81 with SMTP id p81so19514043qka.2 for ; Wed, 23 Sep 2015 09:37:05 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=jok5jcOh2+I3QNdd4WKVXFNWkEn2pVJNLCS720Dl+Do=; b=huOxTBzC8AJ2ZXjMTscO+IMHsJr+QgrO4lsVUnTMZZXCWy41VFSyutq7WgiBdQ8zWg pTW4EwPRuQcAiBEF2GwNOjyGTs8RrGkRzwQ7diaUvdszufpT6/gg8fve1KvzTkMuSroE K8qL/tBdjOgmaTIWVPv0bhltK8BiVwnNDYIAMxjAXmYJCkks9675FXRy0ctLIoK2Dq93 V4UCQwfQr7GtoppWQv+qWKB+N18UjqlLdyEhL86fOqad4r4E9YdbRF1PG/t5WXI3FLzu Qmx+2R9OI6MHq9+OvXUC0HYu4IgL6unpKQXo5Tb2DnH2Q612Yn6mEM/qvTWld6z6bsMf FjQQ== X-Gm-Message-State: ALoCoQmYsE6eHfoa5qRka3Grd96Ma9ve2CKuIjep/RlZqCg2RYgjYIxhHzi3vTTVHQojFMUXEQTr MIME-Version: 1.0 X-Received: by 10.55.198.201 with SMTP id s70mr37338477qkl.42.1443026225618; Wed, 23 Sep 2015 09:37:05 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Wed, 23 Sep 2015 09:37:05 -0700 (PDT) X-Originating-IP: [40.140.178.190] In-Reply-To: <56022B4C.7070407@FreeBSD.org> References: <201508270152.t7R1qks4074549@repo.freebsd.org> <56022B4C.7070407@FreeBSD.org> Date: Wed, 23 Sep 2015 09:37:05 -0700 X-Google-Sender-Auth: w2kGISzeTXOBkV_A-zNXxn5tKWk Message-ID: Subject: Re: svn commit: r287185 - head/share/mk From: Warner Losh To: Bryan Drewery Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 16:37:13 -0000 I've been making a pass through the tree and found that FOO.${MK_BAR}+= a b c vs .if ${MK_BAR} != "no" FOO+= a b c .endif simpler to understand. This commit is one small slice of that which I could commit. These files have a high enough churn rate that I'm not always able to keep up enough to push my changes. So this was part of what I could do today to start to reduce my patch-set. This was discussed on arch@freebsd.org a while ago. Warner On Tue, Sep 22, 2015 at 9:32 PM, Bryan Drewery wrote: > On 8/26/15 6:52 PM, Warner Losh wrote: > > Author: imp > > Date: Thu Aug 27 01:52:45 2015 > > New Revision: 287185 > > URL: https://svnweb.freebsd.org/changeset/base/287185 > > > > Log: > > For each FOO in FILESLISTS, append the value of FOO.yes, sort, and > > remove duplicates. > > > > Modified: > > head/share/mk/bsd.files.mk > > > > Modified: head/share/mk/bsd.files.mk > > > ============================================================================== > > --- head/share/mk/bsd.files.mk Thu Aug 27 01:02:01 2015 > (r287184) > > +++ head/share/mk/bsd.files.mk Thu Aug 27 01:52:45 2015 > (r287185) > > @@ -10,6 +10,9 @@ ____: > > FILESGROUPS?= FILES > > > > .for group in ${FILESGROUPS} > > +# Add in foo.yes and remove duplicates from all the groups > > +${${group}}:= ${${group}} ${${group}.yes} > > +${${group}}:= ${${group}:O:u} > > buildfiles: ${${group}} > > .endfor > > > > > > What is this for? > > -- > Regards, > Bryan Drewery > From owner-svn-src-head@freebsd.org Wed Sep 23 16:44:57 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7E28A06A3F for ; Wed, 23 Sep 2015 16:44:57 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f48.google.com (mail-qg0-f48.google.com [209.85.192.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B48D314AE for ; Wed, 23 Sep 2015 16:44:57 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgt47 with SMTP id 47so23920342qgt.2 for ; Wed, 23 Sep 2015 09:44:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=w8P7LnDzVVlvp8vyaLLTUOUxlD+dTYn7TfD+BcZYHbk=; b=BB7OGGeX9/69HX5pqx0w+vNmbEeCZ05RMRclMLfI/CNdbLRq1dF71CU00Kt6H8bBpU +mizs4M9EbgWkTRoRtTDdb8gGKe6aomvVvtomKQWrh3meMl3XOYTjC5expGOQBRPRL8P QbN6/t9AYxubeIHAucxyM0SiNRoKRMcFNCuoqX0Mx7PFAas0v/FKWHPmF7TuPTyMBnsO Tplk4nMZze6MRZeO8AmWaYBMWQf+lqUO/hy/wivGZUkQkyfGsWu5fI9djDxxcMLKoz2Z 5SRGWTOOgvxmpjKlT2IZMUvJ7nccVo47EV4MwxuhATu0DOS6i7eJPYV6qOMLaCJtspAv 9lCQ== X-Gm-Message-State: ALoCoQlcYTgkND3v0N9rDXxfcO0hEwkvbgkyhTdLXtJrfXPRntGN5AjcWXBULDILCs+iB7comS1r MIME-Version: 1.0 X-Received: by 10.140.82.199 with SMTP id h65mr1685926qgd.52.1443026696362; Wed, 23 Sep 2015 09:44:56 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Wed, 23 Sep 2015 09:44:56 -0700 (PDT) X-Originating-IP: [40.140.178.190] In-Reply-To: <56023395.2080904@FreeBSD.org> References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> Date: Wed, 23 Sep 2015 09:44:56 -0700 X-Google-Sender-Auth: BTf5HDry8oJ-hb5x9zl6Qd3Xzjg Message-ID: Subject: Re: svn commit: r286995 - head/share/mk From: Warner Losh To: Bryan Drewery Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 16:44:58 -0000 On Tue, Sep 22, 2015 at 10:07 PM, Bryan Drewery wrote: > On 8/21/15 8:15 AM, Warner Losh wrote: > > Author: imp > > Date: Fri Aug 21 15:15:22 2015 > > New Revision: 286995 > > URL: https://svnweb.freebsd.org/changeset/base/286995 > > > > Log: > > Document bsd.progs.mk, including its status as being strongly > > discouraged and that it will be going away as soon as is practicable. > > > > Modified: > > head/share/mk/bsd.README > > I find this functionality irreplaceable for simplicity. The alternative > is more Makefiles for simple extra progs. Granted it has meta mode > dirdeps issues but I think that is acceptable as there are other ways to > address that. > > Where is this deprecation coming from? Is it just due to bapt's > in-progress (but not working) patch at https://reviews.freebsd.org/D3444 > to remove bsd.progs.mk in place of PROGS in bsd.prog.mk? > > I would like to document PROGS properly. I had no idea how it worked > until reading over it tonight. If the plan wasn't to remove PROGS itself > I will do so. > It doesn't work and has lots of issues. Those issues haven't been fixed. It didn't look like they would be fixed any time soon. It seemed there was a consensus to deprecate it because of those issues. bapt was part of that group, and his problems with packaging that bsd.progs.mk creates played into this decision. If the issues are fixed, then we can change our recommendations based on the changed circumstance. Warner From owner-svn-src-head@freebsd.org Wed Sep 23 17:01:27 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D3C64A07491; Wed, 23 Sep 2015 17:01:27 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id BAB5D1232; Wed, 23 Sep 2015 17:01:27 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id B392A18D4; Wed, 23 Sep 2015 17:01:27 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 5B33013354; Wed, 23 Sep 2015 17:01:27 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id YooiONbcjZpt; Wed, 23 Sep 2015 17:01:22 +0000 (UTC) Subject: Re: svn commit: r287185 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com E95AB1334C References: <201508270152.t7R1qks4074549@repo.freebsd.org> <56022B4C.7070407@FreeBSD.org> Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" To: Warner Losh From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5602DAE1.8090600@FreeBSD.org> Date: Wed, 23 Sep 2015 10:01:21 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="8hMCPdsiL4G0UuagEhorNgeF1BKSlO0F9" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 17:01:27 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --8hMCPdsiL4G0UuagEhorNgeF1BKSlO0F9 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 9/23/2015 9:37 AM, Warner Losh wrote: > I've been making a pass through the tree and found that >=20 > FOO.${MK_BAR}+=3D a b c >=20 > vs >=20 > .if ${MK_BAR} !=3D "no" > FOO+=3D a b c > .endif >=20 Ah I see. > simpler to understand. This commit is one small slice of that which I > could commit. These files have a high enough churn rate that I'm not > always able to keep up enough to push my changes. So this was part of > what I could do today to start to reduce my patch-set. >=20 > This was discussed on arch@freebsd.org a whil= e > ago. >=20 Sounds good, thanks. --=20 Regards, Bryan Drewery --8hMCPdsiL4G0UuagEhorNgeF1BKSlO0F9 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWAtrhAAoJEDXXcbtuRpfPACcH/1aLo7B6OC2DSEyn67NgGQUe VwF4iF+Pw+t6Ulcg+fCHVgrReO6nvN4112IYd1WDGF1H7X8PN7LnVVIE9M/5kluj fkffhRqhIxKph8LSn+/zVfbi+xiypmjP7Df96VJ+m8ww0vABsIZ1JuiSLhFjwd8F 92GBMoJUrNOaXjFDLmGYxF6nb7KVaos907NWvKeksIeT/3qCYRT4eVXg0761fvSb D8qemIUPleX6Be2iyW5GlEYZfej6ShkZVPysFeSxvFaoMr7wHlS6sM1t3whHzch0 daumqtEv3aoz/e4IsPxnyIc9uihbFqLwB/K76eh3bZIPmzWl+2gmOHlLtD2lYC4= =30G1 -----END PGP SIGNATURE----- --8hMCPdsiL4G0UuagEhorNgeF1BKSlO0F9-- From owner-svn-src-head@freebsd.org Wed Sep 23 17:02:16 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 43290A075E3; Wed, 23 Sep 2015 17:02:16 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 25D0C1503; Wed, 23 Sep 2015 17:02:16 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 19AA01A17; Wed, 23 Sep 2015 17:02:16 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id D9B1B13361; Wed, 23 Sep 2015 17:02:15 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id 8Dq03AJYlrm5; Wed, 23 Sep 2015 17:02:10 +0000 (UTC) Subject: Re: svn commit: r286995 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 497971335B To: Warner Losh References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5602DB13.2000202@FreeBSD.org> Date: Wed, 23 Sep 2015 10:02:11 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="JIRWlWAJMvTisCumawSwMO3sGWToflDiW" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 17:02:16 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --JIRWlWAJMvTisCumawSwMO3sGWToflDiW Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 9/23/2015 9:44 AM, Warner Losh wrote: >=20 >=20 > On Tue, Sep 22, 2015 at 10:07 PM, Bryan Drewery > wrote: >=20 > On 8/21/15 8:15 AM, Warner Losh wrote: > > Author: imp > > Date: Fri Aug 21 15:15:22 2015 > > New Revision: 286995 > > URL: https://svnweb.freebsd.org/changeset/base/286995 > > > > Log: > > Document bsd.progs.mk , including its > status as being strongly > > discouraged and that it will be going away as soon as is > practicable. > > > > Modified: > > head/share/mk/bsd.README >=20 > I find this functionality irreplaceable for simplicity. The alterna= tive > is more Makefiles for simple extra progs. Granted it has meta mode > dirdeps issues but I think that is acceptable as there are other wa= ys to > address that. >=20 > Where is this deprecation coming from? Is it just due to bapt's > in-progress (but not working) patch at https://reviews.freebsd.org/= D3444 > to remove bsd.progs.mk in place of PROGS in > bsd.prog.mk ? >=20 > I would like to document PROGS properly. I had no idea how it worke= d > until reading over it tonight. If the plan wasn't to remove PROGS i= tself > I will do so. >=20 >=20 > It doesn't work and has lots of issues. Those issues haven't been fixed= =2E > It didn't look like they would be fixed any time soon. It seemed there > was a consensus to deprecate it because of those issues. > bapt was part of that group, and his problems with packaging that > bsd.progs.mk creates played into this decision. >=20 > If the issues are fixed, then we can change our recommendations based > on the changed circumstance. >=20 > Warner Yes I think I've addressed the issues. I'm still testing and will have it committed soon. It is still fragile, but most of share/mk is. --=20 Regards, Bryan Drewery --JIRWlWAJMvTisCumawSwMO3sGWToflDiW Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWAtsTAAoJEDXXcbtuRpfPdG0H/R+8f6hN9Q+k/HFCngbMd8MG kqbXhvRv2W7WvI75ZzIv9fZKL72vj5VGnAX3Vz7ABWUb6tIR5aFgzfeqldTrPWzl jSGZW0IXtFnULXqWzy0NlmDLq/tYOULH5XBj7GdR7xZgf/2r9hqwwpSqXonZznEg b+sPKSdqSuUKN/9AunwwRQ4LLyBZAXY/O1iX445D9bwQfhKAEAjHbNPH2y7CvZIS 0aNG3HyQTWj0SmSA7JyVdZI7rouafa/0WEgpzTyx08s03rdpvGplGlAolfBVaNA/ 9zGSlPFX87umPc06RRpn+nOJbc/EB3NvBDs5siabhBExIVGBJSzKCvvQ6rahcFE= =kI3O -----END PGP SIGNATURE----- --JIRWlWAJMvTisCumawSwMO3sGWToflDiW-- From owner-svn-src-head@freebsd.org Wed Sep 23 18:18:23 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 60798A07AB3; Wed, 23 Sep 2015 18:18:23 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pa0-x229.google.com (mail-pa0-x229.google.com [IPv6:2607:f8b0:400e:c03::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 30F2F1C60; Wed, 23 Sep 2015 18:18:23 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by pacfv12 with SMTP id fv12so47851591pac.2; Wed, 23 Sep 2015 11:18:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=9ZsMVmzMl5buqFp5NKLsgmysMWWpg0J/qHZUIlLOqZk=; b=JkHMgkNTYqkG52kZArEzCjLKOprrkr2B3bmaiVSPlb5MMvk/RqI2DHO8VKDJMxDAJ3 9uVDUGvJhr82JBWiCE+paj28jWybiqU1yUaXnKe1iKPFQcl5//G7HWbmzDvMkVabSmmY 9EdcWXPgKgLfpxeGaoRLopm0T1hdKqWDWGug/uGD/6dmXdhyfjL/ddrRt6hslM3S+PHx r1bXVHyBxTQUZlwBrj6fD640pZQWmeC29eSV/jdmPbUw7jBO+XOOl0enPtmt4bL5YTS0 2dgaxB4CYOdlsNONr+HU4QAUKIJtmdZqrPcEJyTJ/ECJG95zr5i8iYjVO5BX6T7WjMie 1Hxw== X-Received: by 10.68.204.37 with SMTP id kv5mr34370298pbc.64.1443032302652; Wed, 23 Sep 2015 11:18:22 -0700 (PDT) Received: from ?IPv6:2601:601:800:126d:5925:dd87:4f43:d34d? ([2601:601:800:126d:5925:dd87:4f43:d34d]) by smtp.gmail.com with ESMTPSA id rz9sm9172121pbb.61.2015.09.23.11.18.21 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 23 Sep 2015 11:18:21 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r286995 - head/share/mk From: Garrett Cooper X-Mailer: iPhone Mail (12H321) In-Reply-To: <5602DB13.2000202@FreeBSD.org> Date: Wed, 23 Sep 2015 11:18:21 -0700 Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> <5602DB13.2000202@FreeBSD.org> To: Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 18:18:23 -0000 > On Sep 23, 2015, at 10:02, Bryan Drewery wrote: >=20 >> On 9/23/2015 9:44 AM, Warner Losh wrote: >>=20 >>=20 >> On Tue, Sep 22, 2015 at 10:07 PM, Bryan Drewery > > wrote: >>=20 >>> On 8/21/15 8:15 AM, Warner Losh wrote: >>> Author: imp >>> Date: Fri Aug 21 15:15:22 2015 >>> New Revision: 286995 >>> URL: https://svnweb.freebsd.org/changeset/base/286995 >>>=20 >>> Log: >>> Document bsd.progs.mk , including its >> status as being strongly >>> discouraged and that it will be going away as soon as is >> practicable. >>>=20 >>> Modified: >>> head/share/mk/bsd.README >>=20 >> I find this functionality irreplaceable for simplicity. The alternativ= e >> is more Makefiles for simple extra progs. Granted it has meta mode >> dirdeps issues but I think that is acceptable as there are other ways t= o >> address that. >>=20 >> Where is this deprecation coming from? Is it just due to bapt's >> in-progress (but not working) patch at https://reviews.freebsd.org/D34= 44 >> to remove bsd.progs.mk in place of PROGS in >> bsd.prog.mk ? >>=20 >> I would like to document PROGS properly. I had no idea how it worked >> until reading over it tonight. If the plan wasn't to remove PROGS itse= lf >> I will do so. >>=20 >>=20 >> It doesn't work and has lots of issues. Those issues haven't been fixed. >> It didn't look like they would be fixed any time soon. It seemed there >> was a consensus to deprecate it because of those issues. >> bapt was part of that group, and his problems with packaging that >> bsd.progs.mk creates played into this decision. >>=20 >> If the issues are fixed, then we can change our recommendations based >> on the changed circumstance. >>=20 >> Warner >=20 > Yes I think I've addressed the issues. I'm still testing and will have > it committed soon. It is still fragile, but most of share/mk is. I know you've been playing with meta mode a lot. Have you tried building wit= h non-meta mode, with MK_TESTS=3Dyes, then run he following steps as root af= ter a successful installworld? NOTE: wipe out /usr/tests before running installworld to ensure the files th= at are present there aren't from previous runs cd /usr/tests kyua test Please add me to the CR. Thanks, -NGie= From owner-svn-src-head@freebsd.org Wed Sep 23 18:20:14 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6EC53A07C6A; Wed, 23 Sep 2015 18:20:14 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 5421D1E8C; Wed, 23 Sep 2015 18:20:14 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 4CDD41B60; Wed, 23 Sep 2015 18:20:14 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 0B74C134E5; Wed, 23 Sep 2015 18:20:14 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id vWtKpWNSs7bQ; Wed, 23 Sep 2015 18:20:08 +0000 (UTC) Subject: Re: svn commit: r286995 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 55CBB134E0 To: Garrett Cooper References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> <5602DB13.2000202@FreeBSD.org> Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5602ED53.3070204@FreeBSD.org> Date: Wed, 23 Sep 2015 11:20:03 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="FxUDJVsnN4baI1vcvG2UWx3wCnTciTscf" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 18:20:14 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --FxUDJVsnN4baI1vcvG2UWx3wCnTciTscf Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 9/23/2015 11:18 AM, Garrett Cooper wrote: >=20 >> On Sep 23, 2015, at 10:02, Bryan Drewery wrote:= >> >>> On 9/23/2015 9:44 AM, Warner Losh wrote: >>> >>> >>> On Tue, Sep 22, 2015 at 10:07 PM, Bryan Drewery >> > wrote: >>> >>>> On 8/21/15 8:15 AM, Warner Losh wrote: >>>> Author: imp >>>> Date: Fri Aug 21 15:15:22 2015 >>>> New Revision: 286995 >>>> URL: https://svnweb.freebsd.org/changeset/base/286995 >>>> >>>> Log: >>>> Document bsd.progs.mk , including its >>> status as being strongly >>>> discouraged and that it will be going away as soon as is >>> practicable. >>>> >>>> Modified: >>>> head/share/mk/bsd.README >>> >>> I find this functionality irreplaceable for simplicity. The altern= ative >>> is more Makefiles for simple extra progs. Granted it has meta mode= >>> dirdeps issues but I think that is acceptable as there are other w= ays to >>> address that. >>> >>> Where is this deprecation coming from? Is it just due to bapt's >>> in-progress (but not working) patch at https://reviews.freebsd.org= /D3444 >>> to remove bsd.progs.mk in place of PROGS in >>> bsd.prog.mk ? >>> >>> I would like to document PROGS properly. I had no idea how it work= ed >>> until reading over it tonight. If the plan wasn't to remove PROGS = itself >>> I will do so. >>> >>> >>> It doesn't work and has lots of issues. Those issues haven't been fix= ed. >>> It didn't look like they would be fixed any time soon. It seemed ther= e >>> was a consensus to deprecate it because of those issues. >>> bapt was part of that group, and his problems with packaging that >>> bsd.progs.mk creates played into this decision.= >>> >>> If the issues are fixed, then we can change our recommendations based= >>> on the changed circumstance. >>> >>> Warner >> >> Yes I think I've addressed the issues. I'm still testing and will have= >> it committed soon. It is still fragile, but most of share/mk is. >=20 > I know you've been playing with meta mode a lot. Have you tried buildin= g with non-meta mode, with MK_TESTS=3Dyes, then run he following steps as= root after a successful installworld? >=20 I'm only doing this in non-meta mode right now. > NOTE: wipe out /usr/tests before running installworld to ensure the fil= es that are present there aren't from previous runs >=20 > cd /usr/tests > kyua test >=20 I am comparing full objtree and destdir from before/after the change, including a 'make clean' comparison. There's no room for missing anything= =2E > Please add me to the CR. >=20 > Thanks, > -NGie >=20 --=20 Regards, Bryan Drewery --FxUDJVsnN4baI1vcvG2UWx3wCnTciTscf Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWAu1UAAoJEDXXcbtuRpfPgp4IAKWn05v4r3TA1RlQ4Msn91US xpnE6TSACVRin5yV3qbmAlnu9+5kth6d+7UQMn5t4CmSG/utXdbVXmDImFVQltGW jVQOxsYu6Y0PC6FvSo6KW2Wu4wv2zFBHFY/94L2FB46v/69WRWqY883jbxuAQ2D2 aK0yj/NZyeahQtPRsb8oBNltQN8MaDiP7wQ6iUq6H8aRYK2JKePsin+b5nCGHunD i/cTu0VxoHOvQ0tDI4A4opNDxzNiefLWgiNDwOINcDC1qRsyZobcqYFCJTeky3eW u2j9v7AWnrC2thV9MLaHEZVu9PZkhi+i/X65kFkDNFNnQsiMPiMpg9I60XM3iqw= =YD/j -----END PGP SIGNATURE----- --FxUDJVsnN4baI1vcvG2UWx3wCnTciTscf-- From owner-svn-src-head@freebsd.org Wed Sep 23 18:33:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 29CACA06290; Wed, 23 Sep 2015 18:33:02 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1B1E4190D; Wed, 23 Sep 2015 18:33:02 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NIX1Oj073284; Wed, 23 Sep 2015 18:33:01 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NIX1TJ073281; Wed, 23 Sep 2015 18:33:01 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509231833.t8NIX1TJ073281@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 23 Sep 2015 18:33:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288148 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 18:33:02 -0000 Author: mav Date: Wed Sep 23 18:33:00 2015 New Revision: 288148 URL: https://svnweb.freebsd.org/changeset/base/288148 Log: Synchronize mode pages between HA peers. We allow to modify only few fields in mode pages now, but still it is not good if they unexpectedly change during failover. Also this fixes reporting of "Mode parameters changed" UAs on secondary node. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl.h head/sys/cam/ctl/ctl_io.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Wed Sep 23 16:16:16 2015 (r288147) +++ head/sys/cam/ctl/ctl.c Wed Sep 23 18:33:00 2015 (r288148) @@ -611,6 +611,14 @@ alloc: ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg->port, sizeof(msg->port) + i, M_WAITOK); free(msg, M_CTL); + + if (lun->flags & CTL_LUN_PRIMARY_SC) { + for (i = 0; i < CTL_NUM_MODE_PAGES; i++) { + ctl_isc_announce_mode(lun, -1, + lun->mode_pages.index[i].page_code & SMPH_PC_MASK, + lun->mode_pages.index[i].subpage); + } + } } void @@ -710,6 +718,38 @@ ctl_isc_announce_iid(struct ctl_port *po free(msg, M_CTL); } +void +ctl_isc_announce_mode(struct ctl_lun *lun, uint32_t initidx, + uint8_t page, uint8_t subpage) +{ + struct ctl_softc *softc = lun->ctl_softc; + union ctl_ha_msg msg; + int i; + + if (softc->ha_link != CTL_HA_LINK_ONLINE) + return; + for (i = 0; i < CTL_NUM_MODE_PAGES; i++) { + if ((lun->mode_pages.index[i].page_code & SMPH_PC_MASK) == + page && lun->mode_pages.index[i].subpage == subpage) + break; + } + if (i == CTL_NUM_MODE_PAGES) + return; + bzero(&msg.mode, sizeof(msg.mode)); + msg.hdr.msg_type = CTL_MSG_MODE_SYNC; + msg.hdr.nexus.targ_port = initidx / CTL_MAX_INIT_PER_PORT; + msg.hdr.nexus.initid = initidx % CTL_MAX_INIT_PER_PORT; + msg.hdr.nexus.targ_lun = lun->lun; + msg.hdr.nexus.targ_mapped_lun = lun->lun; + msg.mode.page_code = page; + msg.mode.subpage = subpage; + msg.mode.page_len = lun->mode_pages.index[i].page_len; + memcpy(msg.mode.data, lun->mode_pages.index[i].page_data, + msg.mode.page_len); + ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg.mode, sizeof(msg.mode), + M_WAITOK); +} + static void ctl_isc_ha_link_up(struct ctl_softc *softc) { @@ -1041,6 +1081,44 @@ ctl_isc_login(struct ctl_softc *softc, u } } +static void +ctl_isc_mode_sync(struct ctl_softc *softc, union ctl_ha_msg *msg, int len) +{ + struct ctl_lun *lun; + int i; + uint32_t initidx, targ_lun; + + targ_lun = msg->hdr.nexus.targ_mapped_lun; + mtx_lock(&softc->ctl_lock); + if ((targ_lun >= CTL_MAX_LUNS) || + ((lun = softc->ctl_luns[targ_lun]) == NULL)) { + mtx_unlock(&softc->ctl_lock); + return; + } + mtx_lock(&lun->lun_lock); + mtx_unlock(&softc->ctl_lock); + if (lun->flags & CTL_LUN_DISABLED) { + mtx_unlock(&lun->lun_lock); + return; + } + for (i = 0; i < CTL_NUM_MODE_PAGES; i++) { + if ((lun->mode_pages.index[i].page_code & SMPH_PC_MASK) == + msg->mode.page_code && + lun->mode_pages.index[i].subpage == msg->mode.subpage) + break; + } + if (i == CTL_NUM_MODE_PAGES) { + mtx_unlock(&lun->lun_lock); + return; + } + memcpy(lun->mode_pages.index[i].page_data, msg->mode.data, + lun->mode_pages.index[i].page_len); + initidx = ctl_get_initindex(&msg->hdr.nexus); + if (initidx != -1) + ctl_est_ua_all(lun, initidx, CTL_UA_MODE_CHANGE); + mtx_unlock(&lun->lun_lock); +} + /* * ISC (Inter Shelf Communication) event handler. Events from the HA * subsystem come in here. @@ -1320,6 +1398,9 @@ ctl_isc_event_handler(ctl_ha_channel cha case CTL_MSG_LOGIN: ctl_isc_login(softc, msg, param); break; + case CTL_MSG_MODE_SYNC: + ctl_isc_mode_sync(softc, msg, param); + break; default: printf("Received HA message of unknown type %d\n", msg->hdr.msg_type); @@ -5952,7 +6033,11 @@ ctl_control_page_handler(struct ctl_scsi if (set_ua != 0) ctl_est_ua_all(lun, initidx, CTL_UA_MODE_CHANGE); mtx_unlock(&lun->lun_lock); - + if (set_ua) { + ctl_isc_announce_mode(lun, + ctl_get_initindex(&ctsio->io_hdr.nexus), + page_index->page_code, page_index->subpage); + } return (0); } @@ -5989,7 +6074,11 @@ ctl_caching_sp_handler(struct ctl_scsiio if (set_ua != 0) ctl_est_ua_all(lun, initidx, CTL_UA_MODE_CHANGE); mtx_unlock(&lun->lun_lock); - + if (set_ua) { + ctl_isc_announce_mode(lun, + ctl_get_initindex(&ctsio->io_hdr.nexus), + page_index->page_code, page_index->subpage); + } return (0); } Modified: head/sys/cam/ctl/ctl.h ============================================================================== --- head/sys/cam/ctl/ctl.h Wed Sep 23 16:16:16 2015 (r288147) +++ head/sys/cam/ctl/ctl.h Wed Sep 23 18:33:00 2015 (r288148) @@ -193,6 +193,8 @@ void ctl_clr_ua_allluns(struct ctl_softc void ctl_isc_announce_lun(struct ctl_lun *lun); void ctl_isc_announce_port(struct ctl_port *port); void ctl_isc_announce_iid(struct ctl_port *port, int iid); +void ctl_isc_announce_mode(struct ctl_lun *lun, uint32_t initidx, + uint8_t page, uint8_t subpage); /* * KPI to manipulate LUN/port options Modified: head/sys/cam/ctl/ctl_io.h ============================================================================== --- head/sys/cam/ctl/ctl_io.h Wed Sep 23 16:16:16 2015 (r288147) +++ head/sys/cam/ctl/ctl_io.h Wed Sep 23 18:33:00 2015 (r288148) @@ -198,6 +198,7 @@ typedef enum { CTL_MSG_LUN_SYNC, /* Information about LUN. */ CTL_MSG_IID_SYNC, /* Information about initiator. */ CTL_MSG_LOGIN, /* Information about HA peer. */ + CTL_MSG_MODE_SYNC, /* Mode page current content. */ CTL_MSG_FAILOVER /* Fake, never sent though the wire */ } ctl_msg_type; @@ -533,6 +534,17 @@ struct ctl_ha_msg_iid { uint8_t data[]; }; +/* + * Used for CTL_MSG_MODE_SYNC. + */ +struct ctl_ha_msg_mode { + struct ctl_ha_msg_hdr hdr; + uint8_t page_code; + uint8_t subpage; + uint16_t page_len; + uint8_t data[]; +}; + union ctl_ha_msg { struct ctl_ha_msg_hdr hdr; struct ctl_ha_msg_task task; @@ -544,6 +556,7 @@ union ctl_ha_msg { struct ctl_ha_msg_lun lun; struct ctl_ha_msg_iid iid; struct ctl_ha_msg_login login; + struct ctl_ha_msg_mode mode; }; struct ctl_prio { From owner-svn-src-head@freebsd.org Wed Sep 23 18:41:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5F737A067D2; Wed, 23 Sep 2015 18:41:05 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pa0-x22e.google.com (mail-pa0-x22e.google.com [IPv6:2607:f8b0:400e:c03::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2CDD91FE4; Wed, 23 Sep 2015 18:41:05 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by pacfv12 with SMTP id fv12so48356979pac.2; Wed, 23 Sep 2015 11:41:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=jj5gmBB2E4J10G7cxdZ+8RnzdCR0I082aLovkebyHCI=; b=HuQt+QcoarOXTcUs12aHhhiWcjFWpK0Y7ZCNRg85w4wDpIli4C6qutqw0pza1Y8EZn nJWeQor+ePcSIn0vI9S+REepzwJ4e2M8AuSGDaYziRRx5gni23Pih1Q5Puvyk67YBLK3 hhHWtmb8777MfoDz+aahdhfyWM7dgMtOOLy++KeJqUVX6AKX3CGrGn6e0daumqphVuVu h4FOI6Qw9soDMDdQAFBvlREI2/ou8jSttzAv3oCp87tmVj3ls0urXQF5gs973sVqDzcz Kfud6/2AgP/7XeQU1T3bo6K+JKo045e1GTSKgDHdLuPw7PB0KKWU3D0s+g44+0UUOgHL CRyw== X-Received: by 10.68.239.69 with SMTP id vq5mr38445793pbc.111.1443033664684; Wed, 23 Sep 2015 11:41:04 -0700 (PDT) Received: from ?IPv6:2601:601:800:126d:b44c:40d7:7116:7e7d? ([2601:601:800:126d:b44c:40d7:7116:7e7d]) by smtp.gmail.com with ESMTPSA id hx2sm9227624pbc.67.2015.09.23.11.41.04 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 23 Sep 2015 11:41:04 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r286995 - head/share/mk From: Garrett Cooper X-Mailer: iPhone Mail (12H321) In-Reply-To: <5602ED53.3070204@FreeBSD.org> Date: Wed, 23 Sep 2015 11:41:03 -0700 Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> <5602DB13.2000202@FreeBSD.org> <5602ED53.3070204@FreeBSD.org> To: Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 18:41:05 -0000 > On Sep 23, 2015, at 11:20, Bryan Drewery wrote: ... >> NOTE: wipe out /usr/tests before running installworld to ensure the files= that are present there aren't from previous runs >>=20 >> cd /usr/tests >> kyua test >=20 > I am comparing full objtree and destdir from before/after the change, > including a 'make clean' comparison. There's no room for missing anything.= make install[world] is where I and others have run into failures in the past= . Please be sure to test this out. If you move /usr/tests off to another directory, you could run diff -Narq as= well (which will be faster than kyua test as far as finding potential issue= s are concerned with missing files).= From owner-svn-src-head@freebsd.org Wed Sep 23 18:42:19 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A0DD5A06954; Wed, 23 Sep 2015 18:42:19 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 85E2611EA; Wed, 23 Sep 2015 18:42:19 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 7F5D413D9; Wed, 23 Sep 2015 18:42:19 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 37D3613552; Wed, 23 Sep 2015 18:42:19 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id QhY-PJjE8qmo; Wed, 23 Sep 2015 18:42:17 +0000 (UTC) Subject: Re: svn commit: r286995 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 948971354D To: Garrett Cooper References: <201508211515.t7LFFM0U028322@repo.freebsd.org> <56023395.2080904@FreeBSD.org> <5602DB13.2000202@FreeBSD.org> <5602ED53.3070204@FreeBSD.org> Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5602F289.20009@FreeBSD.org> Date: Wed, 23 Sep 2015 11:42:17 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="7t4BpwLilTcFuS8OVqmoqqSC5vnuPQkND" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 18:42:19 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --7t4BpwLilTcFuS8OVqmoqqSC5vnuPQkND Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 9/23/2015 11:41 AM, Garrett Cooper wrote: >=20 >> On Sep 23, 2015, at 11:20, Bryan Drewery wrote:= >=20 > ... >=20 >>> NOTE: wipe out /usr/tests before running installworld to ensure the f= iles that are present there aren't from previous runs >>> >>> cd /usr/tests >>> kyua test >> >> I am comparing full objtree and destdir from before/after the change, >> including a 'make clean' comparison. There's no room for missing anyth= ing. >=20 > make install[world] is where I and others have run into failures in the= past. Please be sure to test this out. >=20 This is what I mean by 'destdir' comparison. Installworld. > If you move /usr/tests off to another directory, you could run diff -Na= rq as well (which will be faster than kyua test as far as finding potenti= al issues are concerned with missing files). >=20 --=20 Regards, Bryan Drewery --7t4BpwLilTcFuS8OVqmoqqSC5vnuPQkND Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWAvKJAAoJEDXXcbtuRpfP5Y4IAK5zMRY/L39vNnLljeHzd+6Q jR8FxaUaad8AmtmKGK4hgiiIji9664ZtkGFaTI7/NkwzB//hb/NadwpbL0vLB+Xz q8te1PWzXyvJl8rhocs7Mngq2G4qI/GOxJ7ROTvBTAK/c61P72QlWKwgc9RKJsEz NqA8N/Ts2FhfASG5UA3Z8QStdyhLbdsS0QRSzcOFjSPl01N5SPOcjwM6qGhwCLV/ PTQ2DbmaKS5Evbek7ubyqW7gdFeTP82bCXcPY09OdvsAq30oNTP3lie3chOrPklb fsnkC7XorjgyATQbzjvJ1wJ4m5+jcYO6axYdXZhzYT9E2TGlPXQPgEP+uhBSNRA= =4pOr -----END PGP SIGNATURE----- --7t4BpwLilTcFuS8OVqmoqqSC5vnuPQkND-- From owner-svn-src-head@freebsd.org Wed Sep 23 19:30:47 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 936C7A080AE; Wed, 23 Sep 2015 19:30:47 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6B8631F5D; Wed, 23 Sep 2015 19:30:47 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NJUl9Y094692; Wed, 23 Sep 2015 19:30:47 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NJUlBE094691; Wed, 23 Sep 2015 19:30:47 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509231930.t8NJUlBE094691@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 23 Sep 2015 19:30:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288151 - head/contrib/llvm/projects X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 19:30:47 -0000 Author: emaste Date: Wed Sep 23 19:30:46 2015 New Revision: 288151 URL: https://svnweb.freebsd.org/changeset/base/288151 Log: Bring LLVM libunwind snapshot into contrib/llvm/projects Added: head/contrib/llvm/projects/ - copied from r288150, vendor/llvm-libunwind/dist/ Directory Properties: head/contrib/llvm/projects/libunwind/ (props changed) From owner-svn-src-head@freebsd.org Wed Sep 23 20:46:24 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 62D6DA07C4C; Wed, 23 Sep 2015 20:46:24 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5493A1B1B; Wed, 23 Sep 2015 20:46:24 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NKkOiK029627; Wed, 23 Sep 2015 20:46:24 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NKkOSP029626; Wed, 23 Sep 2015 20:46:24 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232046.t8NKkOSP029626@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 20:46:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288152 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 20:46:24 -0000 Author: bdrewery Date: Wed Sep 23 20:46:23 2015 New Revision: 288152 URL: https://svnweb.freebsd.org/changeset/base/288152 Log: META_MODE: Follow-up r287879 and have 'make -V .OBJDIR' still invoke auto.obj.mk. When inspecting this value it is more expected to have it show the automatically-created directory value rather than CURDIR. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/sys.mk Modified: head/share/mk/sys.mk ============================================================================== --- head/share/mk/sys.mk Wed Sep 23 19:30:46 2015 (r288151) +++ head/share/mk/sys.mk Wed Sep 23 20:46:23 2015 (r288152) @@ -52,8 +52,11 @@ __ENV_ONLY_OPTIONS:= \ .endif .if ${MK_AUTO_OBJ} == "yes" # This needs to be done early - before .PATH is computed -# Don't do this if just running 'make -V' or 'make showconfig' -.if ${.MAKEFLAGS:M-V} == "" && !make(showconfig) +# Don't do this if just running 'make -V' (but do when inspecting .OBJDIR) or +# 'make showconfig' (during makeman which enables all options when meta mode +# is not expected) +.if (${.MAKEFLAGS:M-V} == "" || ${.MAKEFLAGS:M.OBJDIR} != "") && \ + !make(showconfig) .sinclude .endif .endif From owner-svn-src-head@freebsd.org Wed Sep 23 21:08:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4F4D6A085BC; Wed, 23 Sep 2015 21:08:53 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 411EE1882; Wed, 23 Sep 2015 21:08:53 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NL8rZc041894; Wed, 23 Sep 2015 21:08:53 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NL8rac041893; Wed, 23 Sep 2015 21:08:53 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201509232108.t8NL8rac041893@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: "Conrad E. Meyer" Date: Wed, 23 Sep 2015 21:08:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288153 - head/sys/geom X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 21:08:53 -0000 Author: cem Date: Wed Sep 23 21:08:52 2015 New Revision: 288153 URL: https://svnweb.freebsd.org/changeset/base/288153 Log: geom_dev: Use kenv 'dumpdev' in the same way as rc/etc.d/dumpon Skip a /dev/ prefix, if one is present, when checking for matching device names for dump. Suggested by: avg Reviewed by: markj Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3725 Modified: head/sys/geom/geom_dev.c Modified: head/sys/geom/geom_dev.c ============================================================================== --- head/sys/geom/geom_dev.c Wed Sep 23 20:46:23 2015 (r288152) +++ head/sys/geom/geom_dev.c Wed Sep 23 21:08:52 2015 (r288153) @@ -124,6 +124,7 @@ g_dev_fini(struct g_class *mp) { freeenv(dumpdev); + dumpdev = NULL; } static int @@ -152,10 +153,16 @@ g_dev_setdumpdev(struct cdev *dev, struc static void init_dumpdev(struct cdev *dev) { + const char *devprefix = "/dev/", *devname; + size_t len; if (dumpdev == NULL) return; - if (strcmp(devtoname(dev), dumpdev) != 0) + len = strlen(devprefix); + devname = devtoname(dev); + if (strcmp(devname, dumpdev) != 0 && + (strncmp(dumpdev, devprefix, len) != 0 || + strcmp(devname, dumpdev + len) != 0)) return; if (g_dev_setdumpdev(dev, curthread) == 0) { freeenv(dumpdev); From owner-svn-src-head@freebsd.org Wed Sep 23 21:35:59 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9FE75A07313; Wed, 23 Sep 2015 21:35:59 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 910CA1C02; Wed, 23 Sep 2015 21:35:59 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NLZxlR053993; Wed, 23 Sep 2015 21:35:59 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NLZxOK053992; Wed, 23 Sep 2015 21:35:59 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232135.t8NLZxOK053992@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 21:35:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288154 - head/usr.bin/bmake X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 21:35:59 -0000 Author: bdrewery Date: Wed Sep 23 21:35:58 2015 New Revision: 288154 URL: https://svnweb.freebsd.org/changeset/base/288154 Log: Similar to r266147, don't define PROG in the test subdirs. Magic things happen when including bsd.prog.mk in them. Sponsored by: EMC / Isilon Storage Division Modified: head/usr.bin/bmake/Makefile.inc Modified: head/usr.bin/bmake/Makefile.inc ============================================================================== --- head/usr.bin/bmake/Makefile.inc Wed Sep 23 21:08:52 2015 (r288153) +++ head/usr.bin/bmake/Makefile.inc Wed Sep 23 21:35:58 2015 (r288154) @@ -7,7 +7,9 @@ .export SRCTOP .endif +.if exists(${.CURDIR}/tests) PROG= make +.endif .if !defined(MK_SHARED_TOOLCHAIN) || ${MK_SHARED_TOOLCHAIN} == "no" NO_SHARED?= YES From owner-svn-src-head@freebsd.org Wed Sep 23 21:46:59 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2DAC3A0798F; Wed, 23 Sep 2015 21:46:59 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1EDCA1238; Wed, 23 Sep 2015 21:46:59 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NLkwfj058112; Wed, 23 Sep 2015 21:46:58 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NLkwxb058111; Wed, 23 Sep 2015 21:46:58 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232146.t8NLkwxb058111@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 21:46:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288155 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 21:46:59 -0000 Author: bdrewery Date: Wed Sep 23 21:46:58 2015 New Revision: 288155 URL: https://svnweb.freebsd.org/changeset/base/288155 Log: META_MODE: Follow-up r287865 and define CCACHE_DIR as realpath'd. Filemon(4) will record paths as they are seen, not as fully resolved. make(1) will take the .MAKE.META.IGNORE_PATHS values and resolve them. This creates a discrepancy if CCACHE_DIR is a symlink. Fix this by ensuring it is resolved for its actual usage. Submitted by: sjg Modified: head/share/mk/local.meta.sys.mk Modified: head/share/mk/local.meta.sys.mk ============================================================================== --- head/share/mk/local.meta.sys.mk Wed Sep 23 21:35:58 2015 (r288154) +++ head/share/mk/local.meta.sys.mk Wed Sep 23 21:46:58 2015 (r288155) @@ -193,7 +193,9 @@ UPDATE_DEPENDFILE= NO .MAKE.META.BAILIWICK = ${SB} ${OBJROOT} ${STAGE_ROOT} .if defined(CCACHE_DIR) +CCACHE_DIR := ${CCACHE_DIR:tA} .MAKE.META.IGNORE_PATHS += ${CCACHE_DIR} +.export CCACHE_DIR .endif CSU_DIR.${MACHINE_ARCH} ?= csu/${MACHINE_ARCH} From owner-svn-src-head@freebsd.org Wed Sep 23 22:24:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D342A06CE3; Wed, 23 Sep 2015 22:24:00 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2830A1842; Wed, 23 Sep 2015 22:24:00 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NMO0ce074402; Wed, 23 Sep 2015 22:24:00 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NMO0WG074399; Wed, 23 Sep 2015 22:24:00 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232224.t8NMO0WG074399@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 22:24:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288156 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 22:24:00 -0000 Author: bdrewery Date: Wed Sep 23 22:23:59 2015 New Revision: 288156 URL: https://svnweb.freebsd.org/changeset/base/288156 Log: META_MODE: Avoid // in meta log for tracked --sysroot files. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/local.meta.sys.mk Modified: head/share/mk/local.meta.sys.mk ============================================================================== --- head/share/mk/local.meta.sys.mk Wed Sep 23 21:46:58 2015 (r288155) +++ head/share/mk/local.meta.sys.mk Wed Sep 23 22:23:59 2015 (r288156) @@ -165,7 +165,7 @@ STAGE_SYMLINKS_DIR= ${STAGE_OBJTOP} LDFLAGS_LAST+= -Wl,-rpath-link -Wl,${STAGE_LIBDIR} .if ${MK_SYSROOT} == "yes" -SYSROOT?= ${STAGE_OBJTOP}/ +SYSROOT?= ${STAGE_OBJTOP} .else LDFLAGS_LAST+= -L${STAGE_LIBDIR} .endif From owner-svn-src-head@freebsd.org Wed Sep 23 22:36:02 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 858B1A072CF; Wed, 23 Sep 2015 22:36:02 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 766221E5E; Wed, 23 Sep 2015 22:36:02 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NMa2dR078672; Wed, 23 Sep 2015 22:36:02 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NMa2Th078671; Wed, 23 Sep 2015 22:36:02 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232236.t8NMa2Th078671@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 22:36:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288157 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 22:36:02 -0000 Author: bdrewery Date: Wed Sep 23 22:36:01 2015 New Revision: 288157 URL: https://svnweb.freebsd.org/changeset/base/288157 Log: META_MODE: Fix 2nd build causing everything to rebuild due to changed CC. In the first build the TOOLSDIR does not exit yet which causes CC to default to the sys.mk version. Once a TOOLSDIR is created during the build though, this logic was changing CC to ${TOOLSDIR}/usr/bin/cc even though that file did not exist. Thus CC went from 'cc' to '/usr/bin/cc' which forced a rebuild of everything while using the same compiler. Check that TOOLSDIR is not empty to avoid this. If there is actually a TOOLSDIR cc then it will be used and properly rebuild. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/local.meta.sys.mk Modified: head/share/mk/local.meta.sys.mk ============================================================================== --- head/share/mk/local.meta.sys.mk Wed Sep 23 22:23:59 2015 (r288156) +++ head/share/mk/local.meta.sys.mk Wed Sep 23 22:36:01 2015 (r288157) @@ -214,6 +214,7 @@ TOOLSDIR?= ${HOST_OBJTOP}/tools .elif defined(STAGE_HOST_OBJTOP) && exists(${STAGE_HOST_OBJTOP}/usr/bin) TOOLSDIR?= ${STAGE_HOST_OBJTOP} .endif +.if !empty(TOOLSDIR) .if ${.MAKE.LEVEL} == 0 && exists(${TOOLSDIR}/usr/bin) PATH:= ${PATH:S,:, ,g:@d@${exists(${TOOLSDIR}$d):?${TOOLSDIR}$d:}@:ts:}:${PATH} .export PATH @@ -224,6 +225,7 @@ CXX?= ${TOOLSDIR}/usr/bin/c++ .export HOST_CC CC CXX .endif .endif +.endif .if ${MACHINE:Nhost:Ncommon} != "" && ${MACHINE} != ${HOST_MACHINE} # cross-building From owner-svn-src-head@freebsd.org Wed Sep 23 23:20:51 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 273E1A08709; Wed, 23 Sep 2015 23:20:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 16A221487; Wed, 23 Sep 2015 23:20:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NNKo6s096200; Wed, 23 Sep 2015 23:20:50 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NNKoGs096197; Wed, 23 Sep 2015 23:20:50 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232320.t8NNKoGs096197@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 23:20:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288158 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 23:20:51 -0000 Author: bdrewery Date: Wed Sep 23 23:20:49 2015 New Revision: 288158 URL: https://svnweb.freebsd.org/changeset/base/288158 Log: Fix most cases of bsd.progs.mk running duplicate or missing commands. This mostly fixes an interaction with bsd.test.mk with PROGS and SCRIPTS. This was most notable with 'make clean' and 'make install', which r281055 and r272055 attempted to address but were inadequate. It also addresses similar issues in bsd.progs.mk when not using bsd.test.mk. This also fixes cases of NOT running commands in the parent when using bsd.progs.mk: - 'make clean' was not run for the main process for Makefiles which had both FILES and SUBDIR but no PROGS or SCRIPTS. This usually was just a leftover Kyuafile.auto. One such example is usr.bin/bmake/tests/sysmk/t1/2. - 'make obj' was not running in the current directory with bsd.test.mk due to early inclusion of bsd.subdir.mk. This was not really a problem due to the SUBDIRS using 'mkdir -p' for their objdirs. There were subtle bugs causing this wrong behavior: 1. bsd.progs.mk needs to set SCRIPTS to empty when recursing to avoid the sub-makes from installing, cleaning or building the SCRIPTS; only the parent make should be doing this. r281055 effectively did the same but wasn't enough. 2. CLEANFILES may contain (especially from *.test.mk) files which only the parent should clean, such as from FILES and SCRIPTS. To resolve sub-makes also cleaning these, reset CLEANFILES and CLEANDIRS in the children before including bsd.prog.mk. A tempting alternative would be to only handle CLEANFILES in the parent but then the child bsd.prog.mk CLEANFILES of per-PROGS wouldn't be setup. 3. bsd.subdir.mk was included too soon in bsd.test.mk. It needs to be included after bsd.prog.mk as the SCRIPTS logic is short-circuitted if 'install:' is already defined (which bsd.subdir.mk does). There is actually no need to include bsd.subdir.mk from bsd.test.mk as bsd.prog.mk and bsd.obj.mk will do so in the proper order. The description in r257095 covers this for FILES and was fixed differently, though changing the handling of target(install) in bsd.prog.mk may make sense after more research. 4. bsd.progs.mk had extra logic to handle recursing SCRIPTS if PROGS was empty, which isn't its business to be doing. SCRIPTS is handled fine by bsd.prog.mk. This mostly reverts and reworks the fix in r259209 and partially reverts r272055. 5. bsd.progs.mk has no need to depend 'all:' on SCRIPTS and FILES. These are handled by bsd.prog.mk/bsd.files.mk fine. This also partially reverts r272055. 6. bsd.progs.mk was not drop-in safe for bsd.prog.mk. Move the PROGS check from r273186 to allow it to be used safely. Specific tested cases: SCRIPTS:no PROGS:no FILES:yes SUBDIR:yes usr.bin/bmake/tests/sysmk/t1/2 SCRIPTS:yes PROGS:no FILES:yes SUBDIR:no usr.bin/bmake/tests/sysmk/t1/2/1 SCRIPTS:yes PROGS:yes FILES:yes SUBDIR:yes lib/libthr/tests SCRIPTS:yes PROGS:no FILES:yes SUBDIR:no usr.bin/yacc/tests libexec/atf/atf-sh/tests A full buildworld/installworld/clean comparison with mtree was also done. The only relevant difference was the new fixed behavior of removing Kyuafile.auto from the objdir in 'clean'. Converting SCRIPTS to be a special case FILES group will make this less fragile and is being explored. One known remaining issue is 'cleandepend' removing the tags files for every recursive call. Note that the 'make clean' command runs for the CURDIR last, which can make it appear to run multiple times when cleaning in tests/, but each command is for a SUBDIR returning up the chain. This is purely bsd.subdir.mk behavior. PR: 191055 PR: 191955 MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.prog.mk head/share/mk/bsd.progs.mk head/share/mk/bsd.test.mk Modified: head/share/mk/bsd.prog.mk ============================================================================== --- head/share/mk/bsd.prog.mk Wed Sep 23 22:36:01 2015 (r288157) +++ head/share/mk/bsd.prog.mk Wed Sep 23 23:20:49 2015 (r288158) @@ -258,7 +258,7 @@ realinstall: _maninstall .ORDER: beforeinstall _maninstall .endif -.endif +.endif # !target(install) .if !target(lint) lint: ${SRCS:M*.c} Modified: head/share/mk/bsd.progs.mk ============================================================================== --- head/share/mk/bsd.progs.mk Wed Sep 23 22:36:01 2015 (r288157) +++ head/share/mk/bsd.progs.mk Wed Sep 23 23:20:49 2015 (r288158) @@ -60,25 +60,27 @@ UPDATE_DEPENDFILE ?= NO # prog.mk will do the rest .else -all: ${FILES} ${PROGS} ${SCRIPTS} +all: ${PROGS} # We cannot capture dependencies for meta mode here UPDATE_DEPENDFILE = NO # nor can we safely run in parallel. .NOTPARALLEL: .endif -.endif +.endif # PROGS || PROGS_CXX -# The non-recursive call to bsd.progs.mk will handle FILES; NUL out -# FILESGROUPS so recursive calls don't duplicate the work +# These are handled by the main make process. .ifdef _RECURSING_PROGS -FILESGROUPS= +_PROGS_GLOBAL_VARS= CLEANFILES CLEANDIRS FILESGROUPS SCRIPTS +.for v in ${_PROGS_GLOBAL_VARS} +$v = +.endfor .endif # handle being called [bsd.]progs.mk .include -.ifndef _RECURSING_PROGS +.if !empty(PROGS) && !defined(_RECURSING_PROGS) # tell progs.mk we might want to install things PROGS_TARGETS+= checkdpadd clean cleandepend cleandir cleanobj depend install @@ -88,12 +90,14 @@ PROGS_TARGETS+= checkdpadd clean cleande x.$p= PROG_CXX=$p .endif +# Main PROG target $p ${p}_p: .PHONY .MAKE (cd ${.CURDIR} && \ DEPENDFILE=.depend.$p \ ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \ SUBDIR= PROG=$p ${x.$p}) +# Pseudo targets for PROG, such as 'install'. .for t in ${PROGS_TARGETS:O:u} $p.$t: .PHONY .MAKE (cd ${.CURDIR} && \ @@ -103,21 +107,8 @@ $p.$t: .PHONY .MAKE .endfor .endfor -.if !empty(PROGS) +# Depend main pseudo targets on all PROG.pseudo targets too. .for t in ${PROGS_TARGETS:O:u} $t: ${PROGS:%=%.$t} .endfor .endif - -.if empty(PROGS) && !empty(SCRIPTS) - -.for t in ${PROGS_TARGETS:O:u} -scripts.$t: .PHONY .MAKE - (cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} SUBDIR= _RECURSING_PROGS= \ - $t) -$t: scripts.$t -.endfor - -.endif - -.endif Modified: head/share/mk/bsd.test.mk ============================================================================== --- head/share/mk/bsd.test.mk Wed Sep 23 22:36:01 2015 (r288157) +++ head/share/mk/bsd.test.mk Wed Sep 23 23:20:49 2015 (r288158) @@ -91,10 +91,6 @@ test: beforetest realtest test: aftertest .endif -.if !empty(SUBDIR) -.include -.endif - .ifdef PROG # we came here via bsd.progs.mk below # parent will do staging. From owner-svn-src-head@freebsd.org Wed Sep 23 23:30:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C5589A08B9C; Wed, 23 Sep 2015 23:30:58 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B5BE31D30; Wed, 23 Sep 2015 23:30:58 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8NNUwaw002344; Wed, 23 Sep 2015 23:30:58 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8NNUwnQ002342; Wed, 23 Sep 2015 23:30:58 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509232330.t8NNUwnQ002342@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Wed, 23 Sep 2015 23:30:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288159 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 23:30:58 -0000 Author: bdrewery Date: Wed Sep 23 23:30:57 2015 New Revision: 288159 URL: https://svnweb.freebsd.org/changeset/base/288159 Log: RELDIR is useful without META_MODE. Always define it. It is the CURDIR without the SRC base location in it. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/local.meta.sys.mk head/share/mk/src.sys.env.mk Modified: head/share/mk/local.meta.sys.mk ============================================================================== --- head/share/mk/local.meta.sys.mk Wed Sep 23 23:20:49 2015 (r288158) +++ head/share/mk/local.meta.sys.mk Wed Sep 23 23:30:57 2015 (r288159) @@ -112,12 +112,6 @@ OBJTOP:= ${OBJROOT}${TARGET_OBJ_SPEC} .endif .endif -.if ${.CURDIR} == ${SRCTOP} -RELDIR = . -.elif ${.CURDIR:M${SRCTOP}/*} -RELDIR := ${.CURDIR:S,${SRCTOP}/,,} -.endif - HOST_OBJTOP ?= ${OBJROOT}${HOST_TARGET} .if ${OBJTOP} == ${HOST_OBJTOP} || ${REQUESTED_MACHINE:U${MACHINE}} == "host" Modified: head/share/mk/src.sys.env.mk ============================================================================== --- head/share/mk/src.sys.env.mk Wed Sep 23 23:20:49 2015 (r288158) +++ head/share/mk/src.sys.env.mk Wed Sep 23 23:30:57 2015 (r288159) @@ -5,6 +5,12 @@ # make sure this is defined in a consistent manner SRCTOP:= ${.PARSEDIR:tA:H:H} +.if ${.CURDIR} == ${SRCTOP} +RELDIR = . +.elif ${.CURDIR:M${SRCTOP}/*} +RELDIR := ${.CURDIR:S,${SRCTOP}/,,} +.endif + # site customizations that do not depend on anything! SRC_ENV_CONF?= /etc/src-env.conf .if !empty(SRC_ENV_CONF) && !target(_src_env_conf_included_) From owner-svn-src-head@freebsd.org Thu Sep 24 00:17:01 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 74274A05237; Thu, 24 Sep 2015 00:17:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4A5111018; Thu, 24 Sep 2015 00:17:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8O0H1Qd020018; Thu, 24 Sep 2015 00:17:01 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8O0H08U020016; Thu, 24 Sep 2015 00:17:00 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509240017.t8O0H08U020016@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 00:17:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288160 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 00:17:01 -0000 Author: bdrewery Date: Thu Sep 24 00:17:00 2015 New Revision: 288160 URL: https://svnweb.freebsd.org/changeset/base/288160 Log: Document bsd.progs.mk and add more variables overrides. BINGRP BINMODE BINOWN LINKS MLINKS PROGNAME. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.README head/share/mk/bsd.progs.mk Modified: head/share/mk/bsd.README ============================================================================== --- head/share/mk/bsd.README Wed Sep 23 23:30:57 2015 (r288159) +++ head/share/mk/bsd.README Thu Sep 24 00:17:00 2015 (r288160) @@ -292,6 +292,20 @@ PROG_CXX If defined, the name of the pro standard C++ library. PROG_CXX overrides the value of PROG if PROG is also set. +PROGS When used with , allow building multiple +PROGS_CXX PROG and PROGS_CXX in one Makefile. To define + individual variables for each program the VAR.prog + syntax should be used. For example: + + PROGS= foo bar + SRCS.foo= foo_src.c + LIBADD.foo= util + SRCS.bar= bar_src.c + + The supported variables are BINDIR BINGRP BINMODE BINOWN + CFLAGS CPPFLAGS CXXFLAGS DPADD DPLIBS DPSRCS LDADD + LDFLAGS LIBADD MAN MLINKS PROGNAME SRCS. + PROGNAME The name that the above program will be installed as, if different from ${PROG}. Modified: head/share/mk/bsd.progs.mk ============================================================================== --- head/share/mk/bsd.progs.mk Wed Sep 23 23:30:57 2015 (r288159) +++ head/share/mk/bsd.progs.mk Thu Sep 24 00:17:00 2015 (r288160) @@ -38,8 +38,10 @@ PROG ?= $t .if defined(PROG) # just one of many -PROG_OVERRIDE_VARS += BINDIR DPSRCS MAN SRCS -PROG_VARS += CFLAGS CPPFLAGS CXXFLAGS DPADD DPLIBS LDADD LIBADD LDFLAGS ${PROG_OVERRIDE_VARS} +PROG_OVERRIDE_VARS += BINDIR BINGRP BINOWN BINMODE DPSRCS MAN PROGNAME \ + SRCS +PROG_VARS += CFLAGS CPPFLAGS CXXFLAGS DPADD DPLIBS LDADD LIBADD LINKS \ + LDFLAGS MLINKS ${PROG_OVERRIDE_VARS} .for v in ${PROG_VARS:O:u} .if empty(${PROG_OVERRIDE_VARS:M$v}) .if defined(${v}.${PROG}) From owner-svn-src-head@freebsd.org Thu Sep 24 00:20:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7B5F4A0550B; Thu, 24 Sep 2015 00:20:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6BBA8133D; Thu, 24 Sep 2015 00:20:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8O0KZVF020345; Thu, 24 Sep 2015 00:20:35 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8O0KZG9020344; Thu, 24 Sep 2015 00:20:35 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509240020.t8O0KZG9020344@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 00:20:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288161 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 00:20:35 -0000 Author: bdrewery Date: Thu Sep 24 00:20:34 2015 New Revision: 288161 URL: https://svnweb.freebsd.org/changeset/base/288161 Log: Add very basic LIBADD documentation. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.README Modified: head/share/mk/bsd.README ============================================================================== --- head/share/mk/bsd.README Thu Sep 24 00:17:00 2015 (r288160) +++ head/share/mk/bsd.README Thu Sep 24 00:20:34 2015 (r288161) @@ -270,6 +270,9 @@ LDADD Additional loader objects. Usual LDADD=-lutil -lcompat +LIBADD Additional libraries. This is for base system libraries. + Rather than use LDADD=-lname use LIBADD=name. + LDFLAGS Additional loader flags. Passed to the loader via CC, since that's used to link programs as well, so loader specific flags need to be prefixed with -Wl, to work. @@ -408,6 +411,9 @@ LIBMODE Library mode. LDADD Additional loader objects. +LIBADD Additional libraries. This is for base system libraries. + Rather than use LDADD=-lname use LIBADD=name. + MAN The manual pages to be installed (use a .1 - .9 suffix). SRCS List of source files to build the library. Suffix types From owner-svn-src-head@freebsd.org Thu Sep 24 00:22:49 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 99394A0563F; Thu, 24 Sep 2015 00:22:49 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8954E1811; Thu, 24 Sep 2015 00:22:49 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8O0Mns6024077; Thu, 24 Sep 2015 00:22:49 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8O0MnMN024076; Thu, 24 Sep 2015 00:22:49 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509240022.t8O0MnMN024076@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 00:22:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288162 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 00:22:49 -0000 Author: bdrewery Date: Thu Sep 24 00:22:48 2015 New Revision: 288162 URL: https://svnweb.freebsd.org/changeset/base/288162 Log: Note that LIBADD is only valid in /usr/src. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.README Modified: head/share/mk/bsd.README ============================================================================== --- head/share/mk/bsd.README Thu Sep 24 00:20:34 2015 (r288161) +++ head/share/mk/bsd.README Thu Sep 24 00:22:48 2015 (r288162) @@ -270,7 +270,8 @@ LDADD Additional loader objects. Usual LDADD=-lutil -lcompat -LIBADD Additional libraries. This is for base system libraries. +LIBADD Additional libraries. This is for base system libraries + and is only valid inside of the /usr/src tree. Rather than use LDADD=-lname use LIBADD=name. LDFLAGS Additional loader flags. Passed to the loader via CC, @@ -302,7 +303,7 @@ PROGS_CXX PROG and PROGS_CXX in one Make PROGS= foo bar SRCS.foo= foo_src.c - LIBADD.foo= util + LDADD.foo= -lutil SRCS.bar= bar_src.c The supported variables are BINDIR BINGRP BINMODE BINOWN @@ -411,7 +412,8 @@ LIBMODE Library mode. LDADD Additional loader objects. -LIBADD Additional libraries. This is for base system libraries. +LIBADD Additional libraries. This is for base system libraries + and is only valid inside of the /usr/src tree. Rather than use LDADD=-lname use LIBADD=name. MAN The manual pages to be installed (use a .1 - .9 suffix). From owner-svn-src-head@freebsd.org Thu Sep 24 03:08:37 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5856EA06D67; Thu, 24 Sep 2015 03:08:37 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from mr11p00im-asmtp003.me.com (mr11p00im-asmtp003.me.com [17.110.69.254]) (using TLSv1.2 with cipher DHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 354CB1AE5; Thu, 24 Sep 2015 03:08:37 +0000 (UTC) (envelope-from rpaulo@me.com) MIME-version: 1.0 Content-transfer-encoding: 8BIT Content-type: text/plain; charset=UTF-8 Received: from akita (c-73-162-13-215.hsd1.ca.comcast.net [73.162.13.215]) by mr11p00im-asmtp003.me.com (Oracle Communications Messaging Server 7.0.5.35.0 64bit (built Mar 31 2015)) with ESMTPSA id <0NV500HRIVE2UO30@mr11p00im-asmtp003.me.com>; Thu, 24 Sep 2015 03:08:30 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2015-09-24_02:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 kscore.is_bulkscore=2.22044604925031e-16 compositescore=0.981618935876834 phishscore=0 kscore.is_spamscore=0 rbsscore=0.981618935876834 recipient_to_sender_totalscore=0 spamscore=0 urlsuspectscore=0.981618935876834 adultscore=0 kscore.compositescore=0 circleOfTrustscore=0 suspectscore=0 recipient_domain_to_sender_totalscore=0 bulkscore=0 recipient_domain_to_sender_domain_totalscore=0 recipient_to_sender_domain_totalscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1412110000 definitions=main-1509240055 Message-id: <1443064105.14472.0.camel@me.com> Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Rui Paulo To: Scott Long Cc: Adrian Chadd , jhb@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Wed, 23 Sep 2015 20:08:25 -0700 In-reply-to: <1F2C327F-433E-4FA6-A083-4565A32C1146@yahoo.com> References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> <1F2C327F-433E-4FA6-A083-4565A32C1146@yahoo.com> X-Mailer: Evolution 3.16.5-1 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 03:08:37 -0000 I gave you feedback: it crashed somewhere else. I haven't had time to work on it. However, go ahead and commit that fix. That code was clearly wrong. On Mon, 2015-09-21 at 23:21 -0700, Scott Long wrote: > As a side note, I’m still waiting for feedback on the patch I sent > you for scsi_sg. I’d like to get this fixed. > > Scott > > > On Sep 21, 2015, at 3:53 PM, Rui Paulo wrote: > > > > No, that doesn't work very well. Not only the modules don't auto > > -load, the way the modules are compiled is different. See, for > > example, cam ctl which doesn't compile the sg code when it's built > > into the kernel, but compiles it when it's built as a module. The > > sg code is currently buggy and causes insta-panics with GNOME 3 > > (perhaps the auto-mounter in hald (?)). > > -- > > Rui Paulo > > > > > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd > > wrote: > > > > > Hi, > > > > > > Warner has been working on the modular kernel thing. But > > > honestly, I > > > think we should just start biting that bullet and ship a modules > > > -only > > > GENERIC by default.. > > > > > > > > > -a > > > > > > > > > On 21 September 2015 at 11:02, Rui Paulo wrote: > > > > So, we're going to keep ignoring the problem and keep patching > > > > things up? > > > > It's a bit sad that a single driver (pmspcv) is able to cause > > > > so much > > > > problems. > > > > > > > > -- > > > > Rui Paulo > > > > > > > > > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin > > > > wrote: > > > > > > > > Author: jhb > > > > Date: Thu Sep 17 20:36:46 2015 > > > > New Revision: 287934 > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 > > > > > > > > > > > > Log: > > > > The EFI boot loader allocates a single chunk of contiguous > > > > memory to > > > > hold the kernel, modules, and any other loaded data. This > > > > memory block > > > > is relocated to the kernel's expected location during the > > > > transfer of > > > > control from the loader to the kernel. > > > > > > > > The GENERIC kernel on amd64 has recently grown such that a > > > > kernel + zfs.ko > > > > no longer fits in the default staging size. Bump the default > > > > size from > > > > 32MB to 48MB to provide more breathing room. > > > > > > > > PR: 201679 > > > > Reviewed by: imp > > > > MFC after: 1 week > > > > Differential Revision: https://reviews.freebsd.org/D3666 > > > > > > > > > > > > Modified: > > > > head/sys/boot/efi/loader/copy.c > > > > > > > > Modified: head/sys/boot/efi/loader/copy.c > > > > =============================================================== > > > > =============== > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 > > > > (r287933) > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 > > > > (r287934) > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); > > > > #include > > > > > > > > #ifndef EFI_STAGING_SIZE > > > > -#define EFI_STAGING_SIZE 32 > > > > +#define EFI_STAGING_SIZE 48 > > > > #endif > > > > > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) > > > > > -- Rui Paulo From owner-svn-src-head@freebsd.org Thu Sep 24 03:13:06 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DCA1CA07102; Thu, 24 Sep 2015 03:13:06 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from mr11p00im-asmtp003.me.com (mr11p00im-asmtp003.me.com [17.110.69.254]) (using TLSv1.2 with cipher DHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BBA5B1F0A; Thu, 24 Sep 2015 03:13:06 +0000 (UTC) (envelope-from rpaulo@me.com) Received: from akita (c-73-162-13-215.hsd1.ca.comcast.net [73.162.13.215]) by mr11p00im-asmtp003.me.com (Oracle Communications Messaging Server 7.0.5.35.0 64bit (built Mar 31 2015)) with ESMTPSA id <0NV500AGBVLR7C00@mr11p00im-asmtp003.me.com>; Thu, 24 Sep 2015 03:13:06 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2015-09-24_02:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 kscore.is_bulkscore=2.22044604925031e-16 compositescore=0.981618935876834 phishscore=0 kscore.is_spamscore=0 rbsscore=0.981618935876834 recipient_to_sender_totalscore=0 spamscore=0 urlsuspectscore=0.981618935876834 adultscore=0 kscore.compositescore=0 circleOfTrustscore=0 suspectscore=0 recipient_domain_to_sender_totalscore=0 bulkscore=0 recipient_domain_to_sender_domain_totalscore=0 recipient_to_sender_domain_totalscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1412110000 definitions=main-1509240057 Message-id: <1443064383.14580.3.camel@me.com> Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Rui Paulo To: Warner Losh Cc: Adrian Chadd , jhb@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Wed, 23 Sep 2015 20:13:03 -0700 In-reply-to: <5427AC7C-1B0B-4273-B758-DB0C1BDF656F@bsdimp.com> References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> <5427AC7C-1B0B-4273-B758-DB0C1BDF656F@bsdimp.com> Content-type: text/plain; charset=UTF-8 X-Mailer: Evolution 3.16.5-1 MIME-version: 1.0 Content-transfer-encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 03:13:07 -0000 Those were the issues that I encountered when I started using MINIMAL. I didn't do a thorough investigation. Auto loading is a much bigger problem that just loading drivers for PCI/USB/etc devices. For example, net80211 doesn't auto load the wlan crypto modules by default nor the amrr module. On Mon, 2015-09-21 at 17:59 -0600, Warner Losh wrote: > Apart from the inlining issue John raised (which I agree with his > solution on, btw) > and the one cam ctl module, what other modules are meaningfully > different when > compiled as modules. > > Assume that the auto-loading bit is solved, at least for devices on > self-enumerating > busses. > > Warner > > > > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: > > > > No, that doesn't work very well. Not only the modules don't auto > > -load, the way the modules are compiled is different. See, for > > example, cam ctl which doesn't compile the sg code when it's built > > into the kernel, but compiles it when it's built as a module. The > > sg code is currently buggy and causes insta-panics with GNOME 3 > > (perhaps the auto-mounter in hald (?)). > > -- > > Rui Paulo > > > > > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd > > wrote: > > > > > Hi, > > > > > > Warner has been working on the modular kernel thing. But > > > honestly, I > > > think we should just start biting that bullet and ship a modules > > > -only > > > GENERIC by default.. > > > > > > > > > -a > > > > > > > > > On 21 September 2015 at 11:02, Rui Paulo wrote: > > > > So, we're going to keep ignoring the problem and keep patching > > > > things up? > > > > It's a bit sad that a single driver (pmspcv) is able to cause > > > > so much > > > > problems. > > > > > > > > -- > > > > Rui Paulo > > > > > > > > > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin > > > > wrote: > > > > > > > > Author: jhb > > > > Date: Thu Sep 17 20:36:46 2015 > > > > New Revision: 287934 > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 > > > > > > > > > > > > Log: > > > > The EFI boot loader allocates a single chunk of contiguous > > > > memory to > > > > hold the kernel, modules, and any other loaded data. This > > > > memory block > > > > is relocated to the kernel's expected location during the > > > > transfer of > > > > control from the loader to the kernel. > > > > > > > > The GENERIC kernel on amd64 has recently grown such that a > > > > kernel + zfs.ko > > > > no longer fits in the default staging size. Bump the default > > > > size from > > > > 32MB to 48MB to provide more breathing room. > > > > > > > > PR: 201679 > > > > Reviewed by: imp > > > > MFC after: 1 week > > > > Differential Revision: https://reviews.freebsd.org/D3666 > > > > > > > > > > > > Modified: > > > > head/sys/boot/efi/loader/copy.c > > > > > > > > Modified: head/sys/boot/efi/loader/copy.c > > > > =============================================================== > > > > =============== > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 > > > > (r287933) > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 > > > > (r287934) > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); > > > > #include > > > > > > > > #ifndef EFI_STAGING_SIZE > > > > -#define EFI_STAGING_SIZE 32 > > > > +#define EFI_STAGING_SIZE 48 > > > > #endif > > > > > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) > > > > > -- Rui Paulo From owner-svn-src-head@freebsd.org Thu Sep 24 04:07:04 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C8BD3A08884 for ; Thu, 24 Sep 2015 04:07:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk0-f176.google.com (mail-qk0-f176.google.com [209.85.220.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8ADE8187A for ; Thu, 24 Sep 2015 04:07:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qkap81 with SMTP id p81so25590506qka.2 for ; Wed, 23 Sep 2015 21:06:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=uBE6h4fp+jl9nKmvxNK+UYlvThYTiqMnp7OpeVkOXnM=; b=QBxP8QsdmpSyLNCJLVYauBCEk1WLUWpc6Oc0EzM9VTpJAquzcrQRXULtnRfv3DyYCk i08GG02W8NSjcNGjv5p14Gmk13MDxr9LcWJ0Jj5pJUuL2j5yLqiyyjhAo0yW11J3U8Bs hG35QBhRSny8i+b2yKOzgkDQtXuXTvsEQS+J/v9BuagxxkZBXAQ/jbDkjr2NWtyOp4T2 LlsMhOmDMMmBR1hC04CIqllF6ou/Zy/nrkv0aOtvhYGansWFXAdgQfuYOwcSwP/1YrdA CcEFAHtiUnSKnTeM4N2e7V/+UKyMocQNXXEVDPZOLwybItMZWUmsvUzjYjMx5JriFz0N 0kng== X-Gm-Message-State: ALoCoQnx1BjSH2mQ8rVPFyA2dM7W6A9yg7o3yVhT9zOYpDDjv9cTbzHOZE0HUlRgi2qSypx2kznO MIME-Version: 1.0 X-Received: by 10.55.19.11 with SMTP id d11mr6742643qkh.77.1443067617395; Wed, 23 Sep 2015 21:06:57 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Wed, 23 Sep 2015 21:06:57 -0700 (PDT) X-Originating-IP: [40.139.248.3] In-Reply-To: <1443064383.14580.3.camel@me.com> References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> <5427AC7C-1B0B-4273-B758-DB0C1BDF656F@bsdimp.com> <1443064383.14580.3.camel@me.com> Date: Wed, 23 Sep 2015 21:06:57 -0700 X-Google-Sender-Auth: IBNmQdbKu_Djns0Lyz4cDeryYrc Message-ID: Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Warner Losh To: Rui Paulo Cc: Adrian Chadd , John Baldwin , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 04:07:05 -0000 You're right about the Wifi drivers. There's some number you'll want loaded and we should have sensible defaults. But how to get there from here may be a bit interesting... Though if I go with the devd.conf writer early in boot, I can make them be rc.conf variable controlled. Warner On Wed, Sep 23, 2015 at 8:13 PM, Rui Paulo wrote: > Those were the issues that I encountered when I started using MINIMAL. > I didn't do a thorough investigation. > > Auto loading is a much bigger problem that just loading drivers for > PCI/USB/etc devices. For example, net80211 doesn't auto load the wlan > crypto modules by default nor the amrr module. > > On Mon, 2015-09-21 at 17:59 -0600, Warner Losh wrote: > > Apart from the inlining issue John raised (which I agree with his > > solution on, btw) > > and the one cam ctl module, what other modules are meaningfully > > different when > > compiled as modules. > > > > Assume that the auto-loading bit is solved, at least for devices on > > self-enumerating > > busses. > > > > Warner > > > > > > > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: > > > > > > No, that doesn't work very well. Not only the modules don't auto > > > -load, the way the modules are compiled is different. See, for > > > example, cam ctl which doesn't compile the sg code when it's built > > > into the kernel, but compiles it when it's built as a module. The > > > sg code is currently buggy and causes insta-panics with GNOME 3 > > > (perhaps the auto-mounter in hald (?)). > > > -- > > > Rui Paulo > > > > > > > > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd > > > wrote: > > > > > > > Hi, > > > > > > > > Warner has been working on the modular kernel thing. But > > > > honestly, I > > > > think we should just start biting that bullet and ship a modules > > > > -only > > > > GENERIC by default.. > > > > > > > > > > > > -a > > > > > > > > > > > > On 21 September 2015 at 11:02, Rui Paulo wrote: > > > > > So, we're going to keep ignoring the problem and keep patching > > > > > things up? > > > > > It's a bit sad that a single driver (pmspcv) is able to cause > > > > > so much > > > > > problems. > > > > > > > > > > -- > > > > > Rui Paulo > > > > > > > > > > > > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin > > > > > wrote: > > > > > > > > > > Author: jhb > > > > > Date: Thu Sep 17 20:36:46 2015 > > > > > New Revision: 287934 > > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 > > > > > > > > > > > > > > > Log: > > > > > The EFI boot loader allocates a single chunk of contiguous > > > > > memory to > > > > > hold the kernel, modules, and any other loaded data. This > > > > > memory block > > > > > is relocated to the kernel's expected location during the > > > > > transfer of > > > > > control from the loader to the kernel. > > > > > > > > > > The GENERIC kernel on amd64 has recently grown such that a > > > > > kernel + zfs.ko > > > > > no longer fits in the default staging size. Bump the default > > > > > size from > > > > > 32MB to 48MB to provide more breathing room. > > > > > > > > > > PR: 201679 > > > > > Reviewed by: imp > > > > > MFC after: 1 week > > > > > Differential Revision: https://reviews.freebsd.org/D3666 > > > > > > > > > > > > > > > Modified: > > > > > head/sys/boot/efi/loader/copy.c > > > > > > > > > > Modified: head/sys/boot/efi/loader/copy.c > > > > > =============================================================== > > > > > =============== > > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 > > > > > (r287933) > > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 > > > > > (r287934) > > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); > > > > > #include > > > > > > > > > > #ifndef EFI_STAGING_SIZE > > > > > -#define EFI_STAGING_SIZE 32 > > > > > +#define EFI_STAGING_SIZE 48 > > > > > #endif > > > > > > > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) > > > > > > > > > -- > Rui Paulo > > From owner-svn-src-head@freebsd.org Thu Sep 24 07:16:36 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6CB11A07BB0; Thu, 24 Sep 2015 07:16:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 515D01243; Thu, 24 Sep 2015 07:16:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8O7GaT6091831; Thu, 24 Sep 2015 07:16:36 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8O7GZ82091827; Thu, 24 Sep 2015 07:16:35 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509240716.t8O7GZ82091827@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 24 Sep 2015 07:16:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288165 - in head/sys/cam: ctl scsi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 07:16:36 -0000 Author: mav Date: Thu Sep 24 07:16:34 2015 New Revision: 288165 URL: https://svnweb.freebsd.org/changeset/base/288165 Log: Add support for READ BUFFER(16) command. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_cmd_table.c head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Thu Sep 24 00:54:46 2015 (r288164) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 07:16:34 2015 (r288165) @@ -5610,20 +5610,43 @@ bailout: int ctl_read_buffer(struct ctl_scsiio *ctsio) { - struct scsi_read_buffer *cdb; struct ctl_lun *lun; - int buffer_offset, len; + uint64_t buffer_offset; + uint32_t len; + uint8_t byte2; static uint8_t descr[4]; static uint8_t echo_descr[4] = { 0 }; CTL_DEBUG_PRINT(("ctl_read_buffer\n")); - lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - cdb = (struct scsi_read_buffer *)ctsio->cdb; + switch (ctsio->cdb[0]) { + case READ_BUFFER: { + struct scsi_read_buffer *cdb; - if ((cdb->byte2 & RWB_MODE) != RWB_MODE_DATA && - (cdb->byte2 & RWB_MODE) != RWB_MODE_ECHO_DESCR && - (cdb->byte2 & RWB_MODE) != RWB_MODE_DESCR) { + cdb = (struct scsi_read_buffer *)ctsio->cdb; + buffer_offset = scsi_3btoul(cdb->offset); + len = scsi_3btoul(cdb->length); + byte2 = cdb->byte2; + break; + } + case READ_BUFFER_16: { + struct scsi_read_buffer_16 *cdb; + + cdb = (struct scsi_read_buffer_16 *)ctsio->cdb; + buffer_offset = scsi_8btou64(cdb->offset); + len = scsi_4btoul(cdb->length); + byte2 = cdb->byte2; + break; + } + default: /* This shouldn't happen. */ + ctl_set_invalid_opcode(ctsio); + ctl_done((union ctl_io *)ctsio); + return (CTL_RETVAL_COMPLETE); + } + + if ((byte2 & RWB_MODE) != RWB_MODE_DATA && + (byte2 & RWB_MODE) != RWB_MODE_ECHO_DESCR && + (byte2 & RWB_MODE) != RWB_MODE_DESCR) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, @@ -5634,10 +5657,8 @@ ctl_read_buffer(struct ctl_scsiio *ctsio return (CTL_RETVAL_COMPLETE); } - len = scsi_3btoul(cdb->length); - buffer_offset = scsi_3btoul(cdb->offset); - - if (buffer_offset + len > CTL_WRITE_BUFFER_SIZE) { + if (buffer_offset > CTL_WRITE_BUFFER_SIZE || + buffer_offset + len > CTL_WRITE_BUFFER_SIZE) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, @@ -5648,12 +5669,12 @@ ctl_read_buffer(struct ctl_scsiio *ctsio return (CTL_RETVAL_COMPLETE); } - if ((cdb->byte2 & RWB_MODE) == RWB_MODE_DESCR) { + if ((byte2 & RWB_MODE) == RWB_MODE_DESCR) { descr[0] = 0; scsi_ulto3b(CTL_WRITE_BUFFER_SIZE, &descr[1]); ctsio->kern_data_ptr = descr; len = min(len, sizeof(descr)); - } else if ((cdb->byte2 & RWB_MODE) == RWB_MODE_ECHO_DESCR) { + } else if ((byte2 & RWB_MODE) == RWB_MODE_ECHO_DESCR) { ctsio->kern_data_ptr = echo_descr; len = min(len, sizeof(echo_descr)); } else { Modified: head/sys/cam/ctl/ctl_cmd_table.c ============================================================================== --- head/sys/cam/ctl/ctl_cmd_table.c Thu Sep 24 00:54:46 2015 (r288164) +++ head/sys/cam/ctl/ctl_cmd_table.c Thu Sep 24 07:16:34 2015 (r288165) @@ -1155,8 +1155,16 @@ const struct ctl_cmd_entry ctl_cmd_table /* 9A */ {NULL, CTL_SERIDX_INVLD, CTL_CMD_FLAG_NONE, CTL_LUN_PAT_NONE}, -/* 9B */ -{NULL, CTL_SERIDX_INVLD, CTL_CMD_FLAG_NONE, CTL_LUN_PAT_NONE}, +/* 9B READ BUFFER(16) */ +{ctl_read_buffer, CTL_SERIDX_MD_SNS, CTL_CMD_FLAG_OK_ON_BOTH | + CTL_CMD_FLAG_OK_ON_STOPPED | + CTL_CMD_FLAG_OK_ON_INOPERABLE | + CTL_CMD_FLAG_OK_ON_STANDBY | + CTL_FLAG_DATA_IN | + CTL_CMD_FLAG_ALLOW_ON_PR_WRESV, + CTL_LUN_PAT_NONE, + 10, {0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0, 0x07}}, /* 9C WRITE ATOMIC (16) */ {ctl_read_write, CTL_SERIDX_WRITE, CTL_CMD_FLAG_OK_ON_SLUN| CTL_FLAG_DATA_OUT, Modified: head/sys/cam/scsi/scsi_all.h ============================================================================== --- head/sys/cam/scsi/scsi_all.h Thu Sep 24 00:54:46 2015 (r288164) +++ head/sys/cam/scsi/scsi_all.h Thu Sep 24 07:16:34 2015 (r288165) @@ -1002,6 +1002,16 @@ struct scsi_read_buffer u_int8_t control; }; +struct scsi_read_buffer_16 +{ + uint8_t opcode; + uint8_t byte2; + uint8_t offset[8]; + uint8_t length[4]; + uint8_t buffer_id; + uint8_t control; +}; + struct scsi_write_buffer { u_int8_t opcode; @@ -1988,6 +1998,7 @@ struct ata_pass_16 { #define VERIFY_16 0x8F #define SYNCHRONIZE_CACHE_16 0x91 #define WRITE_SAME_16 0x93 +#define READ_BUFFER_16 0x9B #define WRITE_ATOMIC_16 0x9C #define SERVICE_ACTION_IN 0x9E #define REPORT_LUNS 0xA0 From owner-svn-src-head@freebsd.org Thu Sep 24 08:04:49 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2080A0719F; Thu, 24 Sep 2015 08:04:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E244A18C8; Thu, 24 Sep 2015 08:04:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8O84mpf012407; Thu, 24 Sep 2015 08:04:48 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8O84m4h012404; Thu, 24 Sep 2015 08:04:48 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509240804.t8O84m4h012404@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 24 Sep 2015 08:04:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288166 - in head/sys/cam: ctl scsi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 08:04:49 -0000 Author: mav Date: Thu Sep 24 08:04:47 2015 New Revision: 288166 URL: https://svnweb.freebsd.org/changeset/base/288166 Log: Update WRITE ATOMIC(16) support to sbc4r8 draft. This is only a cosmetic change. We still don't support atomic boundary field in the CDB, but at least now we do it formally. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/scsi_ctl.c head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Thu Sep 24 07:16:34 2015 (r288165) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 08:04:47 2015 (r288166) @@ -8940,7 +8940,7 @@ ctl_read_write(struct ctl_scsiio *ctsio) break; } case WRITE_ATOMIC_16: { - struct scsi_rw_16 *cdb; + struct scsi_write_atomic_16 *cdb; if (lun->be_lun->atomicblock == 0) { ctl_set_invalid_opcode(ctsio); @@ -8948,13 +8948,13 @@ ctl_read_write(struct ctl_scsiio *ctsio) return (CTL_RETVAL_COMPLETE); } - cdb = (struct scsi_rw_16 *)ctsio->cdb; + cdb = (struct scsi_write_atomic_16 *)ctsio->cdb; if (cdb->byte2 & SRW12_FUA) flags |= CTL_LLF_FUA; if (cdb->byte2 & SRW12_DPO) flags |= CTL_LLF_DPO; lba = scsi_8btou64(cdb->addr); - num_blocks = scsi_4btoul(cdb->length); + num_blocks = scsi_2btoul(cdb->length); if (num_blocks > lun->be_lun->atomicblock) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, /*field*/ 12, /*bit_valid*/ 0, @@ -10148,6 +10148,8 @@ ctl_inquiry_evpd_block_limits(struct ctl bl_ptr->max_atomic_transfer_length); scsi_ulto4b(0, bl_ptr->atomic_alignment); scsi_ulto4b(0, bl_ptr->atomic_transfer_length_granularity); + scsi_ulto4b(0, bl_ptr->max_atomic_transfer_length_with_atomic_boundary); + scsi_ulto4b(0, bl_ptr->max_atomic_boundary_size); } scsi_u64to8b(UINT64_MAX, bl_ptr->max_write_same_length); @@ -10647,8 +10649,7 @@ ctl_get_lba_len(union ctl_io *io, uint64 break; } case READ_16: - case WRITE_16: - case WRITE_ATOMIC_16: { + case WRITE_16: { struct scsi_rw_16 *cdb; cdb = (struct scsi_rw_16 *)io->scsiio.cdb; @@ -10657,6 +10658,15 @@ ctl_get_lba_len(union ctl_io *io, uint64 *len = scsi_4btoul(cdb->length); break; } + case WRITE_ATOMIC_16: { + struct scsi_write_atomic_16 *cdb; + + cdb = (struct scsi_write_atomic_16 *)io->scsiio.cdb; + + *lba = scsi_8btou64(cdb->addr); + *len = scsi_2btoul(cdb->length); + break; + } case WRITE_VERIFY_16: { struct scsi_write_verify_16 *cdb; Modified: head/sys/cam/ctl/scsi_ctl.c ============================================================================== --- head/sys/cam/ctl/scsi_ctl.c Thu Sep 24 07:16:34 2015 (r288165) +++ head/sys/cam/ctl/scsi_ctl.c Thu Sep 24 08:04:47 2015 (r288166) @@ -1068,7 +1068,6 @@ ctlfe_adjust_cdb(struct ccb_accept_tio * } case READ_16: case WRITE_16: - case WRITE_ATOMIC_16: { struct scsi_rw_16 *cdb = (struct scsi_rw_16 *)cmdbyt; lba = scsi_8btou64(cdb->addr); Modified: head/sys/cam/scsi/scsi_all.h ============================================================================== --- head/sys/cam/scsi/scsi_all.h Thu Sep 24 07:16:34 2015 (r288165) +++ head/sys/cam/scsi/scsi_all.h Thu Sep 24 08:04:47 2015 (r288166) @@ -1283,6 +1283,17 @@ struct scsi_rw_16 u_int8_t control; }; +struct scsi_write_atomic_16 +{ + uint8_t opcode; + uint8_t byte2; + uint8_t addr[8]; + uint8_t boundary[2]; + uint8_t length[2]; + uint8_t group; + uint8_t control; +}; + struct scsi_write_same_10 { uint8_t opcode; @@ -2757,7 +2768,8 @@ struct scsi_vpd_block_limits u_int8_t max_atomic_transfer_length[4]; u_int8_t atomic_alignment[4]; u_int8_t atomic_transfer_length_granularity[4]; - u_int8_t reserved2[8]; + u_int8_t max_atomic_transfer_length_with_atomic_boundary[4]; + u_int8_t max_atomic_boundary_size[4]; }; struct scsi_read_capacity From owner-svn-src-head@freebsd.org Thu Sep 24 12:22:49 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 174E4A07A15; Thu, 24 Sep 2015 12:22:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 08F321EE9; Thu, 24 Sep 2015 12:22:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OCMmWi019948; Thu, 24 Sep 2015 12:22:48 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OCMmAB019946; Thu, 24 Sep 2015 12:22:48 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509241222.t8OCMmAB019946@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 24 Sep 2015 12:22:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288170 - in head/sys/cam: ctl scsi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 12:22:49 -0000 Author: mav Date: Thu Sep 24 12:22:47 2015 New Revision: 288170 URL: https://svnweb.freebsd.org/changeset/base/288170 Log: Add new report types to REPORT LUNS command. This is only for completeness, since we have nothing new to report there. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Thu Sep 24 10:31:39 2015 (r288169) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 12:22:47 2015 (r288170) @@ -9265,12 +9265,10 @@ ctl_report_luns(struct ctl_scsiio *ctsio struct ctl_port *port; int num_luns, retval; uint32_t alloc_len, lun_datalen; - int num_filled, well_known; + int num_filled; uint32_t initidx, targ_lun_id, lun_id; retval = CTL_RETVAL_COMPLETE; - well_known = 0; - cdb = (struct scsi_report_luns *)ctsio->cdb; port = ctl_io_port(&ctsio->io_hdr); @@ -9287,9 +9285,11 @@ ctl_report_luns(struct ctl_scsiio *ctsio switch (cdb->select_report) { case RPL_REPORT_DEFAULT: case RPL_REPORT_ALL: + case RPL_REPORT_NONSUBSID: break; case RPL_REPORT_WELLKNOWN: - well_known = 1; + case RPL_REPORT_ADMIN: + case RPL_REPORT_CONGLOM: num_luns = 0; break; default: Modified: head/sys/cam/scsi/scsi_all.h ============================================================================== --- head/sys/cam/scsi/scsi_all.h Thu Sep 24 10:31:39 2015 (r288169) +++ head/sys/cam/scsi/scsi_all.h Thu Sep 24 12:22:47 2015 (r288170) @@ -2864,6 +2864,9 @@ struct scsi_report_luns #define RPL_REPORT_DEFAULT 0x00 #define RPL_REPORT_WELLKNOWN 0x01 #define RPL_REPORT_ALL 0x02 +#define RPL_REPORT_ADMIN 0x10 +#define RPL_REPORT_NONSUBSID 0x11 +#define RPL_REPORT_CONGLOM 0x12 uint8_t select_report; uint8_t reserved2[3]; uint8_t length[4]; From owner-svn-src-head@freebsd.org Thu Sep 24 13:58:07 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2985AA07AD9 for ; Thu, 24 Sep 2015 13:58:07 +0000 (UTC) (envelope-from steven@multiplay.co.uk) Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BA95F1A8B for ; Thu, 24 Sep 2015 13:58:06 +0000 (UTC) (envelope-from steven@multiplay.co.uk) Received: by wiclk2 with SMTP id lk2so114114348wic.1 for ; Thu, 24 Sep 2015 06:58:05 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-type :content-transfer-encoding; bh=kUuvDlcGWYeX0U/jdaiPOypiQ7letw569+tbvYGjrTw=; b=TmHHYAi0BTrJZSXdbJWnduxEj0EIC0zPAHfULBFi4Wek09uZS4J14h+c1d1D+NLyo0 ROTSLLrvRALmK7GLVJpxJypkWJMlsFKchB5nXuKAjz3ki8sj4Nnrr5I0WHZp+PlP5Yib B9y3FnLit1azfnx65ucY/1vBHsl0MtWlhtW7aOZNTrxcykr2E1Zo2wmtBQrJuBDepGAK GvxHXtGXxfFvHvkFaGN6is6hHR87F2oXzv9VCcSAzZeGUgWd8gMM7LZnkb9uUMaNHt1j Kfl6GAOUgBqNbVj8AQvH3+jKQ+sacPQfY/U6o/i9HEJMr60CWhLEceFxDaRUAfEVrqMN bmjg== X-Gm-Message-State: ALoCoQlJZqZXlZ18WLuzbkqJ+gbpMHRlWXkTGBRD3bv4+5jxOOoomcgNJuta+TJPaOS0QEMfNFXv X-Received: by 10.194.85.163 with SMTP id i3mr42180106wjz.75.1443103084897; Thu, 24 Sep 2015 06:58:04 -0700 (PDT) Received: from [10.10.1.68] (82-69-141-170.dsl.in-addr.zen.co.uk. [82.69.141.170]) by smtp.gmail.com with ESMTPSA id ka10sm12474586wjc.30.2015.09.24.06.58.03 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 24 Sep 2015 06:58:03 -0700 (PDT) Subject: Re: svn commit: r287886 - head/sys/sys To: Alexey Dokuchaev References: <201509170003.t8H03uSf070155@repo.freebsd.org> <20150917081541.GA65088@FreeBSD.org> <55FAAB03.2090409@freebsd.org> <20150917130748.GA90488@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Steven Hartland Message-ID: <56040165.8010306@multiplay.co.uk> Date: Thu, 24 Sep 2015 14:57:57 +0100 User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <20150917130748.GA90488@FreeBSD.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 13:58:07 -0000 On 17/09/2015 14:07, Alexey Dokuchaev wrote: > On Thu, Sep 17, 2015 at 12:58:59PM +0100, Steven Hartland wrote: >> On 17/09/2015 09:15, Alexey Dokuchaev wrote: >>> On Thu, Sep 17, 2015 at 12:03:56AM +0000, Steven Hartland wrote: >>>> New Revision: 287886 >>>> URL: https://svnweb.freebsd.org/changeset/base/287886 >>>> >>>> Log: >>>> Fix kqueue write events for files > 2GB >>> Oh that's an embarrassing bug. >>> >>> [...] >>> Would you also consider merging to stable/8? Thanks, >> 8 isn't supported any more but the patch should apply to stable/8 >> sources if you maintain your own branch of it. > So the answer is "no". It's OK, I'll ask for your approval and MFC it > myself in due time (provided there won't be any regressions found). > > ./danfe This is all done now Alexey, did stable/8 while I was there and EN request has been sent too. Regards Steve From owner-svn-src-head@freebsd.org Thu Sep 24 15:29:16 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 02702A0709D; Thu, 24 Sep 2015 15:29:16 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-ig0-x236.google.com (mail-ig0-x236.google.com [IPv6:2607:f8b0:4001:c05::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C18E818C7; Thu, 24 Sep 2015 15:29:15 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by igxx6 with SMTP id x6so51404909igx.1; Thu, 24 Sep 2015 08:29:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=r7O34hAx8OnPzYvmnZ27Uil86GfjGf4uMQx3lyQd8GU=; b=LlAAHVZzxPsgCwsDVTYbSC/xQw7o+Chsr7eI1BUH8Q9nxgPjOtwNKurYIfD6GKOeJR WUkeW/1wcY+nvpsSmGktITbVtO8Q+8FDprzCkTZaQPZcSpIm2FtI990e1fSnz7hIlpXi S0BLAWMKBhHjB/Jg61AkYcud+KIs36eac7Ug3rsgIWZzfDGQVmeewIQJvBs4YGGDTxQl J96zN+vCEgwKrTABnFQKUSc1+SuMtpzx45NMibG6DleCX6SnIeK0SuaSENzPMqCqyNTC 6rizSSiUyKpnxcgYv6HM037JLoIi5i5lP4WPqdpgGlFUUHDm5i9RDSQSYe7qHmye7ZSO wfNw== MIME-Version: 1.0 X-Received: by 10.50.1.44 with SMTP id 12mr28557830igj.61.1443108555250; Thu, 24 Sep 2015 08:29:15 -0700 (PDT) Received: by 10.36.28.208 with HTTP; Thu, 24 Sep 2015 08:29:14 -0700 (PDT) In-Reply-To: References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> <5427AC7C-1B0B-4273-B758-DB0C1BDF656F@bsdimp.com> <1443064383.14580.3.camel@me.com> Date: Thu, 24 Sep 2015 08:29:14 -0700 Message-ID: Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Adrian Chadd To: Warner Losh Cc: Rui Paulo , John Baldwin , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 15:29:16 -0000 ... I'm confused about the "load it by hand" stuff in net80211. Why don't we just do the kldload at that point? -a On 23 September 2015 at 21:06, Warner Losh wrote: > You're right about the Wifi drivers. There's some number you'll want loaded > and we should have sensible defaults. But how to get there from here may > be a bit interesting... Though if I go with the devd.conf writer early in > boot, > I can make them be rc.conf variable controlled. > > Warner > > On Wed, Sep 23, 2015 at 8:13 PM, Rui Paulo wrote: >> >> Those were the issues that I encountered when I started using MINIMAL. >> I didn't do a thorough investigation. >> >> Auto loading is a much bigger problem that just loading drivers for >> PCI/USB/etc devices. For example, net80211 doesn't auto load the wlan >> crypto modules by default nor the amrr module. >> >> On Mon, 2015-09-21 at 17:59 -0600, Warner Losh wrote: >> > Apart from the inlining issue John raised (which I agree with his >> > solution on, btw) >> > and the one cam ctl module, what other modules are meaningfully >> > different when >> > compiled as modules. >> > >> > Assume that the auto-loading bit is solved, at least for devices on >> > self-enumerating >> > busses. >> > >> > Warner >> > >> > >> > > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: >> > > >> > > No, that doesn't work very well. Not only the modules don't auto >> > > -load, the way the modules are compiled is different. See, for >> > > example, cam ctl which doesn't compile the sg code when it's built >> > > into the kernel, but compiles it when it's built as a module. The >> > > sg code is currently buggy and causes insta-panics with GNOME 3 >> > > (perhaps the auto-mounter in hald (?)). >> > > -- >> > > Rui Paulo >> > > >> > > >> > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd >> > > wrote: >> > > >> > > > Hi, >> > > > >> > > > Warner has been working on the modular kernel thing. But >> > > > honestly, I >> > > > think we should just start biting that bullet and ship a modules >> > > > -only >> > > > GENERIC by default.. >> > > > >> > > > >> > > > -a >> > > > >> > > > >> > > > On 21 September 2015 at 11:02, Rui Paulo wrote: >> > > > > So, we're going to keep ignoring the problem and keep patching >> > > > > things up? >> > > > > It's a bit sad that a single driver (pmspcv) is able to cause >> > > > > so much >> > > > > problems. >> > > > > >> > > > > -- >> > > > > Rui Paulo >> > > > > >> > > > > >> > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin >> > > > > wrote: >> > > > > >> > > > > Author: jhb >> > > > > Date: Thu Sep 17 20:36:46 2015 >> > > > > New Revision: 287934 >> > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 >> > > > > >> > > > > >> > > > > Log: >> > > > > The EFI boot loader allocates a single chunk of contiguous >> > > > > memory to >> > > > > hold the kernel, modules, and any other loaded data. This >> > > > > memory block >> > > > > is relocated to the kernel's expected location during the >> > > > > transfer of >> > > > > control from the loader to the kernel. >> > > > > >> > > > > The GENERIC kernel on amd64 has recently grown such that a >> > > > > kernel + zfs.ko >> > > > > no longer fits in the default staging size. Bump the default >> > > > > size from >> > > > > 32MB to 48MB to provide more breathing room. >> > > > > >> > > > > PR: 201679 >> > > > > Reviewed by: imp >> > > > > MFC after: 1 week >> > > > > Differential Revision: https://reviews.freebsd.org/D3666 >> > > > > >> > > > > >> > > > > Modified: >> > > > > head/sys/boot/efi/loader/copy.c >> > > > > >> > > > > Modified: head/sys/boot/efi/loader/copy.c >> > > > > =============================================================== >> > > > > =============== >> > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 >> > > > > (r287933) >> > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 >> > > > > (r287934) >> > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); >> > > > > #include >> > > > > >> > > > > #ifndef EFI_STAGING_SIZE >> > > > > -#define EFI_STAGING_SIZE 32 >> > > > > +#define EFI_STAGING_SIZE 48 >> > > > > #endif >> > > > > >> > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) >> > > > > >> > >> >> -- >> Rui Paulo >> > From owner-svn-src-head@freebsd.org Thu Sep 24 15:59:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B3D34A082F3; Thu, 24 Sep 2015 15:59:09 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A45C418F4; Thu, 24 Sep 2015 15:59:09 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OFx9Me006049; Thu, 24 Sep 2015 15:59:09 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OFx9dv006047; Thu, 24 Sep 2015 15:59:09 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509241559.t8OFx9dv006047@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Thu, 24 Sep 2015 15:59:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288175 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 15:59:09 -0000 Author: mav Date: Thu Sep 24 15:59:08 2015 New Revision: 288175 URL: https://svnweb.freebsd.org/changeset/base/288175 Log: Allow WRITE SAME with NDOB bit set but without UNMAP. This combination was originally forbidden, but allowed at spc4r3. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_backend_block.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Thu Sep 24 13:06:19 2015 (r288174) +++ head/sys/cam/ctl/ctl.c Thu Sep 24 15:59:08 2015 (r288175) @@ -5808,9 +5808,8 @@ ctl_write_same(struct ctl_scsiio *ctsio) break; /* NOTREACHED */ } - /* NDOB and ANCHOR flags can be used only together with UNMAP */ - if ((byte2 & SWS_UNMAP) == 0 && - (byte2 & (SWS_NDOB | SWS_ANCHOR)) != 0) { + /* ANCHOR flag can be used only together with UNMAP */ + if ((byte2 & SWS_UNMAP) == 0 && (byte2 & SWS_ANCHOR) != 0) { ctl_set_invalid_field(ctsio, /*sks_valid*/ 1, /*command*/ 1, /*field*/ 1, /*bit_valid*/ 1, /*bit*/ 0); ctl_done((union ctl_io *)ctsio); Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Thu Sep 24 13:06:19 2015 (r288174) +++ head/sys/cam/ctl/ctl_backend_block.c Thu Sep 24 15:59:08 2015 (r288175) @@ -1357,7 +1357,12 @@ ctl_be_block_cw_dispatch_ws(struct ctl_b buf = beio->sg_segs[i].addr; end = buf + seglen; for (; buf < end; buf += cbe_lun->blocksize) { - memcpy(buf, io->scsiio.kern_data_ptr, cbe_lun->blocksize); + if (lbalen->flags & SWS_NDOB) { + memset(buf, 0, cbe_lun->blocksize); + } else { + memcpy(buf, io->scsiio.kern_data_ptr, + cbe_lun->blocksize); + } if (lbalen->flags & SWS_LBDATA) scsi_ulto4b(lbalen->lba + lba, buf); lba++; From owner-svn-src-head@freebsd.org Thu Sep 24 16:34:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC73FA057EE; Thu, 24 Sep 2015 16:34:55 +0000 (UTC) (envelope-from marcel@xcllnt.net) Received: from mail.xcllnt.net (mail.xcllnt.net [50.0.150.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A53791EF3; Thu, 24 Sep 2015 16:34:55 +0000 (UTC) (envelope-from marcel@xcllnt.net) Received: from marcels-mbp.int.brkt.com (cerberus.brkt.com [208.185.168.138]) (authenticated bits=0) by mail.xcllnt.net (8.15.2/8.15.2) with ESMTPSA id t8OGHXA1045267 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 24 Sep 2015 09:17:34 -0700 (PDT) (envelope-from marcel@xcllnt.net) Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Content-Type: multipart/signed; boundary="Apple-Mail=_344BDBAC-42F4-4BBD-948D-8C8B1EB58DD5"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5.1 From: Marcel Moolenaar In-Reply-To: <7425989.fyHR6C7Hof@ralph.baldwin.cx> Date: Thu, 24 Sep 2015 09:17:27 -0700 Cc: Adrian Chadd , Rui Paulo , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-Id: <50033006-9412-4D45-B41A-90F185DC6392@xcllnt.net> References: <13e1fdb2-6e22-4371-95e4-a556c357fa8d@me.com> <7425989.fyHR6C7Hof@ralph.baldwin.cx> To: John Baldwin X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 16:34:56 -0000 --Apple-Mail=_344BDBAC-42F4-4BBD-948D-8C8B1EB58DD5 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 >=20 > The other approach I suggested earlier is to make the kernel = relocatable > (and allow the module metadata to be anywhere and live in a chain = instead > of an array) so that we can just load things wherever and leave them = there > without having to relocate. For ia64 I linked the kernel against a virtual address. The loader could simply allocate EFI memory as needed, and not worry about its location. It would map that into what I called the =E2=80=9Cpre-boot virtual address space=E2=80=9D. When booting the kernel, the loader only had to pass the physical address and size of the page table (the virtual address was fixed). With a variable size the loader would start off with a single 4KB page table and it would grow it as needed to some arbitrary max. The page size for the pre-boot virtual address space was 64KB (to match the maximum alignment of segments that the toolchain allowed). With more than 700MB of pre-boot virtual address space, one could preload and entire installation CD if willing to wait for it being loaded. No need to set memory aside and hope things fit... As a nice plus: linking against a virtual address allows copying the kernel text across the memory domains and always have it run locally to CPUs in NUMA configurations. -- Marcel Moolenaar marcel@xcllnt.net --Apple-Mail=_344BDBAC-42F4-4BBD-948D-8C8B1EB58DD5 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJWBCIYAAoJEIda8t8f0tjjBP8QAOMCUeQzNDWytF93u8Nsvtaf 1duB1I1LetYjb8uPotmO0hfiiZHqMrKZ5+D+Wp/61gJJdRTHsG2Wsexs0pJlBRm0 IvEpW+mhugPwLT9gUPhTc6PbkpYmNRuv+WrEIMq4stEH+WoSS8JVzbXl1DKXOpn1 eAC/DEwV6l4y25b7Fx4otcvTgw0cdnFu0NaeDmhoexs8URBqjrfvGvB7wT4YOjf8 9dPwsHyU+buWNdg37gCCaEu57q/zuhiQ+wbilqAm5X6DSa2yYyr3JacY09A6cUX1 emLuPBV3P+Xzc9k7xAiKjQ+AoK5a1/hN4eNUa5tt5q5U5sQS1IfNBIwryH/vZbp+ b9ECZUpCGwKHwTcXgZnBrGV8OaDvfr/l99v/cWCxJAUQwrHUf4Xk2X/PIcYGHOrZ 0N2bl+SaTtPXSACZS5DyFZCpphKhSmsSPyNtNwOnTjZqB+YCclriHpCHBtRVAzMR YFg1C9+y+WMJ/kGGpAfjN/i7tZQAvzt0YJnvYhf3e35we3fyuHYXyRST1QCCwQWh 0v+Fo8ctppaHl/KriIm2XYM1klZPWmmyEc5ehrJyJzsvZIBbUlKhbX5LmnhFMTkF lOlTWMiyAALiW33fxGQDNIW46+Iu6A5HDqdg0Kbw7mAkmZPvYDENC+ODhqhVwFok rKAdQbdOSvNR3S49TU5X =/5C/ -----END PGP SIGNATURE----- --Apple-Mail=_344BDBAC-42F4-4BBD-948D-8C8B1EB58DD5-- From owner-svn-src-head@freebsd.org Thu Sep 24 16:55:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 236B3A06714; Thu, 24 Sep 2015 16:55:25 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 073251D68; Thu, 24 Sep 2015 16:55:25 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OGtO8e030459; Thu, 24 Sep 2015 16:55:24 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OGtNwt030454; Thu, 24 Sep 2015 16:55:23 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509241655.t8OGtNwt030454@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 24 Sep 2015 16:55:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288176 - in head: . etc/mtree share/man/man7 sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 16:55:25 -0000 Author: emaste Date: Thu Sep 24 16:55:22 2015 New Revision: 288176 URL: https://svnweb.freebsd.org/changeset/base/288176 Log: Install kernel debug data under /usr/lib/debug This avoids needing a large boot partition / file system in order to accommodate multiple kernels, and provides consistency with userland debug. This also simplifies the process of moving kernel debug files to a separate package and installing them on demand. In addition, change kernel debug file extension to .debug, to match userland debug files. When using the supported kernel installation method the /usr/lib/debug/boot/kernel directory will be renamed (to kernel.old) as is done with /boot/kernel. Developers wishing to maintain the historical behavior of installing debug files in /boot/kernel/ can set KERN_DEBUGDIR="" in src.conf(5). Reviewed by: bdrewery, brooks, imp, markj Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D1006 Modified: head/UPDATING head/etc/mtree/BSD.debug.dist head/share/man/man7/hier.7 head/sys/conf/kern.post.mk head/sys/conf/kmod.mk Modified: head/UPDATING ============================================================================== --- head/UPDATING Thu Sep 24 15:59:08 2015 (r288175) +++ head/UPDATING Thu Sep 24 16:55:22 2015 (r288176) @@ -31,6 +31,19 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20150925: + Kernel debug files have been moved to /usr/lib/debug/boot/kernel/, + and renamed from .symbols to .debug. This reduces the size requirements + on the boot partition or file system and provides consistency with + userland debug files. + + When using the supported kernel installation method the + /usr/lib/debug/boot/kernel directory will be renamed (to kernel.old) + as is done with /boot/kernel. + + Developers wishing to maintain the historical behavior of installing + debug files in /boot/kernel/ can set KERN_DEBUGDIR="" in src.conf(5). + 20150827: The wireless drivers had undergone changes that remove the 'parent interface' from the ifconfig -l output. The rc.d network scripts Modified: head/etc/mtree/BSD.debug.dist ============================================================================== --- head/etc/mtree/BSD.debug.dist Thu Sep 24 15:59:08 2015 (r288175) +++ head/etc/mtree/BSD.debug.dist Thu Sep 24 16:55:22 2015 (r288176) @@ -9,6 +9,8 @@ bin .. boot + kernel + .. .. lib geom Modified: head/share/man/man7/hier.7 ============================================================================== --- head/share/man/man7/hier.7 Thu Sep 24 15:59:08 2015 (r288175) +++ head/share/man/man7/hier.7 Thu Sep 24 16:55:22 2015 (r288176) @@ -383,7 +383,7 @@ shared libraries for compatibility a.out backward compatibility libraries .El .It Pa debug/ -standalone debug data for the base system libraries and binaries +standalone debug data for the kernel and base system libraries and binaries .It Pa dtrace/ DTrace library scripts .It Pa engines/ Modified: head/sys/conf/kern.post.mk ============================================================================== --- head/sys/conf/kern.post.mk Thu Sep 24 15:59:08 2015 (r288175) +++ head/sys/conf/kern.post.mk Thu Sep 24 16:55:22 2015 (r288176) @@ -23,6 +23,11 @@ MKMODULESENV+= CONF_CFLAGS="${CONF_CFLAG MKMODULESENV+= WITH_CTF="${WITH_CTF}" .endif +# Allow overriding the kernel debug directory, so kernel and user debug may be +# installed in different directories. Setting it to "" restores the historical +# behavior of installing debug files in the kernel directory. +KERN_DEBUGDIR?= ${DEBUGDIR} + .MAIN: all .for target in all clean cleandepend cleandir clobber depend install \ @@ -101,11 +106,11 @@ modules-all modules-depend: modules-obj .if !defined(DEBUG) FULLKERNEL= ${KERNEL_KO} .else -FULLKERNEL= ${KERNEL_KO}.debug -${KERNEL_KO}: ${FULLKERNEL} ${KERNEL_KO}.symbols - ${OBJCOPY} --strip-debug --add-gnu-debuglink=${KERNEL_KO}.symbols\ +FULLKERNEL= ${KERNEL_KO}.full +${KERNEL_KO}: ${FULLKERNEL} ${KERNEL_KO}.debug + ${OBJCOPY} --strip-debug --add-gnu-debuglink=${KERNEL_KO}.debug \ ${FULLKERNEL} ${.TARGET} -${KERNEL_KO}.symbols: ${FULLKERNEL} +${KERNEL_KO}.debug: ${FULLKERNEL} ${OBJCOPY} --only-keep-debug ${FULLKERNEL} ${.TARGET} install.debug reinstall.debug: gdbinit cd ${.CURDIR}; ${MAKE} ${.TARGET:R} @@ -151,7 +156,7 @@ ${mfile:T:S/.m$/.h/}: ${mfile} kernel-clean: rm -f *.o *.so *.So *.ko *.s eddep errs \ - ${FULLKERNEL} ${KERNEL_KO} ${KERNEL_KO}.symbols \ + ${FULLKERNEL} ${KERNEL_KO} ${KERNEL_KO}.debug \ linterrs tags vers.c \ vnode_if.c vnode_if.h vnode_if_newproto.h vnode_if_typedef.h \ ${MFILES:T:S/.m$/.c/} ${MFILES:T:S/.m$/.h/} \ @@ -249,19 +254,26 @@ kernel-install: if [ ! "`dirname "$$thiskernel"`" -ef ${DESTDIR}${KODIR} ] ; then \ chflags -R noschg ${DESTDIR}${KODIR} ; \ rm -rf ${DESTDIR}${KODIR} ; \ + rm -rf ${DESTDIR}${KERN_DEBUGDIR}${KODIR} ; \ else \ if [ -d ${DESTDIR}${KODIR}.old ] ; then \ chflags -R noschg ${DESTDIR}${KODIR}.old ; \ rm -rf ${DESTDIR}${KODIR}.old ; \ fi ; \ mv ${DESTDIR}${KODIR} ${DESTDIR}${KODIR}.old ; \ + if [ -n "${KERN_DEBUGDIR}" -a \ + -d ${DESTDIR}${KERN_DEBUGDIR}${KODIR} ]; then \ + rm -rf ${DESTDIR}${KERN_DEBUGDIR}${KODIR}.old ; \ + mv ${DESTDIR}${KERN_DEBUGDIR}${KODIR} ${DESTDIR}${KERN_DEBUGDIR}${KODIR}.old ; \ + fi ; \ sysctl kern.bootfile=${DESTDIR}${KODIR}.old/"`basename "$$thiskernel"`" ; \ fi .endif mkdir -p ${DESTDIR}${KODIR} ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO} ${DESTDIR}${KODIR} .if defined(DEBUG) && !defined(INSTALL_NODEBUG) && ${MK_KERNEL_SYMBOLS} != "no" - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.symbols ${DESTDIR}${KODIR} + mkdir -p ${DESTDIR}${KERN_DEBUGDIR}${KODIR} + ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR} .endif .if defined(KERNEL_EXTRA_INSTALL) ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_EXTRA_INSTALL} ${DESTDIR}${KODIR} @@ -273,7 +285,7 @@ kernel-reinstall: @-chflags -R noschg ${DESTDIR}${KODIR} ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO} ${DESTDIR}${KODIR} .if defined(DEBUG) && !defined(INSTALL_NODEBUG) && ${MK_KERNEL_SYMBOLS} != "no" - ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.symbols ${DESTDIR}${KODIR} + ${INSTALL} -p -m 555 -o ${KMODOWN} -g ${KMODGRP} ${KERNEL_KO}.debug ${DESTDIR}${KERN_DEBUGDIR}${KODIR} .endif config.o env.o hints.o vers.o vnode_if.o: Modified: head/sys/conf/kmod.mk ============================================================================== --- head/sys/conf/kmod.mk Thu Sep 24 15:59:08 2015 (r288175) +++ head/sys/conf/kmod.mk Thu Sep 24 16:55:22 2015 (r288176) @@ -172,11 +172,11 @@ PROG= ${KMOD}.ko .if !defined(DEBUG_FLAGS) FULLPROG= ${PROG} .else -FULLPROG= ${PROG}.debug -${PROG}: ${FULLPROG} ${PROG}.symbols - ${OBJCOPY} --strip-debug --add-gnu-debuglink=${PROG}.symbols\ +FULLPROG= ${PROG}.full +${PROG}: ${FULLPROG} ${PROG}.debug + ${OBJCOPY} --strip-debug --add-gnu-debuglink=${PROG}.debug \ ${FULLPROG} ${.TARGET} -${PROG}.symbols: ${FULLPROG} +${PROG}.debug: ${FULLPROG} ${OBJCOPY} --only-keep-debug ${FULLPROG} ${.TARGET} .endif @@ -266,7 +266,7 @@ ${_ILINKS}: CLEANFILES+= ${PROG} ${KMOD}.kld ${OBJS} .if defined(DEBUG_FLAGS) -CLEANFILES+= ${FULLPROG} ${PROG}.symbols +CLEANFILES+= ${FULLPROG} ${PROG}.debug .endif .if !target(install) @@ -277,6 +277,7 @@ _INSTALLFLAGS:= ${_INSTALLFLAGS${ie}} .endfor .if !target(realinstall) +KERN_DEBUGDIR?= ${DEBUGDIR} realinstall: _kmodinstall .ORDER: beforeinstall _kmodinstall _kmodinstall: @@ -284,7 +285,7 @@ _kmodinstall: ${_INSTALLFLAGS} ${PROG} ${DESTDIR}${KMODDIR} .if defined(DEBUG_FLAGS) && !defined(INSTALL_NODEBUG) && ${MK_KERNEL_SYMBOLS} != "no" ${INSTALL} -o ${KMODOWN} -g ${KMODGRP} -m ${KMODMODE} \ - ${_INSTALLFLAGS} ${PROG}.symbols ${DESTDIR}${KMODDIR} + ${_INSTALLFLAGS} ${PROG}.debug ${DESTDIR}${KERN_DEBUGDIR}${KMODDIR} .endif .include From owner-svn-src-head@freebsd.org Thu Sep 24 16:56:45 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5B417A06815; Thu, 24 Sep 2015 16:56:45 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4C1A91F06; Thu, 24 Sep 2015 16:56:45 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OGujcD030554; Thu, 24 Sep 2015 16:56:45 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OGujuf030553; Thu, 24 Sep 2015 16:56:45 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509241656.t8OGujuf030553@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 24 Sep 2015 16:56:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288177 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 16:56:45 -0000 Author: emaste Date: Thu Sep 24 16:56:44 2015 New Revision: 288177 URL: https://svnweb.freebsd.org/changeset/base/288177 Log: Correct UPDATING entry date Modified: head/UPDATING Modified: head/UPDATING ============================================================================== --- head/UPDATING Thu Sep 24 16:55:22 2015 (r288176) +++ head/UPDATING Thu Sep 24 16:56:44 2015 (r288177) @@ -31,7 +31,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) -20150925: +20150924: Kernel debug files have been moved to /usr/lib/debug/boot/kernel/, and renamed from .symbols to .debug. This reduces the size requirements on the boot partition or file system and provides consistency with From owner-svn-src-head@freebsd.org Thu Sep 24 17:23:42 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0B261A079FA; Thu, 24 Sep 2015 17:23:42 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EF8BC1EB9; Thu, 24 Sep 2015 17:23:41 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OHNfao043163; Thu, 24 Sep 2015 17:23:41 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OHNfa0043162; Thu, 24 Sep 2015 17:23:41 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509241723.t8OHNfa0043162@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Thu, 24 Sep 2015 17:23:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288178 - head/sys/dev/iwn X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 17:23:42 -0000 Author: adrian Date: Thu Sep 24 17:23:41 2015 New Revision: 288178 URL: https://svnweb.freebsd.org/changeset/base/288178 Log: Fix up error path handling after the recent churn. * Don't free the mbuf in the tx path - it uses the transmit path now, so the caller frees the mbuf. * Don't decrement the node ref upon error - that's up to the caller to do as well. Tested: * Intel 5300 3x3 wifi, station mode Noticed by: Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c ============================================================================== --- head/sys/dev/iwn/if_iwn.c Thu Sep 24 16:56:44 2015 (r288177) +++ head/sys/dev/iwn/if_iwn.c Thu Sep 24 17:23:41 2015 (r288178) @@ -4368,7 +4368,6 @@ iwn_tx_data(struct iwn_softc *sc, struct struct ieee80211_tx_ampdu *tap = &ni->ni_tx_ampdu[ac]; if (!IEEE80211_AMPDU_RUNNING(tap)) { - m_freem(m); return EINVAL; } @@ -4420,7 +4419,6 @@ iwn_tx_data(struct iwn_softc *sc, struct /* Retrieve key for TX. */ k = ieee80211_crypto_encap(ni, m); if (k == NULL) { - m_freem(m); return ENOBUFS; } /* 802.11 header may have moved. */ @@ -4551,7 +4549,6 @@ iwn_tx_data(struct iwn_softc *sc, struct if (error != EFBIG) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } /* Too many DMA segments, linearize mbuf. */ @@ -4559,7 +4556,6 @@ iwn_tx_data(struct iwn_softc *sc, struct if (m1 == NULL) { device_printf(sc->sc_dev, "%s: could not defrag mbuf\n", __func__); - m_freem(m); return ENOBUFS; } m = m1; @@ -4569,7 +4565,6 @@ iwn_tx_data(struct iwn_softc *sc, struct if (error != 0) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } } @@ -4755,7 +4750,6 @@ iwn_tx_data_raw(struct iwn_softc *sc, st if (error != EFBIG) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } /* Too many DMA segments, linearize mbuf. */ @@ -4763,7 +4757,6 @@ iwn_tx_data_raw(struct iwn_softc *sc, st if (m1 == NULL) { device_printf(sc->sc_dev, "%s: could not defrag mbuf\n", __func__); - m_freem(m); return ENOBUFS; } m = m1; @@ -4773,7 +4766,6 @@ iwn_tx_data_raw(struct iwn_softc *sc, st if (error != 0) { device_printf(sc->sc_dev, "%s: can't map mbuf (error %d)\n", __func__, error); - m_freem(m); return error; } } @@ -4869,6 +4861,9 @@ iwn_xmit_task(void *arg0, int pending) IWN_UNLOCK(sc); } +/* + * raw frame xmit - free node/reference if failed. + */ static int iwn_raw_xmit(struct ieee80211_node *ni, struct mbuf *m, const struct ieee80211_bpf_params *params) @@ -4931,6 +4926,9 @@ iwn_raw_xmit(struct ieee80211_node *ni, return error; } +/* + * transmit - don't free mbuf if failed; don't free node ref if failed. + */ static int iwn_transmit(struct ieee80211com *ic, struct mbuf *m) { @@ -4938,6 +4936,8 @@ iwn_transmit(struct ieee80211com *ic, st struct ieee80211_node *ni; int error; + ni = (struct ieee80211_node *)m->m_pkthdr.rcvif; + IWN_LOCK(sc); if ((sc->sc_flags & IWN_FLAG_RUNNING) == 0 || sc->sc_beacon_wait) { IWN_UNLOCK(sc); @@ -4949,11 +4949,9 @@ iwn_transmit(struct ieee80211com *ic, st return (ENOBUFS); } - ni = (struct ieee80211_node *)m->m_pkthdr.rcvif; error = iwn_tx_data(sc, m, ni); if (error) { if_inc_counter(ni->ni_vap->iv_ifp, IFCOUNTER_OERRORS, 1); - ieee80211_free_node(ni); } else sc->sc_tx_timer = 5; IWN_UNLOCK(sc); From owner-svn-src-head@freebsd.org Thu Sep 24 17:36:19 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5ECC3A0831D; Thu, 24 Sep 2015 17:36:19 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4C42E1518; Thu, 24 Sep 2015 17:36:19 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OHaJjZ047450; Thu, 24 Sep 2015 17:36:19 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OHaJOZ047449; Thu, 24 Sep 2015 17:36:19 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509241736.t8OHaJOZ047449@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 17:36:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288179 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 17:36:19 -0000 Author: bdrewery Date: Thu Sep 24 17:36:18 2015 New Revision: 288179 URL: https://svnweb.freebsd.org/changeset/base/288179 Log: Fix running make in src directories without a Makefile giving confusing errors. This fixes the following errors: make: don't know how to make bsd.README. Stop make: don't know how to make auto.obj.mk. Stop This is easily seen in sys/dev/*. The new behavior is now the expected output: make: no target to make. This would happen as MAKESYSPATH (.../share/mk) is auto added to the -I list. Any directory where make is ran in the src tree that has no local Makefile would then try executing the target in share/mk/Makefile, which by default was to build the first entry in FILES. Of course, because bsd.README and auto.obj.mk are not in the current directory the error is shown. This check only works for bmake, but I will still MFC it with an extra '!defined(.PARSEDIR) ||' guard for stable/10. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/Makefile Modified: head/share/mk/Makefile ============================================================================== --- head/share/mk/Makefile Thu Sep 24 17:23:41 2015 (r288178) +++ head/share/mk/Makefile Thu Sep 24 17:36:18 2015 (r288179) @@ -1,6 +1,11 @@ # $FreeBSD$ # @(#)Makefile 8.1 (Berkeley) 6/8/93 +# Only parse this if executing make in this directory, not in other places +# in src that lack a Makefile, such as sys/dev/*. Otherwise the MAKESYSPATH +# will read this Makefile since it auto includes it into -I. +.if ${.CURDIR} == ${.PARSEDIR} + .include FILES= \ @@ -63,3 +68,4 @@ FILES+= tap.test.mk .endif .include +.endif # CURDIR == PARSEDIR From owner-svn-src-head@freebsd.org Thu Sep 24 17:37:31 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B3B9A083D0; Thu, 24 Sep 2015 17:37:31 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2EA0717BD; Thu, 24 Sep 2015 17:37:31 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OHbVAJ047546; Thu, 24 Sep 2015 17:37:31 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OHbUv3047544; Thu, 24 Sep 2015 17:37:30 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201509241737.t8OHbUv3047544@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Thu, 24 Sep 2015 17:37:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288180 - in head: share/man/man4 sys/dev/usb/quirk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 17:37:31 -0000 Author: hselasky Date: Thu Sep 24 17:37:30 2015 New Revision: 288180 URL: https://svnweb.freebsd.org/changeset/base/288180 Log: Implement support for reading USB quirks from the kernel environment. Refer to the usb_quirk(4) manual page for more details on how to use this new feature. Submitted by: Maxime Soule PR: 203249 MFC after: 2 weeks Modified: head/share/man/man4/usb_quirk.4 head/sys/dev/usb/quirk/usb_quirk.c Modified: head/share/man/man4/usb_quirk.4 ============================================================================== --- head/share/man/man4/usb_quirk.4 Thu Sep 24 17:36:18 2015 (r288179) +++ head/share/man/man4/usb_quirk.4 Thu Sep 24 17:37:30 2015 (r288180) @@ -16,7 +16,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 7, 2015 +.Dd September 24, 2015 .Dt USB_QUIRK 4 .Os .Sh NAME @@ -177,7 +177,53 @@ ejects after HID command .Pp See .Pa /sys/dev/usb/quirk/usb_quirk.h -for the complete list of supported quirks. +or run "usbconfig dump_quirk_names" for the complete list of supported quirks. +.Sh LOADER TUNABLE +The following tunable can be set at the +.Xr loader 8 +prompt before booting the kernel, or stored in +.Xr loader.conf 5 . +.Bl -tag -width indent +.It Va hw.usb.quirk.%d +The value is a string whose format is: +.Bd -literal -offset indent +.Qo VendorId ProductId LowRevision HighRevision UQ_QUIRK,... Qc +.Ed +.Pp +Installs the quirks +.Ic UQ_QUIRK,... +for all USB devices matching +.Ic VendorId , +.Ic ProductId +and has a hardware revision between and including +.Ic LowRevision +and +.Ic HighRevision . +.Pp +.Ic VendorId , +.Ic ProductId , +.Ic LowRevision +and +.Ic HighRevision +are all 16 bits numbers which can be decimal or hexadecimal based. +.Pp +A maximum of 100 variables +.Ic hw.usb.quirk.0, .1, ..., .99 +can be defined. +.Pp +If a matching entry is found in the kernel's internal quirks table, it +is replaced by the new definition. +.Pp +Else a new entry is created given that the quirk table is not full. +.Pp +The kernel iterates over the +.Ic hw.usb.quirk.N +variables starting at +.Ic N = 0 +and stops at +.Ic N = 99 +or the first non-existing one. +.El .Sh EXAMPLES After attaching a .Nm u3g @@ -186,6 +232,13 @@ device which appears as a USB device on .Bd -literal -offset indent usbconfig -d ugen0.3 add_quirk UQ_MSC_EJECT_WAIT .Ed +.Pp +To install a quirk at boot time, place one or several lines like the +following in +.Xr loader.conf 5 : +.Bd -literal -offset indent +hw.usb.quirk.0="0x04d9 0xfa50 0 0xffff UQ_KBD_IGNORE" +.Ed .Sh SEE ALSO .Xr usbconfig 8 .Sh HISTORY Modified: head/sys/dev/usb/quirk/usb_quirk.c ============================================================================== --- head/sys/dev/usb/quirk/usb_quirk.c Thu Sep 24 17:36:18 2015 (r288179) +++ head/sys/dev/usb/quirk/usb_quirk.c Thu Sep 24 17:37:30 2015 (r288180) @@ -61,6 +61,7 @@ MODULE_VERSION(usb_quirk, 1); #define USB_DEV_QUIRKS_MAX 384 #define USB_SUB_QUIRKS_MAX 8 +#define USB_QUIRK_ENVROOT "hw.usb.quirk." struct usb_quirk_entry { uint16_t vid; @@ -608,8 +609,32 @@ static const char *usb_quirk_str[USB_QUI static const char * usb_quirkstr(uint16_t quirk) { - return ((quirk < USB_QUIRK_MAX) ? - usb_quirk_str[quirk] : "USB_QUIRK_UNKNOWN"); + return ((quirk < USB_QUIRK_MAX && usb_quirk_str[quirk] != NULL) ? + usb_quirk_str[quirk] : "UQ_UNKNOWN"); +} + +/*------------------------------------------------------------------------* + * usb_strquirk + * + * This function converts a string into a USB quirk code. + * + * Returns: + * Less than USB_QUIRK_MAX: Quirk code + * Else: Quirk code not found + *------------------------------------------------------------------------*/ +static uint16_t +usb_strquirk(const char *str, size_t len) +{ + const char *quirk; + uint16_t x; + + for (x = 0; x != USB_QUIRK_MAX; x++) { + quirk = usb_quirkstr(x); + if (strncmp(str, quirk, len) == 0 && + quirk[len] == 0) + break; + } + return (x); } /*------------------------------------------------------------------------* @@ -854,12 +879,122 @@ usb_quirk_ioctl(unsigned long cmd, caddr return (ENOIOCTL); } +/*------------------------------------------------------------------------* + * usb_quirk_strtou16 + * + * Helper function to scan a 16-bit integer. + *------------------------------------------------------------------------*/ +static uint16_t +usb_quirk_strtou16(const char **pptr, const char *name, const char *what) +{ + unsigned long value; + char *end; + + value = strtoul(*pptr, &end, 0); + if (value > 65535 || *pptr == end || (*end != ' ' && *end != '\t')) { + printf("%s: %s 16-bit %s value set to zero\n", + name, what, *end == 0 ? "incomplete" : "invalid"); + return (0); + } + *pptr = end + 1; + return ((uint16_t)value); +} + +/*------------------------------------------------------------------------* + * usb_quirk_add_entry_from_str + * + * Add a USB quirk entry from string. + * "VENDOR PRODUCT LO_REV HI_REV QUIRK[,QUIRK[,...]]" + *------------------------------------------------------------------------*/ +static void +usb_quirk_add_entry_from_str(const char *name, const char *env) +{ + struct usb_quirk_entry entry = { }; + struct usb_quirk_entry *new; + uint16_t quirk_idx; + uint16_t quirk; + const char *end; + + /* check for invalid environment variable */ + if (name == NULL || env == NULL) + return; + + if (bootverbose) + printf("Adding USB QUIRK '%s' = '%s'\n", name, env); + + /* parse device information */ + entry.vid = usb_quirk_strtou16(&env, name, "Vendor ID"); + entry.pid = usb_quirk_strtou16(&env, name, "Product ID"); + entry.lo_rev = usb_quirk_strtou16(&env, name, "Low revision"); + entry.hi_rev = usb_quirk_strtou16(&env, name, "High revision"); + + /* parse quirk information */ + quirk_idx = 0; + while (*env != 0 && quirk_idx != USB_SUB_QUIRKS_MAX) { + /* skip whitespace before quirks */ + while (*env == ' ' || *env == '\t') + env++; + + /* look for quirk separation character */ + end = strchr(env, ','); + if (end == NULL) + end = env + strlen(env); + + /* lookup quirk in string table */ + quirk = usb_strquirk(env, end - env); + if (quirk < USB_QUIRK_MAX) { + entry.quirks[quirk_idx++] = quirk; + } else { + printf("%s: unknown USB quirk '%.*s' (skipped)\n", + name, (int)(end - env), env); + } + env = end; + + /* skip quirk delimiter, if any */ + if (*env != 0) + env++; + } + + /* register quirk */ + if (quirk_idx != 0) { + if (*env != 0) { + printf("%s: Too many USB quirks, only %d allowed!\n", + name, USB_SUB_QUIRKS_MAX); + } + mtx_lock(&usb_quirk_mtx); + new = usb_quirk_get_entry(entry.vid, entry.pid, + entry.lo_rev, entry.hi_rev, 1); + if (new == NULL) + printf("%s: USB quirks table is full!\n", name); + else + memcpy(new->quirks, entry.quirks, sizeof(entry.quirks)); + mtx_unlock(&usb_quirk_mtx); + } else { + printf("%s: No USB quirks found!\n", name); + } +} + static void usb_quirk_init(void *arg) { + char envkey[sizeof(USB_QUIRK_ENVROOT) + 2]; /* 2 digits max, 0 to 99 */ + int i; + /* initialize mutex */ mtx_init(&usb_quirk_mtx, "USB quirk", NULL, MTX_DEF); + /* look for quirks defined by the environment variable */ + for (i = 0; i != 100; i++) { + snprintf(envkey, sizeof(envkey), USB_QUIRK_ENVROOT "%d", i); + + /* Stop at first undefined var */ + if (!testenv(envkey)) + break; + + /* parse environment variable */ + usb_quirk_add_entry_from_str(envkey, kern_getenv(envkey)); + } + /* register our function */ usb_test_quirk_p = &usb_test_quirk_by_info; usb_quirk_ioctl_p = &usb_quirk_ioctl; From owner-svn-src-head@freebsd.org Thu Sep 24 18:25:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 210A8A081B7; Thu, 24 Sep 2015 18:25:28 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 13E33146E; Thu, 24 Sep 2015 18:25:28 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1033) id 123E91D07; Thu, 24 Sep 2015 18:25:28 +0000 (UTC) Date: Thu, 24 Sep 2015 18:25:28 +0000 From: Alexey Dokuchaev To: Steven Hartland Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r287886 - head/sys/sys Message-ID: <20150924182527.GA75484@FreeBSD.org> References: <201509170003.t8H03uSf070155@repo.freebsd.org> <20150917081541.GA65088@FreeBSD.org> <55FAAB03.2090409@freebsd.org> <20150917130748.GA90488@FreeBSD.org> <56040165.8010306@multiplay.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56040165.8010306@multiplay.co.uk> User-Agent: Mutt/1.5.24 (2015-08-30) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 18:25:28 -0000 On Thu, Sep 24, 2015 at 02:57:57PM +0100, Steven Hartland wrote: > On 17/09/2015 14:07, Alexey Dokuchaev wrote: > > On Thu, Sep 17, 2015 at 12:58:59PM +0100, Steven Hartland wrote: > > > 8 isn't supported any more but the patch should apply to stable/8 > > > sources if you maintain your own branch of it. > > > > So the answer is "no". It's OK, I'll ask for your approval and MFC > > it myself in due time (provided there won't be any regressions > > found). > > This is all done now Alexey, did stable/8 while I was there and EN > request has been sent too. Thanks Steven, I appreciate it! ./danfe From owner-svn-src-head@freebsd.org Thu Sep 24 18:53:21 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 99CC3A0729B; Thu, 24 Sep 2015 18:53:21 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8AA621320; Thu, 24 Sep 2015 18:53:21 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OIrLdT080753; Thu, 24 Sep 2015 18:53:21 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OIrLVD080752; Thu, 24 Sep 2015 18:53:21 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509241853.t8OIrLVD080752@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 24 Sep 2015 18:53:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288181 - head/contrib/elftoolchain/readelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 18:53:21 -0000 Author: emaste Date: Thu Sep 24 18:53:20 2015 New Revision: 288181 URL: https://svnweb.freebsd.org/changeset/base/288181 Log: readelf: Correct typo HPUS -> HPUX Submitted by: kib Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 17:37:30 2015 (r288180) +++ head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 18:53:20 2015 (r288181) @@ -415,7 +415,7 @@ elf_osabi(unsigned int abi) switch(abi) { case ELFOSABI_SYSV: return "SYSV"; - case ELFOSABI_HPUX: return "HPUS"; + case ELFOSABI_HPUX: return "HPUX"; case ELFOSABI_NETBSD: return "NetBSD"; case ELFOSABI_GNU: return "GNU"; case ELFOSABI_HURD: return "HURD"; From owner-svn-src-head@freebsd.org Thu Sep 24 19:56:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D4F4AA087FC; Thu, 24 Sep 2015 19:56:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id BAF2C1FAD; Thu, 24 Sep 2015 19:56:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id B37F91EE0; Thu, 24 Sep 2015 19:56:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 5FA5BF6C3; Thu, 24 Sep 2015 19:56:35 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id DLq9JPW3MHM6; Thu, 24 Sep 2015 19:56:29 +0000 (UTC) Subject: Re: svn commit: r287263 - head/sys/conf DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 23C9AF6BE To: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201508281629.t7SGTdnb063079@repo.freebsd.org> From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5604556B.2070906@FreeBSD.org> Date: Thu, 24 Sep 2015 12:56:27 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <201508281629.t7SGTdnb063079@repo.freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="l530bgrIg2oDcb6HJUg8hLDiMfa1P0SH2" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 19:56:35 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --l530bgrIg2oDcb6HJUg8hLDiMfa1P0SH2 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 8/28/2015 9:29 AM, Warner Losh wrote: > Author: imp > Date: Fri Aug 28 16:29:38 2015 > New Revision: 287263 > URL: https://svnweb.freebsd.org/changeset/base/287263 >=20 > Log: > Comment out cleaning files, since it cleans too much. >=20 > Modified: > head/sys/conf/kmod.mk >=20 > Modified: head/sys/conf/kmod.mk > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/conf/kmod.mk Fri Aug 28 16:23:03 2015 (r287262) > +++ head/sys/conf/kmod.mk Fri Aug 28 16:29:38 2015 (r287263) > @@ -361,7 +361,8 @@ _MPATH=3D${__MPATH:H:O:u} > .endif > .PATH.m: ${_MPATH} > .for _i in ${SRCS:M*_if.[ch]} > -CLEANFILES+=3D ${_i} > +#removes too much, comment out until it's more constrained. > +#CLEANFILES+=3D ${_i} > .endfor # _i > .m.c: ${SYSDIR}/tools/makeobjops.awk > ${AWK} -f ${SYSDIR}/tools/makeobjops.awk ${.IMPSRC} -c >=20 Rather than this should r285068 be reverted to restore CLEANFILES handling of these generated files? --=20 Regards, Bryan Drewery --l530bgrIg2oDcb6HJUg8hLDiMfa1P0SH2 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWBFVrAAoJEDXXcbtuRpfPNNAIAJWQXe2dU4KIVJzGnza7+KfT KHvA61pyenErH+VK3+1/7n08XDC2vv3ijjkx3yY9nvJ5m8s8JP0+s4fL/NwT4oq+ nug9Tnul1XqB9L/p7ROwkVDCwy3jVuThJ8BwySifaztGzZPbbLwcY7YU3tLThhrN UYanzJ+lDSdWABNemPGm20qfsjxauX/7M0prJzfYdW/OopK/uDClbJj5a8klgbYQ BISj9iT+X6XlOb+6Q0eDVHANAqd/irM/CeYjgWH+/9oWS+kg+zfMs8KQEWIDrcOK Vijg3dHJcuhnkfEJt5U4fz/Q57vHcGlMGK52XdpvtN7AY55QHf4rGx8xcFyq5vY= =u4Sv -----END PGP SIGNATURE----- --l530bgrIg2oDcb6HJUg8hLDiMfa1P0SH2-- From owner-svn-src-head@freebsd.org Thu Sep 24 21:04:50 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9565CA0735E; Thu, 24 Sep 2015 21:04:50 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6C05F1DB5; Thu, 24 Sep 2015 21:04:50 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8OL4oxQ040735; Thu, 24 Sep 2015 21:04:50 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8OL4nPV040731; Thu, 24 Sep 2015 21:04:49 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509242104.t8OL4nPV040731@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 24 Sep 2015 21:04:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288194 - in head: contrib/elftoolchain/elfdump contrib/elftoolchain/readelf usr.bin/elfdump X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 21:04:50 -0000 Author: emaste Date: Thu Sep 24 21:04:48 2015 New Revision: 288194 URL: https://svnweb.freebsd.org/changeset/base/288194 Log: Rename ELFOSABI_SYSV to ELFOSABI_NONE to match current spec Source: http://www.sco.com/developers/gabi/latest/ch4.eheader.html Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3731 Modified: head/contrib/elftoolchain/elfdump/elfdump.c head/contrib/elftoolchain/readelf/readelf.c head/usr.bin/elfdump/elfdump.c Modified: head/contrib/elftoolchain/elfdump/elfdump.c ============================================================================== --- head/contrib/elftoolchain/elfdump/elfdump.c Thu Sep 24 21:01:34 2015 (r288193) +++ head/contrib/elftoolchain/elfdump/elfdump.c Thu Sep 24 21:04:48 2015 (r288194) @@ -272,7 +272,7 @@ static const char *ei_data[] = { }; static const char *ei_abis[] = { - "ELFOSABI_SYSV", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", + "ELFOSABI_NONE", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", "ELFOSABI_HURD", "ELFOSABI_86OPEN", "ELFOSABI_SOLARIS", "ELFOSABI_MONTEREY", "ELFOSABI_IRIX", "ELFOSABI_FREEBSD", "ELFOSABI_TRU64", "ELFOSABI_MODESTO", "ELFOSABI_OPENBSD" Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 21:01:34 2015 (r288193) +++ head/contrib/elftoolchain/readelf/readelf.c Thu Sep 24 21:04:48 2015 (r288194) @@ -414,7 +414,7 @@ elf_osabi(unsigned int abi) static char s_abi[32]; switch(abi) { - case ELFOSABI_SYSV: return "SYSV"; + case ELFOSABI_NONE: return "NONE"; case ELFOSABI_HPUX: return "HPUX"; case ELFOSABI_NETBSD: return "NetBSD"; case ELFOSABI_GNU: return "GNU"; Modified: head/usr.bin/elfdump/elfdump.c ============================================================================== --- head/usr.bin/elfdump/elfdump.c Thu Sep 24 21:01:34 2015 (r288193) +++ head/usr.bin/elfdump/elfdump.c Thu Sep 24 21:04:48 2015 (r288194) @@ -296,7 +296,7 @@ static const char *ei_data[] = { }; static const char *ei_abis[256] = { - "ELFOSABI_SYSV", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", + "ELFOSABI_NONE", "ELFOSABI_HPUX", "ELFOSABI_NETBSD", "ELFOSABI_LINUX", "ELFOSABI_HURD", "ELFOSABI_86OPEN", "ELFOSABI_SOLARIS", "ELFOSABI_AIX", "ELFOSABI_IRIX", "ELFOSABI_FREEBSD", "ELFOSABI_TRU64", "ELFOSABI_MODESTO", "ELFOSABI_OPENBSD", From owner-svn-src-head@freebsd.org Thu Sep 24 21:11:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F344AA079F7 for ; Thu, 24 Sep 2015 21:11:08 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f43.google.com (mail-qg0-f43.google.com [209.85.192.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AFA601588 for ; Thu, 24 Sep 2015 21:11:08 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgez77 with SMTP id z77so55566662qge.1 for ; Thu, 24 Sep 2015 14:11:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=cTmbG0xbN5qWFXFBTv/0NBP22LPJ5Y1Dkq3eDM3HvSc=; b=RETfK3b5xEqfbt2XhCbATSvrVF373MDRHTFugZL5djH86bfOULcXQnhWUsDSTHNGxY JIZj7d/yNmYZFdOrKAGVd/G30owAmesgEFnEgVWrs9cdZ7pO7PFTndn+tUuxzwrrf1xg xVVuSfdY8Cqj1RZcbRzWBIPPIbQDxBCDOJBRxXgjzbYATzaC+83H9m5d1ZTrHy/VRjcq 1yCGmYijTV4ur3LWsHwzg4C7ibrTDqIWCct/VNc4H2liG1d7UWgEZcsw/Ef1dNH4HNWh ljkD/GKAaqvTEYCK5uF59deNkJ5TN040r5IBYHzv4ocLXK6I/uqF0BLM0oXSXo6rZE6b 7huw== X-Gm-Message-State: ALoCoQkMY9M04j7Ya0tpJRICDyq6QQk1pkBO/GErScv5ueRf+tjy9xWZpUrwFt7UCmpBPOZrK+i5 MIME-Version: 1.0 X-Received: by 10.140.19.175 with SMTP id 44mr2287061qgh.50.1443129061975; Thu, 24 Sep 2015 14:11:01 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Thu, 24 Sep 2015 14:11:01 -0700 (PDT) X-Originating-IP: [69.53.245.18] In-Reply-To: References: <35a0f1b6-0236-4b0e-b919-00cab07429be@me.com> <5427AC7C-1B0B-4273-B758-DB0C1BDF656F@bsdimp.com> <1443064383.14580.3.camel@me.com> Date: Thu, 24 Sep 2015 14:11:01 -0700 X-Google-Sender-Auth: yiT3ABxJd6ocrgBu_5lee-YWQEk Message-ID: Subject: Re: svn commit: r287934 - head/sys/boot/efi/loader From: Warner Losh To: Adrian Chadd Cc: Rui Paulo , John Baldwin , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 21:11:09 -0000 That's the idea... When we load an 802.11 driver we'd need to then load the other associated modules. The key is, which ones and how do the special needs crowd do things other than the default. Warner On Thu, Sep 24, 2015 at 8:29 AM, Adrian Chadd wrote: > ... I'm confused about the "load it by hand" stuff in net80211. Why > don't we just do the kldload at that point? > > > -a > > > On 23 September 2015 at 21:06, Warner Losh wrote: > > You're right about the Wifi drivers. There's some number you'll want > loaded > > and we should have sensible defaults. But how to get there from here may > > be a bit interesting... Though if I go with the devd.conf writer early > in > > boot, > > I can make them be rc.conf variable controlled. > > > > Warner > > > > On Wed, Sep 23, 2015 at 8:13 PM, Rui Paulo wrote: > >> > >> Those were the issues that I encountered when I started using MINIMAL. > >> I didn't do a thorough investigation. > >> > >> Auto loading is a much bigger problem that just loading drivers for > >> PCI/USB/etc devices. For example, net80211 doesn't auto load the wlan > >> crypto modules by default nor the amrr module. > >> > >> On Mon, 2015-09-21 at 17:59 -0600, Warner Losh wrote: > >> > Apart from the inlining issue John raised (which I agree with his > >> > solution on, btw) > >> > and the one cam ctl module, what other modules are meaningfully > >> > different when > >> > compiled as modules. > >> > > >> > Assume that the auto-loading bit is solved, at least for devices on > >> > self-enumerating > >> > busses. > >> > > >> > Warner > >> > > >> > > >> > > On Sep 21, 2015, at 4:53 PM, Rui Paulo wrote: > >> > > > >> > > No, that doesn't work very well. Not only the modules don't auto > >> > > -load, the way the modules are compiled is different. See, for > >> > > example, cam ctl which doesn't compile the sg code when it's built > >> > > into the kernel, but compiles it when it's built as a module. The > >> > > sg code is currently buggy and causes insta-panics with GNOME 3 > >> > > (perhaps the auto-mounter in hald (?)). > >> > > -- > >> > > Rui Paulo > >> > > > >> > > > >> > > On Sep 21, 2015, at 11:24 AM, Adrian Chadd > >> > > wrote: > >> > > > >> > > > Hi, > >> > > > > >> > > > Warner has been working on the modular kernel thing. But > >> > > > honestly, I > >> > > > think we should just start biting that bullet and ship a modules > >> > > > -only > >> > > > GENERIC by default.. > >> > > > > >> > > > > >> > > > -a > >> > > > > >> > > > > >> > > > On 21 September 2015 at 11:02, Rui Paulo wrote: > >> > > > > So, we're going to keep ignoring the problem and keep patching > >> > > > > things up? > >> > > > > It's a bit sad that a single driver (pmspcv) is able to cause > >> > > > > so much > >> > > > > problems. > >> > > > > > >> > > > > -- > >> > > > > Rui Paulo > >> > > > > > >> > > > > > >> > > > > On Sep 17, 2015, at 01:36 PM, John Baldwin > >> > > > > wrote: > >> > > > > > >> > > > > Author: jhb > >> > > > > Date: Thu Sep 17 20:36:46 2015 > >> > > > > New Revision: 287934 > >> > > > > URL: https://svnweb.freebsd.org/changeset/base/287934 > >> > > > > > >> > > > > > >> > > > > Log: > >> > > > > The EFI boot loader allocates a single chunk of contiguous > >> > > > > memory to > >> > > > > hold the kernel, modules, and any other loaded data. This > >> > > > > memory block > >> > > > > is relocated to the kernel's expected location during the > >> > > > > transfer of > >> > > > > control from the loader to the kernel. > >> > > > > > >> > > > > The GENERIC kernel on amd64 has recently grown such that a > >> > > > > kernel + zfs.ko > >> > > > > no longer fits in the default staging size. Bump the default > >> > > > > size from > >> > > > > 32MB to 48MB to provide more breathing room. > >> > > > > > >> > > > > PR: 201679 > >> > > > > Reviewed by: imp > >> > > > > MFC after: 1 week > >> > > > > Differential Revision: https://reviews.freebsd.org/D3666 > >> > > > > > >> > > > > > >> > > > > Modified: > >> > > > > head/sys/boot/efi/loader/copy.c > >> > > > > > >> > > > > Modified: head/sys/boot/efi/loader/copy.c > >> > > > > =============================================================== > >> > > > > =============== > >> > > > > --- head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:34 2015 > >> > > > > (r287933) > >> > > > > +++ head/sys/boot/efi/loader/copy.c Thu Sep 17 20:36:46 2015 > >> > > > > (r287934) > >> > > > > @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); > >> > > > > #include > >> > > > > > >> > > > > #ifndef EFI_STAGING_SIZE > >> > > > > -#define EFI_STAGING_SIZE 32 > >> > > > > +#define EFI_STAGING_SIZE 48 > >> > > > > #endif > >> > > > > > >> > > > > #define STAGE_PAGES ((EFI_STAGING_SIZE) * 1024 * 1024 / 4096) > >> > > > > > >> > > >> > >> -- > >> Rui Paulo > >> > > > From owner-svn-src-head@freebsd.org Thu Sep 24 21:23:57 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2185A085DC for ; Thu, 24 Sep 2015 21:23:56 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f49.google.com (mail-qg0-f49.google.com [209.85.192.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B51651A52 for ; Thu, 24 Sep 2015 21:23:56 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgez77 with SMTP id z77so55818276qge.1 for ; Thu, 24 Sep 2015 14:23:55 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=Z18WvPe9+fhwy9kwaIKq9zGNXCTY2JPcy+B2rJlzNVI=; b=c/wmGfEDagNb9RLHAKuMUqf2uTEFAf10qQdpJzxDxwaHpbdsi5EC4+6uCxOqT+xWZt JTWyAkfxugOauhikUXSAW2kEa1Ff2ZA3IBWfTrkuT5M2kJ6A9wqn2oAU43veuYnC8eEw C6q4boktlN9cJfduCl6/cE74ur/NKI+yMThOoshWrPgCZ5xzmCxJXHTG7WxwtKn8cD00 GvYphP3n3T5rZq67PvA5PKVTP7jcWflGvJV263Tomixs9CwTLeBRQAeXHkbutkGSuQYb JmMRfmE52UHw6b4Z/1vnhfaAzAjob79vAsxZQ2cQMBC7ZsRMgdPlAQXkQ4LtCzRzOwG0 85Qw== X-Gm-Message-State: ALoCoQmtUZNr+4sTCy8YT5qlTVSbSZ3igimwflc8c9FFNUPEI15HioS2JLdCZq6l/16sXAOoXNGJ MIME-Version: 1.0 X-Received: by 10.140.129.22 with SMTP id 22mr2480529qhb.74.1443129835793; Thu, 24 Sep 2015 14:23:55 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Thu, 24 Sep 2015 14:23:55 -0700 (PDT) X-Originating-IP: [69.53.245.18] In-Reply-To: <5604556B.2070906@FreeBSD.org> References: <201508281629.t7SGTdnb063079@repo.freebsd.org> <5604556B.2070906@FreeBSD.org> Date: Thu, 24 Sep 2015 14:23:55 -0700 X-Google-Sender-Auth: TFLU4BHJIBYUuo_slMeushxgp_4 Message-ID: Subject: Re: svn commit: r287263 - head/sys/conf From: Warner Losh To: Bryan Drewery Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 21:23:57 -0000 I don't think so. I'd like to fix this more properly. However, without this hack, anything in the tree that ends in _if.c or _if.h will get deleted, which is bad as you might imagine. There's two or three drivers that are built as modules that fit this pattern. I really don't want to back out r258068. Having a list of all the places to look for _if.m files is really annoying... Warner On Thu, Sep 24, 2015 at 12:56 PM, Bryan Drewery wrote: > On 8/28/2015 9:29 AM, Warner Losh wrote: > > Author: imp > > Date: Fri Aug 28 16:29:38 2015 > > New Revision: 287263 > > URL: https://svnweb.freebsd.org/changeset/base/287263 > > > > Log: > > Comment out cleaning files, since it cleans too much. > > > > Modified: > > head/sys/conf/kmod.mk > > > > Modified: head/sys/conf/kmod.mk > > > ============================================================================== > > --- head/sys/conf/kmod.mk Fri Aug 28 16:23:03 2015 (r287262) > > +++ head/sys/conf/kmod.mk Fri Aug 28 16:29:38 2015 (r287263) > > @@ -361,7 +361,8 @@ _MPATH=${__MPATH:H:O:u} > > .endif > > .PATH.m: ${_MPATH} > > .for _i in ${SRCS:M*_if.[ch]} > > -CLEANFILES+= ${_i} > > +#removes too much, comment out until it's more constrained. > > +#CLEANFILES+= ${_i} > > .endfor # _i > > .m.c: ${SYSDIR}/tools/makeobjops.awk > > ${AWK} -f ${SYSDIR}/tools/makeobjops.awk ${.IMPSRC} -c > > > > Rather than this should r285068 be reverted to restore CLEANFILES > handling of these generated files? > > -- > Regards, > Bryan Drewery > > From owner-svn-src-head@freebsd.org Thu Sep 24 21:35:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6B16FA08D5E; Thu, 24 Sep 2015 21:35:32 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 51D341259; Thu, 24 Sep 2015 21:35:32 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 4ADFA17D1; Thu, 24 Sep 2015 21:35:32 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id ED4FCF9DD; Thu, 24 Sep 2015 21:35:31 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id XuObRqqdC6km; Thu, 24 Sep 2015 21:35:29 +0000 (UTC) Subject: Re: svn commit: r287263 - head/sys/conf DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 7F324F9D4 References: <201508281629.t7SGTdnb063079@repo.freebsd.org> <5604556B.2070906@FreeBSD.org> Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" To: Warner Losh From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <56046CA1.5060409@FreeBSD.org> Date: Thu, 24 Sep 2015 14:35:29 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="uI4NuOXG41J5v7A0PpgPDqtj1Qo1ImPST" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 21:35:32 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --uI4NuOXG41J5v7A0PpgPDqtj1Qo1ImPST Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 9/24/2015 2:23 PM, Warner Losh wrote: > I don't think so. I'd like to fix this more properly. However, without = this > hack, anything in the tree that ends in _if.c or _if.h will get deleted= , > which is bad as you might imagine. There's two or three drivers that > are built as modules that fit this pattern. >=20 > I really don't want to back out r258068. Having a list of all the place= s > to look for _if.m files is really annoying... >=20 I'm really just reminding you. I have no strong opinion on this, just that it appears to be new and unfinished. --=20 Regards, Bryan Drewery --uI4NuOXG41J5v7A0PpgPDqtj1Qo1ImPST Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWBGyhAAoJEDXXcbtuRpfPhHEIAJLWQ5Re40vuYPjuB+9qkL1v lxwy5F4wJUkgOMh6Qht80ngTB7NTaF8bvI5if3Y9Hu0lm2tjGXjncZFQidaxG3G3 3ACkRvOmZYkrwR+BXEieWrGZ9zUfClsL2igvYx+o53F3tdK4TgiWyLnKWSQ+xUJy qFCbzEpC6c0GBQofDZSf4WnmAZ9L3HJ/zFwFFTc7J89mwyzmKKRonMOjrCigCxV0 zghgW1e1Uv/9UAeVVodbWgFh14/d8X1Ds+OT7ziliFH0xInYoWOH7wle0jgRlQB3 Zx4SzfNrrY5Gp8YyFuuw3uJjKkiRn+n/TWUHHN6PL7oPFooOhRHR6oGFNvKm79A= =9XLS -----END PGP SIGNATURE----- --uI4NuOXG41J5v7A0PpgPDqtj1Qo1ImPST-- From owner-svn-src-head@freebsd.org Thu Sep 24 23:08:34 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1BFDAA08927; Thu, 24 Sep 2015 23:08:34 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0CD4E1D84; Thu, 24 Sep 2015 23:08:34 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8ON8XHP092785; Thu, 24 Sep 2015 23:08:33 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8ON8XCV092784; Thu, 24 Sep 2015 23:08:33 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509242308.t8ON8XCV092784@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 23:08:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288198 - head/kerberos5/usr.sbin/ktutil X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 23:08:34 -0000 Author: bdrewery Date: Thu Sep 24 23:08:33 2015 New Revision: 288198 URL: https://svnweb.freebsd.org/changeset/base/288198 Log: Remove unneeded dependency line. bsd.prog.mk adds 'ktutil-commands.o: ktutil-commands.h' already. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/kerberos5/usr.sbin/ktutil/Makefile Modified: head/kerberos5/usr.sbin/ktutil/Makefile ============================================================================== --- head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 21:48:04 2015 (r288197) +++ head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 23:08:33 2015 (r288198) @@ -24,8 +24,6 @@ LIBADD= kadm5clnt krb5 roken crypto edit ktutil-commands.h: ${KRB5DIR}/admin/ktutil-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -ktutil-commands.${ext}: ktutil-commands.h -.endfor +ktutil-commands.c: ktutil-commands.h .PATH: ${KRB5DIR}/admin From owner-svn-src-head@freebsd.org Thu Sep 24 23:15:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0D6A6A08E19; Thu, 24 Sep 2015 23:15:28 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EFA941314; Thu, 24 Sep 2015 23:15:27 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8ONFRHd096838; Thu, 24 Sep 2015 23:15:27 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8ONFOdo096824; Thu, 24 Sep 2015 23:15:24 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509242315.t8ONFOdo096824@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 23:15:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288199 - in head: gnu/usr.bin/binutils/libbfd kerberos5/libexec/kdigest kerberos5/usr.bin/hxtool kerberos5/usr.bin/kadmin kerberos5/usr.bin/kcc kerberos5/usr.sbin/iprop-log kerberos5/u... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 23:15:28 -0000 Author: bdrewery Date: Thu Sep 24 23:15:24 2015 New Revision: 288199 URL: https://svnweb.freebsd.org/changeset/base/288199 Log: Add missing CLEANFILES. MFC after: 1 week Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/usr.bin/binutils/libbfd/Makefile.i386 head/kerberos5/libexec/kdigest/Makefile head/kerberos5/usr.bin/hxtool/Makefile head/kerberos5/usr.bin/kadmin/Makefile head/kerberos5/usr.bin/kcc/Makefile head/kerberos5/usr.sbin/iprop-log/Makefile head/kerberos5/usr.sbin/ktutil/Makefile head/lib/clang/include/Makefile head/lib/libc/tests/gen/posix_spawn/Makefile head/usr.bin/yacc/tests/Makefile head/usr.sbin/vigr/Makefile Modified: head/gnu/usr.bin/binutils/libbfd/Makefile.i386 ============================================================================== --- head/gnu/usr.bin/binutils/libbfd/Makefile.i386 Thu Sep 24 23:08:33 2015 (r288198) +++ head/gnu/usr.bin/binutils/libbfd/Makefile.i386 Thu Sep 24 23:15:24 2015 (r288199) @@ -17,3 +17,5 @@ VECS= ${DEFAULT_VECTOR} \ peigen.c: peXXigen.c sed -e s/XX/pe/g ${.ALLSRC} > ${.TARGET} + +CLEANFILES+= peigen.c Modified: head/kerberos5/libexec/kdigest/Makefile ============================================================================== --- head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -10,6 +10,8 @@ SRCS= kdigest.c \ kdigest-commands.c \ kdigest-commands.h +CLEANFILES= kdigest-commands.h kdigest-commands.c + kdigest-commands.h: kdigest-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.bin/hxtool/Makefile ============================================================================== --- head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -9,6 +9,8 @@ CFLAGS+= -I${KRB5DIR}/lib/hx509 \ LIBADD= hx509 roken asn1 crypto sl vers edit SRCS= hxtool.c hxtool-commands.c hxtool-commands.h +CLEANFILES= hxtool-commands.h hxtool-commands.c + hxtool-commands.h: hxtool-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.bin/kadmin/Makefile ============================================================================== --- head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -31,6 +31,8 @@ DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} +CLEANFILES= kadmin-commands.h kadmin-commands.c + .include kadmin-commands.h: ${KRB5DIR}/kadmin/kadmin-commands.in Modified: head/kerberos5/usr.bin/kcc/Makefile ============================================================================== --- head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -16,6 +16,8 @@ SRCS= kcc.c \ kswitch.c \ copy_cred_cache.c +CLEANFILES= kcc-commands.h kcc-commands.c + kcc-commands.h: kcc-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.sbin/iprop-log/Makefile ============================================================================== --- head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -11,6 +11,8 @@ CFLAGS+= -I${KRB5DIR}/lib/kadm5 \ LIBADD= kadm5srv hdb krb5 roken edit sl vers LDFLAGS=${LDAPLDFLAGS} +CLEANFILES= iprop-commands.h iprop-commands.c + iprop-commands.h: iprop-commands.in ${SLC} ${.ALLSRC:M*.in} Modified: head/kerberos5/usr.sbin/ktutil/Makefile ============================================================================== --- head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/kerberos5/usr.sbin/ktutil/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -19,6 +19,8 @@ SRCS= add.c \ CFLAGS+=-I${KRB5DIR}/lib/roken -I${KRB5DIR}/lib/sl -I. LIBADD= kadm5clnt krb5 roken crypto edit sl vers +CLEANFILES= ktutil-commands.h ktutil-commands.c + .include ktutil-commands.h: ${KRB5DIR}/admin/ktutil-commands.in Modified: head/lib/clang/include/Makefile ============================================================================== --- head/lib/clang/include/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/lib/clang/include/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -54,7 +54,7 @@ INCS= __stddef_max_align_t.h \ xopintrin.h \ ${GENINCS} GENINCS= arm_neon.h -CLEANFILES= ${GENINCS} +CLEANFILES= ${GENINCS} ${GENINCS:C/\.h$/.d/} # avoid a circular dependency GENDIRDEPS_FILTER+= Nusr.bin/clang/clang-tblgen.host Modified: head/lib/libc/tests/gen/posix_spawn/Makefile ============================================================================== --- head/lib/libc/tests/gen/posix_spawn/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/lib/libc/tests/gen/posix_spawn/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -21,6 +21,8 @@ PROGS+= h_spawnattr SCRIPTS= h_nonexec SCRIPTS+= h_zero +CLEANFILES+= h_nonexec + .include "../../Makefile.netbsd-tests" h_zero: Modified: head/usr.bin/yacc/tests/Makefile ============================================================================== --- head/usr.bin/yacc/tests/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/usr.bin/yacc/tests/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -17,6 +17,8 @@ TEST_METADATA.yacc_tests+= required_user SCRIPTS= run_test SCRIPTSDIR= ${TESTSDIR} +CLEANFILES= run_test + FILESGROUPS= FILES FILEStest FILEStest_yacc FILEStestDIR= ${TESTSDIR} Modified: head/usr.sbin/vigr/Makefile ============================================================================== --- head/usr.sbin/vigr/Makefile Thu Sep 24 23:08:33 2015 (r288198) +++ head/usr.sbin/vigr/Makefile Thu Sep 24 23:15:24 2015 (r288199) @@ -2,5 +2,6 @@ SCRIPTS= vigr MAN= vigr.8 +CLEANFILES= vigr .include From owner-svn-src-head@freebsd.org Thu Sep 24 23:24:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C8038A0740A; Thu, 24 Sep 2015 23:24:00 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B4C4019BC; Thu, 24 Sep 2015 23:24:00 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8ONO0Sn001057; Thu, 24 Sep 2015 23:24:00 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8ONNxhG001048; Thu, 24 Sep 2015 23:23:59 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509242323.t8ONNxhG001048@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Thu, 24 Sep 2015 23:23:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288200 - in head/kerberos5: libexec/kdigest usr.bin/hxtool usr.bin/kadmin usr.bin/kcc usr.sbin/iprop-log X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Sep 2015 23:24:01 -0000 Author: bdrewery Date: Thu Sep 24 23:23:58 2015 New Revision: 288200 URL: https://svnweb.freebsd.org/changeset/base/288200 Log: Remove unneeded dependency of '.o: .h' that bsd.prog.mk already handles. MFC after: 2 weeks X-MFC-With: r288198 Sponsored by: EMC / Isilon Storage Division Modified: head/kerberos5/libexec/kdigest/Makefile head/kerberos5/usr.bin/hxtool/Makefile head/kerberos5/usr.bin/kadmin/Makefile head/kerberos5/usr.bin/kcc/Makefile head/kerberos5/usr.sbin/iprop-log/Makefile Modified: head/kerberos5/libexec/kdigest/Makefile ============================================================================== --- head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/libexec/kdigest/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -15,9 +15,7 @@ CLEANFILES= kdigest-commands.h kdigest-c kdigest-commands.h: kdigest-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -kdigest-commands.${ext}: kdigest-commands.h -.endfor +kdigest-commands.c: kdigest-commands.h .include Modified: head/kerberos5/usr.bin/hxtool/Makefile ============================================================================== --- head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.bin/hxtool/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -14,9 +14,7 @@ CLEANFILES= hxtool-commands.h hxtool-com hxtool-commands.h: hxtool-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -hxtool-commands.${ext}: hxtool-commands.h -.endfor +hxtool-commands.c: hxtool-commands.h .include Modified: head/kerberos5/usr.bin/kadmin/Makefile ============================================================================== --- head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.bin/kadmin/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -38,9 +38,7 @@ CLEANFILES= kadmin-commands.h kadmin-com kadmin-commands.h: ${KRB5DIR}/kadmin/kadmin-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in o c -kadmin-commands.${ext}: kadmin-commands.h -.endfor +kadmin-commands.c: kadmin-commands.h .PATH: ${KRB5DIR}/kadmin Modified: head/kerberos5/usr.bin/kcc/Makefile ============================================================================== --- head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.bin/kcc/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -21,9 +21,7 @@ CLEANFILES= kcc-commands.h kcc-commands. kcc-commands.h: kcc-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -kcc-commands.${ext}: kcc-commands.h -.endfor +kcc-commands.c: kcc-commands.h .include Modified: head/kerberos5/usr.sbin/iprop-log/Makefile ============================================================================== --- head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:15:24 2015 (r288199) +++ head/kerberos5/usr.sbin/iprop-log/Makefile Thu Sep 24 23:23:58 2015 (r288200) @@ -16,9 +16,7 @@ CLEANFILES= iprop-commands.h iprop-comma iprop-commands.h: iprop-commands.in ${SLC} ${.ALLSRC:M*.in} -.for ext in c o -iprop-commands.${ext}: iprop-commands.h -.endfor +iprop-commands.c: iprop-commands.h .include From owner-svn-src-head@freebsd.org Fri Sep 25 00:07:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ABEFBA08470; Fri, 25 Sep 2015 00:07:32 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9C9DB1F9B; Fri, 25 Sep 2015 00:07:32 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P07WBq018105; Fri, 25 Sep 2015 00:07:32 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P07Wg9018104; Fri, 25 Sep 2015 00:07:32 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509250007.t8P07Wg9018104@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 00:07:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288201 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 00:07:32 -0000 Author: bdrewery Date: Fri Sep 25 00:07:31 2015 New Revision: 288201 URL: https://svnweb.freebsd.org/changeset/base/288201 Log: Don't recurse with cleanobj. bsd.obj.mk handles the needs fine. When an objdir exists it will just rm -Rf the objdir. When it does not exist though it will call 'clean' and 'cleandepend', which properly recurse in bsd.progs.mk. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.progs.mk Modified: head/share/mk/bsd.progs.mk ============================================================================== --- head/share/mk/bsd.progs.mk Thu Sep 24 23:23:58 2015 (r288200) +++ head/share/mk/bsd.progs.mk Fri Sep 25 00:07:31 2015 (r288201) @@ -84,7 +84,7 @@ $v = .if !empty(PROGS) && !defined(_RECURSING_PROGS) # tell progs.mk we might want to install things -PROGS_TARGETS+= checkdpadd clean cleandepend cleandir cleanobj depend install +PROGS_TARGETS+= checkdpadd clean cleandepend cleandir depend install .for p in ${PROGS} .if defined(PROGS_CXX) && !empty(PROGS_CXX:M$p) From owner-svn-src-head@freebsd.org Fri Sep 25 00:30:54 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2CA43A07626; Fri, 25 Sep 2015 00:30:54 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1DE211D0A; Fri, 25 Sep 2015 00:30:54 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P0UrW6029542; Fri, 25 Sep 2015 00:30:53 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P0UrXB029541; Fri, 25 Sep 2015 00:30:53 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509250030.t8P0UrXB029541@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 25 Sep 2015 00:30:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288203 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 00:30:54 -0000 Author: emaste Date: Fri Sep 25 00:30:53 2015 New Revision: 288203 URL: https://svnweb.freebsd.org/changeset/base/288203 Log: Remove EOL whitespace from Makefile.inc1 Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Fri Sep 25 00:23:36 2015 (r288202) +++ head/Makefile.inc1 Fri Sep 25 00:30:53 2015 (r288203) @@ -267,7 +267,7 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ MK_LLDB=no MK_TESTS=no \ - MK_INCLUDES=yes + MK_INCLUDES=yes # build-tools stage TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ @@ -1255,7 +1255,7 @@ update: # ELF Tool Chain libraries are needed for ELF tools and dtrace tools. .if ${BOOTSTRAPPING} < 1100006 -_elftoolchain_libs= lib/libelf lib/libdwarf +_elftoolchain_libs= lib/libelf lib/libdwarf .endif legacy: @@ -1279,7 +1279,7 @@ legacy: # binaries is usually quite narrow. Bootstrap tools use the host's compiler and # libraries, augmented by -legacy. # -_bt= _bootstrap-tools +_bt= _bootstrap-tools .if ${MK_GAMES} != "no" _strfile= games/fortune/strfile From owner-svn-src-head@freebsd.org Fri Sep 25 01:05:47 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7CA9A08F4B; Fri, 25 Sep 2015 01:05:47 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B6ABC1D1B; Fri, 25 Sep 2015 01:05:47 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P15lhP042368; Fri, 25 Sep 2015 01:05:47 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P15jXx042359; Fri, 25 Sep 2015 01:05:45 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201509250105.t8P15jXx042359@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 25 Sep 2015 01:05:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288204 - in head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 01:05:47 -0000 Author: delphij Date: Fri Sep 25 01:05:44 2015 New Revision: 288204 URL: https://svnweb.freebsd.org/changeset/base/288204 Log: MFV r288063: make dataset property de-registration operation O(1) A change to a property on a dataset must be propagated to its descendants in case that property is inherited. For datasets whose information is not currently loaded into memory (e.g. a snapshot that isn't currently mounted), there is nothing to do; the property change will take effect the next time that dataset is loaded. To handle updates to datasets that are in-core, ZFS registers a callback entry for each property of each loaded dataset with the dsl directory that holds that dataset. There is a dsl directory associated with each live dataset that references both the live dataset and any snapshots of the live dataset. A property change is effected by doing a traversal of the tree of dsl directories for a pool, starting at the directory sourcing the change, and invoking these callbacks. The current implementation both registers and de-registers properties individually for each loaded dataset. While registration for a property is O(1) (insert into a list), de-registration is O(n) (search list and then remove). The 'n' for de-registration, however, is not limited to the size (number of snapshots + 1) of the dsl directory. The eviction portion of the life cycle for the in core state of datasets is asynchronous, which allows multiple copies of the dataset information to be in-core at once. Only one of these copies is active at any time with the rest going through tear down processing, but all copies contribute to the cost of performing a dsl_prop_unregister(). One way to create multiple, in-flight copies of dataset information is by performing "zfs list" operations from multiple threads concurrently. In-core dataset information is loaded on demand and then evicted when reference counts drops to zero. For datasets that are not mounted, there is no persistent reference count to keep them resident. So, a list operation will load them, compute the information required to do the list operation, and then evict them. When performing this operation from multiple threads it is possible that some of the in-core dataset information will be reused, but also possible to lose the race and load the dataset again, even while the same information is being torn down. Compounding the performance issue further is a change made for illumos issue 5056 which made dataset eviction single threaded. In environments using automation to manage ZFS datasets, it is now possible to create enough of a backlog of dataset evictions to consume excessive amounts of kernel memory and to bog down the system. The fix employed here is to make property de-registration O(1). With this change in place, it is hoped that a single thread is more than sufficient to handle eviction processing. If it isn't, the problem can be solved by increasing the number of threads devoted to the eviction taskq. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h: Associate dsl property callback records with both the dsl directory and the dsl dataset that is registering the callback. Both connections are protected by the dsl directory's "dd_lock". When linking callbacks into a dsl directory, group them by the property type. This helps reduce the space penalty for the double association (the property name pointer is stored once per dsl_dir instead of in each record) and reduces the number of strcmp() calls required to do callback processing when updating a single property. Property types are stored in a linked list since currently ZFS registers a maximum of 10 property types for each dataset. Note that the property buckets/records associated with a dsl directory are created on demand, but only freed when the dsl directory is freed. Given the static nature of property types and their small number, there is no benefit to freeing the few bytes of memory used to represent the property record earlier. When a property record becomes empty, the dsl directory is either going to become unreferenced a little later in this thread of execution, or there is a high chance that another dataset is going to be loaded that would recreate the bucket anyway. Replace dsl_prop_unregister() with dsl_prop_unregister_all(). All callers of dsl_prop_unregister() are trying to remove all property registrations for a given dsl dataset anyway. By changing the API, we can avoid doing any lookups of callbacks by property type and just traverse the list of all callbacks for the dataset and free each one. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c: Replace use of dsl_prop_unregister() with the new dsl_prop_unregister_all() API. illumos/illumos-gate@03bad06fbb261fd4a7151a70dfeff2f5041cce1f Author: Justin Gibbs Reviewed by: Matthew Ahrens Reviewed by: Prakash Surya Approved by: Dan McDonald Illumos issue: 6171 dsl_prop_unregister() slows down dataset eviction https://www.illumos.org/issues/6171 MFC after: 2 weeks Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c Fri Sep 25 01:05:44 2015 (r288204) @@ -680,40 +680,8 @@ dmu_objset_evict(objset_t *os) for (int t = 0; t < TXG_SIZE; t++) ASSERT(!dmu_objset_is_dirty(os, t)); - if (ds) { - if (!ds->ds_is_snapshot) { - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_CHECKSUM), - checksum_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_COMPRESSION), - compression_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_COPIES), - copies_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_DEDUP), - dedup_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_LOGBIAS), - logbias_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_SYNC), - sync_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_REDUNDANT_METADATA), - redundant_metadata_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_RECORDSIZE), - recordsize_changed_cb, os)); - } - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_PRIMARYCACHE), - primary_cache_changed_cb, os)); - VERIFY0(dsl_prop_unregister(ds, - zfs_prop_to_name(ZFS_PROP_SECONDARYCACHE), - secondary_cache_changed_cb, os)); - } + if (ds) + dsl_prop_unregister_all(ds, os); if (os->os_sa) sa_tear_down(os); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c Fri Sep 25 01:05:44 2015 (r288204) @@ -288,6 +288,7 @@ dsl_dataset_evict(void *dbu) ASSERT(!list_link_active(&ds->ds_synced_link)); + list_destroy(&ds->ds_prop_cbs); if (mutex_owned(&ds->ds_lock)) mutex_exit(&ds->ds_lock); mutex_destroy(&ds->ds_lock); @@ -434,6 +435,9 @@ dsl_dataset_hold_obj(dsl_pool_t *dp, uin list_create(&ds->ds_sendstreams, sizeof (dmu_sendarg_t), offsetof(dmu_sendarg_t, dsa_link)); + list_create(&ds->ds_prop_cbs, sizeof (dsl_prop_cb_record_t), + offsetof(dsl_prop_cb_record_t, cbr_ds_node)); + if (doi.doi_type == DMU_OTN_ZAP_METADATA) { for (spa_feature_t f = 0; f < SPA_FEATURES; f++) { if (!(spa_feature_table[f].fi_flags & Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c Fri Sep 25 01:05:44 2015 (r288204) @@ -152,11 +152,7 @@ dsl_dir_evict(void *dbu) spa_async_close(dd->dd_pool->dp_spa, dd); - /* - * The props callback list should have been cleaned up by - * objset_evict(). - */ - list_destroy(&dd->dd_prop_cbs); + dsl_prop_fini(dd); mutex_destroy(&dd->dd_lock); kmem_free(dd, sizeof (dsl_dir_t)); } @@ -191,9 +187,7 @@ dsl_dir_hold_obj(dsl_pool_t *dp, uint64_ dd->dd_dbuf = dbuf; dd->dd_pool = dp; mutex_init(&dd->dd_lock, NULL, MUTEX_DEFAULT, NULL); - - list_create(&dd->dd_prop_cbs, sizeof (dsl_prop_cb_record_t), - offsetof(dsl_prop_cb_record_t, cbr_node)); + dsl_prop_init(dd); dsl_dir_snap_cmtime_update(dd); @@ -251,6 +245,7 @@ dsl_dir_hold_obj(dsl_pool_t *dp, uint64_ if (winner != NULL) { if (dd->dd_parent) dsl_dir_rele(dd->dd_parent, dd); + dsl_prop_fini(dd); mutex_destroy(&dd->dd_lock); kmem_free(dd, sizeof (dsl_dir_t)); dd = winner; @@ -278,6 +273,7 @@ dsl_dir_hold_obj(dsl_pool_t *dp, uint64_ errout: if (dd->dd_parent) dsl_dir_rele(dd->dd_parent, dd); + dsl_prop_fini(dd); mutex_destroy(&dd->dd_lock); kmem_free(dd, sizeof (dsl_dir_t)); dmu_buf_rele(dbuf, tag); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c Fri Sep 25 01:05:44 2015 (r288204) @@ -215,6 +215,58 @@ dsl_prop_get_ds(dsl_dataset_t *ds, const intsz, numints, buf, setpoint, ds->ds_is_snapshot)); } +static dsl_prop_record_t * +dsl_prop_record_find(dsl_dir_t *dd, const char *propname) +{ + dsl_prop_record_t *pr = NULL; + + ASSERT(MUTEX_HELD(&dd->dd_lock)); + + for (pr = list_head(&dd->dd_props); + pr != NULL; pr = list_next(&dd->dd_props, pr)) { + if (strcmp(pr->pr_propname, propname) == 0) + break; + } + + return (pr); +} + +static dsl_prop_record_t * +dsl_prop_record_create(dsl_dir_t *dd, const char *propname) +{ + dsl_prop_record_t *pr; + + ASSERT(MUTEX_HELD(&dd->dd_lock)); + + pr = kmem_alloc(sizeof (dsl_prop_record_t), KM_SLEEP); + pr->pr_propname = spa_strdup(propname); + list_create(&pr->pr_cbs, sizeof (dsl_prop_cb_record_t), + offsetof(dsl_prop_cb_record_t, cbr_pr_node)); + list_insert_head(&dd->dd_props, pr); + + return (pr); +} + +void +dsl_prop_init(dsl_dir_t *dd) +{ + list_create(&dd->dd_props, sizeof (dsl_prop_record_t), + offsetof(dsl_prop_record_t, pr_node)); +} + +void +dsl_prop_fini(dsl_dir_t *dd) +{ + dsl_prop_record_t *pr; + + while ((pr = list_remove_head(&dd->dd_props)) != NULL) { + list_destroy(&pr->pr_cbs); + strfree((char *)pr->pr_propname); + kmem_free(pr, sizeof (dsl_prop_record_t)); + } + list_destroy(&dd->dd_props); +} + /* * Register interest in the named property. We'll call the callback * once to notify it of the current property value, and again each time @@ -229,6 +281,7 @@ dsl_prop_register(dsl_dataset_t *ds, con dsl_dir_t *dd = ds->ds_dir; dsl_pool_t *dp = dd->dd_pool; uint64_t value; + dsl_prop_record_t *pr; dsl_prop_cb_record_t *cbr; int err; @@ -240,12 +293,16 @@ dsl_prop_register(dsl_dataset_t *ds, con cbr = kmem_alloc(sizeof (dsl_prop_cb_record_t), KM_SLEEP); cbr->cbr_ds = ds; - cbr->cbr_propname = kmem_alloc(strlen(propname)+1, KM_SLEEP); - (void) strcpy((char *)cbr->cbr_propname, propname); cbr->cbr_func = callback; cbr->cbr_arg = cbarg; + mutex_enter(&dd->dd_lock); - list_insert_head(&dd->dd_prop_cbs, cbr); + pr = dsl_prop_record_find(dd, propname); + if (pr == NULL) + pr = dsl_prop_record_create(dd, propname); + cbr->cbr_pr = pr; + list_insert_head(&pr->pr_cbs, cbr); + list_insert_head(&ds->ds_prop_cbs, cbr); mutex_exit(&dd->dd_lock); cbr->cbr_func(cbr->cbr_arg, value); @@ -376,56 +433,34 @@ dsl_prop_predict(dsl_dir_t *dd, const ch } /* - * Unregister this callback. Return 0 on success, ENOENT if ddname is - * invalid, or ENOMSG if no matching callback registered. + * Unregister all callbacks that are registered with the + * given callback argument. */ -int -dsl_prop_unregister(dsl_dataset_t *ds, const char *propname, - dsl_prop_changed_cb_t *callback, void *cbarg) +void +dsl_prop_unregister_all(dsl_dataset_t *ds, void *cbarg) { + dsl_prop_cb_record_t *cbr, *next_cbr; + dsl_dir_t *dd = ds->ds_dir; - dsl_prop_cb_record_t *cbr; mutex_enter(&dd->dd_lock); - for (cbr = list_head(&dd->dd_prop_cbs); - cbr; cbr = list_next(&dd->dd_prop_cbs, cbr)) { - if (cbr->cbr_ds == ds && - cbr->cbr_func == callback && - cbr->cbr_arg == cbarg && - strcmp(cbr->cbr_propname, propname) == 0) - break; - } - - if (cbr == NULL) { - mutex_exit(&dd->dd_lock); - return (SET_ERROR(ENOMSG)); + next_cbr = list_head(&ds->ds_prop_cbs); + while (next_cbr != NULL) { + cbr = next_cbr; + next_cbr = list_next(&ds->ds_prop_cbs, cbr); + if (cbr->cbr_arg == cbarg) { + list_remove(&ds->ds_prop_cbs, cbr); + list_remove(&cbr->cbr_pr->pr_cbs, cbr); + kmem_free(cbr, sizeof (dsl_prop_cb_record_t)); + } } - - list_remove(&dd->dd_prop_cbs, cbr); mutex_exit(&dd->dd_lock); - kmem_free((void*)cbr->cbr_propname, strlen(cbr->cbr_propname)+1); - kmem_free(cbr, sizeof (dsl_prop_cb_record_t)); - - return (0); } boolean_t dsl_prop_hascb(dsl_dataset_t *ds) { - dsl_dir_t *dd = ds->ds_dir; - boolean_t rv = B_FALSE; - dsl_prop_cb_record_t *cbr; - - mutex_enter(&dd->dd_lock); - for (cbr = list_head(&dd->dd_prop_cbs); cbr; - cbr = list_next(&dd->dd_prop_cbs, cbr)) { - if (cbr->cbr_ds == ds) { - rv = B_TRUE; - break; - } - } - mutex_exit(&dd->dd_lock); - return (rv); + return (!list_is_empty(&ds->ds_prop_cbs)); } /* ARGSUSED */ @@ -433,38 +468,50 @@ static int dsl_prop_notify_all_cb(dsl_pool_t *dp, dsl_dataset_t *ds, void *arg) { dsl_dir_t *dd = ds->ds_dir; + dsl_prop_record_t *pr; dsl_prop_cb_record_t *cbr; mutex_enter(&dd->dd_lock); - for (cbr = list_head(&dd->dd_prop_cbs); cbr; - cbr = list_next(&dd->dd_prop_cbs, cbr)) { - uint64_t value; + for (pr = list_head(&dd->dd_props); + pr; pr = list_next(&dd->dd_props, pr)) { + for (cbr = list_head(&pr->pr_cbs); cbr; + cbr = list_next(&pr->pr_cbs, cbr)) { + uint64_t value; - /* - * Callback entries do not have holds on their datasets - * so that datasets with registered callbacks are still - * eligible for eviction. Unlike operations on callbacks - * for a single dataset, we are performing a recursive - * descent of related datasets and the calling context - * for this iteration only has a dataset hold on the root. - * Without a hold, the callback's pointer to the dataset - * could be invalidated by eviction at any time. - * - * Use dsl_dataset_try_add_ref() to verify that the - * dataset has not begun eviction processing and to - * prevent eviction from occurring for the duration - * of the callback. If the hold attempt fails, this - * object is already being evicted and the callback can - * be safely ignored. - */ - if (!dsl_dataset_try_add_ref(dp, cbr->cbr_ds, FTAG)) - continue; + /* + * Callback entries do not have holds on their + * datasets so that datasets with registered + * callbacks are still eligible for eviction. + * Unlike operations to update properties on a + * single dataset, we are performing a recursive + * descent of related head datasets. The caller + * of this function only has a dataset hold on + * the passed in head dataset, not the snapshots + * associated with this dataset. Without a hold, + * the dataset pointer within callback records + * for snapshots can be invalidated by eviction + * at any time. + * + * Use dsl_dataset_try_add_ref() to verify + * that the dataset for a snapshot has not + * begun eviction processing and to prevent + * eviction from occurring for the duration of + * the callback. If the hold attempt fails, + * this object is already being evicted and the + * callback can be safely ignored. + */ + if (ds != cbr->cbr_ds && + !dsl_dataset_try_add_ref(dp, cbr->cbr_ds, FTAG)) + continue; - if (dsl_prop_get_ds(cbr->cbr_ds, cbr->cbr_propname, - sizeof (value), 1, &value, NULL) == 0) - cbr->cbr_func(cbr->cbr_arg, value); + if (dsl_prop_get_ds(cbr->cbr_ds, + cbr->cbr_pr->pr_propname, sizeof (value), 1, + &value, NULL) == 0) + cbr->cbr_func(cbr->cbr_arg, value); - dsl_dataset_rele(cbr->cbr_ds, FTAG); + if (ds != cbr->cbr_ds) + dsl_dataset_rele(cbr->cbr_ds, FTAG); + } } mutex_exit(&dd->dd_lock); @@ -489,6 +536,7 @@ dsl_prop_changed_notify(dsl_pool_t *dp, const char *propname, uint64_t value, int first) { dsl_dir_t *dd; + dsl_prop_record_t *pr; dsl_prop_cb_record_t *cbr; objset_t *mos = dp->dp_meta_objset; zap_cursor_t zc; @@ -515,30 +563,33 @@ dsl_prop_changed_notify(dsl_pool_t *dp, } mutex_enter(&dd->dd_lock); - for (cbr = list_head(&dd->dd_prop_cbs); cbr; - cbr = list_next(&dd->dd_prop_cbs, cbr)) { - uint64_t propobj; + pr = dsl_prop_record_find(dd, propname); + if (pr != NULL) { + for (cbr = list_head(&pr->pr_cbs); cbr; + cbr = list_next(&pr->pr_cbs, cbr)) { + uint64_t propobj; - /* - * cbr->cbf_ds may be invalidated due to eviction, - * requiring the use of dsl_dataset_try_add_ref(). - * See comment block in dsl_prop_notify_all_cb() - * for details. - */ - if (strcmp(cbr->cbr_propname, propname) != 0 || - !dsl_dataset_try_add_ref(dp, cbr->cbr_ds, FTAG)) - continue; + /* + * cbr->cbr_ds may be invalidated due to eviction, + * requiring the use of dsl_dataset_try_add_ref(). + * See comment block in dsl_prop_notify_all_cb() + * for details. + */ + if (!dsl_dataset_try_add_ref(dp, cbr->cbr_ds, FTAG)) + continue; - propobj = dsl_dataset_phys(cbr->cbr_ds)->ds_props_obj; + propobj = dsl_dataset_phys(cbr->cbr_ds)->ds_props_obj; - /* - * If the property is not set on this ds, then it is - * inherited here; call the callback. - */ - if (propobj == 0 || zap_contains(mos, propobj, propname) != 0) - cbr->cbr_func(cbr->cbr_arg, value); + /* + * If the property is not set on this ds, then it is + * inherited here; call the callback. + */ + if (propobj == 0 || + zap_contains(mos, propobj, propname) != 0) + cbr->cbr_func(cbr->cbr_arg, value); - dsl_dataset_rele(cbr->cbr_ds, FTAG); + dsl_dataset_rele(cbr->cbr_ds, FTAG); + } } mutex_exit(&dd->dd_lock); @@ -678,10 +729,10 @@ dsl_prop_set_sync_impl(dsl_dataset_t *ds * ds here. */ mutex_enter(&ds->ds_dir->dd_lock); - for (cbr = list_head(&ds->ds_dir->dd_prop_cbs); cbr; - cbr = list_next(&ds->ds_dir->dd_prop_cbs, cbr)) { - if (cbr->cbr_ds == ds && - strcmp(cbr->cbr_propname, propname) == 0) + for (cbr = list_head(&ds->ds_prop_cbs); cbr; + cbr = list_next(&ds->ds_prop_cbs, cbr)) { + if (strcmp(cbr->cbr_pr->pr_propname, + propname) == 0) cbr->cbr_func(cbr->cbr_arg, intval); } mutex_exit(&ds->ds_dir->dd_lock); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h Fri Sep 25 01:05:44 2015 (r288204) @@ -184,6 +184,9 @@ typedef struct dsl_dataset { kmutex_t ds_sendstream_lock; list_t ds_sendstreams; + /* Protected by our dsl_dir's dd_lock */ + list_t ds_prop_cbs; + /* * For ZFEATURE_FLAG_PER_DATASET features, set if this dataset * uses this feature. Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h Fri Sep 25 01:05:44 2015 (r288204) @@ -102,7 +102,7 @@ struct dsl_dir { /* Protected by dd_lock */ kmutex_t dd_lock; - list_t dd_prop_cbs; /* list of dsl_prop_cb_record_t's */ + list_t dd_props; /* list of dsl_prop_record_t's */ timestruc_t dd_snap_cmtime; /* last time snapshot namespace changed */ uint64_t dd_origin_txg; Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_prop.h Fri Sep 25 01:05:44 2015 (r288204) @@ -41,10 +41,17 @@ struct dsl_dir; /* The callback func may not call into the DMU or DSL! */ typedef void (dsl_prop_changed_cb_t)(void *arg, uint64_t newval); +typedef struct dsl_prop_record { + list_node_t pr_node; /* link on dd_props */ + const char *pr_propname; + list_t pr_cbs; +} dsl_prop_record_t; + typedef struct dsl_prop_cb_record { - list_node_t cbr_node; /* link on dd_prop_cbs */ + list_node_t cbr_pr_node; /* link on pr_cbs */ + list_node_t cbr_ds_node; /* link on ds_prop_cbs */ + dsl_prop_record_t *cbr_pr; struct dsl_dataset *cbr_ds; - const char *cbr_propname; dsl_prop_changed_cb_t *cbr_func; void *cbr_arg; } dsl_prop_cb_record_t; @@ -54,10 +61,11 @@ typedef struct dsl_props_arg { zprop_source_t pa_source; } dsl_props_arg_t; +void dsl_prop_init(dsl_dir_t *dd); +void dsl_prop_fini(dsl_dir_t *dd); int dsl_prop_register(struct dsl_dataset *ds, const char *propname, dsl_prop_changed_cb_t *callback, void *cbarg); -int dsl_prop_unregister(struct dsl_dataset *ds, const char *propname, - dsl_prop_changed_cb_t *callback, void *cbarg); +void dsl_prop_unregister_all(struct dsl_dataset *ds, void *cbarg); void dsl_prop_notify_all(struct dsl_dir *dd); boolean_t dsl_prop_hascb(struct dsl_dataset *ds); Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c Fri Sep 25 00:30:53 2015 (r288203) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c Fri Sep 25 01:05:44 2015 (r288204) @@ -555,35 +555,7 @@ zfs_register_callbacks(vfs_t *vfsp) return (0); unregister: - /* - * We may attempt to unregister some callbacks that are not - * registered, but this is OK; it will simply return ENOMSG, - * which we will ignore. - */ - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_ATIME), - atime_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_XATTR), - xattr_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_RECORDSIZE), - blksz_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_READONLY), - readonly_changed_cb, zfsvfs); -#ifdef illumos - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_DEVICES), - devices_changed_cb, zfsvfs); -#endif - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_SETUID), - setuid_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_EXEC), - exec_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_SNAPDIR), - snapdir_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_ACLMODE), - acl_mode_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_ACLINHERIT), - acl_inherit_changed_cb, zfsvfs); - (void) dsl_prop_unregister(ds, zfs_prop_to_name(ZFS_PROP_VSCAN), - vscan_changed_cb, zfsvfs); + dsl_prop_unregister_all(ds, zfsvfs); return (error); } @@ -1263,43 +1235,9 @@ void zfs_unregister_callbacks(zfsvfs_t *zfsvfs) { objset_t *os = zfsvfs->z_os; - struct dsl_dataset *ds; - - /* - * Unregister properties. - */ - if (!dmu_objset_is_snapshot(os)) { - ds = dmu_objset_ds(os); - VERIFY(dsl_prop_unregister(ds, "atime", atime_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "xattr", xattr_changed_cb, - zfsvfs) == 0); - VERIFY(dsl_prop_unregister(ds, "recordsize", blksz_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "readonly", readonly_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "setuid", setuid_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "exec", exec_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "snapdir", snapdir_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "aclmode", acl_mode_changed_cb, - zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "aclinherit", - acl_inherit_changed_cb, zfsvfs) == 0); - - VERIFY(dsl_prop_unregister(ds, "vscan", - vscan_changed_cb, zfsvfs) == 0); - } + if (!dmu_objset_is_snapshot(os)) + dsl_prop_unregister_all(dmu_objset_ds(os), zfsvfs); } #ifdef SECLABEL From owner-svn-src-head@freebsd.org Fri Sep 25 02:52:55 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A02FEA070EA; Fri, 25 Sep 2015 02:52:55 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 903881CD5; Fri, 25 Sep 2015 02:52:55 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P2qt4x086701; Fri, 25 Sep 2015 02:52:55 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P2qtPN086699; Fri, 25 Sep 2015 02:52:55 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509250252.t8P2qtPN086699@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 25 Sep 2015 02:52:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288207 - head/share/vt/fonts X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 02:52:55 -0000 Author: emaste Date: Fri Sep 25 02:52:54 2015 New Revision: 288207 URL: https://svnweb.freebsd.org/changeset/base/288207 Log: Add double size 16x32 VGA ROM font This was created from vgarom-8x16.hex, and should be useful for higher resolution displays. Sponsored by: The FreeBSD Foundation Added: head/share/vt/fonts/vgarom-16x32.hex (contents, props changed) Modified: head/share/vt/fonts/Makefile Modified: head/share/vt/fonts/Makefile ============================================================================== --- head/share/vt/fonts/Makefile Fri Sep 25 01:17:52 2015 (r288206) +++ head/share/vt/fonts/Makefile Fri Sep 25 02:52:54 2015 (r288207) @@ -4,6 +4,7 @@ FILES= gallant.fnt \ vgarom-8x8.fnt \ vgarom-8x14.fnt \ vgarom-8x16.fnt \ + vgarom-16x32.fnt \ vgarom-thin-8x8.fnt \ vgarom-thin-8x16.fnt Added: head/share/vt/fonts/vgarom-16x32.hex ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/vt/fonts/vgarom-16x32.hex Fri Sep 25 02:52:54 2015 (r288207) @@ -0,0 +1,587 @@ +# $FreeBSD$ +# Height: 32 +# Width: 16 +0000:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0020:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0021:000000000000000003C003C00FF00FF00FF00FF00FF00FF003C003C003C003C003C003C00000000003C003C003C003C000000000000000000000000000000000 +0022:000000003C3C3C3C3C3C3C3C3C3C3C3C0C300C300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0023:0000000000000000000000003CF03CF03CF03CF0FFFCFFFC3CF03CF03CF03CF03CF03CF0FFFCFFFC3CF03CF03CF03CF000000000000000000000000000000000 +0024:03C003C003C003C03FF03FF0F03CF03CF00CF00CF000F0003FF03FF0003C003C003C003CC03CC03CF03CF03C3FF03FF003C003C003C003C00000000000000000 +0025:00000000000000000000000000000000F00CF00CF03CF03C00F000F003C003C00F000F003C003C00F03CF03CC03CC03C00000000000000000000000000000000 +0026:00000000000000000FC00FC03CF03CF03CF03CF00FC00FC03F3C3F3CF3F0F3F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0027:000000000F000F000F000F000F000F003C003C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0028:000000000000000000F000F003C003C00F000F000F000F000F000F000F000F000F000F000F000F0003C003C000F000F000000000000000000000000000000000 +0029:00000000000000000F000F0003C003C000F000F000F000F000F000F000F000F000F000F000F000F003C003C00F000F0000000000000000000000000000000000 +002A:00000000000000000000000000000000000000003C3C3C3C0FF00FF0FFFFFFFF0FF00FF03C3C3C3C000000000000000000000000000000000000000000000000 +002B:000000000000000000000000000000000000000003C003C003C003C03FFC3FFC03C003C003C003C0000000000000000000000000000000000000000000000000 +002C:00000000000000000000000000000000000000000000000000000000000000000000000003C003C003C003C003C003C00F000F00000000000000000000000000 +002D:00000000000000000000000000000000000000000000000000000000FFFCFFFC0000000000000000000000000000000000000000000000000000000000000000 +002E:0000000000000000000000000000000000000000000000000000000000000000000000000000000003C003C003C003C000000000000000000000000000000000 +002F:00000000000000000000000000000000000C000C003C003C00F000F003C003C00F000F003C003C00F000F000C000C00000000000000000000000000000000000 +0030:00000000000000000FC00FC03CF03CF0F03CF03CF03CF03CF33CF33CF33CF33CF03CF03CF03CF03C3CF03CF00FC00FC000000000000000000000000000000000 +0031:000000000000000003C003C00FC00FC03FC03FC003C003C003C003C003C003C003C003C003C003C003C003C03FFC3FFC00000000000000000000000000000000 +0032:00000000000000003FF03FF0F03CF03C003C003C00F000F003C003C00F000F003C003C00F000F000F03CF03CFFFCFFFC00000000000000000000000000000000 +0033:00000000000000003FF03FF0F03CF03C003C003C003C003C0FF00FF0003C003C003C003C003C003CF03CF03C3FF03FF000000000000000000000000000000000 +0034:000000000000000000F000F003F003F00FF00FF03CF03CF0F0F0F0F0FFFCFFFC00F000F000F000F000F000F003FC03FC00000000000000000000000000000000 +0035:0000000000000000FFFCFFFCF000F000F000F000F000F000FFF0FFF0003C003C003C003C003C003CF03CF03C3FF03FF000000000000000000000000000000000 +0036:00000000000000000FC00FC03C003C00F000F000F000F000FFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0037:0000000000000000FFFCFFFCF03CF03C003C003C003C003C00F000F003C003C00F000F000F000F000F000F000F000F0000000000000000000000000000000000 +0038:00000000000000003FF03FF0F03CF03CF03CF03CF03CF03C3FF03FF0F03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0039:00000000000000003FF03FF0F03CF03CF03CF03CF03CF03C3FFC3FFC003C003C003C003C003C003C00F000F03FC03FC000000000000000000000000000000000 +003A:0000000000000000000000000000000003C003C003C003C000000000000000000000000003C003C003C003C00000000000000000000000000000000000000000 +003B:0000000000000000000000000000000003C003C003C003C000000000000000000000000003C003C003C003C00F000F0000000000000000000000000000000000 +003C:000000000000000000000000003C003C00F000F003C003C00F000F003C003C000F000F0003C003C000F000F0003C003C00000000000000000000000000000000 +003D:00000000000000000000000000000000000000003FFC3FFC00000000000000003FFC3FFC00000000000000000000000000000000000000000000000000000000 +003E:0000000000000000000000003C003C000F000F0003C003C000F000F0003C003C00F000F003C003C00F000F003C003C0000000000000000000000000000000000 +003F:00000000000000003FF03FF0F03CF03CF03CF03C00F000F003C003C003C003C003C003C00000000003C003C003C003C000000000000000000000000000000000 +0040:0000000000000000000000003FF03FF0F03CF03CF03CF03CF3FCF3FCF3FCF3FCF3FCF3FCF3F0F3F0F000F0003FF03FF000000000000000000000000000000000 +0041:0000000000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0042:0000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CFFF0FFF000000000000000000000000000000000 +0043:00000000000000000FF00FF03C3C3C3CF00CF00CF000F000F000F000F000F000F000F000F00CF00C3C3C3C3C0FF00FF000000000000000000000000000000000 +0044:0000000000000000FFC0FFC03CF03CF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CF03CF0FFC0FFC000000000000000000000000000000000 +0045:0000000000000000FFFCFFFC3C3C3C3C3C0C3C0C3CC03CC03FC03FC03CC03CC03C003C003C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +0046:0000000000000000FFFCFFFC3C3C3C3C3C0C3C0C3CC03CC03FC03FC03CC03CC03C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +0047:00000000000000000FF00FF03C3C3C3CF00CF00CF000F000F000F000F3FCF3FCF03CF03CF03CF03C3C3C3C3C0FCC0FCC00000000000000000000000000000000 +0048:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0049:00000000000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +004A:000000000000000003FC03FC00F000F000F000F000F000F000F000F000F000F0F0F0F0F0F0F0F0F0F0F0F0F03FC03FC000000000000000000000000000000000 +004B:0000000000000000FC3CFC3C3C3C3C3C3C3C3C3C3CF03CF03FC03FC03FC03FC03CF03CF03C3C3C3C3C3C3C3CFC3CFC3C00000000000000000000000000000000 +004C:0000000000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +004D:0000000000000000F03CF03CFCFCFCFCFFFCFFFCFFFCFFFCF33CF33CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +004E:0000000000000000F03CF03CFC3CFC3CFF3CFF3CFFFCFFFCF3FCF3FCF0FCF0FCF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +004F:00000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0050:0000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +0051:00000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF33CF33CF3FCF3FC3FF03FF000F000F000FC00FC0000000000000000 +0052:0000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03CF03CF03C3C3C3C3C3C3C3C3C3C3C3CFC3CFC3C00000000000000000000000000000000 +0053:00000000000000003FF03FF0F03CF03CF03CF03C3C003C000FC00FC000F000F0003C003CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0054:00000000000000003FFC3FFC3FFC3FFC33CC33CC03C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0055:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0056:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3CF03CF00FC00FC00300030000000000000000000000000000000000 +0057:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF33CF33CF33CF33CF33CF33CFFFCFFFCFCFCFCFC3CF03CF000000000000000000000000000000000 +0058:0000000000000000F03CF03CF03CF03C3CF03CF03FF03FF00FC00FC00FC00FC03FF03FF03CF03CF0F03CF03CF03CF03C00000000000000000000000000000000 +0059:00000000000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +005A:0000000000000000FFFCFFFCF03CF03CC03CC03C00F000F003C003C00F000F003C003C00F00CF00CF03CF03CFFFCFFFC00000000000000000000000000000000 +005B:00000000000000000FF00FF00F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000FF00FF000000000000000000000000000000000 +005C:000000000000000000000000C000C000F000F000FC00FC003F003F000FC00FC003F003F000FC00FC003C003C000C000C00000000000000000000000000000000 +005D:00000000000000000FF00FF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00FF00FF000000000000000000000000000000000 +005E:030003000FC00FC03CF03CF0F03CF03C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +005F:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFF0000000000000000 +0060:0F000F000F000F0003C003C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0061:00000000000000000000000000000000000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0062:0000000000000000FC00FC003C003C003C003C003FC03FC03CF03CF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FF03FF000000000000000000000000000000000 +0063:00000000000000000000000000000000000000003FF03FF0F03CF03CF000F000F000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +0064:000000000000000003F003F000F000F000F000F00FF00FF03CF03CF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0065:00000000000000000000000000000000000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +0066:00000000000000000FC00FC03CF03CF03C303C303C003C00FF00FF003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +0067:00000000000000000000000000000000000000003F3C3F3CF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FF03FF000F000F0F0F0F0F03FC03FC000000000 +0068:0000000000000000FC00FC003C003C003C003C003CF03CF03F3C3F3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CFC3CFC3C00000000000000000000000000000000 +0069:000000000000000003C003C003C003C0000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +006A:0000000000000000003C003C003C003C0000000000FC00FC003C003C003C003C003C003C003C003C003C003C003C003C3C3C3C3C3C3C3C3C0FF00FF000000000 +006B:0000000000000000FC00FC003C003C003C003C003C3C3C3C3CF03CF03FC03FC03FC03FC03CF03CF03C3C3C3CFC3CFC3C00000000000000000000000000000000 +006C:00000000000000000FC00FC003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +006D:0000000000000000000000000000000000000000FCF0FCF0FFFCFFFCF33CF33CF33CF33CF33CF33CF33CF33CF03CF03C00000000000000000000000000000000 +006E:0000000000000000000000000000000000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00000000000000000000000000000000 +006F:00000000000000000000000000000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0070:0000000000000000000000000000000000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C00FF00FF0000000000 +0071:00000000000000000000000000000000000000003F3C3F3CF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FF03FF000F000F000F000F003FC03FC00000000 +0072:0000000000000000000000000000000000000000F3F0F3F03F3C3F3C3C3C3C3C3C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +0073:00000000000000000000000000000000000000003FF03FF0F03CF03C3C003C000FC00FC000F000F0F03CF03C3FF03FF000000000000000000000000000000000 +0074:0000000000000000030003000F000F000F000F00FFF0FFF00F000F000F000F000F000F000F000F000F3C0F3C03F003F000000000000000000000000000000000 +0075:0000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0076:00000000000000000000000000000000000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF003C003C000000000000000000000000000000000 +0077:0000000000000000000000000000000000000000F03CF03CF03CF03CF33CF33CF33CF33CF33CF33CFFFCFFFC3CF03CF000000000000000000000000000000000 +0078:0000000000000000000000000000000000000000F03CF03C3CF03CF00FC00FC00FC00FC00FC00FC03CF03CF0F03CF03C00000000000000000000000000000000 +0079:0000000000000000000000000000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003C00F000F0FFC0FFC000000000 +007A:0000000000000000000000000000000000000000FFFCFFFCF0F0F0F003C003C00F000F003C003C00F03CF03CFFFCFFFC00000000000000000000000000000000 +007B:000000000000000000FC00FC03C003C003C003C003C003C03F003F0003C003C003C003C003C003C003C003C000FC00FC00000000000000000000000000000000 +007C:000000000000000003C003C003C003C003C003C003C003C00000000003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +007D:00000000000000003F003F0003C003C003C003C003C003C000FC00FC03C003C003C003C003C003C003C003C03F003F0000000000000000000000000000000000 +007E:00000000000000003F3C3F3CF3F0F3F0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +00A0:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +00A1:000000000000000003C003C003C003C00000000003C003C003C003C003C003C00FF00FF00FF00FF00FF00FF003C003C000000000000000000000000000000000 +00A2:0000000003C003C003C003C00FF00FF03C3C3C3C3C003C003C003C003C003C003C3C3C3C0FF00FF003C003C003C003C000000000000000000000000000000000 +00A3:000000000FC00FC03CF03CF03C303C303C003C00FF00FF003C003C003C003C003C003C003C003C00FC3CFC3CFFF0FFF000000000000000000000000000000000 +00A4:000000000000000000000000C00CC00CF03CF03C3FF03FF0F03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0F03CF03CC00CC00C000000000000000000000000 +00A5:00000000000000003C3C3C3C3C3C3C3C0FF00FF003C003C03FFC3FFC03C003C03FFC3FFC03C003C003C003C003C003C000000000000000000000000000000000 +00A6:000000000000000003C003C003C003C003C003C003C003C00000000003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +00A7:000000003FF03FF0F03CF03C3C003C000FC00FC03CF03CF0F03CF03CF03CF03C3CF03CF00FC00FC000F000F0F03CF03C3FF03FF0000000000000000000000000 +00A8:00000000F03CF03C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +00A9:00000000000000003FF03FF0F03CF03CC00CC00CCFCCCFCCCC0CCC0CCC0CCC0CCFCCCFCCC00CC00CF03CF03C3FF03FF000000000000000000000000000000000 +00AA:000000000FF00FF03CF03CF03CF03CF00FFC0FFC000000003FFC3FFC000000000000000000000000000000000000000000000000000000000000000000000000 +00AB:00000000000000000000000000000000000000000F3C0F3C3CF03CF0F3C0F3C03CF03CF00F3C0F3C000000000000000000000000000000000000000000000000 +00AC:000000000000000000000000000000000000000000000000FFFCFFFC003C003C003C003C003C003C003C003C0000000000000000000000000000000000000000 +00AD:000000000000000000000000000000000000000000000000000000003FF03FF00000000000000000000000000000000000000000000000000000000000000000 +00AE:00000000000000003FF03FF0F03CF03CC00CC00CCFCCCFCCCCCCCCCCCF0CCF0CCCCCCCCCC00CC00CF03CF03C3FF03FF000000000000000000000000000000000 +00AF:00000000FFFCFFFC0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +00B0:000000000FC00FC03CF03CF03CF03CF00FC00FC00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +00B1:0000000000000000000000000000000003C003C003C003C03FFC3FFC03C003C003C003C00000000000000000FFFFFFFF00000000000000000000000000000000 +00B2:000000003F003F00F3C0F3C00F000F003C003C00F0C0F0C0FFC0FFC0000000000000000000000000000000000000000000000000000000000000000000000000 +00B3:00000000FFC0FFC003C003C00F000F0003C003C0F3C0F3C03F003F00000000000000000000000000000000000000000000000000000000000000000000000000 +00B4:03C003C00F000F003C003C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +00B5:000000000000000000000000000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C00F000F000000000000000000000000000 +00B6:00000000000000003FFF3FFFF3CFF3CFF3CFF3CFF3CFF3CF3FCF3FCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF00000000000000000000000000000000 +00B7:000000000000000000000000000000000000000000000000000000000000000003C003C000000000000000000000000000000000000000000000000000000000 +00B8:0000000000000000000000000000000000000000000000000000000000000000000000000000000003C003C000F000F0003C003C0FF00FF00000000000000000 +00B9:000000003C003C00FC00FC003C003C003C003C003C003C00FF00FF00000000000000000000000000000000000000000000000000000000000000000000000000 +00BA:000000000FC00FC03CF03CF03CF03CF00FC00FC0000000003FF03FF0000000000000000000000000000000000000000000000000000000000000000000000000 +00BB:0000000000000000000000000000000000000000F3C0F3C03CF03CF00F3C0F3C3CF03CF0F3C0F3C0000000000000000000000000000000000000000000000000 +00BC:00000000F000F000F000F000F00CF00CF03CF03CF0F0F0F003C003C00F000F003C3C3C3CF0FCF0FCC3FCC3FC0FFC0FFC003C003C003C003C0000000000000000 +00BD:00000000F000F000F000F000F00CF00CF03CF03CF0F0F0F003C003C00F000F003C003C00F3F0F3F0C03CC03C00F000F003C003C00FFC0FFC0000000000000000 +00BE:00000000FF00FF000F000F003F0C3F0C0F3C0F3CFCF0FCF003C003C00F000F003C3C3C3CF0FCF0FCC33CC33C0FFC0FFC003C003C003C003C0000000000000000 +00BF:00000000000000000F000F000F000F00000000000F000F000F000F003C003C00F000F000F03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00C0:3C003C000F000F0003C003C0000000000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00C1:00F000F003C003C00F000F00000000000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00C2:030003000FC00FC03CF03CF0000000000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00C3:000000003F3C3F3CF3F0F3F0000000000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00C4:00000000F03CF03C00000000030003000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00C5:0FC00FC03CF03CF00FC00FC0000000000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00C6:00000000000000000FFC0FFC3CF03CF0F0F0F0F0F0F0F0F0FFFCFFFCF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FCF0FC00000000000000000000000000000000 +00C7:00000000000000000FF00FF03C3C3C3CF00CF00CF000F000F000F000F000F000F00CF00C3C3C3C3C0FF00FF000F000F0003C003C3FF03FF00000000000000000 +00C8:0F000F0003C003C000F000F000000000FFFCFFFC3C3C3C3C3C003C003FF03FF03C003C003C003C003C3C3C3CFFFCFFFC00000000000000000000000000000000 +00C9:03C003C00F000F003C003C0000000000FFFCFFFC3C3C3C3C3C003C003FF03FF03C003C003C003C003C3C3C3CFFFCFFFC00000000000000000000000000000000 +00CA:030003000FC00FC03CF03CF000000000FFFCFFFC3C3C3C3C3C003C003FF03FF03C003C003C003C003C3C3C3CFFFCFFFC00000000000000000000000000000000 +00CB:00000000F03CF03C00000000FFFCFFFC3C3C3C3C3C003C003C003C003FF03FF03C003C003C003C003C3C3C3CFFFCFFFC00000000000000000000000000000000 +00CC:0F000F0003C003C000F000F0000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00CD:00F000F003C003C00F000F00000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00CE:03C003C00FF00FF03C3C3C3C000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00CF:000000003C3C3C3C000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00D0:00000000000000003FC03FC03CF03CF03C3C3C3C3C3C3C3C3C3C3C3CFF3CFF3C3C3C3C3C3C3C3C3C3CF03CF03FC03FC000000000000000000000000000000000 +00D1:3F3C3F3CF3F0F3F000000000F03CF03CFC3CFC3CFF3CFF3CFFFCFFFCF3FCF3FCF0FCF0FCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +00D2:3C003C000F000F0003C003C0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00D3:00F000F003C003C00F000F00000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00D4:030003000FC00FC03CF03CF0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00D5:3F3C3F3CF3F0F3F0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00D6:00000000F03CF03C000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00D7:00000000000000000000000000000000F03CF03C3CF03CF00FC00FC0030003000FC00FC03CF03CF0F03CF03C0000000000000000000000000000000000000000 +00D8:000C000C003C003C3FF03FF0F0FCF0FCF0FCF0FCF3FCF3FCF33CF33CF33CF33CFF3CFF3CFC3CFC3CFC3CFC3C3FF03FF0F000F000C000C0000000000000000000 +00D9:3C003C000F000F0003C003C000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00DA:00F000F003C003C00F000F0000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00DB:030003000FC00FC03CF03CF000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00DC:00000000F03CF03C00000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00DD:00F000F003C003C00F000F0000000000F00FF00FF00FF00F3C3C3C3C0FF00FF003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00DE:FF00FF003C003C003FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +00DF:00000000000000003FC03FC0F0F0F0F0F0F0F0F0F0F0F0F0F3C0F3C0F0F0F0F0F03CF03CF03CF03CF03CF03CF0F0F0F000000000000000000000000000000000 +00E0:000000003C003C000F000F0003C003C0000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00E1:0000000003C003C00F000F003C003C00000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00E2:00000000030003000FC00FC03CF03CF0000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00E3:00000000000000003F3C3F3CF3F0F3F0000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00E4:0000000000000000F0F0F0F000000000000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00E5:000000000FC00FC03CF03CF00FC00FC0000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00E6:0000000000000000000000000000000000000000F0F0F0F03F3C3F3C0F3C0F3C3FFC3FFCF3C0F3C0F3C0F3C03CFC3CFC00000000000000000000000000000000 +00E7:000000000000000000000000000000000FF00FF03C3C3C3C3C003C003C003C003C3C3C3C0FF00FF000F000F0003C003C0FF00FF0000000000000000000000000 +00E8:000000003C003C000F000F0003C003C0000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +00E9:0000000000F000F003C003C00F000F00000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +00EA:00000000030003000FC00FC03CF03CF0000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +00EB:0000000000000000F03CF03C00000000000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +00EC:000000003C003C000F000F0003C003C0000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00ED:0000000000F000F003C003C00F000F00000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00EE:0000000003C003C00FF00FF03C3C3C3C000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00EF:00000000000000003C3C3C3C00000000000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +00F0:000000003CF03CF00FC00FC00FC00FC03CF03CF000F000F00FF00FF03CF03CF0F0F0F0F0F0F0F0F0F0F0F0F03FC03FC000000000000000000000000000000000 +00F1:00000000000000003F3C3F3CF3F0F3F000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00000000000000000000000000000000 +00F2:000000003C003C000F000F0003C003C0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00F3:0000000003C003C00F000F003C003C00000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00F4:00000000030003000FC00FC03CF03CF0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00F5:00000000000000003F3C3F3CF3F0F3F0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00F6:0000000000000000F03CF03C00000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +00F7:0000000000000000000000000000000003C003C003C003C0000000003FFC3FFC0000000003C003C003C003C00000000000000000000000000000000000000000 +00F8:000000000000000000000000000C000C003C003C3FF03FF0F0FCF0FCF3FCF3FCF33CF33CFF3CFF3CFC3CFC3C3FF03FF0F000F000C000C0000000000000000000 +00F9:000000003C003C000F000F0003C003C000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00FA:0000000003C003C00F000F003C003C0000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00FB:000000000F000F003FC03FC0F0F0F0F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00FC:0000000000000000F0F0F0F00000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +00FD:0000000003C003C00F000F003C003C0000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003C00F000F0FFC0FFC000000000 +00FE:000000000000000000000000FF00FF003C003C003FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C00FF00FF0000000000 +00FF:0000000000000000F03CF03C0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003C00F000F03FC03FC000000000 +0100:000000003FF03FF0000000000FC00FC03CF03CF0F03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03C000000000000000000000000 +0101:000000000000000000000000000000003FF03FF0000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C000000000000000000000000 +0102:F03CF03C3FF03FF000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0103:0000000000000000F03CF03C3FF03FF0000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0104:0000000000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03C03C003C00F000F0003FC03FC00000000 +0105:00000000000000000000000000000000000000003FC03FC000F000F03FF03FF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C03C003C00F000F0003FC03FC00000000 +0106:00F000F003C003C0000000000FF00FF03C3C3C3CF00CF00CF000F000F000F000F000F000F00CF00C3C3C3C3C0FF00FF000000000000000000000000000000000 +0107:0000000000F000F003C003C00F000F00000000003FF03FF0F03CF03CF000F000F000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +010C:3CF03CF00FC00FC0000000000FF00FF03C3C3C3CF00CF00CF000F000F000F000F000F000F00CF00C3C3C3C3C0FF00FF000000000000000000000000000000000 +010D:00000000000000003CF03CF00FC00FC0000000003FF03FF0F03CF03CF000F000F000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +010E:3CF03CF00FC00FC000000000FFC0FFC03CF03CF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CF03CF0FFC0FFC000000000000000000000000000000000 +010F:3CF03CF00FC00FC00000000003F003F000F000F000F000F00FF00FF03CF03CF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0110:0000000000000000FFC0FFC03CF03CF03C3C3C3C3C3C3C3CFF3CFF3C3C3C3C3C3C3C3C3C3C3C3C3C3CF03CF0FFC0FFC000000000000000000000000000000000 +0111:000000000000000000F000F000F000F03FFC3FFC00F000F00FF00FF03CF03CF0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0112:3FF03FF00000000000000000FFFCFFFC3C3C3C3C3C003C003C003C003FF03FF03C003C003C003C003C003C003C3C3C3CFFFCFFFC000000000000000000000000 +0113:000000000000000000000000000000003FF03FF0000000003FF03FF0F03CF03CF03CF03CFFFCFFFCF000F000F03CF03C3FF03FF0000000000000000000000000 +0116:03C003C003C003C000000000FFFCFFFC3C3C3C3C3C003C003C003C003FC03FC03C003C003C003C003C003C003C3C3C3CFFFCFFFC000000000000000000000000 +0117:0000000000000000030003000FC00FC003000300000000003FF03FF0F03CF03CF03CF03CFFFCFFFCF000F000F03CF03C3FF03FF0000000000000000000000000 +0118:0000000000000000FFFCFFFC3C3C3C3C3C0C3C0C3CC03CC03FC03FC03CC03CC03C003C003C0C3C0C3C3C3C3CFFFCFFFC03C003C00F000F0003FC03FC00000000 +0119:00000000000000000000000000000000000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF00F000F003C003C000FF00FF000000000 +011A:3CF03CF00FC00FC000000000FFFCFFFC3C3C3C3C3C0C3C0C3CC03CC03FC03FC03CC03CC03C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +011B:00000000000000003CF03CF00FC00FC0000000003FF03FF0F03CF03CFFFCFFFCF000F000F000F000F03CF03C3FF03FF000000000000000000000000000000000 +011E:300C300C0FF00FF0000000000FF00FF03C3C3C3CF00CF00CF000F000F3FCF3FCF03CF03CF03CF03C3C3C3C3C0FCC0FCC00000000000000000000000000000000 +011F:0000000000000000303030300FC00FC0000000003F3C3F3CF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FF03FF000F000F0F0F0F0F03FC03FC000000000 +0122:0000000000000000000000003FF03FF0F03CF03CF03CF03CF000F000F000F000F0FCF0FCF0FCF0FCF03CF03CF03CF03C3FF03FF000F000F03FC03FC000000000 +0123:00000000000000000FF00FF03C003C000F000F00000000003F3C3F3CF0FCF0FCF03CF03CF03CF03CF03CF03CF0FCF0FC3F3C3F3C003C003CFFF0FFF000000000 +0128:3F3C3F3CF3F0F3F0000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000 +0129:0000000000000000000000003F3C3F3CF3F0F3F0000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000 +012A:000000000FF00FF0000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000 +012B:000000000000000000000000000000003FF03FF0000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000 +012E:0000000000000000000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF00F000F0003FC03FC00000000 +012F:00000000000000000000000003C003C003C003C0000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF00F000F0003F003F000000000 +0130:000000000000000003C003C0000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0131:00000000000000000000000000000000000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0136:000000000000000000000000F03CF03CF03CF03CF0F0F0F0F3C0F3C0FF00FF00FF00FF00F3C0F3C0F0F0F0F0F03CF03CF03CF03C00F000F03FC03FC000000000 +0137:000000000000000000000000FC00FC003C003C003C003C003C3C3C3C3C3C3C3C3CF03CF03FC03FC03CF03CF03C3C3C3CFC3CFC3C03C003C0FF00FF0000000000 +0138:000000000000000000000000000000000000000000000000FC3CFC3C3CF03CF03FC03FC03FC03FC03CF03CF03C3C3C3CFC3CFC3C000000000000000000000000 +0139:0000000000000000FF3CFF3C3CF03CF03C003C003C003C003C003C003C003C003C003C003C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +013A:0000000000000000FC3CFC3C3CF03CF03C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +013B:000000000000000000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C0C3C0C3C3C3C3CFFFCFFFC00F000F03FC03FC000000000 +013C:0000000000000000000000000FC00FC003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000F000F03FC03FC000000000 +013D:0000000003CF03CFFCFCFCFC3C003C003C003C003C003C003C003C003C003C003C003C003C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +013E:0000000003CF03CFFCFCFCFC3C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +0141:0000000000000000FF00FF003C303C303CF03CF03FC03FC03F003F00FC00FC00FC00FC003C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +0142:00000000000000000FC00FC003CC03CC03FC03FC03F003F003C003C00FC00FC03FC03FC033C033C003C003C00FF00FF000000000000000000000000000000000 +0143:00F000F003C003C000000000F03CF03CFC3CFC3CFF3CFF3CFFFCFFFCF3FCF3FCF0FCF0FCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0144:0000000000F000F003C003C00F000F0000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00000000000000000000000000000000 +0145:000000000000000000000000F03CF03CF03CF03CFC3CFC3CFF3CFF3CFFFCFFFCF3FCF3FCF0FCF0FCF03CF03CF03CF03CF03CF03C00F000F03FC03FC000000000 +0146:000000000000000000000000000000000000000000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00F000F03FC03FC000000000 +0147:3CF03CF00FC00FC000000000F03CF03CFC3CFC3CFF3CFF3CFFFCFFFCF3FCF3FCF0FCF0FCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0148:00000000000000003CF03CF00FC00FC000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00000000000000000000000000000000 +014A:000000000000000000000000F3F0F3F0FFFCFFFCFC3CFC3CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF3F0F3F0000000000000000000000000 +014B:0000000000000000000000000000000000000000F3F0F3F0FFFCFFFCFC3CFC3CF03CF03CF03CF03CF03CF03C003C003C03F003F0000000000000000000000000 +014C:000000003FF03FF0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0000000000000000000000000 +014D:000000000000000000000000000000003FF03FF0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0000000000000000000000000 +0150:0F3C0F3C3CF03CF0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0151:00000000000000000F3C0F3C3CF03CF0000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0152:00000000000000003FFC3FFCF0F0F0F0F0F0F0F0F0F0F0F0F0FCF0FCF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FFC3FFC00000000000000000000000000000000 +0153:00000000000000000000000000000000000000003CFC3CFCF3CFF3CFF3CFF3CFF3FCF3FCF3C0F3C0F3F0F3F03C3F3C3F00000000000000000000000000000000 +0154:00F000F003C003C000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03CF03CF03C3C3C3C3C3C3C3CFC3CFC3C00000000000000000000000000000000 +0155:0000000000F000F003C003C00F000F0000000000F3F0F3F03F3C3F3C3C3C3C3C3C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +0156:000000000000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03FC03FC03CF03CF03C3C3C3C3C3C3C3CFF3CFF3C03C003C0FF00FF0000000000 +0157:000000000000000000000000000000000000000000000000F3F0F3F03C3C3C3C3C003C003C003C003C003C003C003C00FF00FF0003C003C0FF00FF0000000000 +0158:3CF03CF00FC00FC000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03CF03CF03C3C3C3C3C3C3C3CFC3CFC3C00000000000000000000000000000000 +0159:00000000000000003CF03CF00FC00FC000000000F3F0F3F03F3C3F3C3C3C3C3C3C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +015A:00F000F003C003C0000000003FF03FF0F03CF03CF03CF03C3C003C000FC00FC000F000F0F03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +015B:0000000000F000F003C003C00F000F00000000003FF03FF0F03CF03C3C003C000FC00FC000F000F0F03CF03C3FF03FF000000000000000000000000000000000 +015E:00000000000000003FF03FF0F03CF03CF03CF03C3C003C000FC00FC000F000F0003C003CF03CF03CF03CF03C3FF03FF003C003C000F000F03FC03FC000000000 +015F:00000000000000000000000000000000000000003FF03FF0F03CF03C3C003C000FC00FC000F000F0F03CF03C3FF03FF003C003C000F000F03FC03FC000000000 +0160:3CF03CF00FC00FC0000000003FF03FF0F03CF03CF03CF03C3C003C000FC00FC000F000F0F03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0161:00000000000000003CF03CF00FC00FC0000000003FF03FF0F03CF03C3C003C000FC00FC000F000F0F03CF03C3FF03FF000000000000000000000000000000000 +0162:00000000000000003FFC3FFC3FFC3FFC33CC33CC03C003C003C003C003C003C003C003C003C003C003C003C00FF00FF003C003C000F000F03FC03FC000000000 +0163:0000000000000000030003000F000F000F000F00FFF0FFF00F000F000F000F000F000F000F000F000F3C0F3C03F003F003C003C000F000F03FC03FC000000000 +0164:0F3C0F3C03F003F0000000003FFC3FFC3FFC3FFC33CC33CC03C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0165:3CF03CF00FC00FC000000000030003000F000F000F000F00FFF0FFF00F000F000F000F000F000F000F3C0F3C03F003F000000000000000000000000000000000 +0166:000000000000000000000000FFFFFFFFF3CFF3CFC3C3C3C303C003C003FC03FC0FF00FF03FC03FC003C003C003C003C00FF00FF0000000000000000000000000 +0167:0000000000000000000000000F000F000F000F000F000F00FFF0FFF00F000F000FF00FF03FC03FC0FF00FF000F3C0F3C03F003F0000000000000000000000000 +0168:3F3C3F3CF3F0F3F000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0000000000000000000000000 +0169:0000000000000000000000003F3C3F3CF3F0F3F000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C000000000000000000000000 +016A:000000003FF03FF000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF0000000000000000000000000 +016B:00000000000000000000000000000000FFF0FFF000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C000000000000000000000000 +016E:0FC00FC03CF03CF00FC00FC0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +016F:000000000FC00FC03CF03CF00FC00FC000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0170:0F3C0F3C3CF03CF000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0171:00000000000000000F3C0F3C3CF03CF000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C00000000000000000000000000000000 +0172:000000000000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF03C003C000FF00FF000000000 +0173:000000000000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03F3C3F3C3C003C000FF00FF000000000 +0178:00000000F00FF00F00000000F00FF00FF00FF00F3C3C3C3C0FF00FF003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0179:00F000F003C003C000000000FFFCFFFCF03CF03CC0F0C0F003C003C00F000F003C003C00F00CF00CF03CF03CFFFCFFFC00000000000000000000000000000000 +017A:0000000000F000F003C003C00F000F0000000000FFFCFFFCF0F0F0F003C003C00F000F003C003C00F03CF03CFFFCFFFC00000000000000000000000000000000 +017B:03C003C003C003C000000000FFFCFFFCF03CF03CC0F0C0F003C003C00F000F003C003C00F00CF00CF03CF03CFFFCFFFC00000000000000000000000000000000 +017C:000000000000000003C003C003C003C000000000FFFCFFFCF0F0F0F003C003C00F000F003C003C00F03CF03CFFFCFFFC00000000000000000000000000000000 +017D:3CF03CF00FC00FC000000000FFFCFFFCF03CF03CC0F0C0F003C003C00F000F003C003C00F00CF00CF03CF03CFFFCFFFC00000000000000000000000000000000 +017E:00000000000000003CF03CF00FC00FC000000000FFFCFFFCF0F0F0F003C003C00F000F003C003C00F03CF03CFFFCFFFC00000000000000000000000000000000 +0192:0000000000FC00FC03CF03CF03C003C003C003C003C003C03FFC3FFC03C003C003C003C003C003C003C003C003C003C0F3C0F3C03F003F000000000000000000 +02C7:000000003CF03CF00FC00FC000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +02D8:00000000F03CF03C3FF03FF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +02D9:0000000003C003C003C003C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +02DB:0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000F000F003C003C000FF00FF000000000 +02DD:000000000F3C0F3C3CF03CF0F3C0F3C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +037A:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0384:003C003C00F000F003C003C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0385:003C003C00F000F003C003C0F00FF00F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0386:00000000F000F000C300C300CFC0CFC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0388:0000000000000000CFFFCFFFCF03CF030F000F000F000F000FFC0FFC0F000F000F000F000F030F030F030F030FFF0FFF00000000000000000000000000000000 +0389:0000000000000000CF0FCF0FCF0FCF0F0F0F0F0F0F0F0F0F0FFF0FFF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0000000000000000000000000000000000000000 +038A:0000000000000000CFF0CFF0C3C0C3C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +038C:0000000000000000C3FCC3FCCF0FCF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FC03FC0000000000000000000000000000000000000000 +038E:0000000000000000CF0FCF0FCF0FCF0F0F0F0F0F0F0F0F0F03FC03FC00F000F000F000F000F000F000F000F003FC03FC00000000000000000000000000000000 +038F:0000000000000000C3FCC3FCCF0FCF0F0C030C030C030C030C030C030C030C030C030C030F0F0F0F030C030C0F0F0F0F00000000000000000000000000000000 +0390:00F000F000C000C0000000003C3C3C3C0000000003C003C003C003C003C003C003C003C003C003C003C003C000FC00FC00000000000000000000000000000000 +0391:0000000000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0392:0000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CFFF0FFF000000000000000000000000000000000 +0393:0000000000000000FFFCFFFCF03CF03CF03CF03CF000F000F000F000F000F000F000F000F000F000F000F000F000F00000000000000000000000000000000000 +0394:0000000000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFC00000000000000000000000000000000 +0395:0000000000000000FFFCFFFC3C3C3C3C3C0C3C0C3CC03CC03FC03FC03CC03CC03C003C003C0C3C0C3C3C3C3CFFFCFFFC00000000000000000000000000000000 +0396:0000000000000000FFFCFFFCF03CF03CC03CC03C00F000F003C003C00F000F003C003C00F00CF00CF03CF03CFFFCFFFC00000000000000000000000000000000 +0397:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0398:0000000000000000000000000FC00FC03CF03CF0F03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03C3CF03CF00FC00FC000000000000000000000000000000000 +0399:00000000000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +039A:0000000000000000FC3CFC3C3C3C3C3C3C3C3C3C3CF03CF03FC03FC03FC03FC03CF03CF03C3C3C3C3C3C3C3CFC3CFC3C00000000000000000000000000000000 +039B:0000000000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +039C:0000000000000000F03CF03CFCFCFCFCFFFCFFFCFFFCFFFCF33CF33CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +039D:0000000000000000F03CF03CFC3CFC3CFF3CFF3CFFFCFFFCF3FCF3FCF0FCF0FCF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +039E:0000000000000000FFFCFFFCC00CC00C00000000000000003FF03FF0000000000000000000000000C00CC00CFFFCFFFC00000000000000000000000000000000 +039F:00000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +03A0:0000000000000000FFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +03A1:0000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C003C003C003C003C00FF00FF0000000000000000000000000000000000 +03A3:000000000000000000000000FFFCFFFCF03CF03C3C003C000F000F0003C003C00F000F003C003C00F03CF03CFFFCFFFC00000000000000000000000000000000 +03A4:00000000000000003FFC3FFC3FFC3FFC33CC33CC03C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +03A5:00000000000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +03A6:0000000000000000000000003FFC3FFC03C003C00FF00FF03C3C3C3C3C3C3C3C3C3C3C3C0FF00FF003C003C03FFC3FFC00000000000000000000000000000000 +03A7:0000000000000000F03CF03CF03CF03C3CF03CF03FF03FF00FC00FC00FC00FC03FF03FF03CF03CF0F03CF03CF03CF03C00000000000000000000000000000000 +03A8:000000000000000003C003C0F3CFF3CFF3CFF3CFF3CFF3CFF3CFF3CFF3CFF3CF3FFC3FFC03C003C003C003C00FF00FF000000000000000000000000000000000 +03A9:00000000000000000FC00FC03CF03CF0F03CF03CF03CF03CF03CF03C3CF03CF03CF03CF03CF03CF03CF03CF0FCFCFCFC00000000000000000000000000000000 +03AA:00000000F00FF00F03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +03AB:F00FF00F000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +03AC:00000000000000000FC00FC003000300000000003FCF3FCFF0FCF0FCF0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FCF3FCF00000000000000000000000000000000 +03AD:00000000000000000FC00FC003000300000000003FF03FF0F03CF03CF000F0003FC03FC0F000F000F03CF03C3FF03FF000000000000000000000000000000000 +03AE:00000000000000000FC00FC00300030000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C003C003C003C003C003C003C00000000 +03AF:00000000000000000FC00FC0030003000000000003C003C003C003C003C003C003C003C003C003C003C003C000FC00FC00000000000000000000000000000000 +03B0:0000000003C003C0F00FF00F0000000000000000FC3FFC3F3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF000000000000000000000000000000000 +03B1:00000000000000000000000000000000000000003F3C3F3CF3F0F3F0F3C0F3C0F3C0F3C0F3C0F3C0F3F0F3F03F3C3F3C00000000000000000000000000000000 +03B2:00000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF0F03CF03CF03CF03CF03CF03CFFF0FFF0F000F000F000F000F000F00000000000 +03B3:0000000000000000000000000000000000000000F00FF00F3C3C3C3C0FF00FF003C003C00FF00FF03C3C3C3C300C300C3C3C3C3C0FF00FF00000000000000000 +03B4:000000000000000003FC03FC0F000F0003C003C000F000F00FFC0FFC3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF000000000000000000000000000000000 +03B5:000000000000000003F003F00F000F003C003C003C003C003FF03FF03C003C003C003C003C003C000F000F0003F003F000000000000000000000000000000000 +03B6:0000000000000000FFF0FFF000F000F003C003C00F000F003C003C00F000F000F000F000F000F000F000F0003FC03FC000F000F000F000F03FC03FC000000000 +03B7:0000000000000000000000000000000000000000F3F0F3F03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C003C003C003C003C003C003C00000000 +03B8:00000000000000000FFC0FFC3C0F3C0F3C0F3C0F3C0F3C0F3FFF3FFF3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F0FFC0FFC00000000000000000000000000000000 +03B9:000000000000000000000000000000000000000003C003C003C003C003C003C003C003C003C003C003C003C000FC00FC00000000000000000000000000000000 +03BA:0000000000000000000000000000000000000000FC3CFC3C3CF03CF03FC03FC03FC03FC03CF03CF03C3C3C3CFC3CFC3C00000000000000000000000000000000 +03BB:00000000000000000FC00FC03CF03CF000F000F000F000F000F000F00F3C0F3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00000000000000000000000000000000 +03BC:00000000000000000000000000000000000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FFF3FFF3C003C003C003C003C003C0000000000 +03BD:0000000000000000000000000000000000000000C00CC00CF03CF03CF03CF03C3CF03CF03CF03CF00FC00FC00FC00FC000000000000000000000000000000000 +03BE:0000000000000000FFF0FFF03C003C00F000F0003FC03FC00F000F003C003C00F000F000F000F000F000F0003FF03FF0003C003C003C003C0FF00FF000000000 +03BF:00000000000000000000000000000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +03C0:00000000000000000000000000000000FFFCFFFC3CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF000000000000000000000000000000000 +03C1:00000000000000000000000000000000000000000FF00FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FF03FF03C003C003C003C003C003C0000000000 +03C2:00000000000000000000000000000000000000000FFC0FFC3C0F3C0FF000F000F000F0003C003C000FC00FC000F000F0F03CF03C3FF03FF00000000000000000 +03C3:00000000000000000000000000000000000000003FFC3FFCF3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C03F003F0000000000000000000000000000000000 +03C4:000000000000000000000000000000003F3C3F3CF3F0F3F003C003C003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +03C5:0000000000000000000000000000000000000000FC3FFC3F3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF000000000000000000000000000000000 +03C6:000000000000000000000000000F000F003C003C3FFC3FFCF3CFF3CFF3CFF3CFFF0FFF0F3FFC3FFC3C003C00F000F00000000000000000000000000000000000 +03C7:0000000000000000000000000000000000000000F03CF03C3CF03CF00FC00FC00FC00FC00FC00FC03CF03CF0F03CF03C00000000000000000000000000000000 +03C8:0000000000000000000000000000000000000000F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33C3FF03FF003000300030003000300030000000000 +03C9:00000000000000000000000000000000000000003C3C3C3CF00FF00FF00FF00FF00FF00FF3CFF3CFFFFFFFFF3C3C3C3C00000000000000000000000000000000 +03CA:0000000000000000F00FF00F000000000000000003C003C003C003C003C003C003C003C003C003C003C003C000FC00FC00000000000000000000000000000000 +03CB:0000000000000000F00FF00F0000000000000000FC3FFC3F3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF000000000000000000000000000000000 +03CC:00000000000000000FC00FC003000300000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +03CD:00000000000000000FC00FC00300030000000000FC3FFC3F3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF000000000000000000000000000000000 +03CE:00000000000000000FC00FC003000300000000003C3C3C3CF00FF00FF00FF00FF00FF00FF3CFF3CFFFFFFFFF3C3C3C3C00000000000000000000000000000000 +0401:3C3C3C3C3C3C3C3C00000000FFFCFFFCF03CF03CF000F000F000F000FF00FF00F000F000F000F000F03CF03CFFFCFFFC00000000000000000000000000000000 +0402:0000000000000000FFC0FFC03C003C003C003C003C003C003FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CF03CF000000000000000000000000000000000 +0403:03C003C00F000F00000000003FFC3FFC3C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0000000000000000000000000000000000 +0404:00000000000000000FF00FF03C3C3C3CF000F000F000F000FFC0FFC0F000F000F000F000F000F0003C3C3C3C0FF00FF000000000000000000000000000000000 +0405:00000000000000003FF03FF0F03CF03CF03CF03C3C003C000FC00FC000F000F0003C003CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0406:0000000003C003C0000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0407:000000003C3C3C3C000000000FF00FF003C003C003C003C003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0408:000000000000000003FC03FC00F000F000F000F000F000F000F000F000F000F0F0F0F0F0F0F0F0F0F0F0F0F03FC03FC000000000000000000000000000000000 +0409:000000000000000003C003C00FC00FC03FC03FC0F3C0F3C0F3C0F3C0F3FCF3FCF3CFF3CFF3CFF3CFF3CFF3CFF3FCF3FC00000000000000000000000000000000 +040A:0000000000000000F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0FFFCFFFCF3CFF3CFF3CFF3CFF3CFF3CFF3FCF3FC00000000000000000000000000000000 +040B:0000000000000000FFF0FFF00F000F000F000F000F000F000FF00FF00F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C00000000000000000000000000000000 +040C:03C003C00F000F0000000000F03CF03CF0F0F0F0F3C0F3C0FF00FF00FFC0FFC0F0F0F0F0F03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +040E:0CC00CC00300030000000000F03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003C003C003CF03CF03C3FF03FF000000000000000000000000000000000 +040F:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFC0FC00FC00FC00FC000000000000000000000000000000000 +0410:00000000000000000FFC0FFC3C3C3C3CF03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0411:0000000000000000FFFCFFFCF000F000F000F000F000F000FFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +0412:0000000000000000FFF0FFF0F03CF03CF03CF03CF03CF03CFFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +0413:0000000000000000FFFCFFFCF03CF03CF000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00000000000000000000000000000000000 +0414:00000000000000000FF00FF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF0FFFCFFFCF03CF03CC00CC00C0000000000000000 +0415:0000000000000000FFFCFFFCF03CF03CF000F000F000F000FF00FF00F000F000F000F000F000F000F03CF03CFFFCFFFC00000000000000000000000000000000 +0416:0000000000000000F33CF33CF33CF33CF33CF33C333033303FF03FF0F33CF33CF33CF33CF33CF33CF33CF33CF33CF33C00000000000000000000000000000000 +0417:00000000000000003FF03FF0F03CF03C003C003C003C003C03F003F0003C003C003C003CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0418:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF0FCF0FCF3FCF3FCFF3CFF3CFC3CFC3CF03CF03CF03CF03C00000000000000000000000000000000 +0419:0000000000F000F0F3CCF3CCF03CF03CF03CF03CF03CF03CF0FCF0FCF3FCF3FCFF3CFF3CFC3CFC3CF03CF03CF03CF03C00000000000000000000000000000000 +041A:0000000000000000F03CF03CF0F0F0F0F3C0F3C0FF00FF00FF00FF00F3C0F3C0F0F0F0F0F03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +041B:000000000000000003FC03FC0F3C0F3C3C3C3C3CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +041C:0000000000000000F03CF03CF03CF03CFCFCFCFCFCFCFCFCFFFCFFFCFFFCFFFCF33CF33CF33CF33CF03CF03CF03CF03C00000000000000000000000000000000 +041D:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +041E:00000000000000003FFC3FFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +041F:0000000000000000FFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0420:0000000000000000FFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF0F000F000F000F000F000F00000000000000000000000000000000000 +0421:00000000000000003FF03FF0F03CF03CF03CF03CF000F000F000F000F000F000F000F000F03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +0422:00000000000000003FFC3FFC3FFC3FFC33CC33CC03C003C003C003C003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +0423:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003CF03CF03C3FF03FF000000000000000000000000000000000 +0424:00000000000000003FF03FF0F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33C3FF03FF0030003000FC00FC000000000000000000000000000000000 +0425:0000000000000000F03CF03CF03CF03C3CF03CF00FC00FC00FC00FC03CF03CF0F03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0426:0000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFFCFFFC000C000C003C003C0030003000000000 +0427:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003C003C003C003C003C003C003C00000000000000000000000000000000 +0428:0000000000000000F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CFFFCFFFC00000000000000000000000000000000 +0429:0000000000000000F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CFFFCFFFC000C000C003C003C0030003000000000 +042A:0000000000000000FC00FC00FC00FC003C003C003C003C003FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3FF03FF000000000000000000000000000000000 +042B:0000000000000000F03CF03CF03CF03CF03CF03CF03CF03CFC3CFC3CCF3CCF3CCF3CCF3CCF3CCF3CCF3CCF3CFC3CFC3C00000000000000000000000000000000 +042C:0000000000000000F000F000F000F000F000F000F000F000FFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +042D:00000000000000003FC03FC0F0F0F0F0003C003C003C003C03FC03FC03FC03FC003C003C003C003CF0F0F0F03FC03FC000000000000000000000000000000000 +042E:0000000000000000C3F0C3F0CF3CCF3CCF3CCF3CCF3CCF3CFF3CFF3CCF3CCF3CCF3CCF3CCF3CCF3CCF3CCF3CC3F0C3F000000000000000000000000000000000 +042F:00000000000000003FFC3FFCF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC0F3C0F3C3C3C3C3CF03CF03CF03CF03C00000000000000000000000000000000 +0430:00000000000000000000000000000000000000003FF03FF0F03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03C00000000000000000000000000000000 +0431:0000000000000000000000000000000000000000FFFCFFFCF000F000FFF0FFF0F03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +0432:0000000000000000000000000000000000000000FFF0FFF0F03CF03CF03CF03CFFF0FFF0F03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +0433:0000000000000000000000000000000000000000FFFCFFFCF03CF03CF00CF00CF000F000F000F000F000F000F000F00000000000000000000000000000000000 +0434:00000000000000000000000000000000000000000FF00FF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF0FFFCFFFCF03CF03CC00CC00C0000000000000000 +0435:00000000000000000000000000000000000000003FF03FF0F03CF03CF03CF03CFFF0FFF0F000F000F03CF03C3FF03FF000000000000000000000000000000000 +0436:0000000000000000000000000000000000000000F33CF33CF33CF33CF33CF33C3FF03FF0F33CF33CF33CF33CF33CF33C00000000000000000000000000000000 +0437:00000000000000000000000000000000000000003FF03FF0F03CF03C003C003C03F003F0003C003CF03CF03C3FF03FF000000000000000000000000000000000 +0438:0000000000000000000000000000000000000000F03CF03CF03CF03CF0FCF0FCF3FCF3FCFF3CFF3CFC3CFC3CF03CF03C00000000000000000000000000000000 +0439:00000000000000000000000000F000F003C003C0F03CF03CF03CF03CF0FCF0FCF3FCF3FCFF3CFF3CFC3CFC3CF03CF03C00000000000000000000000000000000 +043A:0000000000000000000000000000000000000000F03CF03CF0F0F0F0F3C0F3C0FFC0FFC0F3C0F3C0F0F0F0F0F03CF03C00000000000000000000000000000000 +043B:00000000000000000000000000000000000000000FFC0FFC3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CF03CF03C00000000000000000000000000000000 +043C:0000000000000000000000000000000000000000F03CF03CFCFCFCFCFFFCFFFCF33CF33CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +043D:0000000000000000000000000000000000000000F03CF03CF03CF03CF03CF03CFFFCFFFCF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +043E:00000000000000000000000000000000000000003FFC3FFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +043F:0000000000000000000000000000000000000000FFFCFFFCF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +0440:0000000000000000000000000000000000000000FFF0FFF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFF0FFF0F000F000F000F000F000F00000000000 +0441:00000000000000000000000000000000000000003FF03FF0F03CF03CF000F000F000F000F00CF00CF03CF03C3FF03FF000000000000000000000000000000000 +0442:00000000000000000000000000000000000000003FFC3FFC33CC33CC03C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +0443:0000000000000000000000000000000000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003CF03CF03C3FF03FF000000000 +0444:00000000000000000000000000000000030003003FF03FF0F33CF33CF33CF33CF33CF33CF33CF33CF33CF33C3FF03FF0030003000FC00FC00000000000000000 +0445:0000000000000000000000000000000000000000F03CF03C3CF03CF00FC00FC00FC00FC03CF03CF0F03CF03CF03CF03C00000000000000000000000000000000 +0446:0000000000000000000000000000000000000000F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0FFFCFFFC003C003C00F000F00000000000000000 +0447:0000000000000000000000000000000000000000F03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003C003C003C00000000000000000000000000000000 +0448:0000000000000000000000000000000000000000F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CFFFCFFFC00000000000000000000000000000000 +0449:0000000000000000000000000000000000000000F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CF33CFFFCFFFC000C000C003C003C0030003000000000 +044A:0000000000000000000000000000000000000000FC00FC003C003C003FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3FF03FF000000000000000000000000000000000 +044B:0000000000000000000000000000000000000000F03CF03CF03CF03CFC3CFC3CCF3CCF3CCF3CCF3CCF3CCF3CFC3CFC3C00000000000000000000000000000000 +044C:0000000000000000000000000000000000000000F000F000F000F000FFF0FFF0F03CF03CF03CF03CF03CF03CFFF0FFF000000000000000000000000000000000 +044D:00000000000000000000000000000000000000003FF03FF0F03CF03C003C003C03FC03FC003C003CF03CF03C3FF03FF000000000000000000000000000000000 +044E:0000000000000000000000000000000000000000C3F0C3F0CF3CCF3CCF3CCF3CFF3CFF3CCF3CCF3CCF3CCF3CC3F0C3F000000000000000000000000000000000 +044F:00000000000000000000000000000000000000003FFC3FFCF03CF03CF03CF03C3FFC3FFC0F3C0F3C3C3C3C3CF03CF03C00000000000000000000000000000000 +0451:00000000000000003CF03CF03CF03CF0000000003FF03FF0F03CF03CF03CF03CFFF0FFF0F000F000F03CF03C3FF03FF000000000000000000000000000000000 +0452:00000000000000003C003C003C003C003C003C00FFC0FFC03C003C003FF03FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C00F000F0000000000000000000000000 +0453:000000000000000003C003C00F000F00000000003FF03FF03C003C003C003C003C003C003C003C003C003C003C003C0000000000000000000000000000000000 +0454:00000000000000000000000000000000000000003FF03FF0F03CF03CF000F000FF00FF00F000F000F03CF03C3FF03FF000000000000000000000000000000000 +0455:00000000000000000000000000000000000000003FF03FF0F03CF03C3C003C000FC00FC000F000F0F03CF03C3FF03FF000000000000000000000000000000000 +0456:00000000000000000300030003000300000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0457:00000000000000000CC00CC00CC00CC0000000000FC00FC003C003C003C003C003C003C003C003C003C003C00FF00FF000000000000000000000000000000000 +0458:000000000000000000300030003000300000000000FC00FC003C003C003C003C003C003C003C003C003C003C003C003C3C3C3C3C3C3C3C3C0FF00FF000000000 +0459:000000000000000000000000000000000000000003C003C00FC00FC03FC03FC0F3FCF3FCF3CFF3CFF3CFF3CFF3FCF3FC00000000000000000000000000000000 +045A:0000000000000000000000000000000000000000F3C0F3C0F3C0F3C0F3C0F3C0FFFCFFFCF3CFF3CFF3CFF3CFF3FCF3FC00000000000000000000000000000000 +045B:00000000000000000F000F000F000F000F000F00FFF0FFF00F000F000FF00FF00F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C00000000000000000000000000000000 +045C:000000000000000003C003C00F000F0000000000F030F030F0F0F0F0F3C0F3C0FF00FF00F3C0F3C0F0F0F0F0F0F0F0F000000000000000000000000000000000 +045E:00000000000000000CC00CC00300030000000000F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C3FFC3FFC003C003CF03CF03C3FF03FF000000000 +045F:0000000000000000000000000000000000000000F03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFC0FC00FC00FC00FC000000000000000000000000000000000 +05D0:00000000000000000000000000000000F03CF03CF03CF03C3C3C3C3C3F3C3F3CF3F0F3F0F0F0F0F0F03CF03CF03CF03C00000000000000000000000000000000 +05D1:00000000000000000000000000000000FFC0FFC000F000F000F000F000F000F000F000F000F000F000F000F0FFFCFFFC00000000000000000000000000000000 +05D2:000000000000000000000000000000000FC00FC000F000F000F000F000F000F000F000F003F003F00F3C0F3CFC3CFC3C00000000000000000000000000000000 +05D3:00000000000000000000000000000000FFFCFFFC00F000F000F000F000F000F000F000F000F000F000F000F000F000F000000000000000000000000000000000 +05D4:00000000000000000000000000000000FFF0FFF0003C003C003C003C003C003CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +05D5:000000000000000000000000000000003F003F0003C003C003C003C003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +05D6:00000000000000000000000000000000FFF0FFF00F000F000F000F000F000F0003C003C003C003C00F000F003C003C0000000000000000000000000000000000 +05D7:00000000000000000000000000000000FFF0FFF03C3C3C3CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +05D8:00000000000000000000000000000000F0F0F0F0F33CF33CF33CF33CF03CF03CF03CF03CF03CF03CF03CF03C3FF03FF000000000000000000000000000000000 +05D9:000000000000000000000000000000003F003F0003C003C003C003C003C003C00F000F0000000000000000000000000000000000000000000000000000000000 +05DA:00000000000000000000000000000000FFF0FFF0003C003C003C003C003C003C00F000F000F000F000F000F000F000F000F000F000F000F000FC00FC00000000 +05DB:00000000000000000000000000000000FFF0FFF0003C003C003C003C003C003C003C003C003C003C003C003CFFF0FFF000000000000000000000000000000000 +05DC:0000000000000000F000F000F000F000FFF0FFF0003C003C003C003C003C003C003C003C00F000F003C003C003C003C000000000000000000000000000000000 +05DD:00000000000000000000000000000000FFF0FFF03C3C3C3CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CFFFCFFFC00000000000000000000000000000000 +05DE:00000000000000000000000000000000F3F0F3F03F3C3F3C3C3C3C3CF03CF03CF03CF03CF03CF03CF03CF03CF3FCF3FC00000000000000000000000000000000 +05DF:000000000000000000000000000000000FC00FC000F000F000F000F003C003C003C003C003C003C003C003C003C003C003C003C003C003C003F003F000000000 +05E0:000000000000000000000000000000000FC00FC000F000F000F000F000F000F000F000F000F000F000F000F03FF03FF000000000000000000000000000000000 +05E1:00000000000000000000000000000000FFF0FFF03C3C3C3CF03CF03CF03CF03CF03CF03CF03CF03CF0F0F0F03FC03FC000000000000000000000000000000000 +05E2:00000000000000000000000000000000FCFCFCFC3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0CF00CF0FFC0FFC000000000000000000000000000000000 +05E3:00000000000000000000000000000000FFC0FFC030F030F0F0F0F0F0F0F0F0F0FCF0FCF000F000F000F000F000F000F000F000F000F000F000FC00FC00000000 +05E4:00000000000000000000000000000000FFF0FFF0303C303CF03CF03CF03CF03CFC3CFC3C003C003C003C003CFFFCFFFC00000000000000000000000000000000 +05E5:00000000000000000000000000000000FCFCFCFC3C3C3C3C3C3C3C3C3CF03CF03FC03FC03C003C003C003C003C003C003C003C003C003C003F003F0000000000 +05E6:00000000000000000000000000000000FCFCFCFC3C3C3C3C3C3C3C3C0F300F3003C003C000F000F0003C003CFFFCFFFC00000000000000000000000000000000 +05E7:00000000000000000000000000000000FFF0FFF0003C003C003C003C3C3C3C3C3C303C303CF03CF03CFC3CFC3C003C003C003C003C003C003C003C0000000000 +05E8:00000000000000000000000000000000FFF0FFF0003C003C003C003C003C003C003C003C003C003C003C003C003C003C00000000000000000000000000000000 +05E9:00000000000000000000000000000000F33CF33CF33CF33CF33CF33CF33CF33CF33CF33CFF3CFF3CF03CF03C3FF03FF000000000000000000000000000000000 +05EA:00000000000000000000000000000000FFF0FFF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3CFC3CFC3CFC3CFC3C00000000000000000000000000000000 +200E:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +200F:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +2015:00000000000000000000000000000000000000000000000000000000FFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +2017:000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFF00000000FFFFFFFF00000000 +2018:000000000F000F003C003C003C003C000F000F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +2019:0000000000F000F0003C003C003C003C00F000F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +2022:00000000000000000000000000000000000000000000000003C003C00FF00FF00FF00FF003C003C0000000000000000000000000000000000000000000000000 +203C:00000000000000003C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C000000003C3C3C3C3C3C3C3C00000000000000000000000000000000 +207F:00000000F3C0F3C03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF0000000000000000000000000000000000000000000000000000000000000000000000000 +20A7:00000000FFC0FFC0F0F0F0F0F0F0F0F0FFC0FFC0F030F030F0F0F0F0F3FCF3FCF0F0F0F0F0F0F0F0F0F0F0F0F03CF03C00000000000000000000000000000000 +20AC:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +20AF:00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +2116:0000000000000000C0C0C0C0C0CCC0CCF0F3F0F3FCCCFCCCCFC0CFC0C3C0C3C0C0CFC0CFC0C0C0C0C0CFC0CFC0C0C0C000000000000000000000000000000000 +2190:00000000000000000000000000000000000000000F000F003C003C00FFFCFFFC3C003C000F000F00000000000000000000000000000000000000000000000000 +2191:000000000000000003C003C00FF00FF03FFC3FFC03C003C003C003C003C003C003C003C003C003C003C003C003C003C000000000000000000000000000000000 +2192:000000000000000000000000000000000000000003C003C000F000F0FFFCFFFC00F000F003C003C0000000000000000000000000000000000000000000000000 +2193:000000000000000003C003C003C003C003C003C003C003C003C003C003C003C003C003C03FFC3FFC0FF00FF003C003C000000000000000000000000000000000 +2194:00000000000000000000000000000000000000000CC00CC03CF03CF0FFFCFFFC3CF03CF00CC00CC0000000000000000000000000000000000000000000000000 +2195:000000000000000003C003C00FF00FF03FFC3FFC03C003C003C003C003C003C03FFC3FFC0FF00FF003C003C00000000000000000000000000000000000000000 +21A8:000000000000000003C003C00FF00FF03FFC3FFC03C003C003C003C003C003C03FFC3FFC0FF00FF003C003C03FFC3FFC00000000000000000000000000000000 +2219:0000000000000000000000000000000000000000000000000000000003C003C003C003C000000000000000000000000000000000000000000000000000000000 +221A:0000000000FF00FF00F000F000F000F000F000F000F000F000F000F0FCF0FCF03CF03CF03CF03CF00FF00FF003F003F000000000000000000000000000000000 +221E:00000000000000000000000000000000000000003FFC3FFCF3CFF3CFF3CFF3CFF3CFF3CF3FFC3FFC000000000000000000000000000000000000000000000000 +221F:000000000000000000000000000000000000000000000000F000F000F000F000F000F000FFFCFFFC000000000000000000000000000000000000000000000000 +2229:0000000000000000000000003FF03FF0F03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03CF03C00000000000000000000000000000000 +2248:00000000000000000000000000000000000000003F3C3F3CF3F0F3F0000000003F3C3F3CF3F0F3F0000000000000000000000000000000000000000000000000 +2261:00000000000000000000000000000000FFFCFFFC0000000000000000FFFCFFFC0000000000000000FFFCFFFC0000000000000000000000000000000000000000 +2264:00000000000000000000000000F000F003C003C00F000F003C003C000F000F0003C003C000F000F0000000003FFC3FFC00000000000000000000000000000000 +2265:0000000000000000000000000F000F0003C003C000F000F0003C003C00F000F003C003C00F000F00000000003FFC3FFC00000000000000000000000000000000 +2302:00000000000000000000000000000000030003000FC00FC03CF03CF0F03CF03CF03CF03CF03CF03CFFFCFFFC0000000000000000000000000000000000000000 +2310:000000000000000000000000000000000000000000000000FFFCFFFCF000F000F000F000F000F000F000F0000000000000000000000000000000000000000000 +2320:000000000000000000FC00FC03CF03CF03CF03CF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2321:03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0F3C0F3C0F3C0F3C0F3C0F3C03F003F0000000000000000000000000000000000 +2500:00000000000000000000000000000000000000000000000000000000FFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +2502:03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +250C:0000000000000000000000000000000000000000000000000000000003FF03FF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2510:00000000000000000000000000000000000000000000000000000000FFC0FFC003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2514:03C003C003C003C003C003C003C003C003C003C003C003C003C003C003FF03FF0000000000000000000000000000000000000000000000000000000000000000 +2518:03C003C003C003C003C003C003C003C003C003C003C003C003C003C0FFC0FFC00000000000000000000000000000000000000000000000000000000000000000 +251C:03C003C003C003C003C003C003C003C003C003C003C003C003C003C003FF03FF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2524:03C003C003C003C003C003C003C003C003C003C003C003C003C003C0FFC0FFC003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +252C:00000000000000000000000000000000000000000000000000000000FFFFFFFF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2534:03C003C003C003C003C003C003C003C003C003C003C003C003C003C0FFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +253C:03C003C003C003C003C003C003C003C003C003C003C003C003C003C0FFFFFFFF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2550:0000000000000000000000000000000000000000FFFFFFFF00000000FFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +2551:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2552:000000000000000000000000000000000000000003FF03FF03C003C003FF03FF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2553:000000000000000000000000000000000000000000000000000000000FFF0FFF0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2554:00000000000000000000000000000000000000000FFF0FFF0F000F000F3F0F3F0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2555:0000000000000000000000000000000000000000FFC0FFC003C003C0FFC0FFC003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2556:00000000000000000000000000000000000000000000000000000000FFFCFFFC0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2557:0000000000000000000000000000000000000000FFFCFFFC003C003CFF3CFF3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2558:03C003C003C003C003C003C003C003C003C003C003FF03FF03C003C003FF03FF0000000000000000000000000000000000000000000000000000000000000000 +2559:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0FFF0FFF0000000000000000000000000000000000000000000000000000000000000000 +255A:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3F0F3F0F000F000FFF0FFF0000000000000000000000000000000000000000000000000000000000000000 +255B:03C003C003C003C003C003C003C003C003C003C0FFC0FFC003C003C0FFC0FFC00000000000000000000000000000000000000000000000000000000000000000 +255C:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFFFCFFFC0000000000000000000000000000000000000000000000000000000000000000 +255D:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFF3CFF3C003C003CFFFCFFFC0000000000000000000000000000000000000000000000000000000000000000 +255E:03C003C003C003C003C003C003C003C003C003C003FF03FF03C003C003FF03FF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +255F:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3F0F3F0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2560:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3F0F3F0F000F000F3F0F3F0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2561:03C003C003C003C003C003C003C003C003C003C0FFC0FFC003C003C0FFC0FFC003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2562:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFF3CFF3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2563:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFF3CFF3C003C003CFF3CFF3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2564:0000000000000000000000000000000000000000FFFFFFFF00000000FFFFFFFF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +2565:00000000000000000000000000000000000000000000000000000000FFFFFFFF0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2566:0000000000000000000000000000000000000000FFFFFFFF00000000FF3FFF3F0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2567:03C003C003C003C003C003C003C003C003C003C0FFFFFFFF00000000FFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +2568:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +2569:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFF3FFF3F00000000FFFFFFFF0000000000000000000000000000000000000000000000000000000000000000 +256A:03C003C003C003C003C003C003C003C003C003C0FFFFFFFF03C003C0FFFFFFFF03C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C0 +256B:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFFFFFFFF0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +256C:0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3CFF3FFF3F00000000FF3FFF3F0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C +2580:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000000000000000000000000000000000000 +2584:00000000000000000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +2588:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +258C:FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00 +2590:00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF +2591:03030303303030300303030330303030030303033030303003030303303030300303030330303030030303033030303003030303303030300303030330303030 +2592:33333333CCCCCCCC33333333CCCCCCCC33333333CCCCCCCC33333333CCCCCCCC33333333CCCCCCCC33333333CCCCCCCC33333333CCCCCCCC33333333CCCCCCCC +2593:F3F3F3F33F3F3F3FF3F3F3F33F3F3F3FF3F3F3F33F3F3F3FF3F3F3F33F3F3F3FF3F3F3F33F3F3F3FF3F3F3F33F3F3F3FF3F3F3F33F3F3F3FF3F3F3F33F3F3F3F +25A0:000000000000000000000000000000003FF03FF03FF03FF03FF03FF03FF03FF03FF03FF03FF03FF03FF03FF00000000000000000000000000000000000000000 +25AC:0000000000000000000000000000000000000000000000000000000000000000FFFCFFFCFFFCFFFCFFFCFFFCFFFCFFFC00000000000000000000000000000000 +25B2:00000000000000000000000000000000030003000FC00FC00FC00FC03FF03FF03FF03FF0FFFCFFFCFFFCFFFC0000000000000000000000000000000000000000 +25BA:00000000C000C000F000F000FC00FC00FF00FF00FFC0FFC0FFFCFFFCFFC0FFC0FF00FF00FC00FC00F000F000C000C00000000000000000000000000000000000 +25BC:00000000000000000000000000000000FFFCFFFCFFFCFFFC3FF03FF03FF03FF00FC00FC00FC00FC0030003000000000000000000000000000000000000000000 +25C4:00000000000C000C003C003C00FC00FC03FC03FC0FFC0FFCFFFCFFFC0FFC0FFC03FC03FC00FC00FC003C003C000C000C00000000000000000000000000000000 +25CB:00000000000000000000000000000000000000000FF00FF03C3C3C3C300C300C300C300C3C3C3C3C0FF00FF00000000000000000000000000000000000000000 +25D8:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3FFC3FF00FF00FF00FF00FFC3FFC3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +25D9:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FF00FC3C3C3C3CFF3CFF3CFF3CFF3C3C3C3C3F00FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +263A:00000000000000003FFC3FFCC003C003CC33CC33C003C003C003C003CFF3CFF3C3C3C3C3C003C003C003C0033FFC3FFC00000000000000000000000000000000 +263B:00000000000000003FFC3FFCFFFFFFFFF3CFF3CFFFFFFFFFFFFFFFFFF00FF00FFC3FFC3FFFFFFFFFFFFFFFFF3FFC3FFC00000000000000000000000000000000 +263C:00000000000000000000000003C003C003C003C0F3CFF3CF0FF00FF0FC3FFC3F0FF00FF0F3CFF3CF03C003C003C003C000000000000000000000000000000000 +2640:00000000000000000FF00FF03C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C0FF00FF003C003C03FFC3FFC03C003C003C003C000000000000000000000000000000000 +2642:000000000000000003FC03FC00FC00FC03CC03CC0F0C0F0C3FC03FC0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F03FC03FC000000000000000000000000000000000 +2660:00000000000000000000000003C003C00FF00FF03FFC3FFCFFFFFFFFFFFFFFFF3FFC3FFC03C003C003C003C00FF00FF000000000000000000000000000000000 +2663:00000000000000000000000003C003C00FF00FF00FF00FF0FC3FFC3FFC3FFC3FFC3FFC3F03C003C003C003C00FF00FF000000000000000000000000000000000 +2665:000000000000000000000000000000003CF03CF0FFFCFFFCFFFCFFFCFFFCFFFCFFFCFFFC3FF03FF00FC00FC00300030000000000000000000000000000000000 +2666:00000000000000000000000000000000030003000FC00FC03FF03FF0FFFCFFFC3FF03FF00FC00FC0030003000000000000000000000000000000000000000000 +266A:00000000000000000FFF0FFF0F0F0F0F0FFF0FFF0F000F000F000F000F000F000F000F003F003F00FF00FF00FC00FC0000000000000000000000000000000000 +266C:00000000000000003FFF3FFF3C0F3C0F3FFF3FFF3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C0F3C3F3C3FFC3FFC3FFC3CFC3CF000F000000000000000000000000000 From owner-svn-src-head@freebsd.org Fri Sep 25 03:46:07 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7335CA06A55; Fri, 25 Sep 2015 03:46:07 +0000 (UTC) (envelope-from jpaetzel@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 637121981; Fri, 25 Sep 2015 03:46:07 +0000 (UTC) (envelope-from jpaetzel@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P3k7w6008275; Fri, 25 Sep 2015 03:46:07 GMT (envelope-from jpaetzel@FreeBSD.org) Received: (from jpaetzel@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P3k7tV008274; Fri, 25 Sep 2015 03:46:07 GMT (envelope-from jpaetzel@FreeBSD.org) Message-Id: <201509250346.t8P3k7tV008274@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jpaetzel set sender to jpaetzel@FreeBSD.org using -f From: Josh Paetzel Date: Fri, 25 Sep 2015 03:46:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288208 - head/usr.sbin/ctld X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 03:46:07 -0000 Author: jpaetzel Date: Fri Sep 25 03:46:06 2015 New Revision: 288208 URL: https://svnweb.freebsd.org/changeset/base/288208 Log: Fix typo. Sponsored by: iXsystems Modified: head/usr.sbin/ctld/ctld.c Modified: head/usr.sbin/ctld/ctld.c ============================================================================== --- head/usr.sbin/ctld/ctld.c Fri Sep 25 02:52:54 2015 (r288207) +++ head/usr.sbin/ctld/ctld.c Fri Sep 25 03:46:06 2015 (r288208) @@ -1149,7 +1149,7 @@ valid_iscsi_name(const char *name) } } else { log_warnx("invalid target name \"%s\"; should start with " - "either \".iqn\", \"eui.\", or \"naa.\"", + "either \"iqn.\", \"eui.\", or \"naa.\"", name); } return (true); From owner-svn-src-head@freebsd.org Fri Sep 25 05:15:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D6571A06502; Fri, 25 Sep 2015 05:15:28 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ACCC41EF4; Fri, 25 Sep 2015 05:15:28 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P5FSjw045021; Fri, 25 Sep 2015 05:15:28 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P5FSbJ045019; Fri, 25 Sep 2015 05:15:28 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509250515.t8P5FSbJ045019@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 05:15:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288210 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 05:15:28 -0000 Author: bdrewery Date: Fri Sep 25 05:15:27 2015 New Revision: 288210 URL: https://svnweb.freebsd.org/changeset/base/288210 Log: META_MODE: Fix staging not respecting _DIR overrides. This fixes atf-c.h not properly being installed to /usr/include/ (in the stagedir) via its override of 'INCSDIR_atf-c.h= ${INCLUDEDIR}'. This fixes building things that depend on atf. Staging seems to ignore OWN/GRP/MODE settings and needs further exploration. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.files.mk head/share/mk/bsd.incs.mk Modified: head/share/mk/bsd.files.mk ============================================================================== --- head/share/mk/bsd.files.mk Fri Sep 25 03:54:10 2015 (r288209) +++ head/share/mk/bsd.files.mk Fri Sep 25 05:15:27 2015 (r288210) @@ -47,10 +47,12 @@ ${group}NAME_${file:T}?= ${${group}NAME} ${group}NAME_${file:T}?= ${file:T} .endif .if !make(buildincludes) -STAGE_AS_SETS+= ${group} +STAGE_AS_SETS+= ${file:T} .endif STAGE_AS_${file:T}= ${${group}NAME_${file:T}} -stage_as.${group}: ${file} +# XXX {group}OWN,GRP,MODE +STAGE_DIR.${file:T}= ${STAGE_OBJTOP}${${group}DIR_${file:T}} +stage_as.${file:T}: ${file} installfiles-${group}: _${group}INS_${file:T} _${group}INS_${file:T}: ${file} Modified: head/share/mk/bsd.incs.mk ============================================================================== --- head/share/mk/bsd.incs.mk Fri Sep 25 03:54:10 2015 (r288209) +++ head/share/mk/bsd.incs.mk Fri Sep 25 05:15:27 2015 (r288210) @@ -42,10 +42,12 @@ ${group}NAME_${header:T}?= ${${group}NAM .else ${group}NAME_${header:T}?= ${header:T} .endif -STAGE_AS_SETS+= ${group} +STAGE_AS_SETS+= ${header:T} STAGE_AS_${header:T}= ${${group}NAME_${header:T}} -stage_as.${group}: ${header} -stage_includes: stage_as.${group} +# XXX {group}OWN,GRP,MODE +STAGE_DIR.${header:T}= ${STAGE_OBJTOP}${${group}DIR_${header:T}} +stage_as.${header:T}: ${header} +stage_includes: stage_as.${header:T} installincludes: _${group}INS_${header:T} _${group}INS_${header:T}: ${header} From owner-svn-src-head@freebsd.org Fri Sep 25 07:27:26 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 143B4A095C8; Fri, 25 Sep 2015 07:27:26 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ECC1F1F22; Fri, 25 Sep 2015 07:27:25 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P7RPSp098262; Fri, 25 Sep 2015 07:27:25 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P7RO3k098255; Fri, 25 Sep 2015 07:27:24 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509250727.t8P7RO3k098255@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 07:27:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288211 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 07:27:26 -0000 Author: mav Date: Fri Sep 25 07:27:23 2015 New Revision: 288211 URL: https://svnweb.freebsd.org/changeset/base/288211 Log: Remove some control_softc references. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_backend.c head/sys/cam/ctl/ctl_frontend.c head/sys/cam/ctl/ctl_frontend.h head/sys/cam/ctl/ctl_frontend_iscsi.c head/sys/cam/ctl/ctl_ha.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 05:15:27 2015 (r288210) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 07:27:23 2015 (r288211) @@ -624,7 +624,7 @@ alloc: void ctl_isc_announce_port(struct ctl_port *port) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; union ctl_ha_msg *msg; int i; @@ -685,7 +685,7 @@ ctl_isc_announce_port(struct ctl_port *p void ctl_isc_announce_iid(struct ctl_port *port, int iid) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; union ctl_ha_msg *msg; int i, l; @@ -1126,12 +1126,11 @@ ctl_isc_mode_sync(struct ctl_softc *soft static void ctl_isc_event_handler(ctl_ha_channel channel, ctl_ha_event event, int param) { - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; union ctl_io *io; struct ctl_prio *presio; ctl_ha_status isc_status; - softc = control_softc; CTL_DEBUG_PRINT(("CTL: Isc Msg event %d\n", event)); if (event == CTL_HA_EVT_MSG_RECV) { union ctl_ha_msg *msg, msgbuf; @@ -1582,13 +1581,11 @@ ctl_init(void) int i, error, retval; retval = 0; - control_softc = malloc(sizeof(*control_softc), M_DEVBUF, + softc = control_softc = malloc(sizeof(*control_softc), M_DEVBUF, M_WAITOK | M_ZERO); - softc = control_softc; softc->dev = make_dev(&ctl_cdevsw, 0, UID_ROOT, GID_OPERATOR, 0600, "cam/ctl"); - softc->dev->si_drv1 = softc; sysctl_ctx_init(&softc->sysctl_ctx); @@ -1720,11 +1717,9 @@ ctl_init(void) void ctl_shutdown(void) { - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; struct ctl_lun *lun, *next_lun; - softc = (struct ctl_softc *)control_softc; - if (softc->is_single == 0) { ctl_ha_msg_shutdown(softc); if (ctl_ha_msg_deregister(CTL_HA_CHAN_CTL) @@ -1801,7 +1796,7 @@ ctl_close(struct cdev *dev, int flags, i int ctl_remove_initiator(struct ctl_port *port, int iid) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; mtx_assert(&softc->ctl_lock, MA_NOTOWNED); @@ -1827,7 +1822,7 @@ ctl_remove_initiator(struct ctl_port *po int ctl_add_initiator(struct ctl_port *port, int iid, uint64_t wwpn, char *name) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; time_t best_time; int i, best; @@ -2002,15 +1997,13 @@ ctl_create_iid(struct ctl_port *port, in static int ctl_serialize_other_sc_cmd(struct ctl_scsiio *ctsio) { - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; union ctl_ha_msg msg_info; struct ctl_lun *lun; const struct ctl_cmd_entry *entry; int retval = 0; uint32_t targ_lun; - softc = control_softc; - targ_lun = ctsio->io_hdr.nexus.targ_mapped_lun; mtx_lock(&softc->ctl_lock); if ((targ_lun < CTL_MAX_LUNS) && @@ -2377,12 +2370,10 @@ static int ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) { - struct ctl_softc *softc; + struct ctl_softc *softc = dev->si_drv1; struct ctl_lun *lun; int retval; - softc = control_softc; - retval = 0; switch (cmd) { @@ -3481,7 +3472,7 @@ ctl_get_initindex(struct ctl_nexus *nexu int ctl_lun_map_init(struct ctl_port *port) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; struct ctl_lun *lun; uint32_t i; @@ -3505,7 +3496,7 @@ ctl_lun_map_init(struct ctl_port *port) int ctl_lun_map_deinit(struct ctl_port *port) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; struct ctl_lun *lun; if (port->lun_map == NULL) @@ -4672,14 +4663,11 @@ ctl_free_lun(struct ctl_lun *lun) static void ctl_create_lun(struct ctl_be_lun *be_lun) { - struct ctl_softc *softc; - - softc = control_softc; /* * ctl_alloc_lun() should handle all potential failure cases. */ - ctl_alloc_lun(softc, NULL, be_lun); + ctl_alloc_lun(control_softc, NULL, be_lun); } int @@ -8724,12 +8712,11 @@ done: static void ctl_hndl_per_res_out_on_other_sc(union ctl_ha_msg *msg) { + struct ctl_softc *softc = control_softc; struct ctl_lun *lun; - struct ctl_softc *softc; int i; uint32_t residx, targ_lun; - softc = control_softc; targ_lun = msg->hdr.nexus.targ_mapped_lun; mtx_lock(&softc->ctl_lock); if ((targ_lun >= CTL_MAX_LUNS) || @@ -9257,7 +9244,7 @@ ctl_verify(struct ctl_scsiio *ctsio) int ctl_report_luns(struct ctl_scsiio *ctsio) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc; struct scsi_report_luns *cdb; struct scsi_report_luns_data *lun_data; struct ctl_lun *lun, *request_lun; @@ -9270,6 +9257,7 @@ ctl_report_luns(struct ctl_scsiio *ctsio retval = CTL_RETVAL_COMPLETE; cdb = (struct scsi_report_luns *)ctsio->cdb; port = ctl_io_port(&ctsio->io_hdr); + softc = port->ctl_softc; CTL_DEBUG_PRINT(("ctl_report_luns\n")); @@ -10346,15 +10334,13 @@ ctl_inquiry_std(struct ctl_scsiio *ctsio { struct scsi_inquiry_data *inq_ptr; struct scsi_inquiry *cdb; - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; struct ctl_port *port; struct ctl_lun *lun; char *val; uint32_t alloc_len, data_len; ctl_port_type port_type; - softc = control_softc; - /* * Figure out whether we're talking to a Fibre Channel port or not. * We treat the ioctl front end, and any SCSI adapters, as packetized @@ -12188,11 +12174,9 @@ ctl_handle_isc(union ctl_io *io) { int free_io; struct ctl_lun *lun; - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; uint32_t targ_lun; - softc = control_softc; - targ_lun = io->io_hdr.nexus.targ_mapped_lun; lun = softc->ctl_luns[targ_lun]; @@ -12861,13 +12845,11 @@ static int ctl_datamove_remote_sgl_setup(union ctl_io *io) { struct ctl_sg_entry *local_sglist; - struct ctl_softc *softc; uint32_t len_to_go; int retval; int i; retval = 0; - softc = control_softc; local_sglist = io->io_hdr.local_sglist; len_to_go = io->scsiio.kern_data_len; Modified: head/sys/cam/ctl/ctl_backend.c ============================================================================== --- head/sys/cam/ctl/ctl_backend.c Fri Sep 25 05:15:27 2015 (r288210) +++ head/sys/cam/ctl/ctl_backend.c Fri Sep 25 07:27:23 2015 (r288211) @@ -65,11 +65,9 @@ extern struct ctl_softc *control_softc; int ctl_backend_register(struct ctl_backend_driver *be) { - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; struct ctl_backend_driver *be_tmp; - softc = control_softc; - mtx_lock(&softc->ctl_lock); /* * Sanity check, make sure this isn't a duplicate registration. @@ -120,9 +118,7 @@ ctl_backend_register(struct ctl_backend_ int ctl_backend_deregister(struct ctl_backend_driver *be) { - struct ctl_softc *softc; - - softc = control_softc; + struct ctl_softc *softc = control_softc; mtx_lock(&softc->ctl_lock); @@ -153,20 +149,16 @@ ctl_backend_deregister(struct ctl_backen struct ctl_backend_driver * ctl_backend_find(char *backend_name) { - struct ctl_softc *softc; + struct ctl_softc *softc = control_softc; struct ctl_backend_driver *be_tmp; - softc = control_softc; - mtx_lock(&softc->ctl_lock); - STAILQ_FOREACH(be_tmp, &softc->be_list, links) { if (strcmp(be_tmp->name, backend_name) == 0) { mtx_unlock(&softc->ctl_lock); return (be_tmp); } } - mtx_unlock(&softc->ctl_lock); return (NULL); Modified: head/sys/cam/ctl/ctl_frontend.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend.c Fri Sep 25 05:15:27 2015 (r288210) +++ head/sys/cam/ctl/ctl_frontend.c Fri Sep 25 07:27:23 2015 (r288211) @@ -148,6 +148,7 @@ ctl_port_register(struct ctl_port *port) retval = 0; KASSERT(softc != NULL, ("CTL is not initialized")); + port->ctl_softc = softc; mtx_lock(&softc->ctl_lock); if (port->targ_port >= 0) @@ -218,7 +219,7 @@ error: int ctl_port_deregister(struct ctl_port *port) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; struct ctl_io_pool *pool; int retval, i; @@ -309,7 +310,7 @@ ctl_port_set_wwns(struct ctl_port *port, void ctl_port_online(struct ctl_port *port) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; struct ctl_lun *lun; uint32_t l; @@ -344,7 +345,7 @@ ctl_port_online(struct ctl_port *port) void ctl_port_offline(struct ctl_port *port) { - struct ctl_softc *softc = control_softc; + struct ctl_softc *softc = port->ctl_softc; struct ctl_lun *lun; uint32_t l; Modified: head/sys/cam/ctl/ctl_frontend.h ============================================================================== --- head/sys/cam/ctl/ctl_frontend.h Fri Sep 25 05:15:27 2015 (r288210) +++ head/sys/cam/ctl/ctl_frontend.h Fri Sep 25 07:27:23 2015 (r288211) @@ -211,6 +211,7 @@ struct ctl_wwpn_iid { * shouldn't touch this field. */ struct ctl_port { + struct ctl_softc *ctl_softc; struct ctl_frontend *frontend; ctl_port_type port_type; /* passed to CTL */ int num_requested_ctl_io; /* passed to CTL */ Modified: head/sys/cam/ctl/ctl_frontend_iscsi.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_iscsi.c Fri Sep 25 05:15:27 2015 (r288210) +++ head/sys/cam/ctl/ctl_frontend_iscsi.c Fri Sep 25 07:27:23 2015 (r288211) @@ -174,7 +174,6 @@ static void cfiscsi_target_release(struc static void cfiscsi_session_delete(struct cfiscsi_session *cs); static struct cfiscsi_softc cfiscsi_softc; -extern struct ctl_softc *control_softc; static struct ctl_frontend cfiscsi_frontend = { Modified: head/sys/cam/ctl/ctl_ha.c ============================================================================== --- head/sys/cam/ctl/ctl_ha.c Fri Sep 25 05:15:27 2015 (r288210) +++ head/sys/cam/ctl/ctl_ha.c Fri Sep 25 07:27:23 2015 (r288211) @@ -160,8 +160,6 @@ struct ha_softc { TAILQ_HEAD(, ctl_ha_dt_req) ha_dts; } ha_softc; -extern struct ctl_softc *control_softc; - static void ctl_ha_conn_wake(struct ha_softc *softc) { From owner-svn-src-head@freebsd.org Fri Sep 25 07:37:01 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CACACA09B7B; Fri, 25 Sep 2015 07:37:01 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BC0A313A1; Fri, 25 Sep 2015 07:37:01 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P7b1F3002440; Fri, 25 Sep 2015 07:37:01 GMT (envelope-from phk@FreeBSD.org) Received: (from phk@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P7b1Zl002439; Fri, 25 Sep 2015 07:37:01 GMT (envelope-from phk@FreeBSD.org) Message-Id: <201509250737.t8P7b1Zl002439@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: phk set sender to phk@FreeBSD.org using -f From: Poul-Henning Kamp Date: Fri, 25 Sep 2015 07:37:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288212 - head/sbin/natd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 07:37:01 -0000 Author: phk Date: Fri Sep 25 07:37:00 2015 New Revision: 288212 URL: https://svnweb.freebsd.org/changeset/base/288212 Log: Fix two cases where "const" were washed off pointers with strchr(3) Modified: head/sbin/natd/natd.c Modified: head/sbin/natd/natd.c ============================================================================== --- head/sbin/natd/natd.c Fri Sep 25 07:27:23 2015 (r288211) +++ head/sbin/natd/natd.c Fri Sep 25 07:37:00 2015 (r288212) @@ -124,7 +124,7 @@ static void StrToAddr (const char* str, static u_short StrToPort (const char* str, const char* proto); static int StrToPortRange (const char* str, const char* proto, port_range *portRange); static int StrToProto (const char* str); -static int StrToAddrAndPortRange (const char* str, struct in_addr* addr, char* proto, port_range *portRange); +static int StrToAddrAndPortRange (char* str, struct in_addr* addr, char* proto, port_range *portRange); static void ParseArgs (int argc, char** argv); static void SetupPunchFW(const char *strValue); static void SetupSkinnyPort(const char *strValue); @@ -1896,7 +1896,7 @@ u_short StrToPort (const char* str, cons int StrToPortRange (const char* str, const char* proto, port_range *portRange) { - char* sep; + const char* sep; struct servent* sp; char* end; u_short loPort; @@ -1938,7 +1938,8 @@ int StrToPortRange (const char* str, con } -int StrToProto (const char* str) +static int +StrToProto (const char* str) { if (!strcmp (str, "tcp")) return IPPROTO_TCP; @@ -1949,7 +1950,8 @@ int StrToProto (const char* str) errx (1, "unknown protocol %s. Expected tcp or udp", str); } -int StrToAddrAndPortRange (const char* str, struct in_addr* addr, char* proto, port_range *portRange) +static int +StrToAddrAndPortRange (char* str, struct in_addr* addr, char* proto, port_range *portRange) { char* ptr; From owner-svn-src-head@freebsd.org Fri Sep 25 09:14:30 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4915CA07301; Fri, 25 Sep 2015 09:14:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3899B1EB0; Fri, 25 Sep 2015 09:14:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P9EUYE043876; Fri, 25 Sep 2015 09:14:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P9EUal043875; Fri, 25 Sep 2015 09:14:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509250914.t8P9EUal043875@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 09:14:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288213 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 09:14:30 -0000 Author: mav Date: Fri Sep 25 09:14:29 2015 New Revision: 288213 URL: https://svnweb.freebsd.org/changeset/base/288213 Log: Make HA handle datamove and done in a universal way, using port methods. Now from primary node point of view requests transferred from secondary node should look almost normal and always have valid port. Modified: head/sys/cam/ctl/ctl.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 07:37:00 2015 (r288212) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 09:14:29 2015 (r288213) @@ -515,6 +515,151 @@ static struct ctl_frontend ha_frontend = }; static void +ctl_ha_datamove(union ctl_io *io) +{ + struct ctl_lun *lun; + struct ctl_sg_entry *sgl; + union ctl_ha_msg msg; + uint32_t sg_entries_sent; + int do_sg_copy, i, j; + + lun = (struct ctl_lun *)io->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; + memset(&msg.dt, 0, sizeof(msg.dt)); + msg.hdr.msg_type = CTL_MSG_DATAMOVE; + msg.hdr.original_sc = io->io_hdr.original_sc; + msg.hdr.serializing_sc = io; + msg.hdr.nexus = io->io_hdr.nexus; + msg.hdr.status = io->io_hdr.status; + msg.dt.flags = io->io_hdr.flags; + + /* + * We convert everything into a S/G list here. We can't + * pass by reference, only by value between controllers. + * So we can't pass a pointer to the S/G list, only as many + * S/G entries as we can fit in here. If it's possible for + * us to get more than CTL_HA_MAX_SG_ENTRIES S/G entries, + * then we need to break this up into multiple transfers. + */ + if (io->scsiio.kern_sg_entries == 0) { + msg.dt.kern_sg_entries = 1; +#if 0 + if (io->io_hdr.flags & CTL_FLAG_BUS_ADDR) { + msg.dt.sg_list[0].addr = io->scsiio.kern_data_ptr; + } else { + /* XXX KDM use busdma here! */ + msg.dt.sg_list[0].addr = + (void *)vtophys(io->scsiio.kern_data_ptr); + } +#else + KASSERT((io->io_hdr.flags & CTL_FLAG_BUS_ADDR) == 0, + ("HA does not support BUS_ADDR")); + msg.dt.sg_list[0].addr = io->scsiio.kern_data_ptr; +#endif + msg.dt.sg_list[0].len = io->scsiio.kern_data_len; + do_sg_copy = 0; + } else { + msg.dt.kern_sg_entries = io->scsiio.kern_sg_entries; + do_sg_copy = 1; + } + + msg.dt.kern_data_len = io->scsiio.kern_data_len; + msg.dt.kern_total_len = io->scsiio.kern_total_len; + msg.dt.kern_data_resid = io->scsiio.kern_data_resid; + msg.dt.kern_rel_offset = io->scsiio.kern_rel_offset; + msg.dt.sg_sequence = 0; + + /* + * Loop until we've sent all of the S/G entries. On the + * other end, we'll recompose these S/G entries into one + * contiguous list before processing. + */ + for (sg_entries_sent = 0; sg_entries_sent < msg.dt.kern_sg_entries; + msg.dt.sg_sequence++) { + msg.dt.cur_sg_entries = MIN((sizeof(msg.dt.sg_list) / + sizeof(msg.dt.sg_list[0])), + msg.dt.kern_sg_entries - sg_entries_sent); + if (do_sg_copy != 0) { + sgl = (struct ctl_sg_entry *)io->scsiio.kern_data_ptr; + for (i = sg_entries_sent, j = 0; + i < msg.dt.cur_sg_entries; i++, j++) { +#if 0 + if (io->io_hdr.flags & CTL_FLAG_BUS_ADDR) { + msg.dt.sg_list[j].addr = sgl[i].addr; + } else { + /* XXX KDM use busdma here! */ + msg.dt.sg_list[j].addr = + (void *)vtophys(sgl[i].addr); + } +#else + KASSERT((io->io_hdr.flags & + CTL_FLAG_BUS_ADDR) == 0, + ("HA does not support BUS_ADDR")); + msg.dt.sg_list[j].addr = sgl[i].addr; +#endif + msg.dt.sg_list[j].len = sgl[i].len; + } + } + + sg_entries_sent += msg.dt.cur_sg_entries; + msg.dt.sg_last = (sg_entries_sent >= msg.dt.kern_sg_entries); + if (ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg, + sizeof(msg.dt) - sizeof(msg.dt.sg_list) + + sizeof(struct ctl_sg_entry) * msg.dt.cur_sg_entries, + M_WAITOK) > CTL_HA_STATUS_SUCCESS) { + io->io_hdr.port_status = 31341; + io->scsiio.be_move_done(io); + return; + } + msg.dt.sent_sg_entries = sg_entries_sent; + } + + /* + * Officially handover the request from us to peer. + * If failover has just happened, then we must return error. + * If failover happen just after, then it is not our problem. + */ + if (lun) + mtx_lock(&lun->lun_lock); + if (io->io_hdr.flags & CTL_FLAG_FAILOVER) { + if (lun) + mtx_unlock(&lun->lun_lock); + io->io_hdr.port_status = 31342; + io->scsiio.be_move_done(io); + return; + } + io->io_hdr.flags &= ~CTL_FLAG_IO_ACTIVE; + io->io_hdr.flags |= CTL_FLAG_DMA_INPROG; + if (lun) + mtx_unlock(&lun->lun_lock); +} + +static void +ctl_ha_done(union ctl_io *io) +{ + union ctl_ha_msg msg; + + if (io->io_hdr.io_type == CTL_IO_SCSI) { + memset(&msg, 0, sizeof(msg)); + msg.hdr.msg_type = CTL_MSG_FINISH_IO; + msg.hdr.original_sc = io->io_hdr.original_sc; + msg.hdr.nexus = io->io_hdr.nexus; + msg.hdr.status = io->io_hdr.status; + msg.scsi.scsi_status = io->scsiio.scsi_status; + msg.scsi.tag_num = io->scsiio.tag_num; + msg.scsi.tag_type = io->scsiio.tag_type; + msg.scsi.sense_len = io->scsiio.sense_len; + msg.scsi.sense_residual = io->scsiio.sense_residual; + msg.scsi.residual = io->scsiio.residual; + memcpy(&msg.scsi.sense_data, &io->scsiio.sense_data, + io->scsiio.sense_len); + ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg, + sizeof(msg.scsi) - sizeof(msg.scsi.sense_data) + + msg.scsi.sense_len, M_WAITOK); + } + ctl_free_io(io); +} + +static void ctl_isc_handler_finish_xfer(struct ctl_softc *ctl_softc, union ctl_ha_msg *msg_info) { @@ -937,6 +1082,8 @@ ctl_isc_port_sync(struct ctl_softc *soft port = malloc(sizeof(*port), M_CTL, M_WAITOK | M_ZERO); port->frontend = &ha_frontend; port->targ_port = msg->hdr.nexus.targ_port; + port->fe_datamove = ctl_ha_datamove; + port->fe_done = ctl_ha_done; } else if (port->frontend == &ha_frontend) { CTL_DEBUG_PRINT(("%s: Updated port %d\n", __func__, msg->hdr.nexus.targ_port)); @@ -1999,6 +2146,7 @@ ctl_serialize_other_sc_cmd(struct ctl_sc { struct ctl_softc *softc = control_softc; union ctl_ha_msg msg_info; + struct ctl_port *port; struct ctl_lun *lun; const struct ctl_cmd_entry *entry; int retval = 0; @@ -2006,6 +2154,16 @@ ctl_serialize_other_sc_cmd(struct ctl_sc targ_lun = ctsio->io_hdr.nexus.targ_mapped_lun; mtx_lock(&softc->ctl_lock); + + /* Make sure that we know about this port. */ + port = ctl_io_port(&ctsio->io_hdr); + if (port == NULL || (port->status & CTL_PORT_STATUS_ONLINE) == 0) { + ctl_set_internal_failure(ctsio, /*sks_valid*/ 0, + /*retry_count*/ 1); + goto badjuju; + } + + /* Make sure that we know about this LUN. */ if ((targ_lun < CTL_MAX_LUNS) && ((lun = softc->ctl_luns[targ_lun]) != NULL)) { mtx_lock(&lun->lun_lock); @@ -2031,25 +2189,13 @@ ctl_serialize_other_sc_cmd(struct ctl_sc * a race, so respond to initiator in the most opaque way. */ ctl_set_busy(ctsio); - ctl_copy_sense_data_back((union ctl_io *)ctsio, &msg_info); - msg_info.hdr.original_sc = ctsio->io_hdr.original_sc; - msg_info.hdr.serializing_sc = NULL; - msg_info.hdr.msg_type = CTL_MSG_BAD_JUJU; - ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, - sizeof(msg_info.scsi), M_WAITOK); - return(1); + goto badjuju; } entry = ctl_get_cmd_entry(ctsio, NULL); if (ctl_scsiio_lun_check(lun, entry, ctsio) != 0) { mtx_unlock(&lun->lun_lock); - ctl_copy_sense_data_back((union ctl_io *)ctsio, &msg_info); - msg_info.hdr.original_sc = ctsio->io_hdr.original_sc; - msg_info.hdr.serializing_sc = NULL; - msg_info.hdr.msg_type = CTL_MSG_BAD_JUJU; - ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, - sizeof(msg_info.scsi), M_WAITOK); - return(1); + goto badjuju; } ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr = lun; @@ -2095,42 +2241,28 @@ ctl_serialize_other_sc_cmd(struct ctl_sc case CTL_ACTION_OVERLAP: TAILQ_REMOVE(&lun->ooa_queue, &ctsio->io_hdr, ooa_links); mtx_unlock(&lun->lun_lock); - retval = 1; - ctl_set_overlapped_cmd(ctsio); - ctl_copy_sense_data_back((union ctl_io *)ctsio, &msg_info); - msg_info.hdr.original_sc = ctsio->io_hdr.original_sc; - msg_info.hdr.serializing_sc = NULL; - msg_info.hdr.msg_type = CTL_MSG_BAD_JUJU; - ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, - sizeof(msg_info.scsi), M_WAITOK); - break; + goto badjuju; case CTL_ACTION_OVERLAP_TAG: TAILQ_REMOVE(&lun->ooa_queue, &ctsio->io_hdr, ooa_links); mtx_unlock(&lun->lun_lock); - retval = 1; ctl_set_overlapped_tag(ctsio, ctsio->tag_num); - ctl_copy_sense_data_back((union ctl_io *)ctsio, &msg_info); - msg_info.hdr.original_sc = ctsio->io_hdr.original_sc; - msg_info.hdr.serializing_sc = NULL; - msg_info.hdr.msg_type = CTL_MSG_BAD_JUJU; - ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, - sizeof(msg_info.scsi), M_WAITOK); - break; + goto badjuju; case CTL_ACTION_ERROR: default: TAILQ_REMOVE(&lun->ooa_queue, &ctsio->io_hdr, ooa_links); mtx_unlock(&lun->lun_lock); - retval = 1; ctl_set_internal_failure(ctsio, /*sks_valid*/ 0, /*retry_count*/ 0); +badjuju: ctl_copy_sense_data_back((union ctl_io *)ctsio, &msg_info); msg_info.hdr.original_sc = ctsio->io_hdr.original_sc; msg_info.hdr.serializing_sc = NULL; msg_info.hdr.msg_type = CTL_MSG_BAD_JUJU; ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, sizeof(msg_info.scsi), M_WAITOK); + retval = 1; break; } return (retval); @@ -10341,16 +10473,8 @@ ctl_inquiry_std(struct ctl_scsiio *ctsio uint32_t alloc_len, data_len; ctl_port_type port_type; - /* - * Figure out whether we're talking to a Fibre Channel port or not. - * We treat the ioctl front end, and any SCSI adapters, as packetized - * SCSI front ends. - */ port = ctl_io_port(&ctsio->io_hdr); - if (port != NULL) - port_type = port->port_type; - else - port_type = CTL_PORT_SCSI; + port_type = port->port_type; if (port_type == CTL_PORT_IOCTL || port_type == CTL_PORT_INTERNAL) port_type = CTL_PORT_SCSI; @@ -11673,7 +11797,7 @@ ctl_target_reset(struct ctl_softc *softc retval = 0; mtx_lock(&softc->ctl_lock); - port = softc->ctl_ports[io->io_hdr.nexus.targ_port]; + port = ctl_io_port(&io->io_hdr); STAILQ_FOREACH(lun, &softc->lun_list, links) { if (port != NULL && ctl_lun_map_to_port(port, lun->lun) >= CTL_MAX_LUNS) @@ -12490,169 +12614,8 @@ ctl_datamove(union ctl_io *io) return; } - /* - * If we're in XFER mode and this I/O is from the other shelf - * controller, we need to send the DMA to the other side to - * actually transfer the data to/from the host. In serialize only - * mode the transfer happens below CTL and ctl_datamove() is only - * called on the machine that originally received the I/O. - */ - if ((control_softc->ha_mode == CTL_HA_MODE_XFER) - && (io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { - union ctl_ha_msg msg; - uint32_t sg_entries_sent; - int do_sg_copy; - int i; - - memset(&msg, 0, sizeof(msg)); - msg.hdr.msg_type = CTL_MSG_DATAMOVE; - msg.hdr.original_sc = io->io_hdr.original_sc; - msg.hdr.serializing_sc = io; - msg.hdr.nexus = io->io_hdr.nexus; - msg.hdr.status = io->io_hdr.status; - msg.dt.flags = io->io_hdr.flags; - /* - * We convert everything into a S/G list here. We can't - * pass by reference, only by value between controllers. - * So we can't pass a pointer to the S/G list, only as many - * S/G entries as we can fit in here. If it's possible for - * us to get more than CTL_HA_MAX_SG_ENTRIES S/G entries, - * then we need to break this up into multiple transfers. - */ - if (io->scsiio.kern_sg_entries == 0) { - msg.dt.kern_sg_entries = 1; -#if 0 - /* - * Convert to a physical address if this is a - * virtual address. - */ - if (io->io_hdr.flags & CTL_FLAG_BUS_ADDR) { - msg.dt.sg_list[0].addr = - io->scsiio.kern_data_ptr; - } else { - /* - * XXX KDM use busdma here! - */ - msg.dt.sg_list[0].addr = (void *) - vtophys(io->scsiio.kern_data_ptr); - } -#else - KASSERT((io->io_hdr.flags & CTL_FLAG_BUS_ADDR) == 0, - ("HA does not support BUS_ADDR")); - msg.dt.sg_list[0].addr = io->scsiio.kern_data_ptr; -#endif - - msg.dt.sg_list[0].len = io->scsiio.kern_data_len; - do_sg_copy = 0; - } else { - msg.dt.kern_sg_entries = io->scsiio.kern_sg_entries; - do_sg_copy = 1; - } - - msg.dt.kern_data_len = io->scsiio.kern_data_len; - msg.dt.kern_total_len = io->scsiio.kern_total_len; - msg.dt.kern_data_resid = io->scsiio.kern_data_resid; - msg.dt.kern_rel_offset = io->scsiio.kern_rel_offset; - msg.dt.sg_sequence = 0; - - /* - * Loop until we've sent all of the S/G entries. On the - * other end, we'll recompose these S/G entries into one - * contiguous list before passing it to the - */ - for (sg_entries_sent = 0; sg_entries_sent < - msg.dt.kern_sg_entries; msg.dt.sg_sequence++) { - msg.dt.cur_sg_entries = MIN((sizeof(msg.dt.sg_list)/ - sizeof(msg.dt.sg_list[0])), - msg.dt.kern_sg_entries - sg_entries_sent); - - if (do_sg_copy != 0) { - struct ctl_sg_entry *sgl; - int j; - - sgl = (struct ctl_sg_entry *) - io->scsiio.kern_data_ptr; - /* - * If this is in cached memory, flush the cache - * before we send the DMA request to the other - * controller. We want to do this in either - * the * read or the write case. The read - * case is straightforward. In the write - * case, we want to make sure nothing is - * in the local cache that could overwrite - * the DMAed data. - */ - - for (i = sg_entries_sent, j = 0; - i < msg.dt.cur_sg_entries; i++, j++) { -#if 0 - if ((io->io_hdr.flags & - CTL_FLAG_BUS_ADDR) == 0) { - /* - * XXX KDM use busdma. - */ - msg.dt.sg_list[j].addr =(void *) - vtophys(sgl[i].addr); - } else { - msg.dt.sg_list[j].addr = - sgl[i].addr; - } -#else - KASSERT((io->io_hdr.flags & - CTL_FLAG_BUS_ADDR) == 0, - ("HA does not support BUS_ADDR")); - msg.dt.sg_list[j].addr = sgl[i].addr; -#endif - msg.dt.sg_list[j].len = sgl[i].len; - } - } - - sg_entries_sent += msg.dt.cur_sg_entries; - if (sg_entries_sent >= msg.dt.kern_sg_entries) - msg.dt.sg_last = 1; - else - msg.dt.sg_last = 0; - - if (ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg, - sizeof(msg.dt) - sizeof(msg.dt.sg_list) + - sizeof(struct ctl_sg_entry)*msg.dt.cur_sg_entries, - M_WAITOK) > CTL_HA_STATUS_SUCCESS) { - io->io_hdr.port_status = 31341; - io->scsiio.be_move_done(io); - return; - } - - msg.dt.sent_sg_entries = sg_entries_sent; - } - - /* - * Officially handover the request from us to peer. - * If failover has just happened, then we must return error. - * If failover happen just after, then it is not our problem. - */ - if (lun) - mtx_lock(&lun->lun_lock); - if (io->io_hdr.flags & CTL_FLAG_FAILOVER) { - if (lun) - mtx_unlock(&lun->lun_lock); - io->io_hdr.port_status = 31342; - io->scsiio.be_move_done(io); - return; - } - io->io_hdr.flags &= ~CTL_FLAG_IO_ACTIVE; - io->io_hdr.flags |= CTL_FLAG_DMA_INPROG; - if (lun) - mtx_unlock(&lun->lun_lock); - } else { - - /* - * Lookup the fe_datamove() function for this particular - * front end. - */ - fe_datamove = ctl_io_port(&io->io_hdr)->fe_datamove; - - fe_datamove(io); - } + fe_datamove = ctl_io_port(&io->io_hdr)->fe_datamove; + fe_datamove(io); } static void @@ -13096,11 +13059,7 @@ ctl_process_done(union ctl_io *io) uint32_t targ_port = io->io_hdr.nexus.targ_port; CTL_DEBUG_PRINT(("ctl_process_done\n")); - - if ((io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC) == 0) - fe_done = softc->ctl_ports[targ_port]->fe_done; - else - fe_done = NULL; + fe_done = softc->ctl_ports[targ_port]->fe_done; #ifdef CTL_TIME_IO if ((time_uptime - io->io_hdr.start_time) > ctl_time_io_secs) { @@ -13144,10 +13103,7 @@ ctl_process_done(union ctl_io *io) case CTL_IO_TASK: if (ctl_debug & CTL_DEBUG_INFO) ctl_io_error_print(io, NULL); - if (io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC) - ctl_free_io(io); - else - fe_done(io); + fe_done(io); return (CTL_RETVAL_COMPLETE); default: panic("ctl_process_done: invalid io type %d\n", @@ -13269,29 +13225,8 @@ bailout: sizeof(msg.scsi) - sizeof(msg.scsi.sense_data), M_WAITOK); } - if ((softc->ha_mode == CTL_HA_MODE_XFER) - && (io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { - memset(&msg, 0, sizeof(msg)); - msg.hdr.msg_type = CTL_MSG_FINISH_IO; - msg.hdr.original_sc = io->io_hdr.original_sc; - msg.hdr.nexus = io->io_hdr.nexus; - msg.hdr.status = io->io_hdr.status; - msg.scsi.scsi_status = io->scsiio.scsi_status; - msg.scsi.tag_num = io->scsiio.tag_num; - msg.scsi.tag_type = io->scsiio.tag_type; - msg.scsi.sense_len = io->scsiio.sense_len; - msg.scsi.sense_residual = io->scsiio.sense_residual; - msg.scsi.residual = io->scsiio.residual; - memcpy(&msg.scsi.sense_data, &io->scsiio.sense_data, - io->scsiio.sense_len); - - ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg, - sizeof(msg.scsi) - sizeof(msg.scsi.sense_data) + - msg.scsi.sense_len, M_WAITOK); - ctl_free_io(io); - } else - fe_done(io); + fe_done(io); return (CTL_RETVAL_COMPLETE); } From owner-svn-src-head@freebsd.org Fri Sep 25 09:55:52 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9242EA08F6E; Fri, 25 Sep 2015 09:55:52 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 830F21447; Fri, 25 Sep 2015 09:55:52 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8P9tqVx059987; Fri, 25 Sep 2015 09:55:52 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8P9tqNG059986; Fri, 25 Sep 2015 09:55:52 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509250955.t8P9tqNG059986@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 09:55:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288214 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 09:55:52 -0000 Author: mav Date: Fri Sep 25 09:55:51 2015 New Revision: 288214 URL: https://svnweb.freebsd.org/changeset/base/288214 Log: Collect DMA statistics on secondary HA node. Modified: head/sys/cam/ctl/ctl.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 09:14:29 2015 (r288213) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 09:55:51 2015 (r288214) @@ -1365,6 +1365,9 @@ ctl_isc_event_handler(ctl_ha_channel cha io->io_hdr.status = msg->hdr.status; if (msg->dt.sg_sequence == 0) { +#ifdef CTL_TIME_IO + getbintime(&io->io_hdr.dma_start_bt); +#endif i = msg->dt.kern_sg_entries + msg->dt.kern_data_len / CTL_HA_DATAMOVE_SEGMENT + 1; @@ -12622,9 +12625,11 @@ static void ctl_send_datamove_done(union ctl_io *io, int have_lock) { union ctl_ha_msg msg; +#ifdef CTL_TIME_IO + struct bintime cur_bt; +#endif memset(&msg, 0, sizeof(msg)); - msg.hdr.msg_type = CTL_MSG_DATAMOVE_DONE; msg.hdr.original_sc = io; msg.hdr.serializing_sc = io->io_hdr.serializing_sc; @@ -12640,15 +12645,20 @@ ctl_send_datamove_done(union ctl_io *io, msg.scsi.fetd_status = io->io_hdr.port_status; msg.scsi.residual = io->scsiio.residual; io->io_hdr.flags &= ~CTL_FLAG_IO_ACTIVE; - if (io->io_hdr.flags & CTL_FLAG_FAILOVER) { ctl_failover_io(io, /*have_lock*/ have_lock); return; } - ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg, sizeof(msg.scsi) - sizeof(msg.scsi.sense_data) + msg.scsi.sense_len, M_WAITOK); + +#ifdef CTL_TIME_IO + getbintime(&cur_bt); + bintime_sub(&cur_bt, &io->io_hdr.dma_start_bt); + bintime_add(&io->io_hdr.dma_bt, &cur_bt); + io->io_hdr.num_dmas++; +#endif } /* From owner-svn-src-head@freebsd.org Fri Sep 25 10:14:41 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 48229A09D65; Fri, 25 Sep 2015 10:14:41 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 383581FA4; Fri, 25 Sep 2015 10:14:41 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PAEfEf068206; Fri, 25 Sep 2015 10:14:41 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PAEeon068202; Fri, 25 Sep 2015 10:14:40 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509251014.t8PAEeon068202@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 10:14:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288215 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 10:14:41 -0000 Author: mav Date: Fri Sep 25 10:14:39 2015 New Revision: 288215 URL: https://svnweb.freebsd.org/changeset/base/288215 Log: Switch I/O time accounting from system time to uptime. While there, make num_dmas accounted independently of CTL_TIME_IO. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_backend_block.c head/sys/cam/ctl/ctl_backend_ramdisk.c head/sys/cam/ctl/ctl_io.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 09:55:51 2015 (r288214) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 10:14:39 2015 (r288215) @@ -1327,7 +1327,7 @@ ctl_isc_event_handler(ctl_ha_channel cha io->scsiio.tag_type = msg->scsi.tag_type; #ifdef CTL_TIME_IO io->io_hdr.start_time = time_uptime; - getbintime(&io->io_hdr.start_bt); + getbinuptime(&io->io_hdr.start_bt); #endif /* CTL_TIME_IO */ io->scsiio.cdb_len = msg->scsi.cdb_len; memcpy(io->scsiio.cdb, msg->scsi.cdb, @@ -1366,7 +1366,7 @@ ctl_isc_event_handler(ctl_ha_channel cha if (msg->dt.sg_sequence == 0) { #ifdef CTL_TIME_IO - getbintime(&io->io_hdr.dma_start_bt); + getbinuptime(&io->io_hdr.dma_start_bt); #endif i = msg->dt.kern_sg_entries + msg->dt.kern_data_len / @@ -1516,7 +1516,7 @@ ctl_isc_event_handler(ctl_ha_channel cha taskio->tag_type = msg->task.tag_type; #ifdef CTL_TIME_IO taskio->io_hdr.start_time = time_uptime; - getbintime(&taskio->io_hdr.start_bt); + getbinuptime(&taskio->io_hdr.start_bt); #endif /* CTL_TIME_IO */ ctl_run_task((union ctl_io *)taskio); break; @@ -2775,7 +2775,7 @@ ctl_ioctl(struct cdev *dev, u_long cmd, __func__, ooa_hdr->fill_len); } - getbintime(&ooa_hdr->cur_bt); + getbinuptime(&ooa_hdr->cur_bt); if (cur_fill_num > ooa_hdr->alloc_num) { ooa_hdr->dropped_num = cur_fill_num -ooa_hdr->alloc_num; @@ -12654,11 +12654,11 @@ ctl_send_datamove_done(union ctl_io *io, msg.scsi.sense_len, M_WAITOK); #ifdef CTL_TIME_IO - getbintime(&cur_bt); + getbinuptime(&cur_bt); bintime_sub(&cur_bt, &io->io_hdr.dma_start_bt); bintime_add(&io->io_hdr.dma_bt, &cur_bt); - io->io_hdr.num_dmas++; #endif + io->io_hdr.num_dmas++; } /* @@ -13167,12 +13167,12 @@ ctl_process_done(union ctl_io *io) #ifdef CTL_TIME_IO bintime_add(&lun->stats.ports[targ_port].dma_time[type], &io->io_hdr.dma_bt); - lun->stats.ports[targ_port].num_dmas[type] += - io->io_hdr.num_dmas; - getbintime(&cur_bt); + getbinuptime(&cur_bt); bintime_sub(&cur_bt, &io->io_hdr.start_bt); bintime_add(&lun->stats.ports[targ_port].time[type], &cur_bt); #endif + lun->stats.ports[targ_port].num_dmas[type] += + io->io_hdr.num_dmas; } /* @@ -13317,7 +13317,7 @@ ctl_queue(union ctl_io *io) #ifdef CTL_TIME_IO io->io_hdr.start_time = time_uptime; - getbintime(&io->io_hdr.start_bt); + getbinuptime(&io->io_hdr.start_bt); #endif /* CTL_TIME_IO */ /* Map FE-specific LUN ID into global one. */ Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Fri Sep 25 09:55:51 2015 (r288214) +++ head/sys/cam/ctl/ctl_backend_block.c Fri Sep 25 10:14:39 2015 (r288215) @@ -405,11 +405,11 @@ ctl_be_block_move_done(union ctl_io *io) DPRINTF("entered\n"); #ifdef CTL_TIME_IO - getbintime(&cur_bt); + getbinuptime(&cur_bt); bintime_sub(&cur_bt, &io->io_hdr.dma_start_bt); bintime_add(&io->io_hdr.dma_bt, &cur_bt); +#endif io->io_hdr.num_dmas++; -#endif io->scsiio.kern_rel_offset += io->scsiio.kern_data_len; /* @@ -563,8 +563,8 @@ ctl_be_block_biodone(struct bio *bio) ctl_serseq_done(io); } #ifdef CTL_TIME_IO - getbintime(&io->io_hdr.dma_start_bt); -#endif + getbinuptime(&io->io_hdr.dma_start_bt); +#endif ctl_datamove(io); } } @@ -785,8 +785,8 @@ ctl_be_block_dispatch_file(struct ctl_be ctl_serseq_done(io); } #ifdef CTL_TIME_IO - getbintime(&io->io_hdr.dma_start_bt); -#endif + getbinuptime(&io->io_hdr.dma_start_bt); +#endif ctl_datamove(io); } } @@ -956,8 +956,8 @@ ctl_be_block_dispatch_zvol(struct ctl_be ctl_serseq_done(io); } #ifdef CTL_TIME_IO - getbintime(&io->io_hdr.dma_start_bt); -#endif + getbinuptime(&io->io_hdr.dma_start_bt); +#endif ctl_datamove(io); } } @@ -1663,8 +1663,8 @@ ctl_be_block_dispatch(struct ctl_be_bloc } else { SDT_PROBE(cbb, kernel, write, alloc_done, 0, 0, 0, 0, 0); #ifdef CTL_TIME_IO - getbintime(&io->io_hdr.dma_start_bt); -#endif + getbinuptime(&io->io_hdr.dma_start_bt); +#endif ctl_datamove(io); } } Modified: head/sys/cam/ctl/ctl_backend_ramdisk.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_ramdisk.c Fri Sep 25 09:55:51 2015 (r288214) +++ head/sys/cam/ctl/ctl_backend_ramdisk.c Fri Sep 25 10:14:39 2015 (r288215) @@ -235,11 +235,11 @@ ctl_backend_ramdisk_move_done(union ctl_ CTL_PRIV_BACKEND_LUN].ptr; be_lun = (struct ctl_be_ramdisk_lun *)cbe_lun->be_lun; #ifdef CTL_TIME_IO - getbintime(&cur_bt); + getbinuptime(&cur_bt); bintime_sub(&cur_bt, &io->io_hdr.dma_start_bt); bintime_add(&io->io_hdr.dma_bt, &cur_bt); - io->io_hdr.num_dmas++; #endif + io->io_hdr.num_dmas++; if (io->scsiio.kern_sg_entries > 0) free(io->scsiio.kern_data_ptr, M_RAMDISK); io->scsiio.kern_rel_offset += io->scsiio.kern_data_len; @@ -339,7 +339,7 @@ ctl_backend_ramdisk_continue(union ctl_i io->io_hdr.flags |= CTL_FLAG_ALLOCATED; io->io_hdr.ctl_private[CTL_PRIV_BACKEND].integer -= len_filled; #ifdef CTL_TIME_IO - getbintime(&io->io_hdr.dma_start_bt); + getbinuptime(&io->io_hdr.dma_start_bt); #endif ctl_datamove(io); } Modified: head/sys/cam/ctl/ctl_io.h ============================================================================== --- head/sys/cam/ctl/ctl_io.h Fri Sep 25 09:55:51 2015 (r288214) +++ head/sys/cam/ctl/ctl_io.h Fri Sep 25 10:14:39 2015 (r288215) @@ -223,8 +223,8 @@ struct ctl_io_hdr { struct bintime start_bt; /* Timer start ticks */ struct bintime dma_start_bt; /* DMA start ticks */ struct bintime dma_bt; /* DMA total ticks */ - uint32_t num_dmas; /* Number of DMAs */ #endif /* CTL_TIME_IO */ + uint32_t num_dmas; /* Number of DMAs */ union ctl_io *original_sc; union ctl_io *serializing_sc; void *pool; /* I/O pool */ From owner-svn-src-head@freebsd.org Fri Sep 25 13:03:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3F934A0804E; Fri, 25 Sep 2015 13:03:58 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 304E31B16; Fri, 25 Sep 2015 13:03:58 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PD3wjE038619; Fri, 25 Sep 2015 13:03:58 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PD3wjh038618; Fri, 25 Sep 2015 13:03:58 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509251303.t8PD3wjh038618@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 25 Sep 2015 13:03:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288216 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 13:03:58 -0000 Author: kib Date: Fri Sep 25 13:03:57 2015 New Revision: 288216 URL: https://svnweb.freebsd.org/changeset/base/288216 Log: Use per-cpu values for base and last in tc_cpu_ticks(). The values are updated lockess, different CPUs write its own view of timecounter state. The critical section is done for safety, callers of tc_cpu_ticks() are supposed to already enter critical section, or to own a spinlock. The change fixes sporadical reports of too high values reported for the (W)CPU on platforms that do not provide cpu ticker and use tc_cpu_ticks(), in particular, arm*. Diagnosed and reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/kern/kern_tc.c Modified: head/sys/kern/kern_tc.c ============================================================================== --- head/sys/kern/kern_tc.c Fri Sep 25 10:14:39 2015 (r288215) +++ head/sys/kern/kern_tc.c Fri Sep 25 13:03:57 2015 (r288216) @@ -1924,20 +1924,27 @@ SYSINIT(timecounter, SI_SUB_CLOCKS, SI_O static int cpu_tick_variable; static uint64_t cpu_tick_frequency; +static DPCPU_DEFINE(uint64_t, tc_cpu_ticks_base); +static DPCPU_DEFINE(unsigned, tc_cpu_ticks_last); + static uint64_t tc_cpu_ticks(void) { - static uint64_t base; - static unsigned last; - unsigned u; struct timecounter *tc; + uint64_t res, *base; + unsigned u, *last; + critical_enter(); + base = DPCPU_PTR(tc_cpu_ticks_base); + last = DPCPU_PTR(tc_cpu_ticks_last); tc = timehands->th_counter; u = tc->tc_get_timecount(tc) & tc->tc_counter_mask; - if (u < last) - base += (uint64_t)tc->tc_counter_mask + 1; - last = u; - return (u + base); + if (u < *last) + *base += (uint64_t)tc->tc_counter_mask + 1; + *last = u; + res = u + *base; + critical_exit(); + return (res); } void From owner-svn-src-head@freebsd.org Fri Sep 25 14:24:24 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B9A1A0915E; Fri, 25 Sep 2015 14:24:24 +0000 (UTC) (envelope-from grembo@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0C9B11B0F; Fri, 25 Sep 2015 14:24:24 +0000 (UTC) (envelope-from grembo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PEON7c071310; Fri, 25 Sep 2015 14:24:23 GMT (envelope-from grembo@FreeBSD.org) Received: (from grembo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PEONdo071309; Fri, 25 Sep 2015 14:24:23 GMT (envelope-from grembo@FreeBSD.org) Message-Id: <201509251424.t8PEONdo071309@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: grembo set sender to grembo@FreeBSD.org using -f From: Michael Gmelin Date: Fri, 25 Sep 2015 14:24:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288217 - head/lib/libfetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 14:24:24 -0000 Author: grembo (ports committer) Date: Fri Sep 25 14:24:23 2015 New Revision: 288217 URL: https://svnweb.freebsd.org/changeset/base/288217 Log: Fix non-POSIX-compliant use of getaddrinfo in libfetch Submitted by: Boris Kolpackov Reviewed by: bapt Approved by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D3724 Modified: head/lib/libfetch/common.c Modified: head/lib/libfetch/common.c ============================================================================== --- head/lib/libfetch/common.c Fri Sep 25 13:03:57 2015 (r288216) +++ head/lib/libfetch/common.c Fri Sep 25 14:24:23 2015 (r288217) @@ -495,7 +495,8 @@ fetch_ssl_get_numeric_addrinfo(const cha hints.ai_protocol = 0; hints.ai_flags = AI_NUMERICHOST; /* port is not relevant for this purpose */ - getaddrinfo(host, "443", &hints, &res); + if (getaddrinfo(host, "443", &hints, &res) != 0) + res = NULL; free(host); return res; } From owner-svn-src-head@freebsd.org Fri Sep 25 15:57:01 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A57FDA08FA4; Fri, 25 Sep 2015 15:57:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9699F1831; Fri, 25 Sep 2015 15:57:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PFv1tH010210; Fri, 25 Sep 2015 15:57:01 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PFv176010209; Fri, 25 Sep 2015 15:57:01 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509251557.t8PFv176010209@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 15:57:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288218 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 15:57:01 -0000 Author: bdrewery Date: Fri Sep 25 15:57:00 2015 New Revision: 288218 URL: https://svnweb.freebsd.org/changeset/base/288218 Log: PROGS: Let the parent run the children in parallel. This seems to work fine. MFC after: 3 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.progs.mk Modified: head/share/mk/bsd.progs.mk ============================================================================== --- head/share/mk/bsd.progs.mk Fri Sep 25 14:24:23 2015 (r288217) +++ head/share/mk/bsd.progs.mk Fri Sep 25 15:57:00 2015 (r288218) @@ -66,8 +66,6 @@ all: ${PROGS} # We cannot capture dependencies for meta mode here UPDATE_DEPENDFILE = NO -# nor can we safely run in parallel. -.NOTPARALLEL: .endif .endif # PROGS || PROGS_CXX From owner-svn-src-head@freebsd.org Fri Sep 25 16:27:12 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3B40A09D32; Fri, 25 Sep 2015 16:27:12 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B4CF914CD; Fri, 25 Sep 2015 16:27:12 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PGRCWY023422; Fri, 25 Sep 2015 16:27:12 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PGRC97023421; Fri, 25 Sep 2015 16:27:12 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509251627.t8PGRC97023421@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 16:27:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288219 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 16:27:12 -0000 Author: bdrewery Date: Fri Sep 25 16:27:11 2015 New Revision: 288219 URL: https://svnweb.freebsd.org/changeset/base/288219 Log: The bsd.progs.mk -> bsd.prog.mk rework did not pan out yet. It may still in the future but for now unmark this deprecated. bsd.progs.mk is less bad after r288158. Modified: head/share/mk/bsd.README Modified: head/share/mk/bsd.README ============================================================================== --- head/share/mk/bsd.README Fri Sep 25 15:57:00 2015 (r288218) +++ head/share/mk/bsd.README Fri Sep 25 16:27:11 2015 (r288219) @@ -39,7 +39,7 @@ bsd.port.post.mk - building ports bsd.port.pre.mk - building ports bsd.port.subdir.mk - targets for building subdirectories for ports bsd.prog.mk - building programs from source files -bsd.progs.mk - build multiple programs from sources (deprecated) +bsd.progs.mk - build multiple programs from sources bsd.snmpmod.mk - building modules for the SNMP daemon bsnmpd bsd.subdir.mk - targets for building subdirectories bsd.sys.mk - common settings used for building FreeBSD sources From owner-svn-src-head@freebsd.org Fri Sep 25 16:35:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7B9FA0817A; Fri, 25 Sep 2015 16:35:00 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D879F1AC5; Fri, 25 Sep 2015 16:35:00 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PGZ0GS027420; Fri, 25 Sep 2015 16:35:00 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PGZ0Wq027418; Fri, 25 Sep 2015 16:35:00 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509251635.t8PGZ0Wq027418@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 16:35:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288220 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 16:35:01 -0000 Author: mav Date: Fri Sep 25 16:34:59 2015 New Revision: 288220 URL: https://svnweb.freebsd.org/changeset/base/288220 Log: Remove stale comments and some excessive empty lines. Modified: head/sys/cam/ctl/ctl_backend_block.c head/sys/cam/ctl/ctl_backend_ramdisk.c Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Fri Sep 25 16:27:11 2015 (r288219) +++ head/sys/cam/ctl/ctl_backend_block.c Fri Sep 25 16:34:59 2015 (r288220) @@ -463,14 +463,8 @@ ctl_be_block_move_done(union ctl_io *io) * interrupt context, and therefore we cannot block. */ mtx_lock(&be_lun->queue_lock); - /* - * XXX KDM make sure that links is okay to use at this point. - * Otherwise, we either need to add another field to ctl_io_hdr, - * or deal with resource allocation here. - */ STAILQ_INSERT_TAIL(&be_lun->datamove_queue, &io->io_hdr, links); mtx_unlock(&be_lun->queue_lock); - taskqueue_enqueue(be_lun->io_taskqueue, &be_lun->io_task); return (0); @@ -586,15 +580,12 @@ ctl_be_block_flush_file(struct ctl_be_bl (void) vn_start_write(be_lun->vn, &mountpoint, V_WAIT); - if (MNT_SHARED_WRITES(mountpoint) - || ((mountpoint == NULL) - && MNT_SHARED_WRITES(be_lun->vn->v_mount))) + if (MNT_SHARED_WRITES(mountpoint) || + ((mountpoint == NULL) && MNT_SHARED_WRITES(be_lun->vn->v_mount))) lock_flags = LK_SHARED; else lock_flags = LK_EXCLUSIVE; - vn_lock(be_lun->vn, lock_flags | LK_RETRY); - error = VOP_FSYNC(be_lun->vn, beio->io_arg ? MNT_NOWAIT : MNT_WAIT, curthread); VOP_UNLOCK(be_lun->vn, 0); @@ -716,13 +707,11 @@ ctl_be_block_dispatch_file(struct ctl_be (void)vn_start_write(be_lun->vn, &mountpoint, V_WAIT); - if (MNT_SHARED_WRITES(mountpoint) - || ((mountpoint == NULL) + if (MNT_SHARED_WRITES(mountpoint) || ((mountpoint == NULL) && MNT_SHARED_WRITES(be_lun->vn->v_mount))) lock_flags = LK_SHARED; else lock_flags = LK_EXCLUSIVE; - vn_lock(be_lun->vn, lock_flags | LK_RETRY); /* @@ -1540,14 +1529,8 @@ ctl_be_block_next(struct ctl_be_block_io io->io_hdr.status |= CTL_STATUS_NONE; mtx_lock(&be_lun->queue_lock); - /* - * XXX KDM make sure that links is okay to use at this point. - * Otherwise, we either need to add another field to ctl_io_hdr, - * or deal with resource allocation here. - */ STAILQ_INSERT_TAIL(&be_lun->input_queue, &io->io_hdr, links); mtx_unlock(&be_lun->queue_lock); - taskqueue_enqueue(be_lun->io_taskqueue, &be_lun->io_task); } @@ -1778,11 +1761,6 @@ ctl_be_block_submit(union ctl_io *io) PRIV(io)->len = 0; mtx_lock(&be_lun->queue_lock); - /* - * XXX KDM make sure that links is okay to use at this point. - * Otherwise, we either need to add another field to ctl_io_hdr, - * or deal with resource allocation here. - */ STAILQ_INSERT_TAIL(&be_lun->input_queue, &io->io_hdr, links); mtx_unlock(&be_lun->queue_lock); taskqueue_enqueue(be_lun->io_taskqueue, &be_lun->io_task); @@ -2322,10 +2300,6 @@ ctl_be_block_create(struct ctl_be_block_ num_threads = 1; } - /* - * XXX This searching loop might be refactored to be combined with - * the loop above, - */ value = ctl_get_opt(&cbe_lun->options, "num_threads"); if (value != NULL) { tmp_num_threads = strtol(value, NULL, 0); @@ -2515,7 +2489,6 @@ ctl_be_block_rm(struct ctl_be_block_soft break; } mtx_unlock(&softc->lock); - if (be_lun == NULL) { snprintf(req->error_str, sizeof(req->error_str), "LUN %u is not managed by the block backend", @@ -2583,13 +2556,10 @@ ctl_be_block_rm(struct ctl_be_block_soft free(be_lun, M_CTLBLK); req->status = CTL_LUN_OK; - return (0); bailout_error: - req->status = CTL_LUN_ERROR; - return (0); } @@ -2611,7 +2581,6 @@ ctl_be_block_modify(struct ctl_be_block_ break; } mtx_unlock(&softc->lock); - if (be_lun == NULL) { snprintf(req->error_str, sizeof(req->error_str), "LUN %u is not managed by the block backend", @@ -2688,7 +2657,6 @@ ctl_be_block_lun_shutdown(void *be_lun) struct ctl_be_block_softc *softc; lun = (struct ctl_be_block_lun *)be_lun; - softc = lun->softc; mtx_lock(&softc->lock); @@ -2696,7 +2664,6 @@ ctl_be_block_lun_shutdown(void *be_lun) if (lun->flags & CTL_BE_BLOCK_LUN_WAITING) wakeup(lun); mtx_unlock(&softc->lock); - } static void @@ -2745,14 +2712,13 @@ ctl_be_block_config_write(union ctl_io * struct ctl_be_lun *cbe_lun; int retval; - retval = 0; - DPRINTF("entered\n"); cbe_lun = (struct ctl_be_lun *)io->io_hdr.ctl_private[ CTL_PRIV_BACKEND_LUN].ptr; be_lun = (struct ctl_be_block_lun *)cbe_lun->be_lun; + retval = 0; switch (io->scsiio.cdb[0]) { case SYNCHRONIZE_CACHE: case SYNCHRONIZE_CACHE_16: @@ -2870,22 +2836,16 @@ ctl_be_block_lun_info(void *be_lun, stru int retval; lun = (struct ctl_be_block_lun *)be_lun; - retval = 0; retval = sbuf_printf(sb, "\t"); - if (retval != 0) goto bailout; - retval = sbuf_printf(sb, "%d", lun->num_threads); - if (retval != 0) goto bailout; - retval = sbuf_printf(sb, "\n"); bailout: - return (retval); } Modified: head/sys/cam/ctl/ctl_backend_ramdisk.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_ramdisk.c Fri Sep 25 16:27:11 2015 (r288219) +++ head/sys/cam/ctl/ctl_backend_ramdisk.c Fri Sep 25 16:34:59 2015 (r288220) @@ -145,18 +145,13 @@ CTL_BACKEND_DECLARE(cbr, ctl_be_ramdisk_ int ctl_backend_ramdisk_init(void) { - struct ctl_be_ramdisk_softc *softc; + struct ctl_be_ramdisk_softc *softc = &rd_softc; #ifdef CTL_RAMDISK_PAGES int i; #endif - - softc = &rd_softc; - memset(softc, 0, sizeof(*softc)); - mtx_init(&softc->lock, "ctlramdisk", NULL, MTX_DEF); - STAILQ_INIT(&softc->lun_list); softc->rd_size = 1024 * 1024; #ifdef CTL_RAMDISK_PAGES @@ -177,14 +172,12 @@ ctl_backend_ramdisk_init(void) void ctl_backend_ramdisk_shutdown(void) { - struct ctl_be_ramdisk_softc *softc; + struct ctl_be_ramdisk_softc *softc = &rd_softc; struct ctl_be_ramdisk_lun *lun, *next_lun; #ifdef CTL_RAMDISK_PAGES int i; #endif - softc = &rd_softc; - mtx_lock(&softc->lock); for (lun = STAILQ_FIRST(&softc->lun_list); lun != NULL; lun = next_lun){ /* @@ -360,11 +353,8 @@ ctl_backend_ramdisk_worker(void *context if (io != NULL) { STAILQ_REMOVE(&be_lun->cont_queue, &io->io_hdr, ctl_io_hdr, links); - mtx_unlock(&be_lun->queue_lock); - ctl_backend_ramdisk_continue(io); - mtx_lock(&be_lun->queue_lock); continue; } @@ -382,18 +372,14 @@ static int ctl_backend_ramdisk_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) { - struct ctl_be_ramdisk_softc *softc; + struct ctl_be_ramdisk_softc *softc = &rd_softc; + struct ctl_lun_req *lun_req; int retval; retval = 0; - softc = &rd_softc; - switch (cmd) { - case CTL_LUN_REQ: { - struct ctl_lun_req *lun_req; - + case CTL_LUN_REQ: lun_req = (struct ctl_lun_req *)addr; - switch (lun_req->reqtype) { case CTL_LUNREQ_CREATE: retval = ctl_backend_ramdisk_create(softc, lun_req); @@ -412,7 +398,6 @@ ctl_backend_ramdisk_ioctl(struct cdev *d break; } break; - } default: retval = ENOTTY; break; @@ -429,20 +414,14 @@ ctl_backend_ramdisk_rm(struct ctl_be_ram struct ctl_lun_rm_params *params; int retval; - retval = 0; params = &req->reqdata.rm; - - be_lun = NULL; - mtx_lock(&softc->lock); - STAILQ_FOREACH(be_lun, &softc->lun_list, links) { if (be_lun->cbe_lun.lun_id == params->lun_id) break; } mtx_unlock(&softc->lock); - if (be_lun == NULL) { snprintf(req->error_str, sizeof(req->error_str), "%s: LUN %u is not managed by the ramdisk backend", @@ -451,7 +430,6 @@ ctl_backend_ramdisk_rm(struct ctl_be_ram } retval = ctl_disable_lun(&be_lun->cbe_lun); - if (retval != 0) { snprintf(req->error_str, sizeof(req->error_str), "%s: error %d returned from ctl_disable_lun() for " @@ -483,10 +461,9 @@ ctl_backend_ramdisk_rm(struct ctl_be_ram } mtx_lock(&softc->lock); - while ((be_lun->flags & CTL_BE_RAMDISK_LUN_UNCONFIGURED) == 0) { retval = msleep(be_lun, &softc->lock, PCATCH, "ctlram", 0); - if (retval == EINTR) + if (retval == EINTR) break; } be_lun->flags &= ~CTL_BE_RAMDISK_LUN_WAITING; @@ -514,12 +491,10 @@ ctl_backend_ramdisk_rm(struct ctl_be_ram } req->status = CTL_LUN_OK; - return (retval); bailout_error: req->status = CTL_LUN_ERROR; - return (0); } @@ -656,7 +631,6 @@ ctl_backend_ramdisk_create(struct ctl_be mtx_lock(&softc->lock); softc->num_luns++; STAILQ_INSERT_TAIL(&softc->lun_list, be_lun, links); - mtx_unlock(&softc->lock); retval = ctl_add_lun(&be_lun->cbe_lun); @@ -703,7 +677,6 @@ ctl_backend_ramdisk_create(struct ctl_be mtx_unlock(&softc->lock); req->status = CTL_LUN_OK; - return (retval); bailout_error: @@ -716,7 +689,6 @@ bailout_error: mtx_destroy(&be_lun->queue_lock); free(be_lun, M_RAMDISK); } - return (retval); } @@ -739,7 +711,6 @@ ctl_backend_ramdisk_modify(struct ctl_be break; } mtx_unlock(&softc->lock); - if (be_lun == NULL) { snprintf(req->error_str, sizeof(req->error_str), "%s: LUN %u is not managed by the ramdisk backend", @@ -786,12 +757,10 @@ ctl_backend_ramdisk_modify(struct ctl_be params->lun_size_bytes = be_lun->size_bytes; req->status = CTL_LUN_OK; - return (0); bailout_error: req->status = CTL_LUN_ERROR; - return (0); } @@ -807,9 +776,7 @@ ctl_backend_ramdisk_lun_shutdown(void *b do_free = 0; mtx_lock(&softc->lock); - lun->flags |= CTL_BE_RAMDISK_LUN_UNCONFIGURED; - if (lun->flags & CTL_BE_RAMDISK_LUN_WAITING) { wakeup(lun); } else { @@ -818,7 +785,6 @@ ctl_backend_ramdisk_lun_shutdown(void *b softc->num_luns--; do_free = 1; } - mtx_unlock(&softc->lock); if (do_free != 0) From owner-svn-src-head@freebsd.org Fri Sep 25 18:15:38 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1065FA0826C; Fri, 25 Sep 2015 18:15:38 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F167B183E; Fri, 25 Sep 2015 18:15:37 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PIFbxX071459; Fri, 25 Sep 2015 18:15:37 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PIFZV7071446; Fri, 25 Sep 2015 18:15:35 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509251815.t8PIFZV7071446@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 18:15:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288221 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 18:15:38 -0000 Author: mav Date: Fri Sep 25 18:15:34 2015 New Revision: 288221 URL: https://svnweb.freebsd.org/changeset/base/288221 Log: Remove some dead code found by Clang analyzer. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_backend_block.c head/sys/cam/ctl/ctl_backend_ramdisk.c head/sys/cam/ctl/ctl_cmd_table.c head/sys/cam/ctl/ctl_error.c head/sys/cam/ctl/ctl_frontend.c head/sys/cam/ctl/ctl_frontend_cam_sim.c head/sys/cam/ctl/ctl_frontend_ioctl.c head/sys/cam/ctl/ctl_frontend_iscsi.c head/sys/cam/ctl/ctl_tpc_local.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 18:15:34 2015 (r288221) @@ -378,7 +378,7 @@ void ctl_shutdown(void); static int ctl_open(struct cdev *dev, int flags, int fmt, struct thread *td); static int ctl_close(struct cdev *dev, int flags, int fmt, struct thread *td); static int ctl_serialize_other_sc_cmd(struct ctl_scsiio *ctsio); -static int ctl_ioctl_fill_ooa(struct ctl_lun *lun, uint32_t *cur_fill_num, +static void ctl_ioctl_fill_ooa(struct ctl_lun *lun, uint32_t *cur_fill_num, struct ctl_ooa *ooa_hdr, struct ctl_ooa_entry *kern_entries); static int ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, @@ -457,7 +457,7 @@ static int ctl_datamove_remote_xfer(unio ctl_ha_dt_cb callback); static void ctl_datamove_remote_read(union ctl_io *io); static void ctl_datamove_remote(union ctl_io *io); -static int ctl_process_done(union ctl_io *io); +static void ctl_process_done(union ctl_io *io); static void ctl_lun_thread(void *arg); static void ctl_thresh_thread(void *arg); static void ctl_work_thread(void *arg); @@ -1728,9 +1728,8 @@ ctl_init(void) { struct ctl_softc *softc; void *other_pool; - int i, error, retval; + int i, error; - retval = 0; softc = control_softc = malloc(sizeof(*control_softc), M_DEVBUF, M_WAITOK | M_ZERO); @@ -2274,14 +2273,11 @@ badjuju: /* * Returns 0 for success, errno for failure. */ -static int +static void ctl_ioctl_fill_ooa(struct ctl_lun *lun, uint32_t *cur_fill_num, struct ctl_ooa *ooa_hdr, struct ctl_ooa_entry *kern_entries) { union ctl_io *io; - int retval; - - retval = 0; mtx_lock(&lun->lun_lock); for (io = (union ctl_io *)TAILQ_FIRST(&lun->ooa_queue); (io != NULL); @@ -2321,8 +2317,6 @@ ctl_ioctl_fill_ooa(struct ctl_lun *lun, entry->cmd_flags |= CTL_OOACMD_FLAG_DMA_QUEUED; } mtx_unlock(&lun->lun_lock); - - return (retval); } static void * @@ -2748,21 +2742,13 @@ ctl_ioctl(struct cdev *dev, u_long cmd, if (ooa_hdr->flags & CTL_OOA_FLAG_ALL_LUNS) { STAILQ_FOREACH(lun, &softc->lun_list, links) { - retval = ctl_ioctl_fill_ooa(lun, &cur_fill_num, - ooa_hdr, entries); - if (retval != 0) - break; - } - if (retval != 0) { - mtx_unlock(&softc->ctl_lock); - free(entries, M_CTL); - break; + ctl_ioctl_fill_ooa(lun, &cur_fill_num, + ooa_hdr, entries); } } else { lun = softc->ctl_luns[ooa_hdr->lun_num]; - - retval = ctl_ioctl_fill_ooa(lun, &cur_fill_num,ooa_hdr, - entries); + ctl_ioctl_fill_ooa(lun, &cur_fill_num, ooa_hdr, + entries); } mtx_unlock(&softc->ctl_lock); @@ -4383,9 +4369,6 @@ ctl_init_page_index(struct ctl_lun *lun) case SMS_VENDOR_SPECIFIC_PAGE:{ switch (page_index->subpage) { case DBGCNF_SUBPAGE_CODE: { - struct copan_debugconf_subpage *current_page, - *saved_page; - memcpy(&lun->mode_pages.debugconf_subpage[ CTL_PAGE_CURRENT], &debugconf_page_default, @@ -4403,16 +4386,7 @@ ctl_init_page_index(struct ctl_lun *lun) &debugconf_page_default, sizeof(debugconf_page_default)); page_index->page_data = - (uint8_t *)lun->mode_pages.debugconf_subpage; - - current_page = (struct copan_debugconf_subpage *) - (page_index->page_data + - (page_index->page_len * - CTL_PAGE_CURRENT)); - saved_page = (struct copan_debugconf_subpage *) - (page_index->page_data + - (page_index->page_len * - CTL_PAGE_SAVED)); + (uint8_t *)lun->mode_pages.debugconf_subpage; break; } default: @@ -5248,36 +5222,14 @@ ctl_config_read_done(union ctl_io *io) int ctl_scsi_release(struct ctl_scsiio *ctsio) { - int length, longid, thirdparty_id, resv_id; struct ctl_lun *lun; uint32_t residx; - length = 0; - resv_id = 0; - CTL_DEBUG_PRINT(("ctl_scsi_release\n")); residx = ctl_get_initindex(&ctsio->io_hdr.nexus); lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - switch (ctsio->cdb[0]) { - case RELEASE_10: { - struct scsi_release_10 *cdb; - - cdb = (struct scsi_release_10 *)ctsio->cdb; - - if (cdb->byte2 & SR10_LONGID) - longid = 1; - else - thirdparty_id = cdb->thirdparty_id; - - resv_id = cdb->resv_id; - length = scsi_2btoul(cdb->length); - break; - } - } - - /* * XXX KDM right now, we only support LUN reservation. We don't * support 3rd party reservations, or extent reservations, which @@ -5285,25 +5237,6 @@ ctl_scsi_release(struct ctl_scsiio *ctsi * far, we've got a LUN reservation. Anything else got kicked out * above. So, according to SPC, ignore the length. */ - length = 0; - - if (((ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) == 0) - && (length > 0)) { - ctsio->kern_data_ptr = malloc(length, M_CTL, M_WAITOK); - ctsio->kern_data_len = length; - ctsio->kern_total_len = length; - ctsio->kern_data_resid = 0; - ctsio->kern_rel_offset = 0; - ctsio->kern_sg_entries = 0; - ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED; - ctsio->be_move_done = ctl_config_move_done; - ctl_datamove((union ctl_io *)ctsio); - - return (CTL_RETVAL_COMPLETE); - } - - if (length > 0) - thirdparty_id = scsi_8btou64(ctsio->kern_data_ptr); mtx_lock(&lun->lun_lock); @@ -5319,11 +5252,6 @@ ctl_scsi_release(struct ctl_scsiio *ctsi mtx_unlock(&lun->lun_lock); - if (ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) { - free(ctsio->kern_data_ptr, M_CTL); - ctsio->io_hdr.flags &= ~CTL_FLAG_ALLOCATED; - } - ctl_set_success(ctsio); ctl_done((union ctl_io *)ctsio); return (CTL_RETVAL_COMPLETE); @@ -5332,41 +5260,14 @@ ctl_scsi_release(struct ctl_scsiio *ctsi int ctl_scsi_reserve(struct ctl_scsiio *ctsio) { - int extent, thirdparty, longid; - int resv_id, length; - uint64_t thirdparty_id; struct ctl_lun *lun; uint32_t residx; - extent = 0; - thirdparty = 0; - longid = 0; - resv_id = 0; - length = 0; - thirdparty_id = 0; - CTL_DEBUG_PRINT(("ctl_reserve\n")); residx = ctl_get_initindex(&ctsio->io_hdr.nexus); lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - switch (ctsio->cdb[0]) { - case RESERVE_10: { - struct scsi_reserve_10 *cdb; - - cdb = (struct scsi_reserve_10 *)ctsio->cdb; - - if (cdb->byte2 & SR10_LONGID) - longid = 1; - else - thirdparty_id = cdb->thirdparty_id; - - resv_id = cdb->resv_id; - length = scsi_2btoul(cdb->length); - break; - } - } - /* * XXX KDM right now, we only support LUN reservation. We don't * support 3rd party reservations, or extent reservations, which @@ -5374,45 +5275,18 @@ ctl_scsi_reserve(struct ctl_scsiio *ctsi * far, we've got a LUN reservation. Anything else got kicked out * above. So, according to SPC, ignore the length. */ - length = 0; - - if (((ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) == 0) - && (length > 0)) { - ctsio->kern_data_ptr = malloc(length, M_CTL, M_WAITOK); - ctsio->kern_data_len = length; - ctsio->kern_total_len = length; - ctsio->kern_data_resid = 0; - ctsio->kern_rel_offset = 0; - ctsio->kern_sg_entries = 0; - ctsio->io_hdr.flags |= CTL_FLAG_ALLOCATED; - ctsio->be_move_done = ctl_config_move_done; - ctl_datamove((union ctl_io *)ctsio); - - return (CTL_RETVAL_COMPLETE); - } - - if (length > 0) - thirdparty_id = scsi_8btou64(ctsio->kern_data_ptr); mtx_lock(&lun->lun_lock); if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx != residx)) { ctl_set_reservation_conflict(ctsio); goto bailout; } - lun->flags |= CTL_LUN_RESERVED; lun->res_idx = residx; - ctl_set_success(ctsio); bailout: mtx_unlock(&lun->lun_lock); - - if (ctsio->io_hdr.flags & CTL_FLAG_ALLOCATED) { - free(ctsio->kern_data_ptr, M_CTL); - ctsio->io_hdr.flags &= ~CTL_FLAG_ALLOCATED; - } - ctl_done((union ctl_io *)ctsio); return (CTL_RETVAL_COMPLETE); } @@ -5892,8 +5766,6 @@ ctl_write_same(struct ctl_scsiio *ctsio) int len, retval; uint8_t byte2; - retval = CTL_RETVAL_COMPLETE; - CTL_DEBUG_PRINT(("ctl_write_same\n")); lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; @@ -6010,8 +5882,6 @@ ctl_unmap(struct ctl_scsiio *ctsio) int len, retval; uint8_t byte2; - retval = CTL_RETVAL_COMPLETE; - CTL_DEBUG_PRINT(("ctl_unmap\n")); lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; @@ -6295,8 +6165,6 @@ ctl_do_mode_select(union ctl_io *io) ctsio = &io->scsiio; page_index = NULL; page_len = 0; - retval = CTL_RETVAL_COMPLETE; - lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; if (lun->be_lun->lun_type != T_DIRECT) @@ -6514,28 +6382,7 @@ ctl_mode_select(struct ctl_scsiio *ctsio { int param_len, pf, sp; int header_size, bd_len; - int len_left, len_used; - struct ctl_page_index *page_index; - struct ctl_lun *lun; - int control_dev, page_len; union ctl_modepage_info *modepage_info; - int retval; - - pf = 0; - sp = 0; - page_len = 0; - len_used = 0; - len_left = 0; - retval = 0; - bd_len = 0; - page_index = NULL; - - lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - - if (lun->be_lun->lun_type != T_DIRECT) - control_dev = 1; - else - control_dev = 0; switch (ctsio->cdb[0]) { case MODE_SELECT_6: { @@ -6545,7 +6392,6 @@ ctl_mode_select(struct ctl_scsiio *ctsio pf = (cdb->byte2 & SMS_PF) ? 1 : 0; sp = (cdb->byte2 & SMS_SP) ? 1 : 0; - param_len = cdb->length; header_size = sizeof(struct scsi_mode_header_6); break; @@ -6557,7 +6403,6 @@ ctl_mode_select(struct ctl_scsiio *ctsio pf = (cdb->byte2 & SMS_PF) ? 1 : 0; sp = (cdb->byte2 & SMS_SP) ? 1 : 0; - param_len = scsi_2btoul(cdb->length); header_size = sizeof(struct scsi_mode_header_10); break; @@ -6566,7 +6411,6 @@ ctl_mode_select(struct ctl_scsiio *ctsio ctl_set_invalid_opcode(ctsio); ctl_done((union ctl_io *)ctsio); return (CTL_RETVAL_COMPLETE); - break; /* NOTREACHED */ } /* @@ -6648,14 +6492,9 @@ ctl_mode_select(struct ctl_scsiio *ctsio modepage_info = (union ctl_modepage_info *) ctsio->io_hdr.ctl_private[CTL_PRIV_MODEPAGE].bytes; - memset(modepage_info, 0, sizeof(*modepage_info)); - - len_left = param_len - header_size - bd_len; - len_used = header_size + bd_len; - - modepage_info->header.len_left = len_left; - modepage_info->header.len_used = len_used; + modepage_info->header.len_left = param_len - header_size - bd_len; + modepage_info->header.len_used = header_size + bd_len; return (ctl_do_mode_select((union ctl_io *)ctsio)); } @@ -8977,8 +8816,6 @@ ctl_read_write(struct ctl_scsiio *ctsio) CTL_DEBUG_PRINT(("ctl_read_write: command: %#x\n", ctsio->cdb[0])); flags = 0; - retval = CTL_RETVAL_COMPLETE; - isread = ctsio->cdb[0] == READ_6 || ctsio->cdb[0] == READ_10 || ctsio->cdb[0] == READ_12 || ctsio->cdb[0] == READ_16; switch (ctsio->cdb[0]) { @@ -9155,7 +8992,6 @@ ctl_read_write(struct ctl_scsiio *ctsio) CTL_DEBUG_PRINT(("ctl_read_write: calling data_submit()\n")); retval = lun->backend->data_submit((union ctl_io *)ctsio); - return (retval); } @@ -9195,8 +9031,6 @@ ctl_cnw(struct ctl_scsiio *ctsio) CTL_DEBUG_PRINT(("ctl_cnw: command: %#x\n", ctsio->cdb[0])); flags = 0; - retval = CTL_RETVAL_COMPLETE; - switch (ctsio->cdb[0]) { case COMPARE_AND_WRITE: { struct scsi_compare_and_write *cdb; @@ -9287,8 +9121,6 @@ ctl_verify(struct ctl_scsiio *ctsio) bytchk = 0; flags = CTL_LLF_FUA; - retval = CTL_RETVAL_COMPLETE; - switch (ctsio->cdb[0]) { case VERIFY_10: { struct scsi_verify_10 *cdb; @@ -10217,7 +10049,6 @@ ctl_inquiry_evpd_block_limits(struct ctl { struct scsi_vpd_block_limits *bl_ptr; struct ctl_lun *lun; - int bs; lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; @@ -10254,7 +10085,6 @@ ctl_inquiry_evpd_block_limits(struct ctl bl_ptr->max_cmp_write_len = 0xff; scsi_ulto4b(0xffffffff, bl_ptr->max_txfer_len); if (lun != NULL) { - bs = lun->be_lun->blocksize; scsi_ulto4b(lun->be_lun->opttxferlen, bl_ptr->opt_txfer_len); if (lun->be_lun->flags & CTL_LUN_FLAG_UNMAP) { scsi_ulto4b(0xffffffff, bl_ptr->max_unmap_lba_cnt); @@ -13059,7 +12889,7 @@ ctl_datamove_remote(union ctl_io *io) } } -static int +static void ctl_process_done(union ctl_io *io) { struct ctl_lun *lun; @@ -13114,7 +12944,7 @@ ctl_process_done(union ctl_io *io) if (ctl_debug & CTL_DEBUG_INFO) ctl_io_error_print(io, NULL); fe_done(io); - return (CTL_RETVAL_COMPLETE); + return; default: panic("ctl_process_done: invalid io type %d\n", io->io_hdr.io_type); @@ -13237,7 +13067,6 @@ bailout: } fe_done(io); - return (CTL_RETVAL_COMPLETE); } #ifdef CTL_WITH_CA @@ -13443,8 +13272,6 @@ ctl_work_thread(void *arg) CTL_DEBUG_PRINT(("ctl_work_thread starting\n")); for (;;) { - retval = 0; - /* * We handle the queues in this order: * - ISC @@ -13468,7 +13295,7 @@ ctl_work_thread(void *arg) STAILQ_REMOVE_HEAD(&thr->done_queue, links); /* clear any blocked commands, call fe_done */ mtx_unlock(&thr->queue_lock); - retval = ctl_process_done(io); + ctl_process_done(io); continue; } io = (union ctl_io *)STAILQ_FIRST(&thr->incoming_queue); @@ -13501,12 +13328,10 @@ ctl_lun_thread(void *arg) { struct ctl_softc *softc = (struct ctl_softc *)arg; struct ctl_be_lun *be_lun; - int retval; CTL_DEBUG_PRINT(("ctl_lun_thread starting\n")); for (;;) { - retval = 0; mtx_lock(&softc->ctl_lock); be_lun = STAILQ_FIRST(&softc->pending_lun_queue); if (be_lun != NULL) { @@ -13527,7 +13352,6 @@ ctl_thresh_thread(void *arg) { struct ctl_softc *softc = (struct ctl_softc *)arg; struct ctl_lun *lun; - struct ctl_be_lun *be_lun; struct scsi_da_rw_recovery_page *rwpage; struct ctl_logical_block_provisioning_page *page; const char *attr; @@ -13540,7 +13364,6 @@ ctl_thresh_thread(void *arg) for (;;) { mtx_lock(&softc->ctl_lock); STAILQ_FOREACH(lun, &softc->lun_list, links) { - be_lun = lun->be_lun; if ((lun->flags & CTL_LUN_DISABLED) || (lun->flags & CTL_LUN_OFFLINE) || lun->backend->lun_attr == NULL) Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_backend_block.c Fri Sep 25 18:15:34 2015 (r288221) @@ -1003,13 +1003,10 @@ ctl_be_block_flush_dev(struct ctl_be_blo struct ctl_be_block_io *beio) { struct bio *bio; - union ctl_io *io; struct cdevsw *csw; struct cdev *dev; int ref; - io = beio->io; - DPRINTF("entered\n"); /* This can't fail, it's a blocking allocation. */ @@ -1823,7 +1820,6 @@ ctl_be_block_open_file(struct ctl_be_blo off_t ps, pss, po, pos, us, uss, uo, uos; int error; - error = 0; cbe_lun = &be_lun->cbe_lun; file_data = &be_lun->backend.file; params = &be_lun->params; Modified: head/sys/cam/ctl/ctl_backend_ramdisk.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_ramdisk.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_backend_ramdisk.c Fri Sep 25 18:15:34 2015 (r288221) @@ -340,12 +340,10 @@ ctl_backend_ramdisk_continue(union ctl_i static void ctl_backend_ramdisk_worker(void *context, int pending) { - struct ctl_be_ramdisk_softc *softc; struct ctl_be_ramdisk_lun *be_lun; union ctl_io *io; be_lun = (struct ctl_be_ramdisk_lun *)context; - softc = be_lun->softc; mtx_lock(&be_lun->queue_lock); for (;;) { @@ -414,7 +412,6 @@ ctl_backend_ramdisk_rm(struct ctl_be_ram struct ctl_lun_rm_params *params; int retval; - retval = 0; params = &req->reqdata.rm; mtx_lock(&softc->lock); STAILQ_FOREACH(be_lun, &softc->lun_list, links) { @@ -845,12 +842,9 @@ ctl_backend_ramdisk_lun_config_status(vo static int ctl_backend_ramdisk_config_write(union ctl_io *io) { - struct ctl_be_ramdisk_softc *softc; int retval; retval = 0; - softc = &rd_softc; - switch (io->scsiio.cdb[0]) { case SYNCHRONIZE_CACHE: case SYNCHRONIZE_CACHE_16: @@ -875,13 +869,11 @@ ctl_backend_ramdisk_config_write(union c case START_STOP_UNIT: { struct scsi_start_stop_unit *cdb; struct ctl_be_lun *cbe_lun; - struct ctl_be_ramdisk_lun *be_lun; cdb = (struct scsi_start_stop_unit *)io->scsiio.cdb; cbe_lun = (struct ctl_be_lun *)io->io_hdr.ctl_private[ CTL_PRIV_BACKEND_LUN].ptr; - be_lun = (struct ctl_be_ramdisk_lun *)cbe_lun->be_lun; if (cdb->how & SSS_START) retval = ctl_start_lun(cbe_lun); Modified: head/sys/cam/ctl/ctl_cmd_table.c ============================================================================== --- head/sys/cam/ctl/ctl_cmd_table.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_cmd_table.c Fri Sep 25 18:15:34 2015 (r288221) @@ -134,7 +134,7 @@ const struct ctl_cmd_entry ctl_cmd_table CTL_FLAG_DATA_OUT | CTL_CMD_FLAG_ALLOW_ON_PR_RESV, CTL_LUN_PAT_NONE, - 10, { 0x01, 0xff, 0, 0, 0xff, 0xff, 0xff, 0xff, 0x07}}, + 10, { 0, 0, 0, 0, 0, 0, 0, 0, 0x07}}, /* 02 RELEASE */ {ctl_persistent_reserve_out, CTL_SERIDX_RES, CTL_CMD_FLAG_ALLOW_ON_RESV | @@ -145,7 +145,7 @@ const struct ctl_cmd_entry ctl_cmd_table CTL_FLAG_DATA_OUT | CTL_CMD_FLAG_ALLOW_ON_PR_RESV, CTL_LUN_PAT_NONE, - 10, { 0x02, 0xff, 0, 0, 0xff, 0xff, 0xff, 0xff, 0x07}}, + 10, { 0, 0, 0, 0, 0, 0, 0, 0, 0x07}}, /* 03 CLEAR */ {ctl_persistent_reserve_out, CTL_SERIDX_RES, CTL_CMD_FLAG_ALLOW_ON_RESV | Modified: head/sys/cam/ctl/ctl_error.c ============================================================================== --- head/sys/cam/ctl/ctl_error.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_error.c Fri Sep 25 18:15:34 2015 (r288221) @@ -606,11 +606,8 @@ ctl_set_invalid_field(struct ctl_scsiio void ctl_set_invalid_opcode(struct ctl_scsiio *ctsio) { - struct scsi_sense_data *sense; uint8_t sks[3]; - sense = &ctsio->sense_data; - sks[0] = SSD_SCS_VALID | SSD_FIELDPTR_CMD; scsi_ulto2b(0, &sks[1]); Modified: head/sys/cam/ctl/ctl_frontend.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_frontend.c Fri Sep 25 18:15:34 2015 (r288221) @@ -145,8 +145,6 @@ ctl_port_register(struct ctl_port *port) int port_num; int retval; - retval = 0; - KASSERT(softc != NULL, ("CTL is not initialized")); port->ctl_softc = softc; Modified: head/sys/cam/ctl/ctl_frontend_cam_sim.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_cam_sim.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_frontend_cam_sim.c Fri Sep 25 18:15:34 2015 (r288221) @@ -136,7 +136,6 @@ cfcs_init(void) int retval; softc = &cfcs_softc; - retval = 0; bzero(softc, sizeof(*softc)); mtx_init(&softc->lock, "ctl2cam", NULL, MTX_DEF); port = &softc->port; Modified: head/sys/cam/ctl/ctl_frontend_ioctl.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_ioctl.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_frontend_ioctl.c Fri Sep 25 18:15:34 2015 (r288221) @@ -307,10 +307,7 @@ cfi_submit_wait(union ctl_io *io) ctl_fe_ioctl_state last_state; int done, retval; - retval = 0; - bzero(¶ms, sizeof(params)); - mtx_init(¶ms.ioctl_mtx, "ctliocmtx", NULL, MTX_DEF); cv_init(¶ms.sem, "ctlioccv"); params.state = CTL_IOCTL_INPROG; Modified: head/sys/cam/ctl/ctl_frontend_iscsi.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_iscsi.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_frontend_iscsi.c Fri Sep 25 18:15:34 2015 (r288221) @@ -461,6 +461,7 @@ cfiscsi_decode_lun(uint64_t encoded) break; } result = (lun[1] << 16) + (lun[2] << 8) + lun[3]; + break; default: CFISCSI_WARN("unsupported LUN format 0x%jx", (uintmax_t)encoded); @@ -1377,10 +1378,8 @@ int cfiscsi_init(void) { struct cfiscsi_softc *softc; - int retval; softc = &cfiscsi_softc; - retval = 0; bzero(softc, sizeof(*softc)); mtx_init(&softc->lock, "cfiscsi", NULL, MTX_DEF); Modified: head/sys/cam/ctl/ctl_tpc_local.c ============================================================================== --- head/sys/cam/ctl/ctl_tpc_local.c Fri Sep 25 16:34:59 2015 (r288220) +++ head/sys/cam/ctl/ctl_tpc_local.c Fri Sep 25 18:15:34 2015 (r288221) @@ -142,10 +142,6 @@ tpcl_datamove(union ctl_io *io) struct ctl_scsiio *ctsio; int i, j; - ext_sg_start = 0; - ext_offset = 0; - ext_sglist = NULL; - CTL_DEBUG_PRINT(("%s\n", __func__)); ctsio = &io->scsiio; From owner-svn-src-head@freebsd.org Fri Sep 25 18:37:16 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD205A090CB; Fri, 25 Sep 2015 18:37:15 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CE17A1DAC; Fri, 25 Sep 2015 18:37:15 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PIbFqb080556; Fri, 25 Sep 2015 18:37:15 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PIbF8L080555; Fri, 25 Sep 2015 18:37:15 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201509251837.t8PIbF8L080555@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: "Conrad E. Meyer" Date: Fri, 25 Sep 2015 18:37:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288223 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 18:37:16 -0000 Author: cem Date: Fri Sep 25 18:37:14 2015 New Revision: 288223 URL: https://svnweb.freebsd.org/changeset/base/288223 Log: sbuf: Process more than one char at a time Revamp sbuf_put_byte() to sbuf_put_bytes() in the obvious fashion and fixup callers. Add a thin shim around sbuf_put_bytes() with the old ABI to avoid ugly changes to some callers. Reviewed by: jhb, markj Obtained from: Dan Sledz Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3717 Modified: head/sys/kern/subr_sbuf.c Modified: head/sys/kern/subr_sbuf.c ============================================================================== --- head/sys/kern/subr_sbuf.c Fri Sep 25 18:21:48 2015 (r288222) +++ head/sys/kern/subr_sbuf.c Fri Sep 25 18:37:14 2015 (r288223) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -42,6 +43,7 @@ __FBSDID("$FreeBSD$"); #else /* _KERNEL */ #include #include +#include #include #include #include @@ -383,34 +385,51 @@ sbuf_drain(struct sbuf *s) } /* - * Append a byte to an sbuf. This is the core function for appending + * Append bytes to an sbuf. This is the core function for appending * to an sbuf and is the main place that deals with extending the * buffer and marking overflow. */ static void -sbuf_put_byte(struct sbuf *s, int c) +sbuf_put_bytes(struct sbuf *s, const char *buf, size_t len) { + size_t n; assert_sbuf_integrity(s); assert_sbuf_state(s, 0); if (s->s_error != 0) return; - if (SBUF_FREESPACE(s) <= 0) { - /* - * If there is a drain, use it, otherwise extend the - * buffer. - */ - if (s->s_drain_func != NULL) - (void)sbuf_drain(s); - else if (sbuf_extend(s, 1) < 0) - s->s_error = ENOMEM; - if (s->s_error != 0) - return; + while (len > 0) { + if (SBUF_FREESPACE(s) <= 0) { + /* + * If there is a drain, use it, otherwise extend the + * buffer. + */ + if (s->s_drain_func != NULL) + (void)sbuf_drain(s); + else if (sbuf_extend(s, len > INT_MAX ? INT_MAX : len) + < 0) + s->s_error = ENOMEM; + if (s->s_error != 0) + return; + } + n = SBUF_FREESPACE(s); + if (len < n) + n = len; + memcpy(&s->s_buf[s->s_len], buf, n); + s->s_len += n; + if (SBUF_ISSECTION(s)) + s->s_sect_len += n; + len -= n; + buf += n; } - s->s_buf[s->s_len++] = c; - if (SBUF_ISSECTION(s)) - s->s_sect_len++; +} + +static void +sbuf_put_byte(struct sbuf *s, char c) +{ + + sbuf_put_bytes(s, &c, 1); } /* @@ -419,19 +438,10 @@ sbuf_put_byte(struct sbuf *s, int c) int sbuf_bcat(struct sbuf *s, const void *buf, size_t len) { - const char *str = buf; - const char *end = str + len; - - assert_sbuf_integrity(s); - assert_sbuf_state(s, 0); + sbuf_put_bytes(s, buf, len); if (s->s_error != 0) return (-1); - for (; str < end; str++) { - sbuf_put_byte(s, *str); - if (s->s_error != 0) - return (-1); - } return (0); } @@ -485,18 +495,12 @@ sbuf_bcpy(struct sbuf *s, const void *bu int sbuf_cat(struct sbuf *s, const char *str) { + size_t n; - assert_sbuf_integrity(s); - assert_sbuf_state(s, 0); - + n = strlen(str); + sbuf_put_bytes(s, str, n); if (s->s_error != 0) return (-1); - - while (*str != '\0') { - sbuf_put_byte(s, *str++); - if (s->s_error != 0) - return (-1); - } return (0); } From owner-svn-src-head@freebsd.org Fri Sep 25 18:49:27 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FE1BA0984F; Fri, 25 Sep 2015 18:49:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 313401AF9; Fri, 25 Sep 2015 18:49:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PInRO0085875; Fri, 25 Sep 2015 18:49:27 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PInQ3R085861; Fri, 25 Sep 2015 18:49:26 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509251849.t8PInQ3R085861@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 18:49:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288224 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 18:49:27 -0000 Author: mav Date: Fri Sep 25 18:49:25 2015 New Revision: 288224 URL: https://svnweb.freebsd.org/changeset/base/288224 Log: Constify ctl_serialize_table. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_ser_table.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 18:37:14 2015 (r288223) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 18:49:25 2015 (r288224) @@ -10776,7 +10776,7 @@ ctl_check_for_blockage(struct ctl_lun *l union ctl_io *ooa_io) { const struct ctl_cmd_entry *pending_entry, *ooa_entry; - ctl_serialize_action *serialize_row; + const ctl_serialize_action *serialize_row; /* * The initiator attempted multiple untagged commands at the same Modified: head/sys/cam/ctl/ctl_ser_table.c ============================================================================== --- head/sys/cam/ctl/ctl_ser_table.c Fri Sep 25 18:37:14 2015 (r288223) +++ head/sys/cam/ctl/ctl_ser_table.c Fri Sep 25 18:49:25 2015 (r288224) @@ -61,7 +61,7 @@ #define xO CTL_SER_EXTENTOPT /* Optional extent check */ #define xS CTL_SER_EXTENTSEQ /* Sequential extent check */ -static ctl_serialize_action +const static ctl_serialize_action ctl_serialize_table[CTL_SERIDX_COUNT][CTL_SERIDX_COUNT] = { /**>IDX_ :: 2nd:TUR RD WRT UNM SYN MDSN MDSL RQSN INQ RDCP RES LSNS FMT STR*/ /*TUR */{ pS, pS, pS, pS, pS, bK, bK, bK, pS, pS, bK, pS, bK, bK}, From owner-svn-src-head@freebsd.org Fri Sep 25 19:25:20 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2FD7FA08E82; Fri, 25 Sep 2015 19:25:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 06B9714C4; Fri, 25 Sep 2015 19:25:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PJPJIX003352; Fri, 25 Sep 2015 19:25:19 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PJPJ7B003351; Fri, 25 Sep 2015 19:25:19 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509251925.t8PJPJ7B003351@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 19:25:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288225 - head/targets/pseudo/bootstrap-tools X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 19:25:20 -0000 Author: bdrewery Date: Fri Sep 25 19:25:19 2015 New Revision: 288225 URL: https://svnweb.freebsd.org/changeset/base/288225 Log: Add missing SVN keywords. Sponsored by: EMC / Isilon Storage Division Modified: Directory Properties: head/targets/pseudo/bootstrap-tools/Makefile (props changed) head/targets/pseudo/bootstrap-tools/Makefile.depend.host (props changed) From owner-svn-src-head@freebsd.org Fri Sep 25 19:26:36 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3EA9FA08F75; Fri, 25 Sep 2015 19:26:36 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2B50B17D3; Fri, 25 Sep 2015 19:26:36 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PJQagY003539; Fri, 25 Sep 2015 19:26:36 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PJQ9Vj003428; Fri, 25 Sep 2015 19:26:09 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509251926.t8PJQ9Vj003428@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 19:26:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288226 - in head: cddl/usr.bin/ctfconvert cddl/usr.bin/ctfdump cddl/usr.bin/ctfmerge cddl/usr.sbin/dtrace cddl/usr.sbin/dtruss etc/sendmail gnu/lib/libssp gnu/usr.bin/cc/c++ gnu/usr.bi... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 19:26:36 -0000 Author: bdrewery Date: Fri Sep 25 19:26:08 2015 New Revision: 288226 URL: https://svnweb.freebsd.org/changeset/base/288226 Log: META_MODE: Remove DEP_RELDIR from Makefile.depend files. This has not been needed since r284171 in projects/bmake. Sponsored by: EMC / Isilon Storage Division Modified: head/cddl/usr.bin/ctfconvert/Makefile.depend head/cddl/usr.bin/ctfdump/Makefile.depend head/cddl/usr.bin/ctfmerge/Makefile.depend head/cddl/usr.sbin/dtrace/Makefile.depend head/cddl/usr.sbin/dtruss/Makefile.depend head/etc/sendmail/Makefile.depend head/gnu/lib/libssp/Makefile.depend head/gnu/usr.bin/cc/c++/Makefile.depend head/gnu/usr.bin/cc/cc/Makefile.depend head/gnu/usr.bin/cc/cc1/Makefile.depend head/gnu/usr.bin/cc/cc1plus/Makefile.depend head/gnu/usr.bin/cc/cc_int/Makefile.depend head/gnu/usr.bin/cc/cc_tools/Makefile.depend head/gnu/usr.bin/cc/cpp/Makefile.depend head/gnu/usr.bin/cc/gcov/Makefile.depend head/gnu/usr.bin/cc/include/Makefile.depend head/gnu/usr.bin/cc/libcpp/Makefile.depend head/gnu/usr.bin/cc/libdecnumber/Makefile.depend head/gnu/usr.bin/cc/libiberty/Makefile.depend head/gnu/usr.bin/diff/Makefile.depend head/gnu/usr.bin/dtc/Makefile.depend head/gnu/usr.bin/gperf/Makefile.depend head/gnu/usr.bin/grep/Makefile.depend head/lib/clang/libllvmdebuginfo/Makefile.depend head/lib/clang/libllvminterpreter/Makefile.depend head/lib/csu/arm/Makefile.depend head/lib/csu/i386/Makefile.depend head/lib/csu/mips/Makefile.depend head/lib/csu/powerpc/Makefile.depend head/lib/csu/powerpc64/Makefile.depend head/lib/csu/sparc64/Makefile.depend head/lib/libblocksruntime/Makefile.depend head/lib/libcrypt/tests/Makefile.depend head/lib/libcuse/Makefile.depend head/lib/libcxxrt/Makefile.depend.host head/lib/libevent/Makefile.depend head/lib/libgpib/Makefile.depend head/lib/libiconv_modules/BIG5/Makefile.depend head/lib/libiconv_modules/DECHanyu/Makefile.depend head/lib/libiconv_modules/EUC/Makefile.depend head/lib/libiconv_modules/EUCTW/Makefile.depend head/lib/libiconv_modules/GBK2K/Makefile.depend head/lib/libiconv_modules/HZ/Makefile.depend head/lib/libiconv_modules/ISO2022/Makefile.depend head/lib/libiconv_modules/JOHAB/Makefile.depend head/lib/libiconv_modules/MSKanji/Makefile.depend head/lib/libiconv_modules/UES/Makefile.depend head/lib/libiconv_modules/UTF1632/Makefile.depend head/lib/libiconv_modules/UTF7/Makefile.depend head/lib/libiconv_modules/UTF8/Makefile.depend head/lib/libiconv_modules/VIQR/Makefile.depend head/lib/libiconv_modules/ZW/Makefile.depend head/lib/libiconv_modules/iconv_none/Makefile.depend head/lib/libiconv_modules/iconv_std/Makefile.depend head/lib/libiconv_modules/mapper_646/Makefile.depend head/lib/libiconv_modules/mapper_none/Makefile.depend head/lib/libiconv_modules/mapper_parallel/Makefile.depend head/lib/libiconv_modules/mapper_serial/Makefile.depend head/lib/libiconv_modules/mapper_std/Makefile.depend head/lib/libiconv_modules/mapper_zone/Makefile.depend head/lib/libmilter/Makefile.depend head/lib/librpcsec_gss/Makefile.depend head/lib/libsmb/Makefile.depend head/lib/libstand/Makefile.depend head/lib/libstdbuf/Makefile.depend head/lib/libstdthreads/Makefile.depend head/lib/libunbound/Makefile.depend head/lib/libvgl/Makefile.depend head/lib/ncurses/form/Makefile.depend head/lib/ncurses/formw/Makefile.depend head/lib/ncurses/menu/Makefile.depend head/lib/ncurses/menuw/Makefile.depend head/libexec/bootpd/Makefile.depend head/rescue/librescue/Makefile.depend head/sbin/fdisk_pc98/Makefile.depend head/sbin/routed/Makefile.depend head/sbin/sconfig/Makefile.depend head/sbin/sunlabel/Makefile.depend head/share/doc/legal/realtek/Makefile.depend head/share/doc/llvm/Makefile.depend head/share/examples/libvgl/Makefile.depend head/share/man/man4/man4.arm/Makefile.depend head/share/man/man4/man4.i386/Makefile.depend head/share/man/man4/man4.powerpc/Makefile.depend head/share/man/man4/man4.sparc64/Makefile.depend head/share/security/Makefile.depend head/sys/boot/efi/libefi/Makefile.depend head/sys/boot/ficl/Makefile.depend head/sys/boot/i386/boot0/Makefile.depend head/sys/boot/i386/boot0sio/Makefile.depend head/sys/boot/i386/boot2/Makefile.depend head/sys/boot/i386/loader/Makefile.depend head/sys/boot/i386/zfsloader/Makefile.depend head/targets/pseudo/bootstrap-tools/Makefile.depend.host head/targets/pseudo/clang/Makefile.depend head/targets/pseudo/gcc/Makefile.depend head/targets/pseudo/hosttools/Makefile.depend head/targets/pseudo/kernel/Makefile.depend head/targets/pseudo/the-lot/Makefile.depend head/targets/pseudo/toolchain/Makefile.depend head/targets/pseudo/universe/Makefile.depend head/targets/pseudo/userland/Makefile.depend head/targets/pseudo/userland/cddl/Makefile.depend head/targets/pseudo/userland/games/Makefile.depend head/targets/pseudo/userland/gnu/Makefile.depend head/targets/pseudo/userland/include/Makefile.depend head/targets/pseudo/userland/kerberos5/Makefile.depend head/targets/pseudo/userland/lib/Makefile.depend head/targets/pseudo/userland/libexec/Makefile.depend head/targets/pseudo/userland/misc/Makefile.depend head/targets/pseudo/userland/secure/Makefile.depend head/targets/pseudo/userland/share/Makefile.depend head/tools/build/Makefile.depend head/tools/regression/include/stdatomic/Makefile.depend head/tools/tools/ath/ath_ee_9300_print/Makefile.depend head/tools/tools/drm/radeon/mkregtable/Makefile.depend head/tools/tools/makeroot/Makefile.depend head/tools/tools/usbtest/Makefile.depend head/usr.bin/lex/Makefile.depend head/usr.bin/mkcsmapper_static/Makefile.depend head/usr.bin/pamtest/Makefile.depend head/usr.bin/setchannel/Makefile.depend head/usr.bin/smbutil/Makefile.depend head/usr.bin/svn/lib/libapr/Makefile.depend head/usr.bin/svn/lib/libapr_util/Makefile.depend head/usr.bin/svn/lib/libserf/Makefile.depend head/usr.bin/svn/lib/libsvn_client/Makefile.depend head/usr.bin/svn/lib/libsvn_delta/Makefile.depend head/usr.bin/svn/lib/libsvn_diff/Makefile.depend head/usr.bin/svn/lib/libsvn_fs/Makefile.depend head/usr.bin/svn/lib/libsvn_fs_fs/Makefile.depend head/usr.bin/svn/lib/libsvn_fs_util/Makefile.depend head/usr.bin/svn/lib/libsvn_ra/Makefile.depend head/usr.bin/svn/lib/libsvn_ra_local/Makefile.depend head/usr.bin/svn/lib/libsvn_ra_serf/Makefile.depend head/usr.bin/svn/lib/libsvn_ra_svn/Makefile.depend head/usr.bin/svn/lib/libsvn_repos/Makefile.depend head/usr.bin/svn/lib/libsvn_subr/Makefile.depend head/usr.bin/svn/lib/libsvn_wc/Makefile.depend head/usr.bin/svn/svn/Makefile.depend head/usr.bin/svn/svnadmin/Makefile.depend head/usr.bin/svn/svndumpfilter/Makefile.depend head/usr.bin/svn/svnlook/Makefile.depend head/usr.bin/svn/svnmucc/Makefile.depend head/usr.bin/svn/svnrdump/Makefile.depend head/usr.bin/svn/svnserve/Makefile.depend head/usr.bin/svn/svnsync/Makefile.depend head/usr.bin/svn/svnversion/Makefile.depend head/usr.bin/vgrind/RETEST/Makefile.depend head/usr.sbin/apmd/Makefile.depend head/usr.sbin/boot98cfg/Makefile.depend head/usr.sbin/bsdconfig/packages/Makefile.depend head/usr.sbin/bsdconfig/packages/include/Makefile.depend head/usr.sbin/bsdconfig/share/packages/Makefile.depend head/usr.sbin/bsdinstall/Makefile.depend head/usr.sbin/bsnmpd/modules/snmp_hast/Makefile.depend head/usr.sbin/eeprom/Makefile.depend head/usr.sbin/kgzip/Makefile.depend head/usr.sbin/lpr/filters.ru/Makefile.depend head/usr.sbin/mount_smbfs/Makefile.depend head/usr.sbin/nmtree/Makefile.depend head/usr.sbin/ofwdump/Makefile.depend head/usr.sbin/pnpinfo/Makefile.depend head/usr.sbin/wlconfig/Makefile.depend Modified: head/cddl/usr.bin/ctfconvert/Makefile.depend ============================================================================== --- head/cddl/usr.bin/ctfconvert/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/cddl/usr.bin/ctfconvert/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ cddl/lib/libctf \ gnu/lib/csu \ Modified: head/cddl/usr.bin/ctfdump/Makefile.depend ============================================================================== --- head/cddl/usr.bin/ctfdump/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/cddl/usr.bin/ctfdump/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/cddl/usr.bin/ctfmerge/Makefile.depend ============================================================================== --- head/cddl/usr.bin/ctfmerge/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/cddl/usr.bin/ctfmerge/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ cddl/lib/libctf \ gnu/lib/csu \ Modified: head/cddl/usr.sbin/dtrace/Makefile.depend ============================================================================== --- head/cddl/usr.sbin/dtrace/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/cddl/usr.sbin/dtrace/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ cddl/lib/libctf \ cddl/lib/libdtrace \ Modified: head/cddl/usr.sbin/dtruss/Makefile.depend ============================================================================== --- head/cddl/usr.sbin/dtruss/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/cddl/usr.sbin/dtruss/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ Modified: head/etc/sendmail/Makefile.depend ============================================================================== --- head/etc/sendmail/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/etc/sendmail/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/gnu/lib/libssp/Makefile.depend ============================================================================== --- head/gnu/lib/libssp/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/lib/libssp/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/gnu/usr.bin/cc/c++/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/c++/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/c++/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/gnu/usr.bin/cc/cc/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/cc/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/cc/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/usr.bin/cc/cc_tools \ Modified: head/gnu/usr.bin/cc/cc1/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/cc1/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/cc1/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/usr.bin/cc/cc_int \ gnu/usr.bin/cc/cc_tools \ Modified: head/gnu/usr.bin/cc/cc1plus/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/cc1plus/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/cc1plus/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/usr.bin/cc/cc_int \ gnu/usr.bin/cc/cc_tools \ Modified: head/gnu/usr.bin/cc/cc_int/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/cc_int/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/cc_int/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/usr.bin/cc/cc_tools \ include \ Modified: head/gnu/usr.bin/cc/cc_tools/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/cc_tools/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/cc_tools/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/gnu/usr.bin/cc/cpp/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/cpp/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/cpp/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/gnu/usr.bin/cc/gcov/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/gcov/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/gcov/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/gnu/usr.bin/cc/include/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/include/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/include/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ Modified: head/gnu/usr.bin/cc/libcpp/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/libcpp/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/libcpp/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ include/xlocale \ Modified: head/gnu/usr.bin/cc/libdecnumber/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/libdecnumber/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/libdecnumber/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/usr.bin/cc/cc_tools \ include \ Modified: head/gnu/usr.bin/cc/libiberty/Makefile.depend ============================================================================== --- head/gnu/usr.bin/cc/libiberty/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/cc/libiberty/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ include/xlocale \ Modified: head/gnu/usr.bin/diff/Makefile.depend ============================================================================== --- head/gnu/usr.bin/diff/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/diff/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/gnu/usr.bin/dtc/Makefile.depend ============================================================================== --- head/gnu/usr.bin/dtc/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/dtc/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/gnu/usr.bin/gperf/Makefile.depend ============================================================================== --- head/gnu/usr.bin/gperf/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/gperf/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/gnu/usr.bin/grep/Makefile.depend ============================================================================== --- head/gnu/usr.bin/grep/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/gnu/usr.bin/grep/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/lib/clang/libllvmdebuginfo/Makefile.depend ============================================================================== --- head/lib/clang/libllvmdebuginfo/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/clang/libllvmdebuginfo/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ include/xlocale \ Modified: head/lib/clang/libllvminterpreter/Makefile.depend ============================================================================== --- head/lib/clang/libllvminterpreter/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/clang/libllvminterpreter/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ include/xlocale \ Modified: head/lib/csu/arm/Makefile.depend ============================================================================== --- head/lib/csu/arm/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/csu/arm/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/lib/csu/i386/Makefile.depend ============================================================================== --- head/lib/csu/i386/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/csu/i386/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ Modified: head/lib/csu/mips/Makefile.depend ============================================================================== --- head/lib/csu/mips/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/csu/mips/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/lib/csu/powerpc/Makefile.depend ============================================================================== --- head/lib/csu/powerpc/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/csu/powerpc/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/lib/csu/powerpc64/Makefile.depend ============================================================================== --- head/lib/csu/powerpc64/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/csu/powerpc64/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/lib/csu/sparc64/Makefile.depend ============================================================================== --- head/lib/csu/sparc64/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/csu/sparc64/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/lib/libblocksruntime/Makefile.depend ============================================================================== --- head/lib/libblocksruntime/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libblocksruntime/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libcrypt/tests/Makefile.depend ============================================================================== --- head/lib/libcrypt/tests/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libcrypt/tests/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libcuse/Makefile.depend ============================================================================== --- head/lib/libcuse/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libcuse/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libcxxrt/Makefile.depend.host ============================================================================== --- head/lib/libcxxrt/Makefile.depend.host Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libcxxrt/Makefile.depend.host Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ usr.bin/clang/clang \ Modified: head/lib/libevent/Makefile.depend ============================================================================== --- head/lib/libevent/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libevent/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ include/xlocale \ Modified: head/lib/libgpib/Makefile.depend ============================================================================== --- head/lib/libgpib/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libgpib/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/BIG5/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/BIG5/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/BIG5/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/DECHanyu/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/DECHanyu/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/DECHanyu/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/EUC/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/EUC/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/EUC/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/EUCTW/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/EUCTW/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/EUCTW/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/GBK2K/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/GBK2K/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/GBK2K/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/HZ/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/HZ/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/HZ/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/ISO2022/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/ISO2022/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/ISO2022/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/JOHAB/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/JOHAB/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/JOHAB/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/MSKanji/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/MSKanji/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/MSKanji/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/UES/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/UES/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/UES/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/UTF1632/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/UTF1632/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/UTF1632/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/UTF7/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/UTF7/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/UTF7/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/UTF8/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/UTF8/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/UTF8/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/VIQR/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/VIQR/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/VIQR/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/ZW/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/ZW/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/ZW/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/iconv_none/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/iconv_none/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/iconv_none/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/iconv_std/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/iconv_std/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/iconv_std/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/mapper_646/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/mapper_646/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/mapper_646/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/mapper_none/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/mapper_none/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/mapper_none/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/mapper_parallel/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/mapper_parallel/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/mapper_parallel/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/mapper_serial/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/mapper_serial/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/mapper_serial/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/mapper_std/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/mapper_std/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/mapper_std/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libiconv_modules/mapper_zone/Makefile.depend ============================================================================== --- head/lib/libiconv_modules/mapper_zone/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libiconv_modules/mapper_zone/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libmilter/Makefile.depend ============================================================================== --- head/lib/libmilter/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libmilter/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/librpcsec_gss/Makefile.depend ============================================================================== --- head/lib/librpcsec_gss/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/librpcsec_gss/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libsmb/Makefile.depend ============================================================================== --- head/lib/libsmb/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libsmb/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libstand/Makefile.depend ============================================================================== --- head/lib/libstand/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libstand/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ include \ include/arpa \ Modified: head/lib/libstdbuf/Makefile.depend ============================================================================== --- head/lib/libstdbuf/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libstdbuf/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libstdthreads/Makefile.depend ============================================================================== --- head/lib/libstdthreads/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libstdthreads/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libunbound/Makefile.depend ============================================================================== --- head/lib/libunbound/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libunbound/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/libvgl/Makefile.depend ============================================================================== --- head/lib/libvgl/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/libvgl/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/ncurses/form/Makefile.depend ============================================================================== --- head/lib/ncurses/form/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/ncurses/form/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/ncurses/formw/Makefile.depend ============================================================================== --- head/lib/ncurses/formw/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/ncurses/formw/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/ncurses/menu/Makefile.depend ============================================================================== --- head/lib/ncurses/menu/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/ncurses/menu/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/lib/ncurses/menuw/Makefile.depend ============================================================================== --- head/lib/ncurses/menuw/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/lib/ncurses/menuw/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ gnu/lib/csu \ gnu/lib/libgcc \ Modified: head/libexec/bootpd/Makefile.depend ============================================================================== --- head/libexec/bootpd/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/libexec/bootpd/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/rescue/librescue/Makefile.depend ============================================================================== --- head/rescue/librescue/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/rescue/librescue/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sbin/fdisk_pc98/Makefile.depend ============================================================================== --- head/sbin/fdisk_pc98/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sbin/fdisk_pc98/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sbin/routed/Makefile.depend ============================================================================== --- head/sbin/routed/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sbin/routed/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sbin/sconfig/Makefile.depend ============================================================================== --- head/sbin/sconfig/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sbin/sconfig/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sbin/sunlabel/Makefile.depend ============================================================================== --- head/sbin/sunlabel/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sbin/sunlabel/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/doc/legal/realtek/Makefile.depend ============================================================================== --- head/share/doc/legal/realtek/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/doc/legal/realtek/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DIRDEPS = \ Modified: head/share/doc/llvm/Makefile.depend ============================================================================== --- head/share/doc/llvm/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/doc/llvm/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/examples/libvgl/Makefile.depend ============================================================================== --- head/share/examples/libvgl/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/examples/libvgl/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/man/man4/man4.arm/Makefile.depend ============================================================================== --- head/share/man/man4/man4.arm/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/man/man4/man4.arm/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/man/man4/man4.i386/Makefile.depend ============================================================================== --- head/share/man/man4/man4.i386/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/man/man4/man4.i386/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/man/man4/man4.powerpc/Makefile.depend ============================================================================== --- head/share/man/man4/man4.powerpc/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/man/man4/man4.powerpc/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/man/man4/man4.sparc64/Makefile.depend ============================================================================== --- head/share/man/man4/man4.sparc64/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/man/man4/man4.sparc64/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/share/security/Makefile.depend ============================================================================== --- head/share/security/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/share/security/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sys/boot/efi/libefi/Makefile.depend ============================================================================== --- head/sys/boot/efi/libefi/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sys/boot/efi/libefi/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sys/boot/ficl/Makefile.depend ============================================================================== --- head/sys/boot/ficl/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sys/boot/ficl/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sys/boot/i386/boot0/Makefile.depend ============================================================================== --- head/sys/boot/i386/boot0/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sys/boot/i386/boot0/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sys/boot/i386/boot0sio/Makefile.depend ============================================================================== --- head/sys/boot/i386/boot0sio/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sys/boot/i386/boot0sio/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} DIRDEPS = \ Modified: head/sys/boot/i386/boot2/Makefile.depend ============================================================================== --- head/sys/boot/i386/boot2/Makefile.depend Fri Sep 25 19:25:19 2015 (r288225) +++ head/sys/boot/i386/boot2/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,} - DEP_MACHINE := ${.PARSEFILE:E} *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Fri Sep 25 19:33:39 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D0335A092EF; Fri, 25 Sep 2015 19:33:39 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C0C891D41; Fri, 25 Sep 2015 19:33:39 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PJXdxl007580; Fri, 25 Sep 2015 19:33:39 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PJXdZ4007579; Fri, 25 Sep 2015 19:33:39 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509251933.t8PJXdZ4007579@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 19:33:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288227 - head/usr.sbin/nmtree X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 19:33:39 -0000 Author: bdrewery Date: Fri Sep 25 19:33:38 2015 New Revision: 288227 URL: https://svnweb.freebsd.org/changeset/base/288227 Log: META_MODE: Checkin a proper Makefile.depend. Sponsored by: EMC / Isilon Storage Division Modified: head/usr.sbin/nmtree/Makefile.depend Modified: head/usr.sbin/nmtree/Makefile.depend ============================================================================== --- head/usr.sbin/nmtree/Makefile.depend Fri Sep 25 19:26:08 2015 (r288226) +++ head/usr.sbin/nmtree/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) @@ -2,9 +2,16 @@ # Autogenerated - do NOT edit! DIRDEPS = \ - tools/c/sjg/work/FreeBSD/projects-bmake/src/lib/libnetbsd.host \ - tools/legacy/usr/include.host \ - tools/legacy/usr/lib.host \ + gnu/lib/csu \ + gnu/lib/libgcc \ + include \ + include/xlocale \ + lib/${CSU_DIR} \ + lib/libc \ + lib/libcompiler_rt \ + lib/libmd \ + lib/libnetbsd \ + lib/libutil \ .include From owner-svn-src-head@freebsd.org Fri Sep 25 19:44:15 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 57B37A097E3; Fri, 25 Sep 2015 19:44:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 44E4F1275; Fri, 25 Sep 2015 19:44:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PJiF3J011726; Fri, 25 Sep 2015 19:44:15 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PJi1h2011672; Fri, 25 Sep 2015 19:44:01 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509251944.t8PJi1h2011672@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 19:44:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288228 - in head: etc/sendmail gnu/lib/libssp gnu/usr.bin/diff gnu/usr.bin/dtc gnu/usr.bin/gperf gnu/usr.bin/grep lib/csu/arm lib/csu/mips lib/csu/powerpc lib/csu/powerpc64 lib/csu/spa... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 19:44:15 -0000 Author: bdrewery Date: Fri Sep 25 19:44:01 2015 New Revision: 288228 URL: https://svnweb.freebsd.org/changeset/base/288228 Log: META_MODE: Remove DEP_MACHINE from Makefile.depend files. This has not been needed since r246865 in projects/bmake. Sponsored by: EMC / Isilon Storage Division Modified: head/etc/sendmail/Makefile.depend head/gnu/lib/libssp/Makefile.depend head/gnu/usr.bin/diff/Makefile.depend head/gnu/usr.bin/dtc/Makefile.depend head/gnu/usr.bin/gperf/Makefile.depend head/gnu/usr.bin/grep/Makefile.depend head/lib/csu/arm/Makefile.depend head/lib/csu/mips/Makefile.depend head/lib/csu/powerpc/Makefile.depend head/lib/csu/powerpc64/Makefile.depend head/lib/csu/sparc64/Makefile.depend head/libexec/bootpd/Makefile.depend head/rescue/librescue/Makefile.depend head/sbin/fdisk_pc98/Makefile.depend head/sbin/routed/Makefile.depend head/sbin/sconfig/Makefile.depend head/sbin/sunlabel/Makefile.depend head/share/doc/llvm/Makefile.depend head/share/examples/libvgl/Makefile.depend head/share/man/man4/man4.arm/Makefile.depend head/share/man/man4/man4.i386/Makefile.depend head/share/man/man4/man4.powerpc/Makefile.depend head/share/man/man4/man4.sparc64/Makefile.depend head/share/security/Makefile.depend head/sys/boot/efi/libefi/Makefile.depend head/sys/boot/ficl/Makefile.depend head/sys/boot/i386/boot0/Makefile.depend head/sys/boot/i386/boot0sio/Makefile.depend head/sys/boot/i386/boot2/Makefile.depend head/sys/boot/i386/loader/Makefile.depend head/sys/boot/i386/zfsloader/Makefile.depend head/usr.bin/lex/Makefile.depend head/usr.bin/pamtest/Makefile.depend head/usr.bin/setchannel/Makefile.depend head/usr.bin/smbutil/Makefile.depend head/usr.bin/vgrind/RETEST/Makefile.depend head/usr.sbin/apmd/Makefile.depend head/usr.sbin/boot98cfg/Makefile.depend head/usr.sbin/bsdinstall/Makefile.depend head/usr.sbin/eeprom/Makefile.depend head/usr.sbin/kgzip/Makefile.depend head/usr.sbin/lpr/filters.ru/Makefile.depend head/usr.sbin/mount_smbfs/Makefile.depend head/usr.sbin/ofwdump/Makefile.depend head/usr.sbin/pnpinfo/Makefile.depend head/usr.sbin/wlconfig/Makefile.depend Modified: head/etc/sendmail/Makefile.depend ============================================================================== --- head/etc/sendmail/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/etc/sendmail/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/gnu/lib/libssp/Makefile.depend ============================================================================== --- head/gnu/lib/libssp/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/gnu/lib/libssp/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/gnu/usr.bin/diff/Makefile.depend ============================================================================== --- head/gnu/usr.bin/diff/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/gnu/usr.bin/diff/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ gnu/lib/libregex \ Modified: head/gnu/usr.bin/dtc/Makefile.depend ============================================================================== --- head/gnu/usr.bin/dtc/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/gnu/usr.bin/dtc/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/gnu/usr.bin/gperf/Makefile.depend ============================================================================== --- head/gnu/usr.bin/gperf/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/gnu/usr.bin/gperf/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ gnu/lib/libstdc++ \ Modified: head/gnu/usr.bin/grep/Makefile.depend ============================================================================== --- head/gnu/usr.bin/grep/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/gnu/usr.bin/grep/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ gnu/lib/libregex \ Modified: head/lib/csu/arm/Makefile.depend ============================================================================== --- head/lib/csu/arm/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/lib/csu/arm/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ Modified: head/lib/csu/mips/Makefile.depend ============================================================================== --- head/lib/csu/mips/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/lib/csu/mips/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ Modified: head/lib/csu/powerpc/Makefile.depend ============================================================================== --- head/lib/csu/powerpc/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/lib/csu/powerpc/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ Modified: head/lib/csu/powerpc64/Makefile.depend ============================================================================== --- head/lib/csu/powerpc64/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/lib/csu/powerpc64/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ Modified: head/lib/csu/sparc64/Makefile.depend ============================================================================== --- head/lib/csu/sparc64/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/lib/csu/sparc64/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ Modified: head/libexec/bootpd/Makefile.depend ============================================================================== --- head/libexec/bootpd/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/libexec/bootpd/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/rescue/librescue/Makefile.depend ============================================================================== --- head/rescue/librescue/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/rescue/librescue/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ include/arpa \ Modified: head/sbin/fdisk_pc98/Makefile.depend ============================================================================== --- head/sbin/fdisk_pc98/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sbin/fdisk_pc98/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/sbin/routed/Makefile.depend ============================================================================== --- head/sbin/routed/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sbin/routed/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/sbin/sconfig/Makefile.depend ============================================================================== --- head/sbin/sconfig/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sbin/sconfig/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/sbin/sunlabel/Makefile.depend ============================================================================== --- head/sbin/sunlabel/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sbin/sunlabel/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/share/doc/llvm/Makefile.depend ============================================================================== --- head/share/doc/llvm/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/doc/llvm/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/share/examples/libvgl/Makefile.depend ============================================================================== --- head/share/examples/libvgl/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/examples/libvgl/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/share/man/man4/man4.arm/Makefile.depend ============================================================================== --- head/share/man/man4/man4.arm/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/man/man4/man4.arm/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/share/man/man4/man4.i386/Makefile.depend ============================================================================== --- head/share/man/man4/man4.i386/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/man/man4/man4.i386/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/share/man/man4/man4.powerpc/Makefile.depend ============================================================================== --- head/share/man/man4/man4.powerpc/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/man/man4/man4.powerpc/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/share/man/man4/man4.sparc64/Makefile.depend ============================================================================== --- head/share/man/man4/man4.sparc64/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/man/man4/man4.sparc64/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/share/security/Makefile.depend ============================================================================== --- head/share/security/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/share/security/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/sys/boot/efi/libefi/Makefile.depend ============================================================================== --- head/sys/boot/efi/libefi/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/efi/libefi/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ include/xlocale \ Modified: head/sys/boot/ficl/Makefile.depend ============================================================================== --- head/sys/boot/ficl/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/ficl/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ include \ include/xlocale \ Modified: head/sys/boot/i386/boot0/Makefile.depend ============================================================================== --- head/sys/boot/i386/boot0/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/i386/boot0/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/sys/boot/i386/boot0sio/Makefile.depend ============================================================================== --- head/sys/boot/i386/boot0sio/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/i386/boot0sio/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/sys/boot/i386/boot2/Makefile.depend ============================================================================== --- head/sys/boot/i386/boot2/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/i386/boot2/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/sys/boot/i386/loader/Makefile.depend ============================================================================== --- head/sys/boot/i386/loader/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/i386/loader/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/sys/boot/i386/zfsloader/Makefile.depend ============================================================================== --- head/sys/boot/i386/zfsloader/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/sys/boot/i386/zfsloader/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/usr.bin/lex/Makefile.depend ============================================================================== --- head/usr.bin/lex/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.bin/lex/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.bin/pamtest/Makefile.depend ============================================================================== --- head/usr.bin/pamtest/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.bin/pamtest/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.bin/setchannel/Makefile.depend ============================================================================== --- head/usr.bin/setchannel/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.bin/setchannel/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.bin/smbutil/Makefile.depend ============================================================================== --- head/usr.bin/smbutil/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.bin/smbutil/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.bin/vgrind/RETEST/Makefile.depend ============================================================================== --- head/usr.bin/vgrind/RETEST/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.bin/vgrind/RETEST/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/apmd/Makefile.depend ============================================================================== --- head/usr.sbin/apmd/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/apmd/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/boot98cfg/Makefile.depend ============================================================================== --- head/usr.sbin/boot98cfg/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/boot98cfg/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/bsdinstall/Makefile.depend ============================================================================== --- head/usr.sbin/bsdinstall/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/bsdinstall/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/usr.sbin/eeprom/Makefile.depend ============================================================================== --- head/usr.sbin/eeprom/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/eeprom/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/kgzip/Makefile.depend ============================================================================== --- head/usr.sbin/kgzip/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/kgzip/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/lpr/filters.ru/Makefile.depend ============================================================================== --- head/usr.sbin/lpr/filters.ru/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/lpr/filters.ru/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ Modified: head/usr.sbin/mount_smbfs/Makefile.depend ============================================================================== --- head/usr.sbin/mount_smbfs/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/mount_smbfs/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/ofwdump/Makefile.depend ============================================================================== --- head/usr.sbin/ofwdump/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/ofwdump/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/pnpinfo/Makefile.depend ============================================================================== --- head/usr.sbin/pnpinfo/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/pnpinfo/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ Modified: head/usr.sbin/wlconfig/Makefile.depend ============================================================================== --- head/usr.sbin/wlconfig/Makefile.depend Fri Sep 25 19:33:38 2015 (r288227) +++ head/usr.sbin/wlconfig/Makefile.depend Fri Sep 25 19:44:01 2015 (r288228) @@ -1,8 +1,6 @@ # $FreeBSD$ # Autogenerated - do NOT edit! -DEP_MACHINE := ${.PARSEFILE:E} - DIRDEPS = \ gnu/lib/libgcc \ include \ From owner-svn-src-head@freebsd.org Fri Sep 25 19:46:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1432CA0991B; Fri, 25 Sep 2015 19:46:35 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0517E1471; Fri, 25 Sep 2015 19:46:35 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PJkYEF011869; Fri, 25 Sep 2015 19:46:34 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PJkYxI011868; Fri, 25 Sep 2015 19:46:34 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509251946.t8PJkYxI011868@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 19:46:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288229 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 19:46:35 -0000 Author: mav Date: Fri Sep 25 19:46:34 2015 New Revision: 288229 URL: https://svnweb.freebsd.org/changeset/base/288229 Log: Fix bit masks changed for the wrong commands in r288221. Modified: head/sys/cam/ctl/ctl_cmd_table.c Modified: head/sys/cam/ctl/ctl_cmd_table.c ============================================================================== --- head/sys/cam/ctl/ctl_cmd_table.c Fri Sep 25 19:44:01 2015 (r288228) +++ head/sys/cam/ctl/ctl_cmd_table.c Fri Sep 25 19:46:34 2015 (r288229) @@ -134,7 +134,7 @@ const struct ctl_cmd_entry ctl_cmd_table CTL_FLAG_DATA_OUT | CTL_CMD_FLAG_ALLOW_ON_PR_RESV, CTL_LUN_PAT_NONE, - 10, { 0, 0, 0, 0, 0, 0, 0, 0, 0x07}}, + 10, { 0x01, 0xff, 0, 0, 0xff, 0xff, 0xff, 0xff, 0x07}}, /* 02 RELEASE */ {ctl_persistent_reserve_out, CTL_SERIDX_RES, CTL_CMD_FLAG_ALLOW_ON_RESV | @@ -145,7 +145,7 @@ const struct ctl_cmd_entry ctl_cmd_table CTL_FLAG_DATA_OUT | CTL_CMD_FLAG_ALLOW_ON_PR_RESV, CTL_LUN_PAT_NONE, - 10, { 0, 0, 0, 0, 0, 0, 0, 0, 0x07}}, + 10, { 0x02, 0xff, 0, 0, 0xff, 0xff, 0xff, 0xff, 0x07}}, /* 03 CLEAR */ {ctl_persistent_reserve_out, CTL_SERIDX_RES, CTL_CMD_FLAG_ALLOW_ON_RESV | @@ -907,7 +907,7 @@ const struct ctl_cmd_entry ctl_cmd_table CTL_CMD_FLAG_OK_ON_INOPERABLE | CTL_CMD_FLAG_OK_ON_STANDBY | CTL_FLAG_DATA_OUT, - CTL_LUN_PAT_NONE, 10, {0x02, 0, 0xff, 0, 0, 0, 0xff, 0xff, 0x07} }, + CTL_LUN_PAT_NONE, 10, {0, 0, 0, 0, 0, 0, 0, 0, 0x07} }, /* 57 RELEASE(10) */ {ctl_scsi_release, CTL_SERIDX_RES, CTL_CMD_FLAG_ALLOW_ON_RESV | @@ -916,7 +916,7 @@ const struct ctl_cmd_entry ctl_cmd_table CTL_CMD_FLAG_OK_ON_INOPERABLE | CTL_CMD_FLAG_OK_ON_STANDBY | CTL_FLAG_DATA_OUT, - CTL_LUN_PAT_NONE, 10, {0x02, 0, 0xff, 0, 0, 0, 0xff, 0xff, 0x07} }, + CTL_LUN_PAT_NONE, 10, {0, 0, 0, 0, 0, 0, 0, 0, 0x07}}, /* 58 REPAIR TRACK */ {NULL, CTL_SERIDX_INVLD, CTL_CMD_FLAG_NONE, CTL_LUN_PAT_NONE}, From owner-svn-src-head@freebsd.org Fri Sep 25 20:21:46 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B6D61A09407; Fri, 25 Sep 2015 20:21:46 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A496C160B; Fri, 25 Sep 2015 20:21:46 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PKLkbL027878; Fri, 25 Sep 2015 20:21:46 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PKLkBp027877; Fri, 25 Sep 2015 20:21:46 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509252021.t8PKLkBp027877@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 20:21:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288230 - head/gnu/usr.bin/binutils/ld X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 20:21:46 -0000 Author: bdrewery Date: Fri Sep 25 20:21:45 2015 New Revision: 288230 URL: https://svnweb.freebsd.org/changeset/base/288230 Log: Fix emulation ldscripts not being installed since r131832. For example, 32bit scripts on 64bit host. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/usr.bin/binutils/ld/Makefile Modified: head/gnu/usr.bin/binutils/ld/Makefile ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile Fri Sep 25 19:46:34 2015 (r288229) +++ head/gnu/usr.bin/binutils/ld/Makefile Fri Sep 25 20:21:45 2015 (r288230) @@ -1,5 +1,6 @@ # $FreeBSD$ +ELF_SCR_EXT= x xbn xc xd xdc xdw xn xr xs xsc xsw xu xw .include "../Makefile.inc0" .include @@ -50,7 +51,6 @@ FILESDIR= ${SCRIPTDIR} HOST= ${TARGET_TUPLE} LIBSEARCHPATH= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" -ELF_SCR_EXT= x xbn xc xd xdc xdw xn xr xs xsc xsw xu xw .for ext in ${ELF_SCR_EXT} LDSCRIPTS+= ${NATIVE_EMULATION}.${ext} .endfor From owner-svn-src-head@freebsd.org Fri Sep 25 20:25:19 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 91025A09619; Fri, 25 Sep 2015 20:25:19 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 81BDF1A7B; Fri, 25 Sep 2015 20:25:19 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PKPJ80028187; Fri, 25 Sep 2015 20:25:19 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PKPJkU028185; Fri, 25 Sep 2015 20:25:19 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509252025.t8PKPJkU028185@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 25 Sep 2015 20:25:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288231 - head/usr.bin/xinstall X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 20:25:19 -0000 Author: emaste Date: Fri Sep 25 20:25:18 2015 New Revision: 288231 URL: https://svnweb.freebsd.org/changeset/base/288231 Log: xinstall: renumber UCB clauses to avoid skipping #3 Modified: head/usr.bin/xinstall/install.1 head/usr.bin/xinstall/xinstall.c Modified: head/usr.bin/xinstall/install.1 ============================================================================== --- head/usr.bin/xinstall/install.1 Fri Sep 25 20:21:45 2015 (r288230) +++ head/usr.bin/xinstall/install.1 Fri Sep 25 20:25:18 2015 (r288231) @@ -9,7 +9,7 @@ .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. -.\" 4. Neither the name of the University nor the names of its contributors +.\" 3. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" Modified: head/usr.bin/xinstall/xinstall.c ============================================================================== --- head/usr.bin/xinstall/xinstall.c Fri Sep 25 20:21:45 2015 (r288230) +++ head/usr.bin/xinstall/xinstall.c Fri Sep 25 20:25:18 2015 (r288231) @@ -11,7 +11,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * From owner-svn-src-head@freebsd.org Fri Sep 25 20:27:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A2CACA0972E; Fri, 25 Sep 2015 20:27:00 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9394C1C7D; Fri, 25 Sep 2015 20:27:00 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PKR0t6028297; Fri, 25 Sep 2015 20:27:00 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PKR03m028296; Fri, 25 Sep 2015 20:27:00 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509252027.t8PKR03m028296@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 25 Sep 2015 20:27:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288232 - head/usr.sbin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 20:27:00 -0000 Author: emaste Date: Fri Sep 25 20:26:59 2015 New Revision: 288232 URL: https://svnweb.freebsd.org/changeset/base/288232 Log: Build ofwdump(8) on MIPS too It will be useful as FDT sees increasing usage on FreeBSD/mips. Sponsored by: DARPA, AFRL Modified: head/usr.sbin/Makefile.mips Modified: head/usr.sbin/Makefile.mips ============================================================================== --- head/usr.sbin/Makefile.mips Fri Sep 25 20:25:18 2015 (r288231) +++ head/usr.sbin/Makefile.mips Fri Sep 25 20:26:59 2015 (r288232) @@ -1,5 +1,6 @@ # $FreeBSD$ +SUBDIR+= ofwdump # uathload broken for n32 and n64 due to toolchain issues, only build for o32 .if ${MACHINE_ARCH} != "mips" && ${MACHINE_ARCH} != "mipsel" SUBDIR:= ${SUBDIR:Nuathload} From owner-svn-src-head@freebsd.org Fri Sep 25 20:31:06 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D1C23A09B68; Fri, 25 Sep 2015 20:31:06 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B62431F4D; Fri, 25 Sep 2015 20:31:06 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PKV6lD029041; Fri, 25 Sep 2015 20:31:06 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PKV5GG029036; Fri, 25 Sep 2015 20:31:05 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509252031.t8PKV5GG029036@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 20:31:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288233 - head/gnu/usr.bin/binutils/ld X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 20:31:07 -0000 Author: bdrewery Date: Fri Sep 25 20:31:04 2015 New Revision: 288233 URL: https://svnweb.freebsd.org/changeset/base/288233 Log: Fix subdir -j build after r287983 by adding missing dependencies. Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/usr.bin/binutils/ld/Makefile head/gnu/usr.bin/binutils/ld/Makefile.amd64 head/gnu/usr.bin/binutils/ld/Makefile.mips head/gnu/usr.bin/binutils/ld/Makefile.powerpc64 head/gnu/usr.bin/binutils/ld/Makefile.sparc64 Modified: head/gnu/usr.bin/binutils/ld/Makefile ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile Fri Sep 25 20:26:59 2015 (r288232) +++ head/gnu/usr.bin/binutils/ld/Makefile Fri Sep 25 20:31:04 2015 (r288233) @@ -53,6 +53,7 @@ HOST= ${TARGET_TUPLE} LIBSEARCHPATH= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" .for ext in ${ELF_SCR_EXT} LDSCRIPTS+= ${NATIVE_EMULATION}.${ext} +ldscripts/${NATIVE_EMULATION}.${ext}: e${NATIVE_EMULATION}.c .endfor EMXFR= Modified: head/gnu/usr.bin/binutils/ld/Makefile.amd64 ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile.amd64 Fri Sep 25 20:26:59 2015 (r288232) +++ head/gnu/usr.bin/binutils/ld/Makefile.amd64 Fri Sep 25 20:31:04 2015 (r288233) @@ -16,6 +16,7 @@ _i386_path= \"${TOOLS_PREFIX}/usr/lib32\ EMS+= ${X86_EMULATION} .for ext in ${ELF_SCR_EXT} LDSCRIPTS+= ${X86_EMULATION}.${ext} +ldscripts/${X86_EMULATION}.${ext}: e${X86_EMULATION}.c .endfor SRCS+= e${X86_EMULATION}.c Modified: head/gnu/usr.bin/binutils/ld/Makefile.mips ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile.mips Fri Sep 25 20:26:59 2015 (r288232) +++ head/gnu/usr.bin/binutils/ld/Makefile.mips Fri Sep 25 20:31:04 2015 (r288233) @@ -22,6 +22,7 @@ EMS+= ${abi} #.endif .for ext in ${ELF_SCR_EXT} LDSCRIPTS+= ${abi}.${ext} +ldscripts/${abi}.${ext}: e${abi}.c .endfor SRCS+= e${abi}.c CLEANFILES+= e${abi}.c Modified: head/gnu/usr.bin/binutils/ld/Makefile.powerpc64 ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile.powerpc64 Fri Sep 25 20:26:59 2015 (r288232) +++ head/gnu/usr.bin/binutils/ld/Makefile.powerpc64 Fri Sep 25 20:31:04 2015 (r288233) @@ -16,6 +16,7 @@ _ppc32_path= \"${TOOLS_PREFIX}/usr/lib32 EMS+= ${PPC32_EMULATION} .for ext in ${ELF_SCR_EXT} LDSCRIPTS+= ${PPC32_EMULATION}.${ext} +ldscripts/${PPC32_EMULATION}.${ext}: e${PPC32_EMULATION}.c .endfor SRCS+= e${PPC32_EMULATION}.c Modified: head/gnu/usr.bin/binutils/ld/Makefile.sparc64 ============================================================================== --- head/gnu/usr.bin/binutils/ld/Makefile.sparc64 Fri Sep 25 20:26:59 2015 (r288232) +++ head/gnu/usr.bin/binutils/ld/Makefile.sparc64 Fri Sep 25 20:31:04 2015 (r288233) @@ -17,6 +17,7 @@ e${NATIVE_EMULATION}.c: emulparams/${NAT EMS+= elf${BITS}_sparc .for ext in ${ELF_SCR_EXT} LDSCRIPTS+= elf${BITS}_sparc.${ext} +ldscripts/elf${BITS}_sparc.${ext}: eelf${BITS}_sparc.c .endfor SRCS+= eelf${BITS}_sparc.c From owner-svn-src-head@freebsd.org Fri Sep 25 20:45:11 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 983BBA0834E; Fri, 25 Sep 2015 20:45:11 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7BD711620; Fri, 25 Sep 2015 20:45:11 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PKjBFV036445; Fri, 25 Sep 2015 20:45:11 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PKjBuB036444; Fri, 25 Sep 2015 20:45:11 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509252045.t8PKjBuB036444@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 20:45:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288234 - head/tools/build/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 20:45:11 -0000 Author: bdrewery Date: Fri Sep 25 20:45:10 2015 New Revision: 288234 URL: https://svnweb.freebsd.org/changeset/base/288234 Log: Add missing binutils ldscripts. Some of these are after the fix in r288230 to install them. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Fri Sep 25 20:31:04 2015 (r288233) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Fri Sep 25 20:45:10 2015 (r288234) @@ -189,6 +189,188 @@ OLD_FILES+=usr/bin/ld OLD_FILES+=usr/bin/objcopy .endif OLD_FILES+=usr/bin/objdump +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/armelf_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/armelfb_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.x +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xc +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xd +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xdc +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xdw +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xn +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xr +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xs +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xsw +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xu +OLD_FILES+=usr/libdata/ldscripts/elf32_sparc.xw +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf32btsmip_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf32btsmipn32_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmip_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf32ltsmipn32_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf32ppc_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.x +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xbn +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xd +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xdc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xdw +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xn +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xr +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xs +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xsc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xsw +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xu +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc.xw +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf64_sparc_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf64btsmip_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf64ltsmip_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf64ppc_fbsd.xw +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.x +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xbn +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xc +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xd +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xdc +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xdw +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xn +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xr +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xs +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xsc +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xsw +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xu +OLD_FILES+=usr/libdata/ldscripts/elf_i386_fbsd.xw OLD_FILES+=usr/libdata/ldscripts/elf_x86_64_fbsd.x OLD_FILES+=usr/libdata/ldscripts/elf_x86_64_fbsd.xbn OLD_FILES+=usr/libdata/ldscripts/elf_x86_64_fbsd.xc From owner-svn-src-head@freebsd.org Fri Sep 25 21:04:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C9F2CA08DF7; Fri, 25 Sep 2015 21:04:32 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BAD761340; Fri, 25 Sep 2015 21:04:32 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PL4Wqi045067; Fri, 25 Sep 2015 21:04:32 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PL4Ws5045066; Fri, 25 Sep 2015 21:04:32 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201509252104.t8PL4Ws5045066@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 25 Sep 2015 21:04:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288235 - head/sys/arm64/arm64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 21:04:32 -0000 Author: emaste Date: Fri Sep 25 21:04:31 2015 New Revision: 288235 URL: https://svnweb.freebsd.org/changeset/base/288235 Log: Remove apostrophe from AP's for consistency (arm64 mp_machdep) Modified: head/sys/arm64/arm64/mp_machdep.c Modified: head/sys/arm64/arm64/mp_machdep.c ============================================================================== --- head/sys/arm64/arm64/mp_machdep.c Fri Sep 25 20:45:10 2015 (r288234) +++ head/sys/arm64/arm64/mp_machdep.c Fri Sep 25 21:04:31 2015 (r288235) @@ -190,7 +190,7 @@ release_aps(void *dummy __unused) DELAY(1000); } - printf("AP's not started\n"); + printf("APs not started\n"); } SYSINIT(start_aps, SI_SUB_SMP, SI_ORDER_FIRST, release_aps, NULL); From owner-svn-src-head@freebsd.org Fri Sep 25 22:29:22 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 27694A086E0; Fri, 25 Sep 2015 22:29:22 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 187241385; Fri, 25 Sep 2015 22:29:22 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PMTLFn082613; Fri, 25 Sep 2015 22:29:21 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PMTLYH082612; Fri, 25 Sep 2015 22:29:21 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201509252229.t8PMTLYH082612@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: "Conrad E. Meyer" Date: Fri, 25 Sep 2015 22:29:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288238 - head/contrib/libcxxrt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 22:29:22 -0000 Author: cem Date: Fri Sep 25 22:29:21 2015 New Revision: 288238 URL: https://svnweb.freebsd.org/changeset/base/288238 Log: MFV c3ccd112: Correct off-by-ones in free_exception of emergency buffer Note, this has been broken since import in r227825. PR: https://github.com/pathscale/libcxxrt/issues/29 Reviewed by: emaste (earlier version), kan (informally) Obtained from: Anton Rang Relnotes: yes Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3733 Modified: head/contrib/libcxxrt/exception.cc Modified: head/contrib/libcxxrt/exception.cc ============================================================================== --- head/contrib/libcxxrt/exception.cc Fri Sep 25 22:19:35 2015 (r288237) +++ head/contrib/libcxxrt/exception.cc Fri Sep 25 22:29:21 2015 (r288238) @@ -516,7 +516,7 @@ static void emergency_malloc_free(char * break; } } - assert(buffer > 0 && + assert(buffer >= 0 && "Trying to free something that is not an emergency buffer!"); // emergency_malloc() is expected to return 0-initialized data. We don't // zero the buffer when allocating it, because the static buffers will @@ -556,7 +556,7 @@ static void free_exception(char *e) { // If this allocation is within the address range of the emergency buffer, // don't call free() because it was not allocated with malloc() - if ((e > emergency_buffer) && + if ((e >= emergency_buffer) && (e < (emergency_buffer + sizeof(emergency_buffer)))) { emergency_malloc_free(e); From owner-svn-src-head@freebsd.org Fri Sep 25 22:41:28 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CED54A08F37; Fri, 25 Sep 2015 22:41:28 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id B79C91D91; Fri, 25 Sep 2015 22:41:28 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id B1AEF1499; Fri, 25 Sep 2015 22:41:28 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 73F4313883; Fri, 25 Sep 2015 22:41:28 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id 8q_4Nc8dAsZQ; Fri, 25 Sep 2015 22:41:26 +0000 (UTC) Subject: Re: svn commit: r288238 - head/contrib/libcxxrt DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com E67141387E To: "Conrad E. Meyer" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201509252229.t8PMTLYH082612@repo.freebsd.org> From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5605CD90.9050403@FreeBSD.org> Date: Fri, 25 Sep 2015 15:41:20 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <201509252229.t8PMTLYH082612@repo.freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="OpNMPRkK9Twpjp9jIgPDvlfp1Vq4lpufk" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 22:41:28 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --OpNMPRkK9Twpjp9jIgPDvlfp1Vq4lpufk Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 9/25/2015 3:29 PM, Conrad E. Meyer wrote: > Author: cem > Date: Fri Sep 25 22:29:21 2015 > New Revision: 288238 > URL: https://svnweb.freebsd.org/changeset/base/288238 >=20 > Log: > MFV c3ccd112: Correct off-by-ones in free_exception of emergency buff= er > =20 > Note, this has been broken since import in r227825. > =20 > PR: https://github.com/pathscale/libcxxrt/issues/29 > Reviewed by: emaste (earlier version), kan (informally) > Obtained from: Anton Rang > Relnotes: yes > Sponsored by: EMC / Isilon Storage Division > Differential Revision: https://reviews.freebsd.org/D3733 If you use 'MFC after: 2 weeks' (or any other period) you will get an automatic reminder to merge this to stable/10 at that time, which you should do with this one. Thanks! --OpNMPRkK9Twpjp9jIgPDvlfp1Vq4lpufk Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWBc2VAAoJEDXXcbtuRpfP15YH/33RA8malopCWAvxULfhxTNh ikVyM1g6jJCei5229SnUZVwvODBnfke82U+ofyimF9CrLclJx6fzqgWer21o3XpX 4A+k/T/vWYUKi1dF0znSZ7KuMyCxS6vKEkyCX58+vpjXHTlPQKY9Dkzx+yohInW7 US1hU31XAduQhveOMiKvKIMqZ6YpODtgNxIzjPUpWMnkl9edIgSGgX0zsWnh8CPg AofvICOe+Rj9MKGVcEiOS/C6Y3WamhC3hrdEfvRAGfTKklCcUYXnIqVcfN7SjyUz yQa6gx23Rn1A6R35p6SuGlodM1S2N/ilB7r1kmXPVJ2nYdzpE+Oehp5jp9wMTgo= =1B/z -----END PGP SIGNATURE----- --OpNMPRkK9Twpjp9jIgPDvlfp1Vq4lpufk-- From owner-svn-src-head@freebsd.org Fri Sep 25 22:45:24 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C20BA091F4; Fri, 25 Sep 2015 22:45:24 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 03F431FD1; Fri, 25 Sep 2015 22:45:24 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PMjNZx090564; Fri, 25 Sep 2015 22:45:23 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PMjNZJ090563; Fri, 25 Sep 2015 22:45:23 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509252245.t8PMjNZJ090563@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Fri, 25 Sep 2015 22:45:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288239 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 22:45:24 -0000 Author: mav Date: Fri Sep 25 22:45:23 2015 New Revision: 288239 URL: https://svnweb.freebsd.org/changeset/base/288239 Log: Properly lock LUN in ctl_failover_lun(). Modified: head/sys/cam/ctl/ctl.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Fri Sep 25 22:29:21 2015 (r288238) +++ head/sys/cam/ctl/ctl.c Fri Sep 25 22:45:23 2015 (r288239) @@ -424,7 +424,7 @@ static int ctl_check_blocked(struct ctl_ static int ctl_scsiio_lun_check(struct ctl_lun *lun, const struct ctl_cmd_entry *entry, struct ctl_scsiio *ctsio); -static void ctl_failover_lun(struct ctl_lun *lun); +static void ctl_failover_lun(union ctl_io *io); static int ctl_scsiio_precheck(struct ctl_softc *ctl_softc, struct ctl_scsiio *ctsio); static int ctl_scsiio(struct ctl_scsiio *ctsio); @@ -11199,12 +11199,31 @@ ctl_failover_io(union ctl_io *io, int ha } static void -ctl_failover_lun(struct ctl_lun *lun) +ctl_failover_lun(union ctl_io *rio) { - struct ctl_softc *softc = lun->ctl_softc; + struct ctl_softc *softc = control_softc; + struct ctl_lun *lun; struct ctl_io_hdr *io, *next_io; + uint32_t targ_lun; + + targ_lun = rio->io_hdr.nexus.targ_mapped_lun; + CTL_DEBUG_PRINT(("FAILOVER for lun %ju\n", targ_lun)); + + /* Find and lock the LUN. */ + mtx_lock(&softc->ctl_lock); + if ((targ_lun < CTL_MAX_LUNS) && + ((lun = softc->ctl_luns[targ_lun]) != NULL)) { + mtx_lock(&lun->lun_lock); + mtx_unlock(&softc->ctl_lock); + if (lun->flags & CTL_LUN_DISABLED) { + mtx_unlock(&lun->lun_lock); + return; + } + } else { + mtx_unlock(&softc->ctl_lock); + return; + } - CTL_DEBUG_PRINT(("FAILOVER for lun %ju\n", lun->lun)); if (softc->ha_mode == CTL_HA_MODE_XFER) { TAILQ_FOREACH_SAFE(io, &lun->ooa_queue, ooa_links, next_io) { /* We are master */ @@ -11262,6 +11281,7 @@ ctl_failover_lun(struct ctl_lun *lun) } ctl_check_blocked(lun); } + mtx_unlock(&lun->lun_lock); } static int @@ -12194,9 +12214,7 @@ ctl_handle_isc(union ctl_io *io) io->scsiio.be_move_done(io); break; case CTL_MSG_FAILOVER: - mtx_lock(&lun->lun_lock); - ctl_failover_lun(lun); - mtx_unlock(&lun->lun_lock); + ctl_failover_lun(io); free_io = 1; break; default: From owner-svn-src-head@freebsd.org Fri Sep 25 22:51:31 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 78D2EA0970F; Fri, 25 Sep 2015 22:51:31 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 69E5A146F; Fri, 25 Sep 2015 22:51:31 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PMpVcH092525; Fri, 25 Sep 2015 22:51:31 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PMpVZm092524; Fri, 25 Sep 2015 22:51:31 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509252251.t8PMpVZm092524@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 22:51:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288240 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 22:51:31 -0000 Author: bdrewery Date: Fri Sep 25 22:51:30 2015 New Revision: 288240 URL: https://svnweb.freebsd.org/changeset/base/288240 Log: Explicitly enable .MAKE.ALWAYS_PASS_JOB_QUEUE for bmake. This is a NOP as r254419 enabled this by default in bmake. Add it here though to ensure it is known that we are using this as a default and in case a bmake import removes the default we have. This tells bmake to always pass job tokens into sub-commands. Otherwise it would only do so if the target being built depended on the special .MAKE target (which causes _all_ commands to be executed with -n as well) or if the command matches '${MAKE}/${.MAKE}/$(MAKE)/$(.MAKE)/make' (before expansion, so ${LIB32WMAKE} would not qualify). Using '+' on a command (which runs the command with -n) would not pass the job token even though it is a documented way to achieve the .MAKE effect on a command. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/sys.mk Modified: head/share/mk/sys.mk ============================================================================== --- head/share/mk/sys.mk Fri Sep 25 22:45:23 2015 (r288239) +++ head/share/mk/sys.mk Fri Sep 25 22:51:30 2015 (r288240) @@ -394,6 +394,10 @@ SHELL= ${__MAKE_SHELL} # Tell bmake the makefile preference .MAKE.MAKEFILE_PREFERENCE= BSDmakefile makefile Makefile +# Tell bmake to always pass job tokens, regardless of target depending on +# .MAKE or looking like ${MAKE}/${.MAKE}/$(MAKE)/$(.MAKE)/make. +.MAKE.ALWAYS_PASS_JOB_QUEUE= yes + # By default bmake does *not* use set -e # when running target scripts, this is a problem for many makefiles here. # So define a shell that will do what FreeBSD expects. From owner-svn-src-head@freebsd.org Fri Sep 25 23:03:33 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 90FDBA09DD6; Fri, 25 Sep 2015 23:03:33 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 64EDE1ADB; Fri, 25 Sep 2015 23:03:33 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PN3XFN098625; Fri, 25 Sep 2015 23:03:33 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PN3Wx0098623; Fri, 25 Sep 2015 23:03:32 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509252303.t8PN3Wx0098623@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Fri, 25 Sep 2015 23:03:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288241 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 23:03:33 -0000 Author: bdrewery Date: Fri Sep 25 23:03:32 2015 New Revision: 288241 URL: https://svnweb.freebsd.org/changeset/base/288241 Log: Remove 'set -e' that are no longer needed as it is already default. When bmake was initially imported at r241298 shell commands were no longer ran with 'set -e' as they were before. This was fixed in r254980 so they again always use 'set -e'. Sponsored by: EMC / Isilon Storage Division Modified: head/share/mk/bsd.subdir.mk head/share/mk/suite.test.mk Modified: head/share/mk/bsd.subdir.mk ============================================================================== --- head/share/mk/bsd.subdir.mk Fri Sep 25 22:51:30 2015 (r288240) +++ head/share/mk/bsd.subdir.mk Fri Sep 25 23:03:32 2015 (r288241) @@ -60,7 +60,7 @@ distribute: .MAKE _SUBDIR: .USE .MAKE .if defined(SUBDIR) && !empty(SUBDIR) && !defined(NO_SUBDIR) - @${_+_}set -e; for entry in ${SUBDIR:N.WAIT}; do \ + @${_+_}for entry in ${SUBDIR:N.WAIT}; do \ if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \ ${ECHODIR} "===> ${DIRPRFX}$${entry}.${MACHINE_ARCH} (${.TARGET:S,realinstall,install,:S,^_sub.,,})"; \ edir=$${entry}.${MACHINE_ARCH}; \ @@ -101,8 +101,7 @@ __deps+= ${__target}_subdir_${__dep} .endfor ${__target}_subdir_${__dir}: .MAKE ${__deps} .if !defined(NO_SUBDIR) - @${_+_}set -e; \ - if test -d ${.CURDIR}/${__dir}.${MACHINE_ARCH}; then \ + @${_+_}if test -d ${.CURDIR}/${__dir}.${MACHINE_ARCH}; then \ ${ECHODIR} "===> ${DIRPRFX}${__dir}.${MACHINE_ARCH} (${__target:realinstall=install})"; \ edir=${__dir}.${MACHINE_ARCH}; \ cd ${.CURDIR}/$${edir}; \ @@ -133,7 +132,7 @@ _sub.${__stage}${__target}: _SUBDIR .endfor .if !target(${__target}) ${__target}: .MAKE - ${_+_}set -e; cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} + ${_+_}cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} .endif .endfor Modified: head/share/mk/suite.test.mk ============================================================================== --- head/share/mk/suite.test.mk Fri Sep 25 22:51:30 2015 (r288240) +++ head/share/mk/suite.test.mk Fri Sep 25 23:03:32 2015 (r288241) @@ -110,8 +110,7 @@ realtest: .PHONY @echo "*** installed in ${TESTSBASE}. This test run may raise false" @echo "*** positives and/or false negatives." @echo - @set -e; \ - ${KYUA} test -k ${DESTDIR}${TESTSDIR}/Kyuafile; \ + @${KYUA} test -k ${DESTDIR}${TESTSDIR}/Kyuafile; \ result=0; \ echo; \ echo "*** Once again, note that "make test" is unsupported."; \ From owner-svn-src-head@freebsd.org Fri Sep 25 23:07:17 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EC382A0801F; Fri, 25 Sep 2015 23:07:17 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DD6981CD7; Fri, 25 Sep 2015 23:07:17 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PN7HWc098828; Fri, 25 Sep 2015 23:07:17 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PN7HEP098827; Fri, 25 Sep 2015 23:07:17 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201509252307.t8PN7HEP098827@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Fri, 25 Sep 2015 23:07:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288242 - head/sys/contrib/ipfilter/netinet X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 23:07:18 -0000 Author: bz Date: Fri Sep 25 23:07:17 2015 New Revision: 288242 URL: https://svnweb.freebsd.org/changeset/base/288242 Log: Compare the newly allocated array elements to NULL in order to see if the malloc succeeded. Spotted by: reading kernel compile time log MFC after: 2 weeks Modified: head/sys/contrib/ipfilter/netinet/ip_nat.c Modified: head/sys/contrib/ipfilter/netinet/ip_nat.c ============================================================================== --- head/sys/contrib/ipfilter/netinet/ip_nat.c Fri Sep 25 23:03:32 2015 (r288241) +++ head/sys/contrib/ipfilter/netinet/ip_nat.c Fri Sep 25 23:07:17 2015 (r288242) @@ -8075,13 +8075,13 @@ ipf_nat_rehash(softc, t, p) * the outbound lookup table and the hash chain length for each. */ KMALLOCS(newtab[0], nat_t **, newsize * sizeof(nat_t *)); - if (newtab == NULL) { + if (newtab[0] == NULL) { error = 60063; goto badrehash; } KMALLOCS(newtab[1], nat_t **, newsize * sizeof(nat_t *)); - if (newtab == NULL) { + if (newtab[1] == NULL) { error = 60064; goto badrehash; } From owner-svn-src-head@freebsd.org Fri Sep 25 23:12:06 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0D38EA084ED; Fri, 25 Sep 2015 23:12:06 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-qg0-x22e.google.com (mail-qg0-x22e.google.com [IPv6:2607:f8b0:400d:c04::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BF22110F1; Fri, 25 Sep 2015 23:12:05 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by qgez77 with SMTP id z77so82087695qge.1; Fri, 25 Sep 2015 16:12:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=UqU9w9GZU/4cf0RFKL11vQlOGJPyHLNhghTCfKJcXGM=; b=PAbQaulnyLUFlj2AiPKJMlfK4wRf/lseR/MUVTrxYpqQbr3I0mFMt+sMkNc+z72Dzy bSAQ7owuDgt2kQeGyJdIf4Yvp9RxJESozhW2c7UwhM8utsRWQxNDH+HSw0bSnRAomckz 3R+UCFwqSHmaAT7DzN05PCdEEG7PjxvpW/YCrp4mHFvMKn6sZZSAoclxocSdJdY2tRA0 r/qSnfO22TLwduKnZIhwDouCpC8Oapgk7aOYs91FxHpqocIiUfwdkw/JMfKfqO0W3Pp/ kvDXaIzwkt0XXV3T7k5Lk70lJkPdGlrF9VvT3fwizQmWMBSCAR/cim7iwE2M8uooF0mH LiuA== MIME-Version: 1.0 X-Received: by 10.140.147.18 with SMTP id 18mr9721362qht.44.1443222724890; Fri, 25 Sep 2015 16:12:04 -0700 (PDT) Received: by 10.140.94.44 with HTTP; Fri, 25 Sep 2015 16:12:04 -0700 (PDT) In-Reply-To: <201509252303.t8PN3Wx0098623@repo.freebsd.org> References: <201509252303.t8PN3Wx0098623@repo.freebsd.org> Date: Fri, 25 Sep 2015 16:12:04 -0700 Message-ID: Subject: Re: svn commit: r288241 - head/share/mk From: NGie Cooper To: Bryan Drewery Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 23:12:06 -0000 On Fri, Sep 25, 2015 at 4:03 PM, Bryan Drewery wrote: > Author: bdrewery > Date: Fri Sep 25 23:03:32 2015 > New Revision: 288241 > URL: https://svnweb.freebsd.org/changeset/base/288241 > > Log: > Remove 'set -e' that are no longer needed as it is already default. > > When bmake was initially imported at r241298 shell commands were no longer > ran with 'set -e' as they were before. This was fixed in r254980 so they > again always use 'set -e'. The bsd.subdir.mk portion of the change looks like it would cause issues depending on what's being called (fmake or an earlier version of sys.mk might be used at install time). From owner-svn-src-head@freebsd.org Fri Sep 25 23:13:01 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D1E8FA0859B; Fri, 25 Sep 2015 23:13:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id B8D5E127B; Fri, 25 Sep 2015 23:13:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id B2CF71DCF; Fri, 25 Sep 2015 23:13:01 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 6CB111393C; Fri, 25 Sep 2015 23:13:01 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id LD5vNfYCrn2J; Fri, 25 Sep 2015 23:12:59 +0000 (UTC) Subject: Re: svn commit: r288241 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com EB71713936 To: NGie Cooper References: <201509252303.t8PN3Wx0098623@repo.freebsd.org> Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5605D4FC.4040205@FreeBSD.org> Date: Fri, 25 Sep 2015 16:13:00 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="2JAi8p1hwRXDg2XrCt9FIxHCetuBvdTAN" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 23:13:01 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --2JAi8p1hwRXDg2XrCt9FIxHCetuBvdTAN Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 9/25/2015 4:12 PM, NGie Cooper wrote: > On Fri, Sep 25, 2015 at 4:03 PM, Bryan Drewery w= rote: >> Author: bdrewery >> Date: Fri Sep 25 23:03:32 2015 >> New Revision: 288241 >> URL: https://svnweb.freebsd.org/changeset/base/288241 >> >> Log: >> Remove 'set -e' that are no longer needed as it is already default. >> >> When bmake was initially imported at r241298 shell commands were no = longer >> ran with 'set -e' as they were before. This was fixed in r254980 so= they >> again always use 'set -e'. >=20 > The bsd.subdir.mk portion of the change looks like it would cause > issues depending on what's being called (fmake or an earlier version > of sys.mk might be used at install time). >=20 We only support bmake in head. And the 'set -e' were only added for bmake compatibility before it was fixed to work like fmake did. --=20 Regards, Bryan Drewery --2JAi8p1hwRXDg2XrCt9FIxHCetuBvdTAN Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWBdT8AAoJEDXXcbtuRpfPZDYIAKAuyVlQRu29FXResIK3In9U obAjNMswsfgwpan47JINR73sc4jo/qO1Myl/jq0jkJbgp4mlyk9qFFZj/CRlNvCi 7OAQ+LUp+H4EGKpeE7r+wpwhUGiWZFNul4QOtd1JriYHc0IGZnB8NiCkn7HdAo8d +IlBMG/DVzvP6/EDt75VPmkiKFSNb0om2Wo8Ei0BNPygUBfYem7bxc8Uew1S0QPi 2+7NM18Ylldr1/xGtHZ9mxsAyTK+TxkOI06wQIXoL1Pphk3nEtbyerOpxA4Gefq4 QmwsqW2JE/Xu/qulVUREaLOZye7C+Wk4QZiCnTZLtoLOf0bDAdekRJg1p8PhcUo= =4xHC -----END PGP SIGNATURE----- --2JAi8p1hwRXDg2XrCt9FIxHCetuBvdTAN-- From owner-svn-src-head@freebsd.org Sat Sep 26 00:53:39 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A4CBFA09208; Sat, 26 Sep 2015 00:53:39 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 957141A06; Sat, 26 Sep 2015 00:53:39 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q0rd6F046532; Sat, 26 Sep 2015 00:53:39 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q0rcQD046526; Sat, 26 Sep 2015 00:53:38 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509260053.t8Q0rcQD046526@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 00:53:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288245 - head/sys/net80211 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 00:53:39 -0000 Author: adrian Date: Sat Sep 26 00:53:37 2015 New Revision: 288245 URL: https://svnweb.freebsd.org/changeset/base/288245 Log: Perform some rather amusing layering violations to add mbuf tags to the net80211 receive path. This allows drivers (notably USB right now, but anything/everything!) to optionally defer bulk RX of 802.11 frames until /outside/ of the driver lock(s), rather than doing: UNLOCK(sc); ieee80211_input*() LOCK(sc); .. which is really stupid. The existing API is maintaned - if ieee80211_input() / ieee80211_input_all() is called then the RSSI/NF values are used. If the MIMO versions are called with a given rx status pointer then it's used. Else, it'll use whatever is in the RX mbuf tag. Modified: head/sys/net80211/_ieee80211.h head/sys/net80211/ieee80211_freebsd.c head/sys/net80211/ieee80211_freebsd.h head/sys/net80211/ieee80211_input.c head/sys/net80211/ieee80211_proto.h Modified: head/sys/net80211/_ieee80211.h ============================================================================== --- head/sys/net80211/_ieee80211.h Sat Sep 26 00:22:09 2015 (r288244) +++ head/sys/net80211/_ieee80211.h Sat Sep 26 00:53:37 2015 (r288245) @@ -390,15 +390,14 @@ struct ieee80211_regdomain { * MIMO antenna/radio state. */ -#define IEEE80211_MAX_CHAINS 3 -#define IEEE80211_MAX_EVM_PILOTS 6 - /* * XXX This doesn't yet export both ctl/ext chain details + * XXX TODO: IEEE80211_MAX_CHAINS is defined in _freebsd.h, not here; + * figure out how to pull it in! */ struct ieee80211_mimo_info { - int8_t rssi[IEEE80211_MAX_CHAINS]; /* per-antenna rssi */ - int8_t noise[IEEE80211_MAX_CHAINS]; /* per-antenna noise floor */ + int8_t rssi[3]; /* per-antenna rssi */ + int8_t noise[3]; /* per-antenna noise floor */ uint8_t pad[2]; uint32_t evm[3]; /* EVM data */ }; Modified: head/sys/net80211/ieee80211_freebsd.c ============================================================================== --- head/sys/net80211/ieee80211_freebsd.c Sat Sep 26 00:22:09 2015 (r288244) +++ head/sys/net80211/ieee80211_freebsd.c Sat Sep 26 00:53:37 2015 (r288245) @@ -491,6 +491,43 @@ ieee80211_process_callback(struct ieee80 } /* + * Add RX parameters to the given mbuf. + * + * Returns 1 if OK, 0 on error. + */ +int +ieee80211_add_rx_params(struct mbuf *m, const struct ieee80211_rx_stats *rxs) +{ + struct m_tag *mtag; + struct ieee80211_rx_params *rx; + + mtag = m_tag_alloc(MTAG_ABI_NET80211, NET80211_TAG_RECV_PARAMS, + sizeof(struct ieee80211_rx_stats), M_NOWAIT); + if (mtag == NULL) + return (0); + + rx = (struct ieee80211_rx_params *)(mtag + 1); + memcpy(&rx->params, rxs, sizeof(*rxs)); + m_tag_prepend(m, mtag); + return (1); +} + +int +ieee80211_get_rx_params(struct mbuf *m, struct ieee80211_rx_stats *rxs) +{ + struct m_tag *mtag; + struct ieee80211_rx_params *rx; + + mtag = m_tag_locate(m, MTAG_ABI_NET80211, NET80211_TAG_RECV_PARAMS, + NULL); + if (mtag == NULL) + return (-1); + rx = (struct ieee80211_rx_params *)(mtag + 1); + memcpy(rxs, &rx->params, sizeof(*rxs)); + return (0); +} + +/* * Transmit a frame to the parent interface. * * TODO: if the transmission fails, make sure the parent node is freed Modified: head/sys/net80211/ieee80211_freebsd.h ============================================================================== --- head/sys/net80211/ieee80211_freebsd.h Sat Sep 26 00:22:09 2015 (r288244) +++ head/sys/net80211/ieee80211_freebsd.h Sat Sep 26 00:53:37 2015 (r288245) @@ -330,6 +330,8 @@ void ieee80211_process_callback(struct i #define NET80211_TAG_XMIT_PARAMS 1 /* See below; this is after the bpf_params definition */ +#define NET80211_TAG_RECV_PARAMS 2 + struct ieee80211com; int ieee80211_parent_xmitpkt(struct ieee80211com *, struct mbuf *); int ieee80211_vap_xmitpkt(struct ieee80211vap *, struct mbuf *); @@ -618,6 +620,43 @@ int ieee80211_add_xmit_params(struct mbu const struct ieee80211_bpf_params *); int ieee80211_get_xmit_params(struct mbuf *m, struct ieee80211_bpf_params *); + +#define IEEE80211_MAX_CHAINS 3 +#define IEEE80211_MAX_EVM_PILOTS 6 + +#define IEEE80211_R_NF 0x0000001 /* global NF value valid */ +#define IEEE80211_R_RSSI 0x0000002 /* global RSSI value valid */ +#define IEEE80211_R_C_CHAIN 0x0000004 /* RX chain count valid */ +#define IEEE80211_R_C_NF 0x0000008 /* per-chain NF value valid */ +#define IEEE80211_R_C_RSSI 0x0000010 /* per-chain RSSI value valid */ +#define IEEE80211_R_C_EVM 0x0000020 /* per-chain EVM valid */ +#define IEEE80211_R_C_HT40 0x0000040 /* RX'ed packet is 40mhz, pilots 4,5 valid */ +#define IEEE80211_R_FREQ 0x0000080 /* Freq value populated, MHz */ +#define IEEE80211_R_IEEE 0x0000100 /* IEEE value populated */ +#define IEEE80211_R_BAND 0x0000200 /* Frequency band populated */ + +struct ieee80211_rx_stats { + uint32_t r_flags; /* IEEE80211_R_* flags */ + uint8_t c_chain; /* number of RX chains involved */ + int16_t c_nf_ctl[IEEE80211_MAX_CHAINS]; /* per-chain NF */ + int16_t c_nf_ext[IEEE80211_MAX_CHAINS]; /* per-chain NF */ + int16_t c_rssi_ctl[IEEE80211_MAX_CHAINS]; /* per-chain RSSI */ + int16_t c_rssi_ext[IEEE80211_MAX_CHAINS]; /* per-chain RSSI */ + uint8_t nf; /* global NF */ + uint8_t rssi; /* global RSSI */ + uint8_t evm[IEEE80211_MAX_CHAINS][IEEE80211_MAX_EVM_PILOTS]; + /* per-chain, per-pilot EVM values */ + uint16_t c_freq; + uint8_t c_ieee; +}; + +struct ieee80211_rx_params { + struct ieee80211_rx_stats params; +}; +int ieee80211_add_rx_params(struct mbuf *m, + const struct ieee80211_rx_stats *rxs); +int ieee80211_get_rx_params(struct mbuf *m, + struct ieee80211_rx_stats *rxs); #endif /* _KERNEL */ /* Modified: head/sys/net80211/ieee80211_input.c ============================================================================== --- head/sys/net80211/ieee80211_input.c Sat Sep 26 00:22:09 2015 (r288244) +++ head/sys/net80211/ieee80211_input.c Sat Sep 26 00:53:37 2015 (r288245) @@ -86,10 +86,21 @@ int ieee80211_input_mimo(struct ieee80211_node *ni, struct mbuf *m, struct ieee80211_rx_stats *rx) { + struct ieee80211_rx_stats rxs; + + if (rx) { + memcpy(&rxs, rx, sizeof(*rx)); + } else { + /* try to read from mbuf */ + bzero(&rxs, sizeof(rxs)); + ieee80211_get_rx_params(m, &rxs); + } + /* XXX should assert IEEE80211_R_NF and IEEE80211_R_RSSI are set */ - ieee80211_process_mimo(ni, rx); + ieee80211_process_mimo(ni, &rxs); + //return ieee80211_input(ni, m, rx->rssi, rx->nf); - return ni->ni_vap->iv_input(ni, m, rx, rx->rssi, rx->nf); + return ni->ni_vap->iv_input(ni, m, &rxs, rxs.rssi, rxs.nf); } int @@ -107,11 +118,20 @@ int ieee80211_input_mimo_all(struct ieee80211com *ic, struct mbuf *m, struct ieee80211_rx_stats *rx) { + struct ieee80211_rx_stats rxs; struct ieee80211vap *vap; int type = -1; m->m_flags |= M_BCAST; /* NB: mark for bpf tap'ing */ + if (rx) { + memcpy(&rxs, rx, sizeof(*rx)); + } else { + /* try to read from mbuf */ + bzero(&rxs, sizeof(rxs)); + ieee80211_get_rx_params(m, &rxs); + } + /* XXX locking */ TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) { struct ieee80211_node *ni; @@ -143,7 +163,7 @@ ieee80211_input_mimo_all(struct ieee8021 m = NULL; } ni = ieee80211_ref_node(vap->iv_bss); - type = ieee80211_input_mimo(ni, mcopy, rx); + type = ieee80211_input_mimo(ni, mcopy, &rxs); ieee80211_free_node(ni); } if (m != NULL) /* no vaps, reclaim mbuf */ Modified: head/sys/net80211/ieee80211_proto.h ============================================================================== --- head/sys/net80211/ieee80211_proto.h Sat Sep 26 00:22:09 2015 (r288244) +++ head/sys/net80211/ieee80211_proto.h Sat Sep 26 00:53:37 2015 (r288245) @@ -62,32 +62,6 @@ void ieee80211_syncflag(struct ieee80211 void ieee80211_syncflag_ht(struct ieee80211vap *, int flag); void ieee80211_syncflag_ext(struct ieee80211vap *, int flag); -#define IEEE80211_R_NF 0x0000001 /* global NF value valid */ -#define IEEE80211_R_RSSI 0x0000002 /* global RSSI value valid */ -#define IEEE80211_R_C_CHAIN 0x0000004 /* RX chain count valid */ -#define IEEE80211_R_C_NF 0x0000008 /* per-chain NF value valid */ -#define IEEE80211_R_C_RSSI 0x0000010 /* per-chain RSSI value valid */ -#define IEEE80211_R_C_EVM 0x0000020 /* per-chain EVM valid */ -#define IEEE80211_R_C_HT40 0x0000040 /* RX'ed packet is 40mhz, pilots 4,5 valid */ -#define IEEE80211_R_FREQ 0x0000080 /* Freq value populated, MHz */ -#define IEEE80211_R_IEEE 0x0000100 /* IEEE value populated */ -#define IEEE80211_R_BAND 0x0000200 /* Frequency band populated */ - -struct ieee80211_rx_stats { - uint32_t r_flags; /* IEEE80211_R_* flags */ - uint8_t c_chain; /* number of RX chains involved */ - int16_t c_nf_ctl[IEEE80211_MAX_CHAINS]; /* per-chain NF */ - int16_t c_nf_ext[IEEE80211_MAX_CHAINS]; /* per-chain NF */ - int16_t c_rssi_ctl[IEEE80211_MAX_CHAINS]; /* per-chain RSSI */ - int16_t c_rssi_ext[IEEE80211_MAX_CHAINS]; /* per-chain RSSI */ - uint8_t nf; /* global NF */ - uint8_t rssi; /* global RSSI */ - uint8_t evm[IEEE80211_MAX_CHAINS][IEEE80211_MAX_EVM_PILOTS]; - /* per-chain, per-pilot EVM values */ - uint16_t c_freq; - uint8_t c_ieee; -}; - #define ieee80211_input(ni, m, rssi, nf) \ ((ni)->ni_vap->iv_input(ni, m, NULL, rssi, nf)) int ieee80211_input_all(struct ieee80211com *, struct mbuf *, int, int); From owner-svn-src-head@freebsd.org Sat Sep 26 01:04:53 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 96CECA099F1; Sat, 26 Sep 2015 01:04:53 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 87F301F0D; Sat, 26 Sep 2015 01:04:53 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q14rQ9050668; Sat, 26 Sep 2015 01:04:53 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q14r2w050667; Sat, 26 Sep 2015 01:04:53 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509260104.t8Q14r2w050667@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 01:04:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288246 - head/lib/ncurses/ncurses X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 01:04:53 -0000 Author: bdrewery Date: Sat Sep 26 01:04:52 2015 New Revision: 288246 URL: https://svnweb.freebsd.org/changeset/base/288246 Log: Add missing CLEANFILES. MFC after: 1 week X-MFC-With: r288199 Sponsored by: EMC / Isilon Storage Division Modified: head/lib/ncurses/ncurses/Makefile Modified: head/lib/ncurses/ncurses/Makefile ============================================================================== --- head/lib/ncurses/ncurses/Makefile Sat Sep 26 00:53:37 2015 (r288245) +++ head/lib/ncurses/ncurses/Makefile Sat Sep 26 01:04:52 2015 (r288246) @@ -282,6 +282,7 @@ CFLAGS+= -DFREEBSD_NATIVE -DTERMIOS # Installed HEADERS= curses.h term.h termcap.h unctrl.h SRCHDRS= ncurses_dll.h +CLEANFILES+= ncurses_dll.h .if defined(ENABLE_WIDEC) INCS= ${HEADERS} ${SRCHDRS} From owner-svn-src-head@freebsd.org Sat Sep 26 01:23:30 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4BA02A08473; Sat, 26 Sep 2015 01:23:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3CF4A1852; Sat, 26 Sep 2015 01:23:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q1NUEn058709; Sat, 26 Sep 2015 01:23:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q1NU8b058708; Sat, 26 Sep 2015 01:23:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509260123.t8Q1NU8b058708@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sat, 26 Sep 2015 01:23:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288247 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 01:23:30 -0000 Author: mav Date: Sat Sep 26 01:23:29 2015 New Revision: 288247 URL: https://svnweb.freebsd.org/changeset/base/288247 Log: Pass to sobind() copy of the address, not the original. Modified: head/sys/cam/ctl/ctl_ha.c Modified: head/sys/cam/ctl/ctl_ha.c ============================================================================== --- head/sys/cam/ctl/ctl_ha.c Sat Sep 26 01:04:52 2015 (r288246) +++ head/sys/cam/ctl/ctl_ha.c Sat Sep 26 01:23:29 2015 (r288247) @@ -427,6 +427,7 @@ static int ctl_ha_connect(struct ha_softc *softc) { struct thread *td = curthread; + struct sockaddr_in sa; struct socket *so; int error; @@ -440,7 +441,8 @@ ctl_ha_connect(struct ha_softc *softc) softc->ha_so = so; ctl_ha_sock_setup(softc); - error = soconnect(so, (struct sockaddr *)&softc->ha_peer_in, td); + memcpy(&sa, &softc->ha_peer_in, sizeof(sa)); + error = soconnect(so, (struct sockaddr *)&sa, td); if (error != 0) { printf("%s: soconnect() error %d\n", __func__, error); goto out; @@ -517,6 +519,7 @@ static int ctl_ha_listen(struct ha_softc *softc) { struct thread *td = curthread; + struct sockaddr_in sa; struct sockopt opt; int error, val; @@ -557,7 +560,8 @@ ctl_ha_listen(struct ha_softc *softc) SOCKBUF_UNLOCK(&softc->ha_lso->so_rcv); } - error = sobind(softc->ha_lso, (struct sockaddr *)&softc->ha_peer_in, td); + memcpy(&sa, &softc->ha_peer_in, sizeof(sa)); + error = sobind(softc->ha_lso, (struct sockaddr *)&sa, td); if (error != 0) { printf("%s: sobind() error %d\n", __func__, error); goto out; From owner-svn-src-head@freebsd.org Sat Sep 26 01:24:36 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 873B4A0857F; Sat, 26 Sep 2015 01:24:36 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7813F19CD; Sat, 26 Sep 2015 01:24:36 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q1OasK058794; Sat, 26 Sep 2015 01:24:36 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q1Oakj058793; Sat, 26 Sep 2015 01:24:36 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509260124.t8Q1Oakj058793@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 01:24:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288248 - in head/sbin/ipf: . ipsend iptest rules X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 01:24:36 -0000 Author: bdrewery Date: Sat Sep 26 01:24:35 2015 New Revision: 288248 URL: https://svnweb.freebsd.org/changeset/base/288248 Log: Remove disconnected directories. These were added disconnected in 2005 in r145524. Sponsored by: EMC / Isilon Storage Division Deleted: head/sbin/ipf/ipsend/ head/sbin/ipf/iptest/ head/sbin/ipf/rules/ Modified: head/sbin/ipf/Makefile Modified: head/sbin/ipf/Makefile ============================================================================== --- head/sbin/ipf/Makefile Sat Sep 26 01:23:29 2015 (r288247) +++ head/sbin/ipf/Makefile Sat Sep 26 01:24:35 2015 (r288248) @@ -1,8 +1,6 @@ # $FreeBSD$ -#.WAIT SUBDIR= libipf SUBDIR+= ipf ipfs ipfstat ipftest ipmon ipnat ippool ipresend -#SUBDIR+= ipsend iptest rules .include From owner-svn-src-head@freebsd.org Sat Sep 26 01:28:51 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 949C8A0880E; Sat, 26 Sep 2015 01:28:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 85EBF1BDF; Sat, 26 Sep 2015 01:28:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q1Spa8058993; Sat, 26 Sep 2015 01:28:51 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q1Sp8h058992; Sat, 26 Sep 2015 01:28:51 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509260128.t8Q1Sp8h058992@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 01:28:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288249 - head/sbin/ipf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 01:28:51 -0000 Author: bdrewery Date: Sat Sep 26 01:28:50 2015 New Revision: 288249 URL: https://svnweb.freebsd.org/changeset/base/288249 Log: Add SUBDIR_PARALLEL. MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/sbin/ipf/Makefile Modified: head/sbin/ipf/Makefile ============================================================================== --- head/sbin/ipf/Makefile Sat Sep 26 01:24:35 2015 (r288248) +++ head/sbin/ipf/Makefile Sat Sep 26 01:28:50 2015 (r288249) @@ -1,6 +1,7 @@ # $FreeBSD$ -SUBDIR= libipf +SUBDIR= libipf .WAIT SUBDIR+= ipf ipfs ipfstat ipftest ipmon ipnat ippool ipresend +SUBDIR_PARALLEL= .include From owner-svn-src-head@freebsd.org Sat Sep 26 04:22:20 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2E2B3A091B9; Sat, 26 Sep 2015 04:22:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 04832118A; Sat, 26 Sep 2015 04:22:20 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q4MJuP040963; Sat, 26 Sep 2015 04:22:19 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q4MJwg040960; Sat, 26 Sep 2015 04:22:19 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509260422.t8Q4MJwg040960@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 04:22:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288251 - in head: . targets/pseudo/bootstrap-tools X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 04:22:20 -0000 Author: bdrewery Date: Sat Sep 26 04:22:18 2015 New Revision: 288251 URL: https://svnweb.freebsd.org/changeset/base/288251 Log: META_MODE: Make it easier to keep the bootstrap-tools args in sync. Sponsored by: EMC / Isilon Storage Division Modified: head/Makefile.inc1 head/targets/pseudo/bootstrap-tools/Makefile Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Sat Sep 26 03:51:53 2015 (r288250) +++ head/Makefile.inc1 Sat Sep 26 04:22:18 2015 (r288251) @@ -257,9 +257,8 @@ BMAKEENV= INSTALL="sh ${.CURDIR}/tools/i WORLDTMP=${WORLDTMP} \ VERSION="${VERSION}" \ MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}" -BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ - ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ - DESTDIR= \ +# need to keep this in sync with targets/pseudo/bootstrap-tools/Makefile +BSARGS= DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ SSP_CFLAGS= \ MK_HTML=no NO_LINT=yes MK_MAN=no \ @@ -269,6 +268,10 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ MK_LLDB=no MK_TESTS=no \ MK_INCLUDES=yes +BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ + ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ + ${BSARGS} + # build-tools stage TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ Modified: head/targets/pseudo/bootstrap-tools/Makefile ============================================================================== --- head/targets/pseudo/bootstrap-tools/Makefile Sat Sep 26 03:51:53 2015 (r288250) +++ head/targets/pseudo/bootstrap-tools/Makefile Sat Sep 26 04:22:18 2015 (r288251) @@ -31,17 +31,15 @@ OSRELDATE?= 0 .endif # need to keep this in sync with src/Makefile.inc1 -BSARGS= \ - DESTDIR= \ - BOOTSTRAPPING=${OSRELDATE} \ - SSP_CFLAGS= \ - MK_HTML=no NO_LINT=yes MK_MAN=no \ - -DNO_PIC MK_PROFILE=no -DNO_SHARED \ - -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ - MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ - MK_LLDB=no MK_TESTS=no \ - MK_INCLUDES=yes - +BSARGS= DESTDIR= \ + BOOTSTRAPPING=${OSRELDATE} \ + SSP_CFLAGS= \ + MK_HTML=no NO_LINT=yes MK_MAN=no \ + -DNO_PIC MK_PROFILE=no -DNO_SHARED \ + -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ + MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ + MK_LLDB=no MK_TESTS=no \ + MK_INCLUDES=yes legacy: .MAKE .META mkdir -p ${LEGACY_TOOLS} From owner-svn-src-head@freebsd.org Sat Sep 26 05:11:35 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F32E2A08EC3; Sat, 26 Sep 2015 05:11:35 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-qg0-x22e.google.com (mail-qg0-x22e.google.com [IPv6:2607:f8b0:400d:c04::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B146F1797; Sat, 26 Sep 2015 05:11:35 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by qgev79 with SMTP id v79so85136018qge.0; Fri, 25 Sep 2015 22:11:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=VmNjX32459xVA1iT6w4DJ//9s1LQzQLWG0BKkeJUgN8=; b=tUr/7rAWxFEoL6s/E5XvUi1iriDJi8MsiWiPfbSz7pE2qfxWoPBRu7TQiBC/OsDi3q J+M2ho+5w1DPWA8e6ScseYbUwUu3nEx6TcEo1ye36qej2hYrBajvUidh3OAS99mzY6Mc RswolBp9/0CnYNrU7dsZVqZPKDxn5x5u9BPpN3otAdN88m8m5kSo7sEDJWBP3HMw3Sc8 TRhpJKQD0v1kRnrX8yKjPQDlYApSgAvOaFhzByxrd3CR10zCYZjgZjIbxRWFh4O+dy3F M9FeBvtAV8bsD72j2uYbYO6RxMlknF198Z80Uq7FL8yZiD1WkFoSxLYK3TrzwCX+f9eE +zvw== MIME-Version: 1.0 X-Received: by 10.140.101.226 with SMTP id u89mr10448928qge.90.1443244294847; Fri, 25 Sep 2015 22:11:34 -0700 (PDT) Received: by 10.140.94.44 with HTTP; Fri, 25 Sep 2015 22:11:34 -0700 (PDT) In-Reply-To: <5605D4FC.4040205@FreeBSD.org> References: <201509252303.t8PN3Wx0098623@repo.freebsd.org> <5605D4FC.4040205@FreeBSD.org> Date: Fri, 25 Sep 2015 22:11:34 -0700 Message-ID: Subject: Re: svn commit: r288241 - head/share/mk From: NGie Cooper To: Bryan Drewery Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 05:11:36 -0000 On Fri, Sep 25, 2015 at 4:13 PM, Bryan Drewery wrote: > On 9/25/2015 4:12 PM, NGie Cooper wrote: >> On Fri, Sep 25, 2015 at 4:03 PM, Bryan Drewery wrote: >>> Author: bdrewery >>> Date: Fri Sep 25 23:03:32 2015 >>> New Revision: 288241 >>> URL: https://svnweb.freebsd.org/changeset/base/288241 >>> >>> Log: >>> Remove 'set -e' that are no longer needed as it is already default. >>> >>> When bmake was initially imported at r241298 shell commands were no longer >>> ran with 'set -e' as they were before. This was fixed in r254980 so they >>> again always use 'set -e'. >> >> The bsd.subdir.mk portion of the change looks like it would cause >> issues depending on what's being called (fmake or an earlier version >> of sys.mk might be used at install time). >> > > We only support bmake in head. And the 'set -e' were only added for > bmake compatibility before it was fixed to work like fmake did. Sorry. Fuzzy memory on the latter item. Yeah, I requested it a couple years ago. We might only support bmake in head, but there's nothing preventing someone from doing a source upgrade from one of the older 10 releases to 11+. Thinking about this a bit more, this is an extreme edge case that doesn't really matter, because people doing source upgrades across major releases really should be doing them from the latest minor release for the major release. From owner-svn-src-head@freebsd.org Sat Sep 26 06:57:09 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 41AD5A093C0; Sat, 26 Sep 2015 06:57:09 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 32AE1A2C; Sat, 26 Sep 2015 06:57:09 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q6v9LW003493; Sat, 26 Sep 2015 06:57:09 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q6v9Pg003492; Sat, 26 Sep 2015 06:57:09 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509260657.t8Q6v9Pg003492@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 06:57:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288252 - head/sys/dev/usb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 06:57:09 -0000 Author: adrian Date: Sat Sep 26 06:57:08 2015 New Revision: 288252 URL: https://svnweb.freebsd.org/changeset/base/288252 Log: Update USB device IDs for the upcoming AR9170 support. Modified: head/sys/dev/usb/usbdevs Modified: head/sys/dev/usb/usbdevs ============================================================================== --- head/sys/dev/usb/usbdevs Sat Sep 26 04:22:18 2015 (r288251) +++ head/sys/dev/usb/usbdevs Sat Sep 26 06:57:08 2015 (r288252) @@ -776,6 +776,7 @@ vendor MOSCHIP 0x9710 MosChip Semicondu vendor NETGEAR4 0x9846 Netgear vendor MARVELL 0x9e88 Marvell Technology Group Ltd. vendor 3COM3 0xa727 3Com +vendor CACE 0xcace CACE Technologies vendor EVOLUTION 0xdeee Evolution Robotics products vendor DATAAPEX 0xdaae DataApex vendor HP2 0xf003 Hewlett Packard @@ -863,6 +864,7 @@ product ACCTON RT3070_3 0xc522 RT3070 product ACCTON RT3070_5 0xd522 RT3070 product ACCTON RTL8192SU 0xc512 RTL8192SU product ACCTON ZD1211B 0xe501 ZD1211B +product ACCTON WN7512 0xf522 WN7512 /* Aceeca products */ product ACEECA MEZ1000 0x0001 MEZ1000 RDA @@ -1223,6 +1225,11 @@ product ATHEROS2 AR5523_2 0x0003 AR5523 product ATHEROS2 AR5523_2_NF 0x0004 AR5523 (no firmware) product ATHEROS2 AR5523_3 0x0005 AR5523 product ATHEROS2 AR5523_3_NF 0x0006 AR5523 (no firmware) +product ATHEROS2 TG121N 0x1001 TG121N +product ATHEROS2 WN821NV2 0x1002 WN821NV2 +product ATHEROS2 3CRUSBN275 0x1010 3CRUSBN275 +product ATHEROS2 WN612 0x1011 WN612 +product ATHEROS2 AR9170 0x9170 AR9170 /* Atmel Comp. products */ product ATMEL STK541 0x2109 Zigbee Controller @@ -1238,6 +1245,9 @@ product AUTHENTEC AES1610 0x1600 AES1610 /* Avision products */ product AVISION 1200U 0x0268 1200U scanner +/* AVM products */ +product AVM FRITZWLAN 0x8401 FRITZ!WLAN N + /* Axesstel products */ product AXESSTEL DATAMODEM 0x1000 Data Modem @@ -1340,6 +1350,9 @@ product BROTHER MFC8600_9650 0x0100 MFC8 product BTC BTC6100 0x5550 6100C Keyboard product BTC BTC7932 0x6782 Keyboard with mouse port +/* CACE Technologies products */ +product CACE AIRPCAPNX 0x0300 AirPcap NX + /* Canon, Inc. products */ product CANON N656U 0x2206 CanoScan N656U product CANON N1220U 0x2207 CanoScan N1220U @@ -1640,8 +1653,10 @@ product DLINK DWA131B 0x330d DWA-131 re product DLINK2 RTL8192SU_1 0x3300 RTL8192SU product DLINK2 RTL8192SU_2 0x3302 RTL8192SU product DLINK2 DWA131A1 0x3303 DWA-131 A1 +product DLINK2 DWA160A2 0x3a09 DWA-160 A2 product DLINK2 DWA120 0x3a0c DWA-120 product DLINK2 DWA120_NF 0x3a0d DWA-120 (no firmware) +product DLINK2 DWA130D1 0x3a0f DWA-130 D1 product DLINK2 DWLG122C1 0x3c03 DWL-G122 c1 product DLINK2 WUA1340 0x3c04 WUA-1340 product DLINK2 DWA111 0x3c06 DWA-111 @@ -1652,6 +1667,7 @@ product DLINK2 RT3072_1 0x3c0b RT3072 product DLINK2 RT3070_1 0x3c0d RT3070 product DLINK2 RT3070_2 0x3c0e RT3070 product DLINK2 RT3070_3 0x3c0f RT3070 +product DLINK2 DWA160A1 0x3c10 DWA-160 A1 product DLINK2 RT2870_2 0x3c11 RT2870 product DLINK2 DWA130 0x3c13 DWA-130 product DLINK2 RT3070_4 0x3c15 RT3070 @@ -2469,6 +2485,7 @@ product IODATA USBETTXS 0x0913 USB ETTX product IODATA USBWNB11A 0x0919 USB WN-B11 product IODATA USBWNB11 0x0922 USB Airport WN-B11 product IODATA ETGUS2 0x0930 ETG-US2 +product IODATA WNGDNUS2 0x093f WN-GDN/US2 product IODATA RT3072_1 0x0944 RT3072 product IODATA RT3072_2 0x0945 RT3072 product IODATA RT3072_3 0x0947 RT3072 @@ -3209,6 +3226,7 @@ product NATIONAL BEARPAW2400 0x1001 Bear /* NEC products */ product NEC HUB_0050 0x0050 USB 2.0 7-Port Hub product NEC HUB_005A 0x005a USB 2.0 4-Port Hub +product NEC WL300NUG 0x0249 WL300NU-G product NEC HUB 0x55aa hub product NEC HUB_B 0x55ab hub @@ -3241,7 +3259,11 @@ product NETGEAR WG111V3 0x4260 WG111v3 product NETGEAR WG111U 0x4300 WG111U product NETGEAR WG111U_NF 0x4301 WG111U (no firmware) product NETGEAR WG111V2 0x6a00 WG111V2 +product NETGEAR WN111V2 0x9001 WN111V2 +product NETGEAR WNDA3100 0x9010 WNDA3100 +product NETGEAR WNDA3200 0x9018 WNDA3200 product NETGEAR RTL8192CU 0x9021 RTL8192CU +product NETGEAR WNA1000 0x9040 WNA1000 product NETGEAR WNA1000M 0x9041 WNA1000M product NETGEAR2 MA101 0x4100 MA101 product NETGEAR2 MA101B 0x4102 MA101 Rev B @@ -3505,6 +3527,7 @@ product PLANEX GW_US11H 0x14ea GW-US11H product PLANEX2 RTL8188CUS 0x1201 RTL8188CUS product PLANEX2 GW_US11S 0x3220 GW-US11S WLAN product PLANEX2 GW_US54GXS 0x5303 GW-US54GXS WLAN +product PLANEX2 GW_US300 0x5304 GW-US300 product PLANEX2 RTL8188CU_1 0xab2a RTL8188CU product PLANEX2 RTL8188CU_2 0xed17 RTL8188CU product PLANEX2 RTL8188CU_3 0x4902 RTL8188CU @@ -4577,8 +4600,10 @@ product WINBOND UH104 0x5518 4-port USB product WINMAXGROUP FLASH64MC 0x6660 USB Flash Disk 64M-C /* Wistron NeWeb products */ +product WISTRONNEWEB WNC0600 0x0326 WNC-0600USB product WISTRONNEWEB UR045G 0x0427 PrismGT USB 2.0 WLAN product WISTRONNEWEB UR055G 0x0711 UR055G +product WISTRONNEWEB O8494 0x0804 ORiNOCO 802.11n product WISTRONNEWEB AR5523_1 0x0826 AR5523 product WISTRONNEWEB AR5523_1_NF 0x0827 AR5523 (no firmware) product WISTRONNEWEB AR5523_2 0x082a AR5523 @@ -4627,7 +4652,9 @@ product ZCOM AR5523_NF 0x0013 AR5523 dr product ZCOM XM142 0x0015 XM-142 product ZCOM ZD1211B 0x001a ZD1211B product ZCOM RT2870_1 0x0022 RT2870 +product ZCOM UB81 0x0023 UB81 product ZCOM RT2870_2 0x0025 RT2870 +product ZCOM UB82 0x0026 UB82 /* Zinwell products */ product ZINWELL RT2570 0x0260 RT2570 @@ -4646,6 +4673,7 @@ product ZORAN EX20DSC 0x4343 Digital Ca /* Zydas Technology Corporation products */ product ZYDAS ZD1211 0x1211 ZD1211 WLAN abg product ZYDAS ZD1211B 0x1215 ZD1211B +product ZYDAS ZD1221 0x1221 ZD1221 /* ZyXEL Communication Co. products */ product ZYXEL OMNI56K 0x1500 Omni 56K Plus @@ -4657,6 +4685,8 @@ product ZYXEL M202 0x340a M-202 product ZYXEL G220V2 0x340f G-220 v2 product ZYXEL G202 0x3410 G-202 product ZYXEL RT2870_1 0x3416 RT2870 +product ZYXEL NWD271N 0x3417 NWD-271N +product ZYXEL NWD211AN 0x3418 NWD-211AN product ZYXEL RT2870_2 0x341a RT2870 product ZYXEL RT3070 0x341e NWD2105 product ZYXEL RTL8192CU 0x341f RTL8192CU From owner-svn-src-head@freebsd.org Sat Sep 26 07:08:36 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B505A09A50; Sat, 26 Sep 2015 07:08:36 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 770CCE7C; Sat, 26 Sep 2015 07:08:36 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q78axi007768; Sat, 26 Sep 2015 07:08:36 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q78aRB007765; Sat, 26 Sep 2015 07:08:36 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509260708.t8Q78aRB007765@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 07:08:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288253 - in head/sys: contrib/dev/otus dev/otus modules modules/otus modules/otusfw modules/otusfw/otusfw_init modules/otusfw/otusfw_main X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:08:36 -0000 Author: adrian Date: Sat Sep 26 07:08:35 2015 New Revision: 288253 URL: https://svnweb.freebsd.org/changeset/base/288253 Log: Add an initial driver for the AR9170 series draft-11n hardware from Atheros. Thanks to OpenBSD for providing a driver based on the original Atheros open source driver circa 2008. This uses the early, pre-carl9170 atheros provided firmware. It only supports 11bg at the moment. I've not tested it with 11a (and so the TX rate control logic may be slightly wrong!) so if you do have the dual-band version of this hardware please do let me know. Tested: * AR9170, TP-Link WN821N 2GHz. TODO: * Hook this up to a non-module build. Added: head/sys/contrib/dev/otus/ head/sys/contrib/dev/otus/otus-init (contents, props changed) head/sys/contrib/dev/otus/otus-license head/sys/contrib/dev/otus/otus-main (contents, props changed) head/sys/dev/otus/ head/sys/dev/otus/if_otus.c (contents, props changed) head/sys/dev/otus/if_otusreg.h (contents, props changed) head/sys/modules/otus/ head/sys/modules/otus/Makefile (contents, props changed) head/sys/modules/otusfw/ head/sys/modules/otusfw/Makefile (contents, props changed) head/sys/modules/otusfw/otusfw_init/ head/sys/modules/otusfw/otusfw_init/Makefile (contents, props changed) head/sys/modules/otusfw/otusfw_main/ head/sys/modules/otusfw/otusfw_main/Makefile (contents, props changed) Modified: head/sys/modules/Makefile Added: head/sys/contrib/dev/otus/otus-init ============================================================================== Binary file. No diff available. Added: head/sys/contrib/dev/otus/otus-license ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/contrib/dev/otus/otus-license Sat Sep 26 07:08:35 2015 (r288253) @@ -0,0 +1,47 @@ +Copyright (c) 2008, Atheros Communications, Inc. +All rights reserved. + +Redistribution. Redistribution and use in binary form, without +modification, are permitted provided that the following conditions are +met: + +* Redistributions must reproduce the above copyright notice and the + following disclaimer in the documentation and/or other materials + provided with the distribution. + +* Neither the name of Atheros Communications, Inc. nor the names of + its suppliers may be used to endorse or promote products derived + from this software without specific prior written permission. + +* No reverse engineering, decompilation, or disassembly of this + software is permitted. + +Limited patent license. Atheros Communications, Inc. grants a +world-wide, royalty-free, non-exclusive license under patents it +now or hereafter owns or controls to make, have made, use, import, +offer to sell and sell ("Utilize") this software, but solely to +the extent that any such patent is necessary to Utilize the software +alone, or in combination with an operating system licensed under an +approved Open Source license as listed by the Open Source Initiative +at http://opensource.org/licenses. The patent license shall not +apply to any other combinations which include this software. No +hardware per se is licensed hereunder. + +DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND +CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE +USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +The following files are under this license: + +otus-init otus-main + +These files are needed by otus(4) devices. Added: head/sys/contrib/dev/otus/otus-main ============================================================================== Binary file. No diff available. Added: head/sys/dev/otus/if_otus.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/otus/if_otus.c Sat Sep 26 07:08:35 2015 (r288253) @@ -0,0 +1,3099 @@ +/* $OpenBSD: if_otus.c,v 1.46 2015/03/14 03:38:49 jsg Exp $ */ + +/*- + * Copyright (c) 2009 Damien Bergamini + * Copyright (c) 2015 Adrian Chadd + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +/* + * Driver for Atheros AR9001U chipset. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include "usbdevs.h" + +#define USB_DEBUG_VAR otus_debug +#include + +#include "if_otusreg.h" + +static int otus_debug = 0; +static SYSCTL_NODE(_hw_usb, OID_AUTO, otus, CTLFLAG_RW, 0, "USB otus"); +SYSCTL_INT(_hw_usb_otus, OID_AUTO, debug, CTLFLAG_RWTUN, &otus_debug, 0, + "Debug level"); +#define OTUS_DEBUG_XMIT 0x00000001 +#define OTUS_DEBUG_RECV 0x00000002 +#define OTUS_DEBUG_TXDONE 0x00000004 +#define OTUS_DEBUG_RXDONE 0x00000008 +#define OTUS_DEBUG_CMD 0x00000010 +#define OTUS_DEBUG_CMDDONE 0x00000020 +#define OTUS_DEBUG_RESET 0x00000040 +#define OTUS_DEBUG_STATE 0x00000080 +#define OTUS_DEBUG_CMDNOTIFY 0x00000100 +#define OTUS_DEBUG_REGIO 0x00000200 +#define OTUS_DEBUG_IRQ 0x00000400 +#define OTUS_DEBUG_TXCOMP 0x00000800 +#define OTUS_DEBUG_ANY 0xffffffff + +#define OTUS_DPRINTF(sc, dm, ...) \ + do { \ + if ((dm == OTUS_DEBUG_ANY) || (dm & otus_debug)) \ + device_printf(sc->sc_dev, __VA_ARGS__); \ + } while (0) + +#define OTUS_DEV(v, p) { USB_VPI(v, p, 0) } +static const STRUCT_USB_HOST_ID otus_devs[] = { + OTUS_DEV(USB_VENDOR_ACCTON, USB_PRODUCT_ACCTON_WN7512), + OTUS_DEV(USB_VENDOR_ATHEROS2, USB_PRODUCT_ATHEROS2_3CRUSBN275), + OTUS_DEV(USB_VENDOR_ATHEROS2, USB_PRODUCT_ATHEROS2_TG121N), + OTUS_DEV(USB_VENDOR_ATHEROS2, USB_PRODUCT_ATHEROS2_AR9170), + OTUS_DEV(USB_VENDOR_ATHEROS2, USB_PRODUCT_ATHEROS2_WN612), + OTUS_DEV(USB_VENDOR_ATHEROS2, USB_PRODUCT_ATHEROS2_WN821NV2), + OTUS_DEV(USB_VENDOR_AVM, USB_PRODUCT_AVM_FRITZWLAN), + OTUS_DEV(USB_VENDOR_CACE, USB_PRODUCT_CACE_AIRPCAPNX), + OTUS_DEV(USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA130D1), + OTUS_DEV(USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA160A1), + OTUS_DEV(USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA160A2), + OTUS_DEV(USB_VENDOR_IODATA, USB_PRODUCT_IODATA_WNGDNUS2), + OTUS_DEV(USB_VENDOR_NEC, USB_PRODUCT_NEC_WL300NUG), + OTUS_DEV(USB_VENDOR_NETGEAR, USB_PRODUCT_NETGEAR_WN111V2), + OTUS_DEV(USB_VENDOR_NETGEAR, USB_PRODUCT_NETGEAR_WNA1000), + OTUS_DEV(USB_VENDOR_NETGEAR, USB_PRODUCT_NETGEAR_WNDA3100), + OTUS_DEV(USB_VENDOR_PLANEX2, USB_PRODUCT_PLANEX2_GW_US300), + OTUS_DEV(USB_VENDOR_WISTRONNEWEB, USB_PRODUCT_WISTRONNEWEB_O8494), + OTUS_DEV(USB_VENDOR_WISTRONNEWEB, USB_PRODUCT_WISTRONNEWEB_WNC0600), + OTUS_DEV(USB_VENDOR_ZCOM, USB_PRODUCT_ZCOM_UB81), + OTUS_DEV(USB_VENDOR_ZCOM, USB_PRODUCT_ZCOM_UB82), + OTUS_DEV(USB_VENDOR_ZYDAS, USB_PRODUCT_ZYDAS_ZD1221), + OTUS_DEV(USB_VENDOR_ZYXEL, USB_PRODUCT_ZYXEL_NWD271N), +}; + +static device_probe_t otus_match; +static device_attach_t otus_attach; +static device_detach_t otus_detach; + +static int otus_attachhook(struct otus_softc *); +void otus_get_chanlist(struct otus_softc *); +int otus_load_firmware(struct otus_softc *, const char *, + uint32_t); +int otus_open_pipes(struct otus_softc *); +void otus_close_pipes(struct otus_softc *); + +static int otus_alloc_tx_cmd_list(struct otus_softc *); +static void otus_free_tx_cmd_list(struct otus_softc *); + +static int otus_alloc_rx_list(struct otus_softc *); +static void otus_free_rx_list(struct otus_softc *); +static int otus_alloc_tx_list(struct otus_softc *); +static void otus_free_tx_list(struct otus_softc *); +static void otus_free_list(struct otus_softc *, struct otus_data [], int); +static struct otus_data *_otus_getbuf(struct otus_softc *); +static struct otus_data *otus_getbuf(struct otus_softc *); +static void otus_freebuf(struct otus_softc *, struct otus_data *); + +static struct otus_tx_cmd *_otus_get_txcmd(struct otus_softc *); +static struct otus_tx_cmd *otus_get_txcmd(struct otus_softc *); +static void otus_free_txcmd(struct otus_softc *, struct otus_tx_cmd *); + +void otus_next_scan(void *, int); +static void otus_tx_task(void *, int pending); +static void otus_wme_update_task(void *, int pending); +void otus_do_async(struct otus_softc *, + void (*)(struct otus_softc *, void *), void *, int); +int otus_newstate(struct ieee80211vap *, enum ieee80211_state, + int); +int otus_cmd(struct otus_softc *, uint8_t, const void *, int, + void *); +void otus_write(struct otus_softc *, uint32_t, uint32_t); +int otus_write_barrier(struct otus_softc *); +struct ieee80211_node *otus_node_alloc(struct ieee80211com *); +int otus_media_change(struct ifnet *); +int otus_read_eeprom(struct otus_softc *); +void otus_newassoc(struct ieee80211_node *, int); +void otus_cmd_rxeof(struct otus_softc *, uint8_t *, int); +void otus_sub_rxeof(struct otus_softc *, uint8_t *, int, + struct mbufq *); +static int otus_tx(struct otus_softc *, struct ieee80211_node *, + struct mbuf *, struct otus_data *); +int otus_ioctl(struct ifnet *, u_long, caddr_t); +int otus_set_multi(struct otus_softc *); +static void otus_updateedca(struct otus_softc *sc); +static void otus_updateslot(struct otus_softc *sc); +int otus_init_mac(struct otus_softc *); +uint32_t otus_phy_get_def(struct otus_softc *, uint32_t); +int otus_set_board_values(struct otus_softc *, + struct ieee80211_channel *); +int otus_program_phy(struct otus_softc *, + struct ieee80211_channel *); +int otus_set_rf_bank4(struct otus_softc *, + struct ieee80211_channel *); +void otus_get_delta_slope(uint32_t, uint32_t *, uint32_t *); +static int otus_set_chan(struct otus_softc *, struct ieee80211_channel *, + int); +int otus_set_key(struct ieee80211com *, struct ieee80211_node *, + struct ieee80211_key *); +void otus_set_key_cb(struct otus_softc *, void *); +void otus_delete_key(struct ieee80211com *, struct ieee80211_node *, + struct ieee80211_key *); +void otus_delete_key_cb(struct otus_softc *, void *); +void otus_calibrate_to(void *, int); +int otus_set_bssid(struct otus_softc *, const uint8_t *); +int otus_set_macaddr(struct otus_softc *, const uint8_t *); +void otus_led_newstate_type1(struct otus_softc *); +void otus_led_newstate_type2(struct otus_softc *); +void otus_led_newstate_type3(struct otus_softc *); +int otus_init(struct otus_softc *sc); +void otus_stop(struct otus_softc *sc); + +static device_method_t otus_methods[] = { + DEVMETHOD(device_probe, otus_match), + DEVMETHOD(device_attach, otus_attach), + DEVMETHOD(device_detach, otus_detach), + + DEVMETHOD_END +}; + +static driver_t otus_driver = { + .name = "otus", + .methods = otus_methods, + .size = sizeof(struct otus_softc) +}; + +static devclass_t otus_devclass; + +DRIVER_MODULE(otus, uhub, otus_driver, otus_devclass, NULL, 0); +MODULE_DEPEND(otus, wlan, 1, 1, 1); +MODULE_DEPEND(otus, usb, 1, 1, 1); +MODULE_DEPEND(otus, firmware, 1, 1, 1); +MODULE_VERSION(otus, 1); + +static usb_callback_t otus_bulk_tx_callback; +static usb_callback_t otus_bulk_rx_callback; +static usb_callback_t otus_bulk_irq_callback; +static usb_callback_t otus_bulk_cmd_callback; + +static const struct usb_config otus_config[OTUS_N_XFER] = { + [OTUS_BULK_TX] = { + .type = UE_BULK, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_OUT, + .bufsize = 0x200, + .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .callback = otus_bulk_tx_callback, + .timeout = 5000, /* ms */ + }, + [OTUS_BULK_RX] = { + .type = UE_BULK, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_IN, + .bufsize = OTUS_RXBUFSZ, + .flags = { .ext_buffer = 1, .pipe_bof = 1,.short_xfer_ok = 1,}, + .callback = otus_bulk_rx_callback, + }, + [OTUS_BULK_IRQ] = { + .type = UE_INTERRUPT, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_IN, + .bufsize = OTUS_MAX_CTRLSZ, + .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .callback = otus_bulk_irq_callback, + }, + [OTUS_BULK_CMD] = { + .type = UE_INTERRUPT, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_OUT, + .bufsize = OTUS_MAX_CTRLSZ, + .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .callback = otus_bulk_cmd_callback, + .timeout = 5000, /* ms */ + }, +}; + +static int +otus_match(device_t self) +{ + struct usb_attach_arg *uaa = device_get_ivars(self); + + if (uaa->usb_mode != USB_MODE_HOST || + uaa->info.bIfaceIndex != 0 || + uaa->info.bConfigIndex != 0) + return (ENXIO); + + return (usbd_lookup_id_by_uaa(otus_devs, sizeof(otus_devs), uaa)); +} + +static int +otus_attach(device_t self) +{ + struct usb_attach_arg *uaa = device_get_ivars(self); + struct otus_softc *sc = device_get_softc(self); + int error; + uint8_t iface_index; + + device_set_usb_desc(self); + sc->sc_udev = uaa->device; + sc->sc_dev = self; + + mtx_init(&sc->sc_mtx, device_get_nameunit(self), MTX_NETWORK_LOCK, + MTX_DEF); + + TIMEOUT_TASK_INIT(taskqueue_thread, &sc->scan_to, 0, otus_next_scan, sc); + TIMEOUT_TASK_INIT(taskqueue_thread, &sc->calib_to, 0, otus_calibrate_to, sc); + TASK_INIT(&sc->tx_task, 0, otus_tx_task, sc); + TASK_INIT(&sc->wme_update_task, 0, otus_wme_update_task, sc); + mbufq_init(&sc->sc_snd, ifqmaxlen); + + iface_index = 0; + error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, + otus_config, OTUS_N_XFER, sc, &sc->sc_mtx); + if (error) { + device_printf(sc->sc_dev, + "could not allocate USB transfers, err=%s\n", + usbd_errstr(error)); + goto fail_usb; + } + + if ((error = otus_open_pipes(sc)) != 0) { + device_printf(sc->sc_dev, "%s: could not open pipes\n", + __func__); + goto fail; + } + + /* XXX check return status; fail out if appropriate */ + if (otus_attachhook(sc) != 0) + goto fail; + + return (0); + +fail: + otus_close_pipes(sc); +fail_usb: + mtx_destroy(&sc->sc_mtx); + return (ENXIO); +} + +static int +otus_detach(device_t self) +{ + struct otus_softc *sc = device_get_softc(self); + struct ieee80211com *ic = &sc->sc_ic; + + otus_stop(sc); + + usbd_transfer_unsetup(sc->sc_xfer, OTUS_N_XFER); + + taskqueue_drain_timeout(taskqueue_thread, &sc->scan_to); + taskqueue_drain_timeout(taskqueue_thread, &sc->calib_to); + taskqueue_drain(taskqueue_thread, &sc->tx_task); + taskqueue_drain(taskqueue_thread, &sc->wme_update_task); + +#if 0 + /* Wait for all queued asynchronous commands to complete. */ + usb_rem_wait_task(sc->sc_udev, &sc->sc_task); + + usbd_ref_wait(sc->sc_udev); +#endif + + ieee80211_ifdetach(ic); + otus_close_pipes(sc); + mtx_destroy(&sc->sc_mtx); + return 0; +} + +static void +otus_delay_ms(struct otus_softc *sc, int ms) +{ + + DELAY(1000 * ms); +} + +static struct ieee80211vap * +otus_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], int unit, + enum ieee80211_opmode opmode, int flags, + const uint8_t bssid[IEEE80211_ADDR_LEN], + const uint8_t mac[IEEE80211_ADDR_LEN]) +{ + struct otus_vap *uvp; + struct ieee80211vap *vap; + + if (!TAILQ_EMPTY(&ic->ic_vaps)) /* only one at a time */ + return (NULL); + + uvp = malloc(sizeof(struct otus_vap), M_80211_VAP, M_WAITOK | M_ZERO); + vap = &uvp->vap; + + if (ieee80211_vap_setup(ic, vap, name, unit, opmode, + flags, bssid) != 0) { + /* out of memory */ + free(uvp, M_80211_VAP); + return (NULL); + } + + /* override state transition machine */ + uvp->newstate = vap->iv_newstate; + vap->iv_newstate = otus_newstate; + + /* XXX TODO: double-check */ + vap->iv_ampdu_density = IEEE80211_HTCAP_MPDUDENSITY_16; + vap->iv_ampdu_rxmax = IEEE80211_HTCAP_MAXRXAMPDU_32K; + + ieee80211_ratectl_init(vap); + + /* complete setup */ + ieee80211_vap_attach(vap, ieee80211_media_change, + ieee80211_media_status, mac); + ic->ic_opmode = opmode; + + return (vap); +} + +static void +otus_vap_delete(struct ieee80211vap *vap) +{ + struct otus_vap *uvp = OTUS_VAP(vap); + + ieee80211_ratectl_deinit(vap); + ieee80211_vap_detach(vap); + free(uvp, M_80211_VAP); +} + +static void +otus_parent(struct ieee80211com *ic) +{ + struct otus_softc *sc = ic->ic_softc; + int startall = 0; + + if (ic->ic_nrunning > 0) { + if (!sc->sc_running) { + otus_init(sc); + startall = 1; + } else { + (void) otus_set_multi(sc); + } + } else if (sc->sc_running) + otus_stop(sc); + + if (startall) + ieee80211_start_all(ic); +} + +static void +otus_drain_mbufq(struct otus_softc *sc) +{ + struct mbuf *m; + struct ieee80211_node *ni; + + OTUS_LOCK_ASSERT(sc); + while ((m = mbufq_dequeue(&sc->sc_snd)) != NULL) { + ni = (struct ieee80211_node *) m->m_pkthdr.rcvif; + m->m_pkthdr.rcvif = NULL; + ieee80211_free_node(ni); + m_freem(m); + } +} + +static void +otus_tx_start(struct otus_softc *sc) +{ + + taskqueue_enqueue(taskqueue_thread, &sc->tx_task); +} + +static int +otus_transmit(struct ieee80211com *ic, struct mbuf *m) +{ + struct otus_softc *sc = ic->ic_softc; + int error; + + OTUS_LOCK(sc); + if (! sc->sc_running) { + OTUS_UNLOCK(sc); + return (ENXIO); + } + + /* XXX TODO: handle fragments */ + error = mbufq_enqueue(&sc->sc_snd, m); + if (error) { + OTUS_DPRINTF(sc, OTUS_DEBUG_XMIT, + "%s: mbufq_enqueue failed: %d\n", + __func__, + error); + OTUS_UNLOCK(sc); + return (error); + } + OTUS_UNLOCK(sc); + + /* Kick TX */ + otus_tx_start(sc); + + return (0); +} + +static void +_otus_start(struct otus_softc *sc) +{ + struct ieee80211_node *ni; + struct otus_data *bf; + struct mbuf *m; + + OTUS_LOCK_ASSERT(sc); + + while ((m = mbufq_dequeue(&sc->sc_snd)) != NULL) { + bf = otus_getbuf(sc); + if (bf == NULL) { + OTUS_DPRINTF(sc, OTUS_DEBUG_XMIT, + "%s: failed to get buffer\n", __func__); + mbufq_prepend(&sc->sc_snd, m); + break; + } + + ni = (struct ieee80211_node *)m->m_pkthdr.rcvif; + m->m_pkthdr.rcvif = NULL; + + if (otus_tx(sc, ni, m, bf) != 0) { + OTUS_DPRINTF(sc, OTUS_DEBUG_XMIT, + "%s: failed to transmit\n", __func__); + if_inc_counter(ni->ni_vap->iv_ifp, + IFCOUNTER_OERRORS, 1); + otus_freebuf(sc, bf); + ieee80211_free_node(ni); + m_freem(m); + break; + } + } +} + +static void +otus_tx_task(void *arg, int pending) +{ + struct otus_softc *sc = arg; + + OTUS_LOCK(sc); + _otus_start(sc); + OTUS_UNLOCK(sc); +} + +static int +otus_raw_xmit(struct ieee80211_node *ni, struct mbuf *m, + const struct ieee80211_bpf_params *params) +{ + struct ieee80211com *ic= ni->ni_ic; + struct otus_softc *sc = ic->ic_softc; + struct otus_data *bf = NULL; + int error = 0; + + /* Don't transmit if we're not running */ + OTUS_LOCK(sc); + if (! sc->sc_running) { + error = ENETDOWN; + goto error; + } + + bf = otus_getbuf(sc); + if (bf == NULL) { + error = ENOBUFS; + goto error; + } + + /* + * XXX TODO: support TX bpf params + */ + if (otus_tx(sc, ni, m, bf) != 0) { + error = EIO; + goto error; + } + + OTUS_UNLOCK(sc); + return (0); +error: + if (bf) + otus_freebuf(sc, bf); + OTUS_UNLOCK(sc); + ieee80211_free_node(ni); + m_freem(m); + return (ENXIO); +} + +static void +otus_update_chw(struct ieee80211com *ic) +{ + + printf("%s: TODO\n", __func__); +} + +static void +otus_set_channel(struct ieee80211com *ic) +{ + struct otus_softc *sc = ic->ic_softc; + OTUS_DPRINTF(sc, OTUS_DEBUG_RESET, "%s: set channel: %d\n", + __func__, + ic->ic_curchan->ic_freq); + + OTUS_LOCK(sc); + (void) otus_set_chan(sc, ic->ic_curchan, 0); + OTUS_UNLOCK(sc); +} + +static void +otus_wme_update_task(void *arg, int pending) +{ + struct otus_softc *sc = arg; + + OTUS_LOCK(sc); + /* + * XXX TODO: take temporary copy of EDCA information + * when scheduling this so we have a more time-correct view + * of things. + */ + otus_updateedca(sc); + OTUS_UNLOCK(sc); +} + +static void +otus_wme_schedule_update(struct otus_softc *sc) +{ + + taskqueue_enqueue(taskqueue_thread, &sc->wme_update_task); +} + +/* + * This is called by net80211 in RX packet context, so we + * can't sleep here. + * + * TODO: have net80211 schedule an update itself for its + * own internal taskqueue. + */ +static int +otus_wme_update(struct ieee80211com *ic) +{ + struct otus_softc *sc = ic->ic_softc; + + otus_wme_schedule_update(sc); + return (0); +} + +static int +otus_ampdu_enable(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap) +{ + + /* For now, no A-MPDU TX support in the driver */ + return (0); +} + +static void +otus_scan_start(struct ieee80211com *ic) +{ + +// printf("%s: TODO\n", __func__); +} + +static void +otus_scan_end(struct ieee80211com *ic) +{ + +// printf("%s: TODO\n", __func__); +} + +static void +otus_update_mcast(struct ieee80211com *ic) +{ + struct otus_softc *sc = ic->ic_softc; + + (void) otus_set_multi(sc); +} + +static int +otus_attachhook(struct otus_softc *sc) +{ + struct ieee80211com *ic = &sc->sc_ic; + usb_device_request_t req; + uint32_t in, out; + int error; + uint8_t bands; + + /* Not locked */ + error = otus_load_firmware(sc, "otusfw_init", AR_FW_INIT_ADDR); + if (error != 0) { + device_printf(sc->sc_dev, "%s: could not load %s firmware\n", + __func__, "init"); + return (ENXIO); + } + + /* XXX not locked? */ + otus_delay_ms(sc, 1000); + + /* Not locked */ + error = otus_load_firmware(sc, "otusfw_main", AR_FW_MAIN_ADDR); + if (error != 0) { + device_printf(sc->sc_dev, "%s: could not load %s firmware\n", + __func__, "main"); + return (ENXIO); + } + + OTUS_LOCK(sc); + + /* Tell device that firmware transfer is complete. */ + req.bmRequestType = UT_WRITE_VENDOR_DEVICE; + req.bRequest = AR_FW_DOWNLOAD_COMPLETE; + USETW(req.wValue, 0); + USETW(req.wIndex, 0); + USETW(req.wLength, 0); + if (usbd_do_request_flags(sc->sc_udev, &sc->sc_mtx, &req, NULL, + 0, NULL, 250) != 0) { + OTUS_UNLOCK(sc); + device_printf(sc->sc_dev, + "%s: firmware initialization failed\n", + __func__); + return (ENXIO); + } + + /* Send an ECHO command to check that everything is settled. */ + in = 0xbadc0ffe; + if (otus_cmd(sc, AR_CMD_ECHO, &in, sizeof in, &out) != 0) { + OTUS_UNLOCK(sc); + device_printf(sc->sc_dev, + "%s: echo command failed\n", __func__); + return (ENXIO); + } + if (in != out) { + OTUS_UNLOCK(sc); + device_printf(sc->sc_dev, + "%s: echo reply mismatch: 0x%08x!=0x%08x\n", + __func__, in, out); + return (ENXIO); + } + + /* Read entire EEPROM. */ + if (otus_read_eeprom(sc) != 0) { + OTUS_UNLOCK(sc); + device_printf(sc->sc_dev, + "%s: could not read EEPROM\n", + __func__); + return (ENXIO); + } + + OTUS_UNLOCK(sc); + + sc->txmask = sc->eeprom.baseEepHeader.txMask; + sc->rxmask = sc->eeprom.baseEepHeader.rxMask; + sc->capflags = sc->eeprom.baseEepHeader.opCapFlags; + IEEE80211_ADDR_COPY(ic->ic_macaddr, sc->eeprom.baseEepHeader.macAddr); + sc->sc_led_newstate = otus_led_newstate_type3; /* XXX */ + + device_printf(sc->sc_dev, + "MAC/BBP AR9170, RF AR%X, MIMO %dT%dR, address %s\n", + (sc->capflags & AR5416_OPFLAGS_11A) ? + 0x9104 : ((sc->txmask == 0x5) ? 0x9102 : 0x9101), + (sc->txmask == 0x5) ? 2 : 1, (sc->rxmask == 0x5) ? 2 : 1, + ether_sprintf(ic->ic_macaddr)); + + ic->ic_softc = sc; + ic->ic_name = device_get_nameunit(sc->sc_dev); + ic->ic_phytype = IEEE80211_T_OFDM; /* not only, but not used */ + ic->ic_opmode = IEEE80211_M_STA; /* default to BSS mode */ + + /* Set device capabilities. */ + ic->ic_caps = + IEEE80211_C_STA | /* station mode */ +#if 0 + IEEE80211_C_BGSCAN | /* Background scan. */ +#endif + IEEE80211_C_SHPREAMBLE | /* Short preamble supported. */ + IEEE80211_C_WME | /* WME/QoS */ + IEEE80211_C_SHSLOT | /* Short slot time supported. */ + IEEE80211_C_FF | /* Atheros fast-frames supported. */ + IEEE80211_C_WPA; /* WPA/RSN. */ + + /* XXX TODO: 11n */ + +#if 0 + if (sc->eeprom.baseEepHeader.opCapFlags & AR5416_OPFLAGS_11G) { + /* Set supported .11b and .11g rates. */ + ic->ic_sup_rates[IEEE80211_MODE_11B] = + ieee80211_std_rateset_11b; + ic->ic_sup_rates[IEEE80211_MODE_11G] = + ieee80211_std_rateset_11g; + } + if (sc->eeprom.baseEepHeader.opCapFlags & AR5416_OPFLAGS_11A) { + /* Set supported .11a rates. */ + ic->ic_sup_rates[IEEE80211_MODE_11A] = + ieee80211_std_rateset_11a; + } +#endif + +#if 0 + /* Build the list of supported channels. */ + otus_get_chanlist(sc); +#else + /* Set supported .11b and .11g rates. */ + bands = 0; + if (sc->eeprom.baseEepHeader.opCapFlags & AR5416_OPFLAGS_11G) { + setbit(&bands, IEEE80211_MODE_11B); + setbit(&bands, IEEE80211_MODE_11G); + } + if (sc->eeprom.baseEepHeader.opCapFlags & AR5416_OPFLAGS_11A) { + setbit(&bands, IEEE80211_MODE_11A); + } +#if 0 + if (sc->sc_ht) + setbit(&bands, IEEE80211_MODE_11NG); +#endif + ieee80211_init_channels(ic, NULL, &bands); +#endif + + ieee80211_ifattach(ic); + ic->ic_raw_xmit = otus_raw_xmit; + ic->ic_scan_start = otus_scan_start; + ic->ic_scan_end = otus_scan_end; + ic->ic_set_channel = otus_set_channel; + ic->ic_vap_create = otus_vap_create; + ic->ic_vap_delete = otus_vap_delete; + ic->ic_update_mcast = otus_update_mcast; + ic->ic_update_promisc = otus_update_mcast; + ic->ic_parent = otus_parent; + ic->ic_transmit = otus_transmit; + ic->ic_update_chw = otus_update_chw; + ic->ic_ampdu_enable = otus_ampdu_enable; + ic->ic_wme.wme_update = otus_wme_update; + ic->ic_newassoc = otus_newassoc; + +#ifdef notyet + ic->ic_set_key = otus_set_key; + ic->ic_delete_key = otus_delete_key; +#endif + + ieee80211_radiotap_attach(ic, &sc->sc_txtap.wt_ihdr, + sizeof(sc->sc_txtap), OTUS_TX_RADIOTAP_PRESENT, + &sc->sc_rxtap.wr_ihdr, sizeof(sc->sc_rxtap), + OTUS_RX_RADIOTAP_PRESENT); + + return (0); +} + +void +otus_get_chanlist(struct otus_softc *sc) +{ + struct ieee80211com *ic = &sc->sc_ic; + uint16_t domain; + uint8_t chan; + int i; + + /* XXX regulatory domain. */ + domain = le16toh(sc->eeprom.baseEepHeader.regDmn[0]); + OTUS_DPRINTF(sc, OTUS_DEBUG_RESET, "regdomain=0x%04x\n", domain); + + if (sc->eeprom.baseEepHeader.opCapFlags & AR5416_OPFLAGS_11G) { + for (i = 0; i < 14; i++) { + chan = ar_chans[i]; + ic->ic_channels[chan].ic_freq = + ieee80211_ieee2mhz(chan, IEEE80211_CHAN_2GHZ); + ic->ic_channels[chan].ic_flags = + IEEE80211_CHAN_CCK | IEEE80211_CHAN_OFDM | + IEEE80211_CHAN_DYN | IEEE80211_CHAN_2GHZ; + } + } + if (sc->eeprom.baseEepHeader.opCapFlags & AR5416_OPFLAGS_11A) { + for (i = 14; i < nitems(ar_chans); i++) { + chan = ar_chans[i]; + ic->ic_channels[chan].ic_freq = + ieee80211_ieee2mhz(chan, IEEE80211_CHAN_5GHZ); + ic->ic_channels[chan].ic_flags = IEEE80211_CHAN_A; + } + } +} + +int +otus_load_firmware(struct otus_softc *sc, const char *name, uint32_t addr) +{ + usb_device_request_t req; + char *ptr; + const struct firmware *fw; + int mlen, error, size; + + error = 0; + + /* Read firmware image from the filesystem. */ + if ((fw = firmware_get(name)) == NULL) { + device_printf(sc->sc_dev, + "%s: failed loadfirmware of file %s\n", __func__, name); + return (ENXIO); + } + req.bmRequestType = UT_WRITE_VENDOR_DEVICE; + req.bRequest = AR_FW_DOWNLOAD; + USETW(req.wIndex, 0); + + OTUS_LOCK(sc); + + /* XXX const */ + ptr = __DECONST(char *, fw->data); + size = fw->datasize; + addr >>= 8; + while (size > 0) { + mlen = MIN(size, 4096); + + USETW(req.wValue, addr); + USETW(req.wLength, mlen); + if (usbd_do_request_flags(sc->sc_udev, &sc->sc_mtx, + &req, ptr, 0, NULL, 250) != 0) { + error = EIO; + break; + } + addr += mlen >> 8; + ptr += mlen; + size -= mlen; + } + + OTUS_UNLOCK(sc); + + firmware_put(fw, FIRMWARE_UNLOAD); + if (error != 0) + device_printf(sc->sc_dev, + "%s: %s: error=%d\n", __func__, name, error); + return error; +} + +int +otus_open_pipes(struct otus_softc *sc) +{ +#if 0 + int isize, error; + int i; +#endif + int error; + + OTUS_UNLOCK_ASSERT(sc); + + if ((error = otus_alloc_tx_cmd_list(sc)) != 0) { + device_printf(sc->sc_dev, + "%s: could not allocate command xfer\n", + __func__); + goto fail; + } + + if ((error = otus_alloc_tx_list(sc)) != 0) { + device_printf(sc->sc_dev, "%s: could not allocate Tx xfers\n", + __func__); + goto fail; + } + + if ((error = otus_alloc_rx_list(sc)) != 0) { + device_printf(sc->sc_dev, "%s: could not allocate Rx xfers\n", + __func__); + goto fail; + } + + /* Enable RX transfers; needed for initial firmware messages */ + OTUS_LOCK(sc); + usbd_transfer_start(sc->sc_xfer[OTUS_BULK_RX]); + usbd_transfer_start(sc->sc_xfer[OTUS_BULK_IRQ]); + OTUS_UNLOCK(sc); + return 0; + +fail: otus_close_pipes(sc); + return error; +} *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Sat Sep 26 07:09:48 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 27F83A09B16; Sat, 26 Sep 2015 07:09:48 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0BF97FD5; Sat, 26 Sep 2015 07:09:48 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q79lY1007893; Sat, 26 Sep 2015 07:09:47 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q79l84007890; Sat, 26 Sep 2015 07:09:47 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509260709.t8Q79l84007890@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 07:09:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288254 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:09:48 -0000 Author: adrian Date: Sat Sep 26 07:09:46 2015 New Revision: 288254 URL: https://svnweb.freebsd.org/changeset/base/288254 Log: Add man pages for the AR9170 and AR9170 firmware. Added: head/share/man/man4/otus.4 (contents, props changed) head/share/man/man4/otusfw.4 (contents, props changed) Modified: head/share/man/man4/Makefile Modified: head/share/man/man4/Makefile ============================================================================== --- head/share/man/man4/Makefile Sat Sep 26 07:08:35 2015 (r288253) +++ head/share/man/man4/Makefile Sat Sep 26 07:09:46 2015 (r288254) @@ -379,6 +379,8 @@ MAN= aac.4 \ oce.4 \ ohci.4 \ orm.4 \ + otus.4 \ + otusfw.4 \ ow.4 \ ow_temp.4 \ owc.4 \ Added: head/share/man/man4/otus.4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man4/otus.4 Sat Sep 26 07:09:46 2015 (r288254) @@ -0,0 +1,169 @@ +.\" $FreeBSD$ +.\" +.\" Copyright (c) 2015 Adrian Chadd +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd September 25, 2015 +.Dt OTUS 4 +.Os +.Sh NAME +.Nm otus +.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network device +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your kernel configuration file: +.Bd -ragged -offset indent +.Cd "device ehci" +.Cd "device uhci" +.Cd "device ohci" +.Cd "device usb" +.Cd "device otus" +.Cd "device wlan" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, +place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +if_otus_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver supports USB 2.0 wireless network devices based on the Atheros +AR9170 chipset. +.Pp +The Atheros AR9170 is a draft-802.11n adapter that uses an external +radio to operate in either 2.4GHz only or 2.4GHz and 5GHz. +.Pp +The AR9101 radio supports 1T1R operation in 2GHz only. +.Pp +The AR9102 radio supports 2T2R operation in 2GHz only. +.Pp +The AR9104 radio supports 2T2R operation both 2GHz and 5GHz. +.Pp +These are the modes the +.Nm +driver can operate in: +.Bl -tag -width "IBSS-masterXX" +.It BSS mode +Also known as +.Em infrastructure +mode, this is used when associating with an access point, through +which all traffic passes. +This mode is the default. +.El +.Pp +The +.Nm +driver can be configured to use +Wired Equivalent Privacy (WEP) or +Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). +WPA is the de facto encryption standard for wireless networks. +It is strongly recommended that WEP +not be used as the sole mechanism +to secure wireless communication, +due to serious weaknesses in it. +.Pp +The +.Nm +driver can be configured at runtime with +.Xr ifconfig 8 . +.Sh FILES +The driver needs at least version 1.0 of the following firmware files, +which is loaded when an interface is attached: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It Pa /boot/kernel/otusfw-init.ko +.It Pa /boot/kernel/otusfw-main.ko +.El +.Sh HARDWARE +The +.Nm +driver provices support for Atheros AR9170 USB IEEE 802.11b/g/n +wireless network adapters, including: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It 3Com 3CRUSBN275 +.It Arcadyan WN7512 +.\" .It AVM FRITZ!WLAN USB Stick N +.It CACE AirPcap \&Nx +.It D-Link DWA-130 rev \&D1 +.It D-Link DWA-160 rev A1 +.It D-Link DWA-160 rev A2 +.It IO-Data WN-GDN/US2 +.It NEC Aterm WL300NU-G +.It Netgear WNDA3100 +.It Netgear WN111 v2 +.It Planex GW-US300 +.It SMC Networks SMCWUSB-N2 +.It TP-Link TL-WN821N v1, v2 +.It Ubiquiti SR71 USB +.It Unex DNUA-81 +.It Z-Com UB81 +.It Z-Com UB82 +.It ZyXEL NWD-271N +.El +.Sh EXAMPLES +Join an existing BSS network (i.e., connect to an access point): +.Bd -literal -offset indent +ifconfig wlan create wlandev otus0 inet 192.168.0.20 \e + netmask 0xffffff00 +.Ed +.Pp +Join a specific BSS network with network name +.Dq Li my_net : +.Pp +.Dl "ifconfig wlan create wlandev otus0 ssid my_net up" +.Pp +Join a specific BSS network with 64-bit WEP encryption: +.Bd -literal -offset indent +ifconfig wlan create wlandev otus0 ssid my_net \e + wepmode on wepkey 0x1234567890 weptxkey 1 up +.Ed +.Sh DIAGNOSTICS +.Bl -diag +.It "%s: failed load firmware of file otusfw-main" +For some reason, the driver was unable to read the microcode file from the +filesystem. +The file might be missing or corrupted. +.El +.Sh SEE ALSO +.Xr intro 1 , +.Xr netintro 4 , +.Xr otusfw 4 , +.Xr usb 4 , +.Xr wlan 4 , +.Xr arp 8 , +.Xr hostapd 8 , +.Xr ifconfig 8 , +.Xr wpa_supplicant 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 4.6 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Damien Bergamini Aq Mt damien@openbsd.org +and ported by +.An Adrian Chadd Aq Mt adrian@freebsd.org . +.Sh CAVEATS +The +.Nm +driver only supports 802.11a/b/g operations. +802.11 operation is not supported at this time. Added: head/share/man/man4/otusfw.4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man4/otusfw.4 Sat Sep 26 07:09:46 2015 (r288254) @@ -0,0 +1,169 @@ +.\" $FreeBSD$ +.\" +.\" Copyright (c) 2015 Adrian Chadd +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd September 25, 2015 +.Dt OTUS 4 +.Os +.Sh NAME +.Nm otus +.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network device +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your kernel configuration file: +.Bd -ragged -offset indent +.Cd "device ehci" +.Cd "device uhci" +.Cd "device ohci" +.Cd "device usb" +.Cd "device otus" +.Cd "device wlan" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, +place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +if_otus_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver supports USB 2.0 wireless network devices based on the Atheros +AR9170 chipset. +.Pp +The Atheros AR9170 is a draft-802.11n adapter that uses an external +radio to operate in either 2.4GHz only or 2.4GHz and 5GHz. +.Pp +The AR9101 radio supports 1T1R operation in 2GHz only. +.Pp +The AR9102 radio supports 2T2R operation in 2GHz only. +.Pp +The AR9104 radio supports 2T2R operation both 2GHz and 5GHz. +.Pp +These are the modes the +.Nm +driver can operate in: +.Bl -tag -width "IBSS-masterXX" +.It BSS mode +Also known as +.Em infrastructure +mode, this is used when associating with an access point, through +which all traffic passes. +This mode is the default. +.El +.Pp +The +.Nm +driver can be configured to use +Wired Equivalent Privacy (WEP) or +Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). +WPA is the de facto encryption standard for wireless networks. +It is strongly recommended that WEP +not be used as the sole mechanism +to secure wireless communication, +due to serious weaknesses in it. +.Pp +The +.Nm +driver can be configured at runtime with +.Xr ifconfig 8 . +.Sh FILES +The driver needs at least version 1.0 of the following firmware files, +which is loaded when an interface is attached: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It Pa /boot/kernel/otusfw-init.ko +.It Pa /boot/kernel/otusfw-main.ko +.El +.Sh HARDWARE +The +.Nm +driver provices support for Atheros AR9170 USB IEEE 802.11b/g/n +wireless network adapters, including: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It 3Com 3CRUSBN275 +.It Arcadyan WN7512 +.\" .It AVM FRITZ!WLAN USB Stick N +.It CACE AirPcap \&Nx +.It D-Link DWA-130 rev \&D1 +.It D-Link DWA-160 rev A1 +.It D-Link DWA-160 rev A2 +.It IO-Data WN-GDN/US2 +.It NEC Aterm WL300NU-G +.It Netgear WNDA3100 +.It Netgear WN111 v2 +.It Planex GW-US300 +.It SMC Networks SMCWUSB-N2 +.It TP-Link TL-WN821N v1, v2 +.It Ubiquiti SR71 USB +.It Unex DNUA-81 +.It Z-Com UB81 +.It Z-Com UB82 +.It ZyXEL NWD-271N +.El +.Sh EXAMPLES +Join an existing BSS network (i.e., connect to an access point): +.Bd -literal -offset indent +ifconfig wlan create wlandev otus0 inet 192.168.0.20 \e + netmask 0xffffff00 +.Ed +.Pp +Join a specific BSS network with network name +.Dq Li my_net : +.Pp +.Dl "ifconfig wlan create wlandev otus0 ssid my_net up" +.Pp +Join a specific BSS network with 64-bit WEP encryption: +.Bd -literal -offset indent +ifconfig wlan create wlandev otus0 ssid my_net \e + wepmode on wepkey 0x1234567890 weptxkey 1 up +.Ed +.Sh DIAGNOSTICS +.Bl -diag +.It "%s: failed load firmware of file otusfw-main" +For some reason, the driver was unable to read the microcode file from the +filesystem. +The file might be missing or corrupted. +.El +.Sh SEE ALSO +.Xr intro 1 , +.Xr netintro 4 , +.Xr otusfw 4 , +.Xr usb 4 , +.Xr wlan 4 , +.Xr arp 8 , +.Xr hostapd 8 , +.Xr ifconfig 8 , +.Xr wpa_supplicant 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 4.6 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Damien Bergamini Aq Mt damien@openbsd.org +and ported by +.An Adrian Chadd Aq Mt adrian@freebsd.org . +.Sh CAVEATS +The +.Nm +driver only supports 802.11a/b/g operations. +802.11 operation is not supported at this time. From owner-svn-src-head@freebsd.org Sat Sep 26 07:14:00 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E344FA09E6C; Sat, 26 Sep 2015 07:14:00 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D4578688; Sat, 26 Sep 2015 07:14:00 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q7E0YQ011789; Sat, 26 Sep 2015 07:14:00 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q7E0jS011788; Sat, 26 Sep 2015 07:14:00 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509260714.t8Q7E0jS011788@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 07:14:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288255 - head/sys/dev/otus X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:14:01 -0000 Author: adrian Date: Sat Sep 26 07:14:00 2015 New Revision: 288255 URL: https://svnweb.freebsd.org/changeset/base/288255 Log: Fix a bug in the TX command handling - log when a too-large payload is sent, and fix a bug I found when doing so. Modified: head/sys/dev/otus/if_otus.c Modified: head/sys/dev/otus/if_otus.c ============================================================================== --- head/sys/dev/otus/if_otus.c Sat Sep 26 07:09:46 2015 (r288254) +++ head/sys/dev/otus/if_otus.c Sat Sep 26 07:14:00 2015 (r288255) @@ -1292,6 +1292,14 @@ otus_cmd(struct otus_softc *sc, uint8_t /* Always bulk-out a multiple of 4 bytes. */ xferlen = (sizeof (*hdr) + ilen + 3) & ~3; + if (xferlen > OTUS_MAX_TXCMDSZ) { + device_printf(sc->sc_dev, "%s: command (0x%02x) size (%d) > %d\n", + __func__, + code, + xferlen, + OTUS_MAX_TXCMDSZ); + return (EIO); + } cmd = otus_get_txcmd(sc); if (cmd == NULL) { @@ -1346,7 +1354,7 @@ otus_write(struct otus_softc *sc, uint32 sc->write_buf[sc->write_idx].reg = htole32(reg); sc->write_buf[sc->write_idx].val = htole32(val); - if (++sc->write_idx > AR_MAX_WRITE_IDX) + if (++sc->write_idx > (AR_MAX_WRITE_IDX-1)) (void)otus_write_barrier(sc); } From owner-svn-src-head@freebsd.org Sat Sep 26 07:18:08 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 281929B811C; Sat, 26 Sep 2015 07:18:08 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1862E894; Sat, 26 Sep 2015 07:18:08 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q7I7ZX012065; Sat, 26 Sep 2015 07:18:07 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q7I64C012056; Sat, 26 Sep 2015 07:18:06 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201509260718.t8Q7I64C012056@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sat, 26 Sep 2015 07:18:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288256 - in head/sys: amd64/amd64 arm/arm arm64/arm64 i386/i386 mips/mips X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:18:08 -0000 Author: alc Date: Sat Sep 26 07:18:05 2015 New Revision: 288256 URL: https://svnweb.freebsd.org/changeset/base/288256 Log: Exploit r288122 to address a cosmetic issue. Since PV chunk pages don't belong to a vm object, they can't be paged out. Since they can't be paged out, they are never enqueued in a paging queue. Nonetheless, passing PQ_INACTIVE to vm_page_unwire() creates the appearance that these pages are being enqueued in the inactive queue. As of r288122, we can avoid this false impression by passing PQ_NONE. Submitted by: kmacy (an earlier version) Differential Revision: https://reviews.freebsd.org/D1674 Modified: head/sys/amd64/amd64/pmap.c head/sys/arm/arm/pmap-v6-new.c head/sys/arm/arm/pmap-v6.c head/sys/arm64/arm64/pmap.c head/sys/i386/i386/pmap.c head/sys/mips/mips/pmap.c Modified: head/sys/amd64/amd64/pmap.c ============================================================================== --- head/sys/amd64/amd64/pmap.c Sat Sep 26 07:14:00 2015 (r288255) +++ head/sys/amd64/amd64/pmap.c Sat Sep 26 07:18:05 2015 (r288256) @@ -2860,7 +2860,7 @@ free_pv_chunk(struct pv_chunk *pc) /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc)); dump_drop_page(m->phys_addr); - vm_page_unwire(m, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); } Modified: head/sys/arm/arm/pmap-v6-new.c ============================================================================== --- head/sys/arm/arm/pmap-v6-new.c Sat Sep 26 07:14:00 2015 (r288255) +++ head/sys/arm/arm/pmap-v6-new.c Sat Sep 26 07:18:05 2015 (r288256) @@ -2866,7 +2866,7 @@ free_pv_chunk(struct pv_chunk *pc) /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc)); pmap_qremove((vm_offset_t)pc, 1); - vm_page_unwire(m, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); pmap_pte2list_free(&pv_vafree, (vm_offset_t)pc); } Modified: head/sys/arm/arm/pmap-v6.c ============================================================================== --- head/sys/arm/arm/pmap-v6.c Sat Sep 26 07:14:00 2015 (r288255) +++ head/sys/arm/arm/pmap-v6.c Sat Sep 26 07:18:05 2015 (r288256) @@ -4292,7 +4292,7 @@ pmap_free_pv_chunk(struct pv_chunk *pc) /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc)); pmap_qremove((vm_offset_t)pc, 1); - vm_page_unwire(m, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); pmap_ptelist_free(&pv_vafree, (vm_offset_t)pc); Modified: head/sys/arm64/arm64/pmap.c ============================================================================== --- head/sys/arm64/arm64/pmap.c Sat Sep 26 07:14:00 2015 (r288255) +++ head/sys/arm64/arm64/pmap.c Sat Sep 26 07:18:05 2015 (r288256) @@ -1517,7 +1517,7 @@ free_pv_chunk(struct pv_chunk *pc) /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc)); dump_drop_page(m->phys_addr); - vm_page_unwire(m, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); } Modified: head/sys/i386/i386/pmap.c ============================================================================== --- head/sys/i386/i386/pmap.c Sat Sep 26 07:14:00 2015 (r288255) +++ head/sys/i386/i386/pmap.c Sat Sep 26 07:18:05 2015 (r288256) @@ -2312,7 +2312,7 @@ free_pv_chunk(struct pv_chunk *pc) /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc)); pmap_qremove((vm_offset_t)pc, 1); - vm_page_unwire(m, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); pmap_ptelist_free(&pv_vafree, (vm_offset_t)pc); } Modified: head/sys/mips/mips/pmap.c ============================================================================== --- head/sys/mips/mips/pmap.c Sat Sep 26 07:14:00 2015 (r288255) +++ head/sys/mips/mips/pmap.c Sat Sep 26 07:18:05 2015 (r288256) @@ -1527,7 +1527,7 @@ free_pv_chunk(struct pv_chunk *pc) PV_STAT(pc_chunk_frees++); /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(MIPS_DIRECT_TO_PHYS((vm_offset_t)pc)); - vm_page_unwire(m, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); } From owner-svn-src-head@freebsd.org Sat Sep 26 07:25:54 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 86FCF9B8768; Sat, 26 Sep 2015 07:25:54 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 77C07D2F; Sat, 26 Sep 2015 07:25:54 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q7PsdN016108; Sat, 26 Sep 2015 07:25:54 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q7PsSF016107; Sat, 26 Sep 2015 07:25:54 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509260725.t8Q7PsSF016107@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 07:25:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288257 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:25:54 -0000 Author: adrian Date: Sat Sep 26 07:25:53 2015 New Revision: 288257 URL: https://svnweb.freebsd.org/changeset/base/288257 Log: * Add 11n HT40 support - i needed to send both HTINFO and HTCAP fields in the join message so the firmware would pick it up. * Strip out the direct hardware fiddling for 40MHz mode - the firmware we're using doesn't require it (the rtl8712su firmware does; it is less 'fullmac' than what we're using.) * Fix the mbuf handling during errors - rsu_tx shouldn't free mbufs; it's up to the caller to do so. This brings it in line with what other drivers do or should be doing. Tested: * RTL8712, HT40 channel, STA mode (during this commit) Modified: head/sys/dev/usb/wlan/if_rsu.c Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Sat Sep 26 07:18:05 2015 (r288256) +++ head/sys/dev/usb/wlan/if_rsu.c Sat Sep 26 07:25:53 2015 (r288257) @@ -22,7 +22,6 @@ __FBSDID("$FreeBSD$"); * Driver for Realtek RTL8188SU/RTL8191SU/RTL8192SU. * * TODO: - * o 11n HT40 support * o h/w crypto * o hostap / ibss / mesh * o sensible RSSI levels @@ -490,14 +489,7 @@ rsu_attach(device_t self) IEEE80211_HTC_AMSDU | IEEE80211_HTCAP_MAXAMSDU_3839 | IEEE80211_HTCAP_SMPS_OFF; - - /* - * XXX HT40 isn't working in this driver yet - there's - * something missing. Disable it for now. - */ -#if 0 ic->ic_htcaps |= IEEE80211_HTCAP_CHWIDTH40; -#endif /* set number of spatial streams */ ic->ic_txstream = 1; @@ -1378,8 +1370,10 @@ rsu_join_bss(struct rsu_softc *sc, struc if ((ic->ic_flags & IEEE80211_F_WME) && (ni->ni_ies.wme_ie != NULL)) frm = ieee80211_add_wme_info(frm, &ic->ic_wme); - if (ni->ni_flags & IEEE80211_NODE_HT) + if (ni->ni_flags & IEEE80211_NODE_HT) { frm = ieee80211_add_htcap(frm, ni); + frm = ieee80211_add_htinfo(frm, ni); + } bss->ieslen = htole32(frm - (uint8_t *)fixed); bss->len = htole32(((frm - buf) + 3) & ~3); RSU_DPRINTF(sc, RSU_DEBUG_RESET | RSU_DEBUG_FWCMD, @@ -1844,6 +1838,10 @@ rsu_bulk_rx_callback(struct usb_xfer *xf /* FALLTHROUGH */ case USB_ST_SETUP: tr_setup: + /* + * XXX TODO: if we have an mbuf list, but then + * we hit data == NULL, what now? + */ data = STAILQ_FIRST(&sc->sc_rx_inactive); if (data == NULL) { KASSERT(m == NULL, ("mbuf isn't NULL")); @@ -2001,6 +1999,11 @@ rsu_bulk_tx_callback_h2c(struct usb_xfer rsu_start(sc); } +/* + * Transmit the given frame. + * + * This doesn't free the node or mbuf upon failure. + */ static int rsu_tx_start(struct rsu_softc *sc, struct ieee80211_node *ni, struct mbuf *m0, struct rsu_data *data) @@ -2031,7 +2034,6 @@ rsu_tx_start(struct rsu_softc *sc, struc device_printf(sc->sc_dev, "ieee80211_crypto_encap returns NULL.\n"); /* XXX we don't expect the fragmented frames */ - m_freem(m0); return (ENOBUFS); } wh = mtod(m0, struct ieee80211_frame *); @@ -2147,6 +2149,11 @@ rsu_transmit(struct ieee80211com *ic, st RSU_UNLOCK(sc); return (ENXIO); } + + /* + * XXX TODO: ensure that we treat 'm' as a list of frames + * to transmit! + */ error = mbufq_enqueue(&sc->sc_snd, m); if (error) { RSU_DPRINTF(sc, RSU_DEBUG_TX, @@ -2207,6 +2214,7 @@ _rsu_start(struct rsu_softc *sc) IFCOUNTER_OERRORS, 1); rsu_freebuf(sc, bf); ieee80211_free_node(ni); + m_freem(m); break; } } @@ -2720,6 +2728,7 @@ rsu_raw_xmit(struct ieee80211_node *ni, } if (rsu_tx_start(sc, ni, m, bf) != 0) { ieee80211_free_node(ni); + m_freem(m); rsu_freebuf(sc, bf); RSU_UNLOCK(sc); return (EIO); @@ -2809,19 +2818,6 @@ rsu_init(struct rsu_softc *sc) goto fail; } - if (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) { - /* Enable 40MHz mode. */ - error = rsu_fw_iocmd(sc, - SM(R92S_IOCMD_CLASS, 0xf4) | - SM(R92S_IOCMD_INDEX, 0x00) | - SM(R92S_IOCMD_VALUE, 0x0007)); - if (error != 0) { - device_printf(sc->sc_dev, - "could not enable 40MHz mode\n"); - goto fail; - } - } - sc->sc_scan_pass = 0; usbd_transfer_start(sc->sc_xfer[RSU_BULK_RX]); From owner-svn-src-head@freebsd.org Sat Sep 26 07:30:46 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2D25B9B8B4D; Sat, 26 Sep 2015 07:30:46 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1E487F9A; Sat, 26 Sep 2015 07:30:46 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8Q7UjrL019503; Sat, 26 Sep 2015 07:30:45 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8Q7UjsJ019502; Sat, 26 Sep 2015 07:30:45 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201509260730.t8Q7UjsJ019502@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sat, 26 Sep 2015 07:30:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288258 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:30:46 -0000 Author: kib Date: Sat Sep 26 07:30:45 2015 New Revision: 288258 URL: https://svnweb.freebsd.org/changeset/base/288258 Log: Make the __bitcount*() functions unconditionally available, by moving them out of the #if _BSD_VISIBLE block. Other headers may depend on __bitcount(). The dependencies can be a header not specified by POSIX, and then namespace restrictions by _XOPEN_SOURCE are not applicable, as it was reported. Or, we might grow an implementation of some POSIX facility using __bitcount(), which also should work. Reported by: Jason Schulz Discussed with: jhb Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Modified: head/sys/sys/types.h Modified: head/sys/sys/types.h ============================================================================== --- head/sys/sys/types.h Sat Sep 26 07:25:53 2015 (r288257) +++ head/sys/sys/types.h Sat Sep 26 07:30:45 2015 (r288258) @@ -290,9 +290,6 @@ typedef _Bool bool; * The following are all things that really shouldn't exist in this header, * since its purpose is to provide typedefs, not miscellaneous doodads. */ -#if __BSD_VISIBLE - -#include #ifdef __POPCNT__ #define __bitcount64(x) __builtin_popcountll((__uint64_t)(x)) @@ -356,6 +353,10 @@ __bitcount64(__uint64_t _x) #define __bitcount(x) __bitcount32((unsigned int)(x)) #endif +#if __BSD_VISIBLE + +#include + /* * minor() gives a cookie instead of an index since we don't want to * change the meanings of bits 0-15 or waste time and space shifting From owner-svn-src-head@freebsd.org Sat Sep 26 07:36:45 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7DFC4A0807B; Sat, 26 Sep 2015 07:36:45 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EB1A47E7; Sat, 26 Sep 2015 07:36:44 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id t8Q7ackT062588 (version=TLSv1 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Sat, 26 Sep 2015 10:36:39 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua t8Q7ackT062588 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id t8Q7acAd062587; Sat, 26 Sep 2015 10:36:38 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sat, 26 Sep 2015 10:36:38 +0300 From: Konstantin Belousov To: Konstantin Belousov Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r288258 - head/sys/sys Message-ID: <20150926073638.GS67105@kib.kiev.ua> References: <201509260730.t8Q7UjsJ019502@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201509260730.t8Q7UjsJ019502@repo.freebsd.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 07:36:45 -0000 On Sat, Sep 26, 2015 at 07:30:45AM +0000, Konstantin Belousov wrote: > Author: kib > Date: Sat Sep 26 07:30:45 2015 > New Revision: 288258 > URL: https://svnweb.freebsd.org/changeset/base/288258 > > Log: > Make the __bitcount*() functions unconditionally available, by moving > them out of the #if _BSD_VISIBLE block. Other headers may depend on > __bitcount(). The dependencies can be a header not specified by > POSIX, and then namespace restrictions by _XOPEN_SOURCE are not > applicable, as it was reported. Or, we might grow an implementation > of some POSIX facility using __bitcount(), which also should work. It was ought to be mentioned in the commit message that all symbols moved out of the _BSD_VISIBLE protection are in the implementation-private namespace. In other words, by making the symbols declared unconditionally, we are still compliant. From owner-svn-src-head@freebsd.org Sat Sep 26 11:28:49 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 86057A08C82; Sat, 26 Sep 2015 11:28:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 755A47B5; Sat, 26 Sep 2015 11:28:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QBSn36017644; Sat, 26 Sep 2015 11:28:49 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QBSkgb017628; Sat, 26 Sep 2015 11:28:46 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509261128.t8QBSkgb017628@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sat, 26 Sep 2015 11:28:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288259 - in head: sys/cam/ctl usr.sbin/ctladm usr.sbin/ctld X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 11:28:49 -0000 Author: mav Date: Sat Sep 26 11:28:45 2015 New Revision: 288259 URL: https://svnweb.freebsd.org/changeset/base/288259 Log: Remove some duplicate, legacy, dead and questionable code. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_backend_block.c head/sys/cam/ctl/ctl_backend_ramdisk.c head/sys/cam/ctl/ctl_frontend_cam_sim.c head/sys/cam/ctl/ctl_ioctl.h head/sys/cam/ctl/ctl_private.h head/sys/cam/ctl/ctl_util.c head/sys/cam/ctl/ctl_util.h head/usr.sbin/ctladm/ctladm.8 head/usr.sbin/ctladm/ctladm.c head/usr.sbin/ctld/kernel.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl.c Sat Sep 26 11:28:45 2015 (r288259) @@ -1754,12 +1754,7 @@ ctl_init(void) softc->io_zone = uma_zcreate("CTL IO", sizeof(union ctl_io), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); softc->open_count = 0; - - /* - * Default to actually sending a SYNCHRONIZE CACHE command down to - * the drive. - */ - softc->flags = CTL_FLAG_REAL_SYNC; + softc->flags = 0; SYSCTL_ADD_INT(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree), OID_AUTO, "ha_mode", CTLFLAG_RDTUN, (int *)&softc->ha_mode, 0, @@ -2586,112 +2581,6 @@ ctl_ioctl(struct cdev *dev, u_long cmd, mtx_unlock(&softc->ctl_lock); break; } - case CTL_GET_PORT_LIST: { - struct ctl_port *port; - struct ctl_port_list *list; - int i; - - list = (struct ctl_port_list *)addr; - - if (list->alloc_len != (list->alloc_num * - sizeof(struct ctl_port_entry))) { - printf("%s: CTL_GET_PORT_LIST: alloc_len %u != " - "alloc_num %u * sizeof(struct ctl_port_entry) " - "%zu\n", __func__, list->alloc_len, - list->alloc_num, sizeof(struct ctl_port_entry)); - retval = EINVAL; - break; - } - list->fill_len = 0; - list->fill_num = 0; - list->dropped_num = 0; - i = 0; - mtx_lock(&softc->ctl_lock); - STAILQ_FOREACH(port, &softc->port_list, links) { - struct ctl_port_entry entry, *list_entry; - - if (list->fill_num >= list->alloc_num) { - list->dropped_num++; - continue; - } - - entry.port_type = port->port_type; - strlcpy(entry.port_name, port->port_name, - sizeof(entry.port_name)); - entry.targ_port = port->targ_port; - entry.physical_port = port->physical_port; - entry.virtual_port = port->virtual_port; - entry.wwnn = port->wwnn; - entry.wwpn = port->wwpn; - if (port->status & CTL_PORT_STATUS_ONLINE) - entry.online = 1; - else - entry.online = 0; - - list_entry = &list->entries[i]; - - retval = copyout(&entry, list_entry, sizeof(entry)); - if (retval != 0) { - printf("%s: CTL_GET_PORT_LIST: copyout " - "returned %d\n", __func__, retval); - break; - } - i++; - list->fill_num++; - list->fill_len += sizeof(entry); - } - mtx_unlock(&softc->ctl_lock); - - /* - * If this is non-zero, we had a copyout fault, so there's - * probably no point in attempting to set the status inside - * the structure. - */ - if (retval != 0) - break; - - if (list->dropped_num > 0) - list->status = CTL_PORT_LIST_NEED_MORE_SPACE; - else - list->status = CTL_PORT_LIST_OK; - break; - } - case CTL_DUMP_OOA: { - union ctl_io *io; - char printbuf[128]; - struct sbuf sb; - - mtx_lock(&softc->ctl_lock); - printf("Dumping OOA queues:\n"); - STAILQ_FOREACH(lun, &softc->lun_list, links) { - mtx_lock(&lun->lun_lock); - for (io = (union ctl_io *)TAILQ_FIRST( - &lun->ooa_queue); io != NULL; - io = (union ctl_io *)TAILQ_NEXT(&io->io_hdr, - ooa_links)) { - sbuf_new(&sb, printbuf, sizeof(printbuf), - SBUF_FIXEDLEN); - sbuf_printf(&sb, "LUN %jd tag 0x%04x%s%s%s%s: ", - (intmax_t)lun->lun, - io->scsiio.tag_num, - (io->io_hdr.flags & - CTL_FLAG_BLOCKED) ? "" : " BLOCKED", - (io->io_hdr.flags & - CTL_FLAG_DMA_INPROG) ? " DMA" : "", - (io->io_hdr.flags & - CTL_FLAG_ABORT) ? " ABORT" : "", - (io->io_hdr.flags & - CTL_FLAG_IS_WAS_ON_RTR) ? " RTR" : ""); - ctl_scsi_command_string(&io->scsiio, NULL, &sb); - sbuf_finish(&sb); - printf("%s\n", sbuf_data(&sb)); - } - mtx_unlock(&lun->lun_lock); - } - printf("OOA queues dump done\n"); - mtx_unlock(&softc->ctl_lock); - break; - } case CTL_GET_OOA: { struct ctl_ooa *ooa_hdr; struct ctl_ooa_entry *entries; @@ -2774,38 +2663,6 @@ ctl_ioctl(struct cdev *dev, u_long cmd, free(entries, M_CTL); break; } - case CTL_CHECK_OOA: { - union ctl_io *io; - struct ctl_ooa_info *ooa_info; - - - ooa_info = (struct ctl_ooa_info *)addr; - - if (ooa_info->lun_id >= CTL_MAX_LUNS) { - ooa_info->status = CTL_OOA_INVALID_LUN; - break; - } - mtx_lock(&softc->ctl_lock); - lun = softc->ctl_luns[ooa_info->lun_id]; - if (lun == NULL) { - mtx_unlock(&softc->ctl_lock); - ooa_info->status = CTL_OOA_INVALID_LUN; - break; - } - mtx_lock(&lun->lun_lock); - mtx_unlock(&softc->ctl_lock); - ooa_info->num_entries = 0; - for (io = (union ctl_io *)TAILQ_FIRST(&lun->ooa_queue); - io != NULL; io = (union ctl_io *)TAILQ_NEXT( - &io->io_hdr, ooa_links)) { - ooa_info->num_entries++; - } - mtx_unlock(&lun->lun_lock); - - ooa_info->status = CTL_OOA_SUCCESS; - - break; - } case CTL_DELAY_IO: { struct ctl_io_delay_info *delay_info; @@ -2861,70 +2718,6 @@ ctl_ioctl(struct cdev *dev, u_long cmd, #endif /* CTL_IO_DELAY */ break; } - case CTL_REALSYNC_SET: { - int *syncstate; - - syncstate = (int *)addr; - - mtx_lock(&softc->ctl_lock); - switch (*syncstate) { - case 0: - softc->flags &= ~CTL_FLAG_REAL_SYNC; - break; - case 1: - softc->flags |= CTL_FLAG_REAL_SYNC; - break; - default: - retval = EINVAL; - break; - } - mtx_unlock(&softc->ctl_lock); - break; - } - case CTL_REALSYNC_GET: { - int *syncstate; - - syncstate = (int*)addr; - - mtx_lock(&softc->ctl_lock); - if (softc->flags & CTL_FLAG_REAL_SYNC) - *syncstate = 1; - else - *syncstate = 0; - mtx_unlock(&softc->ctl_lock); - - break; - } - case CTL_SETSYNC: - case CTL_GETSYNC: { - struct ctl_sync_info *sync_info; - - sync_info = (struct ctl_sync_info *)addr; - - mtx_lock(&softc->ctl_lock); - lun = softc->ctl_luns[sync_info->lun_id]; - if (lun == NULL) { - mtx_unlock(&softc->ctl_lock); - sync_info->status = CTL_GS_SYNC_NO_LUN; - break; - } - /* - * Get or set the sync interval. We're not bounds checking - * in the set case, hopefully the user won't do something - * silly. - */ - mtx_lock(&lun->lun_lock); - mtx_unlock(&softc->ctl_lock); - if (cmd == CTL_GETSYNC) - sync_info->sync_interval = lun->sync_interval; - else - lun->sync_interval = sync_info->sync_interval; - mtx_unlock(&lun->lun_lock); - - sync_info->status = CTL_GS_SYNC_OK; - - break; - } case CTL_GETSTATS: { struct ctl_stats *stats; int i; @@ -5301,8 +5094,6 @@ ctl_start_stop(struct ctl_scsiio *ctsio) CTL_DEBUG_PRINT(("ctl_start_stop\n")); lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - retval = 0; - cdb = (struct scsi_start_stop_unit *)ctsio->cdb; /* @@ -5360,54 +5151,27 @@ ctl_start_stop(struct ctl_scsiio *ctsio) } /* - * XXX KDM Copan-specific offline behavior. - * Figure out a reasonable way to port this? - */ -#ifdef NEEDTOPORT - mtx_lock(&lun->lun_lock); - - if (((cdb->byte2 & SSS_ONOFFLINE) == 0) - && (lun->flags & CTL_LUN_OFFLINE)) { - /* - * If the LUN is offline, and the on/offline bit isn't set, - * reject the start or stop. Otherwise, let it through. - */ - mtx_unlock(&lun->lun_lock); - ctl_set_lun_not_ready(ctsio); + * In the non-immediate case, we send the request to + * the backend and return status to the user when + * it is done. + * + * In the immediate case, we allocate a new ctl_io + * to hold a copy of the request, and send that to + * the backend. We then set good status on the + * user's request and return it immediately. + */ + if (cdb->byte2 & SSS_IMMED) { + union ctl_io *new_io; + + new_io = ctl_alloc_io(ctsio->io_hdr.pool); + ctl_copy_io((union ctl_io *)ctsio, new_io); + retval = lun->backend->config_write(new_io); + ctl_set_success(ctsio); ctl_done((union ctl_io *)ctsio); } else { - mtx_unlock(&lun->lun_lock); -#endif /* NEEDTOPORT */ - /* - * This could be a start or a stop when we're online, - * or a stop/offline or start/online. A start or stop when - * we're offline is covered in the case above. - */ - /* - * In the non-immediate case, we send the request to - * the backend and return status to the user when - * it is done. - * - * In the immediate case, we allocate a new ctl_io - * to hold a copy of the request, and send that to - * the backend. We then set good status on the - * user's request and return it immediately. - */ - if (cdb->byte2 & SSS_IMMED) { - union ctl_io *new_io; - - new_io = ctl_alloc_io(ctsio->io_hdr.pool); - ctl_copy_io((union ctl_io *)ctsio, new_io); - retval = lun->backend->config_write(new_io); - ctl_set_success(ctsio); - ctl_done((union ctl_io *)ctsio); - } else { - retval = lun->backend->config_write( - (union ctl_io *)ctsio); - } -#ifdef NEEDTOPORT + retval = lun->backend->config_write( + (union ctl_io *)ctsio); } -#endif return (retval); } @@ -5485,25 +5249,9 @@ ctl_sync_cache(struct ctl_scsiio *ctsio) lbalen->lba = starting_lba; lbalen->len = block_count; lbalen->flags = byte2; - - /* - * Check to see whether we're configured to send the SYNCHRONIZE - * CACHE command directly to the back end. - */ - mtx_lock(&lun->lun_lock); - if ((softc->flags & CTL_FLAG_REAL_SYNC) - && (++(lun->sync_count) >= lun->sync_interval)) { - lun->sync_count = 0; - mtx_unlock(&lun->lun_lock); - retval = lun->backend->config_write((union ctl_io *)ctsio); - } else { - mtx_unlock(&lun->lun_lock); - ctl_set_success(ctsio); - ctl_done((union ctl_io *)ctsio); - } + retval = lun->backend->config_write((union ctl_io *)ctsio); bailout: - return (retval); } @@ -6140,9 +5888,6 @@ ctl_debugconf_sp_sense_handler(struct ct page->ctl_time_io_secs[1] = ctl_time_io_secs >> 0; break; default: -#ifdef NEEDTOPORT - EPRINT(0, "Invalid PC %d!!", pc); -#endif /* NEEDTOPORT */ break; } return (0); @@ -7798,18 +7543,6 @@ retry: * sync), we've got a problem. */ if (key_count >= lun->pr_key_count) { -#ifdef NEEDTOPORT - csevent_log(CSC_CTL | CSC_SHELF_SW | - CTL_PR_ERROR, - csevent_LogType_Fault, - csevent_AlertLevel_Yellow, - csevent_FRU_ShelfController, - csevent_FRU_Firmware, - csevent_FRU_Unknown, - "registered keys %d >= key " - "count %d", key_count, - lun->pr_key_count); -#endif key_count++; continue; } Modified: head/sys/cam/ctl/ctl_backend_block.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_block.c Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_backend_block.c Sat Sep 26 11:28:45 2015 (r288259) @@ -2742,18 +2742,8 @@ ctl_be_block_config_write(union ctl_io * if (cdb->how & SSS_START) retval = ctl_start_lun(cbe_lun); - else { + else retval = ctl_stop_lun(cbe_lun); - /* - * XXX KDM Copan-specific offline behavior. - * Figure out a reasonable way to port this? - */ -#ifdef NEEDTOPORT - if ((retval == 0) - && (cdb->byte2 & SSS_ONOFFLINE)) - retval = ctl_lun_offline(cbe_lun); -#endif - } /* * In general, the above routines should not fail. They Modified: head/sys/cam/ctl/ctl_backend_ramdisk.c ============================================================================== --- head/sys/cam/ctl/ctl_backend_ramdisk.c Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_backend_ramdisk.c Sat Sep 26 11:28:45 2015 (r288259) @@ -877,14 +877,8 @@ ctl_backend_ramdisk_config_write(union c if (cdb->how & SSS_START) retval = ctl_start_lun(cbe_lun); - else { + else retval = ctl_stop_lun(cbe_lun); -#ifdef NEEDTOPORT - if ((retval == 0) - && (cdb->byte2 & SSS_ONOFFLINE)) - retval = ctl_lun_offline(cbe_lun); -#endif - } /* * In general, the above routines should not fail. They Modified: head/sys/cam/ctl/ctl_frontend_cam_sim.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_cam_sim.c Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_frontend_cam_sim.c Sat Sep 26 11:28:45 2015 (r288259) @@ -130,9 +130,6 @@ cfcs_init(void) struct cfcs_softc *softc; struct ccb_setasync csa; struct ctl_port *port; -#ifdef NEEDTOPORT - char wwnn[8]; -#endif int retval; softc = &cfcs_softc; @@ -167,15 +164,6 @@ cfcs_init(void) } /* - * Get the WWNN out of the database, and create a WWPN as well. - */ -#ifdef NEEDTOPORT - ddb_GetWWNN((char *)wwnn); - softc->wwnn = be64dec(wwnn); - softc->wwpn = softc->wwnn + (softc->port.targ_port & 0xff); -#endif - - /* * If the CTL frontend didn't tell us what our WWNN/WWPN is, go * ahead and set something random. */ Modified: head/sys/cam/ctl/ctl_ioctl.h ============================================================================== --- head/sys/cam/ctl/ctl_ioctl.h Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_ioctl.h Sat Sep 26 11:28:45 2015 (r288259) @@ -81,17 +81,6 @@ #define CTL_MINOR 225 typedef enum { - CTL_OOA_INVALID_LUN, - CTL_OOA_SUCCESS -} ctl_ooa_status; - -struct ctl_ooa_info { - uint32_t lun_id; /* Passed in to CTL */ - uint32_t num_entries; /* Returned from CTL */ - ctl_ooa_status status; /* Returned from CTL */ -}; - -typedef enum { CTL_DELAY_TYPE_NONE, CTL_DELAY_TYPE_CONT, CTL_DELAY_TYPE_ONESHOT @@ -121,22 +110,6 @@ struct ctl_io_delay_info { }; typedef enum { - CTL_GS_SYNC_NONE, - CTL_GS_SYNC_OK, - CTL_GS_SYNC_NO_LUN -} ctl_gs_sync_status; - -/* - * The target and LUN id specify which device to modify. The sync interval - * means that we will let through every N SYNCHRONIZE CACHE commands. - */ -struct ctl_sync_info { - uint32_t lun_id; /* passed to kernel */ - int sync_interval; /* depends on whether get/set */ - ctl_gs_sync_status status; /* passed from kernel */ -}; - -typedef enum { CTL_STATS_NO_IO, CTL_STATS_READ, CTL_STATS_WRITE @@ -322,23 +295,6 @@ struct ctl_ooa { }; typedef enum { - CTL_PORT_LIST_NONE, - CTL_PORT_LIST_OK, - CTL_PORT_LIST_NEED_MORE_SPACE, - CTL_PORT_LIST_ERROR -} ctl_port_list_status; - -struct ctl_port_list { - uint32_t alloc_len; /* passed to kernel */ - uint32_t alloc_num; /* passed to kernel */ - struct ctl_port_entry *entries; /* filled in kernel */ - uint32_t fill_len; /* passed to userland */ - uint32_t fill_num; /* passed to userland */ - uint32_t dropped_num; /* passed to userland */ - ctl_port_list_status status; /* passed to userland */ -}; - -typedef enum { CTL_LUN_NOSTATUS, CTL_LUN_OK, CTL_LUN_ERROR, @@ -804,18 +760,11 @@ struct ctl_lun_map { #define CTL_IO _IOWR(CTL_MINOR, 0x00, union ctl_io) #define CTL_ENABLE_PORT _IOW(CTL_MINOR, 0x04, struct ctl_port_entry) #define CTL_DISABLE_PORT _IOW(CTL_MINOR, 0x05, struct ctl_port_entry) -#define CTL_DUMP_OOA _IO(CTL_MINOR, 0x06) -#define CTL_CHECK_OOA _IOWR(CTL_MINOR, 0x07, struct ctl_ooa_info) #define CTL_DELAY_IO _IOWR(CTL_MINOR, 0x10, struct ctl_io_delay_info) -#define CTL_REALSYNC_GET _IOR(CTL_MINOR, 0x11, int) -#define CTL_REALSYNC_SET _IOW(CTL_MINOR, 0x12, int) -#define CTL_SETSYNC _IOWR(CTL_MINOR, 0x13, struct ctl_sync_info) -#define CTL_GETSYNC _IOWR(CTL_MINOR, 0x14, struct ctl_sync_info) #define CTL_GETSTATS _IOWR(CTL_MINOR, 0x15, struct ctl_stats) #define CTL_ERROR_INJECT _IOWR(CTL_MINOR, 0x16, struct ctl_error_desc) #define CTL_GET_OOA _IOWR(CTL_MINOR, 0x18, struct ctl_ooa) #define CTL_DUMP_STRUCTS _IO(CTL_MINOR, 0x19) -#define CTL_GET_PORT_LIST _IOWR(CTL_MINOR, 0x20, struct ctl_port_list) #define CTL_LUN_REQ _IOWR(CTL_MINOR, 0x21, struct ctl_lun_req) #define CTL_LUN_LIST _IOWR(CTL_MINOR, 0x22, struct ctl_lun_list) #define CTL_ERROR_INJECT_DELETE _IOW(CTL_MINOR, 0x23, struct ctl_error_desc) Modified: head/sys/cam/ctl/ctl_private.h ============================================================================== --- head/sys/cam/ctl/ctl_private.h Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_private.h Sat Sep 26 11:28:45 2015 (r288259) @@ -345,17 +345,6 @@ struct ctl_lun_delay_info { uint32_t done_delay; }; -typedef enum { - CTL_ERR_INJ_NONE = 0x00, - CTL_ERR_INJ_ABORTED = 0x01 -} ctl_err_inject_flags; - -typedef enum { - CTL_PR_FLAG_NONE = 0x00, - CTL_PR_FLAG_REGISTERED = 0x01, - CTL_PR_FLAG_ACTIVE_RES = 0x02 -} ctl_per_res_flags; - #define CTL_PR_ALL_REGISTRANTS 0xFFFFFFFF #define CTL_PR_NO_RESERVATION 0xFFFFFFF0 @@ -381,10 +370,7 @@ struct ctl_lun { struct ctl_softc *ctl_softc; struct ctl_be_lun *be_lun; struct ctl_backend_driver *backend; - int io_count; struct ctl_lun_delay_info delay_info; - int sync_interval; - int sync_count; #ifdef CTL_TIME_IO sbintime_t idle_time; sbintime_t last_busy; @@ -392,7 +378,6 @@ struct ctl_lun { TAILQ_HEAD(ctl_ooaq, ctl_io_hdr) ooa_queue; TAILQ_HEAD(ctl_blockq,ctl_io_hdr) blocked_queue; STAILQ_ENTRY(ctl_lun) links; - STAILQ_ENTRY(ctl_lun) run_links; #ifdef CTL_WITH_CA uint32_t have_ca[CTL_MAX_INITIATORS >> 5]; struct scsi_sense_data pending_sense[CTL_MAX_INITIATORS]; @@ -415,7 +400,6 @@ struct ctl_lun { }; typedef enum { - CTL_FLAG_REAL_SYNC = 0x02, CTL_FLAG_ACTIVE_SHELF = 0x04 } ctl_gen_flags; Modified: head/sys/cam/ctl/ctl_util.c ============================================================================== --- head/sys/cam/ctl/ctl_util.c Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_util.c Sat Sep 26 11:28:45 2015 (r288259) @@ -489,8 +489,7 @@ ctl_scsi_mode_sense(union ctl_io *io, ui void ctl_scsi_start_stop(union ctl_io *io, int start, int load_eject, int immediate, - int power_conditions, int onoffline __unused, - ctl_tag_type tag_type, uint8_t control) + int power_conditions, ctl_tag_type tag_type, uint8_t control) { struct scsi_start_stop_unit *cdb; @@ -501,10 +500,6 @@ ctl_scsi_start_stop(union ctl_io *io, in cdb->opcode = START_STOP_UNIT; if (immediate) cdb->byte2 |= SSS_IMMED; -#ifdef NEEDTOPORT - if (onoffline) - cdb->byte2 |= SSS_ONOFFLINE; -#endif cdb->how = power_conditions; if (load_eject) cdb->how |= SSS_LOEJ; @@ -849,24 +844,8 @@ void ctl_io_error_print(union ctl_io *io, struct scsi_inquiry_data *inq_data) { char str[512]; -#ifdef NEEDTOPORT - char *message; - char *line; - - message = io_error_string(io, inq_data, str, sizeof(str)); - - for (line = strsep(&message, "\n"); line != NULL; - line = strsep(&message, "\n")) { - csevent_log(CSC_CTL | CSC_SHELF_SW | CTL_ERROR_REPORT, - csevent_LogType_Trace, - csevent_Severity_Information, - csevent_AlertLevel_Green, - csevent_FRU_Firmware, - csevent_FRU_Unknown, "%s", line); - } -#else + printf("%s", ctl_io_error_string(io, inq_data, str, sizeof(str))); -#endif } Modified: head/sys/cam/ctl/ctl_util.h ============================================================================== --- head/sys/cam/ctl/ctl_util.h Sat Sep 26 07:30:45 2015 (r288258) +++ head/sys/cam/ctl/ctl_util.h Sat Sep 26 11:28:45 2015 (r288259) @@ -77,7 +77,7 @@ void ctl_scsi_mode_sense(union ctl_io *i int minimum_cdb_size, ctl_tag_type tag_type, uint8_t control); void ctl_scsi_start_stop(union ctl_io *io, int start, int load_eject, - int immediate, int power_conditions, int onoffline, + int immediate, int power_conditions, ctl_tag_type tag_type, uint8_t control); void ctl_scsi_sync_cache(union ctl_io *io, int immed, int reladr, int minimum_cdb_size, uint64_t starting_lba, Modified: head/usr.sbin/ctladm/ctladm.8 ============================================================================== --- head/usr.sbin/ctladm/ctladm.8 Sat Sep 26 07:30:45 2015 (r288258) +++ head/usr.sbin/ctladm/ctladm.8 Sat Sep 26 11:28:45 2015 (r288259) @@ -35,7 +35,7 @@ .\" $Id: //depot/users/kenm/FreeBSD-test2/usr.sbin/ctladm/ctladm.8#3 $ .\" $FreeBSD$ .\" -.Dd September 12, 2015 +.Dd September 26, 2015 .Dt CTLADM 8 .Os .Sh NAME @@ -118,12 +118,6 @@ .Op Fl i .Op Fl c Ar cdbsize .Nm -.Ic shutdown -.Op general options -.Nm -.Ic startup -.Op general options -.Nm .Ic lunlist .Nm .Ic delay @@ -132,15 +126,6 @@ .Aq Fl t Ar secs .Op Fl T Ar oneshot|cont .Nm -.Ic realsync Aq on|off|query -.Nm -.Ic setsync interval -.Aq lun -.Aq Fl i Ar interval -.Nm -.Ic getsync -.Aq lun -.Nm .Ic inject .Aq Fl i Ar action .Aq Fl p Ar pattern @@ -176,14 +161,11 @@ .Op Fl x .Nm .Ic port -.Op Fl l .Op Fl o Ar on|off .Op Fl w Ar wwpn .Op Fl W Ar wwnn .Op Fl p Ar targ_port .Op Fl t Ar fe_type -.Op Fl q -.Op Fl x .Nm .Ic portlist .Op Fl f Ar frontend @@ -418,17 +400,6 @@ bit set. Set the immediate bit in the CDB. Note that CTL does not support the immediate bit, so this is primarily useful for making sure that CTL returns the proper error. -.It Fl o -Set the Copan proprietary on/offline bit in the CDB. When this flag is -used, the LUN will be marked online again (see the description of the -.Ic shutdown -and -.Ic startup -commands). When this flag is used with a -start command, the LUN will NOT be spun up. You need to use a start -command without the -.Fl o -flag to spin up the disks in the LUN. .El .It Ic stop Send the @@ -444,14 +415,6 @@ sends an ordered tag for completeness.) Set the immediate bit in the CDB. Note that CTL does not support the immediate bit, so this is primarily useful for making sure that CTL returns the proper error. -.It Fl o -Set the Copan proprietary on/offline bit in the CDB. When this flag is -used, the LUN will be spun down and taken offline ("Logical unit not ready, -manual intervention required"). See the description of the -.Ic shutdown -and -.Ic startup -options. .El .It Ic synccache Send the @@ -483,32 +446,6 @@ support this bit. .It Fl c Ar cdbsize Specify the minimum CDB size. Valid values are 10 and 16 bytes. .El -.It Ic shutdown -Issue a -.Tn SCSI -START STOP UNIT command with the start bit cleared and the on/offline bit -set to all direct access LUNs. This will spin down all direct access LUNs, -and mark them offline ("Logical unit not ready, manual intervention -required"). Once marked offline, the state can only be cleared by sending -a START STOP UNIT command with the start bit set and the on/offline bit -set. The -.Nm -commands -.Ic startup -and -.Ic start -will accomplish this. Note that the -on/offline bit is a non-standard Copan extension to the -.Tn SCSI -START STOP UNIT command, so merely sending a normal start command from an -initiator will not clear the condition. (This is by design.) -.It Ic startup -Issue a -.Tn SCSI -START STOP UNIT command with the start bit set and the on/offline bit set -to all direct access LUNs. This will mark all direct access LUNs "online" -again. It will not cause any LUNs to start up. A separate start command -without the on/offline bit set is necessary for that. .It Ic lunlist List all LUNs registered with CTL. Because this command uses the ioctl port, it will only work when the FETDs @@ -549,39 +486,6 @@ the next command sent to the given LUN w commands will be completed normally. This is the default. .El -.It Ic realsync -Query and control CTL's SYNCHRONIZE CACHE behavior. The -.Sq query -argument -will show whether SYNCHRONIZE CACHE commands are being sent to the backend -or not. -The default is to send SYNCHRONIZE CACHE commands to the backend. -The -.Sq on -argument will cause all SYNCHRONIZE CACHE commands sent to all LUNs to be -sent to the backend. -The -.Sq off -argument will cause all SYNCHRONIZE CACHE commands sent to all LUNs to be -immediately returned to the initiator with successful status. -.It Ic setsync -For a given lun, only actually service every Nth SYNCHRONIZE CACHE command -that is sent. This can be used for debugging the optimal time period for -sending SYNCHRONIZE cache commands. An interval of 0 means that the cache -will be flushed for this LUN every time a SYNCHRONIZE CACHE command is -received. -.Pp -You must specify the LUN you want to modify. -.It Ic getsync -Get the interval at which we actually service the SYNCHRONIZE CACHE -command, as set by the -.Ic setsync -command above. -The reported number means that we will actually flush the cache on every -Nth SYNCHRONIZE CACHE command. A value of 0 means that we will flush the -cache every time. -.Pp -You must specify the LUN you want to query. .It Ic inject Inject the specified type of error for the LUN specified, when a command that matches the given pattern is seen. @@ -689,8 +593,6 @@ must be specified. The WWNN and WWPN may both be specified at the same time, but cannot be combined with enabling/disabling or listing ports. .Bl -tag -width 12n -.It Fl l -List all CTL frontend ports or a specific port type or number. .It Fl o Ar on|off Turn the specified CTL frontend ports off or on. If no port number or port type is specified, all ports are turned on or @@ -698,8 +600,6 @@ off. .It Fl p Ar targ_port Specify the frontend port number. The port numbers can be found in the frontend port list. -.It Fl q -Omit the header in the port list output. .It Fl t Ar fe_type Specify the frontend type. Currently defined port types are @@ -727,8 +627,6 @@ The argument must be specified, since this is only possible to implement on a single port. As a general rule, the WWPN must be different for every port in the system. -.It Fl x -Output the port list in XML format. .El .It Ic portlist List CTL frontend ports. Modified: head/usr.sbin/ctladm/ctladm.c ============================================================================== --- head/usr.sbin/ctladm/ctladm.c Sat Sep 26 07:30:45 2015 (r288258) +++ head/usr.sbin/ctladm/ctladm.c Sat Sep 26 11:28:45 2015 (r288259) @@ -101,13 +101,8 @@ typedef enum { CTLADM_CMD_START, CTLADM_CMD_STOP, CTLADM_CMD_SYNC_CACHE, - CTLADM_CMD_SHUTDOWN, - CTLADM_CMD_STARTUP, CTLADM_CMD_LUNLIST, CTLADM_CMD_DELAY, - CTLADM_CMD_REALSYNC, - CTLADM_CMD_SETSYNC, - CTLADM_CMD_GETSYNC, CTLADM_CMD_ERR_INJECT, CTLADM_CMD_PRES_IN, CTLADM_CMD_PRES_OUT, @@ -163,7 +158,7 @@ typedef enum { } ctladm_optret; static const char rw_opts[] = "Nb:c:d:f:l:"; -static const char startstop_opts[] = "io"; +static const char startstop_opts[] = "i"; static struct ctladm_opts option_table[] = { {"adddev", CTLADM_CMD_ADDDEV, CTLADM_ARG_NONE, NULL}, @@ -173,7 +168,6 @@ static struct ctladm_opts option_table[] {"devlist", CTLADM_CMD_DEVLIST, CTLADM_ARG_NONE, "b:vx"}, {"dumpooa", CTLADM_CMD_DUMPOOA, CTLADM_ARG_NONE, NULL}, {"dumpstructs", CTLADM_CMD_DUMPSTRUCTS, CTLADM_ARG_NONE, NULL}, - {"getsync", CTLADM_CMD_GETSYNC, CTLADM_ARG_NEED_TL, NULL}, {"help", CTLADM_CMD_HELP, CTLADM_ARG_NONE, NULL}, {"inject", CTLADM_CMD_ERR_INJECT, CTLADM_ARG_NEED_TL, "cd:i:p:r:s:"}, {"inquiry", CTLADM_CMD_INQUIRY, CTLADM_ARG_NEED_TL, NULL}, @@ -190,15 +184,11 @@ static struct ctladm_opts option_table[] {"prout", CTLADM_CMD_PRES_OUT, CTLADM_ARG_NEED_TL, "a:k:r:s:"}, {"read", CTLADM_CMD_READ, CTLADM_ARG_NEED_TL, rw_opts}, {"readcapacity", CTLADM_CMD_READCAPACITY, CTLADM_ARG_NEED_TL, "c:"}, - {"realsync", CTLADM_CMD_REALSYNC, CTLADM_ARG_NONE, NULL}, {"remove", CTLADM_CMD_RM, CTLADM_ARG_NONE, "b:l:o:"}, {"reportluns", CTLADM_CMD_REPORT_LUNS, CTLADM_ARG_NEED_TL, NULL}, {"reqsense", CTLADM_CMD_REQ_SENSE, CTLADM_ARG_NEED_TL, NULL}, {"rtpg", CTLADM_CMD_RTPG, CTLADM_ARG_NEED_TL, NULL}, - {"setsync", CTLADM_CMD_SETSYNC, CTLADM_ARG_NEED_TL, "i:"}, - {"shutdown", CTLADM_CMD_SHUTDOWN, CTLADM_ARG_NONE, NULL}, {"start", CTLADM_CMD_START, CTLADM_ARG_NEED_TL, startstop_opts}, - {"startup", CTLADM_CMD_STARTUP, CTLADM_ARG_NONE, NULL}, {"stop", CTLADM_CMD_STOP, CTLADM_ARG_NEED_TL, startstop_opts}, {"synccache", CTLADM_CMD_SYNC_CACHE, CTLADM_ARG_NEED_TL, "b:c:il:r"}, {"tur", CTLADM_CMD_TUR, CTLADM_ARG_NEED_TL, NULL}, @@ -212,15 +202,11 @@ static struct ctladm_opts option_table[] ctladm_optret getoption(struct ctladm_opts *table, char *arg, uint32_t *cmdnum, ctladm_cmdargs *argnum, const char **subopt); static int cctl_dump_ooa(int fd, int argc, char **argv); -static int cctl_port_dump(int fd, int quiet, int xml, int32_t fe_num, - ctl_port_type port_type); static int cctl_port(int fd, int argc, char **argv, char *combinedopt); static int cctl_do_io(int fd, int retries, union ctl_io *io, const char *func); static int cctl_delay(int fd, int lun, int argc, char **argv, char *combinedopt); static int cctl_lunlist(int fd); -static int cctl_startup_shutdown(int fd, int lun, int iid, - ctladm_cmdfunction command); static int cctl_sync_cache(int fd, int lun, int iid, int retries, int argc, char **argv, char *combinedopt); static int cctl_start_stop(int fd, int lun, int iid, int retries, @@ -253,6 +239,7 @@ static int cctl_create_lun(int fd, int a static int cctl_inquiry_vpd_devid(int fd, int lun, int initiator); static int cctl_report_target_port_group(int fd, int lun, int initiator); static int cctl_modify_lun(int fd, int argc, char **argv, char *combinedopt); +static int cctl_portlist(int fd, int argc, char **argv, char *combinedopt); ctladm_optret getoption(struct ctladm_opts *table, char *arg, uint32_t *cmdnum, @@ -287,9 +274,7 @@ cctl_dump_ooa(int fd, int argc, char **a { struct ctl_ooa ooa; long double cmd_latency; - int num_entries, len; - int lun = -1; - int retval; + int num_entries, len, lun = -1, retval = 0; unsigned int i; num_entries = 104; @@ -299,21 +284,16 @@ cctl_dump_ooa(int fd, int argc, char **a retry: len = num_entries * sizeof(struct ctl_ooa_entry); - bzero(&ooa, sizeof(ooa)); - ooa.entries = malloc(len); - if (ooa.entries == NULL) { warn("%s: error mallocing %d bytes", __func__, len); return (1); } - - if (argc > 2) { + if (lun >= 0) { ooa.lun_num = lun; } else ooa.flags |= CTL_OOA_FLAG_ALL_LUNS; - ooa.alloc_len = len; ooa.alloc_num = num_entries; if (ioctl(fd, CTL_GET_OOA, &ooa) == -1) { @@ -368,17 +348,10 @@ retry: cmd_latency); } fprintf(stdout, "OOA queues dump done\n"); -#if 0 - if (ioctl(fd, CTL_DUMP_OOA) == -1) { - warn("%s: CTL_DUMP_OOA ioctl failed", __func__); - return (1); - } -#endif bailout: free(ooa.entries); - - return (0); + return (retval); } static int @@ -391,152 +364,6 @@ cctl_dump_structs(int fd, ctladm_cmdargs return (0); } -static int -cctl_port_dump(int fd, int quiet, int xml, int32_t targ_port, - ctl_port_type port_type) -{ - struct ctl_port_list port_list; - struct ctl_port_entry *entries; - struct sbuf *sb = NULL; - int num_entries; - int did_print = 0; - unsigned int i; - - num_entries = 16; - -retry: - - entries = malloc(sizeof(*entries) * num_entries); - bzero(&port_list, sizeof(port_list)); - port_list.entries = entries; - port_list.alloc_num = num_entries; - port_list.alloc_len = num_entries * sizeof(*entries); - if (ioctl(fd, CTL_GET_PORT_LIST, &port_list) != 0) { - warn("%s: CTL_GET_PORT_LIST ioctl failed", __func__); - return (1); - } - if (port_list.status == CTL_PORT_LIST_NEED_MORE_SPACE) { - printf("%s: allocated %d, need %d, retrying\n", __func__, - num_entries, port_list.fill_num + port_list.dropped_num); - free(entries); - num_entries = port_list.fill_num + port_list.dropped_num; - goto retry; - } - - if ((quiet == 0) - && (xml == 0)) - printf("Port Online Type Name pp vp %-18s %-18s\n", - "WWNN", "WWPN"); - - if (xml != 0) { - sb = sbuf_new_auto(); - sbuf_printf(sb, "\n"); - } - for (i = 0; i < port_list.fill_num; i++) { - struct ctl_port_entry *entry; - const char *type; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@freebsd.org Sat Sep 26 11:39:55 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A8532A09405; Sat, 26 Sep 2015 11:39:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 99803ED7; Sat, 26 Sep 2015 11:39:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QBdtxs022528; Sat, 26 Sep 2015 11:39:55 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QBdtKK022526; Sat, 26 Sep 2015 11:39:55 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509261139.t8QBdtKK022526@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sat, 26 Sep 2015 11:39:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288260 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 11:39:55 -0000 Author: mav Date: Sat Sep 26 11:39:54 2015 New Revision: 288260 URL: https://svnweb.freebsd.org/changeset/base/288260 Log: Remove few more unused variables. Modified: head/sys/cam/ctl/ctl.c head/sys/cam/ctl/ctl_private.h Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Sat Sep 26 11:28:45 2015 (r288259) +++ head/sys/cam/ctl/ctl.c Sat Sep 26 11:39:54 2015 (r288260) @@ -1753,7 +1753,6 @@ ctl_init(void) mtx_init(&softc->ctl_lock, "CTL mutex", NULL, MTX_DEF); softc->io_zone = uma_zcreate("CTL IO", sizeof(union ctl_io), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); - softc->open_count = 0; softc->flags = 0; SYSCTL_ADD_INT(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree), Modified: head/sys/cam/ctl/ctl_private.h ============================================================================== --- head/sys/cam/ctl/ctl_private.h Sat Sep 26 11:28:45 2015 (r288259) +++ head/sys/cam/ctl/ctl_private.h Sat Sep 26 11:39:54 2015 (r288260) @@ -419,8 +419,6 @@ struct tpc_token; struct ctl_softc { struct mtx ctl_lock; struct cdev *dev; - int open_count; - int num_disks; int num_luns; ctl_gen_flags flags; ctl_ha_mode ha_mode; @@ -436,7 +434,6 @@ struct ctl_softc { struct sysctl_oid *sysctl_tree; void *othersc_pool; struct proc *ctl_proc; - int targ_online; uint32_t ctl_lun_mask[(CTL_MAX_LUNS + 31) / 32]; struct ctl_lun *ctl_luns[CTL_MAX_LUNS]; uint32_t ctl_port_mask[(CTL_MAX_PORTS + 31) / 32]; From owner-svn-src-head@freebsd.org Sat Sep 26 11:56:29 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CC19EA09F53; Sat, 26 Sep 2015 11:56:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BD2BC1DD9; Sat, 26 Sep 2015 11:56:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QBuTk0031914; Sat, 26 Sep 2015 11:56:29 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QBuTtC031912; Sat, 26 Sep 2015 11:56:29 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509261156.t8QBuTtC031912@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sat, 26 Sep 2015 11:56:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288261 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 11:56:29 -0000 Author: mav Date: Sat Sep 26 11:56:28 2015 New Revision: 288261 URL: https://svnweb.freebsd.org/changeset/base/288261 Log: Move ioctl frontend defines where they belong. Modified: head/sys/cam/ctl/ctl_frontend_ioctl.c head/sys/cam/ctl/ctl_private.h Modified: head/sys/cam/ctl/ctl_frontend_ioctl.c ============================================================================== --- head/sys/cam/ctl/ctl_frontend_ioctl.c Sat Sep 26 11:39:54 2015 (r288260) +++ head/sys/cam/ctl/ctl_frontend_ioctl.c Sat Sep 26 11:56:28 2015 (r288261) @@ -56,6 +56,18 @@ __FBSDID("$FreeBSD$"); #include #include +typedef enum { + CTL_IOCTL_INPROG, + CTL_IOCTL_DATAMOVE, + CTL_IOCTL_DONE +} ctl_fe_ioctl_state; + +struct ctl_fe_ioctl_params { + struct cv sem; + struct mtx ioctl_mtx; + ctl_fe_ioctl_state state; +}; + struct cfi_softc { uint32_t cur_tag_num; struct ctl_port port; Modified: head/sys/cam/ctl/ctl_private.h ============================================================================== --- head/sys/cam/ctl/ctl_private.h Sat Sep 26 11:39:54 2015 (r288260) +++ head/sys/cam/ctl/ctl_private.h Sat Sep 26 11:56:28 2015 (r288261) @@ -47,18 +47,6 @@ #define CTL_PROCESSOR_PRODUCT "CTLPROCESSOR " #define CTL_UNKNOWN_PRODUCT "CTLDEVICE " -typedef enum { - CTL_IOCTL_INPROG, - CTL_IOCTL_DATAMOVE, - CTL_IOCTL_DONE -} ctl_fe_ioctl_state; - -struct ctl_fe_ioctl_params { - struct cv sem; - struct mtx ioctl_mtx; - ctl_fe_ioctl_state state; -}; - #define CTL_POOL_ENTRIES_OTHER_SC 200 struct ctl_io_pool { From owner-svn-src-head@freebsd.org Sat Sep 26 12:53:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68EF39B8C45; Sat, 26 Sep 2015 12:53:56 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 59A31319; Sat, 26 Sep 2015 12:53:56 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QCrutw060223; Sat, 26 Sep 2015 12:53:56 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QCrud8060222; Sat, 26 Sep 2015 12:53:56 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509261253.t8QCrud8060222@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sat, 26 Sep 2015 12:53:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288262 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 12:53:56 -0000 Author: mav Date: Sat Sep 26 12:53:55 2015 New Revision: 288262 URL: https://svnweb.freebsd.org/changeset/base/288262 Log: Remove concept of control device. Modified: head/sys/cam/ctl/ctl.c Modified: head/sys/cam/ctl/ctl.c ============================================================================== --- head/sys/cam/ctl/ctl.c Sat Sep 26 11:56:28 2015 (r288261) +++ head/sys/cam/ctl/ctl.c Sat Sep 26 12:53:55 2015 (r288262) @@ -3819,14 +3819,8 @@ ctl_init_page_index(struct ctl_lun *lun) for (i = 0; i < CTL_NUM_MODE_PAGES; i++) { page_index = &lun->mode_pages.index[i]; - /* - * If this is a disk-only mode page, there's no point in - * setting it up. For some pages, we have to have some - * basic information about the disk in order to calculate the - * mode page data. - */ - if ((lun->be_lun->lun_type != T_DIRECT) - && (page_index->page_flags & CTL_PAGE_FLAG_DISK_ONLY)) + if (lun->be_lun->lun_type != T_DIRECT && + (page_index->page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; switch (page_index->page_code & SMPH_PC_MASK) { @@ -4211,18 +4205,12 @@ ctl_init_log_page_index(struct ctl_lun * for (i = 0, j = 0, k = 0; i < CTL_NUM_LOG_PAGES; i++) { page_index = &lun->log_pages.index[i]; - /* - * If this is a disk-only mode page, there's no point in - * setting it up. For some pages, we have to have some - * basic information about the disk in order to calculate the - * mode page data. - */ - if ((lun->be_lun->lun_type != T_DIRECT) - && (page_index->page_flags & CTL_PAGE_FLAG_DISK_ONLY)) + if (lun->be_lun->lun_type != T_DIRECT && + (page_index->page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; if (page_index->page_code == SLS_LOGICAL_BLOCK_PROVISIONING && - lun->backend->lun_attr == NULL) + lun->backend->lun_attr == NULL) continue; if (page_index->page_code != prev) { @@ -4494,9 +4482,8 @@ ctl_alloc_lun(struct ctl_softc *ctl_soft /* Setup statistics gathering */ lun->stats.device_type = be_lun->lun_type; lun->stats.lun_number = lun_number; - if (lun->stats.device_type == T_DIRECT) - lun->stats.blocksize = be_lun->blocksize; - else + lun->stats.blocksize = be_lun->blocksize; + if (be_lun->blocksize == 0) lun->stats.flags = CTL_LUN_STATS_NO_BLOCKSIZE; for (i = 0;i < CTL_MAX_PORTS;i++) lun->stats.ports[i].targ_port = i; @@ -5899,8 +5886,7 @@ ctl_do_mode_select(union ctl_io *io) struct scsi_mode_page_header *page_header; struct ctl_page_index *page_index; struct ctl_scsiio *ctsio; - int control_dev, page_len; - int page_len_offset, page_len_size; + int page_len, page_len_offset, page_len_size; union ctl_modepage_info *modepage_info; struct ctl_lun *lun; int *len_left, *len_used; @@ -5911,11 +5897,6 @@ ctl_do_mode_select(union ctl_io *io) page_len = 0; lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - if (lun->be_lun->lun_type != T_DIRECT) - control_dev = 1; - else - control_dev = 0; - modepage_info = (union ctl_modepage_info *) ctsio->io_hdr.ctl_private[CTL_PRIV_MODEPAGE].bytes; len_left = &modepage_info->header.len_left; @@ -5953,8 +5934,8 @@ do_next_page: */ for (i = 0; i < CTL_NUM_MODE_PAGES; i++) { - if ((control_dev != 0) - && (lun->mode_pages.index[i].page_flags & + if (lun->be_lun->lun_type != T_DIRECT && + (lun->mode_pages.index[i].page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; @@ -6251,7 +6232,6 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) int alloc_len, page_len, header_len, total_len; struct scsi_mode_block_descr *block_desc; struct ctl_page_index *page_index; - int control_dev; dbd = 0; llba = 0; @@ -6261,12 +6241,6 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) CTL_DEBUG_PRINT(("ctl_mode_sense\n")); lun = (struct ctl_lun *)ctsio->io_hdr.ctl_private[CTL_PRIV_LUN].ptr; - - if (lun->be_lun->lun_type != T_DIRECT) - control_dev = 1; - else - control_dev = 0; - switch (ctsio->cdb[0]) { case MODE_SENSE_6: { struct scsi_mode_sense_6 *cdb; @@ -6339,8 +6313,8 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) } for (i = 0; i < CTL_NUM_MODE_PAGES; i++) { - if ((control_dev != 0) - && (lun->mode_pages.index[i].page_flags & + if (lun->be_lun->lun_type != T_DIRECT && + (lun->mode_pages.index[i].page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; @@ -6379,8 +6353,8 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) continue; /* Make sure the page is supported for this dev type */ - if ((control_dev != 0) - && (lun->mode_pages.index[i].page_flags & + if (lun->be_lun->lun_type != T_DIRECT && + (lun->mode_pages.index[i].page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; @@ -6435,7 +6409,7 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) header = (struct scsi_mode_hdr_6 *)ctsio->kern_data_ptr; header->datalen = MIN(total_len - 1, 254); - if (control_dev == 0) { + if (lun->be_lun->lun_type == T_DIRECT) { header->dev_specific = 0x10; /* DPOFUA */ if ((lun->be_lun->flags & CTL_LUN_FLAG_READONLY) || (lun->mode_pages.control_page[CTL_PAGE_CURRENT] @@ -6458,7 +6432,7 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) datalen = MIN(total_len - 2, 65533); scsi_ulto2b(datalen, header->datalen); - if (control_dev == 0) { + if (lun->be_lun->lun_type == T_DIRECT) { header->dev_specific = 0x10; /* DPOFUA */ if ((lun->be_lun->flags & CTL_LUN_FLAG_READONLY) || (lun->mode_pages.control_page[CTL_PAGE_CURRENT] @@ -6483,7 +6457,7 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) * descriptor. Otherwise, just set it to 0. */ if (dbd == 0) { - if (control_dev == 0) + if (lun->be_lun->lun_type == T_DIRECT) scsi_ulto3b(lun->be_lun->blocksize, block_desc->block_len); else @@ -6500,9 +6474,8 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) page_index = &lun->mode_pages.index[i]; - if ((control_dev != 0) - && (page_index->page_flags & - CTL_PAGE_FLAG_DISK_ONLY)) + if (lun->be_lun->lun_type != T_DIRECT && + (page_index->page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; /* @@ -6550,9 +6523,8 @@ ctl_mode_sense(struct ctl_scsiio *ctsio) continue; /* Make sure the page is supported for this dev type */ - if ((control_dev != 0) - && (page_index->page_flags & - CTL_PAGE_FLAG_DISK_ONLY)) + if (lun->be_lun->lun_type != T_DIRECT && + (page_index->page_flags & CTL_PAGE_FLAG_DISK_ONLY)) continue; /* @@ -10109,23 +10081,13 @@ ctl_inquiry_std(struct ctl_scsiio *ctsio inq_ptr->additional_length)); inq_ptr->spc3_flags = SPC3_SID_3PC | SPC3_SID_TPGS_IMPLICIT; - /* 16 bit addressing */ if (port_type == CTL_PORT_SCSI) inq_ptr->spc2_flags = SPC2_SID_ADDR16; - /* XXX set the SID_MultiP bit here if we're actually going to - respond on multiple ports */ inq_ptr->spc2_flags |= SPC2_SID_MultiP; - - /* 16 bit data bus, synchronous transfers */ + inq_ptr->flags = SID_CmdQue; if (port_type == CTL_PORT_SCSI) - inq_ptr->flags = SID_WBus16 | SID_Sync; - /* - * XXX KDM do we want to support tagged queueing on the control - * device at all? - */ - if ((lun == NULL) - || (lun->be_lun->lun_type != T_PROCESSOR)) - inq_ptr->flags |= SID_CmdQue; + inq_ptr->flags |= SID_WBus16 | SID_Sync; + /* * Per SPC-3, unused bytes in ASCII strings are filled with spaces. * We have 8 bytes for the vendor name, and 16 bytes for the device From owner-svn-src-head@freebsd.org Sat Sep 26 13:22:45 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CEB1EA09466; Sat, 26 Sep 2015 13:22:45 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BC226AED; Sat, 26 Sep 2015 13:22:45 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QDMjJi074385; Sat, 26 Sep 2015 13:22:45 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QDMj41074384; Sat, 26 Sep 2015 13:22:45 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509261322.t8QDMj41074384@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 13:22:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288263 - head/sys/dev/wpi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 13:22:45 -0000 Author: adrian Date: Sat Sep 26 13:22:44 2015 New Revision: 288263 URL: https://svnweb.freebsd.org/changeset/base/288263 Log: Don't duplicate checks; net80211 now does this for us. Submitted by: s3erios@gmail.com Modified: head/sys/dev/wpi/if_wpi.c Modified: head/sys/dev/wpi/if_wpi.c ============================================================================== --- head/sys/dev/wpi/if_wpi.c Sat Sep 26 12:53:55 2015 (r288262) +++ head/sys/dev/wpi/if_wpi.c Sat Sep 26 13:22:44 2015 (r288263) @@ -3954,14 +3954,6 @@ wpi_config(struct wpi_softc *sc) sc->rxon.cck_mask = 0x0f; /* not yet negotiated */ sc->rxon.ofdm_mask = 0xff; /* not yet negotiated */ - /* XXX Current configuration may be unusable. */ - if (IEEE80211_IS_CHAN_NOADHOC(c) && sc->rxon.mode == WPI_MODE_IBSS) { - device_printf(sc->sc_dev, - "%s: invalid channel (%d) selected for IBSS mode\n", - __func__, ieee80211_chan2ieee(ic, c)); - return EINVAL; - } - if ((error = wpi_send_rxon(sc, 0, 0)) != 0) { device_printf(sc->sc_dev, "%s: could not send RXON\n", __func__); From owner-svn-src-head@freebsd.org Sat Sep 26 13:51:31 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2914DA0848F; Sat, 26 Sep 2015 13:51:31 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 16F856ED; Sat, 26 Sep 2015 13:51:31 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QDpUKh088122; Sat, 26 Sep 2015 13:51:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QDpUMv088119; Sat, 26 Sep 2015 13:51:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201509261351.t8QDpUMv088119@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sat, 26 Sep 2015 13:51:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288264 - head/sys/cam/ctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 13:51:31 -0000 Author: mav Date: Sat Sep 26 13:51:29 2015 New Revision: 288264 URL: https://svnweb.freebsd.org/changeset/base/288264 Log: Allow LOG SENSE command on non-disk devices. Modified: head/sys/cam/ctl/ctl_cmd_table.c head/sys/cam/ctl/ctl_private.h Modified: head/sys/cam/ctl/ctl_cmd_table.c ============================================================================== --- head/sys/cam/ctl/ctl_cmd_table.c Sat Sep 26 13:22:44 2015 (r288263) +++ head/sys/cam/ctl/ctl_cmd_table.c Sat Sep 26 13:51:29 2015 (r288264) @@ -866,7 +866,10 @@ const struct ctl_cmd_entry ctl_cmd_table {NULL, CTL_SERIDX_INVLD, CTL_CMD_FLAG_NONE, CTL_LUN_PAT_NONE}, /* 4D LOG SENSE */ -{ctl_log_sense, CTL_SERIDX_LOG_SNS, CTL_CMD_FLAG_OK_ON_SLUN | +{ctl_log_sense, CTL_SERIDX_LOG_SNS, CTL_CMD_FLAG_OK_ON_BOTH | + CTL_CMD_FLAG_OK_ON_STOPPED | + CTL_CMD_FLAG_OK_ON_INOPERABLE | + CTL_CMD_FLAG_OK_ON_STANDBY | CTL_FLAG_DATA_IN | CTL_CMD_FLAG_ALLOW_ON_PR_RESV, CTL_LUN_PAT_NONE, 10, {0, 0xff, 0xff, 0, 0xff, 0xff, 0xff, 0xff, 0x07} }, Modified: head/sys/cam/ctl/ctl_private.h ============================================================================== --- head/sys/cam/ctl/ctl_private.h Sat Sep 26 13:22:44 2015 (r288263) +++ head/sys/cam/ctl/ctl_private.h Sat Sep 26 13:51:29 2015 (r288264) @@ -306,7 +306,7 @@ static const struct ctl_page_index log_p {SLS_SUPPORTED_PAGES_PAGE, SLS_SUPPORTED_SUBPAGES_SUBPAGE, 0, NULL, CTL_PAGE_FLAG_NONE, NULL, NULL}, {SLS_LOGICAL_BLOCK_PROVISIONING, 0, 0, NULL, - CTL_PAGE_FLAG_NONE, ctl_lbp_log_sense_handler, NULL}, + CTL_PAGE_FLAG_DISK_ONLY, ctl_lbp_log_sense_handler, NULL}, {SLS_STAT_AND_PERF, 0, 0, NULL, CTL_PAGE_FLAG_NONE, ctl_sap_log_sense_handler, NULL}, }; From owner-svn-src-head@freebsd.org Sat Sep 26 13:55:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D5B63A086C4; Sat, 26 Sep 2015 13:55:56 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C65169ED; Sat, 26 Sep 2015 13:55:56 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QDtuvK089146; Sat, 26 Sep 2015 13:55:56 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QDtulX089145; Sat, 26 Sep 2015 13:55:56 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201509261355.t8QDtulX089145@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sat, 26 Sep 2015 13:55:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288265 - head/sys/nfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 13:55:56 -0000 Author: ian Date: Sat Sep 26 13:55:55 2015 New Revision: 288265 URL: https://svnweb.freebsd.org/changeset/base/288265 Log: Wait up to 10 seconds for late-initializing network interfaces to arrive. Reviewed by: rmacklem Modified: head/sys/nfs/nfs_diskless.c Modified: head/sys/nfs/nfs_diskless.c ============================================================================== --- head/sys/nfs/nfs_diskless.c Sat Sep 26 13:51:29 2015 (r288264) +++ head/sys/nfs/nfs_diskless.c Sat Sep 26 13:55:55 2015 (r288265) @@ -57,6 +57,8 @@ __FBSDID("$FreeBSD$"); #include #include +#define NFS_IFACE_TIMEOUT_SECS 10 /* Timeout for interface to appear. */ + static int inaddr_to_sockaddr(char *ev, struct sockaddr_in *sa); static int hwaddr_to_sockaddr(char *ev, struct sockaddr_dl *sa); static int decode_nfshandle(char *ev, u_char *fh, int maxfh); @@ -170,6 +172,7 @@ nfs_setup_diskless(void) char *cp; int cnt, fhlen, is_nfsv3; uint32_t len; + time_t timeout_at; if (nfs_diskless_valid != 0) return; @@ -214,6 +217,8 @@ nfs_setup_diskless(void) return; } ifa = NULL; + timeout_at = time_uptime + NFS_IFACE_TIMEOUT_SECS; +retry: CURVNET_SET(TD_TO_VNET(curthread)); IFNET_RLOCK(); TAILQ_FOREACH(ifp, &V_ifnet, if_link) { @@ -234,6 +239,10 @@ nfs_setup_diskless(void) } IFNET_RUNLOCK(); CURVNET_RESTORE(); + if (time_uptime < timeout_at) { + pause("nfssdl", hz / 5); + goto retry; + } printf("nfs_diskless: no interface\n"); return; /* no matching interface */ match_done: From owner-svn-src-head@freebsd.org Sat Sep 26 14:13:56 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6E6D6A09485; Sat, 26 Sep 2015 14:13:56 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5CAC5C6F; Sat, 26 Sep 2015 14:13:56 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QEDu8I098951; Sat, 26 Sep 2015 14:13:56 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QEDqu6098932; Sat, 26 Sep 2015 14:13:52 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509261413.t8QEDqu6098932@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 14:13:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288266 - in head: kerberos5 kerberos5/lib kerberos5/libexec kerberos5/tools kerberos5/usr.bin kerberos5/usr.sbin usr.bin/svn usr.sbin/amd usr.sbin/bsdinstall usr.sbin/fifolog usr.sbin/... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:13:56 -0000 Author: bdrewery Date: Sat Sep 26 14:13:51 2015 New Revision: 288266 URL: https://svnweb.freebsd.org/changeset/base/288266 Log: Add more SUBDIR_PARALLEL. MFC after: 3 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/kerberos5/Makefile head/kerberos5/lib/Makefile head/kerberos5/libexec/Makefile head/kerberos5/tools/Makefile head/kerberos5/usr.bin/Makefile head/kerberos5/usr.sbin/Makefile head/usr.bin/svn/Makefile head/usr.sbin/amd/Makefile head/usr.sbin/bsdinstall/Makefile head/usr.sbin/fifolog/Makefile head/usr.sbin/lpr/Makefile head/usr.sbin/pc-sysinstall/Makefile head/usr.sbin/unbound/Makefile head/usr.sbin/wpa/Makefile Modified: head/kerberos5/Makefile ============================================================================== --- head/kerberos5/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/kerberos5/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,6 +1,8 @@ # $FreeBSD$ -SUBDIR= lib libexec tools usr.bin usr.sbin +SUBDIR= lib .WAIT \ + libexec tools usr.bin usr.sbin +SUBDIR_PARALLEL= # These are the programs which depend on Kerberos. KPROGS= lib/libpam \ Modified: head/kerberos5/lib/Makefile ============================================================================== --- head/kerberos5/lib/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/kerberos5/lib/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -6,5 +6,7 @@ SUBDIR= libasn1 libgssapi_krb5 libgssapi libroken libsl libvers libkdc libwind libheimbase libheimipcc libheimipcs SUBDIR+= libkafs5 # requires krb_err.h from libkrb5 +SUBDIR_DEPEND_libkafs5= libkrb5 +SUBDIR_PARALLEL= .include Modified: head/kerberos5/libexec/Makefile ============================================================================== --- head/kerberos5/libexec/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/kerberos5/libexec/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -2,5 +2,6 @@ SUBDIR= digest-service ipropd-master ipropd-slave hprop hpropd kadmind kdc \ kdigest kfd kimpersonate kpasswdd kcm +SUBDIR_PARALLEL= .include Modified: head/kerberos5/tools/Makefile ============================================================================== --- head/kerberos5/tools/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/kerberos5/tools/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,5 +1,6 @@ # $FreeBSD$ SUBDIR= make-roken asn1_compile slc +SUBDIR_PARALLEL= .include Modified: head/kerberos5/usr.bin/Makefile ============================================================================== --- head/kerberos5/usr.bin/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/kerberos5/usr.bin/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -2,5 +2,6 @@ SUBDIR= hxtool kadmin kcc kdestroy kgetcred kf kinit kpasswd krb5-config ksu \ string2key verify_krb5_conf +SUBDIR_PARALLEL= .include Modified: head/kerberos5/usr.sbin/Makefile ============================================================================== --- head/kerberos5/usr.sbin/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/kerberos5/usr.sbin/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,5 +1,6 @@ # $FreeBSD$ SUBDIR= iprop-log kstash ktutil +SUBDIR_PARALLEL= .include Modified: head/usr.bin/svn/Makefile ============================================================================== --- head/usr.bin/svn/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.bin/svn/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,5 +1,8 @@ # $FreeBSD$ -SUBDIR = lib svn svnadmin svndumpfilter svnlook svnserve svnsync svnversion svnmucc svnrdump +SUBDIR = lib .WAIT \ + svn svnadmin svndumpfilter svnlook svnserve svnsync svnversion \ + svnmucc svnrdump +SUBDIR_PARALLEL= .include Modified: head/usr.sbin/amd/Makefile ============================================================================== --- head/usr.sbin/amd/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/amd/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -5,7 +5,9 @@ # # $FreeBSD$ -SUBDIR= include libamu amd amq fixmount fsinfo hlfsd mk-amd-map pawd \ +SUBDIR= include libamu .WAIT \ + amd amq fixmount fsinfo hlfsd mk-amd-map pawd \ scripts wire-test +SUBDIR_PARALLEL= .include Modified: head/usr.sbin/bsdinstall/Makefile ============================================================================== --- head/usr.sbin/bsdinstall/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/bsdinstall/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,6 +1,7 @@ # $FreeBSD$ SUBDIR= distextract distfetch partedit scripts +SUBDIR_PARALLEL= SCRIPTS= bsdinstall MAN= bsdinstall.8 Modified: head/usr.sbin/fifolog/Makefile ============================================================================== --- head/usr.sbin/fifolog/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/fifolog/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,5 +1,7 @@ # $FreeBSD$ -SUBDIR= lib fifolog_create fifolog_writer fifolog_reader +SUBDIR= lib .WAIT \ + fifolog_create fifolog_writer fifolog_reader +SUBDIR_PARALLEL= .include Modified: head/usr.sbin/lpr/Makefile ============================================================================== --- head/usr.sbin/lpr/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/lpr/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,7 +1,9 @@ # $FreeBSD$ -SUBDIR= common_source chkprintcap lp lpc lpd lpq lpr lprm lptest pac \ +SUBDIR= common_source .WAIT \ + chkprintcap lp lpc lpd lpq lpr lprm lptest pac \ filters filters.ru +SUBDIR_PARALLEL= # Questions/ideas for lpr & friends could also be sent to: # freebsd-print@bostonradio.org Modified: head/usr.sbin/pc-sysinstall/Makefile ============================================================================== --- head/usr.sbin/pc-sysinstall/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/pc-sysinstall/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -1,5 +1,6 @@ # $FreeBSD$ SUBDIR=backend backend-partmanager backend-query conf doc examples SUBDIR+=pc-sysinstall +SUBDIR_PARALLEL= .include Modified: head/usr.sbin/unbound/Makefile ============================================================================== --- head/usr.sbin/unbound/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/unbound/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -2,5 +2,6 @@ SUBDIR= daemon anchor checkconf control SUBDIR+= local-setup +SUBDIR_PARALLEL= .include Modified: head/usr.sbin/wpa/Makefile ============================================================================== --- head/usr.sbin/wpa/Makefile Sat Sep 26 13:55:55 2015 (r288265) +++ head/usr.sbin/wpa/Makefile Sat Sep 26 14:13:51 2015 (r288266) @@ -3,5 +3,6 @@ SUBDIR= wpa_supplicant wpa_cli wpa_passphrase SUBDIR+= hostapd hostapd_cli SUBDIR+= ndis_events +SUBDIR_PARALLEL= .include From owner-svn-src-head@freebsd.org Sat Sep 26 14:15:03 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 74E23A09531; Sat, 26 Sep 2015 14:15:03 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4C1EEDCC; Sat, 26 Sep 2015 14:15:03 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QEF3uS099100; Sat, 26 Sep 2015 14:15:03 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QEF2Cl099097; Sat, 26 Sep 2015 14:15:02 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509261415.t8QEF2Cl099097@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 14:15:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288267 - in head/gnu: lib/csu lib/libreadline/readline usr.bin/cc/cc_tools X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:15:03 -0000 Author: bdrewery Date: Sat Sep 26 14:15:01 2015 New Revision: 288267 URL: https://svnweb.freebsd.org/changeset/base/288267 Log: Remove redundant .NOPATH. All of these are already in CLEANFILES which is added to .NOPATH in bsd.obj.mk. Sponsored by: EMC / Isilon Storage Division Modified: head/gnu/lib/csu/Makefile head/gnu/lib/libreadline/readline/Makefile head/gnu/usr.bin/cc/cc_tools/Makefile Modified: head/gnu/lib/csu/Makefile ============================================================================== --- head/gnu/lib/csu/Makefile Sat Sep 26 14:13:51 2015 (r288266) +++ head/gnu/lib/csu/Makefile Sat Sep 26 14:15:01 2015 (r288267) @@ -75,6 +75,4 @@ CLEANFILES+= tm.h tconfig.h options.h op tm.h tconfig.h options.h: ${CCDIR}/cc_tools/Makefile (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}) -.NOPATH: ${CLEANFILES} - .include Modified: head/gnu/lib/libreadline/readline/Makefile ============================================================================== --- head/gnu/lib/libreadline/readline/Makefile Sat Sep 26 14:13:51 2015 (r288266) +++ head/gnu/lib/libreadline/readline/Makefile Sat Sep 26 14:15:01 2015 (r288267) @@ -16,8 +16,6 @@ INSTALLED_HEADERS= readline.h chardefs.h CFLAGS+= -I${.OBJDIR}/.. SRCDIR= ${.CURDIR}/../../../../contrib/libreadline -.NOPATH: ${INSTALLED_HEADERS} - beforebuild: ${INSTALLED_HEADERS} CLEANFILES+= ${INSTALLED_HEADERS} DPSRCS+= ${INSTALLED_HEADERS} Modified: head/gnu/usr.bin/cc/cc_tools/Makefile ============================================================================== --- head/gnu/usr.bin/cc/cc_tools/Makefile Sat Sep 26 14:13:51 2015 (r288266) +++ head/gnu/usr.bin/cc/cc_tools/Makefile Sat Sep 26 14:15:01 2015 (r288267) @@ -216,8 +216,6 @@ tconfig.h: GENSRCS+= tconfig.h CLEANFILES+= cs-tconfig.h -.NOPATH: ${GENSRCS} ${CLEANFILES} - # Options optionlist: ${OPT_FILES} LC_ALL=C awk -f ${GCCDIR}/opt-gather.awk ${.ALLSRC} > ${.TARGET} From owner-svn-src-head@freebsd.org Sat Sep 26 14:19:11 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31B1FA0972B for ; Sat, 26 Sep 2015 14:19:11 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f46.google.com (mail-qg0-f46.google.com [209.85.192.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E5CABF84 for ; Sat, 26 Sep 2015 14:19:10 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgev79 with SMTP id v79so90169203qge.0 for ; Sat, 26 Sep 2015 07:19:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=RIQYKexy4ibo2hLlmLDdS67wYT12rqC41P13DYQqZ4c=; b=C0Q04OyLIfjO9RnnOtn+A/uReJWYdBBDOoCHwk1XGJWI3Bc5DqOjHUFSe9+44/bqTd ftIw+OrQ9ly2RHaw8FFM0ayvhx9GtmYYqEMTKKQRRrc+gLC5IAk473qdgPkFbW1F1FAF zF7Lz566rkKsCa/vFxYb1FZUzaA/8em28JoHYRnq0qXv4Hwo+cULeCl5DyBt42DHUN2a xTVrQSwE7h87OUTPbGt07bEO/1nDdo9/eP1xkujZkrxWgyIZ/8ionuA8ybjQoBZk4q4D 8IXMdnrr7sgdZRzcIJKCWIzyXjbyncTahT7lnf9WfDIrFACnfgQOm1n9RMSItF8v8W05 EY3g== X-Gm-Message-State: ALoCoQkQIZwXSyWoSmxh+xz5oHDjavtEqxUMTRYnd+LC3F9TRc3dyGjU1o3GftjIkimHHQ9gFOUU MIME-Version: 1.0 X-Received: by 10.140.96.200 with SMTP id k66mr12035324qge.81.1443277149131; Sat, 26 Sep 2015 07:19:09 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Sat, 26 Sep 2015 07:19:09 -0700 (PDT) X-Originating-IP: [50.253.99.174] In-Reply-To: References: <201509252303.t8PN3Wx0098623@repo.freebsd.org> <5605D4FC.4040205@FreeBSD.org> Date: Sat, 26 Sep 2015 08:19:09 -0600 X-Google-Sender-Auth: a99OKE276OJ0F_oZWSRu2XqyBBc Message-ID: Subject: Re: svn commit: r288241 - head/share/mk From: Warner Losh To: NGie Cooper Cc: Bryan Drewery , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:19:11 -0000 On Fri, Sep 25, 2015 at 11:11 PM, NGie Cooper wrote: > On Fri, Sep 25, 2015 at 4:13 PM, Bryan Drewery > wrote: > > On 9/25/2015 4:12 PM, NGie Cooper wrote: > >> On Fri, Sep 25, 2015 at 4:03 PM, Bryan Drewery > wrote: > >>> Author: bdrewery > >>> Date: Fri Sep 25 23:03:32 2015 > >>> New Revision: 288241 > >>> URL: https://svnweb.freebsd.org/changeset/base/288241 > >>> > >>> Log: > >>> Remove 'set -e' that are no longer needed as it is already default. > >>> > >>> When bmake was initially imported at r241298 shell commands were no > longer > >>> ran with 'set -e' as they were before. This was fixed in r254980 so > they > >>> again always use 'set -e'. > >> > >> The bsd.subdir.mk portion of the change looks like it would cause > >> issues depending on what's being called (fmake or an earlier version > >> of sys.mk might be used at install time). > >> > > > > We only support bmake in head. And the 'set -e' were only added for > > bmake compatibility before it was fixed to work like fmake did. > > Sorry. Fuzzy memory on the latter item. Yeah, I requested it a couple > years ago. > > We might only support bmake in head, but there's nothing preventing > someone from doing a source upgrade from one of the older 10 releases > to 11+. Thinking about this a bit more, this is an extreme edge case > that doesn't really matter, because people doing source upgrades > across major releases really should be doing them from the latest > minor release for the major release > I wouldn't state it so glibly. It is not as extreme as you might think. For a long time compiling -current from a host that was one or two major releases old has worked. Currently we advertise that we can upgrade from the stable/9 branch point or newer to tip of head (based on values in Makefile.inc1). I don't believe that Bryan's change set changes that in any significant way, but given the large amount of churn he and I (and others) have generated in /usr/share/mk, testing from a 9.x machine would be prudent. I didn't remove some minor bits of code, and also made sys.mk compatible with the FreeBSD 9 fmake because of issues like this. Warner From owner-svn-src-head@freebsd.org Sat Sep 26 14:20:32 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1A6B0A097F6; Sat, 26 Sep 2015 14:20:32 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id F2DE91E5; Sat, 26 Sep 2015 14:20:31 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id EA17915A6; Sat, 26 Sep 2015 14:20:31 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 977CD13D85; Sat, 26 Sep 2015 14:20:31 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id t-lo_u_IOfdG; Sat, 26 Sep 2015 14:20:28 +0000 (UTC) Subject: Re: svn commit: r288241 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 3168A13D7E To: Warner Losh , NGie Cooper References: <201509252303.t8PN3Wx0098623@repo.freebsd.org> <5605D4FC.4040205@FreeBSD.org> Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Openpgp: id=F9173CB2C3AAEA7A5C8A1F0935D771BB6E4697CF; url=http://www.shatow.net/bryan/bryan2.asc Organization: FreeBSD Message-ID: <5606A9AE.7070303@FreeBSD.org> Date: Sat, 26 Sep 2015 07:20:30 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="HxQWc8vLEbDvddpgC5HjS6Xo5bHfrWtt3" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:20:32 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --HxQWc8vLEbDvddpgC5HjS6Xo5bHfrWtt3 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 9/26/2015 7:19 AM, Warner Losh wrote: >=20 >=20 > On Fri, Sep 25, 2015 at 11:11 PM, NGie Cooper > wrote: >=20 > On Fri, Sep 25, 2015 at 4:13 PM, Bryan Drewery > wrote: > > On 9/25/2015 4:12 PM, NGie Cooper wrote: > >> On Fri, Sep 25, 2015 at 4:03 PM, Bryan Drewery > wrote: > >>> Author: bdrewery > >>> Date: Fri Sep 25 23:03:32 2015 > >>> New Revision: 288241 > >>> URL: https://svnweb.freebsd.org/changeset/base/288241 > >>> > >>> Log: > >>> Remove 'set -e' that are no longer needed as it is already de= fault. > >>> > >>> When bmake was initially imported at r241298 shell commands w= ere no longer > >>> ran with 'set -e' as they were before. This was fixed in r25= 4980 so they > >>> again always use 'set -e'. > >> > >> The bsd.subdir.mk portion of the change l= ooks > like it would cause > >> issues depending on what's being called (fmake or an earlier ver= sion > >> of sys.mk might be used at install time). > >> > > > > We only support bmake in head. And the 'set -e' were only added f= or > > bmake compatibility before it was fixed to work like fmake did. >=20 > Sorry. Fuzzy memory on the latter item. Yeah, I requested it a > couple years ago. >=20 > We might only support bmake in head, but there's nothing preventing= > someone from doing a source upgrade from one of the older 10 releas= es > to 11+. Thinking about this a bit more, this is an extreme edge cas= e > that doesn't really matter, because people doing source upgrades > across major releases really should be doing them from the latest > minor release for the major release >=20 >=20 > I wouldn't state it so glibly. It is not as extreme as you might think.= > For a > long time compiling -current from a host that was one or two major > releases old has worked. Currently we advertise that we can upgrade > from the stable/9 branch point or newer to tip of head (based on values= > in Makefile.inc1). >=20 > I don't believe that Bryan's change set changes that in any significant= way, > but given the large amount of churn he and I (and others) have generate= d in > /usr/share/mk, testing from a 9.x machine would be prudent. I didn't re= move > some minor bits of code, and also made sys.mk compatibl= e > with the FreeBSD 9 > fmake because of issues like this. >=20 Note that fmake compatibility was explicitly removed around the META_MODE import time. fmake doesn't work at all currently. --=20 Regards, Bryan Drewery --HxQWc8vLEbDvddpgC5HjS6Xo5bHfrWtt3 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWBqmuAAoJEDXXcbtuRpfPahEIAKuaVYbsMIkCH/tGxMsVYlNJ r5RJpgLdok0xgowulBWghajiusle4zkfvbSbeZu68DYAruujLu/py2adNA828O4o +A0UFxy+ng81vpkPF+RyoK+c15r486xdsW3LkaMZIbSJgDI75M8AP63JE1xai1WV FqwRqyTAzogc3gJ4FalatFkYQJ1OcQqRaPeeUDM59mV1Ktso6NCj+V49R3eFfwIv tew5Dgdkmlwx2pkC+YiV1y06OhJUSg7+AfAjActXf43tDY8PFhEMPWZMx0GW5nLx 6yb9u28v7IiJmOSXLDx2pWuDBGqg/ioWLEDL6Xoq8xjMhtNuFR+h8r3knJqcZhE= =q3Ic -----END PGP SIGNATURE----- --HxQWc8vLEbDvddpgC5HjS6Xo5bHfrWtt3-- From owner-svn-src-head@freebsd.org Sat Sep 26 14:26:08 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E67FBA09B2B; Sat, 26 Sep 2015 14:26:08 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D726C8BE; Sat, 26 Sep 2015 14:26:08 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QEQ8cB003975; Sat, 26 Sep 2015 14:26:08 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QEQ8EX003974; Sat, 26 Sep 2015 14:26:08 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509261426.t8QEQ8EX003974@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 14:26:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288268 - head/usr.sbin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:26:09 -0000 Author: bdrewery Date: Sat Sep 26 14:26:08 2015 New Revision: 288268 URL: https://svnweb.freebsd.org/changeset/base/288268 Log: Hookup mkcsmapper_static and mkesdb_static for all but install. These are only handled as 'build-tools' in Makefile.inc1. This causes 'make clean' from the top of the tree to not clean the directories. It also effectively has kept them disconnected and risks them bitrotting. The buildworld process never cleans them either. Connect them so they will always be built, cleaned, etc, but never installed. Discussed with: imp (briefly) Sponsored by: EMC / Isilon Storage Division Modified: head/usr.sbin/Makefile Modified: head/usr.sbin/Makefile ============================================================================== --- head/usr.sbin/Makefile Sat Sep 26 14:15:01 2015 (r288267) +++ head/usr.sbin/Makefile Sat Sep 26 14:26:08 2015 (r288268) @@ -157,7 +157,7 @@ SUBDIR+= fdwrite SUBDIR+= mtree .endif -.if ${MK_FREEBSD_UPDATE} != "no" +.if ${MK_FREEBSD_UPDATE} != "no" && ${MK_RCS} != "no" SUBDIR+= freebsd-update .endif From owner-svn-src-head@freebsd.org Sat Sep 26 14:27:22 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B5C6DA09C1B; Sat, 26 Sep 2015 14:27:22 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A6D37AF2; Sat, 26 Sep 2015 14:27:22 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QERMg3004239; Sat, 26 Sep 2015 14:27:22 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QERMgM004238; Sat, 26 Sep 2015 14:27:22 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509261427.t8QERMgM004238@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 14:27:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288269 - head/usr.sbin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:27:22 -0000 Author: bdrewery Date: Sat Sep 26 14:27:21 2015 New Revision: 288269 URL: https://svnweb.freebsd.org/changeset/base/288269 Log: Revert r288268. Wrong change committed. Modified: head/usr.sbin/Makefile Modified: head/usr.sbin/Makefile ============================================================================== --- head/usr.sbin/Makefile Sat Sep 26 14:26:08 2015 (r288268) +++ head/usr.sbin/Makefile Sat Sep 26 14:27:21 2015 (r288269) @@ -157,7 +157,7 @@ SUBDIR+= fdwrite SUBDIR+= mtree .endif -.if ${MK_FREEBSD_UPDATE} != "no" && ${MK_RCS} != "no" +.if ${MK_FREEBSD_UPDATE} != "no" SUBDIR+= freebsd-update .endif From owner-svn-src-head@freebsd.org Sat Sep 26 14:28:05 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C1431A09C72; Sat, 26 Sep 2015 14:28:05 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B1EC1C59; Sat, 26 Sep 2015 14:28:05 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QES5UH004360; Sat, 26 Sep 2015 14:28:05 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QES5KU004359; Sat, 26 Sep 2015 14:28:05 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201509261428.t8QES5KU004359@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sat, 26 Sep 2015 14:28:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288270 - head/usr.bin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:28:05 -0000 Author: bdrewery Date: Sat Sep 26 14:28:04 2015 New Revision: 288270 URL: https://svnweb.freebsd.org/changeset/base/288270 Log: Hookup mkcsmapper_static and mkesdb_static for all but install. These are only handled as 'build-tools' in Makefile.inc1. This causes 'make clean' from the top of the tree to not clean the directories. It also effectively has kept them disconnected and risks them bitrotting. The buildworld process never cleans them either. Connect them so they will always be built, cleaned, etc, but never installed. Discussed with: imp (briefly) Sponsored by: EMC / Isilon Storage Division Modified: head/usr.bin/Makefile Modified: head/usr.bin/Makefile ============================================================================== --- head/usr.bin/Makefile Sat Sep 26 14:27:21 2015 (r288269) +++ head/usr.bin/Makefile Sat Sep 26 14:28:04 2015 (r288270) @@ -401,6 +401,13 @@ SUBDIR+= who SUBDIR+= svn .endif +# These are normally only handled for build-tools. Connect them for +# all but installing to keep them reasonably connected. +.if !make(install) +SUBDIR+= mkcsmapper_static +SUBDIR+= mkesdb_static +.endif + .include SUBDIR:= ${SUBDIR:O} From owner-svn-src-head@freebsd.org Sat Sep 26 14:52:48 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68319A0AD4A; Sat, 26 Sep 2015 14:52:48 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 586B8E18; Sat, 26 Sep 2015 14:52:48 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QEqm72018786; Sat, 26 Sep 2015 14:52:48 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QEqlMs018784; Sat, 26 Sep 2015 14:52:47 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201509261452.t8QEqlMs018784@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: "Conrad E. Meyer" Date: Sat, 26 Sep 2015 14:52:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288271 - head/share/man/man9 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 14:52:48 -0000 Author: cem Date: Sat Sep 26 14:52:47 2015 New Revision: 288271 URL: https://svnweb.freebsd.org/changeset/base/288271 Log: Document bus_get_resource(9). Suggested by: Francois Tigeot Obtained from: DragonFlyBSD 09301a2b29f3ae5edd39a858f909f8770372f71e Sponsored by: EMC / Isilon Storage Division Added: head/share/man/man9/bus_get_resource.9 (contents, props changed) Modified: head/share/man/man9/Makefile Modified: head/share/man/man9/Makefile ============================================================================== --- head/share/man/man9/Makefile Sat Sep 26 14:28:04 2015 (r288270) +++ head/share/man/man9/Makefile Sat Sep 26 14:52:47 2015 (r288271) @@ -39,6 +39,7 @@ MAN= accept_filter.9 \ bus_generic_print_child.9 \ bus_generic_read_ivar.9 \ bus_generic_shutdown.9 \ + bus_get_resource.9 \ BUS_NEW_PASS.9 \ BUS_PRINT_CHILD.9 \ BUS_READ_IVAR.9 \ Added: head/share/man/man9/bus_get_resource.9 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/share/man/man9/bus_get_resource.9 Sat Sep 26 14:52:47 2015 (r288271) @@ -0,0 +1,94 @@ +.\" +.\" Copyright (c) 2008 +.\" The DragonFly Project. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in +.\" the documentation and/or other materials provided with the +.\" distribution. +.\" 3. Neither the name of The DragonFly Project nor the names of its +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific, prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $DragonFly: src/share/man/man9/bus_get_resource.9,v 1.1 2008/11/09 09:48:41 swildner Exp $ +.\" $FreeBSD$ +.\" +.Dd September 26, 2015 +.Dt BUS_GET_RESOURCE 9 +.Os +.Sh NAME +.Nm bus_get_resource +.Nd "read a resource range/value with a given resource ID" +.Sh SYNOPSIS +.In sys/param.h +.In sys/bus.h +.In sys/rman.h +.Ft int +.Fo bus_get_resource +.Fa "device_t dev" "int type" "int rid" "u_long *startp" "u_long *countp" +.Fc +.Sh DESCRIPTION +The +.Fn bus_get_resource +function reads the range or value of the resource +.Fa type , rid +pair and stores it in the +.Fa startp +and +.Fa countp +arguments. +.Pp +The arguments are as follows: +.Bl -tag -width ".Fa startp" +.It Fa dev +The device to read the resource from. +.It Fa type +The type of resource you want to read. +It is one of: +.Pp +.Bl -tag -width ".Dv SYS_RES_MEMORY" -compact +.It Dv SYS_RES_IRQ +for IRQs +.It Dv SYS_RES_DRQ +for ISA DMA lines +.It Dv SYS_RES_MEMORY +for I/O memory +.It Dv SYS_RES_IOPORT +for I/O ports +.El +.It Fa rid +A bus-specific handle that identifies the resource being read. +.It Fa startp +A pointer to the start address of this resource. +.It Fa countp +A pointer to the length of the resource. +For example, the size of the memory in bytes. +.El +.Sh RETURN VALUES +Zero is returned on success, otherwise an error is returned. +.Sh SEE ALSO +.Xr bus_set_resource 9 , +.Xr device 9 , +.Xr driver 9 +.Sh AUTHORS +This manual page was written by +.An Sascha Wildner . From owner-svn-src-head@freebsd.org Sat Sep 26 16:30:18 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31198A08D67; Sat, 26 Sep 2015 16:30:18 +0000 (UTC) (envelope-from jpaetzel@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0802AAEF; Sat, 26 Sep 2015 16:30:18 +0000 (UTC) (envelope-from jpaetzel@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QGUHPf061566; Sat, 26 Sep 2015 16:30:17 GMT (envelope-from jpaetzel@FreeBSD.org) Received: (from jpaetzel@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QGUHaj061564; Sat, 26 Sep 2015 16:30:17 GMT (envelope-from jpaetzel@FreeBSD.org) Message-Id: <201509261630.t8QGUHaj061564@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jpaetzel set sender to jpaetzel@FreeBSD.org using -f From: Josh Paetzel Date: Sat, 26 Sep 2015 16:30:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288272 - in head: sys/rpc/rpcsec_gss usr.sbin/gssd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 16:30:18 -0000 Author: jpaetzel Date: Sat Sep 26 16:30:16 2015 New Revision: 288272 URL: https://svnweb.freebsd.org/changeset/base/288272 Log: Increase group limit for kerberized NFSv4 PR: 202659 Submitted by: matthew.l.dailey@dartmouth.edu Reviewed by: rmacklem dfr MFC after: 1 week Sponsored by: iXsystems Modified: head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c head/usr.sbin/gssd/gssd.c Modified: head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c ============================================================================== --- head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c Sat Sep 26 14:52:47 2015 (r288271) +++ head/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c Sat Sep 26 16:30:16 2015 (r288272) @@ -121,9 +121,6 @@ enum svc_rpc_gss_client_state { }; #define SVC_RPC_GSS_SEQWINDOW 128 -#ifndef RPCAUTH_UNIXGIDS -#define RPCAUTH_UNIXGIDS 16 -#endif struct svc_rpc_gss_clientid { unsigned long ci_hostid; @@ -150,7 +147,7 @@ struct svc_rpc_gss_client { int cl_rpcflavor; /* RPC pseudo sec flavor */ bool_t cl_done_callback; /* TRUE after call */ void *cl_cookie; /* user cookie from callback */ - gid_t cl_gid_storage[RPCAUTH_UNIXGIDS]; + gid_t cl_gid_storage[NGROUPS]; gss_OID cl_mech; /* mechanism */ gss_qop_t cl_qop; /* quality of protection */ uint32_t cl_seqlast; /* sequence window origin */ @@ -776,7 +773,7 @@ svc_rpc_gss_build_ucred(struct svc_rpc_g uc->gid = 65534; uc->gidlist = client->cl_gid_storage; - numgroups = RPCAUTH_UNIXGIDS; + numgroups = NGROUPS; maj_stat = gss_pname_to_unix_cred(&min_stat, name, client->cl_mech, &uc->uid, &uc->gid, &numgroups, &uc->gidlist[0]); if (GSS_ERROR(maj_stat)) Modified: head/usr.sbin/gssd/gssd.c ============================================================================== --- head/usr.sbin/gssd/gssd.c Sat Sep 26 14:52:47 2015 (r288271) +++ head/usr.sbin/gssd/gssd.c Sat Sep 26 16:30:16 2015 (r288272) @@ -751,8 +751,8 @@ gssd_pname_to_uid_1_svc(pname_to_uid_arg buflen_hint = buflen; } if (pw) { - int len = NGRPS; - int groups[NGRPS]; + int len = NGROUPS; + int groups[NGROUPS]; result->gid = pw->pw_gid; getgrouplist(pw->pw_name, pw->pw_gid, groups, &len); From owner-svn-src-head@freebsd.org Sat Sep 26 16:48:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD1EDA097DD; Sat, 26 Sep 2015 16:48:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AE0192E9; Sat, 26 Sep 2015 16:48:25 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QGmPkn071005; Sat, 26 Sep 2015 16:48:25 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QGmPve071004; Sat, 26 Sep 2015 16:48:25 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201509261648.t8QGmPve071004@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Sat, 26 Sep 2015 16:48:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288273 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 16:48:25 -0000 Author: hselasky Date: Sat Sep 26 16:48:25 2015 New Revision: 288273 URL: https://svnweb.freebsd.org/changeset/base/288273 Log: Fix spelling. Submitted by: Maxime Soule PR: 203249 MFC after: 2 weeks Modified: head/share/man/man4/usb_quirk.4 Modified: head/share/man/man4/usb_quirk.4 ============================================================================== --- head/share/man/man4/usb_quirk.4 Sat Sep 26 16:30:16 2015 (r288272) +++ head/share/man/man4/usb_quirk.4 Sat Sep 26 16:48:25 2015 (r288273) @@ -16,7 +16,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 24, 2015 +.Dd September 26, 2015 .Dt USB_QUIRK 4 .Os .Sh NAME @@ -193,9 +193,10 @@ The value is a string whose format is: Installs the quirks .Ic UQ_QUIRK,... for all USB devices matching -.Ic VendorId , +.Ic VendorId +and .Ic ProductId -and has a hardware revision between and including +which have a hardware revision between and including .Ic LowRevision and .Ic HighRevision . From owner-svn-src-head@freebsd.org Sat Sep 26 17:01:49 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D4B2BA0A30B; Sat, 26 Sep 2015 17:01:49 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8F1DC6D2; Sat, 26 Sep 2015 17:01:49 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.84 (FreeBSD)) (envelope-from ) id 1Zfsqy-0008Ff-73; Sat, 26 Sep 2015 20:01:40 +0300 Date: Sat, 26 Sep 2015 20:01:40 +0300 From: Slawa Olhovchenkov To: Brad Davis Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r287824 - head Message-ID: <20150926170140.GC3158@zxy.spb.ru> References: <201509151424.t8FEOKUs019633@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201509151424.t8FEOKUs019633@repo.freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 17:01:49 -0000 On Tue, Sep 15, 2015 at 02:24:20PM +0000, Brad Davis wrote: > Author: brd (doc,ports committer) > Date: Tue Sep 15 14:24:19 2015 > New Revision: 287824 > URL: https://svnweb.freebsd.org/changeset/base/287824 > > Log: > Fix grammer in an error message > > PR: 202310 > Submitted by: Chris Petrik > Approved by: will May be need to include this note in /usr/src/UPDATING? And for other branches too. > Modified: > head/Makefile.inc1 > > Modified: head/Makefile.inc1 > ============================================================================== > --- head/Makefile.inc1 Tue Sep 15 13:37:48 2015 (r287823) > +++ head/Makefile.inc1 Tue Sep 15 14:24:19 2015 (r287824) > @@ -1258,7 +1258,7 @@ _elftoolchain_libs= lib/libelf lib/libdw > > legacy: > .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 > - @echo "ERROR: Source upgrades from versions prior to 8.0 not supported."; \ > + @echo "ERROR: Source upgrades from versions prior to 8.0 are not supported."; \ > false > .endif > .for _tool in tools/build ${_elftoolchain_libs} > _______________________________________________ > svn-src-all@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-all > To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-svn-src-head@freebsd.org Sat Sep 26 17:45:11 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3DB73A09047; Sat, 26 Sep 2015 17:45:11 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2D1359A9; Sat, 26 Sep 2015 17:45:11 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QHjBnP000550; Sat, 26 Sep 2015 17:45:11 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QHjBll000549; Sat, 26 Sep 2015 17:45:11 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201509261745.t8QHjBll000549@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sat, 26 Sep 2015 17:45:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288274 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 17:45:11 -0000 Author: alc Date: Sat Sep 26 17:45:10 2015 New Revision: 288274 URL: https://svnweb.freebsd.org/changeset/base/288274 Log: Exploit r288122 to address a cosmetic issue. Since the pages allocated by noobj_alloc() don't belong to a vm object, they can't be paged out. Since they can't be paged out, they are never enqueued in a paging queue. Nonetheless, passing PQ_INACTIVE to vm_page_unwire() creates the appearance that these pages are being enqueued in the inactive queue. As of r288122, we can avoid giving this false impression by passing PQ_NONE. Submitted by: kmacy Differential Revision: https://reviews.freebsd.org/D1674 Modified: head/sys/vm/uma_core.c Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Sat Sep 26 16:48:25 2015 (r288273) +++ head/sys/vm/uma_core.c Sat Sep 26 17:45:10 2015 (r288274) @@ -1153,7 +1153,7 @@ noobj_alloc(uma_zone_t zone, vm_size_t b * exit. */ TAILQ_FOREACH_SAFE(p, &alloctail, listq, p_next) { - vm_page_unwire(p, PQ_INACTIVE); + vm_page_unwire(p, PQ_NONE); vm_page_free(p); } return (NULL); From owner-svn-src-head@freebsd.org Sat Sep 26 18:03:57 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 49F57A0A0BC; Sat, 26 Sep 2015 18:03:57 +0000 (UTC) (envelope-from bjkfbsd@gmail.com) Received: from mail-wi0-x22a.google.com (mail-wi0-x22a.google.com [IPv6:2a00:1450:400c:c05::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C3B4528A; Sat, 26 Sep 2015 18:03:56 +0000 (UTC) (envelope-from bjkfbsd@gmail.com) Received: by wicgb1 with SMTP id gb1so56630301wic.1; Sat, 26 Sep 2015 11:03:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=351HBr6/KzdkvI6ezpuGvtzURMWehGiPX1qhTqSBeAk=; b=GdFNYJOKPf/HGN9wArCdwb2xG0XvtCmFx9vQ3hi7fGRHfvg1t6eZZkuz6kB4apeGCB MpXYbhA7R2AGwxi3NimenIp9u/WgwnYyDH/u5k1hA4FfPBrJslhj4CVyouzk27RhqVDX m1+7JBkGh9AZ0GfPHACRBhzK1+oZJSBCl+mziEeFwLLI2jImLZvVGSFpNHbzH5Zjm/4E ZGbxbBThxuOuMb2+f0pREpvA/I5U2oatnlq4x55tq0jyNJGSf5HGomis7hGL6nxuKWzQ dKNgBY7vtsuajCvSveq8KJsWseoXK/Y/ztLy1qmLNJ/pjUa39mg2NAzkw6ZBXb6HH4Ps JQUg== MIME-Version: 1.0 X-Received: by 10.194.209.240 with SMTP id mp16mr12636062wjc.100.1443290635046; Sat, 26 Sep 2015 11:03:55 -0700 (PDT) Received: by 10.27.87.216 with HTTP; Sat, 26 Sep 2015 11:03:54 -0700 (PDT) In-Reply-To: <201509260709.t8Q79l84007890@repo.freebsd.org> References: <201509260709.t8Q79l84007890@repo.freebsd.org> Date: Sat, 26 Sep 2015 13:03:54 -0500 Message-ID: Subject: Re: svn commit: r288254 - head/share/man/man4 From: Benjamin Kaduk To: Adrian Chadd Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 18:03:57 -0000 On Sat, Sep 26, 2015 at 2:09 AM, Adrian Chadd wrote: > Author: adrian > Date: Sat Sep 26 07:09:46 2015 > New Revision: 288254 > URL: https://svnweb.freebsd.org/changeset/base/288254 > > Log: > Add man pages for the AR9170 and AR9170 firmware. > > Added: > head/share/man/man4/otus.4 (contents, props changed) > head/share/man/man4/otusfw.4 (contents, props changed) > I don't think otusfw.4 is quite right; it is still claiming to be .Dt otus (and may just be a copy of otus.4, though I didn't check?). If the goal is to have the same text appear for "man otus" and "man otusfw", it's probably best to use MLINKS. -Ben > Modified: > head/share/man/man4/Makefile > > Modified: head/share/man/man4/Makefile > > ============================================================================== > --- head/share/man/man4/Makefile Sat Sep 26 07:08:35 2015 > (r288253) > +++ head/share/man/man4/Makefile Sat Sep 26 07:09:46 2015 > (r288254) > @@ -379,6 +379,8 @@ MAN= aac.4 \ > oce.4 \ > ohci.4 \ > orm.4 \ > + otus.4 \ > + otusfw.4 \ > ow.4 \ > ow_temp.4 \ > owc.4 \ > > Added: head/share/man/man4/otus.4 > > ============================================================================== > --- /dev/null 00:00:00 1970 (empty, because file is newly added) > +++ head/share/man/man4/otus.4 Sat Sep 26 07:09:46 2015 (r288254) > @@ -0,0 +1,169 @@ > +.\" $FreeBSD$ > +.\" > +.\" Copyright (c) 2015 Adrian Chadd > +.\" > +.\" Permission to use, copy, modify, and distribute this software for any > +.\" purpose with or without fee is hereby granted, provided that the above > +.\" copyright notice and this permission notice appear in all copies. > +.\" > +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL > WARRANTIES > +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF > +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE > FOR > +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES > +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN > +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT > OF > +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. > +.\" > +.Dd September 25, 2015 > +.Dt OTUS 4 > +.Os > +.Sh NAME > +.Nm otus > +.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network device > +.Sh SYNOPSIS > +To compile this driver into the kernel, > +place the following lines in your kernel configuration file: > +.Bd -ragged -offset indent > +.Cd "device ehci" > +.Cd "device uhci" > +.Cd "device ohci" > +.Cd "device usb" > +.Cd "device otus" > +.Cd "device wlan" > +.Ed > +.Pp > +Alternatively, to load the driver as a module at boot time, > +place the following line in > +.Xr loader.conf 5 : > +.Bd -literal -offset indent > +if_otus_load="YES" > +.Ed > +.Sh DESCRIPTION > +The > +.Nm > +driver supports USB 2.0 wireless network devices based on the Atheros > +AR9170 chipset. > +.Pp > +The Atheros AR9170 is a draft-802.11n adapter that uses an external > +radio to operate in either 2.4GHz only or 2.4GHz and 5GHz. > +.Pp > +The AR9101 radio supports 1T1R operation in 2GHz only. > +.Pp > +The AR9102 radio supports 2T2R operation in 2GHz only. > +.Pp > +The AR9104 radio supports 2T2R operation both 2GHz and 5GHz. > +.Pp > +These are the modes the > +.Nm > +driver can operate in: > +.Bl -tag -width "IBSS-masterXX" > +.It BSS mode > +Also known as > +.Em infrastructure > +mode, this is used when associating with an access point, through > +which all traffic passes. > +This mode is the default. > +.El > +.Pp > +The > +.Nm > +driver can be configured to use > +Wired Equivalent Privacy (WEP) or > +Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). > +WPA is the de facto encryption standard for wireless networks. > +It is strongly recommended that WEP > +not be used as the sole mechanism > +to secure wireless communication, > +due to serious weaknesses in it. > +.Pp > +The > +.Nm > +driver can be configured at runtime with > +.Xr ifconfig 8 . > +.Sh FILES > +The driver needs at least version 1.0 of the following firmware files, > +which is loaded when an interface is attached: > +.Pp > +.Bl -tag -width Ds -offset indent -compact > +.It Pa /boot/kernel/otusfw-init.ko > +.It Pa /boot/kernel/otusfw-main.ko > +.El > +.Sh HARDWARE > +The > +.Nm > +driver provices support for Atheros AR9170 USB IEEE 802.11b/g/n > +wireless network adapters, including: > +.Pp > +.Bl -tag -width Ds -offset indent -compact > +.It 3Com 3CRUSBN275 > +.It Arcadyan WN7512 > +.\" .It AVM FRITZ!WLAN USB Stick N > +.It CACE AirPcap \&Nx > +.It D-Link DWA-130 rev \&D1 > +.It D-Link DWA-160 rev A1 > +.It D-Link DWA-160 rev A2 > +.It IO-Data WN-GDN/US2 > +.It NEC Aterm WL300NU-G > +.It Netgear WNDA3100 > +.It Netgear WN111 v2 > +.It Planex GW-US300 > +.It SMC Networks SMCWUSB-N2 > +.It TP-Link TL-WN821N v1, v2 > +.It Ubiquiti SR71 USB > +.It Unex DNUA-81 > +.It Z-Com UB81 > +.It Z-Com UB82 > +.It ZyXEL NWD-271N > +.El > +.Sh EXAMPLES > +Join an existing BSS network (i.e., connect to an access point): > +.Bd -literal -offset indent > +ifconfig wlan create wlandev otus0 inet 192.168.0.20 \e > + netmask 0xffffff00 > +.Ed > +.Pp > +Join a specific BSS network with network name > +.Dq Li my_net : > +.Pp > +.Dl "ifconfig wlan create wlandev otus0 ssid my_net up" > +.Pp > +Join a specific BSS network with 64-bit WEP encryption: > +.Bd -literal -offset indent > +ifconfig wlan create wlandev otus0 ssid my_net \e > + wepmode on wepkey 0x1234567890 weptxkey 1 up > +.Ed > +.Sh DIAGNOSTICS > +.Bl -diag > +.It "%s: failed load firmware of file otusfw-main" > +For some reason, the driver was unable to read the microcode file from the > +filesystem. > +The file might be missing or corrupted. > +.El > +.Sh SEE ALSO > +.Xr intro 1 , > +.Xr netintro 4 , > +.Xr otusfw 4 , > +.Xr usb 4 , > +.Xr wlan 4 , > +.Xr arp 8 , > +.Xr hostapd 8 , > +.Xr ifconfig 8 , > +.Xr wpa_supplicant 8 > +.Sh HISTORY > +The > +.Nm > +driver first appeared in > +.Ox 4.6 . > +.Sh AUTHORS > +.An -nosplit > +The > +.Nm > +driver was written by > +.An Damien Bergamini Aq Mt damien@openbsd.org > +and ported by > +.An Adrian Chadd Aq Mt adrian@freebsd.org . > +.Sh CAVEATS > +The > +.Nm > +driver only supports 802.11a/b/g operations. > +802.11 operation is not supported at this time. > > Added: head/share/man/man4/otusfw.4 > > ============================================================================== > --- /dev/null 00:00:00 1970 (empty, because file is newly added) > +++ head/share/man/man4/otusfw.4 Sat Sep 26 07:09:46 2015 > (r288254) > @@ -0,0 +1,169 @@ > +.\" $FreeBSD$ > +.\" > +.\" Copyright (c) 2015 Adrian Chadd > +.\" > +.\" Permission to use, copy, modify, and distribute this software for any > +.\" purpose with or without fee is hereby granted, provided that the above > +.\" copyright notice and this permission notice appear in all copies. > +.\" > +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL > WARRANTIES > +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF > +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE > FOR > +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES > +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN > +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT > OF > +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. > +.\" > +.Dd September 25, 2015 > +.Dt OTUS 4 > +.Os > +.Sh NAME > +.Nm otus > +.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network device > +.Sh SYNOPSIS > +To compile this driver into the kernel, > +place the following lines in your kernel configuration file: > +.Bd -ragged -offset indent > +.Cd "device ehci" > +.Cd "device uhci" > +.Cd "device ohci" > +.Cd "device usb" > +.Cd "device otus" > +.Cd "device wlan" > +.Ed > +.Pp > +Alternatively, to load the driver as a module at boot time, > +place the following line in > +.Xr loader.conf 5 : > +.Bd -literal -offset indent > +if_otus_load="YES" > +.Ed > +.Sh DESCRIPTION > +The > +.Nm > +driver supports USB 2.0 wireless network devices based on the Atheros > +AR9170 chipset. > +.Pp > +The Atheros AR9170 is a draft-802.11n adapter that uses an external > +radio to operate in either 2.4GHz only or 2.4GHz and 5GHz. > +.Pp > +The AR9101 radio supports 1T1R operation in 2GHz only. > +.Pp > +The AR9102 radio supports 2T2R operation in 2GHz only. > +.Pp > +The AR9104 radio supports 2T2R operation both 2GHz and 5GHz. > +.Pp > +These are the modes the > +.Nm > +driver can operate in: > +.Bl -tag -width "IBSS-masterXX" > +.It BSS mode > +Also known as > +.Em infrastructure > +mode, this is used when associating with an access point, through > +which all traffic passes. > +This mode is the default. > +.El > +.Pp > +The > +.Nm > +driver can be configured to use > +Wired Equivalent Privacy (WEP) or > +Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). > +WPA is the de facto encryption standard for wireless networks. > +It is strongly recommended that WEP > +not be used as the sole mechanism > +to secure wireless communication, > +due to serious weaknesses in it. > +.Pp > +The > +.Nm > +driver can be configured at runtime with > +.Xr ifconfig 8 . > +.Sh FILES > +The driver needs at least version 1.0 of the following firmware files, > +which is loaded when an interface is attached: > +.Pp > +.Bl -tag -width Ds -offset indent -compact > +.It Pa /boot/kernel/otusfw-init.ko > +.It Pa /boot/kernel/otusfw-main.ko > +.El > +.Sh HARDWARE > +The > +.Nm > +driver provices support for Atheros AR9170 USB IEEE 802.11b/g/n > +wireless network adapters, including: > +.Pp > +.Bl -tag -width Ds -offset indent -compact > +.It 3Com 3CRUSBN275 > +.It Arcadyan WN7512 > +.\" .It AVM FRITZ!WLAN USB Stick N > +.It CACE AirPcap \&Nx > +.It D-Link DWA-130 rev \&D1 > +.It D-Link DWA-160 rev A1 > +.It D-Link DWA-160 rev A2 > +.It IO-Data WN-GDN/US2 > +.It NEC Aterm WL300NU-G > +.It Netgear WNDA3100 > +.It Netgear WN111 v2 > +.It Planex GW-US300 > +.It SMC Networks SMCWUSB-N2 > +.It TP-Link TL-WN821N v1, v2 > +.It Ubiquiti SR71 USB > +.It Unex DNUA-81 > +.It Z-Com UB81 > +.It Z-Com UB82 > +.It ZyXEL NWD-271N > +.El > +.Sh EXAMPLES > +Join an existing BSS network (i.e., connect to an access point): > +.Bd -literal -offset indent > +ifconfig wlan create wlandev otus0 inet 192.168.0.20 \e > + netmask 0xffffff00 > +.Ed > +.Pp > +Join a specific BSS network with network name > +.Dq Li my_net : > +.Pp > +.Dl "ifconfig wlan create wlandev otus0 ssid my_net up" > +.Pp > +Join a specific BSS network with 64-bit WEP encryption: > +.Bd -literal -offset indent > +ifconfig wlan create wlandev otus0 ssid my_net \e > + wepmode on wepkey 0x1234567890 weptxkey 1 up > +.Ed > +.Sh DIAGNOSTICS > +.Bl -diag > +.It "%s: failed load firmware of file otusfw-main" > +For some reason, the driver was unable to read the microcode file from the > +filesystem. > +The file might be missing or corrupted. > +.El > +.Sh SEE ALSO > +.Xr intro 1 , > +.Xr netintro 4 , > +.Xr otusfw 4 , > +.Xr usb 4 , > +.Xr wlan 4 , > +.Xr arp 8 , > +.Xr hostapd 8 , > +.Xr ifconfig 8 , > +.Xr wpa_supplicant 8 > +.Sh HISTORY > +The > +.Nm > +driver first appeared in > +.Ox 4.6 . > +.Sh AUTHORS > +.An -nosplit > +The > +.Nm > +driver was written by > +.An Damien Bergamini Aq Mt damien@openbsd.org > +and ported by > +.An Adrian Chadd Aq Mt adrian@freebsd.org . > +.Sh CAVEATS > +The > +.Nm > +driver only supports 802.11a/b/g operations. > +802.11 operation is not supported at this time. > _______________________________________________ > svn-src-all@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-all > To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" > From owner-svn-src-head@freebsd.org Sat Sep 26 18:37:29 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD146A09661; Sat, 26 Sep 2015 18:37:29 +0000 (UTC) (envelope-from jonathan@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id BD6F9326; Sat, 26 Sep 2015 18:37:29 +0000 (UTC) (envelope-from jonathan@FreeBSD.org) Received: from [IPv6:::1] (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id BC256139E; Sat, 26 Sep 2015 18:37:28 +0000 (UTC) (envelope-from jonathan@FreeBSD.org) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2102\)) Subject: Re: svn commit: r286170 - head/share/man/man9 From: Jonathan Anderson In-Reply-To: <55C09869.2040605@selasky.org> Cc: Ed Schouten , Bruce Evans , John-Mark Gurney , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <6C371C1F-8758-4B31-A4D3-CF3D1A32DF9D@FreeBSD.org> References: <201508020022.t720MFqp023071@repo.freebsd.org> <20150802145434.V1128@besplex.bde.org> <55C09869.2040605@selasky.org> To: Hans Petter Selasky X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Date: Sat, 26 Sep 2015 18:37:29 -0000 X-Original-Date: Tue, 4 Aug 2015 10:00:03 -0230 X-List-Received-Date: Sat, 26 Sep 2015 18:37:29 -0000 > On Aug 4, 2015, at 8:18 AM, Hans Petter Selasky = wrote: >=20 > Wouldn't the argument be the same for queue.3 . Once C-compilers = finally decide to compile time support queues, we should throw queue.3 = aswell? Sure! Not right away, and not in a way that causes unnecessary churn, = but if there are benefits (e.g., better optimizations, better standards = compliance) and a diversity of compilers support a new C feature in both = our stable branches and the ports tree (for lots of architectures), then = why not? (note: by =E2=80=9Cdiversity=E2=80=9D, I don=E2=80=99t mean =E2=80=9CClang= and GCC support it on amd64 but none of the vendor toolchains for other = important architectures do=E2=80=9D) There are lots of things like this, where FreeBSD folk historically = said, =E2=80=9CK&R/C89/C99/C11 doesn=E2=80=99t provide feature X, so we = need to write some macros to do it ourselves.=E2=80=9D That=E2=80=99s = great, FreeBSD was ahead of its time, but once the C standard catches = up, isn=E2=80=99t it good to hew to the standard wherever it=E2=80=99s = practical to do so? stdatomic.h, _Generic, _Noreturn, static = assertions... the language is growing lots of useful features. = Wouldn=E2=80=99t it be good to adopt them when we can and trim = non-standard code? Cheers, Jon -- jonathan@FreeBSD.org From owner-svn-src-head@freebsd.org Sat Sep 26 19:18:41 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3456CA0AD88 for ; Sat, 26 Sep 2015 19:18:41 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk0-f170.google.com (mail-qk0-f170.google.com [209.85.220.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E7B38847 for ; Sat, 26 Sep 2015 19:18:40 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qkap81 with SMTP id p81so54423163qka.2 for ; Sat, 26 Sep 2015 12:18:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=JR9EcRedyoCKTnMAC0jrg+oqoQHfSuQPEjx3a1HDyzs=; b=M2+5bVrD9ObUo+bKihoajKiA+K0KUMYJl5KI12KWQ0CnPuhW9b+KG+CCl0M5DRH/Nn An5Dc95M5rfbTsH/BVjBOj3C0wxRnTxQ4UuCpbSWiYofFGcTQzI+/HKggifKQjoSXjnx G+8nrBmx7A0oErHX/GwZSam7tbptQ+cnD55XQUYcSv3laSmuStGOWSOl64WbTA7RcbDs Y9TjtB2sSaUINCXviCcCu8k0WLUy6I6Iiv7JrZ3507gJckPOGrOENvLJyo8xzlzwlUKA Dbj7Un38LgOk6L7/r0hpQ/wM6cZ+UfJwJ9LXGNhNlV5xTtDfhczTO+roYmgJiPfBnw7D toHw== X-Gm-Message-State: ALoCoQmJdiEDnoIHcmIBf8ISurYS8UbHhYvrX06GvBTKW7gZYk/TQTjIfnauUGD+RCSVXx8uoXPg MIME-Version: 1.0 X-Received: by 10.55.204.66 with SMTP id r63mr13347048qki.10.1443295114354; Sat, 26 Sep 2015 12:18:34 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Sat, 26 Sep 2015 12:18:34 -0700 (PDT) X-Originating-IP: [2601:280:4900:3700:70fd:56c:2b2e:19a] In-Reply-To: <5606A9AE.7070303@FreeBSD.org> References: <201509252303.t8PN3Wx0098623@repo.freebsd.org> <5605D4FC.4040205@FreeBSD.org> <5606A9AE.7070303@FreeBSD.org> Date: Sat, 26 Sep 2015 13:18:34 -0600 X-Google-Sender-Auth: dCxC0BiuSDNHjSCxkECMAso5iOk Message-ID: Subject: Re: svn commit: r288241 - head/share/mk From: Warner Losh To: Bryan Drewery Cc: NGie Cooper , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 19:18:41 -0000 On Sat, Sep 26, 2015 at 8:20 AM, Bryan Drewery wrote: > On 9/26/2015 7:19 AM, Warner Losh wrote: > > > > > > On Fri, Sep 25, 2015 at 11:11 PM, NGie Cooper > > wrote: > > > > On Fri, Sep 25, 2015 at 4:13 PM, Bryan Drewery > > wrote: > > > On 9/25/2015 4:12 PM, NGie Cooper wrote: > > >> On Fri, Sep 25, 2015 at 4:03 PM, Bryan Drewery < > bdrewery@freebsd.org > wrote: > > >>> Author: bdrewery > > >>> Date: Fri Sep 25 23:03:32 2015 > > >>> New Revision: 288241 > > >>> URL: https://svnweb.freebsd.org/changeset/base/288241 > > >>> > > >>> Log: > > >>> Remove 'set -e' that are no longer needed as it is already > default. > > >>> > > >>> When bmake was initially imported at r241298 shell commands > were no longer > > >>> ran with 'set -e' as they were before. This was fixed in > r254980 so they > > >>> again always use 'set -e'. > > >> > > >> The bsd.subdir.mk portion of the change > looks > > like it would cause > > >> issues depending on what's being called (fmake or an earlier > version > > >> of sys.mk might be used at install time). > > >> > > > > > > We only support bmake in head. And the 'set -e' were only added for > > > bmake compatibility before it was fixed to work like fmake did. > > > > Sorry. Fuzzy memory on the latter item. Yeah, I requested it a > > couple years ago. > > > > We might only support bmake in head, but there's nothing preventing > > someone from doing a source upgrade from one of the older 10 releases > > to 11+. Thinking about this a bit more, this is an extreme edge case > > that doesn't really matter, because people doing source upgrades > > across major releases really should be doing them from the latest > > minor release for the major release > > > > > > I wouldn't state it so glibly. It is not as extreme as you might think. > > For a > > long time compiling -current from a host that was one or two major > > releases old has worked. Currently we advertise that we can upgrade > > from the stable/9 branch point or newer to tip of head (based on values > > in Makefile.inc1). > > > > I don't believe that Bryan's change set changes that in any significant > way, > > but given the large amount of churn he and I (and others) have generated > in > > /usr/share/mk, testing from a 9.x machine would be prudent. I didn't > remove > > some minor bits of code, and also made sys.mk compatible > > with the FreeBSD 9 > > fmake because of issues like this. > > > > Note that fmake compatibility was explicitly removed around the > META_MODE import time. fmake doesn't work at all currently. > That's only partially true. Some of the compatibility was removed, but not all. We still have (and still want) the compatibility for detecting whether or not to bootstrap bmake or not in src/Makefile. We also added compatibility to sys.mk so that we could build older systems on -current hosts with fmake which uses the system sys.mk for the earliest parts of the build.. So there's still some vestiges of it in the system, and they are conscious decisions to leave them in place. What was removed was building world with fmake for the whole shooting match. Also removed were certain hacks in the other files than sys.mk (and what it includes) to support both. But regardless, we need to make sure that the minimal version we support is actually accurate in Makefile.inc1. And that can only be done by direct testing. I tried to remove it all, but there was much gnashing of teeth and such when I proposed it so I backed away. There's too much need and too many use cases for slivers of fmake support in the tree still. Warner From owner-svn-src-head@freebsd.org Sat Sep 26 19:34:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 32965A0969A for ; Sat, 26 Sep 2015 19:34:25 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f52.google.com (mail-qg0-f52.google.com [209.85.192.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E6209F2A for ; Sat, 26 Sep 2015 19:34:24 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgez77 with SMTP id z77so94128316qge.1 for ; Sat, 26 Sep 2015 12:34:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=zzrFrLo8XrC/tSqkyEo/vr/EuALHfqKPd6VnHAscb7Y=; b=eIs4r/c5KrR+kneBrHomUSwsXXAI/VCCUGU9Q0nOjMc4vG+CeyqQ6KOUX8LIRTESDX hfbWiXRnV9T3UCl4WCxsPcUGtcjzrQ49NcMn9wiaCsh6a0MtHaDM5GfGLSC/ryF5+NUB NrZhjQNfcuzdx5TcUXwfB44EGasTbdUb/8gXPUak9q4JMi1tU+Jydlhb6vXGBlihq6z4 rviXZ9zyU21SxV1PBuzy+g5fafsbss/kt8Nx3QakVdzDWFkC9Q4w6IHgS7/uDtR4vQcp wHBYz9WX2ffyrlXSCp66m1CY02C96zeCMcBOHEdWByd8WntVa6pWY0RbL0JrP+pn9LCV N6mg== X-Gm-Message-State: ALoCoQlaLG7HqsBe6YEsZnnGS/+M16cXol5yOlchhi9/jcPIEBE8zqP8WT0oNAp+QUyycaX9yfs6 MIME-Version: 1.0 X-Received: by 10.140.83.202 with SMTP id j68mr13850427qgd.46.1443296057467; Sat, 26 Sep 2015 12:34:17 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Sat, 26 Sep 2015 12:34:17 -0700 (PDT) X-Originating-IP: [2601:280:4900:3700:70fd:56c:2b2e:19a] In-Reply-To: <20150926170140.GC3158@zxy.spb.ru> References: <201509151424.t8FEOKUs019633@repo.freebsd.org> <20150926170140.GC3158@zxy.spb.ru> Date: Sat, 26 Sep 2015 13:34:17 -0600 X-Google-Sender-Auth: ZJVcuteI5sgSEDexJQt6ihbhy8Y Message-ID: Subject: Re: svn commit: r287824 - head From: Warner Losh To: Slawa Olhovchenkov Cc: Brad Davis , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 19:34:25 -0000 traditionally, this hasn't been documented in UPDATING Warner On Sat, Sep 26, 2015 at 11:01 AM, Slawa Olhovchenkov wrote: > On Tue, Sep 15, 2015 at 02:24:20PM +0000, Brad Davis wrote: > > > Author: brd (doc,ports committer) > > Date: Tue Sep 15 14:24:19 2015 > > New Revision: 287824 > > URL: https://svnweb.freebsd.org/changeset/base/287824 > > > > Log: > > Fix grammer in an error message > > > > PR: 202310 > > Submitted by: Chris Petrik > > Approved by: will > > May be need to include this note in /usr/src/UPDATING? > And for other branches too. > > > Modified: > > head/Makefile.inc1 > > > > Modified: head/Makefile.inc1 > > > ============================================================================== > > --- head/Makefile.inc1 Tue Sep 15 13:37:48 2015 (r287823) > > +++ head/Makefile.inc1 Tue Sep 15 14:24:19 2015 (r287824) > > @@ -1258,7 +1258,7 @@ _elftoolchain_libs= lib/libelf lib/libdw > > > > legacy: > > .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 > > - @echo "ERROR: Source upgrades from versions prior to 8.0 not > supported."; \ > > + @echo "ERROR: Source upgrades from versions prior to 8.0 are not > supported."; \ > > false > > .endif > > .for _tool in tools/build ${_elftoolchain_libs} > > _______________________________________________ > > svn-src-all@freebsd.org mailing list > > https://lists.freebsd.org/mailman/listinfo/svn-src-all > > To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" > > From owner-svn-src-head@freebsd.org Sat Sep 26 20:23:03 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 63470A0823B; Sat, 26 Sep 2015 20:23:03 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 4D34D97C; Sat, 26 Sep 2015 20:23:03 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 45E6611E9; Sat, 26 Sep 2015 20:23:03 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id E9AAF1345A; Sat, 26 Sep 2015 20:23:02 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id GX0fxiofg_-F; Sat, 26 Sep 2015 20:23:00 +0000 (UTC) From: Bryan Drewery DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 925B513454 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r288270 - head/usr.bin Message-Id: <73F521FD-0959-4DC0-9F3B-F0EA19DDD578@FreeBSD.org> Date: Sat, 26 Sep 2015 13:22:54 -0700 References: <201509261428.t8QES5KU004359@repo.freebsd.org> In-Reply-To: <201509261428.t8QES5KU004359@repo.freebsd.org> To: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" X-Mailer: iPhone Mail (12H143) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 20:23:03 -0000 Please revert this. I am away for the day. Regards, Bryan Drewery > On Sep 26, 2015, at 07:28, Bryan Drewery wrote: >=20 > Author: bdrewery > Date: Sat Sep 26 14:28:04 2015 > New Revision: 288270 > URL: https://svnweb.freebsd.org/changeset/base/288270 >=20 > Log: > Hookup mkcsmapper_static and mkesdb_static for all but install. >=20 > These are only handled as 'build-tools' in Makefile.inc1. This causes > 'make clean' from the top of the tree to not clean the directories. It a= lso > effectively has kept them disconnected and risks them bitrotting. The > buildworld process never cleans them either. >=20 > Connect them so they will always be built, cleaned, etc, but never instal= led. >=20 > Discussed with: imp (briefly) > Sponsored by: EMC / Isilon Storage Division >=20 > Modified: > head/usr.bin/Makefile >=20 > Modified: head/usr.bin/Makefile > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D > --- head/usr.bin/Makefile Sat Sep 26 14:27:21 2015 (r288269) > +++ head/usr.bin/Makefile Sat Sep 26 14:28:04 2015 (r288270) > @@ -401,6 +401,13 @@ SUBDIR+=3D who > SUBDIR+=3D svn > .endif >=20 > +# These are normally only handled for build-tools. Connect them for > +# all but installing to keep them reasonably connected. > +.if !make(install) > +SUBDIR+=3D mkcsmapper_static > +SUBDIR+=3D mkesdb_static > +.endif > + > .include >=20 > SUBDIR:=3D ${SUBDIR:O} >=20 From owner-svn-src-head@freebsd.org Sat Sep 26 20:26:06 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EEC4FA084DA; Sat, 26 Sep 2015 20:26:06 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 90108C64; Sat, 26 Sep 2015 20:26:06 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QKQ6Qo068196; Sat, 26 Sep 2015 20:26:06 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QKQ67C068195; Sat, 26 Sep 2015 20:26:06 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201509262026.t8QKQ67C068195@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: "Conrad E. Meyer" Date: Sat, 26 Sep 2015 20:26:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288275 - head/usr.bin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 20:26:07 -0000 Author: cem Date: Sat Sep 26 20:26:05 2015 New Revision: 288275 URL: https://svnweb.freebsd.org/changeset/base/288275 Log: Revert r288270 to fix the build Submitted by: bdrewery Sponsored by: EMC / Isilon Storage Division Modified: head/usr.bin/Makefile Modified: head/usr.bin/Makefile ============================================================================== --- head/usr.bin/Makefile Sat Sep 26 17:45:10 2015 (r288274) +++ head/usr.bin/Makefile Sat Sep 26 20:26:05 2015 (r288275) @@ -401,13 +401,6 @@ SUBDIR+= who SUBDIR+= svn .endif -# These are normally only handled for build-tools. Connect them for -# all but installing to keep them reasonably connected. -.if !make(install) -SUBDIR+= mkcsmapper_static -SUBDIR+= mkesdb_static -.endif - .include SUBDIR:= ${SUBDIR:O} From owner-svn-src-head@freebsd.org Sat Sep 26 20:34:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD419A08E51; Sat, 26 Sep 2015 20:34:58 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id B9B163BF; Sat, 26 Sep 2015 20:34:58 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id B099F17AB; Sat, 26 Sep 2015 20:34:58 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 79BDB134A6; Sat, 26 Sep 2015 20:34:58 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id 32XB1sMY5K9w; Sat, 26 Sep 2015 20:34:56 +0000 (UTC) Content-Type: text/plain; charset=us-ascii DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com EF8CB134A2 Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r288275 - head/usr.bin From: Bryan Drewery X-Mailer: iPhone Mail (12H143) In-Reply-To: <201509262026.t8QKQ67C068195@repo.freebsd.org> Date: Sat, 26 Sep 2015 13:34:55 -0700 Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <821CDD9B-93B7-4BDD-A980-038DEB372661@FreeBSD.org> References: <201509262026.t8QKQ67C068195@repo.freebsd.org> To: "Conrad E. Meyer" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 20:34:58 -0000 Thanks. Broke sparc64 and aarch64 at least. Regards, Bryan Drewery > On Sep 26, 2015, at 13:26, Conrad E. Meyer wrote: >=20 > Author: cem > Date: Sat Sep 26 20:26:05 2015 > New Revision: 288275 > URL: https://svnweb.freebsd.org/changeset/base/288275 >=20 > Log: > Revert r288270 to fix the build >=20 > Submitted by: bdrewery > Sponsored by: EMC / Isilon Storage Division >=20 > Modified: > head/usr.bin/Makefile >=20 > Modified: head/usr.bin/Makefile > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D > --- head/usr.bin/Makefile Sat Sep 26 17:45:10 2015 (r288274) > +++ head/usr.bin/Makefile Sat Sep 26 20:26:05 2015 (r288275) > @@ -401,13 +401,6 @@ SUBDIR+=3D who > SUBDIR+=3D svn > .endif >=20 > -# These are normally only handled for build-tools. Connect them for > -# all but installing to keep them reasonably connected. > -.if !make(install) > -SUBDIR+=3D mkcsmapper_static > -SUBDIR+=3D mkesdb_static > -.endif > - > .include >=20 > SUBDIR:=3D ${SUBDIR:O} >=20 From owner-svn-src-head@freebsd.org Sat Sep 26 20:36:41 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 289C5A09022; Sat, 26 Sep 2015 20:36:41 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D78EA7C3; Sat, 26 Sep 2015 20:36:40 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.84 (FreeBSD)) (envelope-from ) id 1ZfwCz-000COm-FZ; Sat, 26 Sep 2015 23:36:37 +0300 Date: Sat, 26 Sep 2015 23:36:37 +0300 From: Slawa Olhovchenkov To: Warner Losh Cc: Brad Davis , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r287824 - head Message-ID: <20150926203637.GV21849@zxy.spb.ru> References: <201509151424.t8FEOKUs019633@repo.freebsd.org> <20150926170140.GC3158@zxy.spb.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 20:36:41 -0000 On Sat, Sep 26, 2015 at 01:34:17PM -0600, Warner Losh wrote: > traditionally, this hasn't been documented in UPDATING I see, may be documented in UPDATING is will be good practic? And, I am dream about more accurate pointing required revision -- for example, upgrading from 8.4-RELEASE to 10-STABLE is imposible, first need upgrade world to last 8-STABLE. > On Sat, Sep 26, 2015 at 11:01 AM, Slawa Olhovchenkov wrote: > > > On Tue, Sep 15, 2015 at 02:24:20PM +0000, Brad Davis wrote: > > > > > Author: brd (doc,ports committer) > > > Date: Tue Sep 15 14:24:19 2015 > > > New Revision: 287824 > > > URL: https://svnweb.freebsd.org/changeset/base/287824 > > > > > > Log: > > > Fix grammer in an error message > > > > > > PR: 202310 > > > Submitted by: Chris Petrik > > > Approved by: will > > > > May be need to include this note in /usr/src/UPDATING? > > And for other branches too. > > > > > Modified: > > > head/Makefile.inc1 > > > > > > Modified: head/Makefile.inc1 > > > > > ============================================================================== > > > --- head/Makefile.inc1 Tue Sep 15 13:37:48 2015 (r287823) > > > +++ head/Makefile.inc1 Tue Sep 15 14:24:19 2015 (r287824) > > > @@ -1258,7 +1258,7 @@ _elftoolchain_libs= lib/libelf lib/libdw > > > > > > legacy: > > > .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 > > > - @echo "ERROR: Source upgrades from versions prior to 8.0 not > > supported."; \ > > > + @echo "ERROR: Source upgrades from versions prior to 8.0 are not > > supported."; \ > > > false > > > .endif > > > .for _tool in tools/build ${_elftoolchain_libs} > > > _______________________________________________ > > > svn-src-all@freebsd.org mailing list > > > https://lists.freebsd.org/mailman/listinfo/svn-src-all > > > To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" > > > > From owner-svn-src-head@freebsd.org Sat Sep 26 20:41:17 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7DA37A092B4 for ; Sat, 26 Sep 2015 20:41:17 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f52.google.com (mail-qg0-f52.google.com [209.85.192.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 39FCFB20 for ; Sat, 26 Sep 2015 20:41:16 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgx61 with SMTP id 61so94357743qgx.3 for ; Sat, 26 Sep 2015 13:41:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=Qho0rwTWa9JKbJ0cVqlnd3r/e1il4CMXqpb9hyTO3g0=; b=TFEuD5n6gws0wRrfU50wUpvEpK5yqEzY7535BvBszuO0tFwfraWy6lHImzoxygxY4q lbJm5wRM/Jvx5HGr5c/4aP9Abg6onWylEb4ozvFg1X29ZnAM4Kqy/9J8FJHy1DkcdFG+ KzL7P7QM6KJzkFcQAdTgWuQt0Dt9LiAC1snFuZjp4xeJzpEW6L2X33A8sn2ulk62brZN D+SO0x8OjC7FobyuMlZYWwsEbVltMOA6FLeQTcMfYQ9pRs8I7hgRnvT2PIfmluxu5rv9 t+dMnkEmFWvswMjPMIRLq2NvpJqV2RyDa5iRjM3xxXA7rQkhUe3zf2iOKkcO5dqRf1t4 uqRg== X-Gm-Message-State: ALoCoQlSOnstgUhuOvpwfhAhxZqCq3eNSu4QAZ7X+mtdX2a1m/TO8SZokR4dVhtjdLdNQtq7GaHL MIME-Version: 1.0 X-Received: by 10.140.29.3 with SMTP id a3mr13338320qga.97.1443300075757; Sat, 26 Sep 2015 13:41:15 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Sat, 26 Sep 2015 13:41:15 -0700 (PDT) X-Originating-IP: [50.253.99.174] In-Reply-To: <20150926203637.GV21849@zxy.spb.ru> References: <201509151424.t8FEOKUs019633@repo.freebsd.org> <20150926170140.GC3158@zxy.spb.ru> <20150926203637.GV21849@zxy.spb.ru> Date: Sat, 26 Sep 2015 14:41:15 -0600 X-Google-Sender-Auth: fngED5SAMk4M-q1iHymqEOVldeM Message-ID: Subject: Re: svn commit: r287824 - head From: Warner Losh To: Slawa Olhovchenkov Cc: Brad Davis , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 20:41:17 -0000 What's the error when you try from 8.4-RELEASE? Warner On Sat, Sep 26, 2015 at 2:36 PM, Slawa Olhovchenkov wrote: > On Sat, Sep 26, 2015 at 01:34:17PM -0600, Warner Losh wrote: > > > traditionally, this hasn't been documented in UPDATING > > I see, may be documented in UPDATING is will be good practic? > And, I am dream about more accurate pointing required revision -- for > example, upgrading from 8.4-RELEASE to 10-STABLE is imposible, first > need upgrade world to last 8-STABLE. > > > On Sat, Sep 26, 2015 at 11:01 AM, Slawa Olhovchenkov > wrote: > > > > > On Tue, Sep 15, 2015 at 02:24:20PM +0000, Brad Davis wrote: > > > > > > > Author: brd (doc,ports committer) > > > > Date: Tue Sep 15 14:24:19 2015 > > > > New Revision: 287824 > > > > URL: https://svnweb.freebsd.org/changeset/base/287824 > > > > > > > > Log: > > > > Fix grammer in an error message > > > > > > > > PR: 202310 > > > > Submitted by: Chris Petrik > > > > Approved by: will > > > > > > May be need to include this note in /usr/src/UPDATING? > > > And for other branches too. > > > > > > > Modified: > > > > head/Makefile.inc1 > > > > > > > > Modified: head/Makefile.inc1 > > > > > > > > ============================================================================== > > > > --- head/Makefile.inc1 Tue Sep 15 13:37:48 2015 > (r287823) > > > > +++ head/Makefile.inc1 Tue Sep 15 14:24:19 2015 > (r287824) > > > > @@ -1258,7 +1258,7 @@ _elftoolchain_libs= lib/libelf lib/libdw > > > > > > > > legacy: > > > > .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 > > > > - @echo "ERROR: Source upgrades from versions prior to 8.0 not > > > supported."; \ > > > > + @echo "ERROR: Source upgrades from versions prior to 8.0 are > not > > > supported."; \ > > > > false > > > > .endif > > > > .for _tool in tools/build ${_elftoolchain_libs} > > > > _______________________________________________ > > > > svn-src-all@freebsd.org mailing list > > > > https://lists.freebsd.org/mailman/listinfo/svn-src-all > > > > To unsubscribe, send any mail to " > svn-src-all-unsubscribe@freebsd.org" > > > > > > > From owner-svn-src-head@freebsd.org Sat Sep 26 22:16:55 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 81EA0A0A921; Sat, 26 Sep 2015 22:16:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 72A0CA61; Sat, 26 Sep 2015 22:16:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QMGt2v013958; Sat, 26 Sep 2015 22:16:55 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QMGtWV013957; Sat, 26 Sep 2015 22:16:55 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201509262216.t8QMGtWV013957@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sat, 26 Sep 2015 22:16:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288276 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:16:55 -0000 Author: markj Date: Sat Sep 26 22:16:54 2015 New Revision: 288276 URL: https://svnweb.freebsd.org/changeset/base/288276 Log: Fix argument ordering in vn_printf(). MFC after: 3 days Modified: head/sys/kern/vfs_subr.c Modified: head/sys/kern/vfs_subr.c ============================================================================== --- head/sys/kern/vfs_subr.c Sat Sep 26 20:26:05 2015 (r288275) +++ head/sys/kern/vfs_subr.c Sat Sep 26 22:16:54 2015 (r288276) @@ -3071,8 +3071,8 @@ vn_printf(struct vnode *vp, const char * "cleanbuf %d dirtybuf %d\n", vp->v_object, vp->v_object->ref_count, vp->v_object->resident_page_count, - vp->v_bufobj.bo_dirty.bv_cnt, - vp->v_bufobj.bo_clean.bv_cnt); + vp->v_bufobj.bo_clean.bv_cnt, + vp->v_bufobj.bo_dirty.bv_cnt); printf(" "); lockmgr_printinfo(vp->v_vnlock); if (vp->v_data != NULL) From owner-svn-src-head@freebsd.org Sat Sep 26 22:19:08 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7D4D4A0AA63; Sat, 26 Sep 2015 22:19:08 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 60BA3C2F; Sat, 26 Sep 2015 22:19:08 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QMJ8S4014091; Sat, 26 Sep 2015 22:19:08 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QMJ89K014090; Sat, 26 Sep 2015 22:19:08 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509262219.t8QMJ89K014090@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 22:19:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288277 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:19:08 -0000 Author: adrian Date: Sat Sep 26 22:19:07 2015 New Revision: 288277 URL: https://svnweb.freebsd.org/changeset/base/288277 Log: Oops - commit the correct manpage content for otusfw.4. Modified: head/share/man/man4/otusfw.4 Modified: head/share/man/man4/otusfw.4 ============================================================================== --- head/share/man/man4/otusfw.4 Sat Sep 26 22:16:54 2015 (r288276) +++ head/share/man/man4/otusfw.4 Sat Sep 26 22:19:07 2015 (r288277) @@ -1,5 +1,4 @@ .\" $FreeBSD$ -.\" .\" Copyright (c) 2015 Adrian Chadd .\" .\" Permission to use, copy, modify, and distribute this software for any @@ -15,155 +14,32 @@ .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .Dd September 25, 2015 -.Dt OTUS 4 +.Dt otusfw 4 .Os .Sh NAME -.Nm otus -.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network device +.Nm otusfw +.Nd "Firmware Module for AR9170 driver" .Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your kernel configuration file: +To compile this module into the kernel, place the following line in your +kernel configuration file: .Bd -ragged -offset indent -.Cd "device ehci" -.Cd "device uhci" -.Cd "device ohci" -.Cd "device usb" -.Cd "device otus" -.Cd "device wlan" +.Cd "device otusfw" .Ed .Pp -Alternatively, to load the driver as a module at boot time, -place the following line in +This will include the firmware image, AR9170, inside the kernel. +.Xr otus 4 +will load the image into the chip. +.Pp +Alternatively, to load the firmware images as a module at boot time, place +the following line in .Xr loader.conf 5 : .Bd -literal -offset indent -if_otus_load="YES" +otusfw_init_load="YES" +otusfw_main_load="YES" .Ed .Sh DESCRIPTION -The -.Nm -driver supports USB 2.0 wireless network devices based on the Atheros -AR9170 chipset. -.Pp -The Atheros AR9170 is a draft-802.11n adapter that uses an external -radio to operate in either 2.4GHz only or 2.4GHz and 5GHz. -.Pp -The AR9101 radio supports 1T1R operation in 2GHz only. -.Pp -The AR9102 radio supports 2T2R operation in 2GHz only. -.Pp -The AR9104 radio supports 2T2R operation both 2GHz and 5GHz. -.Pp -These are the modes the -.Nm -driver can operate in: -.Bl -tag -width "IBSS-masterXX" -.It BSS mode -Also known as -.Em infrastructure -mode, this is used when associating with an access point, through -which all traffic passes. -This mode is the default. -.El -.Pp -The -.Nm -driver can be configured to use -Wired Equivalent Privacy (WEP) or -Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). -WPA is the de facto encryption standard for wireless networks. -It is strongly recommended that WEP -not be used as the sole mechanism -to secure wireless communication, -due to serious weaknesses in it. -.Pp -The -.Nm -driver can be configured at runtime with -.Xr ifconfig 8 . -.Sh FILES -The driver needs at least version 1.0 of the following firmware files, -which is loaded when an interface is attached: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It Pa /boot/kernel/otusfw-init.ko -.It Pa /boot/kernel/otusfw-main.ko -.El -.Sh HARDWARE -The -.Nm -driver provices support for Atheros AR9170 USB IEEE 802.11b/g/n -wireless network adapters, including: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It 3Com 3CRUSBN275 -.It Arcadyan WN7512 -.\" .It AVM FRITZ!WLAN USB Stick N -.It CACE AirPcap \&Nx -.It D-Link DWA-130 rev \&D1 -.It D-Link DWA-160 rev A1 -.It D-Link DWA-160 rev A2 -.It IO-Data WN-GDN/US2 -.It NEC Aterm WL300NU-G -.It Netgear WNDA3100 -.It Netgear WN111 v2 -.It Planex GW-US300 -.It SMC Networks SMCWUSB-N2 -.It TP-Link TL-WN821N v1, v2 -.It Ubiquiti SR71 USB -.It Unex DNUA-81 -.It Z-Com UB81 -.It Z-Com UB82 -.It ZyXEL NWD-271N -.El -.Sh EXAMPLES -Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev otus0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed -.Pp -Join a specific BSS network with network name -.Dq Li my_net : -.Pp -.Dl "ifconfig wlan create wlandev otus0 ssid my_net up" -.Pp -Join a specific BSS network with 64-bit WEP encryption: -.Bd -literal -offset indent -ifconfig wlan create wlandev otus0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up -.Ed -.Sh DIAGNOSTICS -.Bl -diag -.It "%s: failed load firmware of file otusfw-main" -For some reason, the driver was unable to read the microcode file from the -filesystem. -The file might be missing or corrupted. -.El +This module provides the firmware for the Atheros AR9170 based +USB WiFi adapters. .Sh SEE ALSO -.Xr intro 1 , -.Xr netintro 4 , -.Xr otusfw 4 , -.Xr usb 4 , -.Xr wlan 4 , -.Xr arp 8 , -.Xr hostapd 8 , -.Xr ifconfig 8 , -.Xr wpa_supplicant 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Ox 4.6 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Damien Bergamini Aq Mt damien@openbsd.org -and ported by -.An Adrian Chadd Aq Mt adrian@freebsd.org . -.Sh CAVEATS -The -.Nm -driver only supports 802.11a/b/g operations. -802.11 operation is not supported at this time. +.Xr otus 4 , +.Xr firmware 9 From owner-svn-src-head@freebsd.org Sat Sep 26 22:20:12 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0C5F5A0AB25; Sat, 26 Sep 2015 22:20:12 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EBCF4E8B; Sat, 26 Sep 2015 22:20:11 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QMKBEQ014207; Sat, 26 Sep 2015 22:20:11 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QMKBOZ014206; Sat, 26 Sep 2015 22:20:11 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201509262220.t8QMKBOZ014206@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sat, 26 Sep 2015 22:20:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288278 - head/share/man/man9 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:20:12 -0000 Author: markj Date: Sat Sep 26 22:20:11 2015 New Revision: 288278 URL: https://svnweb.freebsd.org/changeset/base/288278 Log: Document the interface for applying advice up to the end of a file. MFC after: 3 days Modified: head/share/man/man9/VOP_ADVISE.9 Modified: head/share/man/man9/VOP_ADVISE.9 ============================================================================== --- head/share/man/man9/VOP_ADVISE.9 Sat Sep 26 22:19:07 2015 (r288277) +++ head/share/man/man9/VOP_ADVISE.9 Sat Sep 26 22:20:11 2015 (r288278) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 3, 2013 +.Dd September 26, 2015 .Dt VOP_ADVISE 9 .Os .Sh NAME @@ -52,6 +52,9 @@ The vnode of the file. The start of the range of file data. .It Fa end The end of the range of file data. +A value of +.Dv OFF_MAX +indicates that the advice is to be applied up to the end of the file. .It Fa advice The type of operation to apply to the file data. Possible values are: From owner-svn-src-head@freebsd.org Sat Sep 26 22:20:31 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 069B9A0ABF7; Sat, 26 Sep 2015 22:20:31 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EB484102A; Sat, 26 Sep 2015 22:20:30 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QMKUiU016184; Sat, 26 Sep 2015 22:20:30 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QMKU3e016183; Sat, 26 Sep 2015 22:20:30 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201509262220.t8QMKU3e016183@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 26 Sep 2015 22:20:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288279 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:20:31 -0000 Author: adrian Date: Sat Sep 26 22:20:30 2015 New Revision: 288279 URL: https://svnweb.freebsd.org/changeset/base/288279 Log: Free the TX/RX list buffers /before/ tearing down net80211 state. Otherwise buffers in the RX queue get freed with their parent vap being gone and you end up with a juicy kernel panic. Modified: head/sys/dev/usb/wlan/if_rsu.c Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Sat Sep 26 22:20:11 2015 (r288278) +++ head/sys/dev/usb/wlan/if_rsu.c Sat Sep 26 22:20:30 2015 (r288279) @@ -545,18 +545,25 @@ rsu_detach(device_t self) RSU_LOCK(sc); rsu_stop(sc); RSU_UNLOCK(sc); + usbd_transfer_unsetup(sc->sc_xfer, RSU_N_TRANSFER); + /* + * Free buffers /before/ we detach from net80211, else node + * references to destroyed vaps will lead to a panic. + */ + /* Free Tx/Rx buffers. */ + RSU_LOCK(sc); + rsu_free_tx_list(sc); + rsu_free_rx_list(sc); + RSU_UNLOCK(sc); + /* Frames are freed; detach from net80211 */ ieee80211_ifdetach(ic); taskqueue_drain_timeout(taskqueue_thread, &sc->calib_task); taskqueue_drain(taskqueue_thread, &sc->tx_task); - /* Free Tx/Rx buffers. */ - rsu_free_tx_list(sc); - rsu_free_rx_list(sc); - mtx_destroy(&sc->sc_mtx); return (0); From owner-svn-src-head@freebsd.org Sat Sep 26 22:26:58 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A60BCA0906A; Sat, 26 Sep 2015 22:26:58 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 96A521387; Sat, 26 Sep 2015 22:26:58 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QMQucb018927; Sat, 26 Sep 2015 22:26:56 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QMQuHh018926; Sat, 26 Sep 2015 22:26:56 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201509262226.t8QMQuHh018926@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sat, 26 Sep 2015 22:26:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288280 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:26:58 -0000 Author: markj Date: Sat Sep 26 22:26:55 2015 New Revision: 288280 URL: https://svnweb.freebsd.org/changeset/base/288280 Log: Remove a check for a condition that is always false by a preceding KASSERT that was added in r144704. Modified: head/sys/kern/vfs_subr.c Modified: head/sys/kern/vfs_subr.c ============================================================================== --- head/sys/kern/vfs_subr.c Sat Sep 26 22:20:30 2015 (r288279) +++ head/sys/kern/vfs_subr.c Sat Sep 26 22:26:55 2015 (r288280) @@ -1429,11 +1429,6 @@ flushbuflist(struct bufv *bufv, int flag KASSERT(bp->b_bufobj == bo, ("bp %p wrong b_bufobj %p should be %p", bp, bp->b_bufobj, bo)); - if (bp->b_bufobj != bo) { /* XXX: necessary ? */ - BUF_UNLOCK(bp); - BO_LOCK(bo); - return (EAGAIN); - } /* * XXX Since there are no node locks for NFS, I * believe there is a slight chance that a delayed From owner-svn-src-head@freebsd.org Sat Sep 26 22:28:37 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4D800A09145; Sat, 26 Sep 2015 22:28:37 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pa0-x235.google.com (mail-pa0-x235.google.com [IPv6:2607:f8b0:400e:c03::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1F8A81588; Sat, 26 Sep 2015 22:28:37 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by padhy16 with SMTP id hy16so138094925pad.1; Sat, 26 Sep 2015 15:28:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1xjWlbcEwHGll7aXe1K4jV9iH4VjYDsG2pNHBYsXcDA=; b=m/hCAxjAAjIjyvVyxU18/n99O0kR1Mei42Y88j8vcxCkX2HzmbIqhCnn0wVIi1Sch8 5OcBR7bIcemMkQnmhG/5cL1I30cjGxWPHWV7fJQnk/BCrWaUX3cg8D9NYqQwzD9fRoZH WddOnqiGV2iOcy0LRQtK4+5ZJV5CWe5F8KdL4nlFItMcsD9V6CB2mRKKcnhWbwKtaBzt PZiTujU+ToiJC3dYKyWA/a/UUPoRdSi1+vEXMCUFo8anYhXgJ+hlcqOpRzhyqs9UYVv6 cPtl4bd9hwq7vP41Bi1jlLAnC/qc50dSyVNVKlawuq2YaWFQrywvx3ng9CSEGxcJnhuO GB0A== X-Received: by 10.68.94.99 with SMTP id db3mr16728722pbb.165.1443306516425; Sat, 26 Sep 2015 15:28:36 -0700 (PDT) Received: from ?IPv6:2601:601:800:126d:8124:8ddf:cc08:d067? ([2601:601:800:126d:8124:8ddf:cc08:d067]) by smtp.gmail.com with ESMTPSA id tz1sm10962199pbc.50.2015.09.26.15.28.35 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 26 Sep 2015 15:28:35 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: svn commit: r288280 - head/sys/kern From: NGie Cooper In-Reply-To: <201509262226.t8QMQuHh018926@repo.freebsd.org> Date: Sat, 26 Sep 2015 15:28:34 -0700 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <201509262226.t8QMQuHh018926@repo.freebsd.org> To: Mark Johnston X-Mailer: Apple Mail (2.2104) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:28:37 -0000 > On Sep 26, 2015, at 15:26, Mark Johnston wrote: >=20 > Author: markj > Date: Sat Sep 26 22:26:55 2015 > New Revision: 288280 > URL: https://svnweb.freebsd.org/changeset/base/288280 >=20 > Log: > Remove a check for a condition that is always false by a preceding = KASSERT > that was added in r144704. >=20 > Modified: > head/sys/kern/vfs_subr.c >=20 > Modified: head/sys/kern/vfs_subr.c > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/kern/vfs_subr.c Sat Sep 26 22:20:30 2015 = (r288279) > +++ head/sys/kern/vfs_subr.c Sat Sep 26 22:26:55 2015 = (r288280) > @@ -1429,11 +1429,6 @@ flushbuflist(struct bufv *bufv, int flag > KASSERT(bp->b_bufobj =3D=3D bo, > ("bp %p wrong b_bufobj %p should be %p", > bp, bp->b_bufobj, bo)); > - if (bp->b_bufobj !=3D bo) { /* XXX: necessary ? */ > - BUF_UNLOCK(bp); > - BO_LOCK(bo); > - return (EAGAIN); > - } > /* > * XXX Since there are no node locks for NFS, I > * believe there is a slight chance that a delayed >=20 Except the KASSERT gets optimized out with !INVARIANTS. Is this = if-statement protecting against bad behavior?= From owner-svn-src-head@freebsd.org Sat Sep 26 22:41:25 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1756BA09ABE; Sat, 26 Sep 2015 22:41:25 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-pa0-x236.google.com (mail-pa0-x236.google.com [IPv6:2607:f8b0:400e:c03::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DDD6F1DBA; Sat, 26 Sep 2015 22:41:24 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: by pablk4 with SMTP id lk4so41322535pab.3; Sat, 26 Sep 2015 15:41:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=OySIYSUdoFb9/9eAheK0wHjqanRErpwIyRX0bN+ZA5Y=; b=T540a9+6k+amLpaha7KelOcdSjfGMLJL3jRM4xuLw4F8y12+Dau59zRHCV8oxA3uYP 8PsLgW1tGRy4DD1tKxSYL7MvC9WP11DmCGumMCIs19RaVfngtRwZmeyaTaiO/4AG/GOY 59oaLB1NoSNxbfd2nsowYz/sGsNkJSBhx9WHzVQb/f7kes0iF/t7JB3+lu0zTCndRnxF aPOQNDrgIfXybwSTeyzc1vexLD0yXIqXwcRE0iCB4OWh3D2JlUDej3AhhHXIA3aoZlOb ddepk1KuJpNtxcjuvQMBrZ7egx6Kne2B2hXHcwgatqNAGYTBKkOrvjNu512ZBTqAtmE2 mBNQ== X-Received: by 10.69.19.202 with SMTP id gw10mr16857100pbd.60.1443307284461; Sat, 26 Sep 2015 15:41:24 -0700 (PDT) Received: from raichu ([104.232.114.184]) by smtp.gmail.com with ESMTPSA id by1sm11062834pab.6.2015.09.26.15.41.23 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 26 Sep 2015 15:41:23 -0700 (PDT) Sender: Mark Johnston Date: Sat, 26 Sep 2015 15:41:20 -0700 From: Mark Johnston To: NGie Cooper Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r288280 - head/sys/kern Message-ID: <20150926224114.GA93979@raichu> References: <201509262226.t8QMQuHh018926@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:41:25 -0000 On Sat, Sep 26, 2015 at 03:28:34PM -0700, NGie Cooper wrote: > > > On Sep 26, 2015, at 15:26, Mark Johnston wrote: > > > > Author: markj > > Date: Sat Sep 26 22:26:55 2015 > > New Revision: 288280 > > URL: https://svnweb.freebsd.org/changeset/base/288280 > > > > Log: > > Remove a check for a condition that is always false by a preceding KASSERT > > that was added in r144704. > > > > Modified: > > head/sys/kern/vfs_subr.c > > > > Modified: head/sys/kern/vfs_subr.c > > ============================================================================== > > --- head/sys/kern/vfs_subr.c Sat Sep 26 22:20:30 2015 (r288279) > > +++ head/sys/kern/vfs_subr.c Sat Sep 26 22:26:55 2015 (r288280) > > @@ -1429,11 +1429,6 @@ flushbuflist(struct bufv *bufv, int flag > > KASSERT(bp->b_bufobj == bo, > > ("bp %p wrong b_bufobj %p should be %p", > > bp, bp->b_bufobj, bo)); > > - if (bp->b_bufobj != bo) { /* XXX: necessary ? */ > > - BUF_UNLOCK(bp); > > - BO_LOCK(bo); > > - return (EAGAIN); > > - } > > /* > > * XXX Since there are no node locks for NFS, I > > * believe there is a slight chance that a delayed > > > > Except the KASSERT gets optimized out with !INVARIANTS. Is this if-statement protecting against bad behavior? Technically it was, but it's behaviour that could only occur as a result of a bug elsewhere. The latest reports of this assertion failure that I can find are all from 2005, when some buf-handling bugs were being shaken out (see r147772 and r147387, for example). Given that this invariant is pretty important and that it's been a decade since these bugs were fixed, I believe it's safe to remove the extra handling. From owner-svn-src-head@freebsd.org Sat Sep 26 22:57:11 2015 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 33D5BA0A532; Sat, 26 Sep 2015 22:57:11 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 11DDF965; Sat, 26 Sep 2015 22:57:11 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8QMvAER033385; Sat, 26 Sep 2015 22:57:10 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8QMvAF6033384; Sat, 26 Sep 2015 22:57:10 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201509262257.t8QMvAF6033384@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sat, 26 Sep 2015 22:57:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r288281 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Sep 2015 22:57:11 -0000 Author: alc Date: Sat Sep 26 22:57:10 2015 New Revision: 288281 URL: https://svnweb.freebsd.org/changeset/base/288281 Log: The conversion of kmem_alloc_attr() from operating on a vm map to a vmem arena in r254025 introduced a bug in the case when an allocation is only partially successful. Specifically, the vm object lock was not being acquired before freeing the allocated pages. To address this bug, replace the existing code by a call to kmem_unback(). Change the type of a variable in kmem_alloc_attr() so that an allocation of two or more gigabytes won't fail. Replace the error handling code in kmem_back() by a call to kmem_unback(). Reviewed by: kib (an earlier version) MFC after: 1 week Sponsored by: EMC / Isilon Storage Division Modified: head/sys/vm/vm_kern.c Modified: head/sys/vm/vm_kern.c ============================================================================== --- head/sys/vm/vm_kern.c Sat Sep 26 22:26:55 2015 (r288280) +++ head/sys/vm/vm_kern.c Sat Sep 26 22:57:10 2015 (r288281) @@ -159,11 +159,10 @@ kmem_alloc_attr(vmem_t *vmem, vm_size_t vm_paddr_t high, vm_memattr_t memattr) { vm_object_t object = vmem == kmem_arena ? kmem_object : kernel_object; - vm_offset_t addr; + vm_offset_t addr, i; vm_ooffset_t offset; vm_page_t m; int pflags, tries; - int i; size = round_page(size); if (vmem_alloc(vmem, size, M_BESTFIT | flags, &addr)) @@ -184,18 +183,7 @@ retry: tries++; goto retry; } - /* - * Unmap and free the pages. - */ - if (i != 0) - pmap_remove(kernel_pmap, addr, addr + i); - while (i != 0) { - i -= PAGE_SIZE; - m = vm_page_lookup(object, - OFF_TO_IDX(offset + i)); - vm_page_unwire(m, PQ_INACTIVE); - vm_page_free(m); - } + kmem_unback(object, addr, i); vmem_free(vmem, addr, size); return (0); } @@ -353,25 +341,13 @@ retry: * aren't on any queues. */ if (m == NULL) { + VM_OBJECT_WUNLOCK(object); if ((flags & M_NOWAIT) == 0) { - VM_OBJECT_WUNLOCK(object); VM_WAIT; VM_OBJECT_WLOCK(object); goto retry; } - /* - * Unmap and free the pages. - */ - if (i != 0) - pmap_remove(kernel_pmap, addr, addr + i); - while (i != 0) { - i -= PAGE_SIZE; - m = vm_page_lookup(object, - OFF_TO_IDX(offset + i)); - vm_page_unwire(m, PQ_INACTIVE); - vm_page_free(m); - } - VM_OBJECT_WUNLOCK(object); + kmem_unback(object, addr, i); return (KERN_NO_SPACE); } if (flags & M_ZERO && (m->flags & PG_ZERO) == 0) @@ -387,6 +363,15 @@ retry: return (KERN_SUCCESS); } +/* + * kmem_unback: + * + * Unmap and free the physical pages underlying the specified virtual + * address range. + * + * A physical page must exist within the specified object at each index + * that is being unmapped. + */ void kmem_unback(vm_object_t object, vm_offset_t addr, vm_size_t size) {