From owner-svn-src-user@freebsd.org Sun Oct 16 05:32:30 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0B898C13A96 for ; Sun, 16 Oct 2016 05:32:30 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 CCCE7FA4; Sun, 16 Oct 2016 05:32:29 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9G5WSC9015836; Sun, 16 Oct 2016 05:32:28 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9G5WShX015835; Sun, 16 Oct 2016 05:32:28 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201610160532.u9G5WShX015835@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sun, 16 Oct 2016 05:32:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307389 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Oct 2016 05:32:30 -0000 Author: alc Date: Sun Oct 16 05:32:28 2016 New Revision: 307389 URL: https://svnweb.freebsd.org/changeset/base/307389 Log: Rename prev_shortfall to in_shortfall and change its type to bool. Change the control flow so that we don't unnecessarily perform vm_laundry_target(). Reviewed by: markj Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Sun Oct 16 04:22:04 2016 (r307388) +++ user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Sun Oct 16 05:32:28 2016 (r307389) @@ -262,7 +262,7 @@ SYSCTL_INT(_vm, OID_AUTO, max_wired, static u_int isqrt(u_int num); static boolean_t vm_pageout_fallback_object_lock(vm_page_t, vm_page_t *); static int vm_pageout_launder(struct vm_domain *vmd, int launder, - bool shortfall); + bool in_shortfall); static void vm_pageout_laundry_worker(void *arg); #if !defined(NO_SWAPPING) static void vm_pageout_map_deactivate_pages(vm_map_t, long); @@ -878,7 +878,7 @@ unlock_mp: * Returns the number of pages successfully laundered. */ static int -vm_pageout_launder(struct vm_domain *vmd, int launder, bool shortfall) +vm_pageout_launder(struct vm_domain *vmd, int launder, bool in_shortfall) { struct vm_pagequeue *pq; vm_object_t object; @@ -986,7 +986,7 @@ vm_pageout_launder(struct vm_domain *vmd * laundry queue, and an activation is a valid * way out. */ - if (!shortfall) + if (!in_shortfall) launder--; goto drop_page; } else if ((object->flags & OBJ_DEAD) == 0) @@ -1114,8 +1114,9 @@ vm_pageout_laundry_worker(void *arg) struct vm_pagequeue *pq; uint64_t nclean, ndirty; u_int last_launder, wakeups; - int cycle, domidx, last_target, launder, prev_shortfall, shortfall; + int cycle, domidx, last_target, launder, shortfall; int sleeptime, target; + bool in_shortfall; domidx = (uintptr_t)arg; domain = &vm_dom[domidx]; @@ -1123,17 +1124,18 @@ vm_pageout_laundry_worker(void *arg) KASSERT(domain->vmd_segs != 0, ("domain without segments")); vm_pageout_init_marker(&domain->vmd_laundry_marker, PQ_LAUNDRY); + shortfall = 0; + in_shortfall = false; + target = 0; cycle = 0; last_launder = 0; - shortfall = prev_shortfall = 0; - target = 0; /* * The pageout laundry worker is never done, so loop forever. */ for (;;) { - KASSERT(cycle >= 0, ("negative cycle %d", cycle)); KASSERT(target >= 0, ("negative target %d", target)); + KASSERT(cycle >= 0, ("negative cycle %d", cycle)); launder = 0; wakeups = VM_METER_PCPU_CNT(v_pdwakeups); @@ -1142,26 +1144,26 @@ vm_pageout_laundry_worker(void *arg) * shortage of free pages. */ if (shortfall > 0) { + in_shortfall = true; target = shortfall; cycle = VM_LAUNDER_RATE; - prev_shortfall = shortfall; - } - if (prev_shortfall > 0) { + } else if (!in_shortfall) + goto trybackground; + else if (cycle == 0 || vm_laundry_target() <= 0) { /* - * We entered shortfall at some point in the recent - * past. If we have reached our target, or the - * laundering run is finished and we're not currently in - * shortfall, we have no immediate need to launder - * pages. Otherwise keep laundering. + * We recently entered shortfall and began laundering + * pages. If we have completed that laundering run + * (and we are no longer in shortfall) or we have met + * our laundry target through other activity, then we + * can stop laundering pages. */ - if (vm_laundry_target() <= 0 || cycle == 0) { - prev_shortfall = target = 0; - } else { - last_launder = wakeups; - launder = target / cycle--; - goto dolaundry; - } - } + in_shortfall = false; + target = 0; + goto trybackground; + } + last_launder = wakeups; + launder = target / cycle--; + goto dolaundry; /* * There's no immediate need to launder any pages; see if we @@ -1180,6 +1182,7 @@ vm_pageout_laundry_worker(void *arg) * ratio of dirty to clean inactive pages grows, the amount of * memory pressure required to trigger laundering decreases. */ +trybackground: nclean = vm_cnt.v_inactive_count + vm_cnt.v_free_count; ndirty = vm_cnt.v_laundry_count; if (target == 0 && wakeups != last_launder && @@ -1217,7 +1220,7 @@ dolaundry: * a cluster minus one. */ target -= min(vm_pageout_launder(domain, launder, - prev_shortfall > 0), target); + in_shortfall), target); /* * Sleep for a little bit if we're in the middle of a laundering From owner-svn-src-user@freebsd.org Sun Oct 16 19:19:23 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3ED5C14E33 for ; Sun, 16 Oct 2016 19:19:23 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 901CD16B5; Sun, 16 Oct 2016 19:19:23 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9GJJMk9027854; Sun, 16 Oct 2016 19:19:22 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9GJJM6B027853; Sun, 16 Oct 2016 19:19:22 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201610161919.u9GJJM6B027853@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sun, 16 Oct 2016 19:19:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307399 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Oct 2016 19:19:23 -0000 Author: alc Date: Sun Oct 16 19:19:22 2016 New Revision: 307399 URL: https://svnweb.freebsd.org/changeset/base/307399 Log: Explicitly initialize vm_laundry_request. Reviewed by: markj Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Sun Oct 16 19:12:22 2016 (r307398) +++ user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Sun Oct 16 19:19:22 2016 (r307399) @@ -166,11 +166,12 @@ static int vm_pageout_oom_seq = 12; bool vm_pageout_wanted; /* Event on which pageout daemon sleeps */ bool vm_pages_needed; /* Are threads waiting for free pages? */ +/* Pending request for dirty page laundering. */ static enum { VM_LAUNDRY_IDLE, VM_LAUNDRY_BACKGROUND, - VM_LAUNDRY_SHORTFALL, -} vm_laundry_request; /* Pending request for dirty page laundering. */ + VM_LAUNDRY_SHORTFALL +} vm_laundry_request = VM_LAUNDRY_IDLE; #if !defined(NO_SWAPPING) static int vm_pageout_req_swapout; /* XXX */ From owner-svn-src-user@freebsd.org Mon Oct 17 07:23:08 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 76766C13C76 for ; Mon, 17 Oct 2016 07:23:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 51C7D1608; Mon, 17 Oct 2016 07:23:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9H7N7pt009574; Mon, 17 Oct 2016 07:23:07 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9H7N7bi009573; Mon, 17 Oct 2016 07:23:07 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201610170723.u9H7N7bi009573@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 17 Oct 2016 07:23:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307488 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Oct 2016 07:23:08 -0000 Author: markj Date: Mon Oct 17 07:23:07 2016 New Revision: 307488 URL: https://svnweb.freebsd.org/changeset/base/307488 Log: Handle laundering run preemption properly. Shortfall can preempt a background laundering, but not a shortfall laundering. Therefore: - make sure we don't reset the shortfall target if a shortfall request arrives while the system is already in shortfall, and - make sure we acknowledge a shortfall request by resetting vm_laundry_request if it arrives during background laundering. Also ensure that we sleep uninterruptibly between laundry cycles, and rename "cycle" to make its use more clear. Reviewed by: alc Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Mon Oct 17 07:20:01 2016 (r307487) +++ user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Mon Oct 17 07:23:07 2016 (r307488) @@ -1115,8 +1115,7 @@ vm_pageout_laundry_worker(void *arg) struct vm_pagequeue *pq; uint64_t nclean, ndirty; u_int last_launder, wakeups; - int cycle, domidx, last_target, launder, shortfall; - int sleeptime, target; + int domidx, last_target, launder, shortfall, shortfall_cycle, target; bool in_shortfall; domidx = (uintptr_t)arg; @@ -1127,8 +1126,8 @@ vm_pageout_laundry_worker(void *arg) shortfall = 0; in_shortfall = false; + shortfall_cycle = 0; target = 0; - cycle = 0; last_launder = 0; /* @@ -1136,7 +1135,8 @@ vm_pageout_laundry_worker(void *arg) */ for (;;) { KASSERT(target >= 0, ("negative target %d", target)); - KASSERT(cycle >= 0, ("negative cycle %d", cycle)); + KASSERT(shortfall_cycle >= 0, + ("negative cycle %d", shortfall_cycle)); launder = 0; wakeups = VM_METER_PCPU_CNT(v_pdwakeups); @@ -1146,11 +1146,11 @@ vm_pageout_laundry_worker(void *arg) */ if (shortfall > 0) { in_shortfall = true; + shortfall_cycle = VM_LAUNDER_RATE; target = shortfall; - cycle = VM_LAUNDER_RATE; } else if (!in_shortfall) goto trybackground; - else if (cycle == 0 || vm_laundry_target() <= 0) { + else if (shortfall_cycle == 0 || vm_laundry_target() <= 0) { /* * We recently entered shortfall and began laundering * pages. If we have completed that laundering run @@ -1163,7 +1163,7 @@ vm_pageout_laundry_worker(void *arg) goto trybackground; } last_launder = wakeups; - launder = target / cycle--; + launder = target / shortfall_cycle--; goto dolaundry; /* @@ -1229,16 +1229,26 @@ dolaundry: * started. Otherwise, wait for a kick from the pagedaemon. */ vm_pagequeue_lock(pq); - if (target > 0 || vm_laundry_request != VM_LAUNDRY_IDLE) - sleeptime = hz / VM_LAUNDER_INTERVAL; - else - sleeptime = 0; - (void)mtx_sleep(&vm_laundry_request, vm_pagequeue_lockptr(pq), - PVM, "laundr", sleeptime); - if (vm_laundry_request == VM_LAUNDRY_SHORTFALL) + if (target > 0 || vm_laundry_request != VM_LAUNDRY_IDLE) { + vm_pagequeue_unlock(pq); + pause("laundr", hz / VM_LAUNDER_INTERVAL); + vm_pagequeue_lock(pq); + } else + (void)mtx_sleep(&vm_laundry_request, + vm_pagequeue_lockptr(pq), PVM, "laundr", 0); + + /* + * If the pagedaemon has indicated that it's in shortfall, start + * a shortfall laundering unless we're already in the middle of + * one. This may preempt a background laundering. + */ + if (vm_laundry_request == VM_LAUNDRY_SHORTFALL && + (!in_shortfall || shortfall_cycle == 0)) { shortfall = vm_laundry_target() + vm_pageout_deficit; - else + target = 0; + } else shortfall = 0; + if (target == 0) vm_laundry_request = VM_LAUNDRY_IDLE; vm_pagequeue_unlock(pq); From owner-svn-src-user@freebsd.org Mon Oct 17 07:25:51 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AFC62C13DBC for ; Mon, 17 Oct 2016 07:25:51 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 5A15D1738; Mon, 17 Oct 2016 07:25:51 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9H7PorD009784; Mon, 17 Oct 2016 07:25:50 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9H7PlC3009752; Mon, 17 Oct 2016 07:25:47 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201610170725.u9H7PlC3009752@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 17 Oct 2016 07:25:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307489 - in user/alc/PQ_LAUNDRY: . cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid cddl/contrib/opensolaris/lib/libdtrace/common cddl/usr.sbin/dtrace/tests/tools contrib/libarc... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Oct 2016 07:25:51 -0000 Author: markj Date: Mon Oct 17 07:25:46 2016 New Revision: 307489 URL: https://svnweb.freebsd.org/changeset/base/307489 Log: MFH r307488 Added: user/alc/PQ_LAUNDRY/etc/rc.d/zfsbe - copied unchanged from r307488, head/etc/rc.d/zfsbe user/alc/PQ_LAUNDRY/lib/libc/libc_nossp.ldscript - copied unchanged from r307488, head/lib/libc/libc_nossp.ldscript user/alc/PQ_LAUNDRY/lib/libefivar/ - copied from r307488, head/lib/libefivar/ user/alc/PQ_LAUNDRY/lib/libgcc_eh/ - copied from r307488, head/lib/libgcc_eh/ user/alc/PQ_LAUNDRY/lib/libgcc_s/ - copied from r307488, head/lib/libgcc_s/ user/alc/PQ_LAUNDRY/share/mk/bsd.suffixes-posix.mk - copied unchanged from r307488, head/share/mk/bsd.suffixes-posix.mk user/alc/PQ_LAUNDRY/share/mk/bsd.suffixes.mk - copied unchanged from r307488, head/share/mk/bsd.suffixes.mk user/alc/PQ_LAUNDRY/sys/arm64/conf/RPI3 - copied unchanged from r307488, head/sys/arm64/conf/RPI3 user/alc/PQ_LAUNDRY/sys/dev/efidev/ - copied from r307488, head/sys/dev/efidev/ user/alc/PQ_LAUNDRY/sys/dev/gpio/gpioregulator.c - copied unchanged from r307488, head/sys/dev/gpio/gpioregulator.c user/alc/PQ_LAUNDRY/sys/dev/netmap/if_ptnet.c - copied unchanged from r307488, head/sys/dev/netmap/if_ptnet.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_pt.c - copied unchanged from r307488, head/sys/dev/netmap/netmap_pt.c user/alc/PQ_LAUNDRY/sys/i386/include/efi.h - copied unchanged from r307488, head/sys/i386/include/efi.h user/alc/PQ_LAUNDRY/sys/mips/include/efi.h - copied unchanged from r307488, head/sys/mips/include/efi.h user/alc/PQ_LAUNDRY/sys/net/netmap_virt.h - copied unchanged from r307488, head/sys/net/netmap_virt.h user/alc/PQ_LAUNDRY/sys/pc98/include/efi.h - copied unchanged from r307488, head/sys/pc98/include/efi.h user/alc/PQ_LAUNDRY/sys/powerpc/include/efi.h - copied unchanged from r307488, head/sys/powerpc/include/efi.h user/alc/PQ_LAUNDRY/sys/riscv/include/efi.h - copied unchanged from r307488, head/sys/riscv/include/efi.h user/alc/PQ_LAUNDRY/sys/sparc64/include/efi.h - copied unchanged from r307488, head/sys/sparc64/include/efi.h user/alc/PQ_LAUNDRY/sys/sys/efiio.h - copied unchanged from r307488, head/sys/sys/efiio.h user/alc/PQ_LAUNDRY/tools/tools/netmap/ctrs.h - copied unchanged from r307488, head/tools/tools/netmap/ctrs.h user/alc/PQ_LAUNDRY/tools/tools/netmap/nmreplay.8 - copied unchanged from r307488, head/tools/tools/netmap/nmreplay.8 user/alc/PQ_LAUNDRY/tools/tools/netmap/nmreplay.c - copied unchanged from r307488, head/tools/tools/netmap/nmreplay.c user/alc/PQ_LAUNDRY/usr.sbin/efivar/ - copied from r307488, head/usr.sbin/efivar/ Replaced: user/alc/PQ_LAUNDRY/sys/sys/apm.h - copied unchanged from r307488, head/sys/sys/apm.h user/alc/PQ_LAUNDRY/sys/sys/disk/ - copied from r307488, head/sys/sys/disk/ user/alc/PQ_LAUNDRY/sys/sys/disklabel.h - copied unchanged from r307488, head/sys/sys/disklabel.h user/alc/PQ_LAUNDRY/sys/sys/diskmbr.h - copied unchanged from r307488, head/sys/sys/diskmbr.h user/alc/PQ_LAUNDRY/sys/sys/diskpc98.h - copied unchanged from r307488, head/sys/sys/diskpc98.h user/alc/PQ_LAUNDRY/sys/sys/gpt.h - copied unchanged from r307488, head/sys/sys/gpt.h user/alc/PQ_LAUNDRY/sys/sys/vtoc.h - copied unchanged from r307488, head/sys/sys/vtoc.h Deleted: user/alc/PQ_LAUNDRY/gnu/usr.bin/rcs/ user/alc/PQ_LAUNDRY/lib/libefi/ user/alc/PQ_LAUNDRY/share/doc/psd/13.rcs/ user/alc/PQ_LAUNDRY/tools/build/options/WITH_RCS user/alc/PQ_LAUNDRY/usr.bin/sdiff/common.c user/alc/PQ_LAUNDRY/usr.bin/sdiff/common.h Modified: user/alc/PQ_LAUNDRY/ObsoleteFiles.inc user/alc/PQ_LAUNDRY/UPDATING user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.args1.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c user/alc/PQ_LAUNDRY/cddl/usr.sbin/dtrace/tests/tools/exclude.sh user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/main.c user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/test.h user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/main.c user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test.h user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test_read_set_format.c user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/main.c user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test.h user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test_missing_file.c user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/h_tools.c user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_mount.sh user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_remove.sh user/alc/PQ_LAUNDRY/etc/defaults/rc.conf user/alc/PQ_LAUNDRY/etc/mtree/BSD.usr.dist user/alc/PQ_LAUNDRY/etc/rc user/alc/PQ_LAUNDRY/etc/rc.d/Makefile user/alc/PQ_LAUNDRY/etc/rc.d/jail user/alc/PQ_LAUNDRY/etc/rc.d/zfs user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile user/alc/PQ_LAUNDRY/gnu/usr.bin/groff/mdate.sh user/alc/PQ_LAUNDRY/include/Makefile user/alc/PQ_LAUNDRY/include/search.h user/alc/PQ_LAUNDRY/lib/Makefile user/alc/PQ_LAUNDRY/lib/libc/Makefile user/alc/PQ_LAUNDRY/lib/libc/gen/arc4random.c user/alc/PQ_LAUNDRY/lib/libc/gen/recvmmsg.c user/alc/PQ_LAUNDRY/lib/libc/mips/string/strchr.S user/alc/PQ_LAUNDRY/lib/libc/mips/string/strrchr.S user/alc/PQ_LAUNDRY/lib/libc/stdlib/random.c user/alc/PQ_LAUNDRY/lib/libc/stdlib/tdelete.c user/alc/PQ_LAUNDRY/lib/libc/stdlib/tfind.c user/alc/PQ_LAUNDRY/lib/libc/stdlib/tsearch.3 user/alc/PQ_LAUNDRY/lib/libc/stdlib/tsearch.c user/alc/PQ_LAUNDRY/lib/libc/stdlib/twalk.c user/alc/PQ_LAUNDRY/lib/libc/tests/stdio/printbasic_test.c user/alc/PQ_LAUNDRY/lib/libc/tests/stdlib/tsearch_test.c user/alc/PQ_LAUNDRY/lib/libdevdctl/consumer.cc user/alc/PQ_LAUNDRY/lib/libucl/Makefile user/alc/PQ_LAUNDRY/lib/msun/Makefile user/alc/PQ_LAUNDRY/lib/msun/src/s_fmax.c user/alc/PQ_LAUNDRY/lib/msun/src/s_fmin.c user/alc/PQ_LAUNDRY/libexec/ypxfr/ypxfr_getmap.c user/alc/PQ_LAUNDRY/release/Makefile.vm user/alc/PQ_LAUNDRY/release/arm/BANANAPI.conf user/alc/PQ_LAUNDRY/release/arm/CUBIEBOARD2.conf user/alc/PQ_LAUNDRY/release/arm/RPI2.conf user/alc/PQ_LAUNDRY/release/doc/share/xml/sponsor.ent user/alc/PQ_LAUNDRY/release/picobsd/build/picobsd user/alc/PQ_LAUNDRY/release/tools/vmimage.subr user/alc/PQ_LAUNDRY/sbin/pfctl/parse.y user/alc/PQ_LAUNDRY/share/doc/psd/Makefile user/alc/PQ_LAUNDRY/share/man/man4/netmap.4 user/alc/PQ_LAUNDRY/share/man/man5/pf.conf.5 user/alc/PQ_LAUNDRY/share/man/man5/src.conf.5 user/alc/PQ_LAUNDRY/share/mk/Makefile user/alc/PQ_LAUNDRY/share/mk/bsd.lib.mk user/alc/PQ_LAUNDRY/share/mk/bsd.libnames.mk user/alc/PQ_LAUNDRY/share/mk/src.libnames.mk user/alc/PQ_LAUNDRY/share/mk/src.opts.mk user/alc/PQ_LAUNDRY/share/mk/sys.mk user/alc/PQ_LAUNDRY/sys/amd64/amd64/efirt.c (contents, props changed) user/alc/PQ_LAUNDRY/sys/amd64/amd64/mem.c user/alc/PQ_LAUNDRY/sys/amd64/conf/GENERIC user/alc/PQ_LAUNDRY/sys/arm/allwinner/aw_ccu.c user/alc/PQ_LAUNDRY/sys/arm/allwinner/axp209.c user/alc/PQ_LAUNDRY/sys/arm/allwinner/axp209reg.h user/alc/PQ_LAUNDRY/sys/arm/allwinner/clk/aw_gate.c user/alc/PQ_LAUNDRY/sys/arm/allwinner/clk/aw_pll.c user/alc/PQ_LAUNDRY/sys/arm/arm/mem.c user/alc/PQ_LAUNDRY/sys/arm/arm/nexus.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_bsc.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_common.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_dma.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_fb.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_fbd.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_gpio.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_intr.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_mbox.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_spi.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm2835_wdog.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/bcm283x_dwc_fdt.c user/alc/PQ_LAUNDRY/sys/arm/broadcom/bcm2835/files.bcm283x user/alc/PQ_LAUNDRY/sys/arm/conf/ATMEL user/alc/PQ_LAUNDRY/sys/arm/conf/AVILA user/alc/PQ_LAUNDRY/sys/arm/conf/BWCT user/alc/PQ_LAUNDRY/sys/arm/conf/CAMBRIA user/alc/PQ_LAUNDRY/sys/arm/conf/CNS11XXNAS user/alc/PQ_LAUNDRY/sys/arm/conf/CRB user/alc/PQ_LAUNDRY/sys/arm/conf/DB-78XXX user/alc/PQ_LAUNDRY/sys/arm/conf/DB-88F5XXX user/alc/PQ_LAUNDRY/sys/arm/conf/DB-88F6XXX user/alc/PQ_LAUNDRY/sys/arm/conf/DOCKSTAR user/alc/PQ_LAUNDRY/sys/arm/conf/DREAMPLUG-1001 user/alc/PQ_LAUNDRY/sys/arm/conf/EA3250 user/alc/PQ_LAUNDRY/sys/arm/conf/EB9200 user/alc/PQ_LAUNDRY/sys/arm/conf/ETHERNUT5 user/alc/PQ_LAUNDRY/sys/arm/conf/EXYNOS5.common user/alc/PQ_LAUNDRY/sys/arm/conf/GENERIC user/alc/PQ_LAUNDRY/sys/arm/conf/GUMSTIX user/alc/PQ_LAUNDRY/sys/arm/conf/HL200 user/alc/PQ_LAUNDRY/sys/arm/conf/HL201 user/alc/PQ_LAUNDRY/sys/arm/conf/KB920X user/alc/PQ_LAUNDRY/sys/arm/conf/NSLU user/alc/PQ_LAUNDRY/sys/arm/conf/QILA9G20 user/alc/PQ_LAUNDRY/sys/arm/conf/SAM9260EK user/alc/PQ_LAUNDRY/sys/arm/conf/SAM9G20EK user/alc/PQ_LAUNDRY/sys/arm/conf/SAM9X25EK user/alc/PQ_LAUNDRY/sys/arm/conf/SHEEVAPLUG user/alc/PQ_LAUNDRY/sys/arm/conf/SN9G45 user/alc/PQ_LAUNDRY/sys/arm/conf/TS7800 user/alc/PQ_LAUNDRY/sys/arm/conf/std.armv6 user/alc/PQ_LAUNDRY/sys/arm/include/efi.h user/alc/PQ_LAUNDRY/sys/arm64/arm64/identcpu.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/locore.S user/alc/PQ_LAUNDRY/sys/arm64/arm64/machdep.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/mem.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/mp_machdep.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/nexus.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/vfp.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/vm_machdep.c user/alc/PQ_LAUNDRY/sys/arm64/conf/GENERIC user/alc/PQ_LAUNDRY/sys/arm64/include/armreg.h user/alc/PQ_LAUNDRY/sys/arm64/include/efi.h user/alc/PQ_LAUNDRY/sys/arm64/include/pcb.h user/alc/PQ_LAUNDRY/sys/arm64/include/vfp.h user/alc/PQ_LAUNDRY/sys/boot/arm/uboot/Makefile user/alc/PQ_LAUNDRY/sys/boot/common/bootstrap.h user/alc/PQ_LAUNDRY/sys/boot/common/dev_net.c user/alc/PQ_LAUNDRY/sys/boot/common/interp.c user/alc/PQ_LAUNDRY/sys/boot/common/interp_forth.c user/alc/PQ_LAUNDRY/sys/boot/common/loader.8 user/alc/PQ_LAUNDRY/sys/boot/common/pnp.c user/alc/PQ_LAUNDRY/sys/boot/efi/loader/Makefile user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/amd64/ldscript.amd64 user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/arm/ldscript.arm user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/arm64/ldscript.arm64 user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/i386/efimd.c user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/i386/elf32_freebsd.c user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/i386/exec.c user/alc/PQ_LAUNDRY/sys/boot/efi/loader/arch/i386/ldscript.i386 user/alc/PQ_LAUNDRY/sys/boot/efi/loader/main.c user/alc/PQ_LAUNDRY/sys/boot/ficl/ficl.h user/alc/PQ_LAUNDRY/sys/boot/ficl/i386/sysdep.c user/alc/PQ_LAUNDRY/sys/boot/ficl/loader.c user/alc/PQ_LAUNDRY/sys/boot/i386/libi386/Makefile user/alc/PQ_LAUNDRY/sys/boot/i386/libi386/biospci.c user/alc/PQ_LAUNDRY/sys/boot/i386/libi386/libi386.h user/alc/PQ_LAUNDRY/sys/boot/mips/beri/loader/loader.ldscript user/alc/PQ_LAUNDRY/sys/boot/mips/uboot/Makefile user/alc/PQ_LAUNDRY/sys/boot/pc98/libpc98/Makefile user/alc/PQ_LAUNDRY/sys/boot/powerpc/kboot/Makefile user/alc/PQ_LAUNDRY/sys/boot/powerpc/ofw/Makefile user/alc/PQ_LAUNDRY/sys/boot/powerpc/ps3/Makefile user/alc/PQ_LAUNDRY/sys/boot/sparc64/loader/Makefile user/alc/PQ_LAUNDRY/sys/boot/userboot/userboot/Makefile user/alc/PQ_LAUNDRY/sys/cam/cam_compat.c user/alc/PQ_LAUNDRY/sys/cam/ctl/ctl.c user/alc/PQ_LAUNDRY/sys/cam/ctl/ctl.h user/alc/PQ_LAUNDRY/sys/cam/ctl/ctl_backend.c user/alc/PQ_LAUNDRY/sys/cam/scsi/scsi_enc_ses.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c user/alc/PQ_LAUNDRY/sys/conf/NOTES user/alc/PQ_LAUNDRY/sys/conf/files user/alc/PQ_LAUNDRY/sys/conf/files.arm64 user/alc/PQ_LAUNDRY/sys/conf/kern.opts.mk user/alc/PQ_LAUNDRY/sys/conf/options user/alc/PQ_LAUNDRY/sys/conf/options.arm64 user/alc/PQ_LAUNDRY/sys/contrib/octeon-sdk/cvmx-dma-engine.h user/alc/PQ_LAUNDRY/sys/contrib/octeon-sdk/cvmx-higig.h user/alc/PQ_LAUNDRY/sys/contrib/octeon-sdk/cvmx-pcie.c user/alc/PQ_LAUNDRY/sys/contrib/octeon-sdk/cvmx-raid.h user/alc/PQ_LAUNDRY/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c user/alc/PQ_LAUNDRY/sys/dev/acpi_support/atk0110.c user/alc/PQ_LAUNDRY/sys/dev/atkbdc/atkbdc.c user/alc/PQ_LAUNDRY/sys/dev/cxgbe/t4_main.c user/alc/PQ_LAUNDRY/sys/dev/drm2/i915/i915_gem.c user/alc/PQ_LAUNDRY/sys/dev/drm2/ttm/ttm_bo_vm.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/include/vmbus.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_net_vsc.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_rndis_filter.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/if_hnvar.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/vmbus/vmbus_br.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/vmbus/vmbus_chan.c user/alc/PQ_LAUNDRY/sys/dev/iicbus/iicsmb.c user/alc/PQ_LAUNDRY/sys/dev/iwm/if_iwm.c user/alc/PQ_LAUNDRY/sys/dev/kbd/kbd.c user/alc/PQ_LAUNDRY/sys/dev/netmap/if_ixl_netmap.h user/alc/PQ_LAUNDRY/sys/dev/netmap/if_lem_netmap.h user/alc/PQ_LAUNDRY/sys/dev/netmap/ixgbe_netmap.h user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_freebsd.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_generic.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_kern.h user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mbq.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mbq.h user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mem2.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mem2.h user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_monitor.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_offloadings.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_pipe.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_vale.c user/alc/PQ_LAUNDRY/sys/dev/otus/if_otus.c user/alc/PQ_LAUNDRY/sys/dev/sfxge/common/ef10_nic.c user/alc/PQ_LAUNDRY/sys/dev/smbus/smbconf.h user/alc/PQ_LAUNDRY/sys/dev/smbus/smbus.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/dwc_otg_fdt.c user/alc/PQ_LAUNDRY/sys/dev/usb/net/if_smsc.c user/alc/PQ_LAUNDRY/sys/dev/usb/wlan/if_rsu.c user/alc/PQ_LAUNDRY/sys/fs/nandfs/nandfs_vnops.c user/alc/PQ_LAUNDRY/sys/i386/conf/GENERIC user/alc/PQ_LAUNDRY/sys/i386/i386/mem.c user/alc/PQ_LAUNDRY/sys/kern/kern_linker.c user/alc/PQ_LAUNDRY/sys/kern/subr_gtaskqueue.c user/alc/PQ_LAUNDRY/sys/kern/subr_intr.c user/alc/PQ_LAUNDRY/sys/kern/uipc_accf.c user/alc/PQ_LAUNDRY/sys/kern/vfs_bio.c user/alc/PQ_LAUNDRY/sys/mips/conf/ADM5120 user/alc/PQ_LAUNDRY/sys/mips/conf/ALCHEMY user/alc/PQ_LAUNDRY/sys/mips/conf/AR71XX_BASE user/alc/PQ_LAUNDRY/sys/mips/conf/AR724X_BASE user/alc/PQ_LAUNDRY/sys/mips/conf/BCM user/alc/PQ_LAUNDRY/sys/mips/conf/BERI_TEMPLATE user/alc/PQ_LAUNDRY/sys/mips/conf/ERL user/alc/PQ_LAUNDRY/sys/mips/conf/GXEMUL user/alc/PQ_LAUNDRY/sys/mips/conf/GXEMUL32 user/alc/PQ_LAUNDRY/sys/mips/conf/IDT user/alc/PQ_LAUNDRY/sys/mips/conf/MT7620 user/alc/PQ_LAUNDRY/sys/mips/conf/OCTEON1 user/alc/PQ_LAUNDRY/sys/mips/conf/PB92 user/alc/PQ_LAUNDRY/sys/mips/conf/QCA953X_BASE user/alc/PQ_LAUNDRY/sys/mips/conf/QEMU user/alc/PQ_LAUNDRY/sys/mips/conf/RT305X user/alc/PQ_LAUNDRY/sys/mips/conf/RT5350 user/alc/PQ_LAUNDRY/sys/mips/conf/SENTRY5 user/alc/PQ_LAUNDRY/sys/mips/conf/XLR user/alc/PQ_LAUNDRY/sys/mips/conf/XLR64 user/alc/PQ_LAUNDRY/sys/mips/conf/XLRN32 user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR5312 user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR5315 user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR91XX user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR933X user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR934X user/alc/PQ_LAUNDRY/sys/mips/conf/std.MALTA user/alc/PQ_LAUNDRY/sys/mips/conf/std.QCA955X user/alc/PQ_LAUNDRY/sys/mips/conf/std.SWARM user/alc/PQ_LAUNDRY/sys/mips/conf/std.XLP user/alc/PQ_LAUNDRY/sys/mips/mips/nexus.c user/alc/PQ_LAUNDRY/sys/modules/bwn/Makefile user/alc/PQ_LAUNDRY/sys/modules/cc/Makefile user/alc/PQ_LAUNDRY/sys/modules/efirt/Makefile user/alc/PQ_LAUNDRY/sys/modules/khelp/Makefile user/alc/PQ_LAUNDRY/sys/modules/netmap/Makefile user/alc/PQ_LAUNDRY/sys/net/if.c user/alc/PQ_LAUNDRY/sys/net/if_llatbl.c user/alc/PQ_LAUNDRY/sys/net/if_llatbl.h user/alc/PQ_LAUNDRY/sys/net/netmap.h user/alc/PQ_LAUNDRY/sys/net/netmap_user.h user/alc/PQ_LAUNDRY/sys/net80211/ieee80211.h user/alc/PQ_LAUNDRY/sys/net80211/ieee80211_freebsd.h user/alc/PQ_LAUNDRY/sys/net80211/ieee80211_ht.c user/alc/PQ_LAUNDRY/sys/net80211/ieee80211_input.c user/alc/PQ_LAUNDRY/sys/net80211/ieee80211_proto.h user/alc/PQ_LAUNDRY/sys/netinet/in_pcb.c user/alc/PQ_LAUNDRY/sys/netinet/ip_output.c user/alc/PQ_LAUNDRY/sys/netinet/sctp_pcb.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_input.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_output.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_stacks/fastpath.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_subr.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_syncache.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_timer.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_usrreq.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_var.h user/alc/PQ_LAUNDRY/sys/netinet6/ip6_output.c user/alc/PQ_LAUNDRY/sys/netpfil/pf/pf.c user/alc/PQ_LAUNDRY/sys/netpfil/pf/pf_norm.c user/alc/PQ_LAUNDRY/sys/pc98/conf/GENERIC user/alc/PQ_LAUNDRY/sys/powerpc/conf/GENERIC user/alc/PQ_LAUNDRY/sys/powerpc/conf/GENERIC64 user/alc/PQ_LAUNDRY/sys/powerpc/conf/MPC85XX user/alc/PQ_LAUNDRY/sys/powerpc/powerpc/machdep.c user/alc/PQ_LAUNDRY/sys/powerpc/powerpc/mem.c user/alc/PQ_LAUNDRY/sys/riscv/conf/GENERIC user/alc/PQ_LAUNDRY/sys/sparc64/conf/GENERIC user/alc/PQ_LAUNDRY/sys/sys/linker.h user/alc/PQ_LAUNDRY/sys/sys/mbuf.h user/alc/PQ_LAUNDRY/sys/sys/param.h user/alc/PQ_LAUNDRY/sys/vm/vm_fault.c user/alc/PQ_LAUNDRY/sys/vm/vm_object.c user/alc/PQ_LAUNDRY/sys/vm/vm_page.c user/alc/PQ_LAUNDRY/sys/vm/vm_page.h user/alc/PQ_LAUNDRY/sys/x86/x86/io_apic.c user/alc/PQ_LAUNDRY/targets/pseudo/userland/misc/Makefile.depend user/alc/PQ_LAUNDRY/tools/build/mk/OptionalObsoleteFiles.inc user/alc/PQ_LAUNDRY/tools/tools/netmap/Makefile user/alc/PQ_LAUNDRY/tools/tools/netmap/bridge.c user/alc/PQ_LAUNDRY/tools/tools/netmap/pkt-gen.c user/alc/PQ_LAUNDRY/tools/tools/netmap/vale-ctl.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/Makefile user/alc/PQ_LAUNDRY/usr.bin/mkimg/apm.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/bsd.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/ebr.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/gpt.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/mbr.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/pc98.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/vtoc8.c user/alc/PQ_LAUNDRY/usr.bin/sdiff/Makefile user/alc/PQ_LAUNDRY/usr.bin/sdiff/edit.c user/alc/PQ_LAUNDRY/usr.bin/sdiff/sdiff.c user/alc/PQ_LAUNDRY/usr.bin/truss/syscalls.c user/alc/PQ_LAUNDRY/usr.sbin/Makefile user/alc/PQ_LAUNDRY/usr.sbin/bsdconfig/share/sysrc.subr user/alc/PQ_LAUNDRY/usr.sbin/ctladm/ctladm.8 user/alc/PQ_LAUNDRY/usr.sbin/freebsd-update/freebsd-update.sh user/alc/PQ_LAUNDRY/usr.sbin/pmcstat/pmcstat_log.h Directory Properties: user/alc/PQ_LAUNDRY/ (props changed) user/alc/PQ_LAUNDRY/cddl/ (props changed) user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/ (props changed) user/alc/PQ_LAUNDRY/contrib/libarchive/ (props changed) user/alc/PQ_LAUNDRY/contrib/netbsd-tests/ (props changed) user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/ (props changed) user/alc/PQ_LAUNDRY/sys/contrib/octeon-sdk/ (props changed) Modified: user/alc/PQ_LAUNDRY/ObsoleteFiles.inc ============================================================================== --- user/alc/PQ_LAUNDRY/ObsoleteFiles.inc Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/ObsoleteFiles.inc Mon Oct 17 07:25:46 2016 (r307489) @@ -38,6 +38,30 @@ # xargs -n1 | sort | uniq -d; # done +# 20161015: Remove GNU rcs +OLD_FILES+=usr/bin/ci +OLD_FILES+=usr/bin/co +OLD_FILES+=usr/bin/merge +OLD_FILES+=usr/bin/rcs +OLD_FILES+=usr/bin/rcsclean +OLD_FILES+=usr/bin/rcsdiff +OLD_FILES+=usr/bin/rcsfreeze +OLD_FILES+=usr/bin/rcsmerge +OLD_FILES+=usr/bin/rlog +OLD_FILES+=usr/share/doc/psd/13.rcs/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/13.rcs/rcs_func.ascii.gz +OLD_DIRS+=usr/share/doc/psd/13.rcs +OLD_FILES+=usr/share/man/man1/ci.1.gz +OLD_FILES+=usr/share/man/man1/co.1.gz +OLD_FILES+=usr/share/man/man1/merge.1.gz +OLD_FILES+=usr/share/man/man1/rcs.1.gz +OLD_FILES+=usr/share/man/man1/rcsclean.1.gz +OLD_FILES+=usr/share/man/man1/rcsdiff.1.gz +OLD_FILES+=usr/share/man/man1/rcsfreeze.1.gz +OLD_FILES+=usr/share/man/man1/rcsintro.1.gz +OLD_FILES+=usr/share/man/man1/rcsmerge.1.gz +OLD_FILES+=usr/share/man/man1/rlog.1.gz +OLD_FILES+=usr/share/man/man5/rcsfile.5.gz # 20161010: remove link to removed m_getclr(9) macro OLD_FILES+=usr/share/man/man9/m_getclr.9.gz # 20161003: MK_ELFCOPY_AS_OBJCOPY option retired @@ -482,9 +506,6 @@ OLD_FILES+=usr/lib/clang/3.7.0/lib/freeb OLD_DIRS+=usr/lib/clang/3.7.0/lib/freebsd OLD_DIRS+=usr/lib/clang/3.7.0/lib OLD_DIRS+=usr/lib/clang/3.7.0 -# 20151201: mqueue tests 3 and 4 disabled -OLD_FILES+=usr/tests/sys/mqueue/mqtest3 -OLD_FILES+=usr/tests/sys/mqueue/mqtest4 # 20151130: libelf moved from /usr/lib to /lib (libkvm dependency in r291406) OLD_LIBS+=usr/lib/libelf.so.2 # 20151115: Fox bad upgrade scheme Modified: user/alc/PQ_LAUNDRY/UPDATING ============================================================================== --- user/alc/PQ_LAUNDRY/UPDATING Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/UPDATING Mon Oct 17 07:25:46 2016 (r307489) @@ -31,6 +31,17 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20161015: + GNU rcs has been removed from base. It is available as packages: + - rcs: Latest GPLv3 GNU rcs version. + - rcs57: Copy of the latest version of GNU rcs (GPLv2) before it was + removed from base. + +20161008: + Use of the cc_cdg, cc_chd, cc_hd, or cc_vegas congestion control + modules now requires that the kernel configuration contain the + TCP_HHOOK option. (This option is included in the GENERIC kernel.) + 20161003: The WITHOUT_ELFCOPY_AS_OBJCOPY src.conf(5) knob has been retired. ELF Tool Chain's elfcopy is always installed as /usr/bin/objcopy. Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.args1.c ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.args1.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.args1.c Mon Oct 17 07:25:46 2016 (r307489) @@ -31,8 +31,8 @@ #include int -go(int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, - int arg7, int arg8, int arg9) +go(long arg0, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6, + long arg7, long arg8, long arg9) { return (arg1); } Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c Mon Oct 17 07:25:46 2016 (r307489) @@ -581,6 +581,7 @@ int dt_printf(dtrace_hdl_t *dtp, FILE *fp, const char *format, ...) { va_list ap; + va_list ap2; int n; #ifndef illumos @@ -605,11 +606,13 @@ dt_printf(dtrace_hdl_t *dtp, FILE *fp, c len = dtp->dt_sprintf_buflen - len; assert(len >= 0); - if ((n = vsnprintf(buf, len, format, ap)) < 0) + va_copy(ap2, ap); + if ((n = vsnprintf(buf, len, format, ap2)) < 0) n = dt_set_errno(dtp, errno); + va_end(ap2); va_end(ap); - + return (n); } @@ -640,11 +643,14 @@ dt_printf(dtrace_hdl_t *dtp, FILE *fp, c dtp->dt_buffered_buf[0] = '\0'; } - if ((needed = vsnprintf(NULL, 0, format, ap)) < 0) { + va_copy(ap2, ap); + if ((needed = vsnprintf(NULL, 0, format, ap2)) < 0) { rval = dt_set_errno(dtp, errno); + va_end(ap2); va_end(ap); return (rval); } + va_end(ap2); if (needed == 0) { va_end(ap); @@ -670,12 +676,15 @@ dt_printf(dtrace_hdl_t *dtp, FILE *fp, c dtp->dt_buffered_size <<= 1; } + va_copy(ap2, ap); if (vsnprintf(&dtp->dt_buffered_buf[dtp->dt_buffered_offs], - avail, format, ap) < 0) { + avail, format, ap2) < 0) { rval = dt_set_errno(dtp, errno); + va_end(ap2); va_end(ap); return (rval); } + va_end(ap2); dtp->dt_buffered_offs += needed; assert(dtp->dt_buffered_buf[dtp->dt_buffered_offs] == '\0'); @@ -683,8 +692,10 @@ dt_printf(dtrace_hdl_t *dtp, FILE *fp, c return (0); } - n = vfprintf(fp, format, ap); + va_copy(ap2, ap); + n = vfprintf(fp, format, ap2); fflush(fp); + va_end(ap2); va_end(ap); if (n < 0) { Modified: user/alc/PQ_LAUNDRY/cddl/usr.sbin/dtrace/tests/tools/exclude.sh ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/usr.sbin/dtrace/tests/tools/exclude.sh Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/cddl/usr.sbin/dtrace/tests/tools/exclude.sh Mon Oct 17 07:25:46 2016 (r307489) @@ -72,6 +72,7 @@ exclude EXFAIL common/mib/tst.udp.ksh exclude SKIP common/privs/tst.fds.ksh exclude SKIP common/privs/tst.func_access.ksh exclude SKIP common/privs/tst.getf.ksh +exclude SKIP common/privs/tst.kpriv.ksh exclude SKIP common/privs/tst.op_access.ksh exclude SKIP common/privs/tst.procpriv.ksh exclude SKIP common/privs/tst.providers.ksh Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/main.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/main.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/main.c Mon Oct 17 07:25:46 2016 (r307489) @@ -130,6 +130,13 @@ __FBSDID("$FreeBSD$"); # include #endif +mode_t umasked(mode_t expected_mode) +{ + mode_t mode = umask(0); + umask(mode); + return expected_mode & ~mode; +} + /* Path to working directory for current test */ const char *testworkdir; #ifdef PROGRAM @@ -1294,6 +1301,11 @@ assertion_file_time(const char *file, in switch (type) { case 'a': filet_nsec = st.st_atimespec.tv_nsec; break; case 'b': filet = st.st_birthtime; + /* FreeBSD filesystems that don't support birthtime + * (e.g., UFS1) always return -1 here. */ + if (filet == -1) { + return (1); + } filet_nsec = st.st_birthtimespec.tv_nsec; break; case 'm': filet_nsec = st.st_mtimespec.tv_nsec; break; default: fprintf(stderr, "INTERNAL: Bad type %c for file time", type); @@ -1425,7 +1437,7 @@ assertion_file_nlinks(const char *file, assertion_count(file, line); r = lstat(pathname, &st); if (r == 0 && (int)st.st_nlink == nlinks) - return (1); + return (1); failure_start(file, line, "File %s has %d links, expected %d", pathname, st.st_nlink, nlinks); failure_finish(NULL); @@ -1661,6 +1673,7 @@ assertion_make_file(const char *file, in if (0 != chmod(path, mode)) { failure_start(file, line, "Could not chmod %s", path); failure_finish(NULL); + close(fd); return (0); } if (contents != NULL) { @@ -1675,6 +1688,7 @@ assertion_make_file(const char *file, in failure_start(file, line, "Could not write to %s", path); failure_finish(NULL); + close(fd); return (0); } } Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/test.h ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/test.h Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/cpio/test/test.h Mon Oct 17 07:25:46 2016 (r307489) @@ -182,6 +182,8 @@ assertion_file_nlinks(__FILE__, __LINE__, pathname, nlinks) #define assertFileSize(pathname, size) \ assertion_file_size(__FILE__, __LINE__, pathname, size) +#define assertFileMode(pathname, mode) \ + assertion_file_mode(__FILE__, __LINE__, pathname, mode) #define assertTextFileContents(text, pathname) \ assertion_text_file_contents(__FILE__, __LINE__, text, pathname) #define assertFileContainsLinesAnyOrder(pathname, lines) \ @@ -327,6 +329,9 @@ void copy_reference_file(const char *); */ void extract_reference_files(const char **); +/* Subtract umask from mode */ +mode_t umasked(mode_t expected_mode); + /* Path to working directory for current test */ extern const char *testworkdir; Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c Mon Oct 17 07:25:46 2016 (r307489) @@ -627,7 +627,6 @@ translate_acl(struct archive_read_disk * archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, "Unknown ACL brand"); return (ARCHIVE_WARN); - break; } #endif Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c Mon Oct 17 07:25:46 2016 (r307489) @@ -232,6 +232,7 @@ static const char * lookup_uname_helper(struct name_cache *cache, id_t id) { struct passwd *result; + (void)cache; /* UNUSED */ result = getpwuid((uid_t)id); @@ -298,6 +299,7 @@ static const char * lookup_gname_helper(struct name_cache *cache, id_t id) { struct group *result; + (void)cache; /* UNUSED */ result = getgrgid((gid_t)id); Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/main.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/main.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/main.c Mon Oct 17 07:25:46 2016 (r307489) @@ -128,6 +128,13 @@ __FBSDID("$FreeBSD$"); # include #endif +mode_t umasked(mode_t expected_mode) +{ + mode_t mode = umask(0); + umask(mode); + return expected_mode & ~mode; +} + /* Path to working directory for current test */ const char *testworkdir; #ifdef PROGRAM @@ -1364,6 +1371,31 @@ assertion_file_birthtime_recent(const ch return assertion_file_time(file, line, pathname, 0, 0, 'b', 1); } +/* Verify mode of 'pathname'. */ +int +assertion_file_mode(const char *file, int line, const char *pathname, int expected_mode) +{ + int mode; + int r; + + assertion_count(file, line); +#if defined(_WIN32) && !defined(__CYGWIN__) + failure_start(file, line, "assertFileMode not yet implemented for Windows"); +#else + { + struct stat st; + r = lstat(pathname, &st); + mode = (int)(st.st_mode & 0777); + } + if (r == 0 && mode == expected_mode) + return (1); + failure_start(file, line, "File %s has mode %o, expected %o", + pathname, mode, expected_mode); +#endif + failure_finish(NULL); + return (0); +} + /* Verify mtime of 'pathname'. */ int assertion_file_mtime(const char *file, int line, @@ -1403,7 +1435,7 @@ assertion_file_nlinks(const char *file, assertion_count(file, line); r = lstat(pathname, &st); if (r == 0 && (int)st.st_nlink == nlinks) - return (1); + return (1); failure_start(file, line, "File %s has %d links, expected %d", pathname, st.st_nlink, nlinks); failure_finish(NULL); @@ -1440,31 +1472,6 @@ assertion_file_size(const char *file, in return (0); } -/* Verify mode of 'pathname'. */ -int -assertion_file_mode(const char *file, int line, const char *pathname, int expected_mode) -{ - int mode; - int r; - - assertion_count(file, line); -#if defined(_WIN32) && !defined(__CYGWIN__) - failure_start(file, line, "assertFileMode not yet implemented for Windows"); -#else - { - struct stat st; - r = lstat(pathname, &st); - mode = (int)(st.st_mode & 0777); - } - if (r == 0 && mode == expected_mode) - return (1); - failure_start(file, line, "File %s has mode %o, expected %o", - pathname, mode, expected_mode); -#endif - failure_finish(NULL); - return (0); -} - /* Assert that 'pathname' is a dir. If mode >= 0, verify that too. */ int assertion_is_dir(const char *file, int line, const char *pathname, int mode) @@ -1664,6 +1671,7 @@ assertion_make_file(const char *file, in if (0 != chmod(path, mode)) { failure_start(file, line, "Could not chmod %s", path); failure_finish(NULL); + close(fd); return (0); } if (contents != NULL) { @@ -1678,6 +1686,7 @@ assertion_make_file(const char *file, in failure_start(file, line, "Could not write to %s", path); failure_finish(NULL); + close(fd); return (0); } } Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test.h ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test.h Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test.h Mon Oct 17 07:25:46 2016 (r307489) @@ -243,12 +243,12 @@ int assertion_file_birthtime_recent(cons int assertion_file_contains_lines_any_order(const char *, int, const char *, const char **); int assertion_file_contents(const char *, int, const void *, int, const char *); int assertion_file_exists(const char *, int, const char *); +int assertion_file_mode(const char *, int, const char *, int); int assertion_file_mtime(const char *, int, const char *, long, long); int assertion_file_mtime_recent(const char *, int, const char *); int assertion_file_nlinks(const char *, int, const char *, int); int assertion_file_not_exists(const char *, int, const char *); int assertion_file_size(const char *, int, const char *, long); -int assertion_file_mode(const char *, int, const char *, int); int assertion_is_dir(const char *, int, const char *, int); int assertion_is_hardlink(const char *, int, const char *, const char *); int assertion_is_not_hardlink(const char *, int, const char *, const char *); @@ -329,6 +329,9 @@ void copy_reference_file(const char *); */ void extract_reference_files(const char **); +/* Subtract umask from mode */ +mode_t umasked(mode_t expected_mode); + /* Path to working directory for current test */ extern const char *testworkdir; Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test_read_set_format.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test_read_set_format.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/libarchive/test/test_read_set_format.c Mon Oct 17 07:25:46 2016 (r307489) @@ -200,6 +200,8 @@ DEFINE_TEST(test_read_append_filter_wron { struct archive_entry *ae; struct archive *a; + int fd; + fpos_t pos; /* * If we have "bunzip2 -q", try using that. @@ -208,6 +210,13 @@ DEFINE_TEST(test_read_append_filter_wron skipping("Can't run bunzip2 program on this platform"); return; } + + /* bunzip2 will write to stderr, redirect it to a file */ + fflush(stderr); + fgetpos(stderr, &pos); + fd = dup(fileno(stderr)); + freopen("stderr1", "w", stderr); + assert((a = archive_read_new()) != NULL); assertA(0 == archive_read_set_format(a, ARCHIVE_FORMAT_TAR)); assertEqualIntA(a, ARCHIVE_OK, @@ -217,4 +226,13 @@ DEFINE_TEST(test_read_append_filter_wron assertA(archive_read_next_header(a, &ae) < (ARCHIVE_WARN)); assertEqualIntA(a, ARCHIVE_WARN, archive_read_close(a)); assertEqualInt(ARCHIVE_OK, archive_read_free(a)); + + /* restore stderr */ + fflush(stderr); + dup2(fd, fileno(stderr)); + close(fd); + clearerr(stderr); + fsetpos(stderr, &pos); + + assertTextFileContents("bunzip2: (stdin) is not a bzip2 file.\n", "stderr1"); } Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/main.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/main.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/main.c Mon Oct 17 07:25:46 2016 (r307489) @@ -1164,6 +1164,35 @@ assertion_file_contains_lines_any_order( return (0); } +/* Verify that a text file does not contains the specified strings */ +int +assertion_file_contains_no_invalid_strings(const char *file, int line, + const char *pathname, const char *strings[]) +{ + char *buff; + int i; + + buff = slurpfile(NULL, "%s", pathname); + if (buff == NULL) { + failure_start(file, line, "Can't read file: %s", pathname); + failure_finish(NULL); + return (0); + } + + for (i = 0; strings[i] != NULL; ++i) { + if (strstr(buff, strings[i]) != NULL) { + failure_start(file, line, "Invalid string in %s: %s", pathname, + strings[i]); + failure_finish(NULL); + free(buff); + return(0); + } + } + + free(buff); + return (0); +} + /* Test that two paths point to the same file. */ /* As a side-effect, asserts that both files exist. */ static int @@ -1301,6 +1330,11 @@ assertion_file_time(const char *file, in switch (type) { case 'a': filet_nsec = st.st_atimespec.tv_nsec; break; case 'b': filet = st.st_birthtime; + /* FreeBSD filesystems that don't support birthtime + * (e.g., UFS1) always return -1 here. */ + if (filet == -1) { + return (1); + } filet_nsec = st.st_birthtimespec.tv_nsec; break; case 'm': filet_nsec = st.st_mtimespec.tv_nsec; break; default: fprintf(stderr, "INTERNAL: Bad type %c for file time", type); @@ -1432,7 +1466,7 @@ assertion_file_nlinks(const char *file, assertion_count(file, line); r = lstat(pathname, &st); if (r == 0 && (int)st.st_nlink == nlinks) - return (1); + return (1); failure_start(file, line, "File %s has %d links, expected %d", pathname, st.st_nlink, nlinks); failure_finish(NULL); @@ -1668,6 +1702,7 @@ assertion_make_file(const char *file, in if (0 != chmod(path, mode)) { failure_start(file, line, "Could not chmod %s", path); failure_finish(NULL); + close(fd); return (0); } if (contents != NULL) { @@ -1682,6 +1717,7 @@ assertion_make_file(const char *file, in failure_start(file, line, "Could not write to %s", path); failure_finish(NULL); + close(fd); return (0); } } Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test.h ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test.h Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test.h Mon Oct 17 07:25:46 2016 (r307489) @@ -174,6 +174,9 @@ /* Assert that file contents match a string. */ #define assertFileContents(data, data_size, pathname) \ assertion_file_contents(__FILE__, __LINE__, data, data_size, pathname) +/* Verify that a file does not contain invalid strings */ +#define assertFileContainsNoInvalidStrings(pathname, strings) \ + assertion_file_contains_no_invalid_strings(__FILE__, __LINE__, pathname, strings) #define assertFileMtime(pathname, sec, nsec) \ assertion_file_mtime(__FILE__, __LINE__, pathname, sec, nsec) #define assertFileMtimeRecent(pathname) \ @@ -182,6 +185,8 @@ assertion_file_nlinks(__FILE__, __LINE__, pathname, nlinks) #define assertFileSize(pathname, size) \ assertion_file_size(__FILE__, __LINE__, pathname, size) +#define assertFileMode(pathname, mode) \ + assertion_file_mode(__FILE__, __LINE__, pathname, mode) #define assertTextFileContents(text, pathname) \ assertion_text_file_contents(__FILE__, __LINE__, text, pathname) #define assertFileContainsLinesAnyOrder(pathname, lines) \ @@ -239,6 +244,7 @@ int assertion_file_atime_recent(const ch int assertion_file_birthtime(const char *, int, const char *, long, long); int assertion_file_birthtime_recent(const char *, int, const char *); int assertion_file_contains_lines_any_order(const char *, int, const char *, const char **); +int assertion_file_contains_no_invalid_strings(const char *, int, const char *, const char **); int assertion_file_contents(const char *, int, const void *, int, const char *); int assertion_file_exists(const char *, int, const char *); int assertion_file_mode(const char *, int, const char *, int); Modified: user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test_missing_file.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test_missing_file.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/libarchive/tar/test/test_missing_file.c Mon Oct 17 07:25:46 2016 (r307489) @@ -27,11 +27,15 @@ __FBSDID("$FreeBSD$"); DEFINE_TEST(test_missing_file) { + const char * invalid_stderr[] = { "INTERNAL ERROR", NULL }; assertMakeFile("file1", 0644, "file1"); assertMakeFile("file2", 0644, "file2"); assert(0 == systemf("%s -cf archive.tar file1 file2 2>stderr1", testprog)); assertEmptyFile("stderr1"); assert(0 != systemf("%s -cf archive.tar file1 file2 file3 2>stderr2", testprog)); + assertFileContainsNoInvalidStrings("stderr2", invalid_stderr); assert(0 != systemf("%s -cf archive.tar 2>stderr3", testprog)); - assert(0 != systemf("%s -cf archive.tar file3 2>stderr4", testprog)); + assertFileContainsNoInvalidStrings("stderr3", invalid_stderr); + assert(0 != systemf("%s -cf archive.tar file3 file4 2>stderr4", testprog)); + assertFileContainsNoInvalidStrings("stderr4", invalid_stderr); } Modified: user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/h_tools.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/h_tools.c Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/h_tools.c Mon Oct 17 07:25:46 2016 (r307489) @@ -50,6 +50,10 @@ #include #include +#ifdef __FreeBSD__ +#include +#endif + /* --------------------------------------------------------------------- */ static int getfh_main(int, char **); @@ -70,7 +74,12 @@ getfh_main(int argc, char **argv) if (argc < 2) return EXIT_FAILURE; +#ifdef __FreeBSD__ + fh_size = sizeof(fhandle_t); +#else fh_size = 0; +#endif + fh = NULL; for (;;) { if (fh_size) { @@ -85,7 +94,11 @@ getfh_main(int argc, char **argv) * but it may change if someone moves things around, * so retry untill we have enough memory. */ +#ifdef __FreeBSD__ + error = getfh(argv[1], fh); +#else error = getfh(argv[1], fh, &fh_size); +#endif if (error == 0) { break; } else { Modified: user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_mount.sh ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_mount.sh Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_mount.sh Mon Oct 17 07:25:46 2016 (r307489) @@ -93,7 +93,18 @@ negative_body() { test_unmount } +# Begin FreeBSD +if true; then +atf_test_case large cleanup +large_cleanup() { + umount -f tmp 2>/dev/null +} +else +# End FreeBSD atf_test_case large +# Begin FreeBSD +fi +# End FreeBSD large_head() { atf_set "descr" "Tests that extremely long values passed to -s" \ "are handled correctly" @@ -103,6 +114,10 @@ large_body() { test_mount -o -s9223372036854775807 test_unmount + # Begin FreeBSD + atf_expect_fail "-o -s succeeds unexpectedly on FreeBSD - bug 212862" + # End FreeBSD + mkdir tmp atf_check -s eq:1 -o empty -e ignore \ mount -t tmpfs -o -s9223372036854775808 tmpfs tmp Modified: user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_remove.sh ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_remove.sh Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_remove.sh Mon Oct 17 07:25:46 2016 (r307489) @@ -46,13 +46,28 @@ single_body() { test_unmount } +# Begin FreeBSD +if true; then +atf_test_case uchg cleanup +uchg_cleanup() { + Mount_Point=$(pwd)/mntpt test_unmount || : +} +else +# End FreeBSD atf_test_case uchg +# Begin FreeBSD +fi +# End FreeBSD uchg_head() { atf_set "descr" "Checks that files with the uchg flag set cannot" \ "be removed" atf_set "require.user" "root" } uchg_body() { + # Begin FreeBSD + atf_expect_fail "this fails on FreeBSD with root - bug 212861" + # End FreeBSD + test_mount atf_check -s eq:0 -o empty -e empty touch a Modified: user/alc/PQ_LAUNDRY/etc/defaults/rc.conf ============================================================================== --- user/alc/PQ_LAUNDRY/etc/defaults/rc.conf Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/etc/defaults/rc.conf Mon Oct 17 07:25:46 2016 (r307489) @@ -695,6 +695,7 @@ iovctl_files="" # Config files for iovc ### Jail Configuration (see rc.conf(5) manual page) ########## ############################################################## jail_enable="NO" # Set to NO to disable starting of any jails +jail_confwarn="YES" # Prevent warning about obsolete per-jail configuration jail_parallel_start="NO" # Start jails in the background jail_list="" # Space separated list of names of jails jail_reverse_stop="NO" # Stop jails in reverse order Modified: user/alc/PQ_LAUNDRY/etc/mtree/BSD.usr.dist ============================================================================== --- user/alc/PQ_LAUNDRY/etc/mtree/BSD.usr.dist Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/etc/mtree/BSD.usr.dist Mon Oct 17 07:25:46 2016 (r307489) @@ -228,8 +228,6 @@ .. 12.make .. - 13.rcs - .. 15.yacc .. 16.lex Modified: user/alc/PQ_LAUNDRY/etc/rc ============================================================================== --- user/alc/PQ_LAUNDRY/etc/rc Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/etc/rc Mon Oct 17 07:25:46 2016 (r307489) @@ -135,16 +135,16 @@ done # Note: this assumes firstboot_sentinel is on / when we have # a read-only /, or that it is on media that's writable. if [ -e ${firstboot_sentinel} ]; then - [ ${root_rw_mount} = "yes" ] || mount -uw / + [ ${root_rw_mount#[Yy][Ee][Ss]} = "" ] || mount -uw / chflags -R 0 ${firstboot_sentinel} rm -rf ${firstboot_sentinel} if [ -e ${firstboot_sentinel}-reboot ]; then chflags -R 0 ${firstboot_sentinel}-reboot rm -rf ${firstboot_sentinel}-reboot - [ ${root_rw_mount} = "yes" ] || mount -ur / + [ ${root_rw_mount#[Yy][Ee][Ss]} = "" ] || mount -ur / kill -INT 1 fi - [ ${root_rw_mount} = "yes" ] || mount -ur / + [ ${root_rw_mount#[Yy][Ee][Ss]} = "" ] || mount -ur / fi echo '' Modified: user/alc/PQ_LAUNDRY/etc/rc.d/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/etc/rc.d/Makefile Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/etc/rc.d/Makefile Mon Oct 17 07:25:46 2016 (r307489) @@ -314,6 +314,7 @@ FILES+= wpa_supplicant .if ${MK_ZFS} != "no" FILESGROUPS+= ZFS ZFS+= zfs +ZFS+= zfsbe ZFS+= zfsd ZFS+= zvol ZFSPACKAGE= zfs Modified: user/alc/PQ_LAUNDRY/etc/rc.d/jail ============================================================================== --- user/alc/PQ_LAUNDRY/etc/rc.d/jail Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/etc/rc.d/jail Mon Oct 17 07:25:46 2016 (r307489) @@ -147,7 +147,8 @@ parse_options() # # To relieve confusion, show a warning message. # - _confwarn=1 + : ${jail_confwarn:=YES} + checkyesno jail_confwarn && _confwarn=1 if [ -r "$jail_conf" -o -r "$_jconf" ]; then if ! checkyesno jail_parallel_start; then warn "$_conf is created and used for jail $_j." Modified: user/alc/PQ_LAUNDRY/etc/rc.d/zfs ============================================================================== --- user/alc/PQ_LAUNDRY/etc/rc.d/zfs Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/etc/rc.d/zfs Mon Oct 17 07:25:46 2016 (r307489) @@ -4,7 +4,7 @@ # # PROVIDE: zfs -# REQUIRE: mountcritlocal +# REQUIRE: zfsbe # BEFORE: FILESYSTEMS var . /etc/rc.subr Copied: user/alc/PQ_LAUNDRY/etc/rc.d/zfsbe (from r307488, head/etc/rc.d/zfsbe) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/alc/PQ_LAUNDRY/etc/rc.d/zfsbe Mon Oct 17 07:25:46 2016 (r307489, copy of r307488, head/etc/rc.d/zfsbe) @@ -0,0 +1,71 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: zfsbe +# REQUIRE: mountcritlocal + +# Handle boot environment subordinate filesystems +# that may have canmount property set to noauto. +# For these filesystems mountpoint relative to / +# must be the same as their dataset name relative +# to BE root dataset. + +. /etc/rc.subr + +name="zfsbe" +rcvar="zfs_enable" +start_cmd="be_start" +stop_cmd="be_stop" +required_modules="zfs" + +mount_subordinate() +{ + local _be + + _be=$1 + zfs list -rH -o mountpoint,name,canmount,mounted -s mountpoint -t filesystem $_be | \ + while read _mp _name _canmount _mounted ; do + # skip filesystems that must not be mounted + [ "$_canmount" = "off" ] && continue + # skip filesystems that are already mounted + [ "$_mounted" = "yes" ] && continue + case "$_mp" in + "none" | "legacy" | "/" | "/$_be") + # do nothing for filesystems with unset or legacy mountpoint + # or those that would be mounted over / + ;; + "/$_be/"*) + # filesystems with mountpoint relative to BE + mount -t zfs $_name ${_mp#/$_be} + ;; + *) + # filesystems with mountpoint elsewhere + zfs mount $_name + ;; + esac + done +} + +be_start() +{ + if [ `$SYSCTL_N security.jail.jailed` -eq 1 ]; then + : + else + mount -p | while read _dev _mp _type _rest; do + [ $_mp = "/" ] || continue + if [ $_type = "zfs" ] ; then + mount_subordinate $_dev + fi + break + done + fi +} + +be_stop() +{ +} + +load_rc_config $name +run_rc_command "$1" Modified: user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile Mon Oct 17 07:25:46 2016 (r307489) @@ -11,7 +11,6 @@ SUBDIR= ${_binutils} \ ${_gperf} \ grep \ ${_groff} \ - ${_rcs} \ ${_tests} SUBDIR_DEPEND_gdb= ${_binutils} @@ -29,10 +28,6 @@ _groff= groff _dtc= dtc .endif -.if ${MK_RCS} != "no" -_rcs= rcs -.endif - .if ${MK_TESTS} != "no" _tests= tests .endif Modified: user/alc/PQ_LAUNDRY/gnu/usr.bin/groff/mdate.sh ============================================================================== --- user/alc/PQ_LAUNDRY/gnu/usr.bin/groff/mdate.sh Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/gnu/usr.bin/groff/mdate.sh Mon Oct 17 07:25:46 2016 (r307489) @@ -4,6 +4,5 @@ set -e test -r "$1" export LC_ALL=C -changelog_date=$(sed -E -n 's/^([0-9]{4}-[0-9]{2}-[0-9]{2}).*$/\1/p' "$1" |\ - head -n 1) +changelog_date=$(sed -E -n '1s/^([0-9]{4}-[0-9]{2}-[0-9]{2}).*$/\1/p' "$1") echo $(date -j -f %Y-%m-%d +"%e %B %Y" $changelog_date) Modified: user/alc/PQ_LAUNDRY/include/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/include/Makefile Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/include/Makefile Mon Oct 17 07:25:46 2016 (r307489) @@ -237,6 +237,17 @@ copies: .PHONY .META cd ${.CURDIR}/../sys/teken; \ ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 teken.h \ ${DESTDIR}${INCLUDEDIR}/teken +.if ${MK_CDDL} != "no" + cd ${.CURDIR}/../cddl/contrib/opensolaris/lib/libzfs_core/common; \ + ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 libzfs_core.h \ + ${DESTDIR}${INCLUDEDIR} + cd ${.CURDIR}/../cddl/contrib/opensolaris/lib/libnvpair; \ + ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 libnvpair.h \ + ${DESTDIR}${INCLUDEDIR} + cd ${.CURDIR}/../sys/cddl/contrib/opensolaris/uts/common/sys; \ + ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 nvpair.h \ + ${DESTDIR}${INCLUDEDIR}/sys +.endif symlinks: .PHONY .META @${ECHO} "Setting up symlinks to kernel source tree..." Modified: user/alc/PQ_LAUNDRY/include/search.h ============================================================================== --- user/alc/PQ_LAUNDRY/include/search.h Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/include/search.h Mon Oct 17 07:25:46 2016 (r307489) @@ -34,16 +34,18 @@ typedef enum { } VISIT; #ifdef _SEARCH_PRIVATE -typedef struct node { - void *key; - struct node *llink, *rlink; - signed char balance; -} node_t; +typedef struct __posix_tnode { + void *key; + struct __posix_tnode *llink, *rlink; + signed char balance; +} posix_tnode; struct que_elem { struct que_elem *next; struct que_elem *prev; }; +#else +typedef void posix_tnode; #endif #if __BSD_VISIBLE @@ -62,12 +64,15 @@ void *lfind(const void *, const void *, void *lsearch(const void *, void *, size_t *, size_t, int (*)(const void *, const void *)); void remque(void *); -void *tdelete(const void * __restrict, void ** __restrict, +void *tdelete(const void * __restrict, posix_tnode ** __restrict, int (*)(const void *, const void *)); -void *tfind(const void *, void * const *, +posix_tnode * + tfind(const void *, posix_tnode * const *, int (*)(const void *, const void *)); -void *tsearch(const void *, void **, int (*)(const void *, const void *)); -void twalk(const void *, void (*)(const void *, VISIT, int)); +posix_tnode * + tsearch(const void *, posix_tnode **, + int (*)(const void *, const void *)); +void twalk(const posix_tnode *, void (*)(const posix_tnode *, VISIT, int)); #if __BSD_VISIBLE int hcreate_r(size_t, struct hsearch_data *); Modified: user/alc/PQ_LAUNDRY/lib/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/lib/Makefile Mon Oct 17 07:23:07 2016 (r307488) +++ user/alc/PQ_LAUNDRY/lib/Makefile Mon Oct 17 07:25:46 2016 (r307489) @@ -26,114 +26,76 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ .WAIT \ libalias \ libarchive \ - ${_libatm} \ libauditd \ libbegemot \ - ${_libblacklist} \ libblocksruntime \ - ${_libbluetooth} \ - ${_libbsnmp} \ libbsdstat \ libbsm \ libbz2 \ libcalendar \ libcam \ libcapsicum \ - ${_libcasper} \ - ${_libcom_err} \ libcompat \ libcrypt \ libdevctl \ - ${_libdevdctl} \ libdevinfo \ libdevstat \ libdwarf \ libedit \ - ${_libelftc} \ libevent \ libexecinfo \ libexpat \ libfetch \ libfigpar \ libgeom \ - ${_libgpio} \ - ${_libgssapi} \ - ${_librpcsec_gss} \ - ${_libiconv_modules} \ libifconfig \ libipsec \ libjail \ libkiconv \ libkvm \ - ${_libldns} \ liblzma \ - ${_libmagic} \ libmemstat \ libmd \ - ${_libmilter} \ - ${_libmp} \ libmt \ - ${_libnandfs} \ lib80211 \ libnetbsd \ - ${_libnetgraph} \ - ${_libngatm} \ libnv \ libopenbsd \ libopie \ libpam \ libpcap \ - ${_libpe} \ libpjdlog \ - ${_libpmc} \ ${_libproc} \ libprocstat \ - ${_libradius} \ librpcsvc \ librss \ librt \ ${_librtld_db} \ libsbuf \ - ${_libsdp} \ - ${_libsm} \ libsmb \ - ${_libsmdb} \ - ${_libsmutil} \ libsqlite3 \ libstand \ libstdbuf \ libstdthreads \ libsysdecode \ libtacplus \ - ${_libtelnet} \ - ${_libthr} \ libthread_db \ libucl \ libufs \ libugidfw \ libulog \ - ${_libunbound} \ - ${_libusbhid} \ - ${_libusb} \ libutil \ ${_libvgl} \ - ${_libvmmapi} \ libwrap \ libxo \ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@freebsd.org Wed Oct 19 11:21:25 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 22482C18925 for ; Wed, 19 Oct 2016 11:21:25 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 D22D97B6; Wed, 19 Oct 2016 11:21:24 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9JBLNvs006607; Wed, 19 Oct 2016 11:21:23 GMT (envelope-from pho@FreeBSD.org) Received: (from pho@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9JBLNUl006605; Wed, 19 Oct 2016 11:21:23 GMT (envelope-from pho@FreeBSD.org) Message-Id: <201610191121.u9JBLNUl006605@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pho set sender to pho@FreeBSD.org using -f From: Peter Holm Date: Wed, 19 Oct 2016 11:21:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307627 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Oct 2016 11:21:25 -0000 Author: pho Date: Wed Oct 19 11:21:23 2016 New Revision: 307627 URL: https://svnweb.freebsd.org/changeset/base/307627 Log: Added regression tests. Sponsored by: Dell EMC Isilon Added: user/pho/stress2/misc/gnop2.sh (contents, props changed) user/pho/stress2/misc/gnop3.sh (contents, props changed) Added: user/pho/stress2/misc/gnop2.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/pho/stress2/misc/gnop2.sh Wed Oct 19 11:21:23 2016 (r307627) @@ -0,0 +1,81 @@ +#!/bin/sh + +# +# Copyright (c) 2016 Dell EMC +# 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$ +# + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +# "panic: vnode_pager_generic_getpages: sector size 8192 too large" seen +# with an 8k sector size: +# https://people.freebsd.org/~pho/stress/log/gnop2.txt +# Fixed by r307626 + +. ../default.cfg + +kldstat | grep -q geom_nop || { gnop load 2>/dev/null || exit 0 && + notloaded=1; } +dir=/tmp +odir=`pwd` +cd $dir +sed '1,/^EOF/d' < $odir/mmap5.sh > $dir/gnop2.c +mycc -o gnop2 -Wall -Wextra gnop2.c || exit 1 +rm -f gnop2.c +cd $odir + +test() { + . ../default.cfg + + mount | grep $mntpoint | grep -q /dev/md && umount -f $mntpoint + [ -c /dev/md$mdstart ] && mdconfig -d -u $mdstart + + mdconfig -a -t swap -s 2g -u $mdstart || exit 1 + gnop create -S $1 /dev/md$mdstart + newfs $newfs_flags /dev/md${mdstart}.nop > /dev/null + mount /dev/md${mdstart}.nop $mntpoint + chmod 777 $mntpoint + + dd if=/dev/zero of=$mntpoint/file bs=1k count=333 2>&1 | \ + egrep -v "records|transferred" + /tmp/gnop2 $mntpoint/file + + while mount | grep $mntpoint | grep -q /dev/md; do + umount $mntpoint || sleep 1 + done + gnop destroy /dev/md${mdstart}.nop + mdconfig -d -u $mdstart +} + +gnop status || exit + +for i in 1k 2k 4k 8k; do + test $i +done + +[ $notloaded ] && gnop unload +rm -f /tmp/gnop2 +exit 0 Added: user/pho/stress2/misc/gnop3.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/pho/stress2/misc/gnop3.sh Wed Oct 19 11:21:23 2016 (r307627) @@ -0,0 +1,69 @@ +#!/bin/sh + +# +# Copyright (c) 2016 Dell EMC +# 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$ +# + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +# A 8k sector size test. +# "panic: run 8 0xfffff80ff3d1e040 invalid" seen during fix development. + +. ../default.cfg + +[ $((`sysctl -n vm.swap_total` / 1024 / 1024 / 1024)) -lt 9 ] && exit 0 + +kldstat | grep -q geom_nop || { gnop load 2>/dev/null || exit 0 && + notloaded=1; } +gnop status || exit + +mount | grep $mntpoint | grep -q /dev/md && umount -f $mntpoint +[ -c /dev/md$mdstart ] && mdconfig -d -u $mdstart + +mdconfig -a -t swap -s 8g -u $mdstart || exit 1 +gnop create -S 8k /dev/md$mdstart +newfs $newfs_flags /dev/md${mdstart}.nop > /dev/null +mount /dev/md${mdstart}.nop $mntpoint +chmod 777 $mntpoint + +cp -a ../../stress2 $mntpoint +here=`pwd` +cd $mntpoint/stress2/misc + +export runRUNTIME=20m +export RUNDIR=$mntpoint/stressX + +su $testuser -c 'cd ..; ./run.sh marcus.cfg' + +cd $here +while mount | grep $mntpoint | grep -q /dev/md; do + umount $mntpoint || sleep 1 +done +gnop destroy /dev/md${mdstart}.nop +mdconfig -d -u $mdstart +[ $notloaded ] && gnop unload +exit 0 From owner-svn-src-user@freebsd.org Wed Oct 19 12:34:00 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 69D14C174DD for ; Wed, 19 Oct 2016 12:34:00 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 2F318319; Wed, 19 Oct 2016 12:34:00 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9JCXxJD036810; Wed, 19 Oct 2016 12:33:59 GMT (envelope-from pho@FreeBSD.org) Received: (from pho@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9JCXxF6036808; Wed, 19 Oct 2016 12:33:59 GMT (envelope-from pho@FreeBSD.org) Message-Id: <201610191233.u9JCXxF6036808@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pho set sender to pho@FreeBSD.org using -f From: Peter Holm Date: Wed, 19 Oct 2016 12:33:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307630 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Oct 2016 12:34:00 -0000 Author: pho Date: Wed Oct 19 12:33:58 2016 New Revision: 307630 URL: https://svnweb.freebsd.org/changeset/base/307630 Log: Added missing cleanup. Sponsored by: Dell EMC Isilon Modified: user/pho/stress2/misc/mmap24.sh user/pho/stress2/misc/mmap29.sh Modified: user/pho/stress2/misc/mmap24.sh ============================================================================== --- user/pho/stress2/misc/mmap24.sh Wed Oct 19 12:23:02 2016 (r307629) +++ user/pho/stress2/misc/mmap24.sh Wed Oct 19 12:33:58 2016 (r307630) @@ -63,6 +63,7 @@ wait while mount | grep "on $mntpoint " | grep -q /dev/md; do umount $mntpoint || sleep 1 done +mdconfig -d -u $mdstart rm -f /tmp/mmap24 exit Modified: user/pho/stress2/misc/mmap29.sh ============================================================================== --- user/pho/stress2/misc/mmap29.sh Wed Oct 19 12:23:02 2016 (r307629) +++ user/pho/stress2/misc/mmap29.sh Wed Oct 19 12:33:58 2016 (r307630) @@ -68,5 +68,6 @@ timeout 60 find / -xdev -print >/dev/nul while mount | grep "on $mntpoint " | grep -q /dev/md; do umount $mntpoint || sleep 1 done +mdconfig -d -u $mdstart rm mmap29 exit 0 From owner-svn-src-user@freebsd.org Wed Oct 19 22:19:39 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CF945C19F01 for ; Wed, 19 Oct 2016 22:19:39 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 7701DCD6; Wed, 19 Oct 2016 22:19:39 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9JMJc4r069988; Wed, 19 Oct 2016 22:19:38 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9JMJcWj069987; Wed, 19 Oct 2016 22:19:38 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201610192219.u9JMJcWj069987@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Wed, 19 Oct 2016 22:19:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307661 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Oct 2016 22:19:39 -0000 Author: alc Date: Wed Oct 19 22:19:38 2016 New Revision: 307661 URL: https://svnweb.freebsd.org/changeset/base/307661 Log: Always pause() for a short interval after sending a batch of dirty pages to secondary storage. Previously, another laundering run could start right after sending the batch, which is not what we intended. Use different wait messages when the laundry thread pauses versus sleeps. Reviewed by: markj Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Wed Oct 19 21:50:57 2016 (r307660) +++ user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Wed Oct 19 22:19:38 2016 (r307661) @@ -1214,7 +1214,7 @@ trybackground: } dolaundry: - if (launder > 0) + if (launder > 0) { /* * Because of I/O clustering, the number of laundered * pages could exceed "target" by the maximum size of @@ -1222,20 +1222,18 @@ dolaundry: */ target -= min(vm_pageout_launder(domain, launder, in_shortfall), target); + pause("laundp", hz / VM_LAUNDER_INTERVAL); + } /* - * Sleep for a little bit if we're in the middle of a laundering - * run or a pagedaemon thread has signalled us since the last run - * started. Otherwise, wait for a kick from the pagedaemon. + * If we're not currently laundering pages and the page daemon + * hasn't posted a new request, sleep until the page daemon + * kicks us. */ vm_pagequeue_lock(pq); - if (target > 0 || vm_laundry_request != VM_LAUNDRY_IDLE) { - vm_pagequeue_unlock(pq); - pause("laundr", hz / VM_LAUNDER_INTERVAL); - vm_pagequeue_lock(pq); - } else + if (target == 0 && vm_laundry_request == VM_LAUNDRY_IDLE) (void)mtx_sleep(&vm_laundry_request, - vm_pagequeue_lockptr(pq), PVM, "laundr", 0); + vm_pagequeue_lockptr(pq), PVM, "launds", 0); /* * If the pagedaemon has indicated that it's in shortfall, start From owner-svn-src-user@freebsd.org Thu Oct 20 18:38:39 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 522EAC19B51 for ; Thu, 20 Oct 2016 18:38:39 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 1A6C0F28; Thu, 20 Oct 2016 18:38:39 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9KIccGG035784; Thu, 20 Oct 2016 18:38:38 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9KIccmJ035781; Thu, 20 Oct 2016 18:38:38 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201610201838.u9KIccmJ035781@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Thu, 20 Oct 2016 18:38:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307682 - in user/cperciva/freebsd-update-build/patches: 10.3-RELEASE 11.0-RELEASE X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Oct 2016 18:38:39 -0000 Author: glebius Date: Thu Oct 20 18:38:37 2016 New Revision: 307682 URL: https://svnweb.freebsd.org/changeset/base/307682 Log: Add two upcoming errata notices and cleanup after SA-16:21 mispatch (r307329). Added: user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-SA-16:31.libarchive user/cperciva/freebsd-update-build/patches/11.0-RELEASE/2-EN-16:18.loader Added: user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm Thu Oct 20 18:38:37 2016 (r307682) @@ -0,0 +1,239 @@ +--- sys/kern/vfs_subr.c.orig ++++ sys/kern/vfs_subr.c +@@ -2934,7 +2934,13 @@ + TAILQ_EMPTY(&vp->v_bufobj.bo_clean.bv_hd) && + vp->v_bufobj.bo_clean.bv_cnt == 0, + ("vp %p bufobj not invalidated", vp)); +- vp->v_bufobj.bo_flag |= BO_DEAD; ++ ++ /* ++ * For VMIO bufobj, BO_DEAD is set in vm_object_terminate() ++ * after the object's page queue is flushed. ++ */ ++ if (vp->v_bufobj.bo_object == NULL) ++ vp->v_bufobj.bo_flag |= BO_DEAD; + BO_UNLOCK(&vp->v_bufobj); + + /* +--- sys/vm/vm_fault.c.orig ++++ sys/vm/vm_fault.c +@@ -286,7 +286,7 @@ + vm_prot_t prot; + long ahead, behind; + int alloc_req, era, faultcount, nera, reqpage, result; +- boolean_t growstack, is_first_object_locked, wired; ++ boolean_t dead, growstack, is_first_object_locked, wired; + int map_generation; + vm_object_t next_object; + vm_page_t marray[VM_FAULT_READ_MAX]; +@@ -423,11 +423,18 @@ + fs.pindex = fs.first_pindex; + while (TRUE) { + /* +- * If the object is dead, we stop here ++ * If the object is marked for imminent termination, ++ * we retry here, since the collapse pass has raced ++ * with us. Otherwise, if we see terminally dead ++ * object, return fail. + */ +- if (fs.object->flags & OBJ_DEAD) { ++ if ((fs.object->flags & OBJ_DEAD) != 0) { ++ dead = fs.object->type == OBJT_DEAD; + unlock_and_deallocate(&fs); +- return (KERN_PROTECTION_FAILURE); ++ if (dead) ++ return (KERN_PROTECTION_FAILURE); ++ pause("vmf_de", 1); ++ goto RetryFault; + } + + /* +--- sys/vm/vm_meter.c.orig ++++ sys/vm/vm_meter.c +@@ -93,30 +93,32 @@ + CTLFLAG_MPSAFE, NULL, 0, sysctl_vm_loadavg, "S,loadavg", + "Machine loadaverage history"); + ++/* ++ * This function aims to determine if the object is mapped, ++ * specifically, if it is referenced by a vm_map_entry. Because ++ * objects occasionally acquire transient references that do not ++ * represent a mapping, the method used here is inexact. However, it ++ * has very low overhead and is good enough for the advisory ++ * vm.vmtotal sysctl. ++ */ ++static bool ++is_object_active(vm_object_t obj) ++{ ++ ++ return (obj->ref_count > obj->shadow_count); ++} ++ + static int + vmtotal(SYSCTL_HANDLER_ARGS) + { +- struct proc *p; + struct vmtotal total; +- vm_map_entry_t entry; + vm_object_t object; +- vm_map_t map; +- int paging; ++ struct proc *p; + struct thread *td; +- struct vmspace *vm; + + bzero(&total, sizeof(total)); ++ + /* +- * Mark all objects as inactive. +- */ +- mtx_lock(&vm_object_list_mtx); +- TAILQ_FOREACH(object, &vm_object_list, object_list) { +- VM_OBJECT_WLOCK(object); +- vm_object_clear_flag(object, OBJ_ACTIVE); +- VM_OBJECT_WUNLOCK(object); +- } +- mtx_unlock(&vm_object_list_mtx); +- /* + * Calculate process statistics. + */ + sx_slock(&allproc_lock); +@@ -136,11 +138,15 @@ + case TDS_INHIBITED: + if (TD_IS_SWAPPED(td)) + total.t_sw++; +- else if (TD_IS_SLEEPING(td) && +- td->td_priority <= PZERO) +- total.t_dw++; +- else +- total.t_sl++; ++ else if (TD_IS_SLEEPING(td)) { ++ if (td->td_priority <= PZERO) ++ total.t_dw++; ++ else ++ total.t_sl++; ++ if (td->td_wchan == ++ &cnt.v_free_count) ++ total.t_pw++; ++ } + break; + + case TDS_CAN_RUN: +@@ -158,29 +164,6 @@ + } + } + PROC_UNLOCK(p); +- /* +- * Note active objects. +- */ +- paging = 0; +- vm = vmspace_acquire_ref(p); +- if (vm == NULL) +- continue; +- map = &vm->vm_map; +- vm_map_lock_read(map); +- for (entry = map->header.next; +- entry != &map->header; entry = entry->next) { +- if ((entry->eflags & MAP_ENTRY_IS_SUB_MAP) || +- (object = entry->object.vm_object) == NULL) +- continue; +- VM_OBJECT_WLOCK(object); +- vm_object_set_flag(object, OBJ_ACTIVE); +- paging |= object->paging_in_progress; +- VM_OBJECT_WUNLOCK(object); +- } +- vm_map_unlock_read(map); +- vmspace_free(vm); +- if (paging) +- total.t_pw++; + } + sx_sunlock(&allproc_lock); + /* +@@ -206,9 +189,18 @@ + */ + continue; + } ++ if (object->ref_count == 1 && ++ (object->flags & OBJ_NOSPLIT) != 0) { ++ /* ++ * Also skip otherwise unreferenced swap ++ * objects backing tmpfs vnodes, and POSIX or ++ * SysV shared memory. ++ */ ++ continue; ++ } + total.t_vm += object->size; + total.t_rm += object->resident_page_count; +- if (object->flags & OBJ_ACTIVE) { ++ if (is_object_active(object)) { + total.t_avm += object->size; + total.t_arm += object->resident_page_count; + } +@@ -216,7 +208,7 @@ + /* shared object */ + total.t_vmshr += object->size; + total.t_rmshr += object->resident_page_count; +- if (object->flags & OBJ_ACTIVE) { ++ if (is_object_active(object)) { + total.t_avmshr += object->size; + total.t_armshr += object->resident_page_count; + } +--- sys/vm/vm_object.c.orig ++++ sys/vm/vm_object.c +@@ -737,6 +737,10 @@ + + vinvalbuf(vp, V_SAVE, 0, 0); + ++ BO_LOCK(&vp->v_bufobj); ++ vp->v_bufobj.bo_flag |= BO_DEAD; ++ BO_UNLOCK(&vp->v_bufobj); ++ + VM_OBJECT_WLOCK(object); + } + +@@ -1722,6 +1726,9 @@ + * case. + */ + if (backing_object->ref_count == 1) { ++ vm_object_pip_add(object, 1); ++ vm_object_pip_add(backing_object, 1); ++ + /* + * If there is exactly one reference to the backing + * object, we can collapse it into the parent. +@@ -1793,11 +1800,13 @@ + KASSERT(backing_object->ref_count == 1, ( + "backing_object %p was somehow re-referenced during collapse!", + backing_object)); ++ vm_object_pip_wakeup(backing_object); + backing_object->type = OBJT_DEAD; + backing_object->ref_count = 0; + VM_OBJECT_WUNLOCK(backing_object); + vm_object_destroy(backing_object); + ++ vm_object_pip_wakeup(object); + object_collapses++; + } else { + vm_object_t new_backing_object; +@@ -2130,6 +2139,7 @@ + */ + if (!reserved && !swap_reserve_by_cred(ptoa(next_size), + prev_object->cred)) { ++ VM_OBJECT_WUNLOCK(prev_object); + return (FALSE); + } + prev_object->charge += ptoa(next_size); +--- sys/vm/vm_object.h.orig ++++ sys/vm/vm_object.h +@@ -181,7 +181,6 @@ + */ + #define OBJ_FICTITIOUS 0x0001 /* (c) contains fictitious pages */ + #define OBJ_UNMANAGED 0x0002 /* (c) contains unmanaged pages */ +-#define OBJ_ACTIVE 0x0004 /* active objects */ + #define OBJ_DEAD 0x0008 /* dead objects (during rundown) */ + #define OBJ_NOSPLIT 0x0010 /* dont split this object */ + #define OBJ_PIPWNT 0x0040 /* paging in progress wanted */ +--- ..orig ++++ . + Merged /head:r300758,300959,302063,302236,302317,302567,302580 + Merged /stable/10:r301184,301436,302243,302513,303291 Added: user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-SA-16:31.libarchive ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-SA-16:31.libarchive Thu Oct 20 18:38:37 2016 (r307682) @@ -0,0 +1,321 @@ +--- contrib/libarchive/libarchive/test/test_write_disk_secure744.c.orig ++++ contrib/libarchive/libarchive/test/test_write_disk_secure744.c +@@ -93,98 +93,3 @@ + free(buff); + #endif + } +-/*- +- * Copyright (c) 2003-2007,2016 Tim Kientzle +- * 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(S) ``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(S) 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 "test.h" +-__FBSDID("$FreeBSD$"); +- +-#define UMASK 022 +- +-/* +- * Github Issue #744 describes a bug in the sandboxing code that +- * causes very long pathnames to not get checked for symlinks. +- */ +- +-DEFINE_TEST(test_write_disk_secure744) +-{ +-#if defined(_WIN32) && !defined(__CYGWIN__) +- skipping("archive_write_disk security checks not supported on Windows"); +-#else +- struct archive *a; +- struct archive_entry *ae; +- size_t buff_size = 8192; +- char *buff = malloc(buff_size); +- char *p = buff; +- int n = 0; +- int t; +- +- assert(buff != NULL); +- +- /* Start with a known umask. */ +- assertUmask(UMASK); +- +- /* Create an archive_write_disk object. */ +- assert((a = archive_write_disk_new()) != NULL); +- archive_write_disk_set_options(a, ARCHIVE_EXTRACT_SECURE_SYMLINKS); +- +- while (p + 500 < buff + buff_size) { +- memset(p, 'x', 100); +- p += 100; +- p[0] = '\0'; +- +- buff[0] = ((n / 1000) % 10) + '0'; +- buff[1] = ((n / 100) % 10)+ '0'; +- buff[2] = ((n / 10) % 10)+ '0'; +- buff[3] = ((n / 1) % 10)+ '0'; +- buff[4] = '_'; +- ++n; +- +- /* Create a symlink pointing to the testworkdir */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, buff); +- archive_entry_set_mode(ae, S_IFREG | 0777); +- archive_entry_copy_symlink(ae, testworkdir); +- assertEqualIntA(a, ARCHIVE_OK, archive_write_header(a, ae)); +- archive_entry_free(ae); +- +- *p++ = '/'; +- sprintf(p, "target%d", n); +- +- /* Try to create a file through the symlink, should fail. */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, buff); +- archive_entry_set_mode(ae, S_IFDIR | 0777); +- +- t = archive_write_header(a, ae); +- archive_entry_free(ae); +- failure("Attempt to create target%d via %d-character symlink should have failed", n, (int)strlen(buff)); +- if(!assertEqualInt(ARCHIVE_FAILED, t)) { +- break; +- } +- } +- archive_free(a); +- free(buff); +-#endif +-} +--- contrib/libarchive/libarchive/test/test_write_disk_secure745.c.orig ++++ contrib/libarchive/libarchive/test/test_write_disk_secure745.c +@@ -77,82 +77,3 @@ + archive_write_free(a); + #endif + } +-/*- +- * Copyright (c) 2003-2007,2016 Tim Kientzle +- * 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(S) ``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(S) 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 "test.h" +-__FBSDID("$FreeBSD$"); +- +-#define UMASK 022 +- +-/* +- * Github Issue #745 describes a bug in the sandboxing code that +- * allows one to use a symlink to edit the permissions on a file or +- * directory outside of the sandbox. +- */ +- +-DEFINE_TEST(test_write_disk_secure745) +-{ +-#if defined(_WIN32) && !defined(__CYGWIN__) +- skipping("archive_write_disk security checks not supported on Windows"); +-#else +- struct archive *a; +- struct archive_entry *ae; +- +- /* Start with a known umask. */ +- assertUmask(UMASK); +- +- /* Create an archive_write_disk object. */ +- assert((a = archive_write_disk_new()) != NULL); +- archive_write_disk_set_options(a, ARCHIVE_EXTRACT_SECURE_SYMLINKS); +- +- /* The target dir: The one we're going to try to change permission on */ +- assertMakeDir("target", 0700); +- +- /* The sandbox dir we're going to run inside of. */ +- assertMakeDir("sandbox", 0700); +- assertChdir("sandbox"); +- +- /* Create a symlink pointing to the target directory */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, "sym"); +- archive_entry_set_mode(ae, AE_IFLNK | 0777); +- archive_entry_copy_symlink(ae, "../target"); +- assert(0 == archive_write_header(a, ae)); +- archive_entry_free(ae); +- +- /* Try to alter the target dir through the symlink; this should fail. */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, "sym"); +- archive_entry_set_mode(ae, S_IFDIR | 0777); +- assert(0 == archive_write_header(a, ae)); +- archive_entry_free(ae); +- +- /* Permission of target dir should not have changed. */ +- assertFileMode("../target", 0700); +- +- assert(0 == archive_write_close(a)); +- archive_write_free(a); +-#endif +-} +--- contrib/libarchive/libarchive/test/test_write_disk_secure746.c.orig ++++ contrib/libarchive/libarchive/test/test_write_disk_secure746.c +@@ -127,132 +127,3 @@ + archive_write_free(a); + #endif + } +-/*- +- * Copyright (c) 2003-2007,2016 Tim Kientzle +- * 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(S) ``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(S) 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 "test.h" +-__FBSDID("$FreeBSD$"); +- +-#define UMASK 022 +- +-/* +- * Github Issue #746 describes a problem in which hardlink targets are +- * not adequately checked and can be used to modify entries outside of +- * the sandbox. +- */ +- +-/* +- * Verify that ARCHIVE_EXTRACT_SECURE_NODOTDOT disallows '..' in hardlink +- * targets. +- */ +-DEFINE_TEST(test_write_disk_secure746a) +-{ +-#if defined(_WIN32) && !defined(__CYGWIN__) +- skipping("archive_write_disk security checks not supported on Windows"); +-#else +- struct archive *a; +- struct archive_entry *ae; +- +- /* Start with a known umask. */ +- assertUmask(UMASK); +- +- /* The target directory we're going to try to affect. */ +- assertMakeDir("target", 0700); +- assertMakeFile("target/foo", 0700, "unmodified"); +- +- /* The sandbox dir we're going to work within. */ +- assertMakeDir("sandbox", 0700); +- assertChdir("sandbox"); +- +- /* Create an archive_write_disk object. */ +- assert((a = archive_write_disk_new()) != NULL); +- archive_write_disk_set_options(a, ARCHIVE_EXTRACT_SECURE_NODOTDOT); +- +- /* Attempt to hardlink to the target directory. */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, "bar"); +- archive_entry_set_mode(ae, AE_IFREG | 0777); +- archive_entry_set_size(ae, 8); +- archive_entry_copy_hardlink(ae, "../target/foo"); +- assertEqualInt(ARCHIVE_FAILED, archive_write_header(a, ae)); +- assertEqualInt(ARCHIVE_FATAL, archive_write_data(a, "modified", 8)); +- archive_entry_free(ae); +- +- /* Verify that target file contents are unchanged. */ +- assertTextFileContents("unmodified", "../target/foo"); +-#endif +-} +- +-/* +- * Verify that ARCHIVE_EXTRACT_SECURE_NOSYMLINK disallows symlinks in hardlink +- * targets. +- */ +-DEFINE_TEST(test_write_disk_secure746b) +-{ +-#if defined(_WIN32) && !defined(__CYGWIN__) +- skipping("archive_write_disk security checks not supported on Windows"); +-#else +- struct archive *a; +- struct archive_entry *ae; +- +- /* Start with a known umask. */ +- assertUmask(UMASK); +- +- /* The target directory we're going to try to affect. */ +- assertMakeDir("target", 0700); +- assertMakeFile("target/foo", 0700, "unmodified"); +- +- /* The sandbox dir we're going to work within. */ +- assertMakeDir("sandbox", 0700); +- assertChdir("sandbox"); +- +- /* Create an archive_write_disk object. */ +- assert((a = archive_write_disk_new()) != NULL); +- archive_write_disk_set_options(a, ARCHIVE_EXTRACT_SECURE_SYMLINKS); +- +- /* Create a symlink to the target directory. */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, "symlink"); +- archive_entry_set_mode(ae, AE_IFLNK | 0777); +- archive_entry_copy_symlink(ae, "../target"); +- assertEqualIntA(a, ARCHIVE_OK, archive_write_header(a, ae)); +- archive_entry_free(ae); +- +- /* Attempt to hardlink to the target directory via the symlink. */ +- assert((ae = archive_entry_new()) != NULL); +- archive_entry_copy_pathname(ae, "bar"); +- archive_entry_set_mode(ae, AE_IFREG | 0777); +- archive_entry_set_size(ae, 8); +- archive_entry_copy_hardlink(ae, "symlink/foo"); +- assertEqualIntA(a, ARCHIVE_FAILED, archive_write_header(a, ae)); +- assertEqualIntA(a, ARCHIVE_FATAL, archive_write_data(a, "modified", 8)); +- archive_entry_free(ae); +- +- /* Verify that target file contents are unchanged. */ +- assertTextFileContents("unmodified", "../target/foo"); +- +- assertEqualIntA(a, ARCHIVE_FATAL, archive_write_close(a)); +- archive_write_free(a); +-#endif +-} Added: user/cperciva/freebsd-update-build/patches/11.0-RELEASE/2-EN-16:18.loader ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/11.0-RELEASE/2-EN-16:18.loader Thu Oct 20 18:38:37 2016 (r307682) @@ -0,0 +1,34 @@ +--- sys/boot/geli/geliboot.c.orig ++++ sys/boot/geli/geliboot.c +@@ -77,17 +77,25 @@ + int error; + off_t alignsector; + +- alignsector = (lastsector * DEV_BSIZE) & +- ~(off_t)(DEV_GELIBOOT_BSIZE - 1); ++ alignsector = rounddown2(lastsector * DEV_BSIZE, DEV_GELIBOOT_BSIZE); ++ if (alignsector + DEV_GELIBOOT_BSIZE > ((lastsector + 1) * DEV_BSIZE)) { ++ /* Don't read past the end of the disk */ ++ alignsector = (lastsector * DEV_BSIZE) + DEV_BSIZE ++ - DEV_GELIBOOT_BSIZE; ++ } + error = read_func(NULL, dskp, alignsector, &buf, DEV_GELIBOOT_BSIZE); + if (error != 0) { + return (error); + } +- /* Extract the last DEV_BSIZE bytes from the block. */ +- error = eli_metadata_decode(buf + (DEV_GELIBOOT_BSIZE - DEV_BSIZE), +- &md); ++ /* Extract the last 4k sector of the disk. */ ++ error = eli_metadata_decode(buf, &md); + if (error != 0) { +- return (error); ++ /* Try the last 512 byte sector instead. */ ++ error = eli_metadata_decode(buf + ++ (DEV_GELIBOOT_BSIZE - DEV_BSIZE), &md); ++ if (error != 0) { ++ return (error); ++ } + } + + if (!(md.md_flags & G_ELI_FLAG_GELIBOOT)) { From owner-svn-src-user@freebsd.org Fri Oct 21 16:42:41 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3837FC1C9D4 for ; Fri, 21 Oct 2016 16:42:41 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 F03B615D; Fri, 21 Oct 2016 16:42:40 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9LGge91071664; Fri, 21 Oct 2016 16:42:40 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9LGgeFf071663; Fri, 21 Oct 2016 16:42:40 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201610211642.u9LGgeFf071663@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Fri, 21 Oct 2016 16:42:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307738 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2016 16:42:41 -0000 Author: alc Date: Fri Oct 21 16:42:39 2016 New Revision: 307738 URL: https://svnweb.freebsd.org/changeset/base/307738 Log: Revise the comment describing swp_pager_force_pagein(). In particular, correctly explain why the page is immediately placed in the laundry. Requested by: kib Modified: user/alc/PQ_LAUNDRY/sys/vm/swap_pager.c Modified: user/alc/PQ_LAUNDRY/sys/vm/swap_pager.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/swap_pager.c Fri Oct 21 16:31:58 2016 (r307737) +++ user/alc/PQ_LAUNDRY/sys/vm/swap_pager.c Fri Oct 21 16:42:39 2016 (r307738) @@ -1636,12 +1636,15 @@ swap_pager_isswapped(vm_object_t object, /* * SWP_PAGER_FORCE_PAGEIN() - force a swap block to be paged in * - * This routine dissociates the page at the given index within a - * swap block from its backing store, paging it in if necessary. - * If the page is paged in, it is placed in the laundry queue, - * since it had its backing store ripped out from under it. - * We also attempt to swap in all other pages in the swap block, - * we only guarantee that the one at the specified index is + * This routine dissociates the page at the given index within an object + * from its backing store, paging it in if it does not reside in memory. + * If the page is paged in, it is marked dirty and placed in the laundry + * queue. The page is marked dirty because it no longer has backing + * store. It is placed in the laundry queue because it has not been + * accessed recently. Otherwise, it would already reside in memory. + * + * We also attempt to swap in all other pages in the swap block. + * However, we only guarantee that the one at the specified index is * paged in. * * XXX - The code to page the whole block in doesn't work, so we From owner-svn-src-user@freebsd.org Fri Oct 21 19:40:38 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ED57FC1C3A9 for ; Fri, 21 Oct 2016 19:40:38 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 BC6B664E; Fri, 21 Oct 2016 19:40:38 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9LJebEN036899; Fri, 21 Oct 2016 19:40:37 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9LJebIG036898; Fri, 21 Oct 2016 19:40:37 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201610211940.u9LJebIG036898@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 21 Oct 2016 19:40:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307750 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2016 19:40:39 -0000 Author: markj Date: Fri Oct 21 19:40:37 2016 New Revision: 307750 URL: https://svnweb.freebsd.org/changeset/base/307750 Log: Have madvise(MADV_DONTNEED) move dirty pages to the laundry queue. Previously we would always requeue such pages at the tail of the inactive queue, which would further delay reclamation of a page already in the laundry queue. Discussed with: alc Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_page.c Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_page.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/vm_page.c Fri Oct 21 19:23:51 2016 (r307749) +++ user/alc/PQ_LAUNDRY/sys/vm/vm_page.c Fri Oct 21 19:40:37 2016 (r307750) @@ -3310,11 +3310,13 @@ vm_page_advise(vm_page_t m, int advice) /* * Place clean pages near the head of the inactive queue rather than * the tail, thus defeating the queue's LRU operation and ensuring that - * the page will be reused quickly. Dirty pages are given a chance to - * cycle once through the inactive queue before becoming eligible for - * laundering. + * the page will be reused quickly. Dirty pages not already in the + * laundry are moved there. */ - _vm_page_deactivate(m, m->dirty == 0); + if (m->dirty == 0) + _vm_page_deactivate(m, TRUE); + else + vm_page_launder(m); } /* From owner-svn-src-user@freebsd.org Fri Oct 21 19:44:13 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD468C1C497 for ; Fri, 21 Oct 2016 19:44:13 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 565ADA0C; Fri, 21 Oct 2016 19:44:13 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9LJiCBg040394; Fri, 21 Oct 2016 19:44:12 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9LJiAm5040373; Fri, 21 Oct 2016 19:44:10 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201610211944.u9LJiAm5040373@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Fri, 21 Oct 2016 19:44:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307751 - in user/alc/PQ_LAUNDRY: . bin/pkill/tests contrib/mdocml contrib/netbsd-tests/fs/tmpfs contrib/netbsd-tests/lib/libpthread etc etc/devd etc/mtree gnu/lib gnu/usr.bin lib/libc/... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2016 19:44:13 -0000 Author: markj Date: Fri Oct 21 19:44:09 2016 New Revision: 307751 URL: https://svnweb.freebsd.org/changeset/base/307751 Log: MFH r307750 Added: user/alc/PQ_LAUNDRY/lib/libsysdecode/flags.c - copied unchanged from r307750, head/lib/libsysdecode/flags.c user/alc/PQ_LAUNDRY/lib/libsysdecode/mktables - copied unchanged from r307750, head/lib/libsysdecode/mktables user/alc/PQ_LAUNDRY/lib/libsysdecode/signal.c - copied unchanged from r307750, head/lib/libsysdecode/signal.c user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_cap_rights.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_cap_rights.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_enum.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_enum.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_fcntl_arg.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_fcntl_arg.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_mask.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_mask.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_quotactl_cmd.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_quotactl_cmd.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_sigcode.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_sigcode.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_sockopt_name.3 - copied unchanged from r307750, head/lib/libsysdecode/sysdecode_sockopt_name.3 user/alc/PQ_LAUNDRY/share/man/man4/rtwn_pci.4 - copied unchanged from r307750, head/share/man/man4/rtwn_pci.4 user/alc/PQ_LAUNDRY/share/man/man4/rtwn_usb.4 - copied unchanged from r307750, head/share/man/man4/rtwn_usb.4 user/alc/PQ_LAUNDRY/sys/arm/annapurna/alpine/alpine_pci_msix.c - copied unchanged from r307750, head/sys/arm/annapurna/alpine/alpine_pci_msix.c user/alc/PQ_LAUNDRY/sys/arm/annapurna/alpine/alpine_serdes.c - copied unchanged from r307750, head/sys/arm/annapurna/alpine/alpine_serdes.c user/alc/PQ_LAUNDRY/sys/arm/annapurna/alpine/alpine_serdes.h - copied unchanged from r307750, head/sys/arm/annapurna/alpine/alpine_serdes.h user/alc/PQ_LAUNDRY/sys/arm64/conf/GENERIC-UP - copied unchanged from r307750, head/sys/arm64/conf/GENERIC-UP user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8188eufw.fw.uu - copied unchanged from r307750, head/sys/contrib/dev/rtwn/rtwn-rtl8188eufw.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8192cfwE.fw.uu - copied unchanged from r307750, head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwE.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8192cfwE_B.fw.uu - copied unchanged from r307750, head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwE_B.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8192cfwT.fw.uu - copied unchanged from r307750, head/sys/contrib/dev/rtwn/rtwn-rtl8192cfwT.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8812aufw.fw.uu - copied unchanged from r307750, head/sys/contrib/dev/rtwn/rtwn-rtl8812aufw.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8821aufw.fw.uu - copied unchanged from r307750, head/sys/contrib/dev/rtwn/rtwn-rtl8821aufw.fw.uu user/alc/PQ_LAUNDRY/sys/dev/al_eth/ - copied from r307750, head/sys/dev/al_eth/ user/alc/PQ_LAUNDRY/sys/dev/dpaa/fman_mdio.c - copied unchanged from r307750, head/sys/dev/dpaa/fman_mdio.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_beacon.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_beacon.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_beacon.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_beacon.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_calib.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_calib.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_calib.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_calib.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_cam.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_cam.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_cam.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_cam.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_debug.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_debug.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_efuse.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_efuse.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_efuse.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_efuse.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_fw.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_fw.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_fw.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_fw.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_nop.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_nop.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_ridx.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_ridx.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_rx.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_rx.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_rx.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_rx.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_task.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_task.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_task.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_task.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_tx.c - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_tx.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn_tx.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwn_tx.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwnvar.h - copied unchanged from r307750, head/sys/dev/rtwn/if_rtwnvar.h user/alc/PQ_LAUNDRY/sys/dev/rtwn/pci/ - copied from r307750, head/sys/dev/rtwn/pci/ user/alc/PQ_LAUNDRY/sys/dev/rtwn/rtl8188e/ - copied from r307750, head/sys/dev/rtwn/rtl8188e/ user/alc/PQ_LAUNDRY/sys/dev/rtwn/rtl8192c/ - copied from r307750, head/sys/dev/rtwn/rtl8192c/ user/alc/PQ_LAUNDRY/sys/dev/rtwn/rtl8812a/ - copied from r307750, head/sys/dev/rtwn/rtl8812a/ user/alc/PQ_LAUNDRY/sys/dev/rtwn/rtl8821a/ - copied from r307750, head/sys/dev/rtwn/rtl8821a/ user/alc/PQ_LAUNDRY/sys/dev/rtwn/usb/ - copied from r307750, head/sys/dev/rtwn/usb/ user/alc/PQ_LAUNDRY/sys/modules/dtb/omap4/ - copied from r307750, head/sys/modules/dtb/omap4/ user/alc/PQ_LAUNDRY/sys/modules/rtwn_pci/ - copied from r307750, head/sys/modules/rtwn_pci/ user/alc/PQ_LAUNDRY/sys/modules/rtwn_usb/ - copied from r307750, head/sys/modules/rtwn_usb/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8188eu/ - copied from r307750, head/sys/modules/rtwnfw/rtwnrtl8188eu/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8192cE/ - copied from r307750, head/sys/modules/rtwnfw/rtwnrtl8192cE/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8192cEB/ - copied from r307750, head/sys/modules/rtwnfw/rtwnrtl8192cEB/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8192cT/ - copied from r307750, head/sys/modules/rtwnfw/rtwnrtl8192cT/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8812au/ - copied from r307750, head/sys/modules/rtwnfw/rtwnrtl8812au/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8821au/ - copied from r307750, head/sys/modules/rtwnfw/rtwnrtl8821au/ user/alc/PQ_LAUNDRY/tests/sys/fs/ - copied from r307750, head/tests/sys/fs/ user/alc/PQ_LAUNDRY/tests/sys/geom/class/uzip/1_endian_big.img.uzip.uue - copied unchanged from r307750, head/tests/sys/geom/class/uzip/1_endian_big.img.uzip.uue user/alc/PQ_LAUNDRY/tests/sys/geom/class/uzip/1_endian_little.img.uzip.uue - copied unchanged from r307750, head/tests/sys/geom/class/uzip/1_endian_little.img.uzip.uue user/alc/PQ_LAUNDRY/tools/build/options/WITHOUT_GNU_DIFF - copied unchanged from r307750, head/tools/build/options/WITHOUT_GNU_DIFF user/alc/PQ_LAUNDRY/tools/build/options/WITHOUT_GNU_GREP - copied unchanged from r307750, head/tools/build/options/WITHOUT_GNU_GREP user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0085.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0085.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0086.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0086.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0087.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0087.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0088.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0088.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0089.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0089.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0090.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0090.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0091.h - copied unchanged from r307750, head/tools/regression/bpf/bpf_filter/tests/test0091.h user/alc/PQ_LAUNDRY/tools/tools/git/ - copied from r307750, head/tools/tools/git/ user/alc/PQ_LAUNDRY/tools/tools/nanobsd/embedded/pandaboard.cfg - copied unchanged from r307750, head/tools/tools/nanobsd/embedded/pandaboard.cfg user/alc/PQ_LAUNDRY/tools/tools/nanobsd/embedded/rpi3.cfg - copied unchanged from r307750, head/tools/tools/nanobsd/embedded/rpi3.cfg user/alc/PQ_LAUNDRY/usr.bin/mkimg/uuid.c - copied unchanged from r307750, head/usr.bin/mkimg/uuid.c Deleted: user/alc/PQ_LAUNDRY/share/man/man4/urtwn.4 user/alc/PQ_LAUNDRY/share/man/man4/urtwnfw.4 user/alc/PQ_LAUNDRY/sys/arm64/conf/RPI3 user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8192cfwU_B.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/dev/urtwn/ user/alc/PQ_LAUNDRY/sys/dev/urtwn/ user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/rtwnrtl8192cUB/ user/alc/PQ_LAUNDRY/sys/modules/urtwn/ user/alc/PQ_LAUNDRY/sys/modules/urtwnfw/ user/alc/PQ_LAUNDRY/tests/sys/geom/class/uzip/test-1.img.uzip.uue user/alc/PQ_LAUNDRY/usr.bin/kdump/mksubr Modified: user/alc/PQ_LAUNDRY/Makefile.inc1 user/alc/PQ_LAUNDRY/ObsoleteFiles.inc user/alc/PQ_LAUNDRY/UPDATING user/alc/PQ_LAUNDRY/bin/pkill/tests/pgrep-j_test.sh user/alc/PQ_LAUNDRY/bin/pkill/tests/pkill-j_test.sh user/alc/PQ_LAUNDRY/contrib/mdocml/mandocdb.c user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_link.sh user/alc/PQ_LAUNDRY/contrib/netbsd-tests/lib/libpthread/t_swapcontext.c user/alc/PQ_LAUNDRY/etc/devd.conf user/alc/PQ_LAUNDRY/etc/devd/usb.conf user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist user/alc/PQ_LAUNDRY/gnu/lib/Makefile user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile user/alc/PQ_LAUNDRY/lib/libc/sys/kldsym.2 user/alc/PQ_LAUNDRY/lib/libc/tests/Makefile user/alc/PQ_LAUNDRY/lib/libcapsicum/capsicum_helpers.3 user/alc/PQ_LAUNDRY/lib/libmd/md4.h user/alc/PQ_LAUNDRY/lib/libmd/md5.h user/alc/PQ_LAUNDRY/lib/libmd/mdXhl.c user/alc/PQ_LAUNDRY/lib/libmd/ripemd.h user/alc/PQ_LAUNDRY/lib/libmd/sha.h user/alc/PQ_LAUNDRY/lib/libsysdecode/Makefile user/alc/PQ_LAUNDRY/lib/libsysdecode/errno.c user/alc/PQ_LAUNDRY/lib/libsysdecode/mkioctls user/alc/PQ_LAUNDRY/lib/libsysdecode/syscallnames.c user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode.h user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_abi_to_freebsd_errno.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_ioctlname.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_syscallnames.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/sysdecode_utrace.3 user/alc/PQ_LAUNDRY/lib/libsysdecode/utrace.c user/alc/PQ_LAUNDRY/release/doc/en_US.ISO8859-1/hardware/article.xml user/alc/PQ_LAUNDRY/sbin/camcontrol/camcontrol.c user/alc/PQ_LAUNDRY/sbin/ipfw/ipfw.8 user/alc/PQ_LAUNDRY/sbin/ipfw/ipv6.c user/alc/PQ_LAUNDRY/sbin/md5/md5.c user/alc/PQ_LAUNDRY/share/doc/legal/realtek/Makefile user/alc/PQ_LAUNDRY/share/man/man4/Makefile user/alc/PQ_LAUNDRY/share/man/man4/bpf.4 user/alc/PQ_LAUNDRY/share/man/man4/netmap.4 user/alc/PQ_LAUNDRY/share/man/man4/rtwn.4 user/alc/PQ_LAUNDRY/share/man/man4/rtwnfw.4 user/alc/PQ_LAUNDRY/share/man/man4/tcp.4 user/alc/PQ_LAUNDRY/share/man/man4/wlan.4 user/alc/PQ_LAUNDRY/share/man/man7/arch.7 user/alc/PQ_LAUNDRY/share/man/man9/fpu_kern.9 user/alc/PQ_LAUNDRY/share/mk/bsd.lib.mk user/alc/PQ_LAUNDRY/share/mk/bsd.subdir.mk user/alc/PQ_LAUNDRY/share/mk/bsd.suffixes.mk user/alc/PQ_LAUNDRY/share/mk/src.opts.mk user/alc/PQ_LAUNDRY/share/mk/sys.mk user/alc/PQ_LAUNDRY/sys/amd64/amd64/bpf_jit_machdep.c user/alc/PQ_LAUNDRY/sys/amd64/amd64/bpf_jit_machdep.h user/alc/PQ_LAUNDRY/sys/amd64/amd64/minidump_machdep.c user/alc/PQ_LAUNDRY/sys/arm/allwinner/a10_ehci.c user/alc/PQ_LAUNDRY/sys/arm/at91/at91_ohci.c user/alc/PQ_LAUNDRY/sys/arm/at91/at91_ohci_fdt.c user/alc/PQ_LAUNDRY/sys/arm/cavium/cns11xx/ehci_ebus.c user/alc/PQ_LAUNDRY/sys/arm/cavium/cns11xx/ohci_ec.c user/alc/PQ_LAUNDRY/sys/arm/conf/ALPINE user/alc/PQ_LAUNDRY/sys/arm/conf/PANDABOARD user/alc/PQ_LAUNDRY/sys/arm/nvidia/as3722_regulators.c user/alc/PQ_LAUNDRY/sys/arm/nvidia/tegra124/tegra124_coretemp.c user/alc/PQ_LAUNDRY/sys/arm/nvidia/tegra124/tegra124_cpufreq.c user/alc/PQ_LAUNDRY/sys/arm/nvidia/tegra124/tegra124_machdep.c user/alc/PQ_LAUNDRY/sys/arm/samsung/exynos/exynos5_xhci.c user/alc/PQ_LAUNDRY/sys/arm/ti/am335x/am335x_musb.c user/alc/PQ_LAUNDRY/sys/arm/ti/usb/omap_ehci.c user/alc/PQ_LAUNDRY/sys/arm/xilinx/zy7_ehci.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/machdep.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/trap.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/vfp.c user/alc/PQ_LAUNDRY/sys/arm64/conf/GENERIC user/alc/PQ_LAUNDRY/sys/arm64/include/pcb.h user/alc/PQ_LAUNDRY/sys/arm64/include/vfp.h user/alc/PQ_LAUNDRY/sys/boot/fdt/dts/arm/annapurna-alpine.dts user/alc/PQ_LAUNDRY/sys/boot/kshim/bsd_kernel.c user/alc/PQ_LAUNDRY/sys/cam/ata/ata_da.c user/alc/PQ_LAUNDRY/sys/cam/scsi/scsi_da.c user/alc/PQ_LAUNDRY/sys/cam/scsi/scsi_pass.c user/alc/PQ_LAUNDRY/sys/compat/ia32/ia32_sysvec.c user/alc/PQ_LAUNDRY/sys/conf/Makefile.arm user/alc/PQ_LAUNDRY/sys/conf/WITHOUT_SOURCELESS_UCODE user/alc/PQ_LAUNDRY/sys/conf/files user/alc/PQ_LAUNDRY/sys/conf/files.arm user/alc/PQ_LAUNDRY/sys/conf/files.arm64 user/alc/PQ_LAUNDRY/sys/conf/makeLINT.mk user/alc/PQ_LAUNDRY/sys/conf/options user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/LICENSE user/alc/PQ_LAUNDRY/sys/contrib/dev/rtwn/rtwn-rtl8192cfwU.fw.uu user/alc/PQ_LAUNDRY/sys/contrib/ncsw/Peripherals/BM/bman_low.c user/alc/PQ_LAUNDRY/sys/contrib/ncsw/Peripherals/QM/qm_portal_fqr.c user/alc/PQ_LAUNDRY/sys/contrib/ncsw/Peripherals/QM/qman_low.h user/alc/PQ_LAUNDRY/sys/contrib/ncsw/inc/Peripherals/bm_ext.h user/alc/PQ_LAUNDRY/sys/contrib/ncsw/inc/Peripherals/fm_ext.h user/alc/PQ_LAUNDRY/sys/contrib/ncsw/inc/Peripherals/qm_ext.h user/alc/PQ_LAUNDRY/sys/contrib/ncsw/inc/error_ext.h user/alc/PQ_LAUNDRY/sys/contrib/ncsw/inc/xx_ext.h user/alc/PQ_LAUNDRY/sys/contrib/ncsw/user/env/xx.c user/alc/PQ_LAUNDRY/sys/crypto/aesni/aesni.h user/alc/PQ_LAUNDRY/sys/crypto/sha1.h user/alc/PQ_LAUNDRY/sys/crypto/sha2/sha256.h user/alc/PQ_LAUNDRY/sys/crypto/sha2/sha384.h user/alc/PQ_LAUNDRY/sys/crypto/sha2/sha512.h user/alc/PQ_LAUNDRY/sys/crypto/sha2/sha512t.h user/alc/PQ_LAUNDRY/sys/crypto/siphash/siphash.h user/alc/PQ_LAUNDRY/sys/crypto/skein/skein_freebsd.h user/alc/PQ_LAUNDRY/sys/crypto/skein/skein_port.h user/alc/PQ_LAUNDRY/sys/dev/bhnd/cores/usb/bhnd_ehci.c user/alc/PQ_LAUNDRY/sys/dev/bhnd/cores/usb/bhnd_ohci.c user/alc/PQ_LAUNDRY/sys/dev/bxe/bxe.c user/alc/PQ_LAUNDRY/sys/dev/bxe/bxe.h user/alc/PQ_LAUNDRY/sys/dev/bxe/bxe_stats.h user/alc/PQ_LAUNDRY/sys/dev/cxgbe/t4_main.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/bman.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/bman_portals.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/fman.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/fman.h user/alc/PQ_LAUNDRY/sys/dev/dpaa/fman_fdt.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/if_dtsec.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/if_dtsec.h user/alc/PQ_LAUNDRY/sys/dev/dpaa/if_dtsec_fdt.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/portals_common.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/qman.c user/alc/PQ_LAUNDRY/sys/dev/dpaa/qman_portals.c user/alc/PQ_LAUNDRY/sys/dev/e1000/if_lem.c user/alc/PQ_LAUNDRY/sys/dev/extres/regulator/regulator.c user/alc/PQ_LAUNDRY/sys/dev/extres/regulator/regulator.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/include/vmbus.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_net_vsc.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_net_vsc.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/hv_rndis_filter.c user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/if_hnreg.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/if_hnvar.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/netvsc/ndis.h user/alc/PQ_LAUNDRY/sys/dev/hyperv/vmbus/vmbus_chan.c user/alc/PQ_LAUNDRY/sys/dev/netmap/if_lem_netmap.h user/alc/PQ_LAUNDRY/sys/dev/netmap/if_ptnet.c user/alc/PQ_LAUNDRY/sys/dev/netmap/if_vtnet_netmap.h user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_freebsd.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_generic.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_kern.h user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mem2.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_monitor.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_pipe.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_pt.c user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_vale.c user/alc/PQ_LAUNDRY/sys/dev/pci/pci.c user/alc/PQ_LAUNDRY/sys/dev/puc/puc.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwn.c user/alc/PQ_LAUNDRY/sys/dev/rtwn/if_rtwnreg.h user/alc/PQ_LAUNDRY/sys/dev/sound/usb/uaudio.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/at91dci_atmelarm.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/at91dci_fdt.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/atmegadci_atmelarm.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/dwc_otg_fdt.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/ehci_ixp4xx.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/ehci_mv.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/ehci_pci.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/generic_ehci.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/generic_ohci.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/musb_otg_atmelarm.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/ohci_pci.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/ohci_s3c24x0.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/saf1761_otg_boot.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/saf1761_otg_fdt.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/uhci_pci.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/uss820dci_atmelarm.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/xhci_mv.c user/alc/PQ_LAUNDRY/sys/dev/usb/controller/xhci_pci.c user/alc/PQ_LAUNDRY/sys/dev/usb/usb_device.c user/alc/PQ_LAUNDRY/sys/dev/usb/video/udl.c user/alc/PQ_LAUNDRY/sys/fs/nfsserver/nfs_nfsdstate.c user/alc/PQ_LAUNDRY/sys/geom/mirror/g_mirror.c user/alc/PQ_LAUNDRY/sys/i386/i386/bpf_jit_machdep.c user/alc/PQ_LAUNDRY/sys/i386/i386/bpf_jit_machdep.h user/alc/PQ_LAUNDRY/sys/kern/init_main.c user/alc/PQ_LAUNDRY/sys/kern/kern_exec.c user/alc/PQ_LAUNDRY/sys/kern/kern_mib.c user/alc/PQ_LAUNDRY/sys/kern/makesyscalls.sh user/alc/PQ_LAUNDRY/sys/kern/subr_bus.c user/alc/PQ_LAUNDRY/sys/kern/subr_gtaskqueue.c user/alc/PQ_LAUNDRY/sys/kern/sys_capability.c user/alc/PQ_LAUNDRY/sys/kern/uipc_syscalls.c user/alc/PQ_LAUNDRY/sys/kern/vfs_cache.c user/alc/PQ_LAUNDRY/sys/mips/atheros/ar71xx_ehci.c user/alc/PQ_LAUNDRY/sys/mips/atheros/ar71xx_ohci.c user/alc/PQ_LAUNDRY/sys/mips/cavium/usb/octusb_octeon.c user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR933X user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR934X user/alc/PQ_LAUNDRY/sys/mips/conf/std.QCA955X user/alc/PQ_LAUNDRY/sys/mips/mediatek/mtk_dotg.c user/alc/PQ_LAUNDRY/sys/mips/mediatek/mtk_ehci.c user/alc/PQ_LAUNDRY/sys/mips/mediatek/mtk_ohci.c user/alc/PQ_LAUNDRY/sys/mips/mediatek/mtk_xhci.c user/alc/PQ_LAUNDRY/sys/mips/rmi/xls_ehci.c user/alc/PQ_LAUNDRY/sys/mips/rt305x/rt305x_dotg.c user/alc/PQ_LAUNDRY/sys/mips/rt305x/rt305x_ehci.c user/alc/PQ_LAUNDRY/sys/mips/rt305x/rt305x_ohci.c user/alc/PQ_LAUNDRY/sys/modules/Makefile user/alc/PQ_LAUNDRY/sys/modules/geom/Makefile user/alc/PQ_LAUNDRY/sys/modules/gpio/gpiospi/Makefile user/alc/PQ_LAUNDRY/sys/modules/rtwn/Makefile user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/Makefile user/alc/PQ_LAUNDRY/sys/modules/rtwnfw/Makefile.inc user/alc/PQ_LAUNDRY/sys/net/bpf_filter.c user/alc/PQ_LAUNDRY/sys/net/if_loop.c user/alc/PQ_LAUNDRY/sys/net/if_var.h user/alc/PQ_LAUNDRY/sys/net/iflib.c user/alc/PQ_LAUNDRY/sys/net/netmap.h user/alc/PQ_LAUNDRY/sys/net/netmap_user.h user/alc/PQ_LAUNDRY/sys/net/netmap_virt.h user/alc/PQ_LAUNDRY/sys/net/rndis.h user/alc/PQ_LAUNDRY/sys/net80211/ieee80211_scan_sw.c user/alc/PQ_LAUNDRY/sys/net80211/ieee80211_var.h user/alc/PQ_LAUNDRY/sys/netinet/ip_icmp.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_input.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_subr.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_timewait.c user/alc/PQ_LAUNDRY/sys/netinet/tcp_usrreq.c user/alc/PQ_LAUNDRY/sys/netinet6/icmp6.c user/alc/PQ_LAUNDRY/sys/netinet6/ip6_input.c user/alc/PQ_LAUNDRY/sys/netinet6/ip6_output.c user/alc/PQ_LAUNDRY/sys/netpfil/ipfw/ip_fw_table.c user/alc/PQ_LAUNDRY/sys/opencrypto/crypto.c user/alc/PQ_LAUNDRY/sys/powerpc/conf/dpaa/files.dpaa user/alc/PQ_LAUNDRY/sys/powerpc/fpu/fpu_emu.c user/alc/PQ_LAUNDRY/sys/riscv/conf/GENERIC user/alc/PQ_LAUNDRY/sys/sys/cdefs.h user/alc/PQ_LAUNDRY/sys/sys/md4.h user/alc/PQ_LAUNDRY/sys/sys/md5.h user/alc/PQ_LAUNDRY/sys/sys/param.h user/alc/PQ_LAUNDRY/sys/ufs/ffs/ffs_vnops.c user/alc/PQ_LAUNDRY/sys/vm/uma_core.c user/alc/PQ_LAUNDRY/sys/vm/vm_fault.c user/alc/PQ_LAUNDRY/sys/vm/vm_page.c user/alc/PQ_LAUNDRY/sys/vm/vm_page.h user/alc/PQ_LAUNDRY/sys/vm/vnode_pager.c user/alc/PQ_LAUNDRY/sys/x86/x86/identcpu.c user/alc/PQ_LAUNDRY/tests/sys/Makefile user/alc/PQ_LAUNDRY/tests/sys/geom/class/uzip/1_test.sh user/alc/PQ_LAUNDRY/tests/sys/geom/class/uzip/Makefile user/alc/PQ_LAUNDRY/tests/sys/kern/kern_copyin.c user/alc/PQ_LAUNDRY/tools/build/mk/OptionalObsoleteFiles.inc user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/Makefile user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/bpf_test.c user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0001.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0002.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0003.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0004.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0005.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0006.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0007.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0008.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0009.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0010.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0011.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0012.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0013.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0014.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0015.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0016.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0017.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0018.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0019.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0020.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0021.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0022.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0023.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0024.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0025.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0026.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0027.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0028.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0029.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0030.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0031.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0032.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0033.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0034.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0035.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0036.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0037.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0038.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0039.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0040.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0041.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0042.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0043.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0044.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0045.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0046.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0047.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0048.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0049.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0050.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0051.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0052.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0053.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0054.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0055.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0056.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0057.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0058.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0059.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0060.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0061.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0062.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0063.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0064.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0065.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0066.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0067.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0068.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0069.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0070.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0071.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0072.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0073.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0074.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0075.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0076.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0077.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0078.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0079.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0080.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0081.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0082.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0083.h user/alc/PQ_LAUNDRY/tools/regression/bpf/bpf_filter/tests/test0084.h user/alc/PQ_LAUNDRY/tools/tools/README user/alc/PQ_LAUNDRY/tools/tools/nanobsd/embedded/beaglebone.cfg user/alc/PQ_LAUNDRY/tools/tools/nanobsd/embedded/common user/alc/PQ_LAUNDRY/usr.bin/elfdump/elfdump.c user/alc/PQ_LAUNDRY/usr.bin/jot/jot.c user/alc/PQ_LAUNDRY/usr.bin/kdump/Makefile user/alc/PQ_LAUNDRY/usr.bin/kdump/kdump.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/Makefile user/alc/PQ_LAUNDRY/usr.bin/mkimg/apm.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/bsd.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/ebr.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/gpt.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/mbr.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/mkimg.1 user/alc/PQ_LAUNDRY/usr.bin/mkimg/mkimg.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/mkimg.h user/alc/PQ_LAUNDRY/usr.bin/mkimg/pc98.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/vhd.c user/alc/PQ_LAUNDRY/usr.bin/mkimg/vtoc8.c user/alc/PQ_LAUNDRY/usr.bin/printenv/printenv.c user/alc/PQ_LAUNDRY/usr.bin/truss/Makefile user/alc/PQ_LAUNDRY/usr.bin/truss/aarch64-cloudabi64.c user/alc/PQ_LAUNDRY/usr.bin/truss/aarch64-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/amd64-cloudabi64.c user/alc/PQ_LAUNDRY/usr.bin/truss/amd64-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/amd64-freebsd32.c user/alc/PQ_LAUNDRY/usr.bin/truss/amd64-linux.c user/alc/PQ_LAUNDRY/usr.bin/truss/amd64-linux32.c user/alc/PQ_LAUNDRY/usr.bin/truss/arm-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/extern.h user/alc/PQ_LAUNDRY/usr.bin/truss/i386-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/i386-linux.c user/alc/PQ_LAUNDRY/usr.bin/truss/main.c user/alc/PQ_LAUNDRY/usr.bin/truss/mips-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/powerpc-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/powerpc64-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/powerpc64-freebsd32.c user/alc/PQ_LAUNDRY/usr.bin/truss/setup.c user/alc/PQ_LAUNDRY/usr.bin/truss/sparc64-freebsd.c user/alc/PQ_LAUNDRY/usr.bin/truss/syscall.h user/alc/PQ_LAUNDRY/usr.bin/truss/syscalls.c user/alc/PQ_LAUNDRY/usr.sbin/bhyve/bhyve.8 user/alc/PQ_LAUNDRY/usr.sbin/fstyp/Makefile user/alc/PQ_LAUNDRY/usr.sbin/pciconf/pciconf.c Directory Properties: user/alc/PQ_LAUNDRY/ (props changed) user/alc/PQ_LAUNDRY/contrib/mdocml/ (props changed) user/alc/PQ_LAUNDRY/contrib/netbsd-tests/ (props changed) user/alc/PQ_LAUNDRY/gnu/lib/ (props changed) Modified: user/alc/PQ_LAUNDRY/Makefile.inc1 ============================================================================== --- user/alc/PQ_LAUNDRY/Makefile.inc1 Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/Makefile.inc1 Fri Oct 21 19:44:09 2016 (r307751) @@ -1586,7 +1586,7 @@ _strfile= usr.bin/fortune/strfile _gperf= gnu/usr.bin/gperf .endif -.if ${MK_SHAREDOCS} != "no" || ${MK_GROFF} != "no" +.if ${MK_SHAREDOCS} != "no" && ${MK_GROFF} != "no" _groff= gnu/usr.bin/groff \ usr.bin/soelim .endif @@ -1983,7 +1983,10 @@ libraries: .MAKE .PHONY # # static libgcc.a prerequisite for shared libc # -_prereq_libs= gnu/lib/libssp/libssp_nonshared gnu/lib/libgcc lib/libcompiler_rt +_prereq_libs= gnu/lib/libgcc lib/libcompiler_rt +.if ${MK_SSP} != "no" +_prereq_libs+= gnu/lib/libssp/libssp_nonshared +.endif # These dependencies are not automatically generated: # Modified: user/alc/PQ_LAUNDRY/ObsoleteFiles.inc ============================================================================== --- user/alc/PQ_LAUNDRY/ObsoleteFiles.inc Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/ObsoleteFiles.inc Fri Oct 21 19:44:09 2016 (r307751) @@ -38,6 +38,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20161017: urtwn(4) was merged into rtwn(4) +OLD_FILES+=usr/share/man/man4/urtwn.4.gz +OLD_FILES+=usr/share/man/man4/urtwnfw.4.gz # 20161015: Remove GNU rcs OLD_FILES+=usr/bin/ci OLD_FILES+=usr/bin/co Modified: user/alc/PQ_LAUNDRY/UPDATING ============================================================================== --- user/alc/PQ_LAUNDRY/UPDATING Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/UPDATING Fri Oct 21 19:44:09 2016 (r307751) @@ -31,6 +31,30 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) + +****************************** SPECIAL WARNING: ****************************** + + Due to a bug in some versions of clang that's very hard to workaround in + the upgrade process, to upgrade to -current you must first upgrade + either stable/9 after r286035 or stable/10 after r286033 (including + 10.3-RELEASE) or current after r286007 (including stable/11 and + 11.0-RELEASE). These revisions post-date the 10.2 and 9.3 releases, so + you'll need to take the unusual step of upgrading to the tip of the + stable branch before moving to 11 or -current via a source upgrade. + stable/11 and 11.0-RELEASE post-date the fix so you can move from them + to -current. This differs from the historical situation where one could + upgrade from anywhere on the last couple of stable branches, so be + careful. + +****************************** SPECIAL WARNING: ****************************** + +20161017: + The urtwn(4) driver was merged into rtwn(4) and now consists of + rtwn(4) main module + rtwn_usb(4) and rtwn_pci(4) bus-specific + parts. + Also, firmware for RTL8188CE was renamed due to possible name + conflict (rtwnrtl8192cU(B) -> rtwnrtl8192cE(B)) + 20161015: GNU rcs has been removed from base. It is available as packages: - rcs: Latest GPLv3 GNU rcs version. @@ -1460,11 +1484,15 @@ COMMON ITEMS: your build attempts in an "environmental clean room", prefix all make commands with 'env -i '. See the env(1) manual page for more details. - When upgrading from one major version to another it is generally best - to upgrade to the latest code in the currently installed branch first, - then do an upgrade to the new branch. This is the best-tested upgrade - path, and has the highest probability of being successful. Please try - this approach before reporting problems with a major version upgrade. + When upgrading from one major version to another it is generally best to + upgrade to the latest code in the currently installed branch first, then + do an upgrade to the new branch. This is the best-tested upgrade path, + and has the highest probability of being successful. Please try this + approach if you encounter problems with a major version upgrade. Since + the stable 4.x branch point, one has generally been able to upgade from + anywhere in the most recent stable branch to head / current (or even the + last couple of stable branches). See the top of this file when there's + an exception. When upgrading a live system, having a root shell around before installing anything can help undo problems. Not having a root shell Modified: user/alc/PQ_LAUNDRY/bin/pkill/tests/pgrep-j_test.sh ============================================================================== --- user/alc/PQ_LAUNDRY/bin/pkill/tests/pgrep-j_test.sh Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/bin/pkill/tests/pgrep-j_test.sh Fri Oct 21 19:44:09 2016 (r307751) @@ -20,12 +20,13 @@ sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep name="pgrep -j " -sleep_amount=5 +sleep_amount=15 jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_1_1.pid $sleep $sleep_amount & jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_1_2.pid $sleep $sleep_amount & +sleep 0.5 for i in `seq 1 10`; do jid1=$(jail_name_to_jid ${base}_1_1) @@ -53,7 +54,7 @@ fi wait name="pgrep -j any" -sleep_amount=6 +sleep_amount=16 jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_2_1.pid $sleep $sleep_amount & @@ -74,7 +75,7 @@ fi wait name="pgrep -j none" -sleep_amount=7 +sleep_amount=17 daemon -p ${PWD}/${base}_3_1.pid $sleep $sleep_amount & jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_3_2.pid $sleep $sleep_amount & @@ -91,7 +92,7 @@ wait # test 4 is like test 1 except with jname instead of jid. name="pgrep -j " -sleep_amount=8 +sleep_amount=18 jail -c path=/ name=${base}_4_1 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_4_1.pid $sleep $sleep_amount & Modified: user/alc/PQ_LAUNDRY/bin/pkill/tests/pkill-j_test.sh ============================================================================== --- user/alc/PQ_LAUNDRY/bin/pkill/tests/pkill-j_test.sh Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/bin/pkill/tests/pkill-j_test.sh Fri Oct 21 19:44:09 2016 (r307751) @@ -20,7 +20,7 @@ sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep name="pkill -j " -sleep_amount=5 +sleep_amount=15 jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_1_1.pid $sleep $sleep_amount & @@ -54,7 +54,7 @@ fi 2>/dev/null wait name="pkill -j any" -sleep_amount=6 +sleep_amount=16 jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_2_1.pid $sleep $sleep_amount & @@ -76,7 +76,7 @@ fi 2>/dev/null wait name="pkill -j none" -sleep_amount=7 +sleep_amount=17 daemon -p ${PWD}/${base}_3_1.pid $sleep $sleep_amount jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_3_2.pid $sleep $sleep_amount & @@ -94,7 +94,7 @@ wait # test 4 is like test 1 except with jname instead of jid. name="pkill -j " -sleep_amount=8 +sleep_amount=18 jail -c path=/ name=${base}_4_1 ip4.addr=127.0.0.1 \ command=daemon -p ${PWD}/${base}_4_1.pid $sleep $sleep_amount & Modified: user/alc/PQ_LAUNDRY/contrib/mdocml/mandocdb.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/mdocml/mandocdb.c Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/contrib/mdocml/mandocdb.c Fri Oct 21 19:44:09 2016 (r307751) @@ -1146,10 +1146,8 @@ mpages_merge(struct mparse *mp) for (mpage = mpage_head; mpage != NULL; mpage = mpage->next) { mlinks_undupe(mpage); - if ((mlink = mpage->mlinks) == NULL) { - mpage = mpage->next; + if ((mlink = mpage->mlinks) == NULL) continue; - } name_mask = NAME_MASK; mandoc_ohash_init(&names, 4, offsetof(struct str, key)); Modified: user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_link.sh ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_link.sh Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/contrib/netbsd-tests/fs/tmpfs/t_link.sh Fri Oct 21 19:44:09 2016 (r307751) @@ -93,7 +93,18 @@ subdirs_body() { test_unmount } +# Begin FreeBSD +if true; then +atf_test_case kqueue cleanup +kqueue_cleanup() { + Mount_Point=$(pwd)/mntpt test_unmount || : +} +else +# End FreeBSD atf_test_case kqueue +# Begin FreeBSD +fi +# End FreeBSD kqueue_head() { atf_set "descr" "Verifies that creating a link raises the correct" \ "kqueue events" @@ -102,6 +113,10 @@ kqueue_head() { kqueue_body() { test_mount + # Begin FreeBSD + atf_expect_fail "fails with: dir/b did not receive NOTE_LINK - bug 213662" + # End FreeBSD + atf_check -s eq:0 -o empty -e empty mkdir dir atf_check -s eq:0 -o empty -e empty touch dir/a echo 'ln dir/a dir/b' | kqueue_monitor 2 dir dir/a Modified: user/alc/PQ_LAUNDRY/contrib/netbsd-tests/lib/libpthread/t_swapcontext.c ============================================================================== --- user/alc/PQ_LAUNDRY/contrib/netbsd-tests/lib/libpthread/t_swapcontext.c Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/contrib/netbsd-tests/lib/libpthread/t_swapcontext.c Fri Oct 21 19:44:09 2016 (r307751) @@ -97,6 +97,15 @@ ATF_TC_BODY(swapcontext1, tc) { pthread_t thread; +#if defined(__FreeBSD__) && defined(__mips__) + /* + * MIPS modifies TLS pointer in set_mcontext(), so + * swapping contexts obtained from different threads + * gives us different pthread_self() return value. + */ + atf_tc_skip("Platform is not supported."); +#endif + oself = (void *)&val1; nself = (void *)&val2; Modified: user/alc/PQ_LAUNDRY/etc/devd.conf ============================================================================== --- user/alc/PQ_LAUNDRY/etc/devd.conf Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/etc/devd.conf Fri Oct 21 19:44:09 2016 (r307751) @@ -24,7 +24,7 @@ options { [0-9]+"; set wifi-driver-regex "(ath|bwi|bwn|ipw|iwi|iwm|iwn|malo|mwl|ral|rsu|rum|run|uath|\ - upgt|ural|urtw|urtwn|wi|wpi|wtap|zyd)[0-9]+"; + upgt|ural|urtw|rtwn_usb|wi|wpi|wtap|zyd)[0-9]+"; }; # Note that the attach/detach with the highest value wins, so that one can Modified: user/alc/PQ_LAUNDRY/etc/devd/usb.conf ============================================================================== --- user/alc/PQ_LAUNDRY/etc/devd/usb.conf Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/etc/devd/usb.conf Fri Oct 21 19:44:09 2016 (r307751) @@ -185,6 +185,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0409"; + match "product" "0x0408"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0409"; match "product" "(0x8024|0x8025)"; action "kldload -n uipaq"; }; @@ -304,6 +312,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0411"; + match "product" "(0x0242|0x025d)"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0413"; match "product" "0x2101"; action "kldload -n uplcom"; @@ -553,6 +569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x04bb"; + match "product" "0x0952"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x04bb"; match "product" "(0x0a03|0x0a0e)"; action "kldload -n uplcom"; }; @@ -682,7 +706,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x04f2"; match "product" "(0xaff7|0xaff8|0xaff9|0xaffa|0xaffa)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -754,7 +778,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x050d"; match "product" "0x1102"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -778,7 +802,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x050d"; match "product" "(0x2102|0x2103)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1050,7 +1074,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x056e"; match "product" "0x4008"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1146,7 +1170,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0586"; match "product" "0x341f"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1160,6 +1184,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0586"; + match "product" "0x3426"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x058f"; match "product" "0x9720"; action "kldload -n uplcom"; @@ -1442,7 +1474,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x06f8"; match "product" "0xe033"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1658,7 +1690,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x07aa"; match "product" "0x0056"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -1722,7 +1754,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x07b8"; match "product" "(0x8178|0x8179|0x8188|0x8189)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2026,7 +2058,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0846"; match "product" "0x9021"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2041,8 +2073,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0846"; - match "product" "0x9041"; - action "kldload -n if_urtwn"; + match "product" "(0x9041|0x9052)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2498,7 +2530,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0b05"; match "product" "0x17ab"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2522,7 +2554,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0b05"; match "product" "0x17ba"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2537,6 +2569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0b05"; + match "product" "0x17d2"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; match "product" "(0x4200|0x4201|0x4202|0x420f|0x9200|0x9202)"; action "kldload -n uipaq"; }; @@ -2658,7 +2698,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "(0x0179|0x018a|0x317f)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2682,7 +2722,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "0x8170"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2698,7 +2738,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "(0x8176|0x8177|0x8178|0x8179|0x817a|0x817b|0x817c|0x817d|0x817e|0x817f)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2714,7 +2754,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "(0x818a|0x8191)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -2738,7 +2778,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0bda"; match "product" "0x8754"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3162,7 +3202,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0df6"; match "product" "0x0052"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3178,7 +3218,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0df6"; match "product" "(0x005c|0x0061)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3193,6 +3233,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0df6"; + match "product" "0x0074"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; match "product" "0x061c"; action "kldload -n if_axe"; }; @@ -3257,8 +3305,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0e66"; - match "product" "0x0019"; - action "kldload -n if_urtwn"; + match "product" "(0x0019|0x0023)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3330,7 +3378,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x0eb0"; match "product" "0x9071"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3490,7 +3538,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x103c"; match "product" "0x1629"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -3976,6 +4024,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x13b1"; + match "product" "0x003f"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x13d2"; match "product" "0x0400"; action "kldload -n if_kue"; @@ -4018,7 +4074,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x13d3"; match "product" "(0x3357|0x3358|0x3359)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -4569,6 +4625,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1740"; + match "product" "0x0100"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x1740"; match "product" "(0x0605|0x0615)"; action "kldload -n if_run"; }; @@ -4961,8 +5025,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2001"; - match "product" "(0x3307|0x3308|0x3309|0x330a|0x330d|0x330f|0x3310)"; - action "kldload -n if_urtwn"; + match "product" "(0x3307|0x3308|0x3309|0x330a|0x330d|0x330f|0x3310|0x3314|0x3315|0x3316|0x3318)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5042,7 +5106,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x2019"; match "product" "(0x1201|0x4902)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5089,8 +5153,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2019"; - match "product" "(0xab2a|0xab2b|0xab2e)"; - action "kldload -n if_urtwn"; + match "product" "(0xab2a|0xab2b|0xab2e|0xab30)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5130,7 +5194,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x2019"; match "product" "0xed17"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5170,7 +5234,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x20f4"; match "product" "0x624d"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5185,8 +5249,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x20f4"; - match "product" "0x648b"; - action "kldload -n if_urtwn"; + match "product" "(0x648b|0x805b)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5232,6 +5296,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x2357"; + match "product" "0x0101"; + action "kldload -n if_rtwn_usb"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x2405"; match "product" "0x0003"; action "kldload -n uslcom"; @@ -5354,7 +5426,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x4855"; match "product" "(0x0090|0x0091)"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5465,8 +5537,8 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x7392"; - match "product" "(0x7811|0x7822)"; - action "kldload -n if_urtwn"; + match "product" "(0x7811|0x7822|0xa811|0xa812|0xa822)"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5522,7 +5594,7 @@ nomatch 32 { match "mode" "host"; match "vendor" "0x9846"; match "product" "0x9041"; - action "kldload -n if_urtwn"; + action "kldload -n if_rtwn_usb"; }; nomatch 32 { @@ -5817,5 +5889,5 @@ nomatch 32 { action "kldload -n umass"; }; -# 2722 USB entries processed +# 2743 USB entries processed Modified: user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist ============================================================================== --- user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist Fri Oct 21 19:44:09 2016 (r307751) @@ -396,6 +396,10 @@ .. file .. + fs + tmpfs + .. + .. geom class concat Modified: user/alc/PQ_LAUNDRY/gnu/lib/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/gnu/lib/Makefile Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/gnu/lib/Makefile Fri Oct 21 19:44:09 2016 (r307751) @@ -2,26 +2,23 @@ .include -SUBDIR= csu libgcc libregex +SUBDIR= csu +SUBDIR+= libgcc SUBDIR.${MK_DIALOG}+= libdialog - -.if ${MK_GCC} != "no" -SUBDIR+= libgcov libgomp -.endif - -.if ${MK_SSP} != "no" -SUBDIR+= libssp -.endif - -.if ${MK_TESTS} != "no" -SUBDIR+= tests -.endif +SUBDIR.${MK_GCC}+= libgcov libgomp +SUBDIR.${MK_SSP}+= libssp +SUBDIR.${MK_TESTS}+= tests .if ${MK_BINUTILS} != "no" && ${MK_GDB} != "no" SUBDIR+= libreadline .endif +.if ${MK_GNU_DIFF} != "no" || ${MK_GNU_GREP} != "no" || \ + ${MK_GNU_GREP_COMPAT} != "no" || ${MK_GDB} != "no" +SUBDIR+= libregex +.endif + # libsupc++ uses libstdc++ headers, although 'make includes' should # have taken care of that already. .if ${MK_GNUCXX} != "no" Modified: user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/gnu/usr.bin/Makefile Fri Oct 21 19:44:09 2016 (r307751) @@ -2,48 +2,25 @@ .include -SUBDIR= ${_binutils} \ - ${_cc} \ - diff \ - diff3 \ - ${_dtc} \ - ${_gdb} \ - ${_gperf} \ - grep \ - ${_groff} \ - ${_tests} - SUBDIR_DEPEND_gdb= ${_binutils} .if ${MK_CXX} != "no" -.if ${MK_GCC} != "no" -_gperf= gperf -.endif -.if ${MK_GROFF} != "no" -_groff= groff -.endif +SUBDIR.${MK_GCC}+= gperf +SUBDIR.${MK_GROFF}+= groff .endif -.if ${MK_GPL_DTC} != "no" -_dtc= dtc -.endif - -.if ${MK_TESTS} != "no" -_tests= tests -.endif +SUBDIR.${MK_BINUTILS}+= binutils +SUBDIR.${MK_DIALOG}+= dialog .if ${MK_BINUTILS} != "no" -_binutils= binutils -.if ${MK_GDB} != "no" -_gdb= gdb -.endif +SUBDIR.${MK_GDB}+= gdb .endif -.if ${MK_GCC} != "no" -_cc= cc -.endif - -SUBDIR.${MK_DIALOG}+= dialog +SUBDIR.${MK_GCC}+= cc +SUBDIR.${MK_GNU_DIFF}+= diff diff3 +SUBDIR.${MK_GNU_GREP}+= grep +SUBDIR.${MK_GPL_DTC}+= dtc +SUBDIR.${MK_TESTS}+= tests SUBDIR_PARALLEL= Modified: user/alc/PQ_LAUNDRY/lib/libc/sys/kldsym.2 ============================================================================== --- user/alc/PQ_LAUNDRY/lib/libc/sys/kldsym.2 Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/lib/libc/sys/kldsym.2 Fri Oct 21 19:44:09 2016 (r307751) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 26, 2001 +.Dd October 17, 2016 .Dt KLDSYM 2 .Os .Sh NAME @@ -36,7 +36,7 @@ .In sys/param.h .In sys/linker.h .Ft int -.Fn kldsym "int fileid" "int command" "void *data" +.Fn kldsym "int fileid" "int cmd" "void *data" .Sh DESCRIPTION The .Fn kldsym @@ -48,7 +48,7 @@ If .Fa fileid is 0, all loaded modules are searched. Currently, the only -.Fa command +.Fa cmd implemented is .Dv KLDSYM_LOOKUP . .Pp @@ -96,7 +96,7 @@ system call will fail if: Invalid value in .Fa data->version or -.Fa command . +.Fa cmd . .It Bq Er ENOENT The .Fa fileid Modified: user/alc/PQ_LAUNDRY/lib/libc/tests/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/lib/libc/tests/Makefile Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/lib/libc/tests/Makefile Fri Oct 21 19:44:09 2016 (r307751) @@ -8,7 +8,6 @@ TESTS_SUBDIRS= c063 TESTS_SUBDIRS+= db TESTS_SUBDIRS+= gen TESTS_SUBDIRS+= hash -TESTS_SUBDIRS+= iconv TESTS_SUBDIRS+= inet TESTS_SUBDIRS+= net TESTS_SUBDIRS+= nss @@ -26,6 +25,10 @@ TESTS_SUBDIRS+= ttyio SUBDIR_DEPEND_tls= tls_dso +.if ${MK_ICONV} != "no" +TESTS_SUBDIRS+= iconv +.endif + .if ${MK_LOCALES} != "no" TESTS_SUBDIRS+= locale .endif Modified: user/alc/PQ_LAUNDRY/lib/libcapsicum/capsicum_helpers.3 ============================================================================== --- user/alc/PQ_LAUNDRY/lib/libcapsicum/capsicum_helpers.3 Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/lib/libcapsicum/capsicum_helpers.3 Fri Oct 21 19:44:09 2016 (r307751) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 5, 2016 +.Dd October 21, 2016 .Dt CAPSICUM_HELPERS 3 .Os .Sh NAME @@ -57,7 +57,8 @@ .Sh DESCRIPTION The .Nm capsicum helpers -are a set of a inline functions which simplify Capsicumizing programs. +are a set of a inline functions which simplify modifying programs to use +Capsicum. The goal is to reduce duplicated code patterns. The .Nm capsicum helpers @@ -70,7 +71,7 @@ restricts capabilities on .Fa fd to only those needed by POSIX stream objects (that is, FILEs). .Pp -The following flags can be provided: +These flags can be provided: .Pp .Bl -tag -width "CAPH_IGNORE_EBADF" -compact -offset indent .It Dv CAPH_IGNORE_EBADF Modified: user/alc/PQ_LAUNDRY/lib/libmd/md4.h ============================================================================== --- user/alc/PQ_LAUNDRY/lib/libmd/md4.h Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/lib/libmd/md4.h Fri Oct 21 19:44:09 2016 (r307751) @@ -53,6 +53,12 @@ __BEGIN_DECLS #ifndef MD4End #define MD4End _libmd_MD4End #endif +#ifndef MD4Fd +#define MD4Fd _libmd_MD4Fd +#endif +#ifndef MD4FdChunk +#define MD4FdChunk _libmd_MD4FdChunk +#endif #ifndef MD4File #define MD4File _libmd_MD4File #endif @@ -68,6 +74,8 @@ void MD4Update(MD4_CTX *, const void * void MD4Pad(MD4_CTX *); void MD4Final(unsigned char [16], MD4_CTX *); char * MD4End(MD4_CTX *, char *); +char * MD4Fd(int, char *); +char * MD4FdChunk(int, char *, off_t, off_t); char * MD4File(const char *, char *); char * MD4FileChunk(const char *, char *, off_t, off_t); char * MD4Data(const void *, unsigned int, char *); Modified: user/alc/PQ_LAUNDRY/lib/libmd/md5.h ============================================================================== --- user/alc/PQ_LAUNDRY/lib/libmd/md5.h Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/lib/libmd/md5.h Fri Oct 21 19:44:09 2016 (r307751) @@ -25,6 +25,12 @@ #ifndef MD5End #define MD5End _libmd_MD5End #endif +#ifndef MD5Fd +#define MD5Fd _libmd_MD5Fd +#endif +#ifndef MD5FdChunk +#define MD5FdChunk _libmd_MD5FdChunk +#endif #ifndef MD5File #define MD5File _libmd_MD5File #endif @@ -37,13 +43,5 @@ #endif -#ifdef __cplusplus -#define static -#endif - #include - -#ifdef __cplusplus -#undef static -#endif #endif /* _MD5_H_ */ Modified: user/alc/PQ_LAUNDRY/lib/libmd/mdXhl.c ============================================================================== --- user/alc/PQ_LAUNDRY/lib/libmd/mdXhl.c Fri Oct 21 19:40:37 2016 (r307750) +++ user/alc/PQ_LAUNDRY/lib/libmd/mdXhl.c Fri Oct 21 19:44:09 2016 (r307751) @@ -42,18 +42,18 @@ MDXEnd(MDX_CTX *ctx, char *buf) } char * -MDXFile(const char *filename, char *buf) +MDXFd(int fd, char *buf) { - return (MDXFileChunk(filename, buf, 0, 0)); + return MDXFdChunk(fd, buf, 0, 0); } char * -MDXFileChunk(const char *filename, char *buf, off_t ofs, off_t len) +MDXFdChunk(int fd, char *buf, off_t ofs, off_t len) { unsigned char buffer[16*1024]; MDX_CTX ctx; struct stat stbuf; - int fd, readrv, e; + int readrv, e; off_t remain; if (len < 0) { @@ -62,9 +62,6 @@ MDXFileChunk(const char *filename, char } MDXInit(&ctx); - fd = open(filename, O_RDONLY); - if (fd < 0) - return NULL; if (ofs != 0) { errno = 0; if (lseek(fd, ofs, SEEK_SET) != ofs || @@ -86,15 +83,34 @@ MDXFileChunk(const char *filename, char remain -= readrv; } error: - e = errno; - close(fd); - errno = e; if (readrv < 0) return NULL; return (MDXEnd(&ctx, buf)); } char * +MDXFile(const char *filename, char *buf) +{ + return (MDXFileChunk(filename, buf, 0, 0)); +} + +char * +MDXFileChunk(const char *filename, char *buf, off_t ofs, off_t len) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@freebsd.org Fri Oct 21 20:31:54 2016 Return-Path: Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 35519C1C065 for ; Fri, 21 Oct 2016 20:31:54 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 01437650; Fri, 21 Oct 2016 20:31:53 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9LKVrVb059378; Fri, 21 Oct 2016 20:31:53 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9LKVrvs059377; Fri, 21 Oct 2016 20:31:53 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201610212031.u9LKVrvs059377@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Fri, 21 Oct 2016 20:31:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307753 - user/cperciva/freebsd-update-build/patches/10.3-RELEASE X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2016 20:31:54 -0000 Author: glebius Date: Fri Oct 21 20:31:52 2016 New Revision: 307753 URL: https://svnweb.freebsd.org/changeset/base/307753 Log: Remove cruft at EoF. Modified: user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm Modified: user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm ============================================================================== --- user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm Fri Oct 21 20:17:19 2016 (r307752) +++ user/cperciva/freebsd-update-build/patches/10.3-RELEASE/11-EN-16:17.vm Fri Oct 21 20:31:52 2016 (r307753) @@ -233,7 +233,3 @@ #define OBJ_DEAD 0x0008 /* dead objects (during rundown) */ #define OBJ_NOSPLIT 0x0010 /* dont split this object */ #define OBJ_PIPWNT 0x0040 /* paging in progress wanted */ ---- ..orig -+++ . - Merged /head:r300758,300959,302063,302236,302317,302567,302580 - Merged /stable/10:r301184,301436,302243,302513,303291