svn commit: r302423 - vendor/gcc/dist/gcc/config/i386
Author: pfg Date: Fri Jul 8 03:39:10 2016 New Revision: 302423 URL: https://svnweb.freebsd.org/changeset/base/302423 Log: Vendor GCC: Bring older verbatim version of cpuid.h This is mainly for reference: clang has a similar file with minor differences that may be affecting portability. Obtained from:GCC (gcc-4_3-branch, rev. 129548, pre GPLv3) Added: vendor/gcc/dist/gcc/config/i386/cpuid.h (contents, props changed) Added: vendor/gcc/dist/gcc/config/i386/cpuid.h == --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/gcc/dist/gcc/config/i386/cpuid.h Fri Jul 8 03:39:10 2016 (r302423) @@ -0,0 +1,134 @@ +/* + * Copyright (C) 2007 Free Software Foundation, Inc. + * + * This file is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2, or (at your option) any + * later version. + * + * In addition to the permissions in the GNU General Public License, the + * Free Software Foundation gives you unlimited permission to link the + * compiled version of this file with other programs, and to distribute + * those programs without any restriction coming from the use of this + * file. (The General Public License restrictions do apply in other + * respects; for example, they cover modification of the file, and + * distribution when not linked into another program.) + * + * This file is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + * + *As a special exception, if you link this library with files + *compiled with GCC to produce an executable, this does not cause + *the resulting executable to be covered by the GNU General Public License. + *This exception does not however invalidate any other reasons why + *the executable file might be covered by the GNU General Public License. + */ + +/* %ecx */ +#define bit_SSE3 (1 << 0) +#define bit_SSSE3 (1 << 9) +#define bit_CMPXCHG16B (1 << 13) +#define bit_SSE4_1 (1 << 19) +#define bit_SSE4_2 (1 << 20) +#define bit_POPCNT (1 << 23) + +/* %edx */ +#define bit_CMPXCHG8B (1 << 8) +#define bit_CMOV (1 << 15) +#define bit_MMX(1 << 23) +#define bit_FXSAVE (1 << 24) +#define bit_SSE(1 << 25) +#define bit_SSE2 (1 << 26) + +/* Extended Features */ +/* %ecx */ +#define bit_LAHF_LM(1 << 0) +#define bit_SSE4a (1 << 6) +#define bit_SSE5 (1 << 11) + +/* %edx */ +#define bit_LM (1 << 29) +#define bit_3DNOWP (1 << 30) +#define bit_3DNOW (1 << 31) + + +#if defined(__i386__) && defined(__PIC__) +/* %ebx may be the PIC register. */ +#define __cpuid(level, a, b, c, d) \ + __asm__ ("xchg{l}\t{%%}ebx, %1\n\t" \ + "cpuid\n\t" \ + "xchg{l}\t{%%}ebx, %1\n\t" \ + : "=a" (a), "=r" (b), "=c" (c), "=d" (d) \ + : "0" (level)) +#else +#define __cpuid(level, a, b, c, d) \ + __asm__ ("cpuid\n\t" \ + : "=a" (a), "=b" (b), "=c" (c), "=d" (d) \ + : "0" (level)) +#endif + +/* Return highest supported input value for cpuid instruction. ext can + be either 0x0 or 0x800 to return highest supported value for + basic or extended cpuid information. Function returns 0 if cpuid + is not supported or whatever cpuid returns in eax register. If sig + pointer is non-null, then first four bytes of the signature + (as found in ebx register) are returned in location pointed by sig. */ + +static __inline unsigned int +__get_cpuid_max (unsigned int __ext, unsigned int *__sig) +{ + unsigned int __eax, __ebx, __ecx, __edx; + +#ifndef __x86_64__ + /* See if we can use cpuid. On AMD64 we always can. */ + __asm__ ("pushf{l|d}\n\t" + "pushf{l|d}\n\t" + "pop{l}\t%0\n\t" + "mov{l}\t{%0, %1|%1, %0}\n\t" + "xor{l}\t{%2, %0|%0, %2}\n\t" + "push{l}\t%0\n\t" + "popf{l|d}\n\t" + "pushf{l|d}\n\t" + "pop{l}\t%0\n\t" + "popf{l|d}\n\t" + : "=" (__eax), "=" (__ebx) + : "i" (0x0020)); + + if (!((__eax ^ __ebx) & 0x0020)) +return 0; +#endif + + /* Host supports cpuid. Return highest supported cpuid input value. */ + __cpuid (__ext, __eax, __ebx, __ecx, __edx); + + if (__sig) +*__sig = __ebx; + + return
svn commit: r302422 - stable/10/sys/netpfil/ipfw
Author: truckman Date: Fri Jul 8 02:52:39 2016 New Revision: 302422 URL: https://svnweb.freebsd.org/changeset/base/302422 Log: MFC r302338 Fix a race condition between the main thread in aqm_pie_cleanup() and the callout thread that can cause a kernel panic. Always do the final cleanup in the callout thread by passing a separate callout function for that task to callout_reset_sbt(). Protect the ref_count decrement in the callout with DN_BH_WLOCK(). All other ref_count manipulation is protected with this lock. There is still a tiny window between ref_count reaching zero and the end of the callout function where it is unsafe to unload the module. Fixing this would require the use of callout_drain(), but this can't be done because dummynet holds a mutex and callout_drain() might sleep. Remove the callout_pending(), callout_active(), and callout_deactivate() calls from calculate_drop_prob(). They are not needed because this callout uses callout_init_mtx(). Submitted by: Rasool Al-SaadiDifferential Revision:https://reviews.freebsd.org/D6928 Modified: stable/10/sys/netpfil/ipfw/dn_aqm_pie.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/netpfil/ipfw/dn_aqm_pie.c == --- stable/10/sys/netpfil/ipfw/dn_aqm_pie.c Fri Jul 8 02:34:04 2016 (r302421) +++ stable/10/sys/netpfil/ipfw/dn_aqm_pie.c Fri Jul 8 02:52:39 2016 (r302422) @@ -207,24 +207,6 @@ calculate_drop_prob(void *x) struct dn_aqm_pie_parms *pprms; struct pie_status *pst = (struct pie_status *) x; - /* dealing with race condition */ - if (callout_pending(>aqm_pie_callout)) { - /* callout was reset */ - mtx_unlock(>lock_mtx); - return; - } - - if (!callout_active(>aqm_pie_callout)) { - /* callout was stopped */ - mtx_unlock(>lock_mtx); - mtx_destroy(>lock_mtx); - free(x, M_DUMMYNET); - //pst->pq->aqm_status = NULL; - pie_desc.ref_count--; - return; - } - callout_deactivate(>aqm_pie_callout); - pprms = pst->parms; prob = pst->drop_prob; @@ -576,7 +558,7 @@ aqm_pie_init(struct dn_queue *q) do { /* exit with break when error occurs*/ if (!pprms){ - D("AQM_PIE is not configured"); + DX(2, "AQM_PIE is not configured"); err = EINVAL; break; } @@ -615,6 +597,22 @@ aqm_pie_init(struct dn_queue *q) } /* + * Callout function to destroy pie mtx and free PIE status memory + */ +static void +pie_callout_cleanup(void *x) +{ + struct pie_status *pst = (struct pie_status *) x; + + mtx_unlock(>lock_mtx); + mtx_destroy(>lock_mtx); + free(x, M_DUMMYNET); + DN_BH_WLOCK(); + pie_desc.ref_count--; + DN_BH_WUNLOCK(); +} + +/* * Clean up PIE status for queue 'q' * Destroy memory allocated for PIE status. */ @@ -640,22 +638,19 @@ aqm_pie_cleanup(struct dn_queue *q) return 1; } + /* +* Free PIE status allocated memory using pie_callout_cleanup() callout +* function to avoid any potential race. +* We reset aqm_pie_callout to call pie_callout_cleanup() in next 1um. This +* stops the scheduled calculate_drop_prob() callout and call pie_callout_cleanup() +* which does memory freeing. +*/ mtx_lock(>lock_mtx); + callout_reset_sbt(>aqm_pie_callout, + SBT_1US, 0, pie_callout_cleanup, pst, 0); + q->aqm_status = NULL; + mtx_unlock(>lock_mtx); - /* stop callout timer */ - if (callout_stop(>aqm_pie_callout) || !(pst->sflags & PIE_ACTIVE)) { - mtx_unlock(>lock_mtx); - mtx_destroy(>lock_mtx); - free(q->aqm_status, M_DUMMYNET); - q->aqm_status = NULL; - pie_desc.ref_count--; - return 0; - } else { - q->aqm_status = NULL; - mtx_unlock(>lock_mtx); - DX(2, "PIE callout has not been stoped from cleanup!"); - return EBUSY; - } return 0; } ___ 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-unsubscr...@freebsd.org"
svn commit: r302421 - stable/10/sys/fs/nfsclient
Author: kib Date: Fri Jul 8 02:34:04 2016 New Revision: 302421 URL: https://svnweb.freebsd.org/changeset/base/302421 Log: MFC r302196 Since VOP_INACTIVE() is not guaranteed to be called, all cleanups executed by inactive methods, must be repeated on reclaim. MFC r302210: Clean other flags in ncl_inactive, only. Modified: stable/10/sys/fs/nfsclient/nfs_clnode.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/fs/nfsclient/nfs_clnode.c == --- stable/10/sys/fs/nfsclient/nfs_clnode.c Fri Jul 8 02:19:09 2016 (r302420) +++ stable/10/sys/fs/nfsclient/nfs_clnode.c Fri Jul 8 02:34:04 2016 (r302421) @@ -200,15 +200,40 @@ nfs_freesillyrename(void *arg, __unused free(sp, M_NEWNFSREQ); } -int -ncl_inactive(struct vop_inactive_args *ap) +static void +ncl_releasesillyrename(struct vnode *vp, struct thread *td) { struct nfsnode *np; struct sillyrename *sp; - struct vnode *vp = ap->a_vp; - boolean_t retv; + ASSERT_VOP_ELOCKED(vp, "releasesillyrename"); np = VTONFS(vp); + mtx_assert(>n_mtx, MA_OWNED); + if (vp->v_type != VDIR) { + sp = np->n_sillyrename; + np->n_sillyrename = NULL; + } else + sp = NULL; + if (sp != NULL) { + mtx_unlock(>n_mtx); + (void) ncl_vinvalbuf(vp, 0, td, 1); + /* +* Remove the silly file that was rename'd earlier +*/ + ncl_removeit(sp, vp); + crfree(sp->s_cred); + TASK_INIT(>s_task, 0, nfs_freesillyrename, sp); + taskqueue_enqueue(taskqueue_thread, >s_task); + mtx_lock(>n_mtx); + } +} + +int +ncl_inactive(struct vop_inactive_args *ap) +{ + struct vnode *vp = ap->a_vp; + struct nfsnode *np; + boolean_t retv; if (NFS_ISV4(vp) && vp->v_type == VREG) { /* @@ -230,24 +255,15 @@ ncl_inactive(struct vop_inactive_args *a } } + np = VTONFS(vp); mtx_lock(>n_mtx); - if (vp->v_type != VDIR) { - sp = np->n_sillyrename; - np->n_sillyrename = NULL; - } else - sp = NULL; - if (sp) { - mtx_unlock(>n_mtx); - (void) ncl_vinvalbuf(vp, 0, ap->a_td, 1); - /* -* Remove the silly file that was rename'd earlier -*/ - ncl_removeit(sp, vp); - crfree(sp->s_cred); - TASK_INIT(>s_task, 0, nfs_freesillyrename, sp); - taskqueue_enqueue(taskqueue_thread, >s_task); - mtx_lock(>n_mtx); - } + ncl_releasesillyrename(vp, ap->a_td); + + /* +* NMODIFIED means that there might be dirty/stale buffers +* associated with the NFS vnode. None of the other flags are +* meaningful after the vnode is unused. +*/ np->n_flag &= NMODIFIED; mtx_unlock(>n_mtx); return (0); @@ -270,6 +286,10 @@ ncl_reclaim(struct vop_reclaim_args *ap) if (nfs_reclaim_p != NULL) nfs_reclaim_p(ap); + mtx_lock(>n_mtx); + ncl_releasesillyrename(vp, ap->a_td); + mtx_unlock(>n_mtx); + /* * Destroy the vm object and flush associated pages. */ ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302418 - head/contrib/gcc
On Thu, Jul 07, 2016 at 09:16:18PM -0500, Pedro Giffuni wrote: > On 07/07/16 20:56, Glen Barber wrote: > >Author: gjb > >Date: Fri Jul 8 01:56:52 2016 > >New Revision: 302418 > >URL: https://svnweb.freebsd.org/changeset/base/302418 > > > >Log: > > Add freebsd12 to contrib/gcc/config.gcc. > > > > Submitted by: bdrewery > > Approved by: re (implicit) > > Sponsored by: The FreeBSD Foundation > > > >Modified: > > head/contrib/gcc/config.gcc > > > >Modified: head/contrib/gcc/config.gcc > >== > >--- head/contrib/gcc/config.gcc Fri Jul 8 01:47:01 2016 > >(r302417) > >+++ head/contrib/gcc/config.gcc Fri Jul 8 01:56:52 2016 > >(r302418) > >@@ -432,6 +432,8 @@ case ${target} in > > tm_defines="${tm_defines} FBSD_MAJOR=10" ;; > > *-*-freebsd11 | *-*-freebsd11.*) > > tm_defines="${tm_defines} FBSD_MAJOR=11" ;; > >+*-*-freebsd12 | *-*-freebsd12.*) > >+ tm_defines="${tm_defines} FBSD_MAJOR=12" ;; > > *) > > echo 'Please update *-*-freebsd* in gcc/config.gcc' > > exit 1 > > > > For the record: this is not needed since we don't use GNU configure to > configure/build GCC. > > We should really kill GCC42 early in current-12. > Agreed. Let's wait until after the thaw, however. Glen signature.asc Description: PGP signature
svn commit: r302420 - head
Author: gjb Date: Fri Jul 8 02:19:09 2016 New Revision: 302420 URL: https://svnweb.freebsd.org/changeset/base/302420 Log: Spell '12.x' correctly in UPDATING. Submitted by: lidl Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/UPDATING Modified: head/UPDATING == --- head/UPDATING Fri Jul 8 02:03:42 2016(r302419) +++ head/UPDATING Fri Jul 8 02:19:09 2016(r302420) @@ -17,7 +17,7 @@ the tip of head, and then rebuild withou from older version of current across the gcc/clang cutover is a bit fragile. NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: - FreeBSD 11.x has many debugging features turned on, in both the kernel + FreeBSD 12.x has many debugging features turned on, in both the kernel and userland. These features attempt to detect incorrect use of system primitives, and encourage loud failure through extra sanity checking and fail stop semantics. They also substantially impact ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302418 - head/contrib/gcc
On 07/07/16 20:56, Glen Barber wrote: Author: gjb Date: Fri Jul 8 01:56:52 2016 New Revision: 302418 URL: https://svnweb.freebsd.org/changeset/base/302418 Log: Add freebsd12 to contrib/gcc/config.gcc. Submitted by: bdrewery Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/contrib/gcc/config.gcc Modified: head/contrib/gcc/config.gcc == --- head/contrib/gcc/config.gcc Fri Jul 8 01:47:01 2016(r302417) +++ head/contrib/gcc/config.gcc Fri Jul 8 01:56:52 2016(r302418) @@ -432,6 +432,8 @@ case ${target} in tm_defines="${tm_defines} FBSD_MAJOR=10" ;; *-*-freebsd11 | *-*-freebsd11.*) tm_defines="${tm_defines} FBSD_MAJOR=11" ;; +*-*-freebsd12 | *-*-freebsd12.*) + tm_defines="${tm_defines} FBSD_MAJOR=12" ;; *) echo 'Please update *-*-freebsd* in gcc/config.gcc' exit 1 For the record: this is not needed since we don't use GNU configure to configure/build GCC. We should really kill GCC42 early in current-12. Pedro. ___ 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-unsubscr...@freebsd.org"
svn commit: r302419 - head/gnu/usr.bin/groff/tmac
Author: gjb Date: Fri Jul 8 02:03:42 2016 New Revision: 302419 URL: https://svnweb.freebsd.org/changeset/base/302419 Log: Spell 10.2, 10.3, 12.0 correctly in various places. Submitted by: markj Approved by: re (implicit) Pointyhat:gjb (myself) Sponsored by: The FreeBSD Foundation Modified: head/gnu/usr.bin/groff/tmac/mdoc.local.in Modified: head/gnu/usr.bin/groff/tmac/mdoc.local.in == --- head/gnu/usr.bin/groff/tmac/mdoc.local.in Fri Jul 8 01:56:52 2016 (r302418) +++ head/gnu/usr.bin/groff/tmac/mdoc.local.in Fri Jul 8 02:03:42 2016 (r302419) @@ -62,10 +62,10 @@ .ds doc-operating-system-FreeBSD-9.39.3 .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-10.1 10.1 -.ds doc-operating-system-FreeBSD-10.1 10.2 -.ds doc-operating-system-FreeBSD-10.1 10.3 +.ds doc-operating-system-FreeBSD-10.2 10.2 +.ds doc-operating-system-FreeBSD-10.3 10.3 .ds doc-operating-system-FreeBSD-11.0 11.0 -.ds doc-operating-system-FreeBSD-11.0 12.0 +.ds doc-operating-system-FreeBSD-12.0 12.0 . .\" Definitions for other *BSDs not (yet) in doc-common .ds doc-operating-system-NetBSD-7.0 7.0 ___ 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-unsubscr...@freebsd.org"
svn commit: r302418 - head/contrib/gcc
Author: gjb Date: Fri Jul 8 01:56:52 2016 New Revision: 302418 URL: https://svnweb.freebsd.org/changeset/base/302418 Log: Add freebsd12 to contrib/gcc/config.gcc. Submitted by: bdrewery Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/contrib/gcc/config.gcc Modified: head/contrib/gcc/config.gcc == --- head/contrib/gcc/config.gcc Fri Jul 8 01:47:01 2016(r302417) +++ head/contrib/gcc/config.gcc Fri Jul 8 01:56:52 2016(r302418) @@ -432,6 +432,8 @@ case ${target} in tm_defines="${tm_defines} FBSD_MAJOR=10" ;; *-*-freebsd11 | *-*-freebsd11.*) tm_defines="${tm_defines} FBSD_MAJOR=11" ;; +*-*-freebsd12 | *-*-freebsd12.*) + tm_defines="${tm_defines} FBSD_MAJOR=12" ;; *) echo 'Please update *-*-freebsd* in gcc/config.gcc' exit 1 ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302413 - head/gnu/usr.bin/cc/cc_tools
On Thu, Jul 07, 2016 at 06:43:08PM -0700, Bryan Drewery wrote: > On 7/7/16 5:52 PM, Glen Barber wrote: > > Author: gjb > > Date: Fri Jul 8 00:52:53 2016 > > New Revision: 302413 > > URL: https://svnweb.freebsd.org/changeset/base/302413 > > > > Log: > > Spell 120 correctly. > > > > Approved by: re (implicit) > > Sponsored by: The FreeBSD Foundation > > > > Modified: > > head/gnu/usr.bin/cc/cc_tools/freebsd-native.h > > > > Modified: head/gnu/usr.bin/cc/cc_tools/freebsd-native.h > > == > > --- head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:26:38 > > 2016(r302412) > > +++ head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:52:53 > > 2016(r302413) > > @@ -8,7 +8,7 @@ > > > > /* Fake out gcc/config/freebsd.h. */ > > #defineFBSD_MAJOR 12 > > -#defineFBSD_CC_VER 110 /* form like __FreeBSD_version > > */ > > +#defineFBSD_CC_VER 120 /* form like __FreeBSD_version > > */ > > > > #undef SYSTEM_INCLUDE_DIR /* We don't need one for now. */ > > #undef TOOL_INCLUDE_DIR/* We don't need one for now. */ > > > > lib/clang/freebsd_cc_version.h has the clang equivalent > Fixed in r302417. Thank you for pointing this out. Glen signature.asc Description: PGP signature
svn commit: r302417 - head/lib/clang
Author: gjb Date: Fri Jul 8 01:47:01 2016 New Revision: 302417 URL: https://svnweb.freebsd.org/changeset/base/302417 Log: Bump FREEBSD_CC_VERSION in lib/clang/freebsd_cc_version.h Submitted by: bdrewery Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/lib/clang/freebsd_cc_version.h Modified: head/lib/clang/freebsd_cc_version.h == --- head/lib/clang/freebsd_cc_version.h Fri Jul 8 01:32:43 2016 (r302416) +++ head/lib/clang/freebsd_cc_version.h Fri Jul 8 01:47:01 2016 (r302417) @@ -1,3 +1,3 @@ /* $FreeBSD$ */ -#defineFREEBSD_CC_VERSION 114 +#defineFREEBSD_CC_VERSION 120 ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302413 - head/gnu/usr.bin/cc/cc_tools
On 7/7/16 5:52 PM, Glen Barber wrote: > Author: gjb > Date: Fri Jul 8 00:52:53 2016 > New Revision: 302413 > URL: https://svnweb.freebsd.org/changeset/base/302413 > > Log: > Spell 120 correctly. > > Approved by:re (implicit) > Sponsored by: The FreeBSD Foundation > > Modified: > head/gnu/usr.bin/cc/cc_tools/freebsd-native.h > > Modified: head/gnu/usr.bin/cc/cc_tools/freebsd-native.h > == > --- head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:26:38 > 2016(r302412) > +++ head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:52:53 > 2016(r302413) > @@ -8,7 +8,7 @@ > > /* Fake out gcc/config/freebsd.h. */ > #define FBSD_MAJOR 12 > -#define FBSD_CC_VER 110 /* form like __FreeBSD_version > */ > +#define FBSD_CC_VER 120 /* form like __FreeBSD_version > */ > > #undef SYSTEM_INCLUDE_DIR/* We don't need one for now. */ > #undef TOOL_INCLUDE_DIR /* We don't need one for now. */ > lib/clang/freebsd_cc_version.h has the clang equivalent -- Regards, Bryan Drewery ___ 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-unsubscr...@freebsd.org"
svn commit: r302414 - head/gnu/usr.bin/groff/tmac
Author: gjb Date: Fri Jul 8 00:54:21 2016 New Revision: 302414 URL: https://svnweb.freebsd.org/changeset/base/302414 Log: Default manual pages to 12.0 in head, and add missing 10.x releases. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/gnu/usr.bin/groff/tmac/mdoc.local.in Modified: head/gnu/usr.bin/groff/tmac/mdoc.local.in == --- head/gnu/usr.bin/groff/tmac/mdoc.local.in Fri Jul 8 00:52:53 2016 (r302413) +++ head/gnu/usr.bin/groff/tmac/mdoc.local.in Fri Jul 8 00:54:21 2016 (r302414) @@ -50,7 +50,7 @@ .ds doc-str-Lb-libstdthreads C11 Threads Library (libstdthreads, \-lstdthreads) . .\" Default .Os value -.ds doc-default-operating-system FreeBSD\~11.0 +.ds doc-default-operating-system FreeBSD\~12.0 . .\" FreeBSD releases not found in doc-common .ds doc-operating-system-FreeBSD-2.2.9 2.2.9 @@ -62,6 +62,8 @@ .ds doc-operating-system-FreeBSD-9.39.3 .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-10.1 10.1 +.ds doc-operating-system-FreeBSD-10.1 10.2 +.ds doc-operating-system-FreeBSD-10.1 10.3 .ds doc-operating-system-FreeBSD-11.0 11.0 .ds doc-operating-system-FreeBSD-11.0 12.0 . ___ 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-unsubscr...@freebsd.org"
svn commit: r302413 - head/gnu/usr.bin/cc/cc_tools
Author: gjb Date: Fri Jul 8 00:52:53 2016 New Revision: 302413 URL: https://svnweb.freebsd.org/changeset/base/302413 Log: Spell 120 correctly. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Modified: head/gnu/usr.bin/cc/cc_tools/freebsd-native.h == --- head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:26:38 2016(r302412) +++ head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:52:53 2016(r302413) @@ -8,7 +8,7 @@ /* Fake out gcc/config/freebsd.h. */ #defineFBSD_MAJOR 12 -#defineFBSD_CC_VER 110 /* form like __FreeBSD_version */ +#defineFBSD_CC_VER 120 /* form like __FreeBSD_version */ #undef SYSTEM_INCLUDE_DIR /* We don't need one for now. */ #undef TOOL_INCLUDE_DIR/* We don't need one for now. */ ___ 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-unsubscr...@freebsd.org"
svn commit: r302412 - stable/11/sys/conf
Author: gjb Date: Fri Jul 8 00:26:38 2016 New Revision: 302412 URL: https://svnweb.freebsd.org/changeset/base/302412 Log: Switch 11.0 from -ALPHA6 to -BETA1 to prepare for builds. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: stable/11/sys/conf/newvers.sh Modified: stable/11/sys/conf/newvers.sh == --- stable/11/sys/conf/newvers.sh Fri Jul 8 00:25:32 2016 (r302411) +++ stable/11/sys/conf/newvers.sh Fri Jul 8 00:26:38 2016 (r302412) @@ -32,7 +32,7 @@ TYPE="FreeBSD" REVISION="11.0" -BRANCH="ALPHA6" +BRANCH="BETA1" if [ -n "${BRANCH_OVERRIDE}" ]; then BRANCH=${BRANCH_OVERRIDE} fi ___ 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-unsubscr...@freebsd.org"
svn commit: r302411 - stable/11/release/doc/share/xml
Author: gjb Date: Fri Jul 8 00:25:32 2016 New Revision: 302411 URL: https://svnweb.freebsd.org/changeset/base/302411 Log: Missed a few entries in the previous commit, documentation related. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: stable/11/release/doc/share/xml/release.ent Modified: stable/11/release/doc/share/xml/release.ent == --- stable/11/release/doc/share/xml/release.ent Fri Jul 8 00:22:14 2016 (r302410) +++ stable/11/release/doc/share/xml/release.ent Fri Jul 8 00:25:32 2016 (r302411) @@ -6,23 +6,23 @@ - + - + - + - + - + https://www.FreeBSD.org/snapshots/"> @@ -31,16 +31,16 @@ https://www.FreeBSD.org/security/advisories"> - + - + - + ___ 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-unsubscr...@freebsd.org"
svn commit: r302410 - in stable/11: . contrib/jemalloc/include/jemalloc etc/defaults sys/amd64/conf sys/i386/conf sys/powerpc/conf sys/sparc64/conf
Author: gjb Date: Fri Jul 8 00:22:14 2016 New Revision: 302410 URL: https://svnweb.freebsd.org/changeset/base/302410 Log: - Remove debugging from GENERIC* kernel configurations - Enable MALLOC_PRODUCTION - Default dumpdev=NO - Remove UPDATING entry regarding debugging features Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: stable/11/UPDATING stable/11/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h stable/11/etc/defaults/rc.conf stable/11/sys/amd64/conf/GENERIC stable/11/sys/i386/conf/GENERIC stable/11/sys/powerpc/conf/GENERIC stable/11/sys/sparc64/conf/GENERIC Modified: stable/11/UPDATING == --- stable/11/UPDATING Fri Jul 8 00:12:29 2016(r302409) +++ stable/11/UPDATING Fri Jul 8 00:22:14 2016(r302410) @@ -16,21 +16,6 @@ from older versions of FreeBSD, try WITH the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. -NOTE TO PEOPLE WHO THINK THAT FreeBSD 11.x IS SLOW: - FreeBSD 11.x has many debugging features turned on, in both the kernel - and userland. These features attempt to detect incorrect use of - system primitives, and encourage loud failure through extra sanity - checking and fail stop semantics. They also substantially impact - system performance. If you want to do performance measurement, - benchmarking, and optimization, you'll want to turn them off. This - includes various WITNESS- related kernel options, INVARIANTS, malloc - debugging flags in userland, and various verbose features in the - kernel. Many developers choose to disable these features on build - machines to maximize performance. (To completely disable malloc - debugging, define MALLOC_PRODUCTION in /etc/make.conf, or to merely - disable the most expensive debugging functionality run - "ln -s 'abort:false,junk:false' /etc/malloc.conf".) - 20160622: The libc stub for the pipe(2) system call has been replaced with a wrapper which calls the pipe2(2) system call and the pipe(2) is now Modified: stable/11/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h == --- stable/11/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h Fri Jul 8 00:12:29 2016(r302409) +++ stable/11/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h Fri Jul 8 00:22:14 2016(r302410) @@ -5,6 +5,9 @@ #undef JEMALLOC_OVERRIDE_VALLOC #ifndef MALLOC_PRODUCTION +#defineMALLOC_PRODUCTION +#endif +#ifndef MALLOC_PRODUCTION #defineJEMALLOC_DEBUG #endif Modified: stable/11/etc/defaults/rc.conf == --- stable/11/etc/defaults/rc.conf Fri Jul 8 00:12:29 2016 (r302409) +++ stable/11/etc/defaults/rc.conf Fri Jul 8 00:22:14 2016 (r302410) @@ -609,7 +609,7 @@ lpd_flags=""# Flags to lpd (if enabled nscd_enable="NO" # Run the nsswitch caching daemon. chkprintcap_enable="NO"# Run chkprintcap(8) before running lpd. chkprintcap_flags="-d" # Create missing directories by default. -dumpdev="AUTO" # Device to crashdump to (device name, AUTO, or NO). +dumpdev="NO" # Device to crashdump to (device name, AUTO, or NO). dumpdir="/var/crash" # Directory where crash dumps are to be stored savecore_enable="YES" # Extract core from dump devices if any savecore_flags="-m 10" # Used if dumpdev is enabled above, and present. Modified: stable/11/sys/amd64/conf/GENERIC == --- stable/11/sys/amd64/conf/GENERICFri Jul 8 00:12:29 2016 (r302409) +++ stable/11/sys/amd64/conf/GENERICFri Jul 8 00:22:14 2016 (r302410) @@ -81,15 +81,6 @@ options RCTL# Resource limits # Debugging support. Always need this: optionsKDB # Enable kernel debugger support. optionsKDB_TRACE # Print a stack trace for a panic. -# For full debugger support use (turn off in stable branch): -optionsDDB # Support DDB. -optionsGDB # Support remote GDB. -optionsDEADLKRES # Enable the deadlock resolver -optionsINVARIANTS # Enable calls of extra sanity checking -optionsINVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS -optionsWITNESS # Enable checks to detect deadlocks and cycles -optionsWITNESS_SKIPSPIN# Don't run witness on spinlocks for speed -optionsMALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones # Make an
svn commit: r302409 - in head: . gnu/usr.bin/cc/cc_tools gnu/usr.bin/groff/tmac lib/clang release/doc/share/xml sys/conf sys/sys
Author: gjb Date: Fri Jul 8 00:12:29 2016 New Revision: 302409 URL: https://svnweb.freebsd.org/changeset/base/302409 Log: Reflect head is now 12.0-CURRENT. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: head/UPDATING head/gnu/usr.bin/cc/cc_tools/freebsd-native.h head/gnu/usr.bin/groff/tmac/mdoc.local.in head/lib/clang/clang.build.mk head/release/doc/share/xml/release.ent head/sys/conf/newvers.sh head/sys/sys/param.h Modified: head/UPDATING == --- head/UPDATING Fri Jul 8 00:04:57 2016(r302408) +++ head/UPDATING Fri Jul 8 00:12:29 2016(r302409) @@ -16,7 +16,7 @@ from older versions of FreeBSD, try WITH the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. -NOTE TO PEOPLE WHO THINK THAT FreeBSD 11.x IS SLOW: +NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: FreeBSD 11.x has many debugging features turned on, in both the kernel and userland. These features attempt to detect incorrect use of system primitives, and encourage loud failure through extra sanity Modified: head/gnu/usr.bin/cc/cc_tools/freebsd-native.h == --- head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:04:57 2016(r302408) +++ head/gnu/usr.bin/cc/cc_tools/freebsd-native.h Fri Jul 8 00:12:29 2016(r302409) @@ -7,8 +7,8 @@ #define FREEBSD_NATIVE 1 /* Fake out gcc/config/freebsd.h. */ -#defineFBSD_MAJOR 11 -#defineFBSD_CC_VER 112 /* form like __FreeBSD_version */ +#defineFBSD_MAJOR 12 +#defineFBSD_CC_VER 110 /* form like __FreeBSD_version */ #undef SYSTEM_INCLUDE_DIR /* We don't need one for now. */ #undef TOOL_INCLUDE_DIR/* We don't need one for now. */ Modified: head/gnu/usr.bin/groff/tmac/mdoc.local.in == --- head/gnu/usr.bin/groff/tmac/mdoc.local.in Fri Jul 8 00:04:57 2016 (r302408) +++ head/gnu/usr.bin/groff/tmac/mdoc.local.in Fri Jul 8 00:12:29 2016 (r302409) @@ -63,6 +63,7 @@ .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-10.1 10.1 .ds doc-operating-system-FreeBSD-11.0 11.0 +.ds doc-operating-system-FreeBSD-11.0 12.0 . .\" Definitions for other *BSDs not (yet) in doc-common .ds doc-operating-system-NetBSD-7.0 7.0 Modified: head/lib/clang/clang.build.mk == --- head/lib/clang/clang.build.mk Fri Jul 8 00:04:57 2016 (r302408) +++ head/lib/clang/clang.build.mk Fri Jul 8 00:12:29 2016 (r302409) @@ -32,8 +32,8 @@ TARGET_ABI= gnueabi TARGET_ABI=unknown .endif -TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-${TARGET_ABI}-freebsd11.0 -BUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-unknown-freebsd11.0 +TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-${TARGET_ABI}-freebsd12.0 +BUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-unknown-freebsd12.0 CFLAGS+= -DLLVM_DEFAULT_TARGET_TRIPLE=\"${TARGET_TRIPLE}\" \ -DLLVM_HOST_TRIPLE=\"${BUILD_TRIPLE}\" \ -DDEFAULT_SYSROOT=\"${TOOLS_PREFIX}\" Modified: head/release/doc/share/xml/release.ent == --- head/release/doc/share/xml/release.ent Fri Jul 8 00:04:57 2016 (r302408) +++ head/release/doc/share/xml/release.ent Fri Jul 8 00:12:29 2016 (r302409) @@ -19,10 +19,10 @@ - + - + https://www.FreeBSD.org/snapshots/;> Modified: head/sys/conf/newvers.sh == --- head/sys/conf/newvers.shFri Jul 8 00:04:57 2016(r302408) +++ head/sys/conf/newvers.shFri Jul 8 00:12:29 2016(r302409) @@ -31,8 +31,8 @@ # $FreeBSD$ TYPE="FreeBSD" -REVISION="11.0" -BRANCH="ALPHA6" +REVISION="12.0" +BRANCH="CURRENT" if [ -n "${BRANCH_OVERRIDE}" ]; then BRANCH=${BRANCH_OVERRIDE} fi Modified: head/sys/sys/param.h == --- head/sys/sys/param.hFri Jul 8 00:04:57 2016(r302408) +++ head/sys/sys/param.hFri Jul 8 00:12:29 2016(r302409) @@ -58,7 +58,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1100120 /* Master, propagated to newvers */ +#define __FreeBSD_version 120 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system
svn commit: r302407 - svnadmin/conf
Author: gjb Date: Fri Jul 8 00:04:45 2016 New Revision: 302407 URL: https://svnweb.freebsd.org/changeset/base/302407 Log: Add stable/11 to the allowed paths. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: svnadmin/conf/paths Modified: svnadmin/conf/paths == --- svnadmin/conf/paths Thu Jul 7 23:19:16 2016(r302406) +++ svnadmin/conf/paths Fri Jul 8 00:04:45 2016(r302407) @@ -18,6 +18,7 @@ ^stable/8/ ^stable/9/ ^stable/10/ +^stable/11/ # Feature branches. ^user/ ___ 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-unsubscr...@freebsd.org"
svn commit: r302408 - in stable/11: . contrib/top lib/libc/locale usr.sbin/bhyve
Author: gjb Date: Fri Jul 8 00:04:57 2016 New Revision: 302408 URL: https://svnweb.freebsd.org/changeset/base/302408 Log: Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here. Additional commits post-branch will follow. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Added: - copied from r302406, head/ Directory Properties: stable/11/ (props changed) Modified: Directory Properties: stable/11/MAINTAINERS (props changed) stable/11/cddl/ (props changed) stable/11/cddl/contrib/opensolaris/ (props changed) stable/11/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/ (props changed) stable/11/cddl/contrib/opensolaris/cmd/zfs/ (props changed) stable/11/cddl/contrib/opensolaris/lib/libzfs/ (props changed) stable/11/contrib/amd/ (props changed) stable/11/contrib/apr/ (props changed) stable/11/contrib/apr-util/ (props changed) stable/11/contrib/atf/ (props changed) stable/11/contrib/binutils/ (props changed) stable/11/contrib/bmake/ (props changed) stable/11/contrib/byacc/ (props changed) stable/11/contrib/bzip2/ (props changed) stable/11/contrib/com_err/ (props changed) stable/11/contrib/compiler-rt/ (props changed) stable/11/contrib/dialog/ (props changed) stable/11/contrib/dma/ (props changed) stable/11/contrib/dtc/ (props changed) stable/11/contrib/ee/ (props changed) stable/11/contrib/elftoolchain/ (props changed) stable/11/contrib/elftoolchain/ar/ (props changed) stable/11/contrib/elftoolchain/brandelf/ (props changed) stable/11/contrib/elftoolchain/elfdump/ (props changed) stable/11/contrib/expat/ (props changed) stable/11/contrib/file/ (props changed) stable/11/contrib/gcc/ (props changed) stable/11/contrib/gcclibs/libgomp/ (props changed) stable/11/contrib/gdb/ (props changed) stable/11/contrib/gdtoa/ (props changed) stable/11/contrib/groff/ (props changed) stable/11/contrib/ipfilter/ (props changed) stable/11/contrib/ldns/ (props changed) stable/11/contrib/ldns-host/ (props changed) stable/11/contrib/less/ (props changed) stable/11/contrib/libarchive/ (props changed) stable/11/contrib/libarchive/cpio/ (props changed) stable/11/contrib/libarchive/libarchive/ (props changed) stable/11/contrib/libarchive/libarchive_fe/ (props changed) stable/11/contrib/libarchive/tar/ (props changed) stable/11/contrib/libc++/ (props changed) stable/11/contrib/libc-vis/ (props changed) stable/11/contrib/libcxxrt/ (props changed) stable/11/contrib/libexecinfo/ (props changed) stable/11/contrib/libpcap/ (props changed) stable/11/contrib/libstdc++/ (props changed) stable/11/contrib/libucl/ (props changed) stable/11/contrib/libxo/ (props changed) stable/11/contrib/llvm/ (props changed) stable/11/contrib/llvm/projects/libunwind/ (props changed) stable/11/contrib/llvm/tools/clang/ (props changed) stable/11/contrib/llvm/tools/lldb/ (props changed) stable/11/contrib/llvm/tools/llvm-dwarfdump/ (props changed) stable/11/contrib/llvm/tools/llvm-lto/ (props changed) stable/11/contrib/mdocml/ (props changed) stable/11/contrib/mtree/ (props changed) stable/11/contrib/ncurses/ (props changed) stable/11/contrib/netcat/ (props changed) stable/11/contrib/ntp/ (props changed) stable/11/contrib/nvi/ (props changed) stable/11/contrib/one-true-awk/ (props changed) stable/11/contrib/openbsm/ (props changed) stable/11/contrib/openpam/ (props changed) stable/11/contrib/openresolv/ (props changed) stable/11/contrib/pf/ (props changed) stable/11/contrib/sendmail/ (props changed) stable/11/contrib/serf/ (props changed) stable/11/contrib/sqlite3/ (props changed) stable/11/contrib/subversion/ (props changed) stable/11/contrib/tcpdump/ (props changed) stable/11/contrib/tcsh/ (props changed) stable/11/contrib/tnftp/ (props changed) stable/11/contrib/top/ (props changed) stable/11/contrib/top/install-sh (props changed) stable/11/contrib/tzcode/stdtime/ (props changed) stable/11/contrib/tzcode/zic/ (props changed) stable/11/contrib/tzdata/ (props changed) stable/11/contrib/unbound/ (props changed) stable/11/contrib/vis/ (props changed) stable/11/contrib/wpa/ (props changed) stable/11/contrib/xz/ (props changed) stable/11/crypto/heimdal/ (props changed) stable/11/crypto/openssh/ (props changed) stable/11/crypto/openssl/ (props changed) stable/11/gnu/lib/ (props changed) stable/11/gnu/usr.bin/binutils/ (props changed) stable/11/gnu/usr.bin/cc/cc_tools/ (props changed) stable/11/gnu/usr.bin/gdb/ (props changed) stable/11/lib/libc/locale/ascii.c (props changed) stable/11/sys/cddl/contrib/opensolaris/ (props changed) stable/11/sys/contrib/dev/acpica/ (props changed)
svn commit: r302404 - svnadmin/conf
Author: gjb Date: Thu Jul 7 23:17:00 2016 New Revision: 302404 URL: https://svnweb.freebsd.org/changeset/base/302404 Log: Enable the stable/11 approvers entry in preparation for branching. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation Modified: svnadmin/conf/approvers Modified: svnadmin/conf/approvers == --- svnadmin/conf/approvers Thu Jul 7 22:44:23 2016(r302403) +++ svnadmin/conf/approvers Thu Jul 7 23:17:00 2016(r302404) @@ -17,7 +17,7 @@ # $FreeBSD$ # ^head/ re -#^stable/11/ re +^stable/11/re #^stable/10/ re ^release/ re #^releng/11.0/ re ___ 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-unsubscr...@freebsd.org"
svn commit: r302403 - head/sys/conf
Author: ngie Date: Thu Jul 7 22:44:23 2016 New Revision: 302403 URL: https://svnweb.freebsd.org/changeset/base/302403 Log: Do not use -fformat-extensions with non-base versions of gcc Ports versions of gcc do not have -fformat-extensions support. This unbreaks compiling the kernel/modules with non-base gcc (4.8, 5.0, etc) if MK_FORMAT_EXTENSIONS=yes (the default). Approved by: re (gjb) Differential Revision: https://reviews.freebsd.org/D7150 Reviewed by: bdrewery Sponsored by: EMC / Isilon Storage Division Modified: head/sys/conf/kern.mk Modified: head/sys/conf/kern.mk == --- head/sys/conf/kern.mk Thu Jul 7 22:10:10 2016(r302402) +++ head/sys/conf/kern.mk Thu Jul 7 22:44:23 2016(r302403) @@ -62,7 +62,7 @@ CWARNEXTRA?= -Wno-uninitialized FORMAT_EXTENSIONS= -Wno-format .elif ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30600 FORMAT_EXTENSIONS= -D__printf__=__freebsd_kprintf__ -.else +.elif ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} == 40201 FORMAT_EXTENSIONS= -fformat-extensions .endif ___ 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-unsubscr...@freebsd.org"
svn commit: r302402 - head/sys/dev/ahci
Author: mav Date: Thu Jul 7 22:10:10 2016 New Revision: 302402 URL: https://svnweb.freebsd.org/changeset/base/302402 Log: Fix ahci(4) driver attach to controller with 32 ports. Incorrect sign expansion in variables that supposed to be a bit fields caused infinite loop. Fixing this allows system properly detect maximal possible 32 devices configured on AHCI HBA of BHyVe. That case did not happen in a wild before due to lack of hardware AHCI HBAs with 32 ports. Approved by: re (gjb@) MFC after:1 week Modified: head/sys/dev/ahci/ahci.c head/sys/dev/ahci/ahci.h Modified: head/sys/dev/ahci/ahci.c == --- head/sys/dev/ahci/ahci.cThu Jul 7 21:44:59 2016(r302401) +++ head/sys/dev/ahci/ahci.cThu Jul 7 22:10:10 2016(r302402) @@ -166,8 +166,8 @@ int ahci_attach(device_t dev) { struct ahci_controller *ctlr = device_get_softc(dev); - int error, i, u, speed, unit; - u_int32_t version; + int error, i, speed, unit; + uint32_t u, version; device_t child; ctlr->dev = dev; Modified: head/sys/dev/ahci/ahci.h == --- head/sys/dev/ahci/ahci.hThu Jul 7 21:44:59 2016(r302401) +++ head/sys/dev/ahci/ahci.hThu Jul 7 22:10:10 2016(r302402) @@ -474,7 +474,7 @@ struct ahci_enclosure { uint8_t status[AHCI_MAX_PORTS][4]; /* ArrayDev statuses */ int quirks; int channels; - int ichannels; + uint32_tichannels; }; /* structure describing a AHCI controller */ @@ -509,7 +509,7 @@ struct ahci_controller { int quirks; int numirqs; int channels; - int ichannels; + uint32_tichannels; int ccc;/* CCC timeout */ int cccv; /* CCC vector */ int direct; /* Direct command completion */ ___ 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-unsubscr...@freebsd.org"
svn commit: r302401 - head/lib/libc/sys
Author: jilles Date: Thu Jul 7 21:44:59 2016 New Revision: 302401 URL: https://svnweb.freebsd.org/changeset/base/302401 Log: fcntl(2): Document interrupt/restart for file locks. Since r302216, thread suspension causes advisory file locks to restart (instead of continuing to wait) and for a long time SA_RESTART has affected advisory file locks. These are both not compliant to POSIX.1. To clarify that restarting means something, add a paragraph about fair queuing. Note that the network lock manager does not implement fair queuing. Reviewed by: kib (previous version) Approved by: re (gjb) Modified: head/lib/libc/sys/fcntl.2 Modified: head/lib/libc/sys/fcntl.2 == --- head/lib/libc/sys/fcntl.2 Thu Jul 7 21:03:50 2016(r302400) +++ head/lib/libc/sys/fcntl.2 Thu Jul 7 21:44:59 2016(r302401) @@ -28,7 +28,7 @@ .\" @(#)fcntl.28.2 (Berkeley) 1/12/94 .\" $FreeBSD$ .\" -.Dd February 8, 2013 +.Dd July 7, 2016 .Dt FCNTL 2 .Os .Sh NAME @@ -363,6 +363,13 @@ request fails or blocks respectively whe locks on bytes in the specified region and the type of any of those locks conflicts with the type specified in the request. .Pp +The queuing for +.Dv F_SETLKW +requests on local files is fair; +that is, while the thread is blocked, +subsequent requests conflicting with its requests will not be granted, +even if these requests do not conflict with existing locks. +.Pp This interface follows the completely stupid semantics of System V and .St -p1003.1-88 that require that all locks associated with a file for a given process are @@ -646,6 +653,20 @@ The .Dv F_DUP2FD constant is non portable. It is provided for compatibility with AIX and Solaris. +.Pp +Per +.St -susv4 , +a call with +.Dv F_SETLKW +should fail with +.Bq Er EINTR +after any caught signal +and should continue waiting during thread suspension such as a stop signal. +However, in this implementation a call with +.Dv F_SETLKW +is restarted after catching a signal with a +.Dv SA_RESTART +handler or a thread suspension such as a stop signal. .Sh HISTORY The .Fn fcntl ___ 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-unsubscr...@freebsd.org"
svn commit: r302400 - head
Author: bdrewery Date: Thu Jul 7 21:03:50 2016 New Revision: 302400 URL: https://svnweb.freebsd.org/changeset/base/302400 Log: WITH_SYSTEM_COMPILER: Don't enable for xdev or native-xtools. Otherwise they get no compiler. Reported by: swills Tested by:swills Approved by: re (gjb) Sponsored by: EMC / Isilon Storage Division Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 == --- head/Makefile.inc1 Thu Jul 7 20:58:16 2016(r302399) +++ head/Makefile.inc1 Thu Jul 7 21:03:50 2016(r302400) @@ -82,7 +82,7 @@ MK_CROSS_COMPILER=no # Check if there is a local compiler that can satisfy as an external compiler. .if ${MK_SYSTEM_COMPILER} == "yes" && ${MK_CROSS_COMPILER} == "yes" && \ (${MK_CLANG_BOOTSTRAP} == "yes" || ${MK_GCC_BOOTSTRAP} == "yes") && \ -!make(showconfig) +!make(showconfig) && !make(native-xtools) && !make(xdev*) # Which compiler is expected to be used? .if ${MK_CLANG_BOOTSTRAP} == "yes" _expected_compiler_type= clang ___ 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-unsubscr...@freebsd.org"
svn commit: r302399 - head/sys/vm
Author: alc Date: Thu Jul 7 20:58:16 2016 New Revision: 302399 URL: https://svnweb.freebsd.org/changeset/base/302399 Log: Change the type of the map entry's next_read field from a vm_pindex_t to a vm_offset_t. (This field is used to detect sequential access to the virtual address range represented by the map entry.) There are three reasons to make this change. First, a vm_offset_t is smaller on 32-bit architectures. Consequently, a struct vm_map_entry is now smaller on 32-bit architectures. Second, a vm_offset_t can be written atomically, whereas it may not be possible to write a vm_pindex_t atomically on a 32-bit architecture. Third, using a vm_pindex_t makes the next_read field dependent on which object in the shadow chain is being read from. Replace an "XXX" comment. Reviewed by: kib Approved by: re (gjb) Sponsored by: EMC / Isilon Storage Division Modified: head/sys/vm/vm_fault.c head/sys/vm/vm_map.c head/sys/vm/vm_map.h Modified: head/sys/vm/vm_fault.c == --- head/sys/vm/vm_fault.c Thu Jul 7 20:50:59 2016(r302398) +++ head/sys/vm/vm_fault.c Thu Jul 7 20:58:16 2016(r302399) @@ -570,9 +570,9 @@ readrest: behind = 0; nera = VM_FAULT_READ_AHEAD_MAX; ahead = nera; - if (fs.pindex == fs.entry->next_read) + if (vaddr == fs.entry->next_read) vm_fault_dontneed(, vaddr, ahead); - } else if (fs.pindex == fs.entry->next_read) { + } else if (vaddr == fs.entry->next_read) { /* * This is a sequential fault. Arithmetically * increase the requested number of pages in @@ -927,15 +927,15 @@ vnode_locked: prot &= retry_prot; } } + /* -* If the page was filled by a pager, update the map entry's -* last read offset. -* -* XXX The following assignment modifies the map -* without holding a write lock on it. +* If the page was filled by a pager, save the virtual address that +* should be faulted on next under a sequential access pattern to the +* map entry. A read lock on the map suffices to update this address +* safely. */ if (hardfault) - fs.entry->next_read = fs.pindex + ahead + 1; + fs.entry->next_read = vaddr + ptoa(ahead) + PAGE_SIZE; vm_fault_dirty(fs.entry, fs.m, prot, fault_type, fault_flags, TRUE); vm_page_assert_xbusied(fs.m); Modified: head/sys/vm/vm_map.c == --- head/sys/vm/vm_map.cThu Jul 7 20:50:59 2016(r302398) +++ head/sys/vm/vm_map.cThu Jul 7 20:58:16 2016(r302399) @@ -1330,7 +1330,7 @@ charged: new_entry->wired_count = 0; new_entry->wiring_thread = NULL; new_entry->read_ahead = VM_FAULT_READ_AHEAD_INIT; - new_entry->next_read = OFF_TO_IDX(offset); + new_entry->next_read = start; KASSERT(cred == NULL || !ENTRY_CHARGED(new_entry), ("OVERCOMMIT: vm_map_insert leaks vm_map %p", new_entry)); Modified: head/sys/vm/vm_map.h == --- head/sys/vm/vm_map.hThu Jul 7 20:50:59 2016(r302398) +++ head/sys/vm/vm_map.hThu Jul 7 20:58:16 2016(r302399) @@ -104,6 +104,7 @@ struct vm_map_entry { vm_offset_t start; /* start address */ vm_offset_t end;/* end address */ vm_offset_t avail_ssize;/* amt can grow if this is a stack */ + vm_offset_t next_read; /* vaddr of the next sequential read */ vm_size_t adj_free; /* amount of adjacent free space */ vm_size_t max_free; /* max free space in subtree */ union vm_map_object object; /* object I point to */ @@ -114,7 +115,6 @@ struct vm_map_entry { vm_inherit_t inheritance; /* inheritance */ uint8_t read_ahead; /* pages in the read-ahead window */ int wired_count;/* can be paged if = 0 */ - vm_pindex_t next_read; /* index of the next sequential read */ struct ucred *cred; /* tmp storage for creator ref */ struct thread *wiring_thread; }; ___ 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-unsubscr...@freebsd.org"
svn commit: r302398 - head/usr.bin/lorder
Author: emaste Date: Thu Jul 7 20:50:59 2016 New Revision: 302398 URL: https://svnweb.freebsd.org/changeset/base/302398 Log: lorder: produce locale-independent symbol ordering Found by the Debian reproducible builds effort -- Debian bug 830259. Reported by: Reiner HerrmannApproved by: re (gjb) Sponsored by: The FreeBSD Foundation Modified: head/usr.bin/lorder/lorder.sh Modified: head/usr.bin/lorder/lorder.sh == --- head/usr.bin/lorder/lorder.sh Thu Jul 7 20:36:07 2016 (r302397) +++ head/usr.bin/lorder/lorder.sh Thu Jul 7 20:50:59 2016 (r302398) @@ -73,6 +73,7 @@ ${NM} ${NMFLAGS} -go $* | sed " d " +export LC_ALL=C # eliminate references that can be resolved by the same library. if [ $(expr "$*" : '.*\.a[[:>:]]') -ne 0 ]; then sort -u -o $S $S ___ 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-unsubscr...@freebsd.org"
svn commit: r302396 - head/sys/cam
Author: imp Date: Thu Jul 7 20:31:35 2016 New Revision: 302396 URL: https://svnweb.freebsd.org/changeset/base/302396 Log: Tidy up loose ends from Netflix I/O sched rename to dynamic I/O sched. Rename kern.cam.do_netflix_iosched sysctl to kern.cam.do_dynamic_iosched. Approved by: re (kib@) Modified: head/sys/cam/cam_iosched.c Modified: head/sys/cam/cam_iosched.c == --- head/sys/cam/cam_iosched.c Thu Jul 7 20:28:57 2016(r302395) +++ head/sys/cam/cam_iosched.c Thu Jul 7 20:31:35 2016(r302396) @@ -59,15 +59,19 @@ static MALLOC_DEFINE(M_CAMSCHED, "CAM I/ * Default I/O scheduler for FreeBSD. This implementation is just a thin-vineer * over the bioq_* interface, with notions of separate calls for normal I/O and * for trims. + * + * When CAM_IOSCHED_DYNAMIC is defined, the scheduler is enhanced to dynamically + * steer the rate of one type of traffic to help other types of traffic (eg + * limit writes when read latency deteriorates on SSDs). */ #ifdef CAM_IOSCHED_DYNAMIC -static int do_netflix_iosched = 1; -TUNABLE_INT("kern.cam.do_netflix_iosched", _netflix_iosched); -SYSCTL_INT(_kern_cam, OID_AUTO, do_netflix_iosched, CTLFLAG_RD, -_netflix_iosched, 1, -"Enable Netflix I/O scheduler optimizations."); +static int do_dynamic_iosched = 1; +TUNABLE_INT("kern.cam.do_dynamic_iosched", _dynamic_iosched); +SYSCTL_INT(_kern_cam, OID_AUTO, do_dynamic_iosched, CTLFLAG_RD, +_dynamic_iosched, 1, +"Enable Dynamic I/O scheduler optimizations."); static int alpha_bits = 9; TUNABLE_INT("kern.cam.iosched_alpha_bits", _bits); @@ -640,7 +644,7 @@ static inline int cam_iosched_has_io(struct cam_iosched_softc *isc) { #ifdef CAM_IOSCHED_DYNAMIC - if (do_netflix_iosched) { + if (do_dynamic_iosched) { struct bio *rbp = bioq_first(>bio_queue); struct bio *wbp = bioq_first(>write_queue); int can_write = wbp != NULL && @@ -954,7 +958,7 @@ cam_iosched_init(struct cam_iosched_soft bioq_init(&(*iscp)->bio_queue); bioq_init(&(*iscp)->trim_queue); #ifdef CAM_IOSCHED_DYNAMIC - if (do_netflix_iosched) { + if (do_dynamic_iosched) { bioq_init(&(*iscp)->write_queue); (*iscp)->read_bias = 100; (*iscp)->current_read_bias = 100; @@ -1019,7 +1023,7 @@ void cam_iosched_sysctl_init(struct cam_ "Sort IO queue to try and optimise disk access patterns"); #ifdef CAM_IOSCHED_DYNAMIC - if (!do_netflix_iosched) + if (!do_dynamic_iosched) return; isc->sysctl_tree = SYSCTL_ADD_NODE(>sysctl_ctx, @@ -1061,7 +1065,7 @@ cam_iosched_flush(struct cam_iosched_sof bioq_flush(>bio_queue, stp, err); bioq_flush(>trim_queue, stp, err); #ifdef CAM_IOSCHED_DYNAMIC - if (do_netflix_iosched) + if (do_dynamic_iosched) bioq_flush(>write_queue, stp, err); #endif } @@ -1206,7 +1210,7 @@ cam_iosched_next_bio(struct cam_iosched_ * See if we have any pending writes, and room in the queue for them, * and if so, those are next. */ - if (do_netflix_iosched) { + if (do_dynamic_iosched) { if ((bp = cam_iosched_get_write(isc)) != NULL) return bp; } @@ -1223,7 +1227,7 @@ cam_iosched_next_bio(struct cam_iosched_ * For the netflix scheduler, bio_queue is only for reads, so enforce * the limits here. Enforce only for reads. */ - if (do_netflix_iosched) { + if (do_dynamic_iosched) { if (bp->bio_cmd == BIO_READ && cam_iosched_limiter_iop(>read_stats, bp) != 0) return NULL; @@ -1231,7 +1235,7 @@ cam_iosched_next_bio(struct cam_iosched_ #endif bioq_remove(>bio_queue, bp); #ifdef CAM_IOSCHED_DYNAMIC - if (do_netflix_iosched) { + if (do_dynamic_iosched) { if (bp->bio_cmd == BIO_READ) { isc->read_stats.queued--; isc->read_stats.total++; @@ -1268,7 +1272,7 @@ cam_iosched_queue_work(struct cam_iosche #endif } #ifdef CAM_IOSCHED_DYNAMIC - else if (do_netflix_iosched && + else if (do_dynamic_iosched && (bp->bio_cmd == BIO_WRITE || bp->bio_cmd == BIO_FLUSH)) { if (cam_iosched_sort_queue(isc)) bioq_disksort(>write_queue, bp); @@ -1332,7 +1336,7 @@ cam_iosched_bio_complete(struct cam_iosc { int retval = 0; #ifdef CAM_IOSCHED_DYNAMIC - if (!do_netflix_iosched) + if (!do_dynamic_iosched) return retval; if (iosched_debug > 10) ___ 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-unsubscr...@freebsd.org"
svn commit: r302394 - head/sys/arm/ti/cpsw
Author: loos Date: Thu Jul 7 20:01:03 2016 New Revision: 302394 URL: https://svnweb.freebsd.org/changeset/base/302394 Log: Fix a lockup in tx path for cspw. Sometimes the software loses the race when appending more descriptors to the tx ring and the tx queue stops. This commit detects this condition and restart the tx queue whenever it stall. Tested by:sobomax@, Keith White, Paul Mather Sponsored by: Rubicon Communications (Netgate) Approved by: re (kib) Modified: head/sys/arm/ti/cpsw/if_cpsw.c head/sys/arm/ti/cpsw/if_cpswvar.h Modified: head/sys/arm/ti/cpsw/if_cpsw.c == --- head/sys/arm/ti/cpsw/if_cpsw.c Thu Jul 7 18:37:12 2016 (r302393) +++ head/sys/arm/ti/cpsw/if_cpsw.c Thu Jul 7 20:01:03 2016 (r302394) @@ -1874,6 +1874,7 @@ cpswp_tx_enqueue(struct cpswp_softc *sc) return; } else if (last_old_slot == NULL) { /* Start a fresh queue. */ + sc->swsc->last_hdp = cpsw_cpdma_bd_paddr(sc->swsc, first_new_slot); cpsw_write_hdp_slot(sc->swsc, >swsc->tx, first_new_slot); } else { /* Add buffers to end of current queue. */ @@ -1882,6 +1883,7 @@ cpswp_tx_enqueue(struct cpswp_softc *sc) /* If underrun, restart queue. */ if (cpsw_cpdma_read_bd_flags(sc->swsc, last_old_slot) & CPDMA_BD_EOQ) { + sc->swsc->last_hdp = cpsw_cpdma_bd_paddr(sc->swsc, first_new_slot); cpsw_write_hdp_slot(sc->swsc, >swsc->tx, first_new_slot); } @@ -1897,6 +1899,7 @@ static int cpsw_tx_dequeue(struct cpsw_softc *sc) { struct cpsw_slot *slot, *last_removed_slot = NULL; + struct cpsw_cpdma_bd bd; uint32_t flags, removed = 0; slot = STAILQ_FIRST(>tx.active); @@ -1931,13 +1934,26 @@ cpsw_tx_dequeue(struct cpsw_softc *sc) } /* TearDown complete is only marked on the SOP for the packet. */ - if (flags & CPDMA_BD_TDOWNCMPLT) { + if ((flags & (CPDMA_BD_SOP | CPDMA_BD_TDOWNCMPLT)) == + (CPDMA_BD_EOP | CPDMA_BD_TDOWNCMPLT)) { CPSW_DEBUGF(sc, ("TX teardown in progress")); cpsw_write_cp(sc, >tx, 0xfffc); // TODO: Increment a count of dropped TX packets sc->tx.running = 0; break; } + + if ((flags & CPDMA_BD_EOP) == 0) + flags = cpsw_cpdma_read_bd_flags(sc, last_removed_slot); + if ((flags & (CPDMA_BD_EOP | CPDMA_BD_EOQ)) == + (CPDMA_BD_EOP | CPDMA_BD_EOQ)) { + cpsw_cpdma_read_bd(sc, last_removed_slot, ); + if (bd.next != 0 && bd.next != sc->last_hdp) { + /* Restart the queue. */ + sc->last_hdp = bd.next; + cpsw_write_4(sc, sc->tx.hdp_offset, bd.next); + } + } } if (removed != 0) { Modified: head/sys/arm/ti/cpsw/if_cpswvar.h == --- head/sys/arm/ti/cpsw/if_cpswvar.h Thu Jul 7 18:37:12 2016 (r302393) +++ head/sys/arm/ti/cpsw/if_cpswvar.h Thu Jul 7 20:01:03 2016 (r302394) @@ -83,6 +83,7 @@ struct cpsw_softc { /* RX and TX buffer tracking */ struct cpsw_queue rx, tx; + uint32_tlast_hdp; /* We expect 1 memory resource and 4 interrupts from the device tree. */ int mem_rid; ___ 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-unsubscr...@freebsd.org"
svn commit: r302393 - head/sys/vm
Author: cperciva Date: Thu Jul 7 18:37:12 2016 New Revision: 302393 URL: https://svnweb.freebsd.org/changeset/base/302393 Log: Autotune the number of pages set aside for UMA startup based on the number of CPUs present. On amd64 this unbreaks the boot for systems with 92 or more CPUs; the limit will vary on other systems depending on the size of their uma_zone and uma_cache structures. The major consumer of pages during UMA startup is the 19 zone structures which are set up before UMA has bootstrapped itself sufficiently to use the rest of the available memory: UMA Slabs, UMA Hash, 4 / 6 / 8 / 12 / 16 / 32 / 64 / 128 / 256 Bucket, vmem btag, VM OBJECT, RADIX NODE, MAP, KMAP ENTRY, MAP ENTRY, VMSPACE, and fakepg. If the zone structures occupy more than one page, they will not share pages and the number of pages currently needed for startup is 19 * pages_per_zone + N, where N is the number of pages used for allocating other structures; on amd64 N = 3 at present (2 pages are allocated for UMA Kegs, and one page for UMA Hash). This patch adds a new definition UMA_BOOT_PAGES_ZONES, currently set to 32, and if a zone structure does not fit into a single page sets boot_pages to UMA_BOOT_PAGES_ZONES * pages_per_zone instead of UMA_BOOT_PAGES (which remains at 64). Consequently this patch has no effect on systems where the zone structure fits into 2 or fewer pages (on amd64, 59 or fewer CPUs), but increases boot_pages sufficiently on systems where the large number of CPUs makes this structure larger. It seems safe to assume that systems with 60+ CPUs can afford to set aside an additional 128kB of memory per 32 CPUs. The vm.boot_pages tunable continues to override this computation, but is unlikely to be necessary in the future. Tested on:EC2 x1.32xlarge Relnotes: FreeBSD can now boot on 92+ CPU systems without requiring vm.boot_pages to be manually adjusted. Reviewed by: jeff, alc, adrian Approved by: re (kib) Modified: head/sys/vm/uma_int.h head/sys/vm/vm_page.c Modified: head/sys/vm/uma_int.h == --- head/sys/vm/uma_int.h Thu Jul 7 17:22:13 2016(r302392) +++ head/sys/vm/uma_int.h Thu Jul 7 18:37:12 2016(r302393) @@ -110,6 +110,8 @@ #define UMA_SLAB_SHIFT PAGE_SHIFT /* Number of bits PAGE_MASK */ #define UMA_BOOT_PAGES 64 /* Pages allocated for startup */ +#define UMA_BOOT_PAGES_ZONES 32 /* Multiplier for pages to reserve */ + /* if uma_zone > PAGE_SIZE */ /* Max waste percentage before going to off page slab management */ #define UMA_MAX_WASTE 10 Modified: head/sys/vm/vm_page.c == --- head/sys/vm/vm_page.c Thu Jul 7 17:22:13 2016(r302392) +++ head/sys/vm/vm_page.c Thu Jul 7 18:37:12 2016(r302393) @@ -99,6 +99,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -426,6 +427,7 @@ vm_page_startup(vm_offset_t vaddr) vm_paddr_t biggestsize; vm_paddr_t low_water, high_water; int biggestone; + int pages_per_zone; biggestsize = 0; biggestone = 0; @@ -470,6 +472,19 @@ vm_page_startup(vm_offset_t vaddr) vm_page_domain_init(_dom[i]); /* +* Almost all of the pages needed for boot strapping UMA are used +* for zone structures, so if the number of CPUs results in those +* structures taking more than one page each, we set aside more pages +* in proportion to the zone structure size. +*/ + pages_per_zone = howmany(sizeof(struct uma_zone) + + sizeof(struct uma_cache) * (mp_maxid + 1), UMA_SLAB_SIZE); + if (pages_per_zone > 1) { + /* Reserve more pages so that we don't run out. */ + boot_pages = UMA_BOOT_PAGES_ZONES * pages_per_zone; + } + + /* * Allocate memory for use when boot strapping the kernel memory * allocator. * ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302391 - head
On Thu, Jul 7, 2016 at 12:08 PM, Bryan Drewerywrote: > On 7/7/16 8:25 AM, Andrew Turner wrote: >> Author: andrew >> Date: Thu Jul 7 15:25:14 2016 >> New Revision: 302391 >> URL: https://svnweb.freebsd.org/changeset/base/302391 >> >> Log: >> Stop deleting ofwdump.8.gz on arm and arm64 when running make delete-old, >> it is installed on these architectures. >> >> Approved by:re (kib) >> Sponsored by: ABT Systems Ltd >> >> Modified: >> head/ObsoleteFiles.inc >> >> Modified: head/ObsoleteFiles.inc >> == >> --- head/ObsoleteFiles.incThu Jul 7 14:29:23 2016(r302390) >> +++ head/ObsoleteFiles.incThu Jul 7 15:25:14 2016(r302391) >> @@ -8014,7 +8014,9 @@ OLD_FILES+=usr/share/man/man5/usbd.conf. >> .if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" >> OLD_FILES+=usr/share/man/man8/boot_i386.8.gz >> .endif >> -.if ${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && >> ${TARGET_ARCH} != "sparc64" >> +.if ${TARGET_ARCH} != "aarch64" && ${TARGET_CPUARCH} != "arm" && \ > > TARGET_CPUARCH is not valid here. Also, shouldn't we have some MK variable that controls this in the first place? This ifdef soup needs to be cleaned up. Warner > # make check-old > make[1]: "/root/git/freebsd/ObsoleteFiles.inc" line 8019: Malformed > conditional (${TARGET_ARCH} != "aarch64" && ${TARGET_CPUARCH} != "arm" > && ${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && > ${TARGET_ARCH} != "sparc64") > make[1]: Fatal errors encountered -- cannot continue > make[1]: stopped in /root/git/freebsd > >> +${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && \ >> +${TARGET_ARCH} != "sparc64" >> OLD_FILES+=usr/share/man/man8/ofwdump.8.gz >> .endif >> OLD_FILES+=usr/share/man/man8/mount_reiserfs.8.gz >> > > > -- > Regards, > Bryan Drewery > ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302391 - head
On 7/7/16 8:25 AM, Andrew Turner wrote: > Author: andrew > Date: Thu Jul 7 15:25:14 2016 > New Revision: 302391 > URL: https://svnweb.freebsd.org/changeset/base/302391 > > Log: > Stop deleting ofwdump.8.gz on arm and arm64 when running make delete-old, > it is installed on these architectures. > > Approved by:re (kib) > Sponsored by: ABT Systems Ltd > > Modified: > head/ObsoleteFiles.inc > > Modified: head/ObsoleteFiles.inc > == > --- head/ObsoleteFiles.incThu Jul 7 14:29:23 2016(r302390) > +++ head/ObsoleteFiles.incThu Jul 7 15:25:14 2016(r302391) > @@ -8014,7 +8014,9 @@ OLD_FILES+=usr/share/man/man5/usbd.conf. > .if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" > OLD_FILES+=usr/share/man/man8/boot_i386.8.gz > .endif > -.if ${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && > ${TARGET_ARCH} != "sparc64" > +.if ${TARGET_ARCH} != "aarch64" && ${TARGET_CPUARCH} != "arm" && \ TARGET_CPUARCH is not valid here. # make check-old make[1]: "/root/git/freebsd/ObsoleteFiles.inc" line 8019: Malformed conditional (${TARGET_ARCH} != "aarch64" && ${TARGET_CPUARCH} != "arm" && ${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && ${TARGET_ARCH} != "sparc64") make[1]: Fatal errors encountered -- cannot continue make[1]: stopped in /root/git/freebsd > +${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && \ > +${TARGET_ARCH} != "sparc64" > OLD_FILES+=usr/share/man/man8/ofwdump.8.gz > .endif > OLD_FILES+=usr/share/man/man8/mount_reiserfs.8.gz > -- Regards, Bryan Drewery ___ 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-unsubscr...@freebsd.org"
Re: svn commit: r302391 - head
On 7 July 2016 at 11:25, Andrew Turnerwrote: > Author: andrew > Date: Thu Jul 7 15:25:14 2016 > New Revision: 302391 > URL: https://svnweb.freebsd.org/changeset/base/302391 > > Log: > Stop deleting ofwdump.8.gz on arm and arm64 when running make delete-old, > it is installed on these architectures. It's also installed on MIPS. ___ 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-unsubscr...@freebsd.org"
svn commit: r302392 - head/sys/dev/ath
Author: adrian Date: Thu Jul 7 17:22:13 2016 New Revision: 302392 URL: https://svnweb.freebsd.org/changeset/base/302392 Log: [ath] obey the short-GI vap config flag when transmitting. This makes 'ifconfig wlanX -shortgi' work correctly. Tested: * AR9380, STA mode Approved by: re (gjb) Modified: head/sys/dev/ath/if_ath_tx_ht.c Modified: head/sys/dev/ath/if_ath_tx_ht.c == --- head/sys/dev/ath/if_ath_tx_ht.c Thu Jul 7 15:25:14 2016 (r302391) +++ head/sys/dev/ath/if_ath_tx_ht.c Thu Jul 7 17:22:13 2016 (r302392) @@ -222,6 +222,7 @@ void ath_tx_rate_fill_rcflags(struct ath_softc *sc, struct ath_buf *bf) { struct ieee80211_node *ni = bf->bf_node; + struct ieee80211vap *vap = ni->ni_vap; struct ieee80211com *ic = ni->ni_ic; const HAL_RATE_TABLE *rt = sc->sc_currates; struct ath_rc_series *rc = bf->bf_state.bfs_rc; @@ -280,12 +281,14 @@ ath_tx_rate_fill_rcflags(struct ath_soft if (ni->ni_chw == 40 && ic->ic_htcaps & IEEE80211_HTCAP_SHORTGI40 && - ni->ni_htcap & IEEE80211_HTCAP_SHORTGI40) + ni->ni_htcap & IEEE80211_HTCAP_SHORTGI40 && + vap->iv_flags_ht & IEEE80211_FHT_SHORTGI40) rc[i].flags |= ATH_RC_SGI_FLAG; if (ni->ni_chw == 20 && ic->ic_htcaps & IEEE80211_HTCAP_SHORTGI20 && - ni->ni_htcap & IEEE80211_HTCAP_SHORTGI20) + ni->ni_htcap & IEEE80211_HTCAP_SHORTGI20 && + vap->iv_flags_ht & IEEE80211_FHT_SHORTGI20) rc[i].flags |= ATH_RC_SGI_FLAG; /* ___ 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-unsubscr...@freebsd.org"
svn commit: r302391 - head
Author: andrew Date: Thu Jul 7 15:25:14 2016 New Revision: 302391 URL: https://svnweb.freebsd.org/changeset/base/302391 Log: Stop deleting ofwdump.8.gz on arm and arm64 when running make delete-old, it is installed on these architectures. Approved by: re (kib) Sponsored by: ABT Systems Ltd Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Thu Jul 7 14:29:23 2016(r302390) +++ head/ObsoleteFiles.inc Thu Jul 7 15:25:14 2016(r302391) @@ -8014,7 +8014,9 @@ OLD_FILES+=usr/share/man/man5/usbd.conf. .if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" OLD_FILES+=usr/share/man/man8/boot_i386.8.gz .endif -.if ${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && ${TARGET_ARCH} != "sparc64" +.if ${TARGET_ARCH} != "aarch64" && ${TARGET_CPUARCH} != "arm" && \ +${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && \ +${TARGET_ARCH} != "sparc64" OLD_FILES+=usr/share/man/man8/ofwdump.8.gz .endif OLD_FILES+=usr/share/man/man8/mount_reiserfs.8.gz ___ 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-unsubscr...@freebsd.org"
svn commit: r302390 - head/release/doc/en_US.ISO8859-1/relnotes
Author: skreuzer (doc,ports committer) Date: Thu Jul 7 14:29:23 2016 New Revision: 302390 URL: https://svnweb.freebsd.org/changeset/base/302390 Log: Document 299786, Support for X-Powers AXP813 and AXP818 PMIC Approved by: re (gjb, implicit, relnotes) Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml == --- head/release/doc/en_US.ISO8859-1/relnotes/article.xml Thu Jul 7 09:22:41 2016(r302389) +++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml Thu Jul 7 14:29:23 2016(r302390) @@ -1513,6 +1513,9 @@ Support for the Allwinner H3 SoC has been added. + Support for X-Powers AXP813 and + AXP818 power management integrated circuits have been added. + Support for GPIO, Sensors and interrupts on AXP209 power management integrated circuits have been added. ___ 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-unsubscr...@freebsd.org"
svn commit: r302389 - svnadmin/conf
Author: andrew Date: Thu Jul 7 09:22:41 2016 New Revision: 302389 URL: https://svnweb.freebsd.org/changeset/base/302389 Log: Free Emmanuel Vadot from mentorship to collect his own pointy hats. Modified: svnadmin/conf/mentors Modified: svnadmin/conf/mentors == --- svnadmin/conf/mentors Thu Jul 7 09:03:57 2016(r302388) +++ svnadmin/conf/mentors Thu Jul 7 09:22:41 2016(r302389) @@ -26,7 +26,6 @@ kadesai ken Co-mentor: scottl, ambrisk karels gnn landonfadrian mahrensmckusick -manu andrew Co-mentor: cognet miwi rwatson monthadar adrian peterj jhb Co-mentor: grog ___ 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-unsubscr...@freebsd.org"
svn commit: r302388 - in head: sbin/umount sys/kern sys/sys usr.sbin/autofs
Author: trasz Date: Thu Jul 7 09:03:57 2016 New Revision: 302388 URL: https://svnweb.freebsd.org/changeset/base/302388 Log: Add new unmount(2) flag, MNT_NONBUSY, to check whether there are any open vnodes before proceeding. Make autounmound(8) use this flag. Without it, even an unsuccessfull unmount causes filesystem flush, which interferes with normal operation. Reviewed by: kib@ Approved by: re (gjb@) MFC after:1 month Differential Revision:https://reviews.freebsd.org/D7047 Modified: head/sbin/umount/umount.8 head/sbin/umount/umount.c head/sys/kern/vfs_mount.c head/sys/sys/mount.h head/usr.sbin/autofs/autounmountd.c Modified: head/sbin/umount/umount.8 == --- head/sbin/umount/umount.8 Thu Jul 7 05:47:42 2016(r302387) +++ head/sbin/umount/umount.8 Thu Jul 7 09:03:57 2016(r302388) @@ -28,7 +28,7 @@ .\" @(#)umount.8 8.2 (Berkeley) 5/8/95 .\" $FreeBSD$ .\" -.Dd June 17, 2015 +.Dd July 7, 2016 .Dt UMOUNT 8 .Os .Sh NAME @@ -36,12 +36,12 @@ .Nd unmount file systems .Sh SYNOPSIS .Nm -.Op Fl fv +.Op Fl fnv .Ar special ... | node ... | fsid ... .Nm .Fl a | A .Op Fl F Ar fstab -.Op Fl fv +.Op Fl fnv .Op Fl h Ar host .Op Fl t Ar type .Sh DESCRIPTION @@ -94,6 +94,15 @@ option and, unless otherwise specified w option, will only unmount .Tn NFS file systems. +.It Fl n +Unless the +.Fl f +is used, the +.Nm +will not unmount an active file system. +It will, however, perform a flush. +This flag disables this behaviour, preventing the flush +if there are any files open. .It Fl t Ar type Is used to indicate the actions should only be taken on file systems of the specified type. Modified: head/sbin/umount/umount.c == --- head/sbin/umount/umount.c Thu Jul 7 05:47:42 2016(r302387) +++ head/sbin/umount/umount.c Thu Jul 7 09:03:57 2016(r302388) @@ -91,7 +91,7 @@ main(int argc, char *argv[]) struct addrinfo hints; all = errs = 0; - while ((ch = getopt(argc, argv, "AaF:fh:t:v")) != -1) + while ((ch = getopt(argc, argv, "AaF:fh:nt:v")) != -1) switch (ch) { case 'A': all = 2; @@ -103,12 +103,15 @@ main(int argc, char *argv[]) setfstab(optarg); break; case 'f': - fflag = MNT_FORCE; + fflag |= MNT_FORCE; break; case 'h': /* -h implies -A. */ all = 2; nfshost = optarg; break; + case 'n': + fflag |= MNT_NONBUSY; + break; case 't': if (typelist != NULL) err(1, "only one -t option may be specified"); @@ -124,8 +127,11 @@ main(int argc, char *argv[]) argc -= optind; argv += optind; + if ((fflag & MNT_FORCE) != 0 && (fflag & MNT_NONBUSY) != 0) + err(1, "-f and -n are mutually exclusive"); + /* Start disks transferring immediately. */ - if ((fflag & MNT_FORCE) == 0) + if ((fflag & (MNT_FORCE | MNT_NONBUSY)) == 0) sync(); if ((argc == 0 && !all) || (argc != 0 && all)) @@ -609,7 +615,7 @@ usage(void) { (void)fprintf(stderr, "%s\n%s\n", - "usage: umount [-fv] special ... | node ... | fsid ...", - " umount -a | -A [-F fstab] [-fv] [-h host] [-t type]"); + "usage: umount [-fnv] special ... | node ... | fsid ...", + " umount -a | -A [-F fstab] [-fnv] [-h host] [-t type]"); exit(1); } Modified: head/sys/kern/vfs_mount.c == --- head/sys/kern/vfs_mount.c Thu Jul 7 05:47:42 2016(r302387) +++ head/sys/kern/vfs_mount.c Thu Jul 7 09:03:57 2016(r302388) @@ -1205,6 +1205,28 @@ sys_unmount(struct thread *td, struct un } /* + * Return error if any of the vnodes, ignoring the root vnode + * and the syncer vnode, have non-zero usecount. + */ +static int +vfs_check_usecounts(struct mount *mp) +{ + struct vnode *vp, *mvp; + + MNT_VNODE_FOREACH_ALL(vp, mp, mvp) { + if ((vp->v_vflag & VV_ROOT) == 0 && vp->v_type != VNON && + vp->v_usecount != 0) { + VI_UNLOCK(vp); + MNT_VNODE_FOREACH_ALL_ABORT(mp, mvp); + return (EBUSY); + } + VI_UNLOCK(vp); + } + + return (0); +} + +/* * Do the actual filesystem unmount. */ int @@ -1260,6 +1282,21 @@ dounmount(struct mount *mp, int flags, s return (EBUSY); } mp->mnt_kern_flag |= MNTK_UNMOUNT