From owner-svn-src-all@freebsd.org Sun Feb 10 08:46:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D618F14E53AF; Sun, 10 Feb 2019 08:46:08 +0000 (UTC) (envelope-from peterj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6F6686D16B; Sun, 10 Feb 2019 08:46:08 +0000 (UTC) (envelope-from peterj@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5C275E0E5; Sun, 10 Feb 2019 08:46:08 +0000 (UTC) (envelope-from peterj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A8k868056431; Sun, 10 Feb 2019 08:46:08 GMT (envelope-from peterj@FreeBSD.org) Received: (from peterj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A8k7vv056427; Sun, 10 Feb 2019 08:46:07 GMT (envelope-from peterj@FreeBSD.org) Message-Id: <201902100846.x1A8k7vv056427@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: peterj set sender to peterj@FreeBSD.org using -f From: Peter Jeremy Date: Sun, 10 Feb 2019 08:46:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343953 - head/lib/msun/src X-SVN-Group: head X-SVN-Commit-Author: peterj X-SVN-Commit-Paths: head/lib/msun/src X-SVN-Commit-Revision: 343953 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6F6686D16B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 08:46:09 -0000 Author: peterj Date: Sun Feb 10 08:46:07 2019 New Revision: 343953 URL: https://svnweb.freebsd.org/changeset/base/343953 Log: Replace calls to sin(x) and cos(x) with a single call to sincos(). Replace calls to sinf(x) and cosf(x) with a single call to sincosf(). Submitted by: Steve Kargl Reviewed by: bde Approved by: grog MFC after: 3 days Modified: head/lib/msun/src/e_j0.c head/lib/msun/src/e_j0f.c head/lib/msun/src/e_j1.c head/lib/msun/src/e_j1f.c head/lib/msun/src/e_jn.c Modified: head/lib/msun/src/e_j0.c ============================================================================== --- head/lib/msun/src/e_j0.c Sun Feb 10 08:41:52 2019 (r343952) +++ head/lib/msun/src/e_j0.c Sun Feb 10 08:46:07 2019 (r343953) @@ -93,8 +93,7 @@ __ieee754_j0(double x) if(ix>=0x7ff00000) return one/(x*x); x = fabs(x); if(ix >= 0x40000000) { /* |x| >= 2.0 */ - s = sin(x); - c = cos(x); + sincos(x, &s, &c); ss = s-c; cc = s+c; if(ix<0x7fe00000) { /* Make sure x+x does not overflow. */ @@ -173,8 +172,7 @@ __ieee754_y0(double x) * sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x)) * to compute the worse one. */ - s = sin(x); - c = cos(x); + sincos(x, &s, &c); ss = s-c; cc = s+c; /* Modified: head/lib/msun/src/e_j0f.c ============================================================================== --- head/lib/msun/src/e_j0f.c Sun Feb 10 08:41:52 2019 (r343952) +++ head/lib/msun/src/e_j0f.c Sun Feb 10 08:46:07 2019 (r343953) @@ -55,8 +55,7 @@ __ieee754_j0f(float x) if(ix>=0x7f800000) return one/(x*x); x = fabsf(x); if(ix >= 0x40000000) { /* |x| >= 2.0 */ - s = sinf(x); - c = cosf(x); + sincosf(x, &s, &c); ss = s-c; cc = s+c; if(ix<0x7f000000) { /* Make sure x+x does not overflow. */ @@ -128,8 +127,7 @@ __ieee754_y0f(float x) * sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x)) * to compute the worse one. */ - s = sinf(x); - c = cosf(x); + sincosf(x, &s, &c); ss = s-c; cc = s+c; /* Modified: head/lib/msun/src/e_j1.c ============================================================================== --- head/lib/msun/src/e_j1.c Sun Feb 10 08:41:52 2019 (r343952) +++ head/lib/msun/src/e_j1.c Sun Feb 10 08:46:07 2019 (r343953) @@ -94,8 +94,7 @@ __ieee754_j1(double x) if(ix>=0x7ff00000) return one/x; y = fabs(x); if(ix >= 0x40000000) { /* |x| >= 2.0 */ - s = sin(y); - c = cos(y); + sincos(y, &s, &c); ss = -s-c; cc = s-c; if(ix<0x7fe00000) { /* make sure y+y not overflow */ @@ -159,8 +158,7 @@ __ieee754_y1(double x) /* y1(x<0) = NaN and raise invalid exception. */ if(hx<0) return vzero/vzero; if(ix >= 0x40000000) { /* |x| >= 2.0 */ - s = sin(x); - c = cos(x); + sincos(x, &s, &c); ss = -s-c; cc = s-c; if(ix<0x7fe00000) { /* make sure x+x not overflow */ Modified: head/lib/msun/src/e_j1f.c ============================================================================== --- head/lib/msun/src/e_j1f.c Sun Feb 10 08:41:52 2019 (r343952) +++ head/lib/msun/src/e_j1f.c Sun Feb 10 08:46:07 2019 (r343953) @@ -56,8 +56,7 @@ __ieee754_j1f(float x) if(ix>=0x7f800000) return one/x; y = fabsf(x); if(ix >= 0x40000000) { /* |x| >= 2.0 */ - s = sinf(y); - c = cosf(y); + sincosf(y, &s, &c); ss = -s-c; cc = s-c; if(ix<0x7f000000) { /* make sure y+y not overflow */ @@ -114,8 +113,7 @@ __ieee754_y1f(float x) if(ix==0) return -one/vzero; if(hx<0) return vzero/vzero; if(ix >= 0x40000000) { /* |x| >= 2.0 */ - s = sinf(x); - c = cosf(x); + sincosf(x, &s, &c); ss = -s-c; cc = s-c; if(ix<0x7f000000) { /* make sure x+x not overflow */ Modified: head/lib/msun/src/e_jn.c ============================================================================== --- head/lib/msun/src/e_jn.c Sun Feb 10 08:41:52 2019 (r343952) +++ head/lib/msun/src/e_jn.c Sun Feb 10 08:46:07 2019 (r343953) @@ -54,7 +54,7 @@ double __ieee754_jn(int n, double x) { int32_t i,hx,ix,lx, sgn; - double a, b, temp, di; + double a, b, c, s, temp, di; double z, w; /* J(-n,x) = (-1)^n * J(n, x), J(n, -x) = (-1)^n * J(n, x) @@ -91,11 +91,12 @@ __ieee754_jn(int n, double x) * 2 -s+c -c-s * 3 s+c c-s */ + sincos(x, &s, &c); switch(n&3) { - case 0: temp = cos(x)+sin(x); break; - case 1: temp = -cos(x)+sin(x); break; - case 2: temp = -cos(x)-sin(x); break; - case 3: temp = cos(x)-sin(x); break; + case 0: temp = c+s; break; + case 1: temp = -c+s; break; + case 2: temp = -c-s; break; + case 3: temp = c-s; break; } b = invsqrtpi*temp/sqrt(x); } else { @@ -216,7 +217,7 @@ __ieee754_yn(int n, double x) { int32_t i,hx,ix,lx; int32_t sign; - double a, b, temp; + double a, b, c, s, temp; EXTRACT_WORDS(hx,lx,x); ix = 0x7fffffff&hx; @@ -248,11 +249,12 @@ __ieee754_yn(int n, double x) * 2 -s+c -c-s * 3 s+c c-s */ + sincos(x, &s, &c); switch(n&3) { - case 0: temp = sin(x)-cos(x); break; - case 1: temp = -sin(x)-cos(x); break; - case 2: temp = -sin(x)+cos(x); break; - case 3: temp = sin(x)+cos(x); break; + case 0: temp = s-c; break; + case 1: temp = -s-c; break; + case 2: temp = -s+c; break; + case 3: temp = s+c; break; } b = invsqrtpi*temp/sqrt(x); } else { From owner-svn-src-all@freebsd.org Sun Feb 10 08:14:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6B6FA14E45CB; Sun, 10 Feb 2019 08:14:07 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 08C126C15B; Sun, 10 Feb 2019 08:14:07 +0000 (UTC) (envelope-from manu@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E951CDBBE; Sun, 10 Feb 2019 08:14:06 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A8E6Qa040923; Sun, 10 Feb 2019 08:14:06 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A8E6dI040921; Sun, 10 Feb 2019 08:14:06 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201902100814.x1A8E6dI040921@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Sun, 10 Feb 2019 08:14:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343950 - in head/sys: arm64/conf conf X-SVN-Group: head X-SVN-Commit-Author: manu X-SVN-Commit-Paths: in head/sys: arm64/conf conf X-SVN-Commit-Revision: 343950 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 08C126C15B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 08:14:07 -0000 Author: manu Date: Sun Feb 10 08:14:06 2019 New Revision: 343950 URL: https://svnweb.freebsd.org/changeset/base/343950 Log: arm64: Fix compile when removing SOC_ROCKCHIP_* options Make every rockchip file depend on the multiple soc_rockchip options While here make rk_i2c and rk_gpio depend on their device options. Reported by: sbruno Modified: head/sys/arm64/conf/GENERIC head/sys/conf/files.arm64 Modified: head/sys/arm64/conf/GENERIC ============================================================================== --- head/sys/arm64/conf/GENERIC Sun Feb 10 07:54:46 2019 (r343949) +++ head/sys/arm64/conf/GENERIC Sun Feb 10 08:14:06 2019 (r343950) @@ -213,6 +213,8 @@ device gpioled device fdt_pinctrl device mv_gpio # Marvell GPIO controller device mvebu_pinctrl # Marvell Pinmux Controller +device rk_gpio # RockChip GPIO Controller +device rk_pinctrl # RockChip Pinmux Controller # I2C device aw_rsb # Allwinner Reduced Serial Bus Modified: head/sys/conf/files.arm64 ============================================================================== --- head/sys/conf/files.arm64 Sun Feb 10 07:54:46 2019 (r343949) +++ head/sys/conf/files.arm64 Sun Feb 10 08:14:06 2019 (r343950) @@ -263,20 +263,23 @@ cddl/dev/dtrace/aarch64/dtrace_asm.S optional dtrace cddl/dev/dtrace/aarch64/dtrace_subr.c optional dtrace compile-with "${DTRACE_C}" cddl/dev/fbt/aarch64/fbt_isa.c optional dtrace_fbt | dtraceall compile-with "${FBT_C}" -arm64/rockchip/rk_i2c.c optional rk_i2c fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/rk805.c optional rk805 fdt soc_rockchip_rk3328 -arm64/rockchip/rk_grf.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/rk_pinctrl.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/rk_gpio.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/clk/rk_cru.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/clk/rk_clk_armclk.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/clk/rk_clk_composite.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/clk/rk_clk_gate.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/clk/rk_clk_mux.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -arm64/rockchip/clk/rk_clk_pll.c optional fdt soc_rockchip_rk3328 soc_rockchip_rk3399 +# RockChip Drivers +arm64/rockchip/rk_i2c.c optional fdt rk_i2c soc_rockchip_rk3328 | fdt rk_i2c soc_rockchip_rk3399 +arm64/rockchip/rk805.c optional fdt rk805 soc_rockchip_rk3328 | fdt rk805 soc_rockchip_rk3399 +arm64/rockchip/rk_grf.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 +arm64/rockchip/rk_pinctrl.c optional fdt rk_pinctrl soc_rockchip_rk3328 | fdt rk_pinctrl soc_rockchip_rk3399 +arm64/rockchip/rk_gpio.c optional fdt rk_gpio soc_rockchip_rk3328 | fdt rk_gpio soc_rockchip_rk3399 +arm64/rockchip/if_dwc_rk.c optional fdt dwc_rk soc_rockchip_rk3328 | fdt dwc_rk soc_rockchip_rk3399 +dev/dwc/if_dwc.c optional fdt dwc_rk soc_rockchip_rk3328 | fdt dwc_rk soc_rockchip_rk3399 +dev/dwc/if_dwc_if.m optional fdt dwc_rk soc_rockchip_rk3328 | fdt dwc_rk soc_rockchip_rk3399 + +# RockChip Clock support +arm64/rockchip/clk/rk_cru.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 +arm64/rockchip/clk/rk_clk_armclk.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 +arm64/rockchip/clk/rk_clk_composite.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 +arm64/rockchip/clk/rk_clk_gate.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 +arm64/rockchip/clk/rk_clk_mux.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 +arm64/rockchip/clk/rk_clk_pll.c optional fdt soc_rockchip_rk3328 | fdt soc_rockchip_rk3399 arm64/rockchip/clk/rk3328_cru.c optional fdt soc_rockchip_rk3328 arm64/rockchip/clk/rk3399_cru.c optional fdt soc_rockchip_rk3399 arm64/rockchip/clk/rk3399_pmucru.c optional fdt soc_rockchip_rk3399 -arm64/rockchip/if_dwc_rk.c optional dwc_rk fdt soc_rockchip_rk3328 soc_rockchip_rk3399 -dev/dwc/if_dwc.c optional dwc_rk -dev/dwc/if_dwc_if.m optional dwc_rk From owner-svn-src-all@freebsd.org Sun Feb 10 08:41:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C0DC914E51CB; Sun, 10 Feb 2019 08:41:53 +0000 (UTC) (envelope-from ganbold@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 643726CDB2; Sun, 10 Feb 2019 08:41:53 +0000 (UTC) (envelope-from ganbold@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 579EDE0AB; Sun, 10 Feb 2019 08:41:53 +0000 (UTC) (envelope-from ganbold@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A8fr3T054746; Sun, 10 Feb 2019 08:41:53 GMT (envelope-from ganbold@FreeBSD.org) Received: (from ganbold@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A8frBi054745; Sun, 10 Feb 2019 08:41:53 GMT (envelope-from ganbold@FreeBSD.org) Message-Id: <201902100841.x1A8frBi054745@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ganbold set sender to ganbold@FreeBSD.org using -f From: Ganbold Tsagaankhuu Date: Sun, 10 Feb 2019 08:41:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343952 - head/sys/arm/allwinner X-SVN-Group: head X-SVN-Commit-Author: ganbold X-SVN-Commit-Paths: head/sys/arm/allwinner X-SVN-Commit-Revision: 343952 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 643726CDB2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 08:41:54 -0000 Author: ganbold Date: Sun Feb 10 08:41:52 2019 New Revision: 343952 URL: https://svnweb.freebsd.org/changeset/base/343952 Log: Enable necessary bits when activating interrupts. This allows reading some events from the interrupt status registers. These events are reported to devd via system "PMU" and subsystem "Battery", "AC" and "USB" such as plugged/unplugged, absent, charged and charging. Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D19116 Modified: head/sys/arm/allwinner/axp81x.c Modified: head/sys/arm/allwinner/axp81x.c ============================================================================== --- head/sys/arm/allwinner/axp81x.c Sun Feb 10 08:28:56 2019 (r343951) +++ head/sys/arm/allwinner/axp81x.c Sun Feb 10 08:41:52 2019 (r343952) @@ -65,9 +65,13 @@ MALLOC_DEFINE(M_AXP8XX_REG, "AXP8xx regulator", "AXP8x #define AXP_POWERSRC_ACIN (1 << 7) #define AXP_POWERSRC_VBUS (1 << 5) #define AXP_POWERSRC_VBAT (1 << 3) -#define AXP_POWERSRC_CHARING (1 << 2) +#define AXP_POWERSRC_CHARING (1 << 2) /* Charging Direction */ #define AXP_POWERSRC_SHORTED (1 << 1) #define AXP_POWERSRC_STARTUP (1 << 0) +#define AXP_POWERMODE 0x01 +#define AXP_POWERMODE_BAT_CHARGING (1 << 6) +#define AXP_POWERMODE_BAT_PRESENT (1 << 5) +#define AXP_POWERMODE_BAT_VALID (1 << 4) #define AXP_ICTYPE 0x03 #define AXP_POWERCTL1 0x10 #define AXP_POWERCTL1_DCDC7 (1 << 6) /* AXP813/818 only */ @@ -117,14 +121,47 @@ MALLOC_DEFINE(M_AXP8XX_REG, "AXP8xx regulator", "AXP8x #define AXP_POWERBAT 0x32 #define AXP_POWERBAT_SHUTDOWN (1 << 7) #define AXP_IRQEN1 0x40 +#define AXP_IRQEN1_ACIN_HI (1 << 6) +#define AXP_IRQEN1_ACIN_LO (1 << 5) +#define AXP_IRQEN1_VBUS_HI (1 << 3) +#define AXP_IRQEN1_VBUS_LO (1 << 2) #define AXP_IRQEN2 0x41 +#define AXP_IRQEN2_BAT_IN (1 << 7) +#define AXP_IRQEN2_BAT_NO (1 << 6) +#define AXP_IRQEN2_BATCHGC (1 << 3) +#define AXP_IRQEN2_BATCHGD (1 << 2) #define AXP_IRQEN3 0x42 #define AXP_IRQEN4 0x43 +#define AXP_IRQEN4_BATLVL_LO1 (1 << 1) +#define AXP_IRQEN4_BATLVL_LO0 (1 << 0) #define AXP_IRQEN5 0x44 #define AXP_IRQEN5_POKSIRQ (1 << 4) +#define AXP_IRQEN5_POKLIRQ (1 << 3) #define AXP_IRQEN6 0x45 +#define AXP_IRQSTAT1 0x48 +#define AXP_IRQSTAT1_ACIN_HI (1 << 6) +#define AXP_IRQSTAT1_ACIN_LO (1 << 5) +#define AXP_IRQSTAT1_VBUS_HI (1 << 3) +#define AXP_IRQSTAT1_VBUS_LO (1 << 2) +#define AXP_IRQSTAT2 0x49 +#define AXP_IRQSTAT2_BAT_IN (1 << 7) +#define AXP_IRQSTAT2_BAT_NO (1 << 6) +#define AXP_IRQSTAT2_BATCHGC (1 << 3) +#define AXP_IRQSTAT2_BATCHGD (1 << 2) +#define AXP_IRQSTAT3 0x4a +#define AXP_IRQSTAT4 0x4b +#define AXP_IRQSTAT4_BATLVL_LO1 (1 << 1) +#define AXP_IRQSTAT4_BATLVL_LO0 (1 << 0) #define AXP_IRQSTAT5 0x4c #define AXP_IRQSTAT5_POKSIRQ (1 << 4) +#define AXP_IRQEN5_POKLIRQ (1 << 3) +#define AXP_IRQSTAT6 0x4d +#define AXP_BATSENSE_HI 0x78 +#define AXP_BATSENSE_LO 0x79 +#define AXP_BATCHG_HI 0x7a +#define AXP_BATCHG_LO 0x7b +#define AXP_BATDISCHG_HI 0x7c +#define AXP_BATDISCHG_LO 0x7d #define AXP_GPIO0_CTRL 0x90 #define AXP_GPIO0LDO_CTRL 0x91 #define AXP_GPIO1_CTRL 0x92 @@ -138,7 +175,25 @@ MALLOC_DEFINE(M_AXP8XX_REG, "AXP8xx regulator", "AXP8x #define AXP_GPIO_FUNC_LDO_OFF 4 #define AXP_GPIO_SIGBIT 0x94 #define AXP_GPIO_PD 0x97 +#define AXP_FUEL_GAUGECTL 0xb8 +#define AXP_FUEL_GAUGECTL_EN (1 << 7) +#define AXP_BAT_CAP 0xb9 +#define AXP_BAT_CAP_VALID (1 << 7) +#define AXP_BAT_CAP_PERCENT 0x7f + +#define AXP_BAT_MAX_CAP_HI 0xe0 +#define AXP_BAT_MAX_CAP_VALID (1 << 7) +#define AXP_BAT_MAX_CAP_LO 0xe1 + +#define AXP_BAT_COULOMB_HI 0xe2 +#define AXP_BAT_COULOMB_VALID (1 << 7) +#define AXP_BAT_COULOMB_LO 0xe3 + +#define AXP_BAT_CAP_WARN 0xe6 +#define AXP_BAT_CAP_WARN_LV1 0xf0 /* Bits 4, 5, 6, 7 */ +#define AXP_BAT_CAP_WARN_LV2 0xf /* Bits 0, 1, 2, 3 */ + static const struct { const char *name; uint8_t ctrl_reg; @@ -710,6 +765,68 @@ axp8xx_intr(void *arg) dev = arg; + error = axp8xx_read(dev, AXP_IRQSTAT1, &val, 1); + if (error != 0) + return; + + if (val) { + if (bootverbose) + device_printf(dev, "AXP_IRQSTAT1 val: %x\n", val); + if (val & AXP_IRQSTAT1_ACIN_HI) + devctl_notify("PMU", "AC", "plugged", NULL); + if (val & AXP_IRQSTAT1_ACIN_LO) + devctl_notify("PMU", "AC", "unplugged", NULL); + if (val & AXP_IRQSTAT1_VBUS_HI) + devctl_notify("PMU", "USB", "plugged", NULL); + if (val & AXP_IRQSTAT1_VBUS_LO) + devctl_notify("PMU", "USB", "unplugged", NULL); + /* Acknowledge */ + axp8xx_write(dev, AXP_IRQSTAT1, val); + } + + error = axp8xx_read(dev, AXP_IRQSTAT2, &val, 1); + if (error != 0) + return; + + if (val) { + if (bootverbose) + device_printf(dev, "AXP_IRQSTAT2 val: %x\n", val); + if (val & AXP_IRQSTAT2_BATCHGD) + devctl_notify("PMU", "Battery", "charged", NULL); + if (val & AXP_IRQSTAT2_BATCHGC) + devctl_notify("PMU", "Battery", "charging", NULL); + if (val & AXP_IRQSTAT2_BAT_NO) + devctl_notify("PMU", "Battery", "absent", NULL); + if (val & AXP_IRQSTAT2_BAT_IN) + devctl_notify("PMU", "Battery", "plugged", NULL); + /* Acknowledge */ + axp8xx_write(dev, AXP_IRQSTAT2, val); + } + + error = axp8xx_read(dev, AXP_IRQSTAT3, &val, 1); + if (error != 0) + return; + + if (val) { + /* Acknowledge */ + axp8xx_write(dev, AXP_IRQSTAT3, val); + } + + error = axp8xx_read(dev, AXP_IRQSTAT4, &val, 1); + if (error != 0) + return; + + if (val) { + if (bootverbose) + device_printf(dev, "AXP_IRQSTAT4 val: %x\n", val); + if (val & AXP_IRQSTAT4_BATLVL_LO0) + devctl_notify("PMU", "Battery", "lower than level 2", NULL); + if (val & AXP_IRQSTAT4_BATLVL_LO1) + devctl_notify("PMU", "Battery", "lower than level 1", NULL); + /* Acknowledge */ + axp8xx_write(dev, AXP_IRQSTAT4, val); + } + error = axp8xx_read(dev, AXP_IRQSTAT5, &val, 1); if (error != 0) return; @@ -723,6 +840,15 @@ axp8xx_intr(void *arg) /* Acknowledge */ axp8xx_write(dev, AXP_IRQSTAT5, val); } + + error = axp8xx_read(dev, AXP_IRQSTAT6, &val, 1); + if (error != 0) + return; + + if (val) { + /* Acknowledge */ + axp8xx_write(dev, AXP_IRQSTAT6, val); + } } static device_t @@ -1105,12 +1231,24 @@ axp8xx_attach(device_t dev) } } - /* Enable IRQ on short power key press */ - axp8xx_write(dev, AXP_IRQEN1, 0); - axp8xx_write(dev, AXP_IRQEN2, 0); + /* Enable interrupts */ + axp8xx_write(dev, AXP_IRQEN1, + AXP_IRQEN1_VBUS_LO | + AXP_IRQEN1_VBUS_HI | + AXP_IRQEN1_ACIN_LO | + AXP_IRQEN1_ACIN_HI); + axp8xx_write(dev, AXP_IRQEN2, + AXP_IRQEN2_BATCHGD | + AXP_IRQEN2_BATCHGC | + AXP_IRQEN2_BAT_NO | + AXP_IRQEN2_BAT_IN); axp8xx_write(dev, AXP_IRQEN3, 0); - axp8xx_write(dev, AXP_IRQEN4, 0); - axp8xx_write(dev, AXP_IRQEN5, AXP_IRQEN5_POKSIRQ); + axp8xx_write(dev, AXP_IRQEN4, + AXP_IRQEN4_BATLVL_LO0 | + AXP_IRQEN4_BATLVL_LO1); + axp8xx_write(dev, AXP_IRQEN5, + AXP_IRQEN5_POKSIRQ | + AXP_IRQEN5_POKLIRQ); axp8xx_write(dev, AXP_IRQEN6, 0); /* Install interrupt handler */ From owner-svn-src-all@freebsd.org Sun Feb 10 08:38:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 01F7114E5013; Sun, 10 Feb 2019 08:38:43 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-it1-f195.google.com (mail-it1-f195.google.com [209.85.166.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A50976CBCA; Sun, 10 Feb 2019 08:38:41 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-it1-f195.google.com with SMTP id r6so19287189itk.0; Sun, 10 Feb 2019 00:38:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc:content-transfer-encoding; bh=ocw3MvI1DTBXGQpK8O3DFkbY7WTUDSPscMaNKWIOFyE=; b=fmrV4Qcs/jcfbhZjGF8p2/A7HmOzgWIAQ3j4KWXZ9QlMdlAELq23pThxcgpEN1NRlh i2TBxB5B65B+cnUWgcZK2eTXiHQycR6mvvYZAmYwC6FBWHpWUMt0burShPgclD/Xc0NR VzNMcu4omWpJfH5TRGyGX+zP3bnSYf9yCynId75t01qwsqV49+XesS0SJvkOJcFNKeuW kTV/l3SVmHf9PF4wzotadNjkr2b3mQjrbffdLYEVXEITvbABstfqvxgx+Q0BFqcTbFfc EigLmF3CTRBbR7ES7kYlMmQXahzxhBe+Kx3MMJIT3EScoBiOxWK8qQey7ZqB6sSeibvs +msw== X-Gm-Message-State: AHQUAuYc7SVbIrpd6h3H4RThFJMMaP6Ip9Am+GQcI6J2yxGCtRzbNltN 3zjv7BMDIX2J54dLS9LroHvyyqA/ X-Google-Smtp-Source: AHgI3IbkfOKiH97hKGLHPv986mwaBYdEyKve3URzqoeJdNo/LIbRijdD2ArK4X+CHOXRAl72n5NJMQ== X-Received: by 2002:a6b:f70a:: with SMTP id k10mr2213313iog.68.1549787915271; Sun, 10 Feb 2019 00:38:35 -0800 (PST) Received: from mail-it1-f172.google.com (mail-it1-f172.google.com. [209.85.166.172]) by smtp.gmail.com with ESMTPSA id z1sm2924144ioi.77.2019.02.10.00.38.34 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 10 Feb 2019 00:38:34 -0800 (PST) Received: by mail-it1-f172.google.com with SMTP id a6so19176249itl.4; Sun, 10 Feb 2019 00:38:34 -0800 (PST) X-Received: by 2002:a02:4c4a:: with SMTP id a71mr2421410jab.104.1549787914779; Sun, 10 Feb 2019 00:38:34 -0800 (PST) MIME-Version: 1.0 References: <201902041655.x14GtOIr046072@repo.freebsd.org> <6436189F-037C-4AB0-A59C-BE68A781FB30@fh-muenster.de> In-Reply-To: <6436189F-037C-4AB0-A59C-BE68A781FB30@fh-muenster.de> Reply-To: cem@freebsd.org From: Conrad Meyer Date: Sun, 10 Feb 2019 00:38:24 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r343746 - head/sys/conf To: Michael Tuexen Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: A50976CBCA X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; spf=pass (mx1.freebsd.org: domain of csecem@gmail.com designates 209.85.166.195 as permitted sender) smtp.mailfrom=csecem@gmail.com X-Spamd-Result: default: False [-3.81 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[cem@freebsd.org]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; REPLYTO_ADDR_EQ_FROM(0.00)[]; RCVD_COUNT_THREE(0.00)[4]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; NEURAL_HAM_SHORT(-0.64)[-0.639,0]; FORGED_SENDER(0.30)[cem@freebsd.org,csecem@gmail.com]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; TAGGED_FROM(0.00)[]; FROM_NEQ_ENVFROM(0.00)[cem@freebsd.org,csecem@gmail.com]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; MIME_TRACE(0.00)[0:+]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[freebsd.org]; RCVD_TLS_LAST(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[195.166.85.209.list.dnswl.org : 127.0.5.0]; IP_SCORE(-1.16)[ipnet: 209.85.128.0/17(-3.78), asn: 15169(-1.95), country: US(-0.07)]; RWL_MAILSPIKE_POSSIBLE(0.00)[195.166.85.209.rep.mailspike.net : 127.0.0.17] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 08:38:43 -0000 Hi Michael, I don't know. You can 'pkg install amd64-xtoolchain-gcc' and 'make buildkernel KERNCONF=3DGENERIC CROSS_TOOLCHAIN=3Damd64-gcc' if you're interested in trying it. (I'm not sure enabling coverage globally in GENERIC is appropriate even if it did not break boot =E2=80=94 it's usually expensive, and while GENERIC is already slow, that doesn't mean we can just make it 10x slower.) Best, Conrad On Sun, Feb 10, 2019 at 12:03 AM Michael Tuexen wro= te: > > > On 10. Feb 2019, at 08:50, Conrad Meyer wrote: > > > > Hi Andrew, > > > > This makes it compile, but instead of a build failure the kernel is > > broken hard at runtime in early boot with GCC < 8.1. E.g., > > amd64-xtoolchain-gcc standard cross-toolchain is still on GCC 6.4.0. > > > > HEAD GENERIC has been broken in one form or another for xtoolchain GCC > > since r343713 (Feb 3), so I'm going to go ahead and turn this option > > off in GENERIC. Feel free to reenable when you've tested that it > > works. > Hi Conrad, > > does https://reviews.freebsd.org/D19135 fix the issue you are observing? > > Best regards > Michael > > > > Best, > > Conrad > > > > On Mon, Feb 4, 2019 at 8:55 AM Andrew Turner wrote= : > >> > >> Author: andrew > >> Date: Mon Feb 4 16:55:24 2019 > >> New Revision: 343746 > >> URL: https://svnweb.freebsd.org/changeset/base/343746 > >> > >> Log: > >> Only enable trace-cmp on Clang and modern GCC. > >> > >> It's was only added to GCC 8.1 so don't try to enable it for earlier > >> releases. > >> > >> Reported by: lwhsu > >> Sponsored by: DARPA, AFRL > >> > >> Modified: > >> head/sys/conf/files > >> head/sys/conf/kern.pre.mk > >> > >> Modified: head/sys/conf/files > >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > >> --- head/sys/conf/files Mon Feb 4 16:13:41 2019 (r343745) > >> +++ head/sys/conf/files Mon Feb 4 16:55:24 2019 (r343746) > >> @@ -3808,7 +3808,7 @@ kern/kern_idle.c standard > >> kern/kern_intr.c standard > >> kern/kern_jail.c standard > >> kern/kern_kcov.c optional kcov \ > >> - compile-with "${NORMAL_C} -fno-sanitize-coverage=3D= trace-pc,trace-cmp" > >> + compile-with "${NORMAL_C} -fno-sanitize=3Dall" > >> kern/kern_khelp.c standard > >> kern/kern_kthread.c standard > >> kern/kern_ktr.c optional ktr > >> > >> Modified: head/sys/conf/kern.pre.mk > >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > >> --- head/sys/conf/kern.pre.mk Mon Feb 4 16:13:41 2019 (r3437= 45) > >> +++ head/sys/conf/kern.pre.mk Mon Feb 4 16:55:24 2019 (r3437= 46) > >> @@ -120,7 +120,12 @@ SAN_CFLAGS+=3D -fsanitize=3Dundefined > >> > >> COVERAGE_ENABLED!=3D grep COVERAGE opt_global.h || true ; echo > >> .if !empty(COVERAGE_ENABLED) > >> +.if ${COMPILER_TYPE} =3D=3D "clang" || \ > >> + (${COMPILER_TYPE} =3D=3D "gcc" && ${COMPILER_VERSION} >=3D 80100) > >> SAN_CFLAGS+=3D -fsanitize-coverage=3Dtrace-pc,trace-cmp > >> +.else > >> +SAN_CFLAGS+=3D -fsanitize-coverage=3Dtrace-pc > >> +.endif > >> .endif > >> > >> CFLAGS+=3D ${SAN_CFLAGS} > >> > > > From owner-svn-src-all@freebsd.org Sun Feb 10 05:40:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6FEE14DF336; Sun, 10 Feb 2019 05:40:29 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 650C095AF4; Sun, 10 Feb 2019 05:40:29 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 56014C049; Sun, 10 Feb 2019 05:40:29 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A5eTiJ058808; Sun, 10 Feb 2019 05:40:29 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A5eTHH058807; Sun, 10 Feb 2019 05:40:29 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902100540.x1A5eTHH058807@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 10 Feb 2019 05:40:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343947 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 343947 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 650C095AF4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.92 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.92)[-0.924,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 05:40:30 -0000 Author: kib Date: Sun Feb 10 05:40:28 2019 New Revision: 343947 URL: https://svnweb.freebsd.org/changeset/base/343947 Log: MFC r343724: Do not call PHOLD() while owning the allproc_lock sx. Modified: stable/12/sys/kern/kern_proc.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/kern_proc.c ============================================================================== --- stable/12/sys/kern/kern_proc.c Sat Feb 9 23:19:33 2019 (r343946) +++ stable/12/sys/kern/kern_proc.c Sun Feb 10 05:40:28 2019 (r343947) @@ -3122,8 +3122,8 @@ allproc_loop: PROC_UNLOCK(p); continue; } - _PHOLD(p); sx_xunlock(&allproc_lock); + _PHOLD(p); r = thread_single(p, SINGLE_ALLPROC); if (r != 0) restart = true; From owner-svn-src-all@freebsd.org Sun Feb 10 05:42:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A683E14DF4DB; Sun, 10 Feb 2019 05:42:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D52C95E26; Sun, 10 Feb 2019 05:42:02 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3F3E8C0C9; Sun, 10 Feb 2019 05:42:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A5g2qm063745; Sun, 10 Feb 2019 05:42:02 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A5g2O1063744; Sun, 10 Feb 2019 05:42:02 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902100542.x1A5g2O1063744@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 10 Feb 2019 05:42:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343948 - stable/11/sys/kern X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/sys/kern X-SVN-Commit-Revision: 343948 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4D52C95E26 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.92 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.92)[-0.924,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 05:42:02 -0000 Author: kib Date: Sun Feb 10 05:42:01 2019 New Revision: 343948 URL: https://svnweb.freebsd.org/changeset/base/343948 Log: MFC r343724: Do not call PHOLD() while owning the allproc_lock sx. Modified: stable/11/sys/kern/kern_proc.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/kern/kern_proc.c ============================================================================== --- stable/11/sys/kern/kern_proc.c Sun Feb 10 05:40:28 2019 (r343947) +++ stable/11/sys/kern/kern_proc.c Sun Feb 10 05:42:01 2019 (r343948) @@ -3079,8 +3079,8 @@ allproc_loop: PROC_UNLOCK(p); continue; } - _PHOLD(p); sx_xunlock(&allproc_lock); + _PHOLD(p); r = thread_single(p, SINGLE_ALLPROC); if (r != 0) restart = true; From owner-svn-src-all@freebsd.org Sun Feb 10 07:50:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 07BB814E381F; Sun, 10 Feb 2019 07:50:38 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-it1-f194.google.com (mail-it1-f194.google.com [209.85.166.194]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C2FA76B23E; Sun, 10 Feb 2019 07:50:36 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-it1-f194.google.com with SMTP id i145so19086441ita.4; Sat, 09 Feb 2019 23:50:36 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=aoGkjPECTapsimFTH4Faq6UkLCFEpcdN7qPO3OGUHBM=; b=ZqtztxC87ryJHjCw8Zt1FQOFq5PoGMvtzvtJig0hvxPP7LAFpm2md9rzQrNcPDO+un e9pWBRRz/AoVPiiEhLeZR16vTOnz6NnAhchSDt0eDCTY9xQNvwdTwFWL8A3V8eEc2wex G2sgyiWPIS72LskfD5uLsVMiMjV/v4bluWSDuPXNcbvI9mViVx8KmaqnM+DrVBgSJTlu GLBlarP0bXkpbzW9MKlJ+TMM4YKZsdkxF/Sg//ZprjjhZFafHe/v0DLij9ASTfuqz7b5 C0ge0/katgA+ubjiUuj9li59LCTHQ+Id4ubaO9uW18eo67xPyPI74f8qfo8IlEdkb1yZ eK0Q== X-Gm-Message-State: AHQUAubAXwiv/+OYrKYw9u/VFG5Zb3Jmo72HDT/vt+bhEYbtBy9hq6pr TuXE3TIFfKPtvRjWoYrAVP+vLvHW X-Google-Smtp-Source: AHgI3IZR/ImzkhgCFvvXo3QyetKK6AeGWSK3126n6SI17YlrQcWo2tX985avyjIBsM6/DqBsAD8LTQ== X-Received: by 2002:a24:59ca:: with SMTP id p193mr3367432itb.63.1549785029979; Sat, 09 Feb 2019 23:50:29 -0800 (PST) Received: from mail-it1-f180.google.com (mail-it1-f180.google.com. [209.85.166.180]) by smtp.gmail.com with ESMTPSA id c31sm3557751itd.25.2019.02.09.23.50.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 09 Feb 2019 23:50:29 -0800 (PST) Received: by mail-it1-f180.google.com with SMTP id x124so12869223itd.1; Sat, 09 Feb 2019 23:50:29 -0800 (PST) X-Received: by 2002:a5d:8610:: with SMTP id f16mr551587iol.233.1549785029108; Sat, 09 Feb 2019 23:50:29 -0800 (PST) MIME-Version: 1.0 References: <201902041655.x14GtOIr046072@repo.freebsd.org> In-Reply-To: <201902041655.x14GtOIr046072@repo.freebsd.org> Reply-To: cem@freebsd.org From: Conrad Meyer Date: Sat, 9 Feb 2019 23:50:18 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r343746 - head/sys/conf To: Andrew Turner Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: C2FA76B23E X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; spf=pass (mx1.freebsd.org: domain of csecem@gmail.com designates 209.85.166.194 as permitted sender) smtp.mailfrom=csecem@gmail.com X-Spamd-Result: default: False [-4.00 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[cem@freebsd.org]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; REPLYTO_ADDR_EQ_FROM(0.00)[]; RCVD_COUNT_THREE(0.00)[4]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; NEURAL_HAM_SHORT(-0.68)[-0.685,0]; FORGED_SENDER(0.30)[cem@freebsd.org,csecem@gmail.com]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; TAGGED_FROM(0.00)[]; FROM_NEQ_ENVFROM(0.00)[cem@freebsd.org,csecem@gmail.com]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; MIME_TRACE(0.00)[0:+]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[freebsd.org]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; IP_SCORE(-1.31)[ip: (-0.74), ipnet: 209.85.128.0/17(-3.78), asn: 15169(-1.95), country: US(-0.07)]; RCVD_IN_DNSWL_NONE(0.00)[194.166.85.209.list.dnswl.org : 127.0.5.0]; RWL_MAILSPIKE_POSSIBLE(0.00)[194.166.85.209.rep.mailspike.net : 127.0.0.17] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 07:50:38 -0000 Hi Andrew, This makes it compile, but instead of a build failure the kernel is broken hard at runtime in early boot with GCC < 8.1. E.g., amd64-xtoolchain-gcc standard cross-toolchain is still on GCC 6.4.0. HEAD GENERIC has been broken in one form or another for xtoolchain GCC since r343713 (Feb 3), so I'm going to go ahead and turn this option off in GENERIC. Feel free to reenable when you've tested that it works. Best, Conrad On Mon, Feb 4, 2019 at 8:55 AM Andrew Turner wrote: > > Author: andrew > Date: Mon Feb 4 16:55:24 2019 > New Revision: 343746 > URL: https://svnweb.freebsd.org/changeset/base/343746 > > Log: > Only enable trace-cmp on Clang and modern GCC. > > It's was only added to GCC 8.1 so don't try to enable it for earlier > releases. > > Reported by: lwhsu > Sponsored by: DARPA, AFRL > > Modified: > head/sys/conf/files > head/sys/conf/kern.pre.mk > > Modified: head/sys/conf/files > ============================================================================== > --- head/sys/conf/files Mon Feb 4 16:13:41 2019 (r343745) > +++ head/sys/conf/files Mon Feb 4 16:55:24 2019 (r343746) > @@ -3808,7 +3808,7 @@ kern/kern_idle.c standard > kern/kern_intr.c standard > kern/kern_jail.c standard > kern/kern_kcov.c optional kcov \ > - compile-with "${NORMAL_C} -fno-sanitize-coverage=trace-pc,trace-cmp" > + compile-with "${NORMAL_C} -fno-sanitize=all" > kern/kern_khelp.c standard > kern/kern_kthread.c standard > kern/kern_ktr.c optional ktr > > Modified: head/sys/conf/kern.pre.mk > ============================================================================== > --- head/sys/conf/kern.pre.mk Mon Feb 4 16:13:41 2019 (r343745) > +++ head/sys/conf/kern.pre.mk Mon Feb 4 16:55:24 2019 (r343746) > @@ -120,7 +120,12 @@ SAN_CFLAGS+= -fsanitize=undefined > > COVERAGE_ENABLED!= grep COVERAGE opt_global.h || true ; echo > .if !empty(COVERAGE_ENABLED) > +.if ${COMPILER_TYPE} == "clang" || \ > + (${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 80100) > SAN_CFLAGS+= -fsanitize-coverage=trace-pc,trace-cmp > +.else > +SAN_CFLAGS+= -fsanitize-coverage=trace-pc > +.endif > .endif > > CFLAGS+= ${SAN_CFLAGS} > From owner-svn-src-all@freebsd.org Sun Feb 10 07:54:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8EAEF14E3D9F; Sun, 10 Feb 2019 07:54:47 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 32ECC6B897; Sun, 10 Feb 2019 07:54:47 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2533DD852; Sun, 10 Feb 2019 07:54:47 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A7sl3m030476; Sun, 10 Feb 2019 07:54:47 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A7skZo030474; Sun, 10 Feb 2019 07:54:46 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902100754.x1A7skZo030474@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Sun, 10 Feb 2019 07:54:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343949 - in head/sys: amd64/conf arm64/conf X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: in head/sys: amd64/conf arm64/conf X-SVN-Commit-Revision: 343949 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 32ECC6B897 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 07:54:47 -0000 Author: cem Date: Sun Feb 10 07:54:46 2019 New Revision: 343949 URL: https://svnweb.freebsd.org/changeset/base/343949 Log: Revert r343713 temporarily The COVERAGE option breaks xtoolchain-gcc GENERIC kernel early boot extremely badly and hasn't been fixed for the ~week since it was committed. Please enable for GENERIC only when it doesn't do that. Related fallout reported by: lwhsu, tuexen (pr 235611) Modified: head/sys/amd64/conf/GENERIC head/sys/arm64/conf/GENERIC Modified: head/sys/amd64/conf/GENERIC ============================================================================== --- head/sys/amd64/conf/GENERIC Sun Feb 10 05:42:01 2019 (r343948) +++ head/sys/amd64/conf/GENERIC Sun Feb 10 07:54:46 2019 (r343949) @@ -102,8 +102,8 @@ options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default # Kernel Sanitizers -options COVERAGE # Generic kernel coverage. Used by KCOV -options KCOV # Kernel Coverage Sanitizer +#options COVERAGE # Generic kernel coverage. Used by KCOV +#options KCOV # Kernel Coverage Sanitizer # Warning: KUBSAN can result in a kernel too large for loader to load #options KUBSAN # Kernel Undefined Behavior Sanitizer Modified: head/sys/arm64/conf/GENERIC ============================================================================== --- head/sys/arm64/conf/GENERIC Sun Feb 10 05:42:01 2019 (r343948) +++ head/sys/arm64/conf/GENERIC Sun Feb 10 07:54:46 2019 (r343949) @@ -94,8 +94,8 @@ options USB_DEBUG # enable debug msgs options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default # Kernel Sanitizers -options COVERAGE # Generic kernel coverage. Used by KCOV -options KCOV # Kernel Coverage Sanitizer +#options COVERAGE # Generic kernel coverage. Used by KCOV +#options KCOV # Kernel Coverage Sanitizer # Warning: KUBSAN can result in a kernel too large for loader to load #options KUBSAN # Kernel Undefined Behavior Sanitizer From owner-svn-src-all@freebsd.org Sun Feb 10 08:03:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E811914E41DE; Sun, 10 Feb 2019 08:03:25 +0000 (UTC) (envelope-from tuexen@fh-muenster.de) Received: from drew.franken.de (mail-n.franken.de [193.175.24.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.franken.de", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7050F6BCC3; Sun, 10 Feb 2019 08:03:25 +0000 (UTC) (envelope-from tuexen@fh-muenster.de) Received: from [IPv6:2003:cd:6f38:4a00:e440:5ba1:4fac:f076] (p200300CD6F384A00E4405BA14FACF076.dip0.t-ipconnect.de [IPv6:2003:cd:6f38:4a00:e440:5ba1:4fac:f076]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTPSA id 3F7B8721E2822; Sun, 10 Feb 2019 09:03:15 +0100 (CET) From: Michael Tuexen Message-Id: <6436189F-037C-4AB0-A59C-BE68A781FB30@fh-muenster.de> Content-Type: multipart/signed; boundary="Apple-Mail=_CF92B023-D3B5-4D79-BB79-E26CD1C1172B"; protocol="application/pkcs7-signature"; micalg=sha-256 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r343746 - head/sys/conf Date: Sun, 10 Feb 2019 09:03:14 +0100 In-Reply-To: Cc: Andrew Turner , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org To: Conrad Meyer References: <201902041655.x14GtOIr046072@repo.freebsd.org> X-Mailer: Apple Mail (2.3445.102.3) X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=disabled version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on mail-n.franken.de X-Rspamd-Queue-Id: 7050F6BCC3 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.92 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.92)[-0.924,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 08:03:26 -0000 --Apple-Mail=_CF92B023-D3B5-4D79-BB79-E26CD1C1172B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On 10. Feb 2019, at 08:50, Conrad Meyer wrote: >=20 > Hi Andrew, >=20 > This makes it compile, but instead of a build failure the kernel is > broken hard at runtime in early boot with GCC < 8.1. E.g., > amd64-xtoolchain-gcc standard cross-toolchain is still on GCC 6.4.0. >=20 > HEAD GENERIC has been broken in one form or another for xtoolchain GCC > since r343713 (Feb 3), so I'm going to go ahead and turn this option > off in GENERIC. Feel free to reenable when you've tested that it > works. Hi Conrad, does https://reviews.freebsd.org/D19135 fix the issue you are observing? Best regards Michael >=20 > Best, > Conrad >=20 > On Mon, Feb 4, 2019 at 8:55 AM Andrew Turner = wrote: >>=20 >> Author: andrew >> Date: Mon Feb 4 16:55:24 2019 >> New Revision: 343746 >> URL: https://svnweb.freebsd.org/changeset/base/343746 >>=20 >> Log: >> Only enable trace-cmp on Clang and modern GCC. >>=20 >> It's was only added to GCC 8.1 so don't try to enable it for earlier >> releases. >>=20 >> Reported by: lwhsu >> Sponsored by: DARPA, AFRL >>=20 >> Modified: >> head/sys/conf/files >> head/sys/conf/kern.pre.mk >>=20 >> Modified: head/sys/conf/files >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/conf/files Mon Feb 4 16:13:41 2019 (r343745) >> +++ head/sys/conf/files Mon Feb 4 16:55:24 2019 (r343746) >> @@ -3808,7 +3808,7 @@ kern/kern_idle.c standard >> kern/kern_intr.c standard >> kern/kern_jail.c standard >> kern/kern_kcov.c optional kcov \ >> - compile-with "${NORMAL_C} = -fno-sanitize-coverage=3Dtrace-pc,trace-cmp" >> + compile-with "${NORMAL_C} -fno-sanitize=3Dall" >> kern/kern_khelp.c standard >> kern/kern_kthread.c standard >> kern/kern_ktr.c optional ktr >>=20 >> Modified: head/sys/conf/kern.pre.mk >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/conf/kern.pre.mk Mon Feb 4 16:13:41 2019 = (r343745) >> +++ head/sys/conf/kern.pre.mk Mon Feb 4 16:55:24 2019 = (r343746) >> @@ -120,7 +120,12 @@ SAN_CFLAGS+=3D -fsanitize=3Dundefined >>=20 >> COVERAGE_ENABLED!=3D grep COVERAGE opt_global.h || true ; echo >> .if !empty(COVERAGE_ENABLED) >> +.if ${COMPILER_TYPE} =3D=3D "clang" || \ >> + (${COMPILER_TYPE} =3D=3D "gcc" && ${COMPILER_VERSION} >=3D = 80100) >> SAN_CFLAGS+=3D -fsanitize-coverage=3Dtrace-pc,trace-cmp >> +.else >> +SAN_CFLAGS+=3D -fsanitize-coverage=3Dtrace-pc >> +.endif >> .endif >>=20 >> CFLAGS+=3D ${SAN_CFLAGS} >>=20 >=20 --Apple-Mail=_CF92B023-D3B5-4D79-BB79-E26CD1C1172B Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEJAw ggTVMIIDvaADAgECAghQTsb1PRG0ZDANBgkqhkiG9w0BAQsFADBxMQswCQYDVQQGEwJERTEcMBoG A1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRl cjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNMTQwNzIyMTIwODI2WhcN MTkwNzA5MjM1OTAwWjBaMQswCQYDVQQGEwJERTETMBEGA1UEChMKREZOLVZlcmVpbjEQMA4GA1UE CxMHREZOLVBLSTEkMCIGA1UEAxMbREZOLVZlcmVpbiBQQ0EgR2xvYmFsIC0gRzAxMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6ZvDZ4X5Da71jVTDllA1PWLpbkztlNcAW5UidNQg6zSP 1uzAMQQLmYHiphTSUqAoI4SLdIkEXlvg4njBeMsWyyg1OXstkEXQ7aAAeny/Sg4bAMOG6VwrMRF7 DPOCJEOMHDiLamgAmu7cT3ir0sYTm3at7t4m6O8Br3QPwQmi9mvOvdPNFDBP9eXjpMhim4IaAycw DQJlYE3t0QkjKpY1WCfTdsZxtpAdxO3/NYZ9bzOz2w/FEcKKg6GUXUFr2NIQ9Uz9ylGs2b3vkoO7 2uuLFlZWQ8/h1RM9ph8nMM1JVNvJEzSacXXFbOqnC5j5IZ0nrz6jOTlIaoytyZn7wxLyvQIDAQAB o4IBhjCCAYIwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRJt8bP6D0ff+pEexMp9/EKcD7eZDAf BgNVHSMEGDAWgBQxw3kbuvVT1xfgiXotF2wKsyudMzASBgNVHRMBAf8ECDAGAQH/AgECMGIGA1Ud IARbMFkwEQYPKwYBBAGBrSGCLAEBBAICMBEGDysGAQQBga0hgiwBAQQDADARBg8rBgEEAYGtIYIs AQEEAwEwDwYNKwYBBAGBrSGCLAEBBDANBgsrBgEEAYGtIYIsHjA+BgNVHR8ENzA1MDOgMaAvhi1o dHRwOi8vcGtpMDMzNi50ZWxlc2VjLmRlL3JsL0RUX1JPT1RfQ0FfMi5jcmwweAYIKwYBBQUHAQEE bDBqMCwGCCsGAQUFBzABhiBodHRwOi8vb2NzcDAzMzYudGVsZXNlYy5kZS9vY3NwcjA6BggrBgEF BQcwAoYuaHR0cDovL3BraTAzMzYudGVsZXNlYy5kZS9jcnQvRFRfUk9PVF9DQV8yLmNlcjANBgkq hkiG9w0BAQsFAAOCAQEAYyAo/ZwhhnK+OUZZOTIlvKkBmw3Myn1BnIZtCm4ssxNZdbEzkhthJxb/ w7LVNYL7hCoBSb1mu2YvssIGXW4/buMBWlvKQ2NclbbhMacf1QdfTeZlgk4y+cN8ekvNTVx07iHy dQLsUj7SyWrTkCNuSWc1vn9NVqTszC/Pt6GXqHI+ybxA1lqkCD3WvILDt7cyjrEsjmpttzUCGc/1 OURYY6ckABCwu/xOr24vOLulV0k/2G5QbyyXltwdRpplic+uzPLl2Z9Tsz6hL5Kp2AvGhB8Exuse 6J99tXulAvEkxSRjETTMWpMgKnmIOiVCkKllO3yG0xIVIyn8LNrMOVtUFzCCBaIwggSKoAMCAQIC BxekJKEJSDMwDQYJKoZIhvcNAQELBQAwWjELMAkGA1UEBhMCREUxEzARBgNVBAoTCkRGTi1WZXJl aW4xEDAOBgNVBAsTB0RGTi1QS0kxJDAiBgNVBAMTG0RGTi1WZXJlaW4gUENBIEdsb2JhbCAtIEcw MTAeFw0xNDA1MjcxNDU0MDlaFw0xOTA3MDkyMzU5MDBaMIHGMQswCQYDVQQGEwJERTEcMBoGA1UE CBMTTm9yZHJoZWluLVdlc3RmYWxlbjERMA8GA1UEBxMITXVlbnN0ZXIxIDAeBgNVBAoTF0ZhY2ho b2Noc2NodWxlIE11ZW5zdGVyMSMwIQYDVQQLExpEYXRlbnZlcmFyYmVpdHVuZ3N6ZW50cmFsZTEd MBsGA1UEAxMURkggTXVlbnN0ZXIgQ0EgLSBHMDExIDAeBgkqhkiG9w0BCQEWEWNhQGZoLW11ZW5z dGVyLmRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuHlsrvBs7CL9IqMH9r//QU9E pghTV/3skHuQZ3DpNY+lyJWOW5zbtUubgXt7lYHpIE4d4CclTZWqCHwoAI6gqzSSGjUKuX6/0ui/ LhXmlDvCBfwuER+T+3/R59hlLnhI5iYYPQiNywQIa3wJhBLTZrlXw8nDdjI54MAzcVDUX7l21sbo ZIA6idM7SXmshxoRQ6xsfPHskrceNMcvtHNDhVnVscwRUJQUR55fs0X7Y93PasugWPv3xmgNr1da Cq94eV+nslNU/GJaT9TQ3uG8pagLXl9NbDNkHIrvFAD5zXO0m/d00I4QhUVQyEtwnTegDqcM+WFh JXensgnZhWe6bwIDAQABo4IB/jCCAfowEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMC AQYwEQYDVR0gBAowCDAGBgRVHSAAMB0GA1UdDgQWBBQK81u85DGA1jVCiabTw8833tHf1zAfBgNV HSMEGDAWgBRJt8bP6D0ff+pEexMp9/EKcD7eZDAcBgNVHREEFTATgRFjYUBmaC1tdWVuc3Rlci5k ZTCBiAYDVR0fBIGAMH4wPaA7oDmGN2h0dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3Qt Y2EvcHViL2NybC9jYWNybC5jcmwwPaA7oDmGN2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZ2xvYmFs LXJvb3QtY2EvcHViL2NybC9jYWNybC5jcmwwgdcGCCsGAQUFBwEBBIHKMIHHMDMGCCsGAQUFBzAB hidodHRwOi8vb2NzcC5wY2EuZGZuLmRlL09DU1AtU2VydmVyL09DU1AwRwYIKwYBBQUHMAKGO2h0 dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3QtY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0 MEcGCCsGAQUFBzAChjtodHRwOi8vY2RwMi5wY2EuZGZuLmRlL2dsb2JhbC1yb290LWNhL3B1Yi9j YWNlcnQvY2FjZXJ0LmNydDANBgkqhkiG9w0BAQsFAAOCAQEA3kcDNdZKb7kSD7s1ly2qa/2QbQe+ ld3LhZeOcfysdLtN8oweBmgT3MYoZ+D9c+SoUWJAwTKPB15DoGy+fWhelXTpQrqxIGb4ISr1JCjg slnmMUva0xjwZGxojZ9gE1bi18xfKw3+dMpwCLt6LbLTjr/tyH6otacwr2tZzuuJIUAORnefwTcr vmB21n/BEQH/ZXruWu8lSO3L9YAmQB6ViaZFCpn2sMmOLACdoWxmUQb3QAjsa327jHUjsz53k9q5 Zrx/g+zOg5s1Wmy2JOlLQMUIZXXf0/6rB5Fr2llx7dBG/Uk7NhZdNy7OzNzci0C4Wnkd8rDVEWHG hH2gfpcTfjCCBg0wggT1oAMCAQICBxuZiHQ3saMwDQYJKoZIhvcNAQELBQAwgcYxCzAJBgNVBAYT AkRFMRwwGgYDVQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEgMB4G A1UEChMXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0dW5n c3plbnRyYWxlMR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJARYR Y2FAZmgtbXVlbnN0ZXIuZGUwHhcNMTYwNzA0MDcwNjEzWhcNMTkwNzA0MDcwNjEzWjB8MQswCQYD VQQGEwJERTEgMB4GA1UECgwXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxMjAwBgNVBAsMKUZhY2hi ZXJlaWNoIEVsZWt0cm90ZWNobmlrIHVuZCBJbmZvcm1hdGlrMRcwFQYDVQQDDA5NaWNoYWVsIFR1 ZXhlbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMyaGlBt2ZtuF8QP8zYNrGxXC+es PMajIPl+hu1LGHnN2BJ3J5ZMN44BOZw3n6LO1FaAgO8D4xU4/AELecX6VxJZ2zOOSD8uTYO4OnUu 24hkjFUQAj13tT644AKUQMMBpgj7wC52V5Jij+mZX/t1S38/WFiCGnirt4xTNi5OmN4K+VNZfG4x 0msDqFjJX70rF1y09/Mylu1M/Y0tu/I9DqhwDQT4LBOvyyaAlhSJ8Jb8m8YTt5xlOzrXlBmj4pKs 74y7C2IKRw4tFozGX1cf1LVEs2eBCb5iUwXrlcMipwm62sJ38GD00EOlRNTpAM5rDAcgWxMCffek bRv/01whtOkCAwEAAaOCAkcwggJDMEAGA1UdIAQ5MDcwEQYPKwYBBAGBrSGCLAEBBAMFMBEGDysG AQQBga0hgiwCAQQDATAPBg0rBgEEAYGtIYIsAQEEMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgXg MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAdBgNVHQ4EFgQU0B2vaoSoEmYAggD04WZF 2hGif3UwHwYDVR0jBBgwFoAUCvNbvOQxgNY1Qomm08PPN97R39cwIAYDVR0RBBkwF4EVdHVleGVu QGZoLW11ZW5zdGVyLmRlMIGIBgNVHR8EgYAwfjA9oDugOYY3aHR0cDovL2NkcDEucGNhLmRmbi5k ZS9maC1tdWVuc3Rlci1jYS9wdWIvY3JsL2NhY3JsLmNybDA9oDugOYY3aHR0cDovL2NkcDIucGNh LmRmbi5kZS9maC1tdWVuc3Rlci1jYS9wdWIvY3JsL2NhY3JsLmNybDCB1wYIKwYBBQUHAQEEgcow gccwMwYIKwYBBQUHMAGGJ2h0dHA6Ly9vY3NwLnBjYS5kZm4uZGUvT0NTUC1TZXJ2ZXIvT0NTUDBH BggrBgEFBQcwAoY7aHR0cDovL2NkcDEucGNhLmRmbi5kZS9maC1tdWVuc3Rlci1jYS9wdWIvY2Fj ZXJ0L2NhY2VydC5jcnQwRwYIKwYBBQUHMAKGO2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZmgtbXVl bnN0ZXItY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0MA0GCSqGSIb3DQEBCwUAA4IBAQBI9v+seJM6 AlSIrmmpopz6zh8QAsqGLJkkY2D0KYFucUY/xZaJTtZxvmWddbKk2903Qhg+vZKOf87PHhip7/4t FSwhxYNSS36WsRJTeUa0f3KkSa28yrIRfWlJATgxfL5X/QQnopjCt34n4221kcsR7LHxBAn37ow+ /2L7WjWDDuOkaM9/ZSCtrN+yFRat1eUVs1Hk7sKT/bfJTsYqzovXitjmCP3YdB40dkuQ6/ZzEdXT bpa4c45RcRnPqKXnxknK0UfRHNHqk15W7dUPVMzSGFUvjhmWPP2wW6a8F1U5sEqfHcoBFC5CGjGy 7Gk2luk3obi/KLrDyZC+dkjhDYEpMYIEOTCCBDUCAQEwgdIwgcYxCzAJBgNVBAYTAkRFMRwwGgYD VQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEgMB4GA1UEChMXRmFj aGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0dW5nc3plbnRyYWxl MR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJARYRY2FAZmgtbXVl bnN0ZXIuZGUCBxuZiHQ3saMwDQYJYIZIAWUDBAIBBQCgggI3MBgGCSqGSIb3DQEJAzELBgkqhkiG 9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE5MDIxMDA4MDMxNVowLwYJKoZIhvcNAQkEMSIEIOKh9jwW U5wF5+/usf5Vjzpn1znZyNmIq/JE6N/fEgftMIHjBgkrBgEEAYI3EAQxgdUwgdIwgcYxCzAJBgNV BAYTAkRFMRwwGgYDVQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEg MB4GA1UEChMXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0 dW5nc3plbnRyYWxlMR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJ ARYRY2FAZmgtbXVlbnN0ZXIuZGUCBxuZiHQ3saMwgeUGCyqGSIb3DQEJEAILMYHVoIHSMIHGMQsw CQYDVQQGEwJERTEcMBoGA1UECBMTTm9yZHJoZWluLVdlc3RmYWxlbjERMA8GA1UEBxMITXVlbnN0 ZXIxIDAeBgNVBAoTF0ZhY2hob2Noc2NodWxlIE11ZW5zdGVyMSMwIQYDVQQLExpEYXRlbnZlcmFy YmVpdHVuZ3N6ZW50cmFsZTEdMBsGA1UEAxMURkggTXVlbnN0ZXIgQ0EgLSBHMDExIDAeBgkqhkiG 9w0BCQEWEWNhQGZoLW11ZW5zdGVyLmRlAgcbmYh0N7GjMA0GCSqGSIb3DQEBAQUABIIBAH5wFffZ ckQ7XS2ieWcPIVJuY7hXrgkTD1yo5Qvq2viWjM9iBo1L4RQ8+4N7P+kdIQM+eB5T0yuORt0gRful itzyBf60jyyaH4A2+AmJilB3zWVkpwhIC0a4A1yJSklPlxALAtZF+QP5Wo75hDYtfCrwMyxaLPKv 3pQuY42HlekxXNzp7vRKhVnhHMNo0wwIBALU17x+iuXXULxIbcV6XMOeDwt9cxygVNhE8zg299kF mXSx9be0U+41oInoZGR8wpmEsKuS3P7xHDjaR6MOQiZDJsZ8rVMEXdRY/yY72k4dd3DUgQkP/dbj aUcg4x592XBupVzVeRjsEgctzNscFjQAAAAAAAA= --Apple-Mail=_CF92B023-D3B5-4D79-BB79-E26CD1C1172B-- From owner-svn-src-all@freebsd.org Sun Feb 10 08:28:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AEA3714E4C6C; Sun, 10 Feb 2019 08:28:57 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 526AF6C793; Sun, 10 Feb 2019 08:28:57 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3EAA5DD89; Sun, 10 Feb 2019 08:28:57 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1A8SvsQ046062; Sun, 10 Feb 2019 08:28:57 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1A8Sv6s046061; Sun, 10 Feb 2019 08:28:57 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902100828.x1A8Sv6s046061@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Sun, 10 Feb 2019 08:28:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343951 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 343951 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 526AF6C793 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 08:28:57 -0000 Author: tuexen Date: Sun Feb 10 08:28:56 2019 New Revision: 343951 URL: https://svnweb.freebsd.org/changeset/base/343951 Log: Fix locking for IPPROTO_SCTP level SCTP_DEFAULT_PRINFO socket option. This problem occurred when calling setsockopt() will invalid parameters. This issue was found by running syzkaller. MFC after: 3 days Modified: head/sys/netinet/sctp_usrreq.c Modified: head/sys/netinet/sctp_usrreq.c ============================================================================== --- head/sys/netinet/sctp_usrreq.c Sun Feb 10 08:14:06 2019 (r343950) +++ head/sys/netinet/sctp_usrreq.c Sun Feb 10 08:28:56 2019 (r343951) @@ -6209,6 +6209,9 @@ sctp_setopt(struct socket *so, int optname, void *optv SCTP_FIND_STCB(inp, stcb, info->pr_assoc_id); if (info->pr_policy > SCTP_PR_SCTP_MAX) { + if (stcb) { + SCTP_TCB_UNLOCK(stcb); + } SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP_USRREQ, EINVAL); error = EINVAL; break; From owner-svn-src-all@freebsd.org Sun Feb 10 10:42:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4E53A14E96F0; Sun, 10 Feb 2019 10:42:17 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E162E716AD; Sun, 10 Feb 2019 10:42:16 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D0239F632; Sun, 10 Feb 2019 10:42:16 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AAgG8n018976; Sun, 10 Feb 2019 10:42:16 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AAgGY2018975; Sun, 10 Feb 2019 10:42:16 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902101042.x1AAgGY2018975@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Sun, 10 Feb 2019 10:42:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343954 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 343954 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E162E716AD X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 10:42:17 -0000 Author: tuexen Date: Sun Feb 10 10:42:16 2019 New Revision: 343954 URL: https://svnweb.freebsd.org/changeset/base/343954 Log: Fix a locking bug in the IPPROTO_SCTP level SCTP_EVENT socket option. This occurs when call setsockopt() with invalid parameters. This issue was found by syzkaller. MFC after: 3 days Modified: head/sys/netinet/sctp_usrreq.c Modified: head/sys/netinet/sctp_usrreq.c ============================================================================== --- head/sys/netinet/sctp_usrreq.c Sun Feb 10 08:46:07 2019 (r343953) +++ head/sys/netinet/sctp_usrreq.c Sun Feb 10 10:42:16 2019 (r343954) @@ -6115,6 +6115,10 @@ sctp_setopt(struct socket *so, int optname, void *optv SCTP_INP_RUNLOCK(inp); } } + } else { + if (stcb) { + SCTP_TCB_UNLOCK(stcb); + } } break; } From owner-svn-src-all@freebsd.org Sun Feb 10 13:31:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5BC2B14C752A; Sun, 10 Feb 2019 13:31:11 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F1DD577923; Sun, 10 Feb 2019 13:31:10 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DB306191AB; Sun, 10 Feb 2019 13:31:10 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ADVARq003829; Sun, 10 Feb 2019 13:31:10 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ADV9LX003822; Sun, 10 Feb 2019 13:31:09 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902101331.x1ADV9LX003822@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sun, 10 Feb 2019 13:31:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343957 - head/usr.bin/top X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/usr.bin/top X-SVN-Commit-Revision: 343957 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: F1DD577923 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 13:31:11 -0000 Author: dim Date: Sun Feb 10 13:31:08 2019 New Revision: 343957 URL: https://svnweb.freebsd.org/changeset/base/343957 Log: Fix multiple warnings in usr.bin/top about discarded qualifiers from both clang and gcc, by either constifying variables, or when that is not possible, using __DECONST. MFC after: 1 week Modified: head/usr.bin/top/Makefile head/usr.bin/top/display.c head/usr.bin/top/display.h head/usr.bin/top/machine.c head/usr.bin/top/top.c head/usr.bin/top/utils.c head/usr.bin/top/utils.h Modified: head/usr.bin/top/Makefile ============================================================================== --- head/usr.bin/top/Makefile Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/Makefile Sun Feb 10 13:31:08 2019 (r343957) @@ -7,14 +7,9 @@ SRCS= commands.c display.c machine.c screen.c top.c \ username.c utils.c MAN= top.1 -.if ${COMPILER_TYPE} == "gcc" -.if ${COMPILER_VERSION} >= 50000 -CFLAGS.gcc=-Wno-error=discarded-qualifiers -Wno-error=incompatible-pointer-types -.else #base gcc +.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 50000 NO_WERROR= .endif -.endif -CFLAGS.clang=-Wno-error=incompatible-pointer-types-discards-qualifiers LIBADD= ncursesw m kvm jail util sbuf .include Modified: head/usr.bin/top/display.c ============================================================================== --- head/usr.bin/top/display.c Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/display.c Sun Feb 10 13:31:08 2019 (r343957) @@ -184,7 +184,7 @@ int display_init(struct statics * statics) { int lines; - char **pp; + const char * const *pp; int *ip; int i; @@ -516,8 +516,8 @@ void z_cpustates(void) { int i = 0; - const char **names; - char *thisname; + const char * const *names; + const char *thisname; int cpu, value; for (cpu = 0; cpu < num_cpus; cpu++) { @@ -751,7 +751,7 @@ static int header_length; * allocated area with the trimmed header. */ -const char * +char * trim_header(const char *text) { char *s; Modified: head/usr.bin/top/display.h ============================================================================== --- head/usr.bin/top/display.h Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/display.h Sun Feb 10 13:31:08 2019 (r343957) @@ -27,7 +27,7 @@ void i_timeofday(time_t *tod); void i_uptime(struct timeval *bt, time_t *tod); void new_message(int type, const char *msgfmt, ...); int readline(char *buffer, int size, int numeric); -const char *trim_header(const char *text); +char *trim_header(const char *text); void u_arc(int *stats); void u_carc(int *stats); void u_cpustates(int *states); Modified: head/usr.bin/top/machine.c ============================================================================== --- head/usr.bin/top/machine.c Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/machine.c Sun Feb 10 13:31:08 2019 (r343957) @@ -618,7 +618,7 @@ get_old_proc(struct kinfo_proc *pp) pp->ki_udata = NOPROC; return (NULL); } - pp->ki_udata = oldp; + pp->ki_udata = __DECONST(void *, oldp); return (oldp); } @@ -634,7 +634,7 @@ get_io_stats(const struct kinfo_proc *pp, long *inp, l static struct kinfo_proc dummy; long ret; - oldp = get_old_proc(pp); + oldp = get_old_proc(__DECONST(struct kinfo_proc *, pp)); if (oldp == NULL) { memset(&dummy, 0, sizeof(dummy)); oldp = &dummy; Modified: head/usr.bin/top/top.c ============================================================================== --- head/usr.bin/top/top.c Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/top.c Sun Feb 10 13:31:08 2019 (r343957) @@ -219,7 +219,7 @@ end: } int -main(int argc, char *argv[]) +main(int argc, const char *argv[]) { int i; int active_procs; @@ -306,7 +306,7 @@ main(int argc, char *argv[]) optind = 1; } - while ((i = getopt_long(ac, av, "CSIHPabijJ:nquvzs:d:U:m:o:p:Ttw", longopts, NULL)) != EOF) + while ((i = getopt_long(ac, __DECONST(char * const *, av), "CSIHPabijJ:nquvzs:d:U:m:o:p:Ttw", longopts, NULL)) != EOF) { switch(i) { Modified: head/usr.bin/top/utils.c ============================================================================== --- head/usr.bin/top/utils.c Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/utils.c Sun Feb 10 13:31:08 2019 (r343957) @@ -146,7 +146,7 @@ string_index(const char *string, const char * const *a * squat about quotes. */ -const char * const * +const char ** argparse(char *line, int *cntp) { const char **ap; Modified: head/usr.bin/top/utils.h ============================================================================== --- head/usr.bin/top/utils.h Sun Feb 10 12:49:34 2019 (r343956) +++ head/usr.bin/top/utils.h Sun Feb 10 13:31:08 2019 (r343957) @@ -16,7 +16,7 @@ int atoiwi(const char *); char *itoa(unsigned int); char *itoa7(int); int digits(int); -const char * const *argparse(char *, int *); +const char **argparse(char *, int *); long percentages(int, int *, long *, long *, long *); const char *format_time(long); char *format_k(int64_t); From owner-svn-src-all@freebsd.org Sun Feb 10 13:55:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C9D1A14C8512; Sun, 10 Feb 2019 13:55:33 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6D46B809A3; Sun, 10 Feb 2019 13:55:33 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 585E71969A; Sun, 10 Feb 2019 13:55:33 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ADtX5L018428; Sun, 10 Feb 2019 13:55:33 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ADtXcd018427; Sun, 10 Feb 2019 13:55:33 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902101355.x1ADtXcd018427@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Sun, 10 Feb 2019 13:55:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343960 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 343960 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6D46B809A3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 13:55:34 -0000 Author: tuexen Date: Sun Feb 10 13:55:32 2019 New Revision: 343960 URL: https://svnweb.freebsd.org/changeset/base/343960 Log: Fix a locking issue in the IPPROTO_SCTP level SCTP_PEER_ADDR_THLDS socket option. The problem affects only setsockopt with invalid parameters. This issue was found by syzkaller. MFC after: 3 days Modified: head/sys/netinet/sctp_usrreq.c Modified: head/sys/netinet/sctp_usrreq.c ============================================================================== --- head/sys/netinet/sctp_usrreq.c Sun Feb 10 13:44:36 2019 (r343959) +++ head/sys/netinet/sctp_usrreq.c Sun Feb 10 13:55:32 2019 (r343960) @@ -6335,6 +6335,9 @@ sctp_setopt(struct socket *so, int optname, void *optv } } if (thlds->spt_pathcpthld != 0xffff) { + if (stcb != NULL) { + SCTP_TCB_UNLOCK(stcb); + } error = EINVAL; SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP_USRREQ, error); break; From owner-svn-src-all@freebsd.org Sun Feb 10 14:02:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2839514C8A4E; Sun, 10 Feb 2019 14:02:15 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BEDFC80EB8; Sun, 10 Feb 2019 14:02:14 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A17731982C; Sun, 10 Feb 2019 14:02:14 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AE2EXD021741; Sun, 10 Feb 2019 14:02:14 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AE2EGl021740; Sun, 10 Feb 2019 14:02:14 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902101402.x1AE2EGl021740@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Sun, 10 Feb 2019 14:02:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343961 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 343961 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BEDFC80EB8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 14:02:15 -0000 Author: tuexen Date: Sun Feb 10 14:02:14 2019 New Revision: 343961 URL: https://svnweb.freebsd.org/changeset/base/343961 Log: Fix a locking issue when reporing outbount messages. MFC after: 3 days Modified: head/sys/netinet/sctputil.c Modified: head/sys/netinet/sctputil.c ============================================================================== --- head/sys/netinet/sctputil.c Sun Feb 10 13:55:32 2019 (r343960) +++ head/sys/netinet/sctputil.c Sun Feb 10 14:02:14 2019 (r343961) @@ -3946,7 +3946,7 @@ sctp_report_all_outbound(struct sctp_tcb *stcb, uint16 TAILQ_FOREACH_SAFE(sp, &outs->outqueue, next, nsp) { atomic_subtract_int(&asoc->stream_queue_cnt, 1); TAILQ_REMOVE(&outs->outqueue, sp, next); - stcb->asoc.ss_functions.sctp_ss_remove_from_stream(stcb, asoc, outs, sp, holds_lock); + stcb->asoc.ss_functions.sctp_ss_remove_from_stream(stcb, asoc, outs, sp, 1); sctp_free_spbufspace(stcb, asoc, sp); if (sp->data) { sctp_ulp_notify(SCTP_NOTIFY_SPECIAL_SP_FAIL, stcb, From owner-svn-src-all@freebsd.org Sun Feb 10 14:30:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8390414C9680; Sun, 10 Feb 2019 14:30:16 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2663381B6C; Sun, 10 Feb 2019 14:30:16 +0000 (UTC) (envelope-from mmel@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 177B819BC9; Sun, 10 Feb 2019 14:30:16 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AEUFwe034515; Sun, 10 Feb 2019 14:30:15 GMT (envelope-from mmel@FreeBSD.org) Received: (from mmel@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AEUFMp034514; Sun, 10 Feb 2019 14:30:15 GMT (envelope-from mmel@FreeBSD.org) Message-Id: <201902101430.x1AEUFMp034514@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmel set sender to mmel@FreeBSD.org using -f From: Michal Meloun Date: Sun, 10 Feb 2019 14:30:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343963 - head/sys/arm/nvidia X-SVN-Group: head X-SVN-Commit-Author: mmel X-SVN-Commit-Paths: head/sys/arm/nvidia X-SVN-Commit-Revision: 343963 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2663381B6C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 14:30:16 -0000 Author: mmel Date: Sun Feb 10 14:30:15 2019 New Revision: 343963 URL: https://svnweb.freebsd.org/changeset/base/343963 Log: Don't allocate same clock twice.. MFC after: 1 week Reported by: jah Modified: head/sys/arm/nvidia/tegra_sdhci.c Modified: head/sys/arm/nvidia/tegra_sdhci.c ============================================================================== --- head/sys/arm/nvidia/tegra_sdhci.c Sun Feb 10 14:25:29 2019 (r343962) +++ head/sys/arm/nvidia/tegra_sdhci.c Sun Feb 10 14:30:15 2019 (r343963) @@ -313,13 +313,6 @@ tegra_sdhci_attach(device_t dev) rv = clk_get_by_ofw_index(dev, 0, 0, &sc->clk); if (rv != 0) { - - device_printf(dev, "Cannot get clock\n"); - goto fail; - } - - rv = clk_get_by_ofw_index(dev, 0, 0, &sc->clk); - if (rv != 0) { device_printf(dev, "Cannot get clock\n"); goto fail; } From owner-svn-src-all@freebsd.org Sun Feb 10 14:21:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1575A14C92CD; Sun, 10 Feb 2019 14:21:42 +0000 (UTC) (envelope-from tuexen@fh-muenster.de) Received: from drew.franken.de (drew.ipv6.franken.de [IPv6:2001:638:a02:a001:20e:cff:fe4a:feaa]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.franken.de", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 14885816AB; Sun, 10 Feb 2019 14:21:40 +0000 (UTC) (envelope-from tuexen@fh-muenster.de) Received: from [IPv6:2003:cd:6f38:4a00:2913:65ee:8e6f:ea4e] (p200300CD6F384A00291365EE8E6FEA4E.dip0.t-ipconnect.de [IPv6:2003:cd:6f38:4a00:2913:65ee:8e6f:ea4e]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTPSA id 7F15D721E2822; Sun, 10 Feb 2019 15:21:36 +0100 (CET) From: Michael Tuexen Message-Id: <5445FA8B-4A76-4202-A841-A15429AA9551@fh-muenster.de> Content-Type: multipart/signed; boundary="Apple-Mail=_60DE9A44-99E7-40CE-8763-B0654CC2B7D3"; protocol="application/pkcs7-signature"; micalg=sha-256 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r343746 - head/sys/conf Date: Sun, 10 Feb 2019 15:21:35 +0100 In-Reply-To: Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org To: Conrad Meyer References: <201902041655.x14GtOIr046072@repo.freebsd.org> <6436189F-037C-4AB0-A59C-BE68A781FB30@fh-muenster.de> X-Mailer: Apple Mail (2.3445.102.3) X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=disabled version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on mail-n.franken.de X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 14:21:42 -0000 --Apple-Mail=_60DE9A44-99E7-40CE-8763-B0654CC2B7D3 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On 10. Feb 2019, at 09:38, Conrad Meyer wrote: >=20 > Hi Michael, >=20 > I don't know. You can 'pkg install amd64-xtoolchain-gcc' and 'make > buildkernel KERNCONF=3DGENERIC CROSS_TOOLCHAIN=3Damd64-gcc' if you're > interested in trying it. Hi Conrad, thanks for the instructions. I tested the patch and it ends up in a system I can use. In particular the kcovtrace test program also runs. Best regards Michael >=20 > (I'm not sure enabling coverage globally in GENERIC is appropriate > even if it did not break boot =E2=80=94 it's usually expensive, and = while > GENERIC is already slow, that doesn't mean we can just make it 10x > slower.) >=20 > Best, > Conrad >=20 > On Sun, Feb 10, 2019 at 12:03 AM Michael Tuexen = wrote: >>=20 >>> On 10. Feb 2019, at 08:50, Conrad Meyer wrote: >>>=20 >>> Hi Andrew, >>>=20 >>> This makes it compile, but instead of a build failure the kernel is >>> broken hard at runtime in early boot with GCC < 8.1. E.g., >>> amd64-xtoolchain-gcc standard cross-toolchain is still on GCC 6.4.0. >>>=20 >>> HEAD GENERIC has been broken in one form or another for xtoolchain = GCC >>> since r343713 (Feb 3), so I'm going to go ahead and turn this option >>> off in GENERIC. Feel free to reenable when you've tested that it >>> works. >> Hi Conrad, >>=20 >> does https://reviews.freebsd.org/D19135 fix the issue you are = observing? >>=20 >> Best regards >> Michael >>>=20 >>> Best, >>> Conrad >>>=20 >>> On Mon, Feb 4, 2019 at 8:55 AM Andrew Turner = wrote: >>>>=20 >>>> Author: andrew >>>> Date: Mon Feb 4 16:55:24 2019 >>>> New Revision: 343746 >>>> URL: https://svnweb.freebsd.org/changeset/base/343746 >>>>=20 >>>> Log: >>>> Only enable trace-cmp on Clang and modern GCC. >>>>=20 >>>> It's was only added to GCC 8.1 so don't try to enable it for = earlier >>>> releases. >>>>=20 >>>> Reported by: lwhsu >>>> Sponsored by: DARPA, AFRL >>>>=20 >>>> Modified: >>>> head/sys/conf/files >>>> head/sys/conf/kern.pre.mk >>>>=20 >>>> Modified: head/sys/conf/files >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/conf/files Mon Feb 4 16:13:41 2019 (r343745) >>>> +++ head/sys/conf/files Mon Feb 4 16:55:24 2019 (r343746) >>>> @@ -3808,7 +3808,7 @@ kern/kern_idle.c standard >>>> kern/kern_intr.c standard >>>> kern/kern_jail.c standard >>>> kern/kern_kcov.c optional kcov \ >>>> - compile-with "${NORMAL_C} = -fno-sanitize-coverage=3Dtrace-pc,trace-cmp" >>>> + compile-with "${NORMAL_C} -fno-sanitize=3Dall" >>>> kern/kern_khelp.c standard >>>> kern/kern_kthread.c standard >>>> kern/kern_ktr.c optional ktr >>>>=20 >>>> Modified: head/sys/conf/kern.pre.mk >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/conf/kern.pre.mk Mon Feb 4 16:13:41 2019 = (r343745) >>>> +++ head/sys/conf/kern.pre.mk Mon Feb 4 16:55:24 2019 = (r343746) >>>> @@ -120,7 +120,12 @@ SAN_CFLAGS+=3D -fsanitize=3Dundefined >>>>=20 >>>> COVERAGE_ENABLED!=3D grep COVERAGE opt_global.h || true ; echo >>>> .if !empty(COVERAGE_ENABLED) >>>> +.if ${COMPILER_TYPE} =3D=3D "clang" || \ >>>> + (${COMPILER_TYPE} =3D=3D "gcc" && ${COMPILER_VERSION} >=3D = 80100) >>>> SAN_CFLAGS+=3D -fsanitize-coverage=3Dtrace-pc,trace-cmp >>>> +.else >>>> +SAN_CFLAGS+=3D -fsanitize-coverage=3Dtrace-pc >>>> +.endif >>>> .endif >>>>=20 >>>> CFLAGS+=3D ${SAN_CFLAGS} >>>>=20 >>>=20 >>=20 --Apple-Mail=_60DE9A44-99E7-40CE-8763-B0654CC2B7D3 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEJAw ggTVMIIDvaADAgECAghQTsb1PRG0ZDANBgkqhkiG9w0BAQsFADBxMQswCQYDVQQGEwJERTEcMBoG A1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRl cjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNMTQwNzIyMTIwODI2WhcN MTkwNzA5MjM1OTAwWjBaMQswCQYDVQQGEwJERTETMBEGA1UEChMKREZOLVZlcmVpbjEQMA4GA1UE CxMHREZOLVBLSTEkMCIGA1UEAxMbREZOLVZlcmVpbiBQQ0EgR2xvYmFsIC0gRzAxMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6ZvDZ4X5Da71jVTDllA1PWLpbkztlNcAW5UidNQg6zSP 1uzAMQQLmYHiphTSUqAoI4SLdIkEXlvg4njBeMsWyyg1OXstkEXQ7aAAeny/Sg4bAMOG6VwrMRF7 DPOCJEOMHDiLamgAmu7cT3ir0sYTm3at7t4m6O8Br3QPwQmi9mvOvdPNFDBP9eXjpMhim4IaAycw DQJlYE3t0QkjKpY1WCfTdsZxtpAdxO3/NYZ9bzOz2w/FEcKKg6GUXUFr2NIQ9Uz9ylGs2b3vkoO7 2uuLFlZWQ8/h1RM9ph8nMM1JVNvJEzSacXXFbOqnC5j5IZ0nrz6jOTlIaoytyZn7wxLyvQIDAQAB o4IBhjCCAYIwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRJt8bP6D0ff+pEexMp9/EKcD7eZDAf BgNVHSMEGDAWgBQxw3kbuvVT1xfgiXotF2wKsyudMzASBgNVHRMBAf8ECDAGAQH/AgECMGIGA1Ud IARbMFkwEQYPKwYBBAGBrSGCLAEBBAICMBEGDysGAQQBga0hgiwBAQQDADARBg8rBgEEAYGtIYIs AQEEAwEwDwYNKwYBBAGBrSGCLAEBBDANBgsrBgEEAYGtIYIsHjA+BgNVHR8ENzA1MDOgMaAvhi1o dHRwOi8vcGtpMDMzNi50ZWxlc2VjLmRlL3JsL0RUX1JPT1RfQ0FfMi5jcmwweAYIKwYBBQUHAQEE bDBqMCwGCCsGAQUFBzABhiBodHRwOi8vb2NzcDAzMzYudGVsZXNlYy5kZS9vY3NwcjA6BggrBgEF BQcwAoYuaHR0cDovL3BraTAzMzYudGVsZXNlYy5kZS9jcnQvRFRfUk9PVF9DQV8yLmNlcjANBgkq hkiG9w0BAQsFAAOCAQEAYyAo/ZwhhnK+OUZZOTIlvKkBmw3Myn1BnIZtCm4ssxNZdbEzkhthJxb/ w7LVNYL7hCoBSb1mu2YvssIGXW4/buMBWlvKQ2NclbbhMacf1QdfTeZlgk4y+cN8ekvNTVx07iHy dQLsUj7SyWrTkCNuSWc1vn9NVqTszC/Pt6GXqHI+ybxA1lqkCD3WvILDt7cyjrEsjmpttzUCGc/1 OURYY6ckABCwu/xOr24vOLulV0k/2G5QbyyXltwdRpplic+uzPLl2Z9Tsz6hL5Kp2AvGhB8Exuse 6J99tXulAvEkxSRjETTMWpMgKnmIOiVCkKllO3yG0xIVIyn8LNrMOVtUFzCCBaIwggSKoAMCAQIC BxekJKEJSDMwDQYJKoZIhvcNAQELBQAwWjELMAkGA1UEBhMCREUxEzARBgNVBAoTCkRGTi1WZXJl aW4xEDAOBgNVBAsTB0RGTi1QS0kxJDAiBgNVBAMTG0RGTi1WZXJlaW4gUENBIEdsb2JhbCAtIEcw MTAeFw0xNDA1MjcxNDU0MDlaFw0xOTA3MDkyMzU5MDBaMIHGMQswCQYDVQQGEwJERTEcMBoGA1UE CBMTTm9yZHJoZWluLVdlc3RmYWxlbjERMA8GA1UEBxMITXVlbnN0ZXIxIDAeBgNVBAoTF0ZhY2ho b2Noc2NodWxlIE11ZW5zdGVyMSMwIQYDVQQLExpEYXRlbnZlcmFyYmVpdHVuZ3N6ZW50cmFsZTEd MBsGA1UEAxMURkggTXVlbnN0ZXIgQ0EgLSBHMDExIDAeBgkqhkiG9w0BCQEWEWNhQGZoLW11ZW5z dGVyLmRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuHlsrvBs7CL9IqMH9r//QU9E pghTV/3skHuQZ3DpNY+lyJWOW5zbtUubgXt7lYHpIE4d4CclTZWqCHwoAI6gqzSSGjUKuX6/0ui/ LhXmlDvCBfwuER+T+3/R59hlLnhI5iYYPQiNywQIa3wJhBLTZrlXw8nDdjI54MAzcVDUX7l21sbo ZIA6idM7SXmshxoRQ6xsfPHskrceNMcvtHNDhVnVscwRUJQUR55fs0X7Y93PasugWPv3xmgNr1da Cq94eV+nslNU/GJaT9TQ3uG8pagLXl9NbDNkHIrvFAD5zXO0m/d00I4QhUVQyEtwnTegDqcM+WFh JXensgnZhWe6bwIDAQABo4IB/jCCAfowEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMC AQYwEQYDVR0gBAowCDAGBgRVHSAAMB0GA1UdDgQWBBQK81u85DGA1jVCiabTw8833tHf1zAfBgNV HSMEGDAWgBRJt8bP6D0ff+pEexMp9/EKcD7eZDAcBgNVHREEFTATgRFjYUBmaC1tdWVuc3Rlci5k ZTCBiAYDVR0fBIGAMH4wPaA7oDmGN2h0dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3Qt Y2EvcHViL2NybC9jYWNybC5jcmwwPaA7oDmGN2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZ2xvYmFs LXJvb3QtY2EvcHViL2NybC9jYWNybC5jcmwwgdcGCCsGAQUFBwEBBIHKMIHHMDMGCCsGAQUFBzAB hidodHRwOi8vb2NzcC5wY2EuZGZuLmRlL09DU1AtU2VydmVyL09DU1AwRwYIKwYBBQUHMAKGO2h0 dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3QtY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0 MEcGCCsGAQUFBzAChjtodHRwOi8vY2RwMi5wY2EuZGZuLmRlL2dsb2JhbC1yb290LWNhL3B1Yi9j YWNlcnQvY2FjZXJ0LmNydDANBgkqhkiG9w0BAQsFAAOCAQEA3kcDNdZKb7kSD7s1ly2qa/2QbQe+ ld3LhZeOcfysdLtN8oweBmgT3MYoZ+D9c+SoUWJAwTKPB15DoGy+fWhelXTpQrqxIGb4ISr1JCjg slnmMUva0xjwZGxojZ9gE1bi18xfKw3+dMpwCLt6LbLTjr/tyH6otacwr2tZzuuJIUAORnefwTcr vmB21n/BEQH/ZXruWu8lSO3L9YAmQB6ViaZFCpn2sMmOLACdoWxmUQb3QAjsa327jHUjsz53k9q5 Zrx/g+zOg5s1Wmy2JOlLQMUIZXXf0/6rB5Fr2llx7dBG/Uk7NhZdNy7OzNzci0C4Wnkd8rDVEWHG hH2gfpcTfjCCBg0wggT1oAMCAQICBxuZiHQ3saMwDQYJKoZIhvcNAQELBQAwgcYxCzAJBgNVBAYT AkRFMRwwGgYDVQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEgMB4G A1UEChMXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0dW5n c3plbnRyYWxlMR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJARYR Y2FAZmgtbXVlbnN0ZXIuZGUwHhcNMTYwNzA0MDcwNjEzWhcNMTkwNzA0MDcwNjEzWjB8MQswCQYD VQQGEwJERTEgMB4GA1UECgwXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxMjAwBgNVBAsMKUZhY2hi ZXJlaWNoIEVsZWt0cm90ZWNobmlrIHVuZCBJbmZvcm1hdGlrMRcwFQYDVQQDDA5NaWNoYWVsIFR1 ZXhlbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMyaGlBt2ZtuF8QP8zYNrGxXC+es PMajIPl+hu1LGHnN2BJ3J5ZMN44BOZw3n6LO1FaAgO8D4xU4/AELecX6VxJZ2zOOSD8uTYO4OnUu 24hkjFUQAj13tT644AKUQMMBpgj7wC52V5Jij+mZX/t1S38/WFiCGnirt4xTNi5OmN4K+VNZfG4x 0msDqFjJX70rF1y09/Mylu1M/Y0tu/I9DqhwDQT4LBOvyyaAlhSJ8Jb8m8YTt5xlOzrXlBmj4pKs 74y7C2IKRw4tFozGX1cf1LVEs2eBCb5iUwXrlcMipwm62sJ38GD00EOlRNTpAM5rDAcgWxMCffek bRv/01whtOkCAwEAAaOCAkcwggJDMEAGA1UdIAQ5MDcwEQYPKwYBBAGBrSGCLAEBBAMFMBEGDysG AQQBga0hgiwCAQQDATAPBg0rBgEEAYGtIYIsAQEEMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgXg MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAdBgNVHQ4EFgQU0B2vaoSoEmYAggD04WZF 2hGif3UwHwYDVR0jBBgwFoAUCvNbvOQxgNY1Qomm08PPN97R39cwIAYDVR0RBBkwF4EVdHVleGVu QGZoLW11ZW5zdGVyLmRlMIGIBgNVHR8EgYAwfjA9oDugOYY3aHR0cDovL2NkcDEucGNhLmRmbi5k ZS9maC1tdWVuc3Rlci1jYS9wdWIvY3JsL2NhY3JsLmNybDA9oDugOYY3aHR0cDovL2NkcDIucGNh LmRmbi5kZS9maC1tdWVuc3Rlci1jYS9wdWIvY3JsL2NhY3JsLmNybDCB1wYIKwYBBQUHAQEEgcow gccwMwYIKwYBBQUHMAGGJ2h0dHA6Ly9vY3NwLnBjYS5kZm4uZGUvT0NTUC1TZXJ2ZXIvT0NTUDBH BggrBgEFBQcwAoY7aHR0cDovL2NkcDEucGNhLmRmbi5kZS9maC1tdWVuc3Rlci1jYS9wdWIvY2Fj ZXJ0L2NhY2VydC5jcnQwRwYIKwYBBQUHMAKGO2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZmgtbXVl bnN0ZXItY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0MA0GCSqGSIb3DQEBCwUAA4IBAQBI9v+seJM6 AlSIrmmpopz6zh8QAsqGLJkkY2D0KYFucUY/xZaJTtZxvmWddbKk2903Qhg+vZKOf87PHhip7/4t FSwhxYNSS36WsRJTeUa0f3KkSa28yrIRfWlJATgxfL5X/QQnopjCt34n4221kcsR7LHxBAn37ow+ /2L7WjWDDuOkaM9/ZSCtrN+yFRat1eUVs1Hk7sKT/bfJTsYqzovXitjmCP3YdB40dkuQ6/ZzEdXT bpa4c45RcRnPqKXnxknK0UfRHNHqk15W7dUPVMzSGFUvjhmWPP2wW6a8F1U5sEqfHcoBFC5CGjGy 7Gk2luk3obi/KLrDyZC+dkjhDYEpMYIEOTCCBDUCAQEwgdIwgcYxCzAJBgNVBAYTAkRFMRwwGgYD VQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEgMB4GA1UEChMXRmFj aGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0dW5nc3plbnRyYWxl MR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJARYRY2FAZmgtbXVl bnN0ZXIuZGUCBxuZiHQ3saMwDQYJYIZIAWUDBAIBBQCgggI3MBgGCSqGSIb3DQEJAzELBgkqhkiG 9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE5MDIxMDE0MjEzNlowLwYJKoZIhvcNAQkEMSIEINQ6zHSa dJvLnAy2T+KuqP9dS/1HAa2SNKBk8kY6ej3rMIHjBgkrBgEEAYI3EAQxgdUwgdIwgcYxCzAJBgNV BAYTAkRFMRwwGgYDVQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEg MB4GA1UEChMXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0 dW5nc3plbnRyYWxlMR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJ ARYRY2FAZmgtbXVlbnN0ZXIuZGUCBxuZiHQ3saMwgeUGCyqGSIb3DQEJEAILMYHVoIHSMIHGMQsw CQYDVQQGEwJERTEcMBoGA1UECBMTTm9yZHJoZWluLVdlc3RmYWxlbjERMA8GA1UEBxMITXVlbnN0 ZXIxIDAeBgNVBAoTF0ZhY2hob2Noc2NodWxlIE11ZW5zdGVyMSMwIQYDVQQLExpEYXRlbnZlcmFy YmVpdHVuZ3N6ZW50cmFsZTEdMBsGA1UEAxMURkggTXVlbnN0ZXIgQ0EgLSBHMDExIDAeBgkqhkiG 9w0BCQEWEWNhQGZoLW11ZW5zdGVyLmRlAgcbmYh0N7GjMA0GCSqGSIb3DQEBAQUABIIBAJOqxG63 m0ShbDu0zFtDq/CADOAogW+vsxxTBsVbIKrFc5bZ19S1S+8Q/EWkgQOAq2woGCkPSJB3QtwXqOlO JAcDNCgPDbZoIIHHAu7isxkBWemWkaQh9GFxle2gn6PkkABATA0YUl2wa/cE+KsQYoD9P2blAOZZ sBK7pBxOh3Yvf12w4rZLqWmwFSESguiYkZxYcnvsYe4o+9xBBqd1UmVVtGyX/Q921IFJrWlEMPRa rdKu9pKztbTC27tj5rJQpQclq71u/dmT3YwS0bZExobmutNYAFPeb2wwvYD1X2FrAL8iMqR8Qsui mXk+EeupOoi2fwKpvPqtC2byCZi9mggAAAAAAAA= --Apple-Mail=_60DE9A44-99E7-40CE-8763-B0654CC2B7D3-- From owner-svn-src-all@freebsd.org Sun Feb 10 13:34:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D02CF14C7816; Sun, 10 Feb 2019 13:34:22 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 71F2E77CDA; Sun, 10 Feb 2019 13:34:22 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6044F1931E; Sun, 10 Feb 2019 13:34:22 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ADYMFx007898; Sun, 10 Feb 2019 13:34:22 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ADYL0c007895; Sun, 10 Feb 2019 13:34:21 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902101334.x1ADYL0c007895@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sun, 10 Feb 2019 13:34:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343958 - head/usr.bin/top X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/usr.bin/top X-SVN-Commit-Revision: 343958 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 71F2E77CDA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 13:34:23 -0000 Author: dim Date: Sun Feb 10 13:34:21 2019 New Revision: 343958 URL: https://svnweb.freebsd.org/changeset/base/343958 Log: Fix multiple warnings in usr.bin/top about variables shadowing global declarations from base gcc, by renaming those variables. MFC after: 1 week Modified: head/usr.bin/top/Makefile head/usr.bin/top/username.c head/usr.bin/top/utils.c Modified: head/usr.bin/top/Makefile ============================================================================== --- head/usr.bin/top/Makefile Sun Feb 10 13:31:08 2019 (r343957) +++ head/usr.bin/top/Makefile Sun Feb 10 13:34:21 2019 (r343958) @@ -7,9 +7,5 @@ SRCS= commands.c display.c machine.c screen.c top.c \ username.c utils.c MAN= top.1 -.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 50000 -NO_WERROR= -.endif - LIBADD= ncursesw m kvm jail util sbuf .include Modified: head/usr.bin/top/username.c ============================================================================== --- head/usr.bin/top/username.c Sun Feb 10 13:31:08 2019 (r343957) +++ head/usr.bin/top/username.c Sun Feb 10 13:34:21 2019 (r343958) @@ -70,7 +70,7 @@ username(int uid) } int -userid(char username[]) +userid(char username_[]) { struct passwd *pwd; @@ -78,13 +78,13 @@ userid(char username[]) but for now we just do it simply and remember just the result. */ - if ((pwd = getpwnam(username)) == NULL) + if ((pwd = getpwnam(username_)) == NULL) { return(-1); } /* enter the result in the hash table */ - enter_user(pwd->pw_uid, username, 1); + enter_user(pwd->pw_uid, username_, 1); /* return our result */ return(pwd->pw_uid); Modified: head/usr.bin/top/utils.c ============================================================================== --- head/usr.bin/top/utils.c Sun Feb 10 13:31:08 2019 (r343957) +++ head/usr.bin/top/utils.c Sun Feb 10 13:34:21 2019 (r343958) @@ -292,11 +292,11 @@ char * format_k(int64_t amt) { static char retarray[NUM_STRINGS][16]; - static int index = 0; + static int index_ = 0; char *ret; - ret = retarray[index]; - index = (index + 1) % NUM_STRINGS; + ret = retarray[index_]; + index_ = (index_ + 1) % NUM_STRINGS; humanize_number(ret, 6, amt * 1024, "", HN_AUTOSCALE, HN_NOSPACE); return (ret); } From owner-svn-src-all@freebsd.org Sun Feb 10 13:44:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD99114C7ECE; Sun, 10 Feb 2019 13:44:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5F54E8049D; Sun, 10 Feb 2019 13:44:37 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4EA19194E0; Sun, 10 Feb 2019 13:44:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ADibdT013197; Sun, 10 Feb 2019 13:44:37 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ADibZb013196; Sun, 10 Feb 2019 13:44:37 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902101344.x1ADibZb013196@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sun, 10 Feb 2019 13:44:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343959 - head/usr.bin/top X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/usr.bin/top X-SVN-Commit-Revision: 343959 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5F54E8049D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 13:44:38 -0000 Author: dim Date: Sun Feb 10 13:44:36 2019 New Revision: 343959 URL: https://svnweb.freebsd.org/changeset/base/343959 Log: Fix the first couple of AddressSanitizer violations in usr.bin/top. Avoid setting zero bytes beyond the length of the 'thisline' parameters in i_process() and u_process(), and don't attempt to memset a negative number of bytes. MFC after: 1 week Modified: head/usr.bin/top/display.c Modified: head/usr.bin/top/display.c ============================================================================== --- head/usr.bin/top/display.c Sun Feb 10 13:34:21 2019 (r343958) +++ head/usr.bin/top/display.c Sun Feb 10 13:44:36 2019 (r343959) @@ -829,7 +829,11 @@ i_process(int line, char *thisline) } /* truncate the line to conform to our current screen width */ - thisline[screen_width] = '\0'; + int len = strlen(thisline); + if (screen_width < len) + { + thisline[screen_width] = '\0'; + } /* write the line out */ fputs(thisline, stdout); @@ -839,7 +843,10 @@ i_process(int line, char *thisline) p = stpcpy(base, thisline); /* zero fill the rest of it */ - memset(p, 0, screen_width - (p - base)); + if (p - base < screen_width) + { + memset(p, 0, screen_width - (p - base)); + } } void @@ -853,7 +860,11 @@ u_process(int line, char *newline) bufferline = &screenbuf[lineindex(line)]; /* truncate the line to conform to our current screen width */ - newline[screen_width] = '\0'; + int len = strlen(newline); + if (screen_width < len) + { + newline[screen_width] = '\0'; + } /* is line higher than we went on the last display? */ if (line >= last_hi) @@ -878,7 +889,10 @@ u_process(int line, char *newline) optr = stpcpy(bufferline, newline); /* zero fill the rest of it */ - memset(optr, 0, screen_width - (optr - bufferline)); + if (optr - bufferline < screen_width) + { + memset(optr, 0, screen_width - (optr - bufferline)); + } } else { From owner-svn-src-all@freebsd.org Sun Feb 10 14:25:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7606914C9565; Sun, 10 Feb 2019 14:25:30 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 157A381999; Sun, 10 Feb 2019 14:25:30 +0000 (UTC) (envelope-from mmel@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 03C4019BC0; Sun, 10 Feb 2019 14:25:30 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AEPT47034243; Sun, 10 Feb 2019 14:25:29 GMT (envelope-from mmel@FreeBSD.org) Received: (from mmel@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AEPTXB034242; Sun, 10 Feb 2019 14:25:29 GMT (envelope-from mmel@FreeBSD.org) Message-Id: <201902101425.x1AEPTXB034242@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmel set sender to mmel@FreeBSD.org using -f From: Michal Meloun Date: Sun, 10 Feb 2019 14:25:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343962 - head/sys/arm/arm X-SVN-Group: head X-SVN-Commit-Author: mmel X-SVN-Commit-Paths: head/sys/arm/arm X-SVN-Commit-Revision: 343962 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 157A381999 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 14:25:30 -0000 Author: mmel Date: Sun Feb 10 14:25:29 2019 New Revision: 343962 URL: https://svnweb.freebsd.org/changeset/base/343962 Log: Properly handle alignment requests bigger that page size. - for now, alignments bigger that page size is allowed only for buffers allocated by bus_dmamem_alloc(), cover this fact by KASSERT. - never bounce buffers allocated by bus_dmamem_alloc(), these always comply with the required rules (alignment, boundary, address range). MFC after: 1 week Reviewed by: jah PR: 235542 Modified: head/sys/arm/arm/busdma_machdep-v6.c Modified: head/sys/arm/arm/busdma_machdep-v6.c ============================================================================== --- head/sys/arm/arm/busdma_machdep-v6.c Sun Feb 10 14:02:14 2019 (r343961) +++ head/sys/arm/arm/busdma_machdep-v6.c Sun Feb 10 14:25:29 2019 (r343962) @@ -339,16 +339,27 @@ cacheline_bounce(bus_dmamap_t map, bus_addr_t addr, bu * * Note that the addr argument might be either virtual or physical. It doesn't * matter because we only look at the low-order bits, which are the same in both - * address spaces. + * address spaces and maximum alignment of generic buffer is limited up to page + * size. + * Bouncing of buffers allocated by bus_dmamem_alloc()is not necessary, these + * always comply with the required rules (alignment, boundary, and address + * range). */ static __inline int might_bounce(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t addr, bus_size_t size) { - return ((dmat->flags & BUS_DMA_EXCL_BOUNCE) || + KASSERT(dmat->flags & DMAMAP_DMAMEM_ALLOC || + dmat->alignment <= PAGE_SIZE, + ("%s: unsupported alignment (0x%08lx) for buffer not " + "allocated by bus_dmamem_alloc()", + __func__, dmat->alignment)); + + return (!(dmat->flags & DMAMAP_DMAMEM_ALLOC) && + ((dmat->flags & BUS_DMA_EXCL_BOUNCE) || alignment_bounce(dmat, addr) || - cacheline_bounce(map, addr, size)); + cacheline_bounce(map, addr, size))); } /* From owner-svn-src-all@freebsd.org Sun Feb 10 17:19:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 85CF914D30B5; Sun, 10 Feb 2019 17:19:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2F05487B6D; Sun, 10 Feb 2019 17:19:49 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1D5851B8A3; Sun, 10 Feb 2019 17:19:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AHJnaL023553; Sun, 10 Feb 2019 17:19:49 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AHJjE2023535; Sun, 10 Feb 2019 17:19:45 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902101719.x1AHJjE2023535@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 10 Feb 2019 17:19:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343964 - in head: sys/amd64/amd64 sys/arm/arm sys/compat/freebsd32 sys/compat/ia32 sys/i386/i386 sys/kern sys/sys sys/vm usr.bin/proccontrol X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head: sys/amd64/amd64 sys/arm/arm sys/compat/freebsd32 sys/compat/ia32 sys/i386/i386 sys/kern sys/sys sys/vm usr.bin/proccontrol X-SVN-Commit-Revision: 343964 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2F05487B6D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 17:19:49 -0000 Author: kib Date: Sun Feb 10 17:19:45 2019 New Revision: 343964 URL: https://svnweb.freebsd.org/changeset/base/343964 Log: Implement Address Space Layout Randomization (ASLR) With this change, randomization can be enabled for all non-fixed mappings. It means that the base address for the mapping is selected with a guaranteed amount of entropy (bits). If the mapping was requested to be superpage aligned, the randomization honours the superpage attributes. Although the value of ASLR is diminshing over time as exploit authors work out simple ASLR bypass techniques, it elimintates the trivial exploitation of certain vulnerabilities, at least in theory. This implementation is relatively small and happens at the correct architectural level. Also, it is not expected to introduce regressions in existing cases when turned off (default for now), or cause any significant maintaince burden. The randomization is done on a best-effort basis - that is, the allocator falls back to a first fit strategy if fragmentation prevents entropy injection. It is trivial to implement a strong mode where failure to guarantee the requested amount of entropy results in mapping request failure, but I do not consider that to be usable. I have not fine-tuned the amount of entropy injected right now. It is only a quantitive change that will not change the implementation. The current amount is controlled by aslr_pages_rnd. To not spoil coalescing optimizations, to reduce the page table fragmentation inherent to ASLR, and to keep the transient superpage promotion for the malloced memory, locality clustering is implemented for anonymous private mappings, which are automatically grouped until fragmentation kicks in. The initial location for the anon group range is, of course, randomized. This is controlled by vm.cluster_anon, enabled by default. The default mode keeps the sbrk area unpopulated by other mappings, but this can be turned off, which gives much more breathing bits on architectures with small address space, such as i386. This is tied with the question of following an application's hint about the mmap(2) base address. Testing shows that ignoring the hint does not affect the function of common applications, but I would expect more demanding code could break. By default sbrk is preserved and mmap hints are satisfied, which can be changed by using the kern.elf{32,64}.aslr.honor_sbrk sysctl. ASLR is enabled on per-ABI basis, and currently it is only allowed on FreeBSD native i386 and amd64 (including compat 32bit) ABIs. Support for additional architectures will be added after further testing. Both per-process and per-image controls are implemented: - procctl(2) adds PROC_ASLR_CTL/PROC_ASLR_STATUS; - NT_FREEBSD_FCTL_ASLR_DISABLE feature control note bit makes it possible to force ASLR off for the given binary. (A tool to edit the feature control note is in development.) Global controls are: - kern.elf{32,64}.aslr.enable - for non-fixed mappings done by mmap(2); - kern.elf{32,64}.aslr.pie_enable - for PIE image activation mappings; - kern.elf{32,64}.aslr.honor_sbrk - allow to use sbrk area for mmap(2); - vm.cluster_anon - enables anon mapping clustering. PR: 208580 (exp runs) Exp-runs done by: antoine Reviewed by: markj (previous version) Discussed with: emaste Tested by: pho MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D5603 Modified: head/sys/amd64/amd64/elf_machdep.c head/sys/arm/arm/elf_machdep.c head/sys/compat/freebsd32/freebsd32_misc.c head/sys/compat/ia32/ia32_sysvec.c head/sys/i386/i386/elf_machdep.c head/sys/kern/imgact_elf.c head/sys/kern/kern_exec.c head/sys/kern/kern_fork.c head/sys/kern/kern_procctl.c head/sys/sys/imgact.h head/sys/sys/proc.h head/sys/sys/procctl.h head/sys/sys/sysent.h head/sys/vm/vm_map.c head/sys/vm/vm_map.h head/usr.bin/proccontrol/proccontrol.c Modified: head/sys/amd64/amd64/elf_machdep.c ============================================================================== --- head/sys/amd64/amd64/elf_machdep.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/amd64/amd64/elf_machdep.c Sun Feb 10 17:19:45 2019 (r343964) @@ -73,7 +73,8 @@ struct sysentvec elf64_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_TIMEKEEP, + .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_LP64 | SV_SHP | + SV_TIMEKEEP, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/arm/arm/elf_machdep.c ============================================================================== --- head/sys/arm/arm/elf_machdep.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/arm/arm/elf_machdep.c Sun Feb 10 17:19:45 2019 (r343964) @@ -82,7 +82,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_maxssiz = NULL, .sv_flags = #if __ARM_ARCH >= 6 - SV_SHP | SV_TIMEKEEP | + SV_ASLR | SV_SHP | SV_TIMEKEEP | #endif SV_ABI_FREEBSD | SV_ILP32, .sv_set_syscall_retval = cpu_set_syscall_retval, Modified: head/sys/compat/freebsd32/freebsd32_misc.c ============================================================================== --- head/sys/compat/freebsd32/freebsd32_misc.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/compat/freebsd32/freebsd32_misc.c Sun Feb 10 17:19:45 2019 (r343964) @@ -3328,6 +3328,7 @@ freebsd32_procctl(struct thread *td, struct freebsd32_ int error, error1, flags, signum; switch (uap->com) { + case PROC_ASLR_CTL: case PROC_SPROTECT: case PROC_TRACE_CTL: case PROC_TRAPCAP_CTL: @@ -3359,6 +3360,7 @@ freebsd32_procctl(struct thread *td, struct freebsd32_ return (error); data = &x.rk; break; + case PROC_ASLR_STATUS: case PROC_TRACE_STATUS: case PROC_TRAPCAP_STATUS: data = &flags; @@ -3387,6 +3389,7 @@ freebsd32_procctl(struct thread *td, struct freebsd32_ if (error == 0) error = error1; break; + case PROC_ASLR_STATUS: case PROC_TRACE_STATUS: case PROC_TRAPCAP_STATUS: if (error == 0) Modified: head/sys/compat/ia32/ia32_sysvec.c ============================================================================== --- head/sys/compat/ia32/ia32_sysvec.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/compat/ia32/ia32_sysvec.c Sun Feb 10 17:19:45 2019 (r343964) @@ -119,7 +119,7 @@ struct sysentvec ia32_freebsd_sysvec = { .sv_setregs = ia32_setregs, .sv_fixlimit = ia32_fixlimit, .sv_maxssiz = &ia32_maxssiz, - .sv_flags = SV_ABI_FREEBSD | SV_IA32 | SV_ILP32 | + .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_IA32 | SV_ILP32 | SV_SHP | SV_TIMEKEEP, .sv_set_syscall_retval = ia32_set_syscall_retval, .sv_fetch_syscall_args = ia32_fetch_syscall_args, Modified: head/sys/i386/i386/elf_machdep.c ============================================================================== --- head/sys/i386/i386/elf_machdep.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/i386/i386/elf_machdep.c Sun Feb 10 17:19:45 2019 (r343964) @@ -75,8 +75,8 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_IA32 | SV_ILP32 | SV_SHP | - SV_TIMEKEEP, + .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_IA32 | SV_ILP32 | + SV_SHP | SV_TIMEKEEP, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/kern/imgact_elf.c Sun Feb 10 17:19:45 2019 (r343964) @@ -136,6 +136,27 @@ SYSCTL_INT(_kern_elf32, OID_AUTO, read_exec, CTLFLAG_R "enable execution from readable segments"); #endif +SYSCTL_NODE(__CONCAT(_kern_elf, __ELF_WORD_SIZE), OID_AUTO, aslr, CTLFLAG_RW, 0, + ""); +#define ASLR_NODE_OID __CONCAT(__CONCAT(_kern_elf, __ELF_WORD_SIZE), _aslr) + +static int __elfN(aslr_enabled) = 0; +SYSCTL_INT(ASLR_NODE_OID, OID_AUTO, enable, CTLFLAG_RWTUN, + &__elfN(aslr_enabled), 0, + __XSTRING(__CONCAT(ELF, __ELF_WORD_SIZE)) + ": enable address map randomization"); + +static int __elfN(pie_aslr_enabled) = 0; +SYSCTL_INT(ASLR_NODE_OID, OID_AUTO, pie_enable, CTLFLAG_RWTUN, + &__elfN(pie_aslr_enabled), 0, + __XSTRING(__CONCAT(ELF, __ELF_WORD_SIZE)) + ": enable address map randomization for PIE binaries"); + +static int __elfN(aslr_honor_sbrk) = 1; +SYSCTL_INT(ASLR_NODE_OID, OID_AUTO, honor_sbrk, CTLFLAG_RW, + &__elfN(aslr_honor_sbrk), 0, + __XSTRING(__CONCAT(ELF, __ELF_WORD_SIZE)) ": assume sbrk is used"); + static Elf_Brandinfo *elf_brand_list[MAX_BRANDS]; #define trunc_page_ps(va, ps) rounddown2(va, ps) @@ -773,6 +794,36 @@ fail: return (error); } +static u_long +__CONCAT(rnd_, __elfN(base))(vm_map_t map __unused, u_long minv, u_long maxv, + u_int align) +{ + u_long rbase, res; + + MPASS(vm_map_min(map) <= minv); + MPASS(maxv <= vm_map_max(map)); + MPASS(minv < maxv); + MPASS(minv + align < maxv); + arc4rand(&rbase, sizeof(rbase), 0); + res = roundup(minv, (u_long)align) + rbase % (maxv - minv); + res &= ~((u_long)align - 1); + if (res >= maxv) + res -= align; + KASSERT(res >= minv, + ("res %#lx < minv %#lx, maxv %#lx rbase %#lx", + res, minv, maxv, rbase)); + KASSERT(res < maxv, + ("res %#lx > maxv %#lx, minv %#lx rbase %#lx", + res, maxv, minv, rbase)); + return (res); +} + +/* + * Impossible et_dyn_addr initial value indicating that the real base + * must be calculated later with some randomization applied. + */ +#define ET_DYN_ADDR_RAND 1 + static int __CONCAT(exec_, __elfN(imgact))(struct image_params *imgp) { @@ -781,6 +832,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i const Elf_Phdr *phdr; Elf_Auxargs *elf_auxargs; struct vmspace *vmspace; + vm_map_t map; const char *err_str, *newinterp; char *interp, *interp_buf, *path; Elf_Brandinfo *brand_info; @@ -788,6 +840,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i vm_prot_t prot; u_long text_size, data_size, total_size, text_addr, data_addr; u_long seg_size, seg_addr, addr, baddr, et_dyn_addr, entry, proghdr; + u_long maxalign, mapsz, maxv, maxv1; uint32_t fctl0; int32_t osrel; int error, i, n, interp_name_len, have_interp; @@ -831,12 +884,17 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i err_str = newinterp = NULL; interp = interp_buf = NULL; td = curthread; + maxalign = PAGE_SIZE; + mapsz = 0; for (i = 0; i < hdr->e_phnum; i++) { switch (phdr[i].p_type) { case PT_LOAD: if (n == 0) baddr = phdr[i].p_vaddr; + if (phdr[i].p_align > maxalign) + maxalign = phdr[i].p_align; + mapsz += phdr[i].p_memsz; n++; break; case PT_INTERP: @@ -897,6 +955,7 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i error = ENOEXEC; goto ret; } + sv = brand_info->sysvec; et_dyn_addr = 0; if (hdr->e_type == ET_DYN) { if ((brand_info->flags & BI_CAN_EXEC_DYN) == 0) { @@ -908,10 +967,18 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i * Honour the base load address from the dso if it is * non-zero for some reason. */ - if (baddr == 0) - et_dyn_addr = ET_DYN_LOAD_ADDR; + if (baddr == 0) { + if ((sv->sv_flags & SV_ASLR) == 0 || + (fctl0 & NT_FREEBSD_FCTL_ASLR_DISABLE) != 0) + et_dyn_addr = ET_DYN_LOAD_ADDR; + else if ((__elfN(pie_aslr_enabled) && + (imgp->proc->p_flag2 & P2_ASLR_DISABLE) == 0) || + (imgp->proc->p_flag2 & P2_ASLR_ENABLE) != 0) + et_dyn_addr = ET_DYN_ADDR_RAND; + else + et_dyn_addr = ET_DYN_LOAD_ADDR; + } } - sv = brand_info->sysvec; if (interp != NULL && brand_info->interp_newpath != NULL) newinterp = brand_info->interp_newpath; @@ -928,9 +995,54 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i */ VOP_UNLOCK(imgp->vp, 0); + /* + * Decide whether to enable randomization of user mappings. + * First, reset user preferences for the setid binaries. + * Then, account for the support of the randomization by the + * ABI, by user preferences, and make special treatment for + * PIE binaries. + */ + if (imgp->credential_setid) { + PROC_LOCK(imgp->proc); + imgp->proc->p_flag2 &= ~(P2_ASLR_ENABLE | P2_ASLR_DISABLE); + PROC_UNLOCK(imgp->proc); + } + if ((sv->sv_flags & SV_ASLR) == 0 || + (imgp->proc->p_flag2 & P2_ASLR_DISABLE) != 0 || + (fctl0 & NT_FREEBSD_FCTL_ASLR_DISABLE) != 0) { + KASSERT(et_dyn_addr != ET_DYN_ADDR_RAND, + ("et_dyn_addr == RAND and !ASLR")); + } else if ((imgp->proc->p_flag2 & P2_ASLR_ENABLE) != 0 || + (__elfN(aslr_enabled) && hdr->e_type == ET_EXEC) || + et_dyn_addr == ET_DYN_ADDR_RAND) { + imgp->map_flags |= MAP_ASLR; + /* + * If user does not care about sbrk, utilize the bss + * grow region for mappings as well. We can select + * the base for the image anywere and still not suffer + * from the fragmentation. + */ + if (!__elfN(aslr_honor_sbrk) || + (imgp->proc->p_flag2 & P2_ASLR_IGNSTART) != 0) + imgp->map_flags |= MAP_ASLR_IGNSTART; + } + error = exec_new_vmspace(imgp, sv); + vmspace = imgp->proc->p_vmspace; + map = &vmspace->vm_map; + imgp->proc->p_sysent = sv; + maxv = vm_map_max(map) - lim_max(td, RLIMIT_STACK); + if (et_dyn_addr == ET_DYN_ADDR_RAND) { + KASSERT((map->flags & MAP_ASLR) != 0, + ("ET_DYN_ADDR_RAND but !MAP_ASLR")); + et_dyn_addr = __CONCAT(rnd_, __elfN(base))(map, + vm_map_min(map) + mapsz + lim_max(td, RLIMIT_DATA), + /* reserve half of the address space to interpreter */ + maxv / 2, 1UL << flsl(maxalign)); + } + vn_lock(imgp->vp, LK_EXCLUSIVE | LK_RETRY); if (error != 0) goto ret; @@ -1022,7 +1134,6 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i goto ret; } - vmspace = imgp->proc->p_vmspace; vmspace->vm_tsize = text_size >> PAGE_SHIFT; vmspace->vm_taddr = (caddr_t)(uintptr_t)text_addr; vmspace->vm_dsize = data_size >> PAGE_SHIFT; @@ -1036,6 +1147,14 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i */ addr = round_page((vm_offset_t)vmspace->vm_daddr + lim_max(td, RLIMIT_DATA)); + if ((map->flags & MAP_ASLR) != 0) { + maxv1 = maxv / 2 + addr / 2; + MPASS(maxv1 >= addr); /* No overflow */ + map->anon_loc = __CONCAT(rnd_, __elfN(base))(map, addr, maxv1, + MAXPAGESIZES > 1 ? pagesizes[1] : pagesizes[0]); + } else { + map->anon_loc = addr; + } PROC_UNLOCK(imgp->proc); imgp->entry_addr = entry; @@ -1043,6 +1162,13 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *i if (interp != NULL) { have_interp = FALSE; VOP_UNLOCK(imgp->vp, 0); + if ((map->flags & MAP_ASLR) != 0) { + /* Assume that interpeter fits into 1/4 of AS */ + maxv1 = maxv / 2 + addr / 2; + MPASS(maxv1 >= addr); /* No overflow */ + addr = __CONCAT(rnd_, __elfN(base))(map, addr, + maxv1, PAGE_SIZE); + } if (brand_info->emul_path != NULL && brand_info->emul_path[0] != '\0') { path = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); Modified: head/sys/kern/kern_exec.c ============================================================================== --- head/sys/kern/kern_exec.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/kern/kern_exec.c Sun Feb 10 17:19:45 2019 (r343964) @@ -1104,9 +1104,13 @@ exec_new_vmspace(struct image_params *imgp, struct sys shmexit(vmspace); pmap_remove_pages(vmspace_pmap(vmspace)); vm_map_remove(map, vm_map_min(map), vm_map_max(map)); - /* An exec terminates mlockall(MCL_FUTURE). */ + /* + * An exec terminates mlockall(MCL_FUTURE), ASLR state + * must be re-evaluated. + */ vm_map_lock(map); - vm_map_modflags(map, 0, MAP_WIREFUTURE); + vm_map_modflags(map, 0, MAP_WIREFUTURE | MAP_ASLR | + MAP_ASLR_IGNSTART); vm_map_unlock(map); } else { error = vmspace_exec(p, sv_minuser, sv->sv_maxuser); @@ -1115,6 +1119,7 @@ exec_new_vmspace(struct image_params *imgp, struct sys vmspace = p->p_vmspace; map = &vmspace->vm_map; } + map->flags |= imgp->map_flags; /* Map a shared page */ obj = sv->sv_shared_page_obj; Modified: head/sys/kern/kern_fork.c ============================================================================== --- head/sys/kern/kern_fork.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/kern/kern_fork.c Sun Feb 10 17:19:45 2019 (r343964) @@ -466,7 +466,8 @@ do_fork(struct thread *td, struct fork_req *fr, struct * Increase reference counts on shared objects. */ p2->p_flag = P_INMEM; - p2->p_flag2 = p1->p_flag2 & (P2_NOTRACE | P2_NOTRACE_EXEC | P2_TRAPCAP); + p2->p_flag2 = p1->p_flag2 & (P2_ASLR_DISABLE | P2_ASLR_ENABLE | + P2_ASLR_IGNSTART | P2_NOTRACE | P2_NOTRACE_EXEC | P2_TRAPCAP); p2->p_swtick = ticks; if (p1->p_flag & P_PROFIL) startprofclock(p2); Modified: head/sys/kern/kern_procctl.c ============================================================================== --- head/sys/kern/kern_procctl.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/kern/kern_procctl.c Sun Feb 10 17:19:45 2019 (r343964) @@ -43,6 +43,11 @@ __FBSDID("$FreeBSD$"); #include #include +#include +#include +#include +#include + static int protect_setchild(struct thread *td, struct proc *p, int flags) { @@ -413,6 +418,62 @@ trapcap_status(struct thread *td, struct proc *p, int return (0); } +static int +aslr_ctl(struct thread *td, struct proc *p, int state) +{ + + PROC_LOCK_ASSERT(p, MA_OWNED); + + switch (state) { + case PROC_ASLR_FORCE_ENABLE: + p->p_flag2 &= ~P2_ASLR_DISABLE; + p->p_flag2 |= P2_ASLR_ENABLE; + break; + case PROC_ASLR_FORCE_DISABLE: + p->p_flag2 |= P2_ASLR_DISABLE; + p->p_flag2 &= ~P2_ASLR_ENABLE; + break; + case PROC_ASLR_NOFORCE: + p->p_flag2 &= ~(P2_ASLR_ENABLE | P2_ASLR_DISABLE); + break; + default: + return (EINVAL); + } + return (0); +} + +static int +aslr_status(struct thread *td, struct proc *p, int *data) +{ + struct vmspace *vm; + int d; + + switch (p->p_flag2 & (P2_ASLR_ENABLE | P2_ASLR_DISABLE)) { + case 0: + d = PROC_ASLR_NOFORCE; + break; + case P2_ASLR_ENABLE: + d = PROC_ASLR_FORCE_ENABLE; + break; + case P2_ASLR_DISABLE: + d = PROC_ASLR_FORCE_DISABLE; + break; + } + if ((p->p_flag & P_WEXIT) == 0) { + _PHOLD(p); + PROC_UNLOCK(p); + vm = vmspace_acquire_ref(p); + if (vm != NULL && (vm->vm_map.flags & MAP_ASLR) != 0) { + d |= PROC_ASLR_ACTIVE; + vmspace_free(vm); + } + PROC_LOCK(p); + _PRELE(p); + } + *data = d; + return (0); +} + #ifndef _SYS_SYSPROTO_H_ struct procctl_args { idtype_t idtype; @@ -434,6 +495,7 @@ sys_procctl(struct thread *td, struct procctl_args *ua int error, error1, flags, signum; switch (uap->com) { + case PROC_ASLR_CTL: case PROC_SPROTECT: case PROC_TRACE_CTL: case PROC_TRAPCAP_CTL: @@ -463,6 +525,7 @@ sys_procctl(struct thread *td, struct procctl_args *ua return (error); data = &x.rk; break; + case PROC_ASLR_STATUS: case PROC_TRACE_STATUS: case PROC_TRAPCAP_STATUS: data = &flags; @@ -490,6 +553,7 @@ sys_procctl(struct thread *td, struct procctl_args *ua if (error == 0) error = error1; break; + case PROC_ASLR_STATUS: case PROC_TRACE_STATUS: case PROC_TRAPCAP_STATUS: if (error == 0) @@ -509,6 +573,10 @@ kern_procctl_single(struct thread *td, struct proc *p, PROC_LOCK_ASSERT(p, MA_OWNED); switch (com) { + case PROC_ASLR_CTL: + return (aslr_ctl(td, p, *(int *)data)); + case PROC_ASLR_STATUS: + return (aslr_status(td, p, data)); case PROC_SPROTECT: return (protect_set(td, p, *(int *)data)); case PROC_REAP_ACQUIRE: @@ -544,6 +612,8 @@ kern_procctl(struct thread *td, idtype_t idtype, id_t bool tree_locked; switch (com) { + case PROC_ASLR_CTL: + case PROC_ASLR_STATUS: case PROC_REAP_ACQUIRE: case PROC_REAP_RELEASE: case PROC_REAP_STATUS: @@ -593,6 +663,8 @@ kern_procctl(struct thread *td, idtype_t idtype, id_t sx_xlock(&proctree_lock); tree_locked = true; break; + case PROC_ASLR_CTL: + case PROC_ASLR_STATUS: case PROC_TRACE_STATUS: case PROC_TRAPCAP_STATUS: tree_locked = false; Modified: head/sys/sys/imgact.h ============================================================================== --- head/sys/sys/imgact.h Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/sys/imgact.h Sun Feb 10 17:19:45 2019 (r343964) @@ -89,6 +89,7 @@ struct image_params { u_long stack_sz; struct ucred *newcred; /* new credentials if changing */ bool credential_setid; /* true if becoming setid */ + u_int map_flags; }; #ifdef _KERNEL Modified: head/sys/sys/proc.h ============================================================================== --- head/sys/sys/proc.h Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/sys/proc.h Sun Feb 10 17:19:45 2019 (r343964) @@ -756,6 +756,9 @@ struct proc { #define P2_AST_SU 0x00000008 /* Handles SU ast for kthreads. */ #define P2_PTRACE_FSTP 0x00000010 /* SIGSTOP from PT_ATTACH not yet handled. */ #define P2_TRAPCAP 0x00000020 /* SIGTRAP on ENOTCAPABLE */ +#define P2_ASLR_ENABLE 0x00000040 /* Force enable ASLR. */ +#define P2_ASLR_DISABLE 0x00000080 /* Force disable ASLR. */ +#define P2_ASLR_IGNSTART 0x00000100 /* Enable ASLR to consume sbrk area. */ /* Flags protected by proctree_lock, kept in p_treeflags. */ #define P_TREE_ORPHANED 0x00000001 /* Reparented, on orphan list */ Modified: head/sys/sys/procctl.h ============================================================================== --- head/sys/sys/procctl.h Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/sys/procctl.h Sun Feb 10 17:19:45 2019 (r343964) @@ -53,6 +53,8 @@ #define PROC_TRAPCAP_STATUS 10 /* query trap capability status */ #define PROC_PDEATHSIG_CTL 11 /* set parent death signal */ #define PROC_PDEATHSIG_STATUS 12 /* get parent death signal */ +#define PROC_ASLR_CTL 13 /* en/dis ASLR */ +#define PROC_ASLR_STATUS 14 /* query ASLR status */ /* Operations for PROC_SPROTECT (passed in integer arg). */ #define PPROT_OP(x) ((x) & 0xf) @@ -115,6 +117,11 @@ struct procctl_reaper_kill { #define PROC_TRAPCAP_CTL_ENABLE 1 #define PROC_TRAPCAP_CTL_DISABLE 2 + +#define PROC_ASLR_FORCE_ENABLE 1 +#define PROC_ASLR_FORCE_DISABLE 2 +#define PROC_ASLR_NOFORCE 3 +#define PROC_ASLR_ACTIVE 0x80000000 #ifndef _KERNEL __BEGIN_DECLS Modified: head/sys/sys/sysent.h ============================================================================== --- head/sys/sys/sysent.h Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/sys/sysent.h Sun Feb 10 17:19:45 2019 (r343964) @@ -144,6 +144,7 @@ struct sysentvec { #define SV_SHP 0x010000 /* Shared page. */ #define SV_CAPSICUM 0x020000 /* Force cap_enter() on startup. */ #define SV_TIMEKEEP 0x040000 /* Shared page timehands. */ +#define SV_ASLR 0x080000 /* ASLR allowed. */ #define SV_ABI_MASK 0xff #define SV_ABI_ERRNO(p, e) ((p)->p_sysent->sv_errsize <= 0 ? e : \ Modified: head/sys/vm/vm_map.c ============================================================================== --- head/sys/vm/vm_map.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/vm/vm_map.c Sun Feb 10 17:19:45 2019 (r343964) @@ -801,6 +801,7 @@ _vm_map_init(vm_map_t map, pmap_t pmap, vm_offset_t mi map->root = NULL; map->timestamp = 0; map->busy = 0; + map->anon_loc = 0; } void @@ -1480,6 +1481,21 @@ vm_map_fixed(vm_map_t map, vm_object_t object, vm_ooff return (result); } +static const int aslr_pages_rnd_64[2] = {0x1000, 0x10}; +static const int aslr_pages_rnd_32[2] = {0x100, 0x4}; + +static int cluster_anon = 1; +SYSCTL_INT(_vm, OID_AUTO, cluster_anon, CTLFLAG_RW, + &cluster_anon, 0, + "Cluster anonymous mappings"); + +static long aslr_restarts; +SYSCTL_LONG(_vm, OID_AUTO, aslr_restarts, CTLFLAG_RD, + &aslr_restarts, 0, + "Number of aslr failures"); + +#define MAP_32BIT_MAX_ADDR ((vm_offset_t)1 << 31) + /* * Searches for the specified amount of free space in the given map with the * specified alignment. Performs an address-ordered, first-fit search from @@ -1559,8 +1575,9 @@ vm_map_find(vm_map_t map, vm_object_t object, vm_ooffs vm_size_t length, vm_offset_t max_addr, int find_space, vm_prot_t prot, vm_prot_t max, int cow) { - vm_offset_t alignment, min_addr; - int rv; + vm_offset_t alignment, curr_min_addr, min_addr; + int gap, pidx, rv, try; + bool cluster, en_aslr, update_anon; KASSERT((cow & (MAP_STACK_GROWS_DOWN | MAP_STACK_GROWS_UP)) == 0 || object == NULL, @@ -1575,24 +1592,96 @@ vm_map_find(vm_map_t map, vm_object_t object, vm_ooffs alignment = (vm_offset_t)1 << (find_space >> 8); } else alignment = 0; + en_aslr = (map->flags & MAP_ASLR) != 0; + update_anon = cluster = cluster_anon != 0 && + (map->flags & MAP_IS_SUB_MAP) == 0 && max_addr == 0 && + find_space != VMFS_NO_SPACE && object == NULL && + (cow & (MAP_INHERIT_SHARE | MAP_STACK_GROWS_UP | + MAP_STACK_GROWS_DOWN)) == 0 && prot != PROT_NONE; + curr_min_addr = min_addr = *addr; + if (en_aslr && min_addr == 0 && !cluster && + find_space != VMFS_NO_SPACE && + (map->flags & MAP_ASLR_IGNSTART) != 0) + curr_min_addr = min_addr = vm_map_min(map); + try = 0; vm_map_lock(map); + if (cluster) { + curr_min_addr = map->anon_loc; + if (curr_min_addr == 0) + cluster = false; + } if (find_space != VMFS_NO_SPACE) { KASSERT(find_space == VMFS_ANY_SPACE || find_space == VMFS_OPTIMAL_SPACE || find_space == VMFS_SUPER_SPACE || alignment != 0, ("unexpected VMFS flag")); - min_addr = *addr; again: - if (vm_map_findspace(map, min_addr, length, addr) || + /* + * When creating an anonymous mapping, try clustering + * with an existing anonymous mapping first. + * + * We make up to two attempts to find address space + * for a given find_space value. The first attempt may + * apply randomization or may cluster with an existing + * anonymous mapping. If this first attempt fails, + * perform a first-fit search of the available address + * space. + * + * If all tries failed, and find_space is + * VMFS_OPTIMAL_SPACE, fallback to VMFS_ANY_SPACE. + * Again enable clustering and randomization. + */ + try++; + MPASS(try <= 2); + + if (try == 2) { + /* + * Second try: we failed either to find a + * suitable region for randomizing the + * allocation, or to cluster with an existing + * mapping. Retry with free run. + */ + curr_min_addr = (map->flags & MAP_ASLR_IGNSTART) != 0 ? + vm_map_min(map) : min_addr; + atomic_add_long(&aslr_restarts, 1); + } + + if (try == 1 && en_aslr && !cluster) { + /* + * Find space for allocation, including + * gap needed for later randomization. + */ + pidx = MAXPAGESIZES > 1 && pagesizes[1] != 0 && + (find_space == VMFS_SUPER_SPACE || find_space == + VMFS_OPTIMAL_SPACE) ? 1 : 0; + gap = vm_map_max(map) > MAP_32BIT_MAX_ADDR && + (max_addr == 0 || max_addr > MAP_32BIT_MAX_ADDR) ? + aslr_pages_rnd_64[pidx] : aslr_pages_rnd_32[pidx]; + if (vm_map_findspace(map, curr_min_addr, length + + gap * pagesizes[pidx], addr) || + (max_addr != 0 && *addr + length > max_addr)) + goto again; + /* And randomize the start address. */ + *addr += (arc4random() % gap) * pagesizes[pidx]; + } else if (vm_map_findspace(map, curr_min_addr, length, addr) || (max_addr != 0 && *addr + length > max_addr)) { + if (cluster) { + cluster = false; + MPASS(try == 1); + goto again; + } rv = KERN_NO_SPACE; goto done; } + if (find_space != VMFS_ANY_SPACE && (rv = vm_map_alignspace(map, object, offset, addr, length, max_addr, alignment)) != KERN_SUCCESS) { if (find_space == VMFS_OPTIMAL_SPACE) { find_space = VMFS_ANY_SPACE; + curr_min_addr = min_addr; + cluster = update_anon; + try = 0; goto again; } goto done; @@ -1613,6 +1702,8 @@ again: rv = vm_map_insert(map, object, offset, *addr, *addr + length, prot, max, cow); } + if (rv == KERN_SUCCESS && update_anon) + map->anon_loc = *addr + length; done: vm_map_unlock(map); return (rv); @@ -1922,8 +2013,14 @@ vm_map_submap( vm_map_t submap) { vm_map_entry_t entry; - int result = KERN_INVALID_ARGUMENT; + int result; + result = KERN_INVALID_ARGUMENT; + + vm_map_lock(submap); + submap->flags |= MAP_IS_SUB_MAP; + vm_map_unlock(submap); + vm_map_lock(map); VM_MAP_RANGE_CHECK(map, start, end); @@ -1944,6 +2041,11 @@ vm_map_submap( } vm_map_unlock(map); + if (result != KERN_SUCCESS) { + vm_map_lock(submap); + submap->flags &= ~MAP_IS_SUB_MAP; + vm_map_unlock(submap); + } return (result); } @@ -3170,6 +3272,9 @@ vm_map_delete(vm_map_t map, vm_offset_t start, vm_offs entry->object.vm_object != NULL) pmap_remove(map->pmap, entry->start, entry->end); + if (entry->end == map->anon_loc) + map->anon_loc = entry->start; + /* * Delete the entry only after removing all pmap * entries pointing to its pages. (Otherwise, its @@ -3443,6 +3548,7 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c locked = vm_map_trylock(new_map); /* trylock to silence WITNESS */ KASSERT(locked, ("vmspace_fork: lock failed")); + new_map->anon_loc = old_map->anon_loc; old_entry = old_map->header.next; while (old_entry != &old_map->header) { Modified: head/sys/vm/vm_map.h ============================================================================== --- head/sys/vm/vm_map.h Sun Feb 10 14:30:15 2019 (r343963) +++ head/sys/vm/vm_map.h Sun Feb 10 17:19:45 2019 (r343964) @@ -202,6 +202,7 @@ struct vm_map { vm_flags_t flags; /* flags for this vm_map */ vm_map_entry_t root; /* Root of a binary search tree */ pmap_t pmap; /* (c) Physical map */ + vm_offset_t anon_loc; int busy; }; @@ -210,6 +211,9 @@ struct vm_map { */ #define MAP_WIREFUTURE 0x01 /* wire all future pages */ #define MAP_BUSY_WAKEUP 0x02 +#define MAP_IS_SUB_MAP 0x04 /* has parent */ +#define MAP_ASLR 0x08 /* enabled ASLR */ +#define MAP_ASLR_IGNSTART 0x10 #ifdef _KERNEL #if defined(KLD_MODULE) && !defined(KLD_TIED) Modified: head/usr.bin/proccontrol/proccontrol.c ============================================================================== --- head/usr.bin/proccontrol/proccontrol.c Sun Feb 10 14:30:15 2019 (r343963) +++ head/usr.bin/proccontrol/proccontrol.c Sun Feb 10 17:19:45 2019 (r343964) @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); #include enum { + MODE_ASLR, MODE_INVALID, MODE_TRACE, MODE_TRAPCAP, @@ -62,7 +63,7 @@ static void __dead2 usage(void) { - fprintf(stderr, "Usage: proccontrol -m (trace|trapcap) [-q] " + fprintf(stderr, "Usage: proccontrol -m (aslr|trace|trapcap) [-q] " "[-s (enable|disable)] [-p pid | command]\n"); exit(1); } @@ -81,7 +82,9 @@ main(int argc, char *argv[]) while ((ch = getopt(argc, argv, "m:qs:p:")) != -1) { switch (ch) { case 'm': - if (strcmp(optarg, "trace") == 0) + if (strcmp(optarg, "aslr") == 0) + mode = MODE_ASLR; + else if (strcmp(optarg, "trace") == 0) mode = MODE_TRACE; else if (strcmp(optarg, "trapcap") == 0) mode = MODE_TRAPCAP; @@ -121,6 +124,9 @@ main(int argc, char *argv[]) if (query) { switch (mode) { + case MODE_ASLR: + error = procctl(P_PID, pid, PROC_ASLR_STATUS, &arg); + break; case MODE_TRACE: error = procctl(P_PID, pid, PROC_TRACE_STATUS, &arg); break; @@ -134,6 +140,23 @@ main(int argc, char *argv[]) if (error != 0) err(1, "procctl status"); switch (mode) { + case MODE_ASLR: + switch (arg & ~PROC_ASLR_ACTIVE) { + case PROC_ASLR_FORCE_ENABLE: + printf("force enabled"); + break; + case PROC_ASLR_FORCE_DISABLE: + printf("force disabled"); + break; + case PROC_ASLR_NOFORCE: + printf("not forced"); + break; + } + if ((arg & PROC_ASLR_ACTIVE) != 0) + printf(", active\n"); + else + printf(", not active\n"); + break; case MODE_TRACE: if (arg == -1) printf("disabled\n"); @@ -155,6 +178,11 @@ main(int argc, char *argv[]) } } else { switch (mode) { + case MODE_ASLR: + arg = enable ? PROC_ASLR_FORCE_ENABLE : + PROC_ASLR_FORCE_DISABLE; + error = procctl(P_PID, pid, PROC_ASLR_CTL, &arg); + break; case MODE_TRACE: arg = enable ? PROC_TRACE_CTL_ENABLE : PROC_TRACE_CTL_DISABLE; From owner-svn-src-all@freebsd.org Sun Feb 10 18:28:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 366A914D5BC7; Sun, 10 Feb 2019 18:28:38 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C55128A922; Sun, 10 Feb 2019 18:28:37 +0000 (UTC) (envelope-from mmel@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B4F071C486; Sun, 10 Feb 2019 18:28:37 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AISbuO060987; Sun, 10 Feb 2019 18:28:37 GMT (envelope-from mmel@FreeBSD.org) Received: (from mmel@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AISbFB060986; Sun, 10 Feb 2019 18:28:37 GMT (envelope-from mmel@FreeBSD.org) Message-Id: <201902101828.x1AISbFB060986@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmel set sender to mmel@FreeBSD.org using -f From: Michal Meloun Date: Sun, 10 Feb 2019 18:28:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343965 - head/sys/arm/arm X-SVN-Group: head X-SVN-Commit-Author: mmel X-SVN-Commit-Paths: head/sys/arm/arm X-SVN-Commit-Revision: 343965 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C55128A922 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 18:28:38 -0000 Author: mmel Date: Sun Feb 10 18:28:37 2019 New Revision: 343965 URL: https://svnweb.freebsd.org/changeset/base/343965 Log: Fix bug introduced by r343962. DMAMAP_DMAMEM_ALLOC is property of dmamap, not dmatag. MFC after: 1 week Reported by: ian Pointy hat: mmel Modified: head/sys/arm/arm/busdma_machdep-v6.c Modified: head/sys/arm/arm/busdma_machdep-v6.c ============================================================================== --- head/sys/arm/arm/busdma_machdep-v6.c Sun Feb 10 17:19:45 2019 (r343964) +++ head/sys/arm/arm/busdma_machdep-v6.c Sun Feb 10 18:28:37 2019 (r343965) @@ -350,13 +350,13 @@ might_bounce(bus_dma_tag_t dmat, bus_dmamap_t map, bus bus_size_t size) { - KASSERT(dmat->flags & DMAMAP_DMAMEM_ALLOC || + KASSERT(map->flags & DMAMAP_DMAMEM_ALLOC || dmat->alignment <= PAGE_SIZE, ("%s: unsupported alignment (0x%08lx) for buffer not " "allocated by bus_dmamem_alloc()", __func__, dmat->alignment)); - return (!(dmat->flags & DMAMAP_DMAMEM_ALLOC) && + return (!(map->flags & DMAMAP_DMAMEM_ALLOC) && ((dmat->flags & BUS_DMA_EXCL_BOUNCE) || alignment_bounce(dmat, addr) || cacheline_bounce(map, addr, size))); From owner-svn-src-all@freebsd.org Sun Feb 10 19:01:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B93EA14D6B12; Sun, 10 Feb 2019 19:01:06 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5C3A98BE8B; Sun, 10 Feb 2019 19:01:06 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 497861C9D9; Sun, 10 Feb 2019 19:01:06 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AJ16AE079911; Sun, 10 Feb 2019 19:01:06 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AJ16rg079910; Sun, 10 Feb 2019 19:01:06 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902101901.x1AJ16rg079910@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 10 Feb 2019 19:01:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343966 - head/sys/vm X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/vm X-SVN-Commit-Revision: 343966 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5C3A98BE8B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 19:01:07 -0000 Author: kib Date: Sun Feb 10 19:01:05 2019 New Revision: 343966 URL: https://svnweb.freebsd.org/changeset/base/343966 Log: struct xswdev on amd64 requires compat32 shims after ino64. i386 is the only architecture where uint64_t does not specify 8-bytes alignment, which makes struct xswdev layout not compatible between 64bit and i386. Reported and tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/vm/swap_pager.c Modified: head/sys/vm/swap_pager.c ============================================================================== --- head/sys/vm/swap_pager.c Sun Feb 10 18:28:37 2019 (r343965) +++ head/sys/vm/swap_pager.c Sun Feb 10 19:01:05 2019 (r343966) @@ -2478,10 +2478,23 @@ struct xswdev11 { }; #endif +#if defined(__amd64__) && defined(COMPAT_FREEBSD32) +struct xswdev32 { + u_int xsw_version; + u_int xsw_dev1, xsw_dev2; + int xsw_flags; + int xsw_nblks; + int xsw_used; +}; +#endif + static int sysctl_vm_swap_info(SYSCTL_HANDLER_ARGS) { struct xswdev xs; +#if defined(__amd64__) && defined(COMPAT_FREEBSD32) + struct xswdev32 xs32; +#endif #if defined(COMPAT_FREEBSD11) struct xswdev11 xs11; #endif @@ -2492,6 +2505,18 @@ sysctl_vm_swap_info(SYSCTL_HANDLER_ARGS) error = swap_dev_info(*(int *)arg1, &xs, NULL, 0); if (error != 0) return (error); +#if defined(__amd64__) && defined(COMPAT_FREEBSD32) + if (req->oldlen == sizeof(xs32)) { + xs32.xsw_version = XSWDEV_VERSION; + xs32.xsw_dev1 = xs.xsw_dev; + xs32.xsw_dev2 = xs.xsw_dev >> 32; + xs32.xsw_flags = xs.xsw_flags; + xs32.xsw_nblks = xs.xsw_nblks; + xs32.xsw_used = xs.xsw_used; + error = SYSCTL_OUT(req, &xs32, sizeof(xs32)); + return (error); + } +#endif #if defined(COMPAT_FREEBSD11) if (req->oldlen == sizeof(xs11)) { xs11.xsw_version = XSWDEV_VERSION_11; @@ -2500,9 +2525,10 @@ sysctl_vm_swap_info(SYSCTL_HANDLER_ARGS) xs11.xsw_nblks = xs.xsw_nblks; xs11.xsw_used = xs.xsw_used; error = SYSCTL_OUT(req, &xs11, sizeof(xs11)); - } else + return (error); + } #endif - error = SYSCTL_OUT(req, &xs, sizeof(xs)); + error = SYSCTL_OUT(req, &xs, sizeof(xs)); return (error); } From owner-svn-src-all@freebsd.org Sun Feb 10 19:07:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2B53114D6FAD; Sun, 10 Feb 2019 19:07:48 +0000 (UTC) (envelope-from pluknet@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BC7398C32F; Sun, 10 Feb 2019 19:07:47 +0000 (UTC) (envelope-from pluknet@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A02C31CB4F; Sun, 10 Feb 2019 19:07:47 +0000 (UTC) (envelope-from pluknet@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AJ7lX0082217; Sun, 10 Feb 2019 19:07:47 GMT (envelope-from pluknet@FreeBSD.org) Received: (from pluknet@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AJ7lIE082216; Sun, 10 Feb 2019 19:07:47 GMT (envelope-from pluknet@FreeBSD.org) Message-Id: <201902101907.x1AJ7lIE082216@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pluknet set sender to pluknet@FreeBSD.org using -f From: Sergey Kandaurov Date: Sun, 10 Feb 2019 19:07:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343967 - head/lib/libc/net X-SVN-Group: head X-SVN-Commit-Author: pluknet X-SVN-Commit-Paths: head/lib/libc/net X-SVN-Commit-Revision: 343967 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BC7398C32F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 19:07:48 -0000 Author: pluknet Date: Sun Feb 10 19:07:47 2019 New Revision: 343967 URL: https://svnweb.freebsd.org/changeset/base/343967 Log: Sync "struct addrinfo" declaration with netdb.h. Notably, unlike in OpenBSD, which the man page was copied from, ai_canonname and ai_addr come in different order. PR: 225880 MFC after: 1 week Modified: head/lib/libc/net/getaddrinfo.3 Modified: head/lib/libc/net/getaddrinfo.3 ============================================================================== --- head/lib/libc/net/getaddrinfo.3 Sun Feb 10 19:01:05 2019 (r343966) +++ head/lib/libc/net/getaddrinfo.3 Sun Feb 10 19:07:47 2019 (r343967) @@ -18,7 +18,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 13, 2017 +.Dd February 10, 2019 .Dt GETADDRINFO 3 .Os .Sh NAME @@ -78,14 +78,14 @@ as defined by .Aq Pa netdb.h : .Bd -literal struct addrinfo { - int ai_flags; /* input flags */ - int ai_family; /* address family for socket */ - int ai_socktype; /* socket type */ - int ai_protocol; /* protocol for socket */ - socklen_t ai_addrlen; /* length of socket-address */ - struct sockaddr *ai_addr; /* socket-address for socket */ - char *ai_canonname; /* canonical name for service location */ - struct addrinfo *ai_next; /* pointer to next in list */ + int ai_flags; /* AI_PASSIVE, AI_CANONNAME, .. */ + int ai_family; /* AF_xxx */ + int ai_socktype; /* SOCK_xxx */ + int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ + socklen_t ai_addrlen; /* length of ai_addr */ + char *ai_canonname; /* canonical name for hostname */ + struct sockaddr *ai_addr; /* binary address */ + struct addrinfo *ai_next; /* next structure in linked list */ }; .Ed .Pp From owner-svn-src-all@freebsd.org Sun Feb 10 19:20:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F0AEE14D7718; Sun, 10 Feb 2019 19:20:03 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8D4178CB45; Sun, 10 Feb 2019 19:20:03 +0000 (UTC) (envelope-from np@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7E86B1CD08; Sun, 10 Feb 2019 19:20:03 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AJK3vd087509; Sun, 10 Feb 2019 19:20:03 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AJK3Yg087508; Sun, 10 Feb 2019 19:20:03 GMT (envelope-from np@FreeBSD.org) Message-Id: <201902101920.x1AJK3Yg087508@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Sun, 10 Feb 2019 19:20:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343968 - head/sys/dev/cxgbe/common X-SVN-Group: head X-SVN-Commit-Author: np X-SVN-Commit-Paths: head/sys/dev/cxgbe/common X-SVN-Commit-Revision: 343968 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8D4178CB45 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 19:20:04 -0000 Author: np Date: Sun Feb 10 19:20:03 2019 New Revision: 343968 URL: https://svnweb.freebsd.org/changeset/base/343968 Log: cxgbe(4): Ignore unused interrupts. Sponsored by: Chelsio Communications Modified: head/sys/dev/cxgbe/common/t4_hw.c Modified: head/sys/dev/cxgbe/common/t4_hw.c ============================================================================== --- head/sys/dev/cxgbe/common/t4_hw.c Sun Feb 10 19:07:47 2019 (r343967) +++ head/sys/dev/cxgbe/common/t4_hw.c Sun Feb 10 19:20:03 2019 (r343968) @@ -5306,6 +5306,7 @@ void t4_intr_enable(struct adapter *adap) F_EGRESS_SIZE_ERR; t4_set_reg_field(adap, A_SGE_INT_ENABLE3, val, val); t4_write_reg(adap, MYPF_REG(A_PL_PF_INT_ENABLE), PF_INTR_MASK); + t4_set_reg_field(adap, A_PL_INT_ENABLE, F_SF | F_I2CM, 0); t4_set_reg_field(adap, A_PL_INT_MAP0, 0, 1 << adap->pf); } From owner-svn-src-all@freebsd.org Sun Feb 10 20:14:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4FF6814DA040; Sun, 10 Feb 2019 20:14:00 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E70F08F2DB; Sun, 10 Feb 2019 20:13:59 +0000 (UTC) (envelope-from nwhitehorn@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D5EAE1D721; Sun, 10 Feb 2019 20:13:59 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKDx7f019846; Sun, 10 Feb 2019 20:13:59 GMT (envelope-from nwhitehorn@FreeBSD.org) Received: (from nwhitehorn@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKDxt1019844; Sun, 10 Feb 2019 20:13:59 GMT (envelope-from nwhitehorn@FreeBSD.org) Message-Id: <201902102013.x1AKDxt1019844@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: nwhitehorn set sender to nwhitehorn@FreeBSD.org using -f From: Nathan Whitehorn Date: Sun, 10 Feb 2019 20:13:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343969 - head/sys/mips/cavium/octe X-SVN-Group: head X-SVN-Commit-Author: nwhitehorn X-SVN-Commit-Paths: head/sys/mips/cavium/octe X-SVN-Commit-Revision: 343969 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E70F08F2DB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:14:00 -0000 Author: nwhitehorn Date: Sun Feb 10 20:13:59 2019 New Revision: 343969 URL: https://svnweb.freebsd.org/changeset/base/343969 Log: Performance improvements for octe(4): - Distribute RX load across multiple cores, if present. This reverts r217212, which is no longer relevant (I think because of the newer SDK). - Use newer APIs for pinning taskqueue entries to specific cores. - Deepen RX buffers. This more than doubles NAT forwarding throughput on my EdgeRouter Lite from, with typical packet mixture, 90 Mbps to over 200 Mbps. The result matches forwarding throughput in Linux without the UBNT hardware offload on the same hardware, and thus likely reflects hardware limits. Reviewed by: jhibbits Modified: head/sys/mips/cavium/octe/ethernet-defines.h head/sys/mips/cavium/octe/ethernet-rx.c head/sys/mips/cavium/octe/ethernet.c Modified: head/sys/mips/cavium/octe/ethernet-defines.h ============================================================================== --- head/sys/mips/cavium/octe/ethernet-defines.h Sun Feb 10 19:20:03 2019 (r343968) +++ head/sys/mips/cavium/octe/ethernet-defines.h Sun Feb 10 20:13:59 2019 (r343969) @@ -38,14 +38,14 @@ AND WITH ALL FAULTS AND CAVIUM NETWORKS MAKES NO PROM * the driver uses the default from below. */ -#define INTERRUPT_LIMIT 10000 /* Max interrupts per second per core */ +#define INTERRUPT_LIMIT 1000 /* Max interrupts per second per core */ /*#define INTERRUPT_LIMIT 0 *//* Don't limit the number of interrupts */ #define USE_RED 1 /* Enable Random Early Dropping under load */ #define USE_10MBPS_PREAMBLE_WORKAROUND 1 /* Allow SW based preamble removal at 10Mbps to workaround PHYs giving us bad preambles */ #define DONT_WRITEBACK(x) (x) /* Use this to have all FPA frees also tell the L2 not to write data to memory */ /*#define DONT_WRITEBACK(x) 0 *//* Use this to not have FPA frees control L2 */ -#define MAX_RX_PACKETS 120 /* Maximum number of packets to process per interrupt. */ +#define MAX_RX_PACKETS 1024 /* Maximum number of packets to process per interrupt. */ #define MAX_OUT_QUEUE_DEPTH 1000 #define FAU_NUM_PACKET_BUFFERS_TO_FREE (CVMX_FAU_REG_END - sizeof(uint32_t)) Modified: head/sys/mips/cavium/octe/ethernet-rx.c ============================================================================== --- head/sys/mips/cavium/octe/ethernet-rx.c Sun Feb 10 19:20:03 2019 (r343968) +++ head/sys/mips/cavium/octe/ethernet-rx.c Sun Feb 10 20:13:59 2019 (r343969) @@ -57,8 +57,6 @@ extern struct ifnet *cvm_oct_device[]; static struct task cvm_oct_task; static struct taskqueue *cvm_oct_taskq; -static int cvm_oct_rx_active; - /** * Interrupt handler. The interrupt occurs whenever the POW * transitions from 0->1 packets in our group. @@ -77,10 +75,9 @@ int cvm_oct_do_interrupt(void *dev_id) cvmx_write_csr(CVMX_POW_WQ_INT, 0x10001< Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B91F814DA263; Sun, 10 Feb 2019 20:21:21 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 588C98F651; Sun, 10 Feb 2019 20:21:21 +0000 (UTC) (envelope-from jhibbits@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3DA181D867; Sun, 10 Feb 2019 20:21:21 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKLLwM023321; Sun, 10 Feb 2019 20:21:21 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKLL8L023320; Sun, 10 Feb 2019 20:21:21 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201902102021.x1AKLL8L023320@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sun, 10 Feb 2019 20:21:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343970 - head/sys/powerpc/conf X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/powerpc/conf X-SVN-Commit-Revision: 343970 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 588C98F651 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:21:21 -0000 Author: jhibbits Date: Sun Feb 10 20:21:20 2019 New Revision: 343970 URL: https://svnweb.freebsd.org/changeset/base/343970 Log: powerpc: Clamp MAXCPU for MPC85XXSPE kernel to 2 SoCs with e500v2 chips only have at most 2 cores, and there are no plans to release any more e500v2-based SoCs. Clamping MAXCPU down to 2 saves 5MB of data, and 1.5MB bss. Modified: head/sys/powerpc/conf/MPC85XXSPE Modified: head/sys/powerpc/conf/MPC85XXSPE ============================================================================== --- head/sys/powerpc/conf/MPC85XXSPE Sun Feb 10 20:13:59 2019 (r343969) +++ head/sys/powerpc/conf/MPC85XXSPE Sun Feb 10 20:21:20 2019 (r343970) @@ -16,6 +16,7 @@ makeoptions WITH_CTF=1 makeoptions WERROR="-Werror -Wno-format -Wno-redundant-decls" options FPU_EMU +options MAXCPU=2 options _KPOSIX_PRIORITY_SCHEDULING options ALT_BREAK_TO_DEBUGGER From owner-svn-src-all@freebsd.org Sun Feb 10 20:25:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AB1E014DA51B; Sun, 10 Feb 2019 20:25:16 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 502848FA43; Sun, 10 Feb 2019 20:25:16 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 275261D8CC; Sun, 10 Feb 2019 20:25:16 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKPGfA025067; Sun, 10 Feb 2019 20:25:16 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKPG7M025066; Sun, 10 Feb 2019 20:25:16 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102025.x1AKPG7M025066@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:25:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343971 - stable/12/sys/net80211 X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: stable/12/sys/net80211 X-SVN-Commit-Revision: 343971 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 502848FA43 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:25:16 -0000 Author: avos Date: Sun Feb 10 20:25:15 2019 New Revision: 343971 URL: https://svnweb.freebsd.org/changeset/base/343971 Log: MFC r343837: net80211(4): validate supplied roam:rate values from ifconfig(8) Modified: stable/12/sys/net80211/ieee80211_ioctl.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/net80211/ieee80211_ioctl.c ============================================================================== --- stable/12/sys/net80211/ieee80211_ioctl.c Sun Feb 10 20:21:20 2019 (r343970) +++ stable/12/sys/net80211/ieee80211_ioctl.c Sun Feb 10 20:25:15 2019 (r343971) @@ -2204,18 +2204,6 @@ ieee80211_ioctl_setregdomain(struct ieee80211vap *vap, } static int -ieee80211_ioctl_setroam(struct ieee80211vap *vap, - const struct ieee80211req *ireq) -{ - if (ireq->i_len != sizeof(vap->iv_roamparms)) - return EINVAL; - /* XXX validate params */ - /* XXX? ENETRESET to push to device? */ - return copyin(ireq->i_data, vap->iv_roamparms, - sizeof(vap->iv_roamparms)); -} - -static int checkrate(const struct ieee80211_rateset *rs, int rate) { int i; @@ -2242,6 +2230,73 @@ checkmcs(const struct ieee80211_htrateset *rs, int mcs if (IEEE80211_RV(rs->rs_rates[i]) == rate_val) return 1; return 0; +} + +static int +ieee80211_ioctl_setroam(struct ieee80211vap *vap, + const struct ieee80211req *ireq) +{ + struct ieee80211com *ic = vap->iv_ic; + struct ieee80211_roamparams_req *parms; + struct ieee80211_roamparam *src, *dst; + const struct ieee80211_htrateset *rs_ht; + const struct ieee80211_rateset *rs; + int changed, error, mode, is11n, nmodes; + + if (ireq->i_len != sizeof(vap->iv_roamparms)) + return EINVAL; + + parms = IEEE80211_MALLOC(sizeof(*parms), M_TEMP, + IEEE80211_M_NOWAIT | IEEE80211_M_ZERO); + if (parms == NULL) + return ENOMEM; + + error = copyin(ireq->i_data, parms, ireq->i_len); + if (error != 0) + goto fail; + + changed = 0; + nmodes = IEEE80211_MODE_MAX; + + /* validate parameters and check if anything changed */ + for (mode = IEEE80211_MODE_11A; mode < nmodes; mode++) { + if (isclr(ic->ic_modecaps, mode)) + continue; + src = &parms->params[mode]; + dst = &vap->iv_roamparms[mode]; + rs = &ic->ic_sup_rates[mode]; /* NB: 11n maps to legacy */ + rs_ht = &ic->ic_sup_htrates; + is11n = (mode == IEEE80211_MODE_11NA || + mode == IEEE80211_MODE_11NG); + /* XXX TODO: 11ac */ + if (src->rate != dst->rate) { + if (!checkrate(rs, src->rate) && + (!is11n || !checkmcs(rs_ht, src->rate))) { + error = EINVAL; + goto fail; + } + changed++; + } + if (src->rssi != dst->rssi) + changed++; + } + if (changed) { + /* + * Copy new parameters in place and notify the + * driver so it can push state to the device. + */ + /* XXX locking? */ + for (mode = IEEE80211_MODE_11A; mode < nmodes; mode++) { + if (isset(ic->ic_modecaps, mode)) + vap->iv_roamparms[mode] = parms->params[mode]; + } + + if (vap->iv_roaming == IEEE80211_ROAMING_DEVICE) + error = ERESTART; + } + +fail: IEEE80211_FREE(parms, M_TEMP); + return error; } static int From owner-svn-src-all@freebsd.org Sun Feb 10 20:25:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 834C114DA581; Sun, 10 Feb 2019 20:25:46 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 26EDD8FB73; Sun, 10 Feb 2019 20:25:46 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 00F9F1D8CD; Sun, 10 Feb 2019 20:25:46 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKPjYE025129; Sun, 10 Feb 2019 20:25:45 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKPj81025128; Sun, 10 Feb 2019 20:25:45 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102025.x1AKPj81025128@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:25:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343972 - stable/11/sys/net80211 X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: stable/11/sys/net80211 X-SVN-Commit-Revision: 343972 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 26EDD8FB73 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:25:46 -0000 Author: avos Date: Sun Feb 10 20:25:45 2019 New Revision: 343972 URL: https://svnweb.freebsd.org/changeset/base/343972 Log: MFC r343837: net80211(4): validate supplied roam:rate values from ifconfig(8) Modified: stable/11/sys/net80211/ieee80211_ioctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/net80211/ieee80211_ioctl.c ============================================================================== --- stable/11/sys/net80211/ieee80211_ioctl.c Sun Feb 10 20:25:15 2019 (r343971) +++ stable/11/sys/net80211/ieee80211_ioctl.c Sun Feb 10 20:25:45 2019 (r343972) @@ -2136,18 +2136,6 @@ ieee80211_ioctl_setregdomain(struct ieee80211vap *vap, } static int -ieee80211_ioctl_setroam(struct ieee80211vap *vap, - const struct ieee80211req *ireq) -{ - if (ireq->i_len != sizeof(vap->iv_roamparms)) - return EINVAL; - /* XXX validate params */ - /* XXX? ENETRESET to push to device? */ - return copyin(ireq->i_data, vap->iv_roamparms, - sizeof(vap->iv_roamparms)); -} - -static int checkrate(const struct ieee80211_rateset *rs, int rate) { int i; @@ -2168,6 +2156,70 @@ checkmcs(int mcs) if ((mcs & IEEE80211_RATE_MCS) == 0) /* MCS always have 0x80 set */ return 0; return (mcs & 0x7f) <= 15; /* XXX could search ht rate set */ +} + +static int +ieee80211_ioctl_setroam(struct ieee80211vap *vap, + const struct ieee80211req *ireq) +{ + struct ieee80211com *ic = vap->iv_ic; + struct ieee80211_roamparams_req *parms; + struct ieee80211_roamparam *src, *dst; + const struct ieee80211_rateset *rs; + int changed, error, mode, is11n, nmodes; + + if (ireq->i_len != sizeof(vap->iv_roamparms)) + return EINVAL; + + parms = IEEE80211_MALLOC(sizeof(*parms), M_TEMP, + IEEE80211_M_NOWAIT | IEEE80211_M_ZERO); + if (parms == NULL) + return ENOMEM; + + error = copyin(ireq->i_data, parms, ireq->i_len); + if (error != 0) + goto fail; + + changed = 0; + nmodes = IEEE80211_MODE_MAX; + + /* validate parameters and check if anything changed */ + for (mode = IEEE80211_MODE_11A; mode < nmodes; mode++) { + if (isclr(ic->ic_modecaps, mode)) + continue; + src = &parms->params[mode]; + dst = &vap->iv_roamparms[mode]; + rs = &ic->ic_sup_rates[mode]; /* NB: 11n maps to legacy */ + is11n = (mode == IEEE80211_MODE_11NA || + mode == IEEE80211_MODE_11NG); + if (src->rate != dst->rate) { + if (!checkrate(rs, src->rate) && + (!is11n || !checkmcs(src->rate))) { + error = EINVAL; + goto fail; + } + changed++; + } + if (src->rssi != dst->rssi) + changed++; + } + if (changed) { + /* + * Copy new parameters in place and notify the + * driver so it can push state to the device. + */ + /* XXX locking? */ + for (mode = IEEE80211_MODE_11A; mode < nmodes; mode++) { + if (isset(ic->ic_modecaps, mode)) + vap->iv_roamparms[mode] = parms->params[mode]; + } + + if (vap->iv_roaming == IEEE80211_ROAMING_DEVICE) + error = ERESTART; + } + +fail: IEEE80211_FREE(parms, M_TEMP); + return error; } static int From owner-svn-src-all@freebsd.org Sun Feb 10 20:26:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A85DA14DA5F9; Sun, 10 Feb 2019 20:26:13 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 476D48FCA5; Sun, 10 Feb 2019 20:26:13 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 390CC1D8CE; Sun, 10 Feb 2019 20:26:13 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKQDAs025195; Sun, 10 Feb 2019 20:26:13 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKQDUG025194; Sun, 10 Feb 2019 20:26:13 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102026.x1AKQDUG025194@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:26:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r343973 - stable/10/sys/net80211 X-SVN-Group: stable-10 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: stable/10/sys/net80211 X-SVN-Commit-Revision: 343973 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 476D48FCA5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:26:13 -0000 Author: avos Date: Sun Feb 10 20:26:12 2019 New Revision: 343973 URL: https://svnweb.freebsd.org/changeset/base/343973 Log: MFC r343837: net80211(4): validate supplied roam:rate values from ifconfig(8) Modified: stable/10/sys/net80211/ieee80211_ioctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/net80211/ieee80211_ioctl.c ============================================================================== --- stable/10/sys/net80211/ieee80211_ioctl.c Sun Feb 10 20:25:45 2019 (r343972) +++ stable/10/sys/net80211/ieee80211_ioctl.c Sun Feb 10 20:26:12 2019 (r343973) @@ -2141,18 +2141,6 @@ ieee80211_ioctl_setregdomain(struct ieee80211vap *vap, } static int -ieee80211_ioctl_setroam(struct ieee80211vap *vap, - const struct ieee80211req *ireq) -{ - if (ireq->i_len != sizeof(vap->iv_roamparms)) - return EINVAL; - /* XXX validate params */ - /* XXX? ENETRESET to push to device? */ - return copyin(ireq->i_data, vap->iv_roamparms, - sizeof(vap->iv_roamparms)); -} - -static int checkrate(const struct ieee80211_rateset *rs, int rate) { int i; @@ -2176,6 +2164,69 @@ checkmcs(int mcs) } static __noinline int +ieee80211_ioctl_setroam(struct ieee80211vap *vap, + const struct ieee80211req *ireq) +{ + struct ieee80211com *ic = vap->iv_ic; + struct ieee80211_roamparams_req *parms; + struct ieee80211_roamparam *src, *dst; + const struct ieee80211_rateset *rs; + int changed, error, mode, is11n, nmodes; + + if (ireq->i_len != sizeof(vap->iv_roamparms)) + return EINVAL; + + parms = malloc(sizeof(*parms), M_TEMP, M_NOWAIT | M_ZERO); + if (parms == NULL) + return ENOMEM; + + error = copyin(ireq->i_data, parms, ireq->i_len); + if (error != 0) + goto fail; + + changed = 0; + nmodes = IEEE80211_MODE_MAX; + + /* validate parameters and check if anything changed */ + for (mode = IEEE80211_MODE_11A; mode < nmodes; mode++) { + if (isclr(ic->ic_modecaps, mode)) + continue; + src = &parms->params[mode]; + dst = &vap->iv_roamparms[mode]; + rs = &ic->ic_sup_rates[mode]; /* NB: 11n maps to legacy */ + is11n = (mode == IEEE80211_MODE_11NA || + mode == IEEE80211_MODE_11NG); + if (src->rate != dst->rate) { + if (!checkrate(rs, src->rate) && + (!is11n || !checkmcs(src->rate))) { + error = EINVAL; + goto fail; + } + changed++; + } + if (src->rssi != dst->rssi) + changed++; + } + if (changed) { + /* + * Copy new parameters in place and notify the + * driver so it can push state to the device. + */ + /* XXX locking? */ + for (mode = IEEE80211_MODE_11A; mode < nmodes; mode++) { + if (isset(ic->ic_modecaps, mode)) + vap->iv_roamparms[mode] = parms->params[mode]; + } + + if (vap->iv_roaming == IEEE80211_ROAMING_DEVICE) + error = ERESTART; + } + +fail: free(parms, M_TEMP); + return error; +} + +static int ieee80211_ioctl_settxparams(struct ieee80211vap *vap, const struct ieee80211req *ireq) { From owner-svn-src-all@freebsd.org Sun Feb 10 20:42:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A77A614DAFBB; Sun, 10 Feb 2019 20:42:07 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 43F166859A; Sun, 10 Feb 2019 20:42:07 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 17A441DC13; Sun, 10 Feb 2019 20:42:07 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKg670035268; Sun, 10 Feb 2019 20:42:06 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKg6vp035267; Sun, 10 Feb 2019 20:42:06 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102042.x1AKg6vp035267@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:42:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343974 - in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Commit-Revision: 343974 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 43F166859A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:42:07 -0000 Author: avos Date: Sun Feb 10 20:42:06 2019 New Revision: 343974 URL: https://svnweb.freebsd.org/changeset/base/343974 Log: MFC r343698, r343700: ifconfig(8): display management / multicast wlan(4) rates properly For 11n / 11ac we are still using non-11n rates for management and multicast traffic by default; check 'MCS rate' bit to determine how to print them correctly. PR: 161035 Modified: stable/11/sbin/ifconfig/ifieee80211.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sbin/ifconfig/ifieee80211.c stable/12/sbin/ifconfig/ifieee80211.c Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/11/sbin/ifconfig/ifieee80211.c Sun Feb 10 20:26:12 2019 (r343973) +++ stable/11/sbin/ifconfig/ifieee80211.c Sun Feb 10 20:42:06 2019 (r343974) @@ -3946,6 +3946,21 @@ list_roam(int s) } } +/* XXX TODO: rate-to-string method... */ +static const char* +get_mcs_mbs_rate_str(uint8_t rate) +{ + return (rate & IEEE80211_RATE_MCS) ? "MCS " : "Mb/s"; +} + +static uint8_t +get_rate_value(uint8_t rate) +{ + if (rate & IEEE80211_RATE_MCS) + return (rate &~ IEEE80211_RATE_MCS); + return (rate / 2); +} + static void list_txparams(int s) { @@ -3959,19 +3974,23 @@ list_txparams(int s) continue; if (mode == IEEE80211_MODE_11NA || mode == IEEE80211_MODE_11NG) { if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) - LINE_CHECK("%-7.7s ucast NONE mgmt %2u MCS " - "mcast %2u MCS maxretry %u", + LINE_CHECK("%-7.7s ucast NONE mgmt %2u %s " + "mcast %2u %s maxretry %u", modename[mode], - tp->mgmtrate &~ IEEE80211_RATE_MCS, - tp->mcastrate &~ IEEE80211_RATE_MCS, + get_rate_value(tp->mgmtrate), + get_mcs_mbs_rate_str(tp->mgmtrate), + get_rate_value(tp->mcastrate), + get_mcs_mbs_rate_str(tp->mcastrate), tp->maxretry); else - LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u MCS " - "mcast %2u MCS maxretry %u", + LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u %s " + "mcast %2u %s maxretry %u", modename[mode], tp->ucastrate &~ IEEE80211_RATE_MCS, - tp->mgmtrate &~ IEEE80211_RATE_MCS, - tp->mcastrate &~ IEEE80211_RATE_MCS, + get_rate_value(tp->mgmtrate), + get_mcs_mbs_rate_str(tp->mgmtrate), + get_rate_value(tp->mcastrate), + get_mcs_mbs_rate_str(tp->mcastrate), tp->maxretry); } else { if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) From owner-svn-src-all@freebsd.org Sun Feb 10 20:42:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 13E5214DAFC3; Sun, 10 Feb 2019 20:42:08 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AB5FF6859C; Sun, 10 Feb 2019 20:42:07 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 84DBC1DC14; Sun, 10 Feb 2019 20:42:07 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKg7hs035275; Sun, 10 Feb 2019 20:42:07 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKg7ln035274; Sun, 10 Feb 2019 20:42:07 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102042.x1AKg7ln035274@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:42:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r343974 - in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Group: stable-10 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Commit-Revision: 343974 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AB5FF6859C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:42:08 -0000 Author: avos Date: Sun Feb 10 20:42:06 2019 New Revision: 343974 URL: https://svnweb.freebsd.org/changeset/base/343974 Log: MFC r343698, r343700: ifconfig(8): display management / multicast wlan(4) rates properly For 11n / 11ac we are still using non-11n rates for management and multicast traffic by default; check 'MCS rate' bit to determine how to print them correctly. PR: 161035 Modified: stable/10/sbin/ifconfig/ifieee80211.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sbin/ifconfig/ifieee80211.c stable/12/sbin/ifconfig/ifieee80211.c Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/10/sbin/ifconfig/ifieee80211.c Sun Feb 10 20:26:12 2019 (r343973) +++ stable/10/sbin/ifconfig/ifieee80211.c Sun Feb 10 20:42:06 2019 (r343974) @@ -3806,6 +3806,21 @@ list_roam(int s) } } +/* XXX TODO: rate-to-string method... */ +static const char* +get_mcs_mbs_rate_str(uint8_t rate) +{ + return (rate & IEEE80211_RATE_MCS) ? "MCS " : "Mb/s"; +} + +static uint8_t +get_rate_value(uint8_t rate) +{ + if (rate & IEEE80211_RATE_MCS) + return (rate &~ IEEE80211_RATE_MCS); + return (rate / 2); +} + static void list_txparams(int s) { @@ -3819,19 +3834,23 @@ list_txparams(int s) continue; if (mode == IEEE80211_MODE_11NA || mode == IEEE80211_MODE_11NG) { if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) - LINE_CHECK("%-7.7s ucast NONE mgmt %2u MCS " - "mcast %2u MCS maxretry %u", + LINE_CHECK("%-7.7s ucast NONE mgmt %2u %s " + "mcast %2u %s maxretry %u", modename[mode], - tp->mgmtrate &~ IEEE80211_RATE_MCS, - tp->mcastrate &~ IEEE80211_RATE_MCS, + get_rate_value(tp->mgmtrate), + get_mcs_mbs_rate_str(tp->mgmtrate), + get_rate_value(tp->mcastrate), + get_mcs_mbs_rate_str(tp->mcastrate), tp->maxretry); else - LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u MCS " - "mcast %2u MCS maxretry %u", + LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u %s " + "mcast %2u %s maxretry %u", modename[mode], tp->ucastrate &~ IEEE80211_RATE_MCS, - tp->mgmtrate &~ IEEE80211_RATE_MCS, - tp->mcastrate &~ IEEE80211_RATE_MCS, + get_rate_value(tp->mgmtrate), + get_mcs_mbs_rate_str(tp->mgmtrate), + get_rate_value(tp->mcastrate), + get_mcs_mbs_rate_str(tp->mcastrate), tp->maxretry); } else { if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) From owner-svn-src-all@freebsd.org Sun Feb 10 20:42:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A5D214DAFC9; Sun, 10 Feb 2019 20:42:08 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0D1A16859F; Sun, 10 Feb 2019 20:42:08 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D9CA11DC15; Sun, 10 Feb 2019 20:42:07 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKg7D3035281; Sun, 10 Feb 2019 20:42:07 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKg7dH035280; Sun, 10 Feb 2019 20:42:07 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102042.x1AKg7dH035280@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:42:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343974 - in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Commit-Revision: 343974 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0D1A16859F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:42:08 -0000 Author: avos Date: Sun Feb 10 20:42:06 2019 New Revision: 343974 URL: https://svnweb.freebsd.org/changeset/base/343974 Log: MFC r343698, r343700: ifconfig(8): display management / multicast wlan(4) rates properly For 11n / 11ac we are still using non-11n rates for management and multicast traffic by default; check 'MCS rate' bit to determine how to print them correctly. PR: 161035 Modified: stable/12/sbin/ifconfig/ifieee80211.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sbin/ifconfig/ifieee80211.c stable/11/sbin/ifconfig/ifieee80211.c Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/12/sbin/ifconfig/ifieee80211.c Sun Feb 10 20:26:12 2019 (r343973) +++ stable/12/sbin/ifconfig/ifieee80211.c Sun Feb 10 20:42:06 2019 (r343974) @@ -4155,6 +4155,21 @@ list_roam(int s) } } +/* XXX TODO: rate-to-string method... */ +static const char* +get_mcs_mbs_rate_str(uint8_t rate) +{ + return (rate & IEEE80211_RATE_MCS) ? "MCS " : "Mb/s"; +} + +static uint8_t +get_rate_value(uint8_t rate) +{ + if (rate & IEEE80211_RATE_MCS) + return (rate &~ IEEE80211_RATE_MCS); + return (rate / 2); +} + static void list_txparams(int s) { @@ -4171,19 +4186,23 @@ list_txparams(int s) mode == IEEE80211_MODE_VHT_2GHZ || mode == IEEE80211_MODE_VHT_5GHZ) { if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) - LINE_CHECK("%-7.7s ucast NONE mgmt %2u MCS " - "mcast %2u MCS maxretry %u", + LINE_CHECK("%-7.7s ucast NONE mgmt %2u %s " + "mcast %2u %s maxretry %u", modename[mode], - tp->mgmtrate &~ IEEE80211_RATE_MCS, - tp->mcastrate &~ IEEE80211_RATE_MCS, + get_rate_value(tp->mgmtrate), + get_mcs_mbs_rate_str(tp->mgmtrate), + get_rate_value(tp->mcastrate), + get_mcs_mbs_rate_str(tp->mcastrate), tp->maxretry); else - LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u MCS " - "mcast %2u MCS maxretry %u", + LINE_CHECK("%-7.7s ucast %2u MCS mgmt %2u %s " + "mcast %2u %s maxretry %u", modename[mode], tp->ucastrate &~ IEEE80211_RATE_MCS, - tp->mgmtrate &~ IEEE80211_RATE_MCS, - tp->mcastrate &~ IEEE80211_RATE_MCS, + get_rate_value(tp->mgmtrate), + get_mcs_mbs_rate_str(tp->mgmtrate), + get_rate_value(tp->mcastrate), + get_mcs_mbs_rate_str(tp->mcastrate), tp->maxretry); } else { if (tp->ucastrate == IEEE80211_FIXED_RATE_NONE) From owner-svn-src-all@freebsd.org Sun Feb 10 20:59:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DE6E014DB96A; Sun, 10 Feb 2019 20:59:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 894956A8C9; Sun, 10 Feb 2019 20:59:39 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 73FA01DDE9; Sun, 10 Feb 2019 20:59:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AKxdRd041326; Sun, 10 Feb 2019 20:59:39 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AKxaK9041310; Sun, 10 Feb 2019 20:59:36 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102059.x1AKxaK9041310@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 20:59:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343975 - in stable/12/sys: dev/bwi dev/iwi dev/ral dev/rtwn dev/usb/wlan net80211 X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable/12/sys: dev/bwi dev/iwi dev/ral dev/rtwn dev/usb/wlan net80211 X-SVN-Commit-Revision: 343975 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 894956A8C9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 20:59:40 -0000 Author: avos Date: Sun Feb 10 20:59:35 2019 New Revision: 343975 URL: https://svnweb.freebsd.org/changeset/base/343975 Log: MFC r343474: Remove 2GHz channel list copies from wireless drivers. Wrap ieee80211_add_channel_list_2ghz into another function which supplies default (1-14) channel list to it and drop its copies from drivers. Modified: stable/12/sys/dev/bwi/if_bwi.c stable/12/sys/dev/iwi/if_iwi.c stable/12/sys/dev/ral/rt2560.c stable/12/sys/dev/ral/rt2661.c stable/12/sys/dev/ral/rt2860.c stable/12/sys/dev/rtwn/if_rtwn.c stable/12/sys/dev/usb/wlan/if_rsu.c stable/12/sys/dev/usb/wlan/if_rum.c stable/12/sys/dev/usb/wlan/if_run.c stable/12/sys/dev/usb/wlan/if_runreg.h stable/12/sys/dev/usb/wlan/if_ural.c stable/12/sys/dev/usb/wlan/if_urtw.c stable/12/sys/dev/usb/wlan/if_zyd.c stable/12/sys/dev/usb/wlan/if_zydreg.h stable/12/sys/net80211/ieee80211.c stable/12/sys/net80211/ieee80211_var.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/bwi/if_bwi.c ============================================================================== --- stable/12/sys/dev/bwi/if_bwi.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/bwi/if_bwi.c Sun Feb 10 20:59:35 2019 (r343975) @@ -307,9 +307,6 @@ static const struct { [108] = { 7, 3 } }; -static const uint8_t bwi_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - #ifdef BWI_DEBUG #ifdef BWI_DEBUG_VERBOSE static uint32_t bwi_debug = BWI_DBG_ATTACH | BWI_DBG_INIT | BWI_DBG_TXPOWER; @@ -1715,8 +1712,7 @@ bwi_getradiocaps(struct ieee80211com *ic, panic("unknown phymode %d\n", phy->phy_mode); } - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - bwi_chan_2ghz, nitems(bwi_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/12/sys/dev/iwi/if_iwi.c ============================================================================== --- stable/12/sys/dev/iwi/if_iwi.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/iwi/if_iwi.c Sun Feb 10 20:59:35 2019 (r343975) @@ -132,8 +132,6 @@ static const struct iwi_ident iwi_ident_table[] = { { 0, 0, NULL } }; -static const uint8_t def_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; static const uint8_t def_chan_5ghz_band1[] = { 36, 40, 44, 48, 52, 56, 60, 64 }; static const uint8_t def_chan_5ghz_band2[] = @@ -3604,8 +3602,8 @@ iwi_getradiocaps(struct ieee80211com *ic, iwi_collect_bands(ic, bands, sizeof(bands)); *nchans = 0; if (isset(bands, IEEE80211_MODE_11B) || isset(bands, IEEE80211_MODE_11G)) - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - def_chan_2ghz, nitems(def_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, + bands, 0); if (isset(bands, IEEE80211_MODE_11A)) { ieee80211_add_channel_list_5ghz(chans, maxchans, nchans, def_chan_5ghz_band1, nitems(def_chan_5ghz_band1), Modified: stable/12/sys/dev/ral/rt2560.c ============================================================================== --- stable/12/sys/dev/ral/rt2560.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/ral/rt2560.c Sun Feb 10 20:59:35 2019 (r343975) @@ -189,9 +189,6 @@ static const uint32_t rt2560_rf2525e_r2[] = RT2560_R static const uint32_t rt2560_rf2526_r2[] = RT2560_RF2526_R2; static const uint32_t rt2560_rf2526_hi_r2[] = RT2560_RF2526_HI_R2; -static const uint8_t rt2560_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t rt2560_chan_5ghz[] = { 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -2137,8 +2134,7 @@ rt2560_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rt2560_chan_2ghz, nitems(rt2560_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2560_RF_5222) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/12/sys/dev/ral/rt2661.c ============================================================================== --- stable/12/sys/dev/ral/rt2661.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/ral/rt2661.c Sun Feb 10 20:59:35 2019 (r343975) @@ -195,8 +195,6 @@ static const struct rfprog { RT2661_RF5225_2 }; -static const uint8_t rt2661_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; static const uint8_t rt2661_chan_5ghz[] = { 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -2757,8 +2755,7 @@ rt2661_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rt2661_chan_2ghz, nitems(rt2661_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2661_RF_5225 || sc->rf_rev == RT2661_RF_5325) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/12/sys/dev/ral/rt2860.c ============================================================================== --- stable/12/sys/dev/ral/rt2860.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/ral/rt2860.c Sun Feb 10 20:59:35 2019 (r343975) @@ -228,8 +228,6 @@ static const struct { RT5392_DEF_RF }; -static const uint8_t rt2860_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; static const uint8_t rt2860_chan_5ghz[] = { 36, 38, 40, 44, 46, 48, 52, 54, 56, 60, 62, 64, 100, 102, 104, 108, 110, 112, 116, 118, 120, 124, 126, 128, 132, 134, 136, 140, @@ -2310,8 +2308,7 @@ rt2860_getradiocaps(struct ieee80211com *ic, int maxch memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rt2860_chan_2ghz, nitems(rt2860_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2860_RF_2750 || sc->rf_rev == RT2860_RF_2850) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/12/sys/dev/rtwn/if_rtwn.c ============================================================================== --- stable/12/sys/dev/rtwn/if_rtwn.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/rtwn/if_rtwn.c Sun Feb 10 20:59:35 2019 (r343975) @@ -153,9 +153,6 @@ static void rtwn_stop(struct rtwn_softc *); MALLOC_DEFINE(M_RTWN_PRIV, "rtwn_priv", "rtwn driver private state"); -static const uint8_t rtwn_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint16_t wme2reg[] = { R92C_EDCA_BE_PARAM, R92C_EDCA_BK_PARAM, R92C_EDCA_VI_PARAM, R92C_EDCA_VO_PARAM }; @@ -1534,9 +1531,8 @@ rtwn_getradiocaps(struct ieee80211com *ic, setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); setbit(bands, IEEE80211_MODE_11NG); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rtwn_chan_2ghz, nitems(rtwn_chan_2ghz), bands, - !!(ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40)); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, + bands, !!(ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40)); /* XXX workaround add_channel_list() limitations */ setbit(bands, IEEE80211_MODE_11A); Modified: stable/12/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_rsu.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_rsu.c Sun Feb 10 20:59:35 2019 (r343975) @@ -282,9 +282,6 @@ MODULE_DEPEND(rsu, firmware, 1, 1, 1); MODULE_VERSION(rsu, 1); USB_PNP_HOST_INFO(rsu_devs); -static const uint8_t rsu_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static uint8_t rsu_wme_ac_xfer_map[4] = { [WME_AC_BE] = RSU_BULK_TX_BE_BK, [WME_AC_BK] = RSU_BULK_TX_BE_BK, @@ -780,9 +777,8 @@ rsu_getradiocaps(struct ieee80211com *ic, setbit(bands, IEEE80211_MODE_11G); if (sc->sc_ht) setbit(bands, IEEE80211_MODE_11NG); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rsu_chan_2ghz, nitems(rsu_chan_2ghz), bands, - (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) != 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, + bands, (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) != 0); } static void Modified: stable/12/sys/dev/usb/wlan/if_rum.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_rum.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_rum.c Sun Feb 10 20:59:35 2019 (r343975) @@ -338,9 +338,6 @@ static const struct { { 107, 0x04 } }; -static const uint8_t rum_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t rum_chan_5ghz[] = { 34, 36, 38, 40, 42, 44, 46, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -3216,8 +3213,7 @@ rum_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rum_chan_2ghz, nitems(rum_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2573_RF_5225 || sc->rf_rev == RT2573_RF_5226) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/12/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_run.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_run.c Sun Feb 10 20:59:35 2019 (r343975) @@ -4856,8 +4856,7 @@ run_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - run_chan_2ghz, nitems(run_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2860_RF_2750 || sc->rf_rev == RT2860_RF_2850 || sc->rf_rev == RT3070_RF_3052 || sc->rf_rev == RT3593_RF_3053 || Modified: stable/12/sys/dev/usb/wlan/if_runreg.h ============================================================================== --- stable/12/sys/dev/usb/wlan/if_runreg.h Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_runreg.h Sun Feb 10 20:59:35 2019 (r343975) @@ -1086,9 +1086,6 @@ struct rt2860_rxwi { /* * Channel map for run(4) driver; taken from the table below. */ -static const uint8_t run_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t run_chan_5ghz[] = { 36, 38, 40, 44, 46, 48, 52, 54, 56, 60, 62, 64, 100, 102, 104, 108, 110, 112, 116, 118, 120, 124, 126, 128, 132, 134, 136, 140, Modified: stable/12/sys/dev/usb/wlan/if_ural.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_ural.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_ural.c Sun Feb 10 20:59:35 2019 (r343975) @@ -357,9 +357,6 @@ static const struct { { 161, 0x08808, 0x0242f, 0x00281 } }; -static const uint8_t ural_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t ural_chan_5ghz[] = { 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -1587,8 +1584,7 @@ ural_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - ural_chan_2ghz, nitems(ural_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RAL_RF_5222) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/12/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_urtw.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_urtw.c Sun Feb 10 20:59:35 2019 (r343975) @@ -211,9 +211,6 @@ static uint8_t urtw_8225z2_agc[] = { 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31 }; -static const uint8_t urtw_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static uint32_t urtw_8225_channel[] = { 0x0000, /* dummy channel 0 */ 0x085c, /* 1 */ @@ -1581,8 +1578,7 @@ urtw_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - urtw_chan_2ghz, nitems(urtw_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/12/sys/dev/usb/wlan/if_zyd.c ============================================================================== --- stable/12/sys/dev/usb/wlan/if_zyd.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_zyd.c Sun Feb 10 20:59:35 2019 (r343975) @@ -2885,8 +2885,7 @@ zyd_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - zyd_chan_2ghz, nitems(zyd_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/12/sys/dev/usb/wlan/if_zydreg.h ============================================================================== --- stable/12/sys/dev/usb/wlan/if_zydreg.h Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/dev/usb/wlan/if_zydreg.h Sun Feb 10 20:59:35 2019 (r343975) @@ -421,10 +421,6 @@ #define ZYD_CR254 0x93f8 #define ZYD_CR255 0x93fc -/* nitems(ZYD_*_CHANTABLE) */ -static const uint8_t zyd_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - /* copied nearly verbatim from the Linux driver rewrite */ #define ZYD_DEF_PHY \ { \ Modified: stable/12/sys/net80211/ieee80211.c ============================================================================== --- stable/12/sys/net80211/ieee80211.c Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/net80211/ieee80211.c Sun Feb 10 20:59:35 2019 (r343975) @@ -1632,6 +1632,17 @@ ieee80211_add_channel_list_2ghz(struct ieee80211_chann } int +ieee80211_add_channels_default_2ghz(struct ieee80211_channel chans[], + int maxchans, int *nchans, const uint8_t bands[], int ht40) +{ + const uint8_t default_chan_list[] = + { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; + + return (ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, + default_chan_list, nitems(default_chan_list), bands, ht40)); +} + +int ieee80211_add_channel_list_5ghz(struct ieee80211_channel chans[], int maxchans, int *nchans, const uint8_t ieee[], int nieee, const uint8_t bands[], int ht40) Modified: stable/12/sys/net80211/ieee80211_var.h ============================================================================== --- stable/12/sys/net80211/ieee80211_var.h Sun Feb 10 20:42:06 2019 (r343974) +++ stable/12/sys/net80211/ieee80211_var.h Sun Feb 10 20:59:35 2019 (r343975) @@ -735,6 +735,8 @@ uint32_t ieee80211_get_channel_center_freq1(const stru uint32_t ieee80211_get_channel_center_freq2(const struct ieee80211_channel *); int ieee80211_add_channel_list_2ghz(struct ieee80211_channel[], int, int *, const uint8_t[], int, const uint8_t[], int); +int ieee80211_add_channels_default_2ghz(struct ieee80211_channel[], int, + int *, const uint8_t[], int); int ieee80211_add_channel_list_5ghz(struct ieee80211_channel[], int, int *, const uint8_t[], int, const uint8_t[], int); struct ieee80211_channel *ieee80211_find_channel(struct ieee80211com *, From owner-svn-src-all@freebsd.org Sun Feb 10 21:00:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 196A614DBA4C; Sun, 10 Feb 2019 21:00:07 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A23786AA28; Sun, 10 Feb 2019 21:00:06 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 949D91DDF0; Sun, 10 Feb 2019 21:00:06 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AL06Fv041462; Sun, 10 Feb 2019 21:00:06 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AL02AS041445; Sun, 10 Feb 2019 21:00:02 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102100.x1AL02AS041445@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 21:00:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343976 - in stable/11/sys: dev/bwi dev/iwi dev/ral dev/rtwn dev/urtwn dev/usb/wlan net80211 X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable/11/sys: dev/bwi dev/iwi dev/ral dev/rtwn dev/urtwn dev/usb/wlan net80211 X-SVN-Commit-Revision: 343976 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A23786AA28 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 21:00:07 -0000 Author: avos Date: Sun Feb 10 21:00:02 2019 New Revision: 343976 URL: https://svnweb.freebsd.org/changeset/base/343976 Log: MFC r343474: Remove 2GHz channel list copies from wireless drivers. Wrap ieee80211_add_channel_list_2ghz into another function which supplies default (1-14) channel list to it and drop its copies from drivers. Modified: stable/11/sys/dev/bwi/if_bwi.c stable/11/sys/dev/iwi/if_iwi.c stable/11/sys/dev/ral/rt2560.c stable/11/sys/dev/ral/rt2661.c stable/11/sys/dev/ral/rt2860.c stable/11/sys/dev/rtwn/if_rtwn.c stable/11/sys/dev/urtwn/if_urtwn.c stable/11/sys/dev/usb/wlan/if_rsu.c stable/11/sys/dev/usb/wlan/if_rum.c stable/11/sys/dev/usb/wlan/if_run.c stable/11/sys/dev/usb/wlan/if_runreg.h stable/11/sys/dev/usb/wlan/if_ural.c stable/11/sys/dev/usb/wlan/if_urtw.c stable/11/sys/dev/usb/wlan/if_zyd.c stable/11/sys/dev/usb/wlan/if_zydreg.h stable/11/sys/net80211/ieee80211.c stable/11/sys/net80211/ieee80211_var.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/bwi/if_bwi.c ============================================================================== --- stable/11/sys/dev/bwi/if_bwi.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/bwi/if_bwi.c Sun Feb 10 21:00:02 2019 (r343976) @@ -305,9 +305,6 @@ static const struct { [108] = { 7, 3 } }; -static const uint8_t bwi_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - #ifdef BWI_DEBUG #ifdef BWI_DEBUG_VERBOSE static uint32_t bwi_debug = BWI_DBG_ATTACH | BWI_DBG_INIT | BWI_DBG_TXPOWER; @@ -1713,8 +1710,7 @@ bwi_getradiocaps(struct ieee80211com *ic, panic("unknown phymode %d\n", phy->phy_mode); } - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - bwi_chan_2ghz, nitems(bwi_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/11/sys/dev/iwi/if_iwi.c ============================================================================== --- stable/11/sys/dev/iwi/if_iwi.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/iwi/if_iwi.c Sun Feb 10 21:00:02 2019 (r343976) @@ -130,8 +130,6 @@ static const struct iwi_ident iwi_ident_table[] = { { 0, 0, NULL } }; -static const uint8_t def_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; static const uint8_t def_chan_5ghz_band1[] = { 36, 40, 44, 48, 52, 56, 60, 64 }; static const uint8_t def_chan_5ghz_band2[] = @@ -3601,8 +3599,8 @@ iwi_getradiocaps(struct ieee80211com *ic, iwi_collect_bands(ic, bands, sizeof(bands)); *nchans = 0; if (isset(bands, IEEE80211_MODE_11B) || isset(bands, IEEE80211_MODE_11G)) - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - def_chan_2ghz, nitems(def_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, + bands, 0); if (isset(bands, IEEE80211_MODE_11A)) { ieee80211_add_channel_list_5ghz(chans, maxchans, nchans, def_chan_5ghz_band1, nitems(def_chan_5ghz_band1), Modified: stable/11/sys/dev/ral/rt2560.c ============================================================================== --- stable/11/sys/dev/ral/rt2560.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/ral/rt2560.c Sun Feb 10 21:00:02 2019 (r343976) @@ -189,9 +189,6 @@ static const uint32_t rt2560_rf2525e_r2[] = RT2560_R static const uint32_t rt2560_rf2526_r2[] = RT2560_RF2526_R2; static const uint32_t rt2560_rf2526_hi_r2[] = RT2560_RF2526_HI_R2; -static const uint8_t rt2560_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t rt2560_chan_5ghz[] = { 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -2156,8 +2153,7 @@ rt2560_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rt2560_chan_2ghz, nitems(rt2560_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2560_RF_5222) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/11/sys/dev/ral/rt2661.c ============================================================================== --- stable/11/sys/dev/ral/rt2661.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/ral/rt2661.c Sun Feb 10 21:00:02 2019 (r343976) @@ -195,8 +195,6 @@ static const struct rfprog { RT2661_RF5225_2 }; -static const uint8_t rt2661_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; static const uint8_t rt2661_chan_5ghz[] = { 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -2776,8 +2774,7 @@ rt2661_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rt2661_chan_2ghz, nitems(rt2661_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2661_RF_5225 || sc->rf_rev == RT2661_RF_5325) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/11/sys/dev/ral/rt2860.c ============================================================================== --- stable/11/sys/dev/ral/rt2860.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/ral/rt2860.c Sun Feb 10 21:00:02 2019 (r343976) @@ -228,8 +228,6 @@ static const struct { RT5392_DEF_RF }; -static const uint8_t rt2860_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; static const uint8_t rt2860_chan_5ghz[] = { 36, 38, 40, 44, 46, 48, 52, 54, 56, 60, 62, 64, 100, 102, 104, 108, 110, 112, 116, 118, 120, 124, 126, 128, 132, 134, 136, 140, @@ -2309,8 +2307,7 @@ rt2860_getradiocaps(struct ieee80211com *ic, int maxch memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rt2860_chan_2ghz, nitems(rt2860_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2860_RF_2750 || sc->rf_rev == RT2860_RF_2850) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/11/sys/dev/rtwn/if_rtwn.c ============================================================================== --- stable/11/sys/dev/rtwn/if_rtwn.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/rtwn/if_rtwn.c Sun Feb 10 21:00:02 2019 (r343976) @@ -232,9 +232,6 @@ MODULE_DEPEND(rtwn, pci, 1, 1, 1); MODULE_DEPEND(rtwn, wlan, 1, 1, 1); MODULE_DEPEND(rtwn, firmware, 1, 1, 1); -static const uint8_t rtwn_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static int rtwn_probe(device_t dev) { @@ -2748,8 +2745,7 @@ rtwn_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rtwn_chan_2ghz, nitems(rtwn_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/11/sys/dev/urtwn/if_urtwn.c ============================================================================== --- stable/11/sys/dev/urtwn/if_urtwn.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/urtwn/if_urtwn.c Sun Feb 10 21:00:02 2019 (r343976) @@ -467,9 +467,6 @@ static const struct wme_to_queue { { R92C_EDCA_VO_PARAM, URTWN_BULK_TX_VO} }; -static const uint8_t urtwn_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static int urtwn_match(device_t self) { @@ -4821,8 +4818,7 @@ urtwn_getradiocaps(struct ieee80211com *ic, setbit(bands, IEEE80211_MODE_11G); if (urtwn_enable_11n) setbit(bands, IEEE80211_MODE_11NG); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - urtwn_chan_2ghz, nitems(urtwn_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/11/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_rsu.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_rsu.c Sun Feb 10 21:00:02 2019 (r343976) @@ -251,9 +251,6 @@ MODULE_DEPEND(rsu, firmware, 1, 1, 1); MODULE_VERSION(rsu, 1); USB_PNP_HOST_INFO(rsu_devs); -static const uint8_t rsu_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static uint8_t rsu_wme_ac_xfer_map[4] = { [WME_AC_BE] = RSU_BULK_TX_BE_BK, [WME_AC_BK] = RSU_BULK_TX_BE_BK, @@ -714,9 +711,8 @@ rsu_getradiocaps(struct ieee80211com *ic, setbit(bands, IEEE80211_MODE_11G); if (sc->sc_ht) setbit(bands, IEEE80211_MODE_11NG); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rsu_chan_2ghz, nitems(rsu_chan_2ghz), bands, - (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) != 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, + bands, (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) != 0); } static void Modified: stable/11/sys/dev/usb/wlan/if_rum.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_rum.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_rum.c Sun Feb 10 21:00:02 2019 (r343976) @@ -334,9 +334,6 @@ static const struct { { 107, 0x04 } }; -static const uint8_t rum_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t rum_chan_5ghz[] = { 34, 36, 38, 40, 42, 44, 46, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -3177,8 +3174,7 @@ rum_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - rum_chan_2ghz, nitems(rum_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2573_RF_5225 || sc->rf_rev == RT2573_RF_5226) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/11/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_run.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_run.c Sun Feb 10 21:00:02 2019 (r343976) @@ -4810,8 +4810,7 @@ run_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - run_chan_2ghz, nitems(run_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RT2860_RF_2750 || sc->rf_rev == RT2860_RF_2850 || sc->rf_rev == RT3070_RF_3052 || sc->rf_rev == RT3593_RF_3053 || Modified: stable/11/sys/dev/usb/wlan/if_runreg.h ============================================================================== --- stable/11/sys/dev/usb/wlan/if_runreg.h Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_runreg.h Sun Feb 10 21:00:02 2019 (r343976) @@ -1086,9 +1086,6 @@ struct rt2860_rxwi { /* * Channel map for run(4) driver; taken from the table below. */ -static const uint8_t run_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t run_chan_5ghz[] = { 36, 38, 40, 44, 46, 48, 52, 54, 56, 60, 62, 64, 100, 102, 104, 108, 110, 112, 116, 118, 120, 124, 126, 128, 132, 134, 136, 140, Modified: stable/11/sys/dev/usb/wlan/if_ural.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_ural.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_ural.c Sun Feb 10 21:00:02 2019 (r343976) @@ -355,9 +355,6 @@ static const struct { { 161, 0x08808, 0x0242f, 0x00281 } }; -static const uint8_t ural_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static const uint8_t ural_chan_5ghz[] = { 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, @@ -1599,8 +1596,7 @@ ural_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - ural_chan_2ghz, nitems(ural_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); if (sc->rf_rev == RAL_RF_5222) { setbit(bands, IEEE80211_MODE_11A); Modified: stable/11/sys/dev/usb/wlan/if_urtw.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_urtw.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_urtw.c Sun Feb 10 21:00:02 2019 (r343976) @@ -202,9 +202,6 @@ static uint8_t urtw_8225z2_agc[] = { 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31 }; -static const uint8_t urtw_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - static uint32_t urtw_8225_channel[] = { 0x0000, /* dummy channel 0 */ 0x085c, /* 1 */ @@ -1573,8 +1570,7 @@ urtw_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - urtw_chan_2ghz, nitems(urtw_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/11/sys/dev/usb/wlan/if_zyd.c ============================================================================== --- stable/11/sys/dev/usb/wlan/if_zyd.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_zyd.c Sun Feb 10 21:00:02 2019 (r343976) @@ -2869,8 +2869,7 @@ zyd_getradiocaps(struct ieee80211com *ic, memset(bands, 0, sizeof(bands)); setbit(bands, IEEE80211_MODE_11B); setbit(bands, IEEE80211_MODE_11G); - ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, - zyd_chan_2ghz, nitems(zyd_chan_2ghz), bands, 0); + ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0); } static void Modified: stable/11/sys/dev/usb/wlan/if_zydreg.h ============================================================================== --- stable/11/sys/dev/usb/wlan/if_zydreg.h Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/dev/usb/wlan/if_zydreg.h Sun Feb 10 21:00:02 2019 (r343976) @@ -421,10 +421,6 @@ #define ZYD_CR254 0x93f8 #define ZYD_CR255 0x93fc -/* nitems(ZYD_*_CHANTABLE) */ -static const uint8_t zyd_chan_2ghz[] = - { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; - /* copied nearly verbatim from the Linux driver rewrite */ #define ZYD_DEF_PHY \ { \ Modified: stable/11/sys/net80211/ieee80211.c ============================================================================== --- stable/11/sys/net80211/ieee80211.c Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/net80211/ieee80211.c Sun Feb 10 21:00:02 2019 (r343976) @@ -1235,6 +1235,17 @@ ieee80211_add_channel_list_2ghz(struct ieee80211_chann } int +ieee80211_add_channels_default_2ghz(struct ieee80211_channel chans[], + int maxchans, int *nchans, const uint8_t bands[], int ht40) +{ + const uint8_t default_chan_list[] = + { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }; + + return (ieee80211_add_channel_list_2ghz(chans, maxchans, nchans, + default_chan_list, nitems(default_chan_list), bands, ht40)); +} + +int ieee80211_add_channel_list_5ghz(struct ieee80211_channel chans[], int maxchans, int *nchans, const uint8_t ieee[], int nieee, const uint8_t bands[], int ht40) Modified: stable/11/sys/net80211/ieee80211_var.h ============================================================================== --- stable/11/sys/net80211/ieee80211_var.h Sun Feb 10 20:59:35 2019 (r343975) +++ stable/11/sys/net80211/ieee80211_var.h Sun Feb 10 21:00:02 2019 (r343976) @@ -742,6 +742,8 @@ int ieee80211_add_channel_ht40(struct ieee80211_channe uint8_t, int8_t, uint32_t); int ieee80211_add_channel_list_2ghz(struct ieee80211_channel[], int, int *, const uint8_t[], int, const uint8_t[], int); +int ieee80211_add_channels_default_2ghz(struct ieee80211_channel[], int, + int *, const uint8_t[], int); int ieee80211_add_channel_list_5ghz(struct ieee80211_channel[], int, int *, const uint8_t[], int, const uint8_t[], int); struct ieee80211_channel *ieee80211_find_channel(struct ieee80211com *, From owner-svn-src-all@freebsd.org Sun Feb 10 21:19:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3517014DD1E9; Sun, 10 Feb 2019 21:19:10 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C93096C5DA; Sun, 10 Feb 2019 21:19:09 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B744A1E15D; Sun, 10 Feb 2019 21:19:09 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ALJ9mr052491; Sun, 10 Feb 2019 21:19:09 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ALJ9lO052489; Sun, 10 Feb 2019 21:19:09 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902102119.x1ALJ9lO052489@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sun, 10 Feb 2019 21:19:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343977 - head/lib/libbe X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/lib/libbe X-SVN-Commit-Revision: 343977 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C93096C5DA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 21:19:10 -0000 Author: kevans Date: Sun Feb 10 21:19:09 2019 New Revision: 343977 URL: https://svnweb.freebsd.org/changeset/base/343977 Log: libbe(3): Add a destroy option for removing the origin Currently origin snapshots are left behind when a BE is destroyed, whether it was an auto-created snapshot or explicitly specified via, for example, `bectl create -e be@mysnap ...`. Removing it automatically could be argued as a POLA violation in some circumstances, so provide a flag to be_destroy for it. An accompanying option will be added to bectl(8) to utilize this. Some minor style/consistency nits in the affected areas also addressed. Reported by: Shawn Webb MFC after: 1 week Modified: head/lib/libbe/be.c head/lib/libbe/be.h Modified: head/lib/libbe/be.c ============================================================================== --- head/lib/libbe/be.c Sun Feb 10 21:00:02 2019 (r343976) +++ head/lib/libbe/be.c Sun Feb 10 21:19:09 2019 (r343977) @@ -203,13 +203,14 @@ be_destroy_cb(zfs_handle_t *zfs_hdl, void *data) int be_destroy(libbe_handle_t *lbh, const char *name, int options) { + char origin[BE_MAXPATHLEN], path[BE_MAXPATHLEN]; zfs_handle_t *fs; - char path[BE_MAXPATHLEN]; char *p; int err, force, mounted; p = path; force = options & BE_DESTROY_FORCE; + *origin = '\0'; be_root_concat(lbh, name, path); @@ -222,17 +223,21 @@ be_destroy(libbe_handle_t *lbh, const char *name, int return (set_error(lbh, BE_ERR_DESTROYACT)); fs = zfs_open(lbh->lzh, p, ZFS_TYPE_FILESYSTEM); + if (fs == NULL) + return (set_error(lbh, BE_ERR_ZFSOPEN)); + if ((options & BE_DESTROY_ORIGIN) != 0 && + zfs_prop_get(fs, ZFS_PROP_ORIGIN, origin, sizeof(origin), + NULL, NULL, 0, 1) != 0) + return (set_error(lbh, BE_ERR_NOORIGIN)); } else { - if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) return (set_error(lbh, BE_ERR_NOENT)); fs = zfs_open(lbh->lzh, p, ZFS_TYPE_SNAPSHOT); + if (fs == NULL) + return (set_error(lbh, BE_ERR_ZFSOPEN)); } - if (fs == NULL) - return (set_error(lbh, BE_ERR_ZFSOPEN)); - /* Check if mounted, unmount if force is specified */ if ((mounted = zfs_is_mounted(fs, NULL)) != 0) { if (force) @@ -246,6 +251,17 @@ be_destroy(libbe_handle_t *lbh, const char *name, int if (err == EBUSY) return (set_error(lbh, BE_ERR_DESTROYMNT)); return (set_error(lbh, BE_ERR_UNKNOWN)); + } + + if (*origin != '\0') { + fs = zfs_open(lbh->lzh, origin, ZFS_TYPE_SNAPSHOT); + if (fs == NULL) + return (set_error(lbh, BE_ERR_ZFSOPEN)); + err = zfs_destroy(fs, false); + if (err == EBUSY) + return (set_error(lbh, BE_ERR_DESTROYMNT)); + else if (err != 0) + return (set_error(lbh, BE_ERR_UNKNOWN)); } return (0); Modified: head/lib/libbe/be.h ============================================================================== --- head/lib/libbe/be.h Sun Feb 10 21:00:02 2019 (r343976) +++ head/lib/libbe/be.h Sun Feb 10 21:19:09 2019 (r343977) @@ -93,7 +93,8 @@ int be_rename(libbe_handle_t *, const char *, const ch /* Bootenv removal functions */ typedef enum { - BE_DESTROY_FORCE = 1 << 0, + BE_DESTROY_FORCE = 1 << 0, + BE_DESTROY_ORIGIN = 1 << 1, } be_destroy_opt_t; int be_destroy(libbe_handle_t *, const char *, int); @@ -102,7 +103,7 @@ int be_destroy(libbe_handle_t *, const char *, int); typedef enum { BE_MNT_FORCE = 1 << 0, - BE_MNT_DEEP = 1 << 1, + BE_MNT_DEEP = 1 << 1, } be_mount_opt_t; int be_mount(libbe_handle_t *, char *, char *, int, char *); From owner-svn-src-all@freebsd.org Sun Feb 10 21:22:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6154B14DD510; Sun, 10 Feb 2019 21:22:56 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 005556CBDF; Sun, 10 Feb 2019 21:22:56 +0000 (UTC) (envelope-from kp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AC5781E308; Sun, 10 Feb 2019 21:22:55 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ALMt6E057896; Sun, 10 Feb 2019 21:22:55 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ALMtat057895; Sun, 10 Feb 2019 21:22:55 GMT (envelope-from kp@FreeBSD.org) Message-Id: <201902102122.x1ALMtat057895@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Sun, 10 Feb 2019 21:22:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343978 - head/sbin/pfctl X-SVN-Group: head X-SVN-Commit-Author: kp X-SVN-Commit-Paths: head/sbin/pfctl X-SVN-Commit-Revision: 343978 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 005556CBDF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 21:22:56 -0000 Author: kp Date: Sun Feb 10 21:22:55 2019 New Revision: 343978 URL: https://svnweb.freebsd.org/changeset/base/343978 Log: pfctl: Fix ifa_grouplookup() Setting the length of the request got lost in r343287, which means SIOCGIFGMEMB gives us the required length, but does not copy the names of the group members. As a result we don't get a correct list of group members, and 'set skip on ' broke. This produced all sorts of very unexpected results, because we would end up applying 'set skip' to unexpected interfaces. X-MFC-with: r343287 Modified: head/sbin/pfctl/pfctl_parser.c Modified: head/sbin/pfctl/pfctl_parser.c ============================================================================== --- head/sbin/pfctl/pfctl_parser.c Sun Feb 10 21:19:09 2019 (r343977) +++ head/sbin/pfctl/pfctl_parser.c Sun Feb 10 21:22:55 2019 (r343978) @@ -1408,6 +1408,7 @@ ifa_grouplookup(char *ifa_name, int flags) return (NULL); bzero(&ifgr, sizeof(ifgr)); strlcpy(ifgr.ifgr_name, ifa_name, sizeof(ifgr.ifgr_name)); + ifgr.ifgr_len = len; if ((ifgr.ifgr_groups = calloc(1, len)) == NULL) err(1, "calloc"); if (ioctl(s, SIOCGIFGMEMB, (caddr_t)&ifgr) == -1) From owner-svn-src-all@freebsd.org Sun Feb 10 21:27:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D730614DD719; Sun, 10 Feb 2019 21:27:04 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 754406CECC; Sun, 10 Feb 2019 21:27:04 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 606901E315; Sun, 10 Feb 2019 21:27:04 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ALR4lc058292; Sun, 10 Feb 2019 21:27:04 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ALR4NY058291; Sun, 10 Feb 2019 21:27:04 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902102127.x1ALR4NY058291@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Sun, 10 Feb 2019 21:27:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343979 - head/sys/opencrypto X-SVN-Group: head X-SVN-Commit-Author: marius X-SVN-Commit-Paths: head/sys/opencrypto X-SVN-Commit-Revision: 343979 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 754406CECC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 21:27:05 -0000 Author: marius Date: Sun Feb 10 21:27:03 2019 New Revision: 343979 URL: https://svnweb.freebsd.org/changeset/base/343979 Log: As struct cryptop is wrapped in #ifdef _KERNEL, userland doesn't need to drag in either. Modified: head/sys/opencrypto/cryptodev.h Modified: head/sys/opencrypto/cryptodev.h ============================================================================== --- head/sys/opencrypto/cryptodev.h Sun Feb 10 21:22:55 2019 (r343978) +++ head/sys/opencrypto/cryptodev.h Sun Feb 10 21:27:03 2019 (r343979) @@ -63,10 +63,10 @@ #define _CRYPTO_CRYPTO_H_ #include -#include #ifdef _KERNEL #include +#include #endif /* Some initial values */ From owner-svn-src-all@freebsd.org Sun Feb 10 21:32:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 52A2B14DDB11; Sun, 10 Feb 2019 21:32:40 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ED0236D495; Sun, 10 Feb 2019 21:32:39 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DFA5C1E4B8; Sun, 10 Feb 2019 21:32:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ALWdih063297; Sun, 10 Feb 2019 21:32:39 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ALWdHu063296; Sun, 10 Feb 2019 21:32:39 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102132.x1ALWdHu063296@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 21:32:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343980 - head/sbin/ifconfig X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/sbin/ifconfig X-SVN-Commit-Revision: 343980 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: ED0236D495 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 21:32:40 -0000 Author: avos Date: Sun Feb 10 21:32:39 2019 New Revision: 343980 URL: https://svnweb.freebsd.org/changeset/base/343980 Log: ifconfig(8): display 802.11n rates correctly for 'roam:rate' parameter MFC after: 5 days Modified: head/sbin/ifconfig/ifieee80211.c Modified: head/sbin/ifconfig/ifieee80211.c ============================================================================== --- head/sbin/ifconfig/ifieee80211.c Sun Feb 10 21:27:03 2019 (r343979) +++ head/sbin/ifconfig/ifieee80211.c Sun Feb 10 21:32:39 2019 (r343980) @@ -5080,7 +5080,9 @@ end: LINE_CHECK("roam:rssi %u.5", rp->rssi/2); else LINE_CHECK("roam:rssi %u", rp->rssi/2); - LINE_CHECK("roam:rate %u", rp->rate/2); + LINE_CHECK("roam:rate %s%u", + (rp->rate & IEEE80211_RATE_MCS) ? "MCS " : "", + get_rate_value(rp->rate)); } else { LINE_BREAK(); list_roam(s); From owner-svn-src-all@freebsd.org Sun Feb 10 22:23:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D937214DF294; Sun, 10 Feb 2019 22:23:07 +0000 (UTC) (envelope-from jilles@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7DEB96F0DE; Sun, 10 Feb 2019 22:23:07 +0000 (UTC) (envelope-from jilles@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 553A81ED44; Sun, 10 Feb 2019 22:23:07 +0000 (UTC) (envelope-from jilles@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AMN7hE089529; Sun, 10 Feb 2019 22:23:07 GMT (envelope-from jilles@FreeBSD.org) Received: (from jilles@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AMN6ZS089523; Sun, 10 Feb 2019 22:23:06 GMT (envelope-from jilles@FreeBSD.org) Message-Id: <201902102223.x1AMN6ZS089523@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jilles set sender to jilles@FreeBSD.org using -f From: Jilles Tjoelker Date: Sun, 10 Feb 2019 22:23:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343981 - in head/bin/sh: . tests/expansion X-SVN-Group: head X-SVN-Commit-Author: jilles X-SVN-Commit-Paths: in head/bin/sh: . tests/expansion X-SVN-Commit-Revision: 343981 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7DEB96F0DE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 22:23:08 -0000 Author: jilles Date: Sun Feb 10 22:23:05 2019 New Revision: 343981 URL: https://svnweb.freebsd.org/changeset/base/343981 Log: sh: Restore $((x)) error checking after fix for $((-9223372036854775808)) SVN r342880 was designed to fix $((-9223372036854775808)) and things like $((0x8000000000000000)) but also broke error detection for values of variables without dollar sign ($((x))). For compatibility, overflow in plain literals continues to be ignored and the value is clamped to the boundary (except 9223372036854775808 which is changed to -9223372036854775808). Reviewed by: se (although he would like error checking to be removed) MFC after: 2 weeks X-MFC-with: r342880 Differential Revision: https://reviews.freebsd.org/D18926 Added: head/bin/sh/tests/expansion/arith16.0 (contents, props changed) head/bin/sh/tests/expansion/arith17.0 (contents, props changed) Modified: head/bin/sh/arith_yacc.c head/bin/sh/arith_yacc.h head/bin/sh/arith_yylex.c head/bin/sh/shell.h head/bin/sh/tests/expansion/Makefile Modified: head/bin/sh/arith_yacc.c ============================================================================== --- head/bin/sh/arith_yacc.c Sun Feb 10 21:32:39 2019 (r343980) +++ head/bin/sh/arith_yacc.c Sun Feb 10 22:23:05 2019 (r343981) @@ -104,7 +104,7 @@ static arith_t arith_lookupvarint(char *varname) if (str == NULL || *str == '\0') str = "0"; errno = 0; - result = strtoarith_t(str, &p, 0); + result = strtoarith_t(str, &p); if (errno != 0 || *p != '\0') yyerror("variable conversion error"); return result; Modified: head/bin/sh/arith_yacc.h ============================================================================== --- head/bin/sh/arith_yacc.h Sun Feb 10 21:32:39 2019 (r343980) +++ head/bin/sh/arith_yacc.h Sun Feb 10 22:23:05 2019 (r343981) @@ -90,4 +90,5 @@ union yystype { extern union yystype yylval; +arith_t strtoarith_t(const char *restrict nptr, char **restrict endptr); int yylex(void); Modified: head/bin/sh/arith_yylex.c ============================================================================== --- head/bin/sh/arith_yylex.c Sun Feb 10 21:32:39 2019 (r343980) +++ head/bin/sh/arith_yylex.c Sun Feb 10 22:23:05 2019 (r343981) @@ -35,6 +35,8 @@ #include __FBSDID("$FreeBSD$"); +#include +#include #include #include #include @@ -50,6 +52,32 @@ __FBSDID("$FreeBSD$"); #error Arithmetic tokens are out of order. #endif +arith_t +strtoarith_t(const char *restrict nptr, char **restrict endptr) +{ + arith_t val; + + while (isspace((unsigned char)*nptr)) + nptr++; + switch (*nptr) { + case '-': + return strtoimax(nptr, endptr, 0); + case '0': + return (arith_t)strtoumax(nptr, endptr, 0); + default: + val = (arith_t)strtoumax(nptr, endptr, 0); + if (val >= 0) + return val; + else if (val == ARITH_MIN) { + errno = ERANGE; + return ARITH_MIN; + } else { + errno = ERANGE; + return ARITH_MAX; + } + } +} + int yylex(void) { @@ -78,7 +106,7 @@ yylex(void) case '7': case '8': case '9': - yylval.val = strtoarith_t(buf, &end, 0); + yylval.val = strtoarith_t(buf, &end); arith_buf = end; return ARITH_NUM; case 'A': Modified: head/bin/sh/shell.h ============================================================================== --- head/bin/sh/shell.h Sun Feb 10 21:32:39 2019 (r343980) +++ head/bin/sh/shell.h Sun Feb 10 22:23:05 2019 (r343981) @@ -59,7 +59,6 @@ */ typedef intmax_t arith_t; #define ARITH_FORMAT_STR "%" PRIdMAX -#define strtoarith_t(nptr, endptr, base) (intmax_t)strtoumax(nptr, endptr, base) #define ARITH_MIN INTMAX_MIN #define ARITH_MAX INTMAX_MAX Modified: head/bin/sh/tests/expansion/Makefile ============================================================================== --- head/bin/sh/tests/expansion/Makefile Sun Feb 10 21:32:39 2019 (r343980) +++ head/bin/sh/tests/expansion/Makefile Sun Feb 10 22:23:05 2019 (r343981) @@ -22,6 +22,8 @@ ${PACKAGE}FILES+= arith12.0 ${PACKAGE}FILES+= arith13.0 ${PACKAGE}FILES+= arith14.0 ${PACKAGE}FILES+= arith15.0 +${PACKAGE}FILES+= arith16.0 +${PACKAGE}FILES+= arith17.0 ${PACKAGE}FILES+= assign1.0 ${PACKAGE}FILES+= cmdsubst1.0 ${PACKAGE}FILES+= cmdsubst2.0 Added: head/bin/sh/tests/expansion/arith16.0 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/bin/sh/tests/expansion/arith16.0 Sun Feb 10 22:23:05 2019 (r343981) @@ -0,0 +1,26 @@ +# $FreeBSD$ + +failures=0 + +for x in \ + 0x10000000000000000 \ + -0x8000000000000001 \ + 0xfffffffffffffffffffffffffffffffff \ + -0xfffffffffffffffffffffffffffffffff \ + 02000000000000000000000 \ + 9223372036854775808 \ + 9223372036854775809 \ + -9223372036854775809 \ + 9999999999999999999999999 \ + -9999999999999999999999999 +do + msg=$({ + v=$((x)) || : + } 3>&1 >&2 2>&3 3>&-) + r=$? + if [ "$r" = 0 ] || [ -z "$msg" ]; then + printf 'Failed: %s\n' "$x" + : $((failures += 1)) + fi +done +exit $((failures > 0)) Added: head/bin/sh/tests/expansion/arith17.0 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/bin/sh/tests/expansion/arith17.0 Sun Feb 10 22:23:05 2019 (r343981) @@ -0,0 +1,3 @@ +# $FreeBSD$ + +[ $((9223372036854775809)) -gt 0 ] From owner-svn-src-all@freebsd.org Sun Feb 10 22:31:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0D1D514DF4F0; Sun, 10 Feb 2019 22:31:42 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A35936F6CB; Sun, 10 Feb 2019 22:31:41 +0000 (UTC) (envelope-from oshogbo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 96B451EDA8; Sun, 10 Feb 2019 22:31:41 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AMVf5s094766; Sun, 10 Feb 2019 22:31:41 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AMVfUm094765; Sun, 10 Feb 2019 22:31:41 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201902102231.x1AMVfUm094765@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Sun, 10 Feb 2019 22:31:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343982 - stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-12 X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 343982 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A35936F6CB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 22:31:42 -0000 Author: oshogbo Date: Sun Feb 10 22:31:41 2019 New Revision: 343982 URL: https://svnweb.freebsd.org/changeset/base/343982 Log: MFC r343470: zfs: allow to change cache flush sysctl There is no reason for this variable to be tunable. This variable is used as a barrier in few places. Discussed with: pjd MFC after: 2 weeks Sponsored by: Fudo Security Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Sun Feb 10 22:23:05 2019 (r343981) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Sun Feb 10 22:31:41 2019 (r343982) @@ -103,7 +103,7 @@ SYSCTL_INT(_vfs_zfs, OID_AUTO, zil_replay_disable, CTL * out-of-order write cache is enabled. */ boolean_t zfs_nocacheflush = B_FALSE; -SYSCTL_INT(_vfs_zfs, OID_AUTO, cache_flush_disable, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs, OID_AUTO, cache_flush_disable, CTLFLAG_RWTUN, &zfs_nocacheflush, 0, "Disable cache flush"); boolean_t zfs_trim_enabled = B_TRUE; SYSCTL_DECL(_vfs_zfs_trim); From owner-svn-src-all@freebsd.org Sun Feb 10 22:32:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1D7F614DF681; Sun, 10 Feb 2019 22:32:10 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B59AC6F83E; Sun, 10 Feb 2019 22:32:09 +0000 (UTC) (envelope-from oshogbo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A92BA1EDC0; Sun, 10 Feb 2019 22:32:09 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AMW9W0094832; Sun, 10 Feb 2019 22:32:09 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AMW987094831; Sun, 10 Feb 2019 22:32:09 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201902102232.x1AMW987094831@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Sun, 10 Feb 2019 22:32:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343983 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 343983 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B59AC6F83E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 22:32:10 -0000 Author: oshogbo Date: Sun Feb 10 22:32:09 2019 New Revision: 343983 URL: https://svnweb.freebsd.org/changeset/base/343983 Log: MFC r343470: zfs: allow to change cache flush sysctl There is no reason for this variable to be tunable. This variable is used as a barrier in few places. Discussed with: pjd MFC after: 2 weeks Sponsored by: Fudo Security Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Sun Feb 10 22:31:41 2019 (r343982) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c Sun Feb 10 22:32:09 2019 (r343983) @@ -103,7 +103,7 @@ SYSCTL_INT(_vfs_zfs, OID_AUTO, zil_replay_disable, CTL * out-of-order write cache is enabled. */ boolean_t zfs_nocacheflush = B_FALSE; -SYSCTL_INT(_vfs_zfs, OID_AUTO, cache_flush_disable, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs, OID_AUTO, cache_flush_disable, CTLFLAG_RWTUN, &zfs_nocacheflush, 0, "Disable cache flush"); boolean_t zfs_trim_enabled = B_TRUE; SYSCTL_DECL(_vfs_zfs_trim); From owner-svn-src-all@freebsd.org Sun Feb 10 22:33:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9E6CE14DF7B9; Sun, 10 Feb 2019 22:33:42 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 410B66FA4B; Sun, 10 Feb 2019 22:33:42 +0000 (UTC) (envelope-from oshogbo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 322CA1EEEA; Sun, 10 Feb 2019 22:33:42 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AMXgfW095885; Sun, 10 Feb 2019 22:33:42 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AMXfCG095882; Sun, 10 Feb 2019 22:33:41 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201902102233.x1AMXfCG095882@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Sun, 10 Feb 2019 22:33:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343984 - stable/12/lib/libcasper/libcasper X-SVN-Group: stable-12 X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: stable/12/lib/libcasper/libcasper X-SVN-Commit-Revision: 343984 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 410B66FA4B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 22:33:42 -0000 Author: oshogbo Date: Sun Feb 10 22:33:41 2019 New Revision: 343984 URL: https://svnweb.freebsd.org/changeset/base/343984 Log: MFC r343471: libcasper: do not run registered exit functions Casper library should not use exit(3) function because before setting it up applications may register it. Casper doesn't depend on any registered exit function, so it safe to change this. Reported by: jceel MFC after: 2 weeks Modified: stable/12/lib/libcasper/libcasper/libcasper_service.c stable/12/lib/libcasper/libcasper/service.c stable/12/lib/libcasper/libcasper/zygote.c Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libcasper/libcasper/libcasper_service.c ============================================================================== --- stable/12/lib/libcasper/libcasper/libcasper_service.c Sun Feb 10 22:32:09 2019 (r343983) +++ stable/12/lib/libcasper/libcasper/libcasper_service.c Sun Feb 10 22:33:41 2019 (r343984) @@ -148,20 +148,20 @@ service_execute(int chanfd) nvl = nvlist_recv(chanfd, 0); if (nvl == NULL) - exit(1); + _exit(1); if (!nvlist_exists_string(nvl, "service")) - exit(1); + _exit(1); servname = nvlist_get_string(nvl, "service"); casserv = service_find(servname); if (casserv == NULL) - exit(1); + _exit(1); service = casserv->cs_service; procfd = nvlist_take_descriptor(nvl, "procfd"); nvlist_destroy(nvl); service_start(service, chanfd, procfd); /* Not reached. */ - exit(1); + _exit(1); } static int @@ -231,7 +231,7 @@ casper_main_loop(int fd) int sock, maxfd, ret; if (zygote_init() < 0) - exit(1); + _exit(1); /* * Register core services. @@ -256,7 +256,7 @@ casper_main_loop(int fd) } if (maxfd == -1) { /* Nothing to do. */ - exit(0); + _exit(0); } maxfd++; @@ -267,7 +267,7 @@ casper_main_loop(int fd) if (ret == -1) { if (errno == EINTR) continue; - exit(1); + _exit(1); } TAILQ_FOREACH(casserv, &casper_services, cs_next) { Modified: stable/12/lib/libcasper/libcasper/service.c ============================================================================== --- stable/12/lib/libcasper/libcasper/service.c Sun Feb 10 22:32:09 2019 (r343983) +++ stable/12/lib/libcasper/libcasper/service.c Sun Feb 10 22:33:41 2019 (r343984) @@ -427,7 +427,7 @@ service_start(struct service *service, int sock, int p service_clean(sock, procfd, service->s_flags); if (service_connection_add(service, sock, NULL) == NULL) - exit(1); + _exit(1); for (;;) { FD_ZERO(&fds); @@ -443,7 +443,7 @@ service_start(struct service *service, int sock, int p nfds = select(maxfd + 1, &fds, NULL, NULL, NULL); if (nfds < 0) { if (errno != EINTR) - exit(1); + _exit(1); continue; } else if (nfds == 0) { /* Timeout. */ @@ -468,5 +468,5 @@ service_start(struct service *service, int sock, int p } } - exit(0); + _exit(0); } Modified: stable/12/lib/libcasper/libcasper/zygote.c ============================================================================== --- stable/12/lib/libcasper/libcasper/zygote.c Sun Feb 10 22:32:09 2019 (r343983) +++ stable/12/lib/libcasper/libcasper/zygote.c Sun Feb 10 22:33:41 2019 (r343984) @@ -122,7 +122,7 @@ zygote_main(int sock) if (nvlin == NULL) { if (errno == ENOTCONN) { /* Casper exited. */ - exit(0); + _exit(0); } continue; } @@ -134,7 +134,7 @@ zygote_main(int sock) func = service_execute; break; default: - exit(0); + _exit(0); } /* @@ -161,7 +161,7 @@ zygote_main(int sock) close(chanfd[0]); func(chanfd[1]); /* NOTREACHED */ - exit(1); + _exit(1); default: /* Parent. */ close(chanfd[1]); From owner-svn-src-all@freebsd.org Sun Feb 10 23:07:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B1D0A14E07B8; Sun, 10 Feb 2019 23:07:47 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5702D70AD1; Sun, 10 Feb 2019 23:07:47 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4BC801F3FE; Sun, 10 Feb 2019 23:07:47 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1AN7leg011618; Sun, 10 Feb 2019 23:07:47 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1AN7lj8011617; Sun, 10 Feb 2019 23:07:47 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902102307.x1AN7lj8011617@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Sun, 10 Feb 2019 23:07:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343985 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 343985 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5702D70AD1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 23:07:47 -0000 Author: cem Date: Sun Feb 10 23:07:46 2019 New Revision: 343985 URL: https://svnweb.freebsd.org/changeset/base/343985 Log: Prevent overflow for usertime/systime in caclru1 PR: 76972 and duplicates Reported by: Dr. Christopher Landauer , Steinar Haug Submitted by: Andrey Zonov (earlier version) MFC after: 2 weeks Modified: head/sys/kern/kern_resource.c Modified: head/sys/kern/kern_resource.c ============================================================================== --- head/sys/kern/kern_resource.c Sun Feb 10 22:33:41 2019 (r343984) +++ head/sys/kern/kern_resource.c Sun Feb 10 23:07:46 2019 (r343985) @@ -863,6 +863,15 @@ rufetchtd(struct thread *td, struct rusage *ru) calcru1(p, &td->td_rux, &ru->ru_utime, &ru->ru_stime); } +static uint64_t +mul64_by_fraction(uint64_t a, uint64_t b, uint64_t c) +{ + /* + * Compute floor(a * (b / c)) without overflowing, (b / c) <= 1.0. + */ + return ((a / c) * b + (a % c) * (b / c) + (a % c) * (b % c) / c); +} + static void calcru1(struct proc *p, struct rusage_ext *ruxp, struct timeval *up, struct timeval *sp) @@ -892,10 +901,10 @@ calcru1(struct proc *p, struct rusage_ext *ruxp, struc * The normal case, time increased. * Enforce monotonicity of bucketed numbers. */ - uu = (tu * ut) / tt; + uu = mul64_by_fraction(tu, ut, tt); if (uu < ruxp->rux_uu) uu = ruxp->rux_uu; - su = (tu * st) / tt; + su = mul64_by_fraction(tu, st, tt); if (su < ruxp->rux_su) su = ruxp->rux_su; } else if (tu + 3 > ruxp->rux_tu || 101 * tu > 100 * ruxp->rux_tu) { @@ -924,8 +933,8 @@ calcru1(struct proc *p, struct rusage_ext *ruxp, struc "to %ju usec for pid %d (%s)\n", (uintmax_t)ruxp->rux_tu, (uintmax_t)tu, p->p_pid, p->p_comm); - uu = (tu * ut) / tt; - su = (tu * st) / tt; + uu = mul64_by_fraction(tu, ut, tt); + su = mul64_by_fraction(tu, st, tt); } ruxp->rux_uu = uu; From owner-svn-src-all@freebsd.org Sun Feb 10 23:28:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D29BB14E112A; Sun, 10 Feb 2019 23:28:56 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 754757176E; Sun, 10 Feb 2019 23:28:56 +0000 (UTC) (envelope-from oshogbo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 68B7A1F74C; Sun, 10 Feb 2019 23:28:56 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ANSu0G021767; Sun, 10 Feb 2019 23:28:56 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ANStvD021763; Sun, 10 Feb 2019 23:28:55 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201902102328.x1ANStvD021763@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Sun, 10 Feb 2019 23:28:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343986 - in head: lib/libnv/tests sys/contrib/libnv X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: in head: lib/libnv/tests sys/contrib/libnv X-SVN-Commit-Revision: 343986 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 754757176E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 23:28:57 -0000 Author: oshogbo Date: Sun Feb 10 23:28:55 2019 New Revision: 343986 URL: https://svnweb.freebsd.org/changeset/base/343986 Log: libnv: fix memory leaks nvpair_create_stringv: free the temporary string; this fix affects nvlist_add_stringf() and nvlist_add_stringv(). nvpair_remove_nvlist_array (NV_TYPE_NVLIST_ARRAY case): free the chain of nvpairs (as resetting it prevents nvlist_destroy() from freeing it). Note: freeing the chain in nvlist_destroy() is not sufficient, because it would still leak through nvlist_take_nvlist_array(). This affects all nvlist_*_nvlist_array() use Submitted by: Mindaugas Rasiukevicius Reported by: clang/gcc ASAN MFC after: 2 weeks Modified: head/lib/libnv/tests/nvlist_send_recv_test.c head/sys/contrib/libnv/nv_impl.h head/sys/contrib/libnv/nvlist.c head/sys/contrib/libnv/nvpair.c Modified: head/lib/libnv/tests/nvlist_send_recv_test.c ============================================================================== --- head/lib/libnv/tests/nvlist_send_recv_test.c Sun Feb 10 23:07:46 2019 (r343985) +++ head/lib/libnv/tests/nvlist_send_recv_test.c Sun Feb 10 23:28:55 2019 (r343986) @@ -304,6 +304,8 @@ parent(int sock) name = nvlist_next(nvl, &type, &cookie); CHECK(name == NULL); + + nvlist_destroy(nvl); } static void Modified: head/sys/contrib/libnv/nv_impl.h ============================================================================== --- head/sys/contrib/libnv/nv_impl.h Sun Feb 10 23:07:46 2019 (r343985) +++ head/sys/contrib/libnv/nv_impl.h Sun Feb 10 23:28:55 2019 (r343986) @@ -103,6 +103,7 @@ bool nvlist_move_nvpair(nvlist_t *nvl, nvpair_t *nvp); void nvlist_set_parent(nvlist_t *nvl, nvpair_t *parent); void nvlist_set_array_next(nvlist_t *nvl, nvpair_t *ele); +nvpair_t *nvlist_get_array_next_nvpair(nvlist_t *nvl); const nvpair_t *nvlist_get_nvpair(const nvlist_t *nvl, const char *name); Modified: head/sys/contrib/libnv/nvlist.c ============================================================================== --- head/sys/contrib/libnv/nvlist.c Sun Feb 10 23:07:46 2019 (r343985) +++ head/sys/contrib/libnv/nvlist.c Sun Feb 10 23:28:55 2019 (r343986) @@ -247,6 +247,15 @@ nvlist_set_array_next(nvlist_t *nvl, nvpair_t *ele) nvl->nvl_array_next = ele; } +nvpair_t * +nvlist_get_array_next_nvpair(nvlist_t *nvl) +{ + + NVLIST_ASSERT(nvl); + + return (nvl->nvl_array_next); +} + bool nvlist_in_array(const nvlist_t *nvl) { Modified: head/sys/contrib/libnv/nvpair.c ============================================================================== --- head/sys/contrib/libnv/nvpair.c Sun Feb 10 23:07:46 2019 (r343985) +++ head/sys/contrib/libnv/nvpair.c Sun Feb 10 23:28:55 2019 (r343986) @@ -229,8 +229,16 @@ nvpair_remove_nvlist_array(nvpair_t *nvp) nvlarray = __DECONST(nvlist_t **, nvpair_get_nvlist_array(nvp, &count)); for (i = 0; i < count; i++) { - nvlist_set_array_next(nvlarray[i], NULL); - nvlist_set_parent(nvlarray[i], NULL); + nvlist_t *nvl; + nvpair_t *nnvp; + + nvl = nvlarray[i]; + nnvp = nvlist_get_array_next_nvpair(nvl); + if (nnvp != NULL) { + nvpair_free_structure(nnvp); + } + nvlist_set_array_next(nvl, NULL); + nvlist_set_parent(nvl, NULL); } } @@ -1193,8 +1201,7 @@ nvpair_create_stringv(const char *name, const char *va if (len < 0) return (NULL); nvp = nvpair_create_string(name, str); - if (nvp == NULL) - nv_free(str); + nv_free(str); return (nvp); } From owner-svn-src-all@freebsd.org Sun Feb 10 23:30:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9CEC214E124E; Sun, 10 Feb 2019 23:30:55 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 41D3271A8B; Sun, 10 Feb 2019 23:30:55 +0000 (UTC) (envelope-from oshogbo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 35D601F766; Sun, 10 Feb 2019 23:30:55 +0000 (UTC) (envelope-from oshogbo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ANUtEl021920; Sun, 10 Feb 2019 23:30:55 GMT (envelope-from oshogbo@FreeBSD.org) Received: (from oshogbo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ANUtLl021919; Sun, 10 Feb 2019 23:30:55 GMT (envelope-from oshogbo@FreeBSD.org) Message-Id: <201902102330.x1ANUtLl021919@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: oshogbo set sender to oshogbo@FreeBSD.org using -f From: Mariusz Zaborski Date: Sun, 10 Feb 2019 23:30:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343987 - head/sys/contrib/libnv X-SVN-Group: head X-SVN-Commit-Author: oshogbo X-SVN-Commit-Paths: head/sys/contrib/libnv X-SVN-Commit-Revision: 343987 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 41D3271A8B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 23:30:55 -0000 Author: oshogbo Date: Sun Feb 10 23:30:54 2019 New Revision: 343987 URL: https://svnweb.freebsd.org/changeset/base/343987 Log: libnv: fix memory leaks Free the data array for NV_TYPE_DESCRIPTOR_ARRAY case. MFC after: 2 weeks Modified: head/sys/contrib/libnv/nvpair.c Modified: head/sys/contrib/libnv/nvpair.c ============================================================================== --- head/sys/contrib/libnv/nvpair.c Sun Feb 10 23:28:55 2019 (r343986) +++ head/sys/contrib/libnv/nvpair.c Sun Feb 10 23:30:54 2019 (r343987) @@ -2061,6 +2061,7 @@ nvpair_free(nvpair_t *nvp) case NV_TYPE_DESCRIPTOR_ARRAY: for (i = 0; i < nvp->nvp_nitems; i++) close(((int *)(intptr_t)nvp->nvp_data)[i]); + nv_free((int *)(intptr_t)nvp->nvp_data); break; #endif case NV_TYPE_NVLIST: From owner-svn-src-all@freebsd.org Sun Feb 10 23:45:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B62A14E180C; Sun, 10 Feb 2019 23:45:15 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2D10C722BC; Sun, 10 Feb 2019 23:45:15 +0000 (UTC) (envelope-from pfg@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 22FEE1FAB8; Sun, 10 Feb 2019 23:45:15 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ANjFQo032590; Sun, 10 Feb 2019 23:45:15 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ANjFVZ032589; Sun, 10 Feb 2019 23:45:15 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201902102345.x1ANjFVZ032589@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Sun, 10 Feb 2019 23:45:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343988 - stable/12/gnu/usr.bin/grep X-SVN-Group: stable-12 X-SVN-Commit-Author: pfg X-SVN-Commit-Paths: stable/12/gnu/usr.bin/grep X-SVN-Commit-Revision: 343988 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2D10C722BC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 23:45:15 -0000 Author: pfg Date: Sun Feb 10 23:45:14 2019 New Revision: 343988 URL: https://svnweb.freebsd.org/changeset/base/343988 Log: MFC r342910: grep(1) outputs NOT-matched lines with multi-byte characters PR: 113343 Modified: stable/12/gnu/usr.bin/grep/search.c Directory Properties: stable/12/ (props changed) Modified: stable/12/gnu/usr.bin/grep/search.c ============================================================================== --- stable/12/gnu/usr.bin/grep/search.c Sun Feb 10 23:30:54 2019 (r343987) +++ stable/12/gnu/usr.bin/grep/search.c Sun Feb 10 23:45:14 2019 (r343988) @@ -401,9 +401,12 @@ EGexecute (char const *buf, size_t size, size_t *match } if (mlen == (size_t) -2) - /* Offset points inside multibyte character: - * no good. */ - break; + { + /* Offset points inside multibyte character: + * no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); + break; + } beg += mlen; bytes_left -= mlen; @@ -463,9 +466,12 @@ EGexecute (char const *buf, size_t size, size_t *match } if (mlen == (size_t) -2) - /* Offset points inside multibyte character: - * no good. */ - break; + { + /* Offset points inside multibyte character: + * no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); + break; + } beg += mlen; bytes_left -= mlen; @@ -926,15 +932,21 @@ Fexecute (char const *buf, size_t size, size_t *match_ } if (mlen == (size_t) -2) - /* Offset points inside multibyte character: no good. */ - break; + { + /* Offset points inside multibyte character: no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); + break; + } beg += mlen; bytes_left -= mlen; } if (bytes_left) - continue; + { + beg += bytes_left; + continue; + } } else #endif /* MBS_SUPPORT */ @@ -1052,6 +1064,7 @@ Fexecute (char const *buf, size_t size, size_t *match_ { /* Offset points inside multibyte character: * no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); break; } From owner-svn-src-all@freebsd.org Sun Feb 10 23:47:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 960BC14E1932; Sun, 10 Feb 2019 23:47:38 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 356A072491; Sun, 10 Feb 2019 23:47:38 +0000 (UTC) (envelope-from pfg@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1EC9E1FABC; Sun, 10 Feb 2019 23:47:38 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ANlc8m032746; Sun, 10 Feb 2019 23:47:38 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ANlbbM032745; Sun, 10 Feb 2019 23:47:37 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201902102347.x1ANlbbM032745@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Sun, 10 Feb 2019 23:47:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343989 - stable/11/gnu/usr.bin/grep X-SVN-Group: stable-11 X-SVN-Commit-Author: pfg X-SVN-Commit-Paths: stable/11/gnu/usr.bin/grep X-SVN-Commit-Revision: 343989 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 356A072491 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 23:47:38 -0000 Author: pfg Date: Sun Feb 10 23:47:37 2019 New Revision: 343989 URL: https://svnweb.freebsd.org/changeset/base/343989 Log: MFC r342910: grep(1) outputs NOT-matched lines with multi-byte characters PR: 113343 Modified: stable/11/gnu/usr.bin/grep/search.c Directory Properties: stable/11/ (props changed) Modified: stable/11/gnu/usr.bin/grep/search.c ============================================================================== --- stable/11/gnu/usr.bin/grep/search.c Sun Feb 10 23:45:14 2019 (r343988) +++ stable/11/gnu/usr.bin/grep/search.c Sun Feb 10 23:47:37 2019 (r343989) @@ -401,9 +401,12 @@ EGexecute (char const *buf, size_t size, size_t *match } if (mlen == (size_t) -2) - /* Offset points inside multibyte character: - * no good. */ - break; + { + /* Offset points inside multibyte character: + * no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); + break; + } beg += mlen; bytes_left -= mlen; @@ -463,9 +466,12 @@ EGexecute (char const *buf, size_t size, size_t *match } if (mlen == (size_t) -2) - /* Offset points inside multibyte character: - * no good. */ - break; + { + /* Offset points inside multibyte character: + * no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); + break; + } beg += mlen; bytes_left -= mlen; @@ -926,15 +932,21 @@ Fexecute (char const *buf, size_t size, size_t *match_ } if (mlen == (size_t) -2) - /* Offset points inside multibyte character: no good. */ - break; + { + /* Offset points inside multibyte character: no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); + break; + } beg += mlen; bytes_left -= mlen; } if (bytes_left) - continue; + { + beg += bytes_left; + continue; + } } else #endif /* MBS_SUPPORT */ @@ -1052,6 +1064,7 @@ Fexecute (char const *buf, size_t size, size_t *match_ { /* Offset points inside multibyte character: * no good. */ + memset (&mbs, '\0', sizeof (mbstate_t)); break; } From owner-svn-src-all@freebsd.org Sun Feb 10 23:58:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6301F14E1F5B; Sun, 10 Feb 2019 23:58:59 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 01EB672AFF; Sun, 10 Feb 2019 23:58:59 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E22931FC67; Sun, 10 Feb 2019 23:58:58 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1ANwwX0037861; Sun, 10 Feb 2019 23:58:58 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1ANwucb037851; Sun, 10 Feb 2019 23:58:56 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902102358.x1ANwucb037851@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sun, 10 Feb 2019 23:58:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343990 - in head/sys: dev/malo dev/mwl dev/usb/wlan net80211 X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in head/sys: dev/malo dev/mwl dev/usb/wlan net80211 X-SVN-Commit-Revision: 343990 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 01EB672AFF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Feb 2019 23:58:59 -0000 Author: avos Date: Sun Feb 10 23:58:56 2019 New Revision: 343990 URL: https://svnweb.freebsd.org/changeset/base/343990 Log: net80211(4): hide casts for 'i_seq' field offset calculation inside ieee80211_getqos() and reuse it in various places. Checked with RTL8188EE, HOSTAP mode + RTL8188CUS, STA mode. MFC after: 2 weeks Modified: head/sys/dev/malo/if_malo.c head/sys/dev/mwl/if_mwl.c head/sys/dev/usb/wlan/if_run.c head/sys/net80211/ieee80211_adhoc.c head/sys/net80211/ieee80211_hostap.c head/sys/net80211/ieee80211_ht.c head/sys/net80211/ieee80211_mesh.c head/sys/net80211/ieee80211_output.c head/sys/net80211/ieee80211_proto.h head/sys/net80211/ieee80211_sta.c head/sys/net80211/ieee80211_wds.c Modified: head/sys/dev/malo/if_malo.c ============================================================================== --- head/sys/dev/malo/if_malo.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/dev/malo/if_malo.c Sun Feb 10 23:58:56 2019 (r343990) @@ -1051,13 +1051,9 @@ malo_tx_start(struct malo_softc *sc, struct ieee80211_ copyhdrlen = hdrlen = ieee80211_anyhdrsize(wh); pktlen = m0->m_pkthdr.len; if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_IS_DSTODS(wh)) { - qos = *(uint16_t *) - (((struct ieee80211_qosframe_addr4 *) wh)->i_qos); + qos = *(uint16_t *)ieee80211_getqos(wh); + if (IEEE80211_IS_DSTODS(wh)) copyhdrlen -= sizeof(qos); - } else - qos = *(uint16_t *) - (((struct ieee80211_qosframe *) wh)->i_qos); } else qos = 0; @@ -1952,7 +1948,6 @@ malo_rx_proc(void *arg, int npending) struct malo_rxdesc *ds; struct mbuf *m, *mnew; struct ieee80211_qosframe *wh; - struct ieee80211_qosframe_addr4 *wh4; struct ieee80211_node *ni; int off, len, hdrlen, pktlen, rssi, ntodo; uint8_t *data, status; @@ -2062,15 +2057,8 @@ malo_rx_proc(void *arg, int npending) /* NB: don't need to do this sometimes but ... */ /* XXX special case so we can memcpy after m_devget? */ ovbcopy(data + sizeof(uint16_t), wh, hdrlen); - if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_IS_DSTODS(wh)) { - wh4 = mtod(m, - struct ieee80211_qosframe_addr4*); - *(uint16_t *)wh4->i_qos = ds->qosctrl; - } else { - *(uint16_t *)wh->i_qos = ds->qosctrl; - } - } + if (IEEE80211_QOS_HAS_SEQ(wh)) + *(uint16_t *)ieee80211_getqos(wh) = ds->qosctrl; if (ieee80211_radiotap_active(ic)) { sc->malo_rx_th.wr_flags = 0; sc->malo_rx_th.wr_rate = ds->rate; Modified: head/sys/dev/mwl/if_mwl.c ============================================================================== --- head/sys/dev/mwl/if_mwl.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/dev/mwl/if_mwl.c Sun Feb 10 23:58:56 2019 (r343990) @@ -2614,7 +2614,6 @@ mwl_rx_proc(void *arg, int npending) struct mwl_rxdesc *ds; struct mbuf *m; struct ieee80211_qosframe *wh; - struct ieee80211_qosframe_addr4 *wh4; struct ieee80211_node *ni; struct mwl_node *mn; int off, len, hdrlen, pktlen, rssi, ntodo; @@ -2761,15 +2760,8 @@ mwl_rx_proc(void *arg, int npending) /* NB: don't need to do this sometimes but ... */ /* XXX special case so we can memcpy after m_devget? */ ovbcopy(data + sizeof(uint16_t), wh, hdrlen); - if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_IS_DSTODS(wh)) { - wh4 = mtod(m, - struct ieee80211_qosframe_addr4*); - *(uint16_t *)wh4->i_qos = ds->QosCtrl; - } else { - *(uint16_t *)wh->i_qos = ds->QosCtrl; - } - } + if (IEEE80211_QOS_HAS_SEQ(wh)) + *(uint16_t *)ieee80211_getqos(wh) = ds->QosCtrl; /* * The f/w strips WEP header but doesn't clear * the WEP bit; mark the packet with M_WEP so @@ -3100,13 +3092,9 @@ mwl_tx_start(struct mwl_softc *sc, struct ieee80211_no copyhdrlen = hdrlen; pktlen = m0->m_pkthdr.len; if (IEEE80211_QOS_HAS_SEQ(wh)) { - if (IEEE80211_IS_DSTODS(wh)) { - qos = *(uint16_t *) - (((struct ieee80211_qosframe_addr4 *) wh)->i_qos); + qos = *(uint16_t *)ieee80211_getqos(wh); + if (IEEE80211_IS_DSTODS(wh)) copyhdrlen -= sizeof(qos); - } else - qos = *(uint16_t *) - (((struct ieee80211_qosframe *) wh)->i_qos); } else qos = 0; Modified: head/sys/dev/usb/wlan/if_run.c ============================================================================== --- head/sys/dev/usb/wlan/if_run.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/dev/usb/wlan/if_run.c Sun Feb 10 23:58:56 2019 (r343990) @@ -3369,11 +3369,7 @@ run_tx(struct run_softc *sc, struct mbuf *m, struct ie if ((hasqos = IEEE80211_QOS_HAS_SEQ(wh))) { uint8_t *frm; - if(IEEE80211_HAS_ADDR4(wh)) - frm = ((struct ieee80211_qosframe_addr4 *)wh)->i_qos; - else - frm =((struct ieee80211_qosframe *)wh)->i_qos; - + frm = ieee80211_getqos(wh); qos = le16toh(*(const uint16_t *)frm); tid = qos & IEEE80211_QOS_TID; qid = TID_TO_WME_AC(tid); Modified: head/sys/net80211/ieee80211_adhoc.c ============================================================================== --- head/sys/net80211/ieee80211_adhoc.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_adhoc.c Sun Feb 10 23:58:56 2019 (r343990) @@ -522,11 +522,9 @@ adhoc_input(struct ieee80211_node *ni, struct mbuf *m, /* * Save QoS bits for use below--before we strip the header. */ - if (subtype == IEEE80211_FC0_SUBTYPE_QOS) { - qos = (dir == IEEE80211_FC1_DIR_DSTODS) ? - ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] : - ((struct ieee80211_qosframe *)wh)->i_qos[0]; - } else + if (subtype == IEEE80211_FC0_SUBTYPE_QOS) + qos = ieee80211_getqos(wh)[0]; + else qos = 0; /* Modified: head/sys/net80211/ieee80211_hostap.c ============================================================================== --- head/sys/net80211/ieee80211_hostap.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_hostap.c Sun Feb 10 23:58:56 2019 (r343990) @@ -708,11 +708,9 @@ hostap_input(struct ieee80211_node *ni, struct mbuf *m /* * Save QoS bits for use below--before we strip the header. */ - if (subtype == IEEE80211_FC0_SUBTYPE_QOS) { - qos = (dir == IEEE80211_FC1_DIR_DSTODS) ? - ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] : - ((struct ieee80211_qosframe *)wh)->i_qos[0]; - } else + if (subtype == IEEE80211_FC0_SUBTYPE_QOS) + qos = ieee80211_getqos(wh)[0]; + else qos = 0; /* Modified: head/sys/net80211/ieee80211_ht.c ============================================================================== --- head/sys/net80211/ieee80211_ht.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_ht.c Sun Feb 10 23:58:56 2019 (r343990) @@ -886,10 +886,7 @@ ieee80211_ampdu_reorder(struct ieee80211_node *ni, str if (IEEE80211_IS_MULTICAST(wh->i_addr1)) return PROCESS; - if (IEEE80211_IS_DSTODS(wh)) - tid = ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0]; - else - tid = wh->i_qos[0]; + tid = ieee80211_getqos(wh)[0]; tid &= IEEE80211_QOS_TID; rap = &ni->ni_rx_ampdu[tid]; if ((rap->rxa_flags & IEEE80211_AGGR_XCHGPEND) == 0) { Modified: head/sys/net80211/ieee80211_mesh.c ============================================================================== --- head/sys/net80211/ieee80211_mesh.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_mesh.c Sun Feb 10 23:58:56 2019 (r343990) @@ -1655,12 +1655,7 @@ mesh_input(struct ieee80211_node *ni, struct mbuf *m, * in the Mesh Control field and a 3 address qos frame * is used. */ - if (IEEE80211_IS_DSTODS(wh)) - *(uint16_t *)qos = *(uint16_t *) - ((struct ieee80211_qosframe_addr4 *)wh)->i_qos; - else - *(uint16_t *)qos = *(uint16_t *) - ((struct ieee80211_qosframe *)wh)->i_qos; + *(uint16_t *)qos = *(uint16_t *)ieee80211_getqos(wh); /* * NB: The mesh STA sets the Mesh Control Present Modified: head/sys/net80211/ieee80211_output.c ============================================================================== --- head/sys/net80211/ieee80211_output.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_output.c Sun Feb 10 23:58:56 2019 (r343990) @@ -1948,14 +1948,8 @@ ieee80211_fragment(struct ieee80211vap *vap, struct mb whf = mtod(m, struct ieee80211_frame *); memcpy(whf, wh, hdrsize); #ifdef IEEE80211_SUPPORT_MESH - if (vap->iv_opmode == IEEE80211_M_MBSS) { - if (IEEE80211_IS_DSTODS(wh)) - ((struct ieee80211_qosframe_addr4 *) - whf)->i_qos[1] &= ~IEEE80211_QOS_MC; - else - ((struct ieee80211_qosframe *) - whf)->i_qos[1] &= ~IEEE80211_QOS_MC; - } + if (vap->iv_opmode == IEEE80211_M_MBSS) + ieee80211_getqos(wh)[1] &= ~IEEE80211_QOS_MC; #endif *(uint16_t *)&whf->i_seq[0] |= htole16( (fragno & IEEE80211_SEQ_FRAG_MASK) << Modified: head/sys/net80211/ieee80211_proto.h ============================================================================== --- head/sys/net80211/ieee80211_proto.h Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_proto.h Sun Feb 10 23:58:56 2019 (r343990) @@ -303,6 +303,22 @@ void ieee80211_wme_ic_getparams(struct ieee80211com *i int ieee80211_wme_vap_ac_is_noack(struct ieee80211vap *vap, int ac); /* + * Return pointer to the QoS field from a Qos frame. + */ +static __inline uint8_t * +ieee80211_getqos(void *data) +{ + struct ieee80211_frame *wh = data; + + KASSERT(IEEE80211_QOS_HAS_SEQ(wh), ("QoS field is absent!")); + + if (IEEE80211_IS_DSTODS(wh)) + return (((struct ieee80211_qosframe_addr4 *)wh)->i_qos); + else + return (((struct ieee80211_qosframe *)wh)->i_qos); +} + +/* * Return the WME TID from a QoS frame. If no TID * is present return the index for the "non-QoS" entry. */ Modified: head/sys/net80211/ieee80211_sta.c ============================================================================== --- head/sys/net80211/ieee80211_sta.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_sta.c Sun Feb 10 23:58:56 2019 (r343990) @@ -786,11 +786,9 @@ sta_input(struct ieee80211_node *ni, struct mbuf *m, /* * Save QoS bits for use below--before we strip the header. */ - if (subtype == IEEE80211_FC0_SUBTYPE_QOS) { - qos = (dir == IEEE80211_FC1_DIR_DSTODS) ? - ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] : - ((struct ieee80211_qosframe *)wh)->i_qos[0]; - } else + if (subtype == IEEE80211_FC0_SUBTYPE_QOS) + qos = ieee80211_getqos(wh)[0]; + else qos = 0; /* Modified: head/sys/net80211/ieee80211_wds.c ============================================================================== --- head/sys/net80211/ieee80211_wds.c Sun Feb 10 23:47:37 2019 (r343989) +++ head/sys/net80211/ieee80211_wds.c Sun Feb 10 23:58:56 2019 (r343990) @@ -583,11 +583,9 @@ wds_input(struct ieee80211_node *ni, struct mbuf *m, /* * Save QoS bits for use below--before we strip the header. */ - if (subtype == IEEE80211_FC0_SUBTYPE_QOS) { - qos = (dir == IEEE80211_FC1_DIR_DSTODS) ? - ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] : - ((struct ieee80211_qosframe *)wh)->i_qos[0]; - } else + if (subtype == IEEE80211_FC0_SUBTYPE_QOS) + qos = ieee80211_getqos(wh)[0]; + else qos = 0; /* From owner-svn-src-all@freebsd.org Mon Feb 11 00:11:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 55E4314E2686; Mon, 11 Feb 2019 00:11:03 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F0FB7731C4; Mon, 11 Feb 2019 00:11:02 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D1E001FE40; Mon, 11 Feb 2019 00:11:02 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B0B2GE044824; Mon, 11 Feb 2019 00:11:02 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B0B2jE044823; Mon, 11 Feb 2019 00:11:02 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902110011.x1B0B2jE044823@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Mon, 11 Feb 2019 00:11:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343991 - head/sbin/gbde X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sbin/gbde X-SVN-Commit-Revision: 343991 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: F0FB7731C4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 00:11:03 -0000 Author: cem Date: Mon Feb 11 00:11:02 2019 New Revision: 343991 URL: https://svnweb.freebsd.org/changeset/base/343991 Log: gbde(8) - simplify randomisation with arc4random_buf Submitted by: David CARLIER Differential Revision: https://reviews.freebsd.org/D18678 Modified: head/sbin/gbde/gbde.c Modified: head/sbin/gbde/gbde.c ============================================================================== --- head/sbin/gbde/gbde.c Sun Feb 10 23:58:56 2019 (r343990) +++ head/sbin/gbde/gbde.c Mon Feb 11 00:11:02 2019 (r343991) @@ -174,18 +174,7 @@ g_read_data(struct g_consumer *cp, off_t offset, off_t static void random_bits(void *p, u_int len) { - static int fdr = -1; - int i; - - if (fdr < 0) { - fdr = open("/dev/urandom", O_RDONLY); - if (fdr < 0) - err(1, "/dev/urandom"); - } - - i = read(fdr, p, len); - if (i != (int)len) - err(1, "read from /dev/urandom"); + arc4random_buf(p, len); } /* XXX: not nice */ From owner-svn-src-all@freebsd.org Mon Feb 11 00:31:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A2A4D14E2F24; Mon, 11 Feb 2019 00:31:59 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 45ABE74236; Mon, 11 Feb 2019 00:31:59 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2DF2B20307; Mon, 11 Feb 2019 00:31:59 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B0VwpU056124; Mon, 11 Feb 2019 00:31:58 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B0Vwtn056123; Mon, 11 Feb 2019 00:31:58 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902110031.x1B0Vwtn056123@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Mon, 11 Feb 2019 00:31:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r343992 - in stable: 11/sys/dev/iwn 12/sys/dev/iwn X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/iwn 12/sys/dev/iwn X-SVN-Commit-Revision: 343992 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 45ABE74236 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 00:31:59 -0000 Author: avos Date: Mon Feb 11 00:31:58 2019 New Revision: 343992 URL: https://svnweb.freebsd.org/changeset/base/343992 Log: MFC r343815: iwn(4): plug initialization path vs interrupt handler races There are few places in interrupt handler where the driver lock is dropped; ensure that device is still running before processing remaining ring entries. PR: 192641 Modified: stable/11/sys/dev/iwn/if_iwn.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/sys/dev/iwn/if_iwn.c Directory Properties: stable/12/ (props changed) Modified: stable/11/sys/dev/iwn/if_iwn.c ============================================================================== --- stable/11/sys/dev/iwn/if_iwn.c Mon Feb 11 00:11:02 2019 (r343991) +++ stable/11/sys/dev/iwn/if_iwn.c Mon Feb 11 00:31:58 2019 (r343992) @@ -3801,6 +3801,7 @@ iwn_notif_intr(struct iwn_softc *sc) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); uint16_t hw; + int is_stopped; bus_dmamap_sync(sc->rxq.stat_dma.tag, sc->rxq.stat_dma.map, BUS_DMASYNC_POSTREAD); @@ -3832,6 +3833,11 @@ iwn_notif_intr(struct iwn_softc *sc) case IWN_MPDU_RX_DONE: /* An 802.11 frame has been received. */ iwn_rx_done(sc, desc, data); + + is_stopped = (sc->sc_flags & IWN_FLAG_RUNNING) == 0; + if (__predict_false(is_stopped)) + return; + break; case IWN_RX_COMPRESSED_BA: @@ -3874,6 +3880,11 @@ iwn_notif_intr(struct iwn_softc *sc) IWN_UNLOCK(sc); ieee80211_beacon_miss(ic); IWN_LOCK(sc); + + is_stopped = (sc->sc_flags & + IWN_FLAG_RUNNING) == 0; + if (__predict_false(is_stopped)) + return; } } break; @@ -3950,6 +3961,11 @@ iwn_notif_intr(struct iwn_softc *sc) IWN_UNLOCK(sc); ieee80211_scan_next(vap); IWN_LOCK(sc); + + is_stopped = (sc->sc_flags & IWN_FLAG_RUNNING) == 0; + if (__predict_false(is_stopped)) + return; + break; } case IWN5000_CALIBRATION_RESULT: From owner-svn-src-all@freebsd.org Mon Feb 11 00:32:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D19ED14E2F25; Mon, 11 Feb 2019 00:31:59 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 70FC574238; Mon, 11 Feb 2019 00:31:59 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5FDF920309; Mon, 11 Feb 2019 00:31:59 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B0VxBC056130; Mon, 11 Feb 2019 00:31:59 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B0VxNP056129; Mon, 11 Feb 2019 00:31:59 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902110031.x1B0VxNP056129@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Mon, 11 Feb 2019 00:31:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343992 - in stable: 11/sys/dev/iwn 12/sys/dev/iwn X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 11/sys/dev/iwn 12/sys/dev/iwn X-SVN-Commit-Revision: 343992 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 70FC574238 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 00:32:00 -0000 Author: avos Date: Mon Feb 11 00:31:58 2019 New Revision: 343992 URL: https://svnweb.freebsd.org/changeset/base/343992 Log: MFC r343815: iwn(4): plug initialization path vs interrupt handler races There are few places in interrupt handler where the driver lock is dropped; ensure that device is still running before processing remaining ring entries. PR: 192641 Modified: stable/12/sys/dev/iwn/if_iwn.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/dev/iwn/if_iwn.c Directory Properties: stable/11/ (props changed) Modified: stable/12/sys/dev/iwn/if_iwn.c ============================================================================== --- stable/12/sys/dev/iwn/if_iwn.c Mon Feb 11 00:11:02 2019 (r343991) +++ stable/12/sys/dev/iwn/if_iwn.c Mon Feb 11 00:31:58 2019 (r343992) @@ -3814,6 +3814,7 @@ iwn_notif_intr(struct iwn_softc *sc) struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); uint16_t hw; + int is_stopped; bus_dmamap_sync(sc->rxq.stat_dma.tag, sc->rxq.stat_dma.map, BUS_DMASYNC_POSTREAD); @@ -3845,6 +3846,11 @@ iwn_notif_intr(struct iwn_softc *sc) case IWN_MPDU_RX_DONE: /* An 802.11 frame has been received. */ iwn_rx_done(sc, desc, data); + + is_stopped = (sc->sc_flags & IWN_FLAG_RUNNING) == 0; + if (__predict_false(is_stopped)) + return; + break; case IWN_RX_COMPRESSED_BA: @@ -3885,6 +3891,11 @@ iwn_notif_intr(struct iwn_softc *sc) IWN_UNLOCK(sc); ieee80211_beacon_miss(ic); IWN_LOCK(sc); + + is_stopped = (sc->sc_flags & + IWN_FLAG_RUNNING) == 0; + if (__predict_false(is_stopped)) + return; } } break; @@ -3951,6 +3962,11 @@ iwn_notif_intr(struct iwn_softc *sc) IWN_UNLOCK(sc); ieee80211_scan_next(vap); IWN_LOCK(sc); + + is_stopped = (sc->sc_flags & IWN_FLAG_RUNNING) == 0; + if (__predict_false(is_stopped)) + return; + break; } case IWN5000_CALIBRATION_RESULT: From owner-svn-src-all@freebsd.org Mon Feb 11 04:00:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7477D14E76BB; Mon, 11 Feb 2019 04:00:02 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 19D8E81DF5; Mon, 11 Feb 2019 04:00:02 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 086D02256D; Mon, 11 Feb 2019 04:00:02 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B401wZ063349; Mon, 11 Feb 2019 04:00:01 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B401Bb063347; Mon, 11 Feb 2019 04:00:01 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902110400.x1B401Bb063347@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 11 Feb 2019 04:00:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343993 - head/sbin/bectl X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/sbin/bectl X-SVN-Commit-Revision: 343993 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 19D8E81DF5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 04:00:02 -0000 Author: kevans Date: Mon Feb 11 04:00:01 2019 New Revision: 343993 URL: https://svnweb.freebsd.org/changeset/base/343993 Log: bectl(8): Add -o flag to destroy to clean up the origin snapshot of BE We can't predict when destruction of origin is needed, and currently we have a precedent for not prompting for things. Leave the decision up to the user of bectl(8) if they want the origin snapshot to be destroyed or not. Emits a warning when -o isn't used and an origin snapshot is left to be cleaned up, for the time being. This is handy when one drops the -o flag but really did want to clean up the origin. A couple of -e ignore's have been sprinkled around the test suite for places that we don't care that the origin's not been cleaned up. -o functionality tests will be added in the future, but are omitted for now to reduce conflicts with work in flight to fix bits of the tests. Reported by: Shawn Webb MFC after: 1 week Modified: head/sbin/bectl/bectl.8 head/sbin/bectl/bectl.c Modified: head/sbin/bectl/bectl.8 ============================================================================== --- head/sbin/bectl/bectl.8 Mon Feb 11 00:31:58 2019 (r343992) +++ head/sbin/bectl/bectl.8 Mon Feb 11 04:00:01 2019 (r343993) @@ -18,7 +18,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 25, 2018 +.Dd February 10, 2019 .Dt BECTL 8 .Os .Sh NAME @@ -40,7 +40,7 @@ .Ar beName@snapshot .Nm .Cm destroy -.Op Fl F +.Op Fl \&Fo .Brq Ar beName | beName@snapshot .Nm .Cm export @@ -124,7 +124,7 @@ If the flag is given, a recursive boot environment will be made. .It Xo .Cm destroy -.Op Fl F +.Op Fl \&Fo .Brq Ar beName | beName@snapshot .Xc Destroys the given @@ -136,6 +136,14 @@ snapshot without confirmation, unlike in Specifying .Fl F will automatically unmount without confirmation. +.Pp +By default, +.Nm +will warn that it is not destroying the origin of +.Ar beName . +The +.Fl o +flag may be specified to destroy the origin as well. .It Cm export Ar sourceBe Export .Ar sourceBe Modified: head/sbin/bectl/bectl.c ============================================================================== --- head/sbin/bectl/bectl.c Mon Feb 11 00:31:58 2019 (r343992) +++ head/sbin/bectl/bectl.c Mon Feb 11 04:00:01 2019 (r343993) @@ -341,16 +341,19 @@ bectl_cmd_add(int argc, char *argv[]) static int bectl_cmd_destroy(int argc, char *argv[]) { - char *target; - int opt, err; - bool force; + nvlist_t *props; + char *origin, *target, targetds[BE_MAXPATHLEN]; + int err, flags, opt; - force = false; - while ((opt = getopt(argc, argv, "F")) != -1) { + flags = 0; + while ((opt = getopt(argc, argv, "Fo")) != -1) { switch (opt) { case 'F': - force = true; + flags |= BE_DESTROY_FORCE; break; + case 'o': + flags |= BE_DESTROY_ORIGIN; + break; default: fprintf(stderr, "bectl destroy: unknown option '-%c'\n", optopt); @@ -368,7 +371,24 @@ bectl_cmd_destroy(int argc, char *argv[]) target = argv[0]; - err = be_destroy(be, target, force); + /* We'll emit a notice if there's an origin to be cleaned up */ + if ((flags & BE_DESTROY_ORIGIN) == 0 && strchr(target, '@') == NULL) { + if (be_root_concat(be, target, targetds) != 0) + goto destroy; + if (be_prop_list_alloc(&props) != 0) + goto destroy; + if (be_get_dataset_props(be, targetds, props) != 0) { + be_prop_list_free(props); + goto destroy; + } + if (nvlist_lookup_string(props, "origin", &origin) == 0) + fprintf(stderr, "bectl destroy: leaving origin '%s' intact\n", + origin); + be_prop_list_free(props); + } + +destroy: + err = be_destroy(be, target, flags); return (err); } From owner-svn-src-all@freebsd.org Mon Feb 11 04:00:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6D7D814E7729; Mon, 11 Feb 2019 04:00:43 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1543D81F46; Mon, 11 Feb 2019 04:00:43 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 074972257F; Mon, 11 Feb 2019 04:00:43 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B40g6W063416; Mon, 11 Feb 2019 04:00:42 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B40gVV063415; Mon, 11 Feb 2019 04:00:42 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902110400.x1B40gVV063415@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Mon, 11 Feb 2019 04:00:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343994 - head/sbin/bectl/tests X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/sbin/bectl/tests X-SVN-Commit-Revision: 343994 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1543D81F46 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 04:00:43 -0000 Author: kevans Date: Mon Feb 11 04:00:42 2019 New Revision: 343994 URL: https://svnweb.freebsd.org/changeset/base/343994 Log: bectl(8): commit missing test modifications from r343993 X-MFC-With: r343993 Modified: head/sbin/bectl/tests/bectl_test.sh Modified: head/sbin/bectl/tests/bectl_test.sh ============================================================================== --- head/sbin/bectl/tests/bectl_test.sh Mon Feb 11 04:00:01 2019 (r343993) +++ head/sbin/bectl/tests/bectl_test.sh Mon Feb 11 04:00:42 2019 (r343994) @@ -110,7 +110,7 @@ bectl_destroy_body() bectl_create_setup ${zpool} ${disk} ${mount} atf_check bectl -r ${zpool}/ROOT create -e default default2 atf_check -o not-empty zfs get mountpoint ${zpool}/ROOT/default2 - atf_check bectl -r ${zpool}/ROOT destroy default2 + atf_check -e ignore bectl -r ${zpool}/ROOT destroy default2 atf_check -e not-empty -s not-exit:0 zfs get mountpoint ${zpool}/ROOT/default2 } bectl_destroy_cleanup() @@ -137,7 +137,7 @@ bectl_export_import_body() atf_check -o save:exported bectl -r ${zpool}/ROOT export default atf_check -x "bectl -r ${zpool}/ROOT import default2 < exported" atf_check -o not-empty zfs get mountpoint ${zpool}/ROOT/default2 - atf_check bectl -r ${zpool}/ROOT destroy default2 + atf_check -e ignore bectl -r ${zpool}/ROOT destroy default2 atf_check -e not-empty -s not-exit:0 zfs get mountpoint \ ${zpool}/ROOT/default2 } @@ -171,7 +171,7 @@ bectl_list_body() atf_check bectl -r ${zpool}/ROOT create -e default default2 atf_check -o save:list.out bectl -r ${zpool}/ROOT list atf_check -o not-empty grep 'default2' list.out - atf_check bectl -r ${zpool}/ROOT destroy default2 + atf_check -e ignore bectl -r ${zpool}/ROOT destroy default2 atf_check -o save:list.out bectl -r ${zpool}/ROOT list atf_check -s not-exit:0 grep 'default2' list.out # XXX TODO: Formatting checks From owner-svn-src-all@freebsd.org Mon Feb 11 05:17:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8997D14E8F85; Mon, 11 Feb 2019 05:17:34 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 219C383DDE; Mon, 11 Feb 2019 05:17:34 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 05181232CE; Mon, 11 Feb 2019 05:17:34 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B5HXCj004849; Mon, 11 Feb 2019 05:17:33 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B5HV5t004837; Mon, 11 Feb 2019 05:17:31 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902110517.x1B5HV5t004837@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 05:17:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343995 - in head/sys: net net/altq netpfil/pf X-SVN-Group: head X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: in head/sys: net net/altq netpfil/pf X-SVN-Commit-Revision: 343995 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 219C383DDE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 05:17:34 -0000 Author: pkelsey Date: Mon Feb 11 05:17:31 2019 New Revision: 343995 URL: https://svnweb.freebsd.org/changeset/base/343995 Log: Reduce the time it takes the kernel to install a new PF config containing a large number of queues In general, the time savings come from separating the active and inactive queues lists into separate interface and non-interface queue lists, and changing the rule and queue tag management from list-based to hash-bashed. In HFSC, a linear scan of the class table during each queue destroy was also eliminated. There are now two new tunables to control the hash size used for each tag set (default for each is 128): net.pf.queue_tag_hashsize net.pf.rule_tag_hashsize Reviewed by: kp MFC after: 1 week Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D19131 Modified: head/sys/net/altq/altq_cbq.c head/sys/net/altq/altq_codel.c head/sys/net/altq/altq_fairq.c head/sys/net/altq/altq_hfsc.c head/sys/net/altq/altq_hfsc.h head/sys/net/altq/altq_priq.c head/sys/net/altq/altq_subr.c head/sys/net/altq/altq_var.h head/sys/net/pfvar.h head/sys/netpfil/pf/pf.c head/sys/netpfil/pf/pf_ioctl.c Modified: head/sys/net/altq/altq_cbq.c ============================================================================== --- head/sys/net/altq/altq_cbq.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_cbq.c Mon Feb 11 05:17:31 2019 (r343995) @@ -223,12 +223,11 @@ cbq_pfattach(struct pf_altq *a) } int -cbq_add_altq(struct pf_altq *a) +cbq_add_altq(struct ifnet *ifp, struct pf_altq *a) { cbq_state_t *cbqp; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: head/sys/net/altq/altq_codel.c ============================================================================== --- head/sys/net/altq/altq_codel.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_codel.c Mon Feb 11 05:17:31 2019 (r343995) @@ -89,13 +89,12 @@ codel_pfattach(struct pf_altq *a) } int -codel_add_altq(struct pf_altq *a) +codel_add_altq(struct ifnet *ifp, struct pf_altq *a) { struct codel_if *cif; - struct ifnet *ifp; struct codel_opts *opts; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: head/sys/net/altq/altq_fairq.c ============================================================================== --- head/sys/net/altq/altq_fairq.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_fairq.c Mon Feb 11 05:17:31 2019 (r343995) @@ -148,12 +148,11 @@ fairq_pfattach(struct pf_altq *a) } int -fairq_add_altq(struct pf_altq *a) +fairq_add_altq(struct ifnet *ifp, struct pf_altq *a) { struct fairq_if *pif; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: head/sys/net/altq/altq_hfsc.c ============================================================================== --- head/sys/net/altq/altq_hfsc.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_hfsc.c Mon Feb 11 05:17:31 2019 (r343995) @@ -159,12 +159,11 @@ hfsc_pfattach(struct pf_altq *a) } int -hfsc_add_altq(struct pf_altq *a) +hfsc_add_altq(struct ifnet *ifp, struct pf_altq *a) { struct hfsc_if *hif; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); @@ -506,6 +505,7 @@ hfsc_class_create(struct hfsc_if *hif, struct service_ goto err_ret; } } + cl->cl_slot = i; if (flags & HFCF_DEFAULTCLASS) hif->hif_defaultclass = cl; @@ -558,7 +558,7 @@ hfsc_class_create(struct hfsc_if *hif, struct service_ static int hfsc_class_destroy(struct hfsc_class *cl) { - int i, s; + int s; if (cl == NULL) return (0); @@ -589,12 +589,7 @@ hfsc_class_destroy(struct hfsc_class *cl) ASSERT(p != NULL); } - for (i = 0; i < HFSC_MAX_CLASSES; i++) - if (cl->cl_hif->hif_class_tbl[i] == cl) { - cl->cl_hif->hif_class_tbl[i] = NULL; - break; - } - + cl->cl_hif->hif_class_tbl[cl->cl_slot] = NULL; cl->cl_hif->hif_classes--; IFQ_UNLOCK(cl->cl_hif->hif_ifq); splx(s); Modified: head/sys/net/altq/altq_hfsc.h ============================================================================== --- head/sys/net/altq/altq_hfsc.h Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_hfsc.h Mon Feb 11 05:17:31 2019 (r343995) @@ -214,6 +214,7 @@ struct runtime_sc { struct hfsc_class { u_int cl_id; /* class id (just for debug) */ + u_int cl_slot; /* slot in hif class table */ u_int32_t cl_handle; /* class handle */ struct hfsc_if *cl_hif; /* back pointer to struct hfsc_if */ int cl_flags; /* misc flags */ Modified: head/sys/net/altq/altq_priq.c ============================================================================== --- head/sys/net/altq/altq_priq.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_priq.c Mon Feb 11 05:17:31 2019 (r343995) @@ -95,12 +95,11 @@ priq_pfattach(struct pf_altq *a) } int -priq_add_altq(struct pf_altq *a) +priq_add_altq(struct ifnet * ifp, struct pf_altq *a) { struct priq_if *pif; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: head/sys/net/altq/altq_subr.c ============================================================================== --- head/sys/net/altq/altq_subr.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_subr.c Mon Feb 11 05:17:31 2019 (r343995) @@ -520,7 +520,7 @@ altq_pfdetach(struct pf_altq *a) * malloc with WAITOK, also it is not yet clear which lock to use. */ int -altq_add(struct pf_altq *a) +altq_add(struct ifnet *ifp, struct pf_altq *a) { int error = 0; @@ -535,27 +535,27 @@ altq_add(struct pf_altq *a) switch (a->scheduler) { #ifdef ALTQ_CBQ case ALTQT_CBQ: - error = cbq_add_altq(a); + error = cbq_add_altq(ifp, a); break; #endif #ifdef ALTQ_PRIQ case ALTQT_PRIQ: - error = priq_add_altq(a); + error = priq_add_altq(ifp, a); break; #endif #ifdef ALTQ_HFSC case ALTQT_HFSC: - error = hfsc_add_altq(a); + error = hfsc_add_altq(ifp, a); break; #endif #ifdef ALTQ_FAIRQ case ALTQT_FAIRQ: - error = fairq_add_altq(a); + error = fairq_add_altq(ifp, a); break; #endif #ifdef ALTQ_CODEL case ALTQT_CODEL: - error = codel_add_altq(a); + error = codel_add_altq(ifp, a); break; #endif default: Modified: head/sys/net/altq/altq_var.h ============================================================================== --- head/sys/net/altq/altq_var.h Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/altq/altq_var.h Mon Feb 11 05:17:31 2019 (r343995) @@ -199,40 +199,40 @@ int tbr_set(struct ifaltq *, struct tb_profile *); int altq_pfattach(struct pf_altq *); int altq_pfdetach(struct pf_altq *); -int altq_add(struct pf_altq *); +int altq_add(struct ifnet *, struct pf_altq *); int altq_remove(struct pf_altq *); int altq_add_queue(struct pf_altq *); int altq_remove_queue(struct pf_altq *); int altq_getqstats(struct pf_altq *, void *, int *, int); int cbq_pfattach(struct pf_altq *); -int cbq_add_altq(struct pf_altq *); +int cbq_add_altq(struct ifnet *, struct pf_altq *); int cbq_remove_altq(struct pf_altq *); int cbq_add_queue(struct pf_altq *); int cbq_remove_queue(struct pf_altq *); int cbq_getqstats(struct pf_altq *, void *, int *, int); int codel_pfattach(struct pf_altq *); -int codel_add_altq(struct pf_altq *); +int codel_add_altq(struct ifnet *, struct pf_altq *); int codel_remove_altq(struct pf_altq *); int codel_getqstats(struct pf_altq *, void *, int *, int); int priq_pfattach(struct pf_altq *); -int priq_add_altq(struct pf_altq *); +int priq_add_altq(struct ifnet *, struct pf_altq *); int priq_remove_altq(struct pf_altq *); int priq_add_queue(struct pf_altq *); int priq_remove_queue(struct pf_altq *); int priq_getqstats(struct pf_altq *, void *, int *, int); int hfsc_pfattach(struct pf_altq *); -int hfsc_add_altq(struct pf_altq *); +int hfsc_add_altq(struct ifnet *, struct pf_altq *); int hfsc_remove_altq(struct pf_altq *); int hfsc_add_queue(struct pf_altq *); int hfsc_remove_queue(struct pf_altq *); int hfsc_getqstats(struct pf_altq *, void *, int *, int); int fairq_pfattach(struct pf_altq *); -int fairq_add_altq(struct pf_altq *); +int fairq_add_altq(struct ifnet *, struct pf_altq *); int fairq_remove_altq(struct pf_altq *); int fairq_add_queue(struct pf_altq *); int fairq_remove_queue(struct pf_altq *); Modified: head/sys/net/pfvar.h ============================================================================== --- head/sys/net/pfvar.h Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/net/pfvar.h Mon Feb 11 05:17:31 2019 (r343995) @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -95,6 +96,9 @@ struct pf_addr_wrap { #ifdef _KERNEL +SYSCTL_DECL(_net_pf); +MALLOC_DECLARE(M_PFHASH); + struct pfi_dynaddr { TAILQ_ENTRY(pfi_dynaddr) entry; struct pf_addr pfid_addr4; @@ -1601,7 +1605,7 @@ VNET_DECLARE(uint64_t, pf_stateid[MAXCPU]); #define V_pf_stateid VNET(pf_stateid) TAILQ_HEAD(pf_altqqueue, pf_altq); -VNET_DECLARE(struct pf_altqqueue, pf_altqs[2]); +VNET_DECLARE(struct pf_altqqueue, pf_altqs[4]); #define V_pf_altqs VNET(pf_altqs) VNET_DECLARE(struct pf_palist, pf_pabuf); #define V_pf_pabuf VNET(pf_pabuf) @@ -1616,8 +1620,12 @@ VNET_DECLARE(u_int32_t, ticket_pabuf); #define V_ticket_pabuf VNET(ticket_pabuf) VNET_DECLARE(struct pf_altqqueue *, pf_altqs_active); #define V_pf_altqs_active VNET(pf_altqs_active) +VNET_DECLARE(struct pf_altqqueue *, pf_altq_ifs_active); +#define V_pf_altq_ifs_active VNET(pf_altq_ifs_active) VNET_DECLARE(struct pf_altqqueue *, pf_altqs_inactive); #define V_pf_altqs_inactive VNET(pf_altqs_inactive) +VNET_DECLARE(struct pf_altqqueue *, pf_altq_ifs_inactive); +#define V_pf_altq_ifs_inactive VNET(pf_altq_ifs_inactive) VNET_DECLARE(struct pf_rulequeue, pf_unlinked_rules); #define V_pf_unlinked_rules VNET(pf_unlinked_rules) Modified: head/sys/netpfil/pf/pf.c ============================================================================== --- head/sys/netpfil/pf/pf.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/netpfil/pf/pf.c Mon Feb 11 05:17:31 2019 (r343995) @@ -113,10 +113,12 @@ __FBSDID("$FreeBSD$"); */ /* state tables */ -VNET_DEFINE(struct pf_altqqueue, pf_altqs[2]); +VNET_DEFINE(struct pf_altqqueue, pf_altqs[4]); VNET_DEFINE(struct pf_palist, pf_pabuf); VNET_DEFINE(struct pf_altqqueue *, pf_altqs_active); +VNET_DEFINE(struct pf_altqqueue *, pf_altq_ifs_active); VNET_DEFINE(struct pf_altqqueue *, pf_altqs_inactive); +VNET_DEFINE(struct pf_altqqueue *, pf_altq_ifs_inactive); VNET_DEFINE(struct pf_kstatus, pf_status); VNET_DEFINE(u_int32_t, ticket_altqs_active); @@ -358,7 +360,7 @@ VNET_DEFINE(struct pf_limit, pf_limits[PF_LIMIT_MAX]); counter_u64_add(s->rule.ptr->states_cur, -1); \ } while (0) -static MALLOC_DEFINE(M_PFHASH, "pf_hash", "pf(4) hash header structures"); +MALLOC_DEFINE(M_PFHASH, "pf_hash", "pf(4) hash header structures"); VNET_DEFINE(struct pf_keyhash *, pf_keyhash); VNET_DEFINE(struct pf_idhash *, pf_idhash); VNET_DEFINE(struct pf_srchash *, pf_srchash); @@ -860,9 +862,13 @@ pf_initialize() /* ALTQ */ TAILQ_INIT(&V_pf_altqs[0]); TAILQ_INIT(&V_pf_altqs[1]); + TAILQ_INIT(&V_pf_altqs[2]); + TAILQ_INIT(&V_pf_altqs[3]); TAILQ_INIT(&V_pf_pabuf); V_pf_altqs_active = &V_pf_altqs[0]; - V_pf_altqs_inactive = &V_pf_altqs[1]; + V_pf_altq_ifs_active = &V_pf_altqs[1]; + V_pf_altqs_inactive = &V_pf_altqs[2]; + V_pf_altq_ifs_inactive = &V_pf_altqs[3]; /* Send & overload+flush queues. */ STAILQ_INIT(&V_pf_sendqueue); Modified: head/sys/netpfil/pf/pf_ioctl.c ============================================================================== --- head/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 04:00:42 2019 (r343994) +++ head/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 05:17:31 2019 (r343995) @@ -46,11 +46,14 @@ __FBSDID("$FreeBSD$"); #include "opt_pf.h" #include +#include +#include #include #include #include #include #include +#include #include #include #include @@ -129,18 +132,40 @@ VNET_DEFINE_STATIC(int, pf_altq_running); #define TAGID_MAX 50000 struct pf_tagname { - TAILQ_ENTRY(pf_tagname) entries; + TAILQ_ENTRY(pf_tagname) namehash_entries; + TAILQ_ENTRY(pf_tagname) taghash_entries; char name[PF_TAG_NAME_SIZE]; uint16_t tag; int ref; }; -TAILQ_HEAD(pf_tags, pf_tagname); -#define V_pf_tags VNET(pf_tags) -VNET_DEFINE(struct pf_tags, pf_tags); -#define V_pf_qids VNET(pf_qids) -VNET_DEFINE(struct pf_tags, pf_qids); -static MALLOC_DEFINE(M_PFTAG, "pf_tag", "pf(4) tag names"); +struct pf_tagset { + TAILQ_HEAD(, pf_tagname) *namehash; + TAILQ_HEAD(, pf_tagname) *taghash; + unsigned int mask; + uint32_t seed; + BITSET_DEFINE(, TAGID_MAX) avail; +}; + +VNET_DEFINE(struct pf_tagset, pf_tags); +#define V_pf_tags VNET(pf_tags) +static unsigned int pf_rule_tag_hashsize; +#define PF_RULE_TAG_HASH_SIZE_DEFAULT 128 +SYSCTL_UINT(_net_pf, OID_AUTO, rule_tag_hashsize, CTLFLAG_RDTUN, + &pf_rule_tag_hashsize, PF_RULE_TAG_HASH_SIZE_DEFAULT, + "Size of pf(4) rule tag hashtable"); + +#ifdef ALTQ +VNET_DEFINE(struct pf_tagset, pf_qids); +#define V_pf_qids VNET(pf_qids) +static unsigned int pf_queue_tag_hashsize; +#define PF_QUEUE_TAG_HASH_SIZE_DEFAULT 128 +SYSCTL_UINT(_net_pf, OID_AUTO, queue_tag_hashsize, CTLFLAG_RDTUN, + &pf_queue_tag_hashsize, PF_QUEUE_TAG_HASH_SIZE_DEFAULT, + "Size of pf(4) queue tag hashtable"); +#endif +VNET_DEFINE(uma_zone_t, pf_tag_z); +#define V_pf_tag_z VNET(pf_tag_z) static MALLOC_DEFINE(M_PFALTQ, "pf_altq", "pf(4) altq configuration db"); static MALLOC_DEFINE(M_PFRULE, "pf_rule", "pf(4) rules"); @@ -148,9 +173,14 @@ static MALLOC_DEFINE(M_PFRULE, "pf_rule", "pf(4) rules #error PF_QNAME_SIZE must be equal to PF_TAG_NAME_SIZE #endif -static u_int16_t tagname2tag(struct pf_tags *, char *); +static void pf_init_tagset(struct pf_tagset *, unsigned int *, + unsigned int); +static void pf_cleanup_tagset(struct pf_tagset *); +static uint16_t tagname2hashindex(const struct pf_tagset *, const char *); +static uint16_t tag2hashindex(const struct pf_tagset *, uint16_t); +static u_int16_t tagname2tag(struct pf_tagset *, char *); static u_int16_t pf_tagname2tag(char *); -static void tag_unref(struct pf_tags *, u_int16_t); +static void tag_unref(struct pf_tagset *, u_int16_t); #define DPFPRINTF(n, x) if (V_pf_status.debug >= (n)) printf x @@ -436,68 +466,141 @@ pf_free_rule(struct pf_rule *rule) free(rule, M_PFRULE); } +static void +pf_init_tagset(struct pf_tagset *ts, unsigned int *tunable_size, + unsigned int default_size) +{ + unsigned int i; + unsigned int hashsize; + + if (*tunable_size == 0 || !powerof2(*tunable_size)) + *tunable_size = default_size; + + hashsize = *tunable_size; + ts->namehash = mallocarray(hashsize, sizeof(*ts->namehash), M_PFHASH, + M_WAITOK); + ts->taghash = mallocarray(hashsize, sizeof(*ts->taghash), M_PFHASH, + M_WAITOK); + ts->mask = hashsize - 1; + ts->seed = arc4random(); + for (i = 0; i < hashsize; i++) { + TAILQ_INIT(&ts->namehash[i]); + TAILQ_INIT(&ts->taghash[i]); + } + BIT_FILL(TAGID_MAX, &ts->avail); +} + +static void +pf_cleanup_tagset(struct pf_tagset *ts) +{ + unsigned int i; + unsigned int hashsize; + struct pf_tagname *t, *tmp; + + /* + * Only need to clean up one of the hashes as each tag is hashed + * into each table. + */ + hashsize = ts->mask + 1; + for (i = 0; i < hashsize; i++) + TAILQ_FOREACH_SAFE(t, &ts->namehash[i], namehash_entries, tmp) + uma_zfree(V_pf_tag_z, t); + + free(ts->namehash, M_PFHASH); + free(ts->taghash, M_PFHASH); +} + +static uint16_t +tagname2hashindex(const struct pf_tagset *ts, const char *tagname) +{ + + return (murmur3_32_hash(tagname, strlen(tagname), ts->seed) & ts->mask); +} + +static uint16_t +tag2hashindex(const struct pf_tagset *ts, uint16_t tag) +{ + + return (tag & ts->mask); +} + static u_int16_t -tagname2tag(struct pf_tags *head, char *tagname) +tagname2tag(struct pf_tagset *ts, char *tagname) { - struct pf_tagname *tag, *p = NULL; - u_int16_t new_tagid = 1; + struct pf_tagname *tag; + u_int32_t index; + u_int16_t new_tagid; PF_RULES_WASSERT(); - TAILQ_FOREACH(tag, head, entries) + index = tagname2hashindex(ts, tagname); + TAILQ_FOREACH(tag, &ts->namehash[index], namehash_entries) if (strcmp(tagname, tag->name) == 0) { tag->ref++; return (tag->tag); } /* + * new entry + * * to avoid fragmentation, we do a linear search from the beginning - * and take the first free slot we find. if there is none or the list - * is empty, append a new entry at the end. + * and take the first free slot we find. */ - - /* new entry */ - if (!TAILQ_EMPTY(head)) - for (p = TAILQ_FIRST(head); p != NULL && - p->tag == new_tagid; p = TAILQ_NEXT(p, entries)) - new_tagid = p->tag + 1; - - if (new_tagid > TAGID_MAX) + new_tagid = BIT_FFS(TAGID_MAX, &ts->avail); + /* + * Tags are 1-based, with valid tags in the range [1..TAGID_MAX]. + * BIT_FFS() returns a 1-based bit number, with 0 indicating no bits + * set. It may also return a bit number greater than TAGID_MAX due + * to rounding of the number of bits in the vector up to a multiple + * of the vector word size at declaration/allocation time. + */ + if ((new_tagid == 0) || (new_tagid > TAGID_MAX)) return (0); + /* Mark the tag as in use. Bits are 0-based for BIT_CLR() */ + BIT_CLR(TAGID_MAX, new_tagid - 1, &ts->avail); + /* allocate and fill new struct pf_tagname */ - tag = malloc(sizeof(*tag), M_PFTAG, M_NOWAIT|M_ZERO); + tag = uma_zalloc(V_pf_tag_z, M_NOWAIT); if (tag == NULL) return (0); strlcpy(tag->name, tagname, sizeof(tag->name)); tag->tag = new_tagid; - tag->ref++; + tag->ref = 1; - if (p != NULL) /* insert new entry before p */ - TAILQ_INSERT_BEFORE(p, tag, entries); - else /* either list empty or no free slot in between */ - TAILQ_INSERT_TAIL(head, tag, entries); + /* Insert into namehash */ + TAILQ_INSERT_TAIL(&ts->namehash[index], tag, namehash_entries); + /* Insert into taghash */ + index = tag2hashindex(ts, new_tagid); + TAILQ_INSERT_TAIL(&ts->taghash[index], tag, taghash_entries); + return (tag->tag); } static void -tag_unref(struct pf_tags *head, u_int16_t tag) +tag_unref(struct pf_tagset *ts, u_int16_t tag) { - struct pf_tagname *p, *next; - + struct pf_tagname *t; + uint16_t index; + PF_RULES_WASSERT(); - for (p = TAILQ_FIRST(head); p != NULL; p = next) { - next = TAILQ_NEXT(p, entries); - if (tag == p->tag) { - if (--p->ref == 0) { - TAILQ_REMOVE(head, p, entries); - free(p, M_PFTAG); + index = tag2hashindex(ts, tag); + TAILQ_FOREACH(t, &ts->taghash[index], taghash_entries) + if (tag == t->tag) { + if (--t->ref == 0) { + TAILQ_REMOVE(&ts->taghash[index], t, + taghash_entries); + index = tagname2hashindex(ts, t->name); + TAILQ_REMOVE(&ts->namehash[index], t, + namehash_entries); + /* Bits are 0-based for BIT_SET() */ + BIT_SET(TAGID_MAX, tag - 1, &ts->avail); + uma_zfree(V_pf_tag_z, t); } break; } - } } static u_int16_t @@ -522,22 +625,25 @@ pf_qid_unref(u_int32_t qid) static int pf_begin_altq(u_int32_t *ticket) { - struct pf_altq *altq; + struct pf_altq *altq, *tmp; int error = 0; PF_RULES_WASSERT(); - /* Purge the old altq list */ - while ((altq = TAILQ_FIRST(V_pf_altqs_inactive)) != NULL) { - TAILQ_REMOVE(V_pf_altqs_inactive, altq, entries); - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + /* Purge the old altq lists */ + TAILQ_FOREACH_SAFE(altq, V_pf_altq_ifs_inactive, entries, tmp) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* detach and destroy the discipline */ error = altq_remove(altq); - } else - pf_qid_unref(altq->qid); + } free(altq, M_PFALTQ); } + TAILQ_INIT(V_pf_altq_ifs_inactive); + TAILQ_FOREACH_SAFE(altq, V_pf_altqs_inactive, entries, tmp) { + pf_qid_unref(altq->qid); + free(altq, M_PFALTQ); + } + TAILQ_INIT(V_pf_altqs_inactive); if (error) return (error); *ticket = ++V_ticket_altqs_inactive; @@ -548,24 +654,27 @@ pf_begin_altq(u_int32_t *ticket) static int pf_rollback_altq(u_int32_t ticket) { - struct pf_altq *altq; + struct pf_altq *altq, *tmp; int error = 0; PF_RULES_WASSERT(); if (!V_altqs_inactive_open || ticket != V_ticket_altqs_inactive) return (0); - /* Purge the old altq list */ - while ((altq = TAILQ_FIRST(V_pf_altqs_inactive)) != NULL) { - TAILQ_REMOVE(V_pf_altqs_inactive, altq, entries); - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + /* Purge the old altq lists */ + TAILQ_FOREACH_SAFE(altq, V_pf_altq_ifs_inactive, entries, tmp) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* detach and destroy the discipline */ error = altq_remove(altq); - } else - pf_qid_unref(altq->qid); + } free(altq, M_PFALTQ); } + TAILQ_INIT(V_pf_altq_ifs_inactive); + TAILQ_FOREACH_SAFE(altq, V_pf_altqs_inactive, entries, tmp) { + pf_qid_unref(altq->qid); + free(altq, M_PFALTQ); + } + TAILQ_INIT(V_pf_altqs_inactive); V_altqs_inactive_open = 0; return (error); } @@ -573,8 +682,8 @@ pf_rollback_altq(u_int32_t ticket) static int pf_commit_altq(u_int32_t ticket) { - struct pf_altqqueue *old_altqs; - struct pf_altq *altq; + struct pf_altqqueue *old_altqs, *old_altq_ifs; + struct pf_altq *altq, *tmp; int err, error = 0; PF_RULES_WASSERT(); @@ -584,14 +693,16 @@ pf_commit_altq(u_int32_t ticket) /* swap altqs, keep the old. */ old_altqs = V_pf_altqs_active; + old_altq_ifs = V_pf_altq_ifs_active; V_pf_altqs_active = V_pf_altqs_inactive; + V_pf_altq_ifs_active = V_pf_altq_ifs_inactive; V_pf_altqs_inactive = old_altqs; + V_pf_altq_ifs_inactive = old_altq_ifs; V_ticket_altqs_active = V_ticket_altqs_inactive; /* Attach new disciplines */ - TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* attach the discipline */ error = altq_pfattach(altq); if (error == 0 && V_pf_altq_running) @@ -601,11 +712,9 @@ pf_commit_altq(u_int32_t ticket) } } - /* Purge the old altq list */ - while ((altq = TAILQ_FIRST(V_pf_altqs_inactive)) != NULL) { - TAILQ_REMOVE(V_pf_altqs_inactive, altq, entries); - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + /* Purge the old altq lists */ + TAILQ_FOREACH_SAFE(altq, V_pf_altq_ifs_inactive, entries, tmp) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* detach and destroy the discipline */ if (V_pf_altq_running) error = pf_disable_altq(altq); @@ -615,10 +724,15 @@ pf_commit_altq(u_int32_t ticket) err = altq_remove(altq); if (err != 0 && error == 0) error = err; - } else - pf_qid_unref(altq->qid); + } free(altq, M_PFALTQ); } + TAILQ_INIT(V_pf_altq_ifs_inactive); + TAILQ_FOREACH_SAFE(altq, V_pf_altqs_inactive, entries, tmp) { + pf_qid_unref(altq->qid); + free(altq, M_PFALTQ); + } + TAILQ_INIT(V_pf_altqs_inactive); V_altqs_inactive_open = 0; return (error); @@ -675,10 +789,34 @@ pf_disable_altq(struct pf_altq *altq) return (error); } +static int +pf_altq_ifnet_event_add(struct ifnet *ifp, int remove, u_int32_t ticket, + struct pf_altq *altq) +{ + struct ifnet *ifp1; + int error = 0; + + /* Deactivate the interface in question */ + altq->local_flags &= ~PFALTQ_FLAG_IF_REMOVED; + if ((ifp1 = ifunit(altq->ifname)) == NULL || + (remove && ifp1 == ifp)) { + altq->local_flags |= PFALTQ_FLAG_IF_REMOVED; + } else { + error = altq_add(ifp1, altq); + + if (ticket != V_ticket_altqs_inactive) + error = EBUSY; + + if (error) + free(altq, M_PFALTQ); + } + + return (error); +} + void pf_altq_ifnet_event(struct ifnet *ifp, int remove) { - struct ifnet *ifp1; struct pf_altq *a1, *a2, *a3; u_int32_t ticket; int error = 0; @@ -700,7 +838,7 @@ pf_altq_ifnet_event(struct ifnet *ifp, int remove) return; /* Copy the current active set */ - TAILQ_FOREACH(a1, V_pf_altqs_active, entries) { + TAILQ_FOREACH(a1, V_pf_altq_ifs_active, entries) { a2 = malloc(sizeof(*a2), M_PFALTQ, M_NOWAIT); if (a2 == NULL) { error = ENOMEM; @@ -708,41 +846,43 @@ pf_altq_ifnet_event(struct ifnet *ifp, int remove) } bcopy(a1, a2, sizeof(struct pf_altq)); - if (a2->qname[0] != 0) { - if ((a2->qid = pf_qname2qid(a2->qname)) == 0) { - error = EBUSY; - free(a2, M_PFALTQ); - break; - } - a2->altq_disc = NULL; - TAILQ_FOREACH(a3, V_pf_altqs_inactive, entries) { - if (strncmp(a3->ifname, a2->ifname, - IFNAMSIZ) == 0 && a3->qname[0] == 0) { - a2->altq_disc = a3->altq_disc; - break; - } - } + error = pf_altq_ifnet_event_add(ifp, remove, ticket, a2); + if (error) + break; + + TAILQ_INSERT_TAIL(V_pf_altq_ifs_inactive, a2, entries); + } + if (error) + goto out; + TAILQ_FOREACH(a1, V_pf_altqs_active, entries) { + a2 = malloc(sizeof(*a2), M_PFALTQ, M_NOWAIT); + if (a2 == NULL) { + error = ENOMEM; + break; } - /* Deactivate the interface in question */ - a2->local_flags &= ~PFALTQ_FLAG_IF_REMOVED; - if ((ifp1 = ifunit(a2->ifname)) == NULL || - (remove && ifp1 == ifp)) { - a2->local_flags |= PFALTQ_FLAG_IF_REMOVED; - } else { - error = altq_add(a2); + bcopy(a1, a2, sizeof(struct pf_altq)); - if (ticket != V_ticket_altqs_inactive) - error = EBUSY; - - if (error) { - free(a2, M_PFALTQ); + if ((a2->qid = pf_qname2qid(a2->qname)) == 0) { + error = EBUSY; + free(a2, M_PFALTQ); + break; + } + a2->altq_disc = NULL; + TAILQ_FOREACH(a3, V_pf_altq_ifs_inactive, entries) { + if (strncmp(a3->ifname, a2->ifname, + IFNAMSIZ) == 0) { + a2->altq_disc = a3->altq_disc; break; } } + error = pf_altq_ifnet_event_add(ifp, remove, ticket, a2); + if (error) + break; TAILQ_INSERT_TAIL(V_pf_altqs_inactive, a2, entries); } +out: if (error != 0) pf_rollback_altq(ticket); else @@ -1222,6 +1362,28 @@ pf_import_kaltq(struct pfioc_altq_v1 *pa, struct pf_al } #endif /* ALTQ */ +static struct pf_altq * +pf_altq_get_nth_active(u_int32_t n) +{ + struct pf_altq *altq; + u_int32_t nr; + + nr = 0; + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if (nr == n) + return (altq); + nr++; + } + + TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { + if (nr == n) + return (altq); + nr++; + } + + return (NULL); +} + static int pfioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flags, struct thread *td) { @@ -2269,9 +2431,8 @@ DIOCGETSTATES_full: PF_RULES_WLOCK(); /* enable all altq interfaces on active list */ - TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { - if (altq->qname[0] == 0 && (altq->local_flags & - PFALTQ_FLAG_IF_REMOVED) == 0) { + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { error = pf_enable_altq(altq); if (error != 0) break; @@ -2289,9 +2450,8 @@ DIOCGETSTATES_full: PF_RULES_WLOCK(); /* disable all altq interfaces on active list */ - TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { - if (altq->qname[0] == 0 && (altq->local_flags & - PFALTQ_FLAG_IF_REMOVED) == 0) { + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { error = pf_disable_altq(altq); if (error != 0) break; @@ -2336,9 +2496,9 @@ DIOCGETSTATES_full: break; } altq->altq_disc = NULL; - TAILQ_FOREACH(a, V_pf_altqs_inactive, entries) { + TAILQ_FOREACH(a, V_pf_altq_ifs_inactive, entries) { if (strncmp(a->ifname, altq->ifname, - IFNAMSIZ) == 0 && a->qname[0] == 0) { + IFNAMSIZ) == 0) { altq->altq_disc = a->altq_disc; break; } @@ -2348,7 +2508,7 @@ DIOCGETSTATES_full: if ((ifp = ifunit(altq->ifname)) == NULL) altq->local_flags |= PFALTQ_FLAG_IF_REMOVED; else - error = altq_add(altq); + error = altq_add(ifp, altq); if (error) { PF_RULES_WUNLOCK(); @@ -2356,7 +2516,10 @@ DIOCGETSTATES_full: break; } - TAILQ_INSERT_TAIL(V_pf_altqs_inactive, altq, entries); + if (altq->qname[0] != 0) + TAILQ_INSERT_TAIL(V_pf_altqs_inactive, altq, entries); + else + TAILQ_INSERT_TAIL(V_pf_altq_ifs_inactive, altq, entries); /* version error check done on import above */ pf_export_kaltq(altq, pa, IOCPARM_LEN(cmd)); PF_RULES_WUNLOCK(); @@ -2370,6 +2533,8 @@ DIOCGETSTATES_full: PF_RULES_RLOCK(); pa->nr = 0; + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) + pa->nr++; TAILQ_FOREACH(altq, V_pf_altqs_active, entries) pa->nr++; pa->ticket = V_ticket_altqs_active; @@ -2381,7 +2546,6 @@ DIOCGETSTATES_full: case DIOCGETALTQV1: { struct pfioc_altq_v1 *pa = (struct pfioc_altq_v1 *)addr; struct pf_altq *altq; - u_int32_t nr; PF_RULES_RLOCK(); if (pa->ticket != V_ticket_altqs_active) { @@ -2389,12 +2553,7 @@ DIOCGETSTATES_full: error = EBUSY; break; } - nr = 0; - altq = TAILQ_FIRST(V_pf_altqs_active); - while ((altq != NULL) && (nr < pa->nr)) { - altq = TAILQ_NEXT(altq, entries); - nr++; - } + altq = pf_altq_get_nth_active(pa->nr); if (altq == NULL) { PF_RULES_RUNLOCK(); error = EBUSY; @@ -2415,7 +2574,6 @@ DIOCGETSTATES_full: case DIOCGETQSTATSV1: { struct pfioc_qstats_v1 *pq = (struct pfioc_qstats_v1 *)addr; struct pf_altq *altq; - u_int32_t nr; int nbytes; u_int32_t version; @@ -2426,12 +2584,7 @@ DIOCGETSTATES_full: break; } nbytes = pq->nbytes; - nr = 0; - altq = TAILQ_FIRST(V_pf_altqs_active); - while ((altq != NULL) && (nr < pq->nr)) { - altq = TAILQ_NEXT(altq, entries); - nr++; - } + altq = pf_altq_get_nth_active(pq->nr); if (altq == NULL) { PF_RULES_RUNLOCK(); error = EBUSY; @@ -4173,9 +4326,16 @@ dehook_pf(void) static void pf_load_vnet(void) { - TAILQ_INIT(&V_pf_tags); - TAILQ_INIT(&V_pf_qids); + V_pf_tag_z = uma_zcreate("pf tags", sizeof(struct pf_tagname), + NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + pf_init_tagset(&V_pf_tags, &pf_rule_tag_hashsize, + PF_RULE_TAG_HASH_SIZE_DEFAULT); +#ifdef ALTQ + pf_init_tagset(&V_pf_qids, &pf_queue_tag_hashsize, + PF_QUEUE_TAG_HASH_SIZE_DEFAULT); +#endif + pfattach_vnet(); V_pf_vnet_active = 1; } @@ -4240,6 +4400,12 @@ pf_unload_vnet(void) pf_cleanup(); if (IS_DEFAULT_VNET(curvnet)) pf_mtag_cleanup(); + + pf_cleanup_tagset(&V_pf_tags); +#ifdef ALTQ + pf_cleanup_tagset(&V_pf_qids); +#endif + uma_zdestroy(V_pf_tag_z); /* Free counters last as we updated them during shutdown. */ counter_u64_free(V_pf_default_rule.states_cur); From owner-svn-src-all@freebsd.org Mon Feb 11 05:18:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5F86314E8FBB; Mon, 11 Feb 2019 05:18:03 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id 532C383F21; Mon, 11 Feb 2019 05:18:02 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id 1A8A41057C2D; Mon, 11 Feb 2019 16:17:58 +1100 (AEDT) Date: Mon, 11 Feb 2019 16:17:57 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Conrad Meyer cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343985 - head/sys/kern In-Reply-To: <201902102307.x1AN7lj8011617@repo.freebsd.org> Message-ID: <20190211141730.Y1118@besplex.bde.org> References: <201902102307.x1AN7lj8011617@repo.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=FNpr/6gs c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=8CGCo7kxAAAA:8 a=UhgyTraLAAAA:8 a=AA-rp-4oXAJj9xe1gjMA:9 a=CjuIK1q_8ugA:10 a=uyKDLsAT3yn652Fg1vMC:22 a=WPR-7A3s_xU2s7D-tfWM:22 X-Rspamd-Queue-Id: 532C383F21 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.80 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.80)[-0.799,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 05:18:03 -0000 On Sun, 10 Feb 2019, Conrad Meyer wrote: > Log: > Prevent overflow for usertime/systime in caclru1 > > PR: 76972 and duplicates > Reported by: Dr. Christopher Landauer , > Steinar Haug > Submitted by: Andrey Zonov (earlier version) > MFC after: 2 weeks kib asked me to fix this a couple of days ago. I wrote a much better version, following the hints in my review of PR 76972. > Modified: head/sys/kern/kern_resource.c > ============================================================================== > --- head/sys/kern/kern_resource.c Sun Feb 10 22:33:41 2019 (r343984) > +++ head/sys/kern/kern_resource.c Sun Feb 10 23:07:46 2019 (r343985) > @@ -863,6 +863,15 @@ rufetchtd(struct thread *td, struct rusage *ru) > calcru1(p, &td->td_rux, &ru->ru_utime, &ru->ru_stime); > } > > +static uint64_t > +mul64_by_fraction(uint64_t a, uint64_t b, uint64_t c) > +{ > + /* > + * Compute floor(a * (b / c)) without overflowing, (b / c) <= 1.0. > + */ > + return ((a / c) * b + (a % c) * (b / c) + (a % c) * (b % c) / c); > +} > + This is the slowest correct fix in the PR followup. kib predicted that I wouldn't like it. It does 2 64-bit divmods (after optimization) and many multiplications per call. Times 2 calls. clang will probably inline this, giving only 3 64-bit divmods instead of 4. Better version: + /* + * Subdivide tu. Combine avoiding overflow with reduction to 32-bit + * operands in the multiplications in the usual case of tu <= + * UINT32_MAX usec = 4294 seconds. + */ + if (__predict_true(tu <= UINT32_MAX && tt <= UINT32_MAX)) { + uu = ((uint64_t)(uint32_t)tu * (uint32_t)ut) / tt; + su = ((uint64_t)(uint32_t)tu * (uint32_t)st) / tt; + } else { + q = tu / tt; + r = tu % tt; + uu = q * ut + (r * ut) / tt; + su = q * st + (r * st) / tt; + } This does 2 32-bit divisions in the usual case, and 1 64-bit divmod and 2 64-bit divs in the slow case. The second clause is directly from Landauer's version. The a = b * q + r method is much easier to understand when written using assignments to variables named q and r. The first clause is from Landauer's version with less magic numbers. I over-optimized it a little and am going to remove the casts. They are only a small optimization for the 32-bit case, and compilers can do them anyway, and the 32-bit udiv/mod libcalls can get closer to doing them. I wrote further fixes and optimizations: - restore the invariant that user + sys time doesn't exceed total time - restore monotonicity of interrupt time (this implies the previous invariant) - merge interrupt time into sys time and make interrupt time 0. Everything becomes simpler and faster and less buggy. - optimize udiv/mod for usec to timeval conversions. Interrupt times became worse than useless with ithreads in SMPng. Sys time for ithreads gives a much better place to record interrupt time than scattered interrupt times in all threads. Interrupt times are now stored in all threads indirectly as tu - uu - su. They are always 0 for non-ithreads, except for bugs. One of the bugs is that rounding down uu and su makes the indirect interrupt time tu - uu - su often 1 (usec) instead of 0. Versions without bugs in invariants and monotonictity had to do complicated adjustments on many later calls to preserve this value as 1. Versions with these bugs have a sticky off-by-1 error instead. I thought that I might have written this overflow bug, but actually it was in 4.4BSD-Lite and I didn't notice it when I cleaned that up. Lite2 does: XX u = sec * 1000000 + usec; XX st = (u * st) / tot; XX [... similarly for other 2 times] Overflow here. The 64-bit tick counters are useless except for them not needing upcasts here, since they although they don't overflow for billions of years, calculations like this overflow after 108 hours. FreeBSD-1 (Net/2?) doesn't have this problem, since it maintains the times as timevals (very inaccurately but obviously monotonically by incrementing the times in hardclock()). It has lots of overflow bugs 248 days from using signed int tick counters and hz = 100. Bruce From owner-svn-src-all@freebsd.org Mon Feb 11 05:39:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2586B14E9805; Mon, 11 Feb 2019 05:39:39 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BB04A848F4; Mon, 11 Feb 2019 05:39:38 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AC36B23645; Mon, 11 Feb 2019 05:39:38 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B5dcN4015191; Mon, 11 Feb 2019 05:39:38 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B5dcdF015190; Mon, 11 Feb 2019 05:39:38 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902110539.x1B5dcdF015190@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 05:39:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343996 - head/sys/netpfil/pf X-SVN-Group: head X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: head/sys/netpfil/pf X-SVN-Commit-Revision: 343996 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BB04A848F4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.94)[-0.939,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 05:39:39 -0000 Author: pkelsey Date: Mon Feb 11 05:39:38 2019 New Revision: 343996 URL: https://svnweb.freebsd.org/changeset/base/343996 Log: Place pf_altq_get_nth_active() under the ALTQ ifdef MFC after: 1 week Modified: head/sys/netpfil/pf/pf_ioctl.c Modified: head/sys/netpfil/pf/pf_ioctl.c ============================================================================== --- head/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 05:17:31 2019 (r343995) +++ head/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 05:39:38 2019 (r343996) @@ -1360,7 +1360,6 @@ pf_import_kaltq(struct pfioc_altq_v1 *pa, struct pf_al return (0); } -#endif /* ALTQ */ static struct pf_altq * pf_altq_get_nth_active(u_int32_t n) @@ -1383,6 +1382,7 @@ pf_altq_get_nth_active(u_int32_t n) return (NULL); } +#endif /* ALTQ */ static int pfioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flags, struct thread *td) From owner-svn-src-all@freebsd.org Mon Feb 11 05:58:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2693D14EA08A; Mon, 11 Feb 2019 05:58:41 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-it1-f182.google.com (mail-it1-f182.google.com [209.85.166.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A5A4085397; Mon, 11 Feb 2019 05:58:40 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-it1-f182.google.com with SMTP id i145so23396275ita.4; Sun, 10 Feb 2019 21:58:40 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=rMpZa7zg6gta2/tixdaYDkwyud1UPtZfU8CrDDVKvnI=; b=TII9ME87i9K3ZxMtjatfxLM1vofMvJpwy47h3nSCDF/ArZi8TaiWFcnxZKcbicKVUv bfo+ufg8nupzimS6j7ehb3D5qEspWPpFIV9xJaY3x6j5Qap+RBPc+GK4Vz4svLUwNl4H TBf6+9dc+ZIF67Kz6XR9s/ir2W7FkYo4PAQlaf1f5yAX7eh60U3+C2sn5wk7lZwwrO/6 2/BS0VV7CfDak4c1u8bodSMTqWX7+PgwJx2L6xcCsOnxKlz61D1cecFYOkQuBGy7InyV AH6DO4QDq7mV0CNpQNNHxAKkpVmwBJvYnBKhjn5A6hQeo2IlWmHiYn0OfUF4CH1f4GkK LGhg== X-Gm-Message-State: AHQUAuZOkn7ODQji5qLnRW6r9iMLUwl24Jmvv8juAOy+JcrCWBHffHtL furIIYz5MDsoCG4OiA/RNRh5XUY7 X-Google-Smtp-Source: AHgI3IZYLwSAik7k8E2UKpnNB0vocBsJRZE+s6Ym18xDAHyRTiNULs/874jS+ChPT3x9++//KppHtA== X-Received: by 2002:a6b:1604:: with SMTP id 4mr17201954iow.29.1549864713513; Sun, 10 Feb 2019 21:58:33 -0800 (PST) Received: from mail-it1-f176.google.com (mail-it1-f176.google.com. [209.85.166.176]) by smtp.gmail.com with ESMTPSA id 24sm3981940iog.25.2019.02.10.21.58.33 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 10 Feb 2019 21:58:33 -0800 (PST) Received: by mail-it1-f176.google.com with SMTP id i145so23396233ita.4; Sun, 10 Feb 2019 21:58:33 -0800 (PST) X-Received: by 2002:a6b:ee16:: with SMTP id i22mr17525547ioh.124.1549864713209; Sun, 10 Feb 2019 21:58:33 -0800 (PST) MIME-Version: 1.0 References: <201902102307.x1AN7lj8011617@repo.freebsd.org> <20190211141730.Y1118@besplex.bde.org> In-Reply-To: <20190211141730.Y1118@besplex.bde.org> Reply-To: cem@freebsd.org From: Conrad Meyer Date: Sun, 10 Feb 2019 21:58:22 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r343985 - head/sys/kern To: Bruce Evans Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: A5A4085397 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 05:58:41 -0000 Hi Bruce, On Sun, Feb 10, 2019 at 9:18 PM Bruce Evans wrote: > > On Sun, 10 Feb 2019, Conrad Meyer wrote: > > > Log: > > Prevent overflow for usertime/systime in caclru1 > > > > PR: 76972 and duplicates > ... > I wrote a much better version, > following the hints in my review of PR 76972. Great. If your version is better (and correct), please go ahead and commit it. I noticed this bug had been languishing for over a decade with a reasonable patch attached; verified it was correct; and went ahead and committed it. If there's something even better, fantastic. > This is the slowest correct fix in the PR followup. kib predicted > that I wouldn't like it. It does 2 64-bit divmods (after optimization) > and many multiplications per call. Times 2 calls. clang will probably > inline this, giving only 3 64-bit divmods instead of 4. Did you measure any of this, or is this speculation? I plugged both versions into Godbolt just for amusement: https://godbolt.org/z/KE_FF8 (GCC 8.2), https://godbolt.org/z/WSepYg (Clang 7.0.0). Andrey's version has no branches; yours has two conditional branches as well as a large NOP to align the branch target (GCC); Clang manages only a single branch and doesn't pad the branch target. Andrey's version has five divs at gcc8.2 -O2, and six imuls. In the happy case, your version has two cmp+ja, two divs, and two imuls. In the unhappy case, your version has two cmp+ja, three div, and four imul. Just eyeballing it, your code might be marginally larger, but it's fairly similar. Does it matter? I doubt it. Modern CPUs are crazy superscalar OOO magic and as long as there aren't bad data dependencies, it can cruise along. All values reside in registers and imul isn't much slower than add. div is a bit slower, but probably cheaper than an L1 miss. Feel free to measure and demonstrate a difference if you feel it is important. I don't care, as long as it's correct (which it was not for the past 14 years). Conrad From owner-svn-src-all@freebsd.org Mon Feb 11 07:09:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D9AC914EB4A6; Mon, 11 Feb 2019 07:09:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7D5838715F; Mon, 11 Feb 2019 07:09:02 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6E8FA24586; Mon, 11 Feb 2019 07:09:02 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B792Es067498; Mon, 11 Feb 2019 07:09:02 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B792wb067497; Mon, 11 Feb 2019 07:09:02 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902110709.x1B792wb067497@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 11 Feb 2019 07:09:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343997 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 343997 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7D5838715F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 07:09:03 -0000 Author: kib Date: Mon Feb 11 07:09:02 2019 New Revision: 343997 URL: https://svnweb.freebsd.org/changeset/base/343997 Log: MFC r343890: do_execve(): lock vnode when needed. Modified: stable/12/sys/kern/kern_exec.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/kern_exec.c ============================================================================== --- stable/12/sys/kern/kern_exec.c Mon Feb 11 05:39:38 2019 (r343996) +++ stable/12/sys/kern/kern_exec.c Mon Feb 11 07:09:02 2019 (r343997) @@ -696,8 +696,10 @@ interpret: else error = suword(--stack_base, imgp->args->argc) == 0 ? 0 : EFAULT; - if (error != 0) + if (error != 0) { + vn_lock(imgp->vp, LK_SHARED | LK_RETRY); goto exec_fail_dealloc; + } if (args->fdp != NULL) { /* Install a brand new file descriptor table. */ From owner-svn-src-all@freebsd.org Mon Feb 11 07:37:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 75ED414EBBA2; Mon, 11 Feb 2019 07:37:02 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail106.syd.optusnet.com.au (mail106.syd.optusnet.com.au [211.29.132.42]) by mx1.freebsd.org (Postfix) with ESMTP id B296487D95; Mon, 11 Feb 2019 07:37:01 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail106.syd.optusnet.com.au (Postfix) with ESMTPS id E5EEC3D4520; Mon, 11 Feb 2019 18:36:51 +1100 (AEDT) Date: Mon, 11 Feb 2019 18:36:50 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Conrad Meyer cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343985 - head/sys/kern In-Reply-To: Message-ID: <20190211171431.U1625@besplex.bde.org> References: <201902102307.x1AN7lj8011617@repo.freebsd.org> <20190211141730.Y1118@besplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=FNpr/6gs c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=PeOOapuUAAAA:8 a=BfeS427rk8vjk1qlkyEA:9 a=CjuIK1q_8ugA:10 a=0BaqRfgCL6CLbWgV2pdm:22 X-Rspamd-Queue-Id: B296487D95 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 07:37:02 -0000 On Sun, 10 Feb 2019, Conrad Meyer wrote: > ... >> This is the slowest correct fix in the PR followup. kib predicted >> that I wouldn't like it. It does 2 64-bit divmods (after optimization) >> and many multiplications per call. Times 2 calls. clang will probably >> inline this, giving only 3 64-bit divmods instead of 4. > > Did you measure any of this, or is this speculation? I plugged both > versions into Godbolt just for amusement: https://godbolt.org/z/KE_FF8 > (GCC 8.2), https://godbolt.org/z/WSepYg (Clang 7.0.0). This was unreadable using lynx. I tested only later versions. Counting divmods is adequate for seeing how slow various methods are. divmod is so slow that branches don't matter. > Andrey's version has no branches; yours has two conditional branches > as well as a large NOP to align the branch target (GCC); Clang manages > only a single branch and doesn't pad the branch target. I doubt that you tested gcc-4.2.1 or 32-bit arches in Godbolt, or the flags that I use. 64-bit division is a libcall on i386. This has many more than 2 branches, and large code just to pass args. I use gcc-4.2 [-m32 -mtune=i386] -Os -fno-inline-functions -fno-inline-functions-called-once, and this avoids all nops for alignment. -Os is also an optimization for time except compared very agressive optimizations for time that I don't want since they are harder to debug using ddb. For makeworld, all of clang's optimizations for time at the cost of space and debugability only gain about 10% sys time or 1% real time relative to my negative optimizations for time. The alignment might be the right thing for optimization. I don't like the __predict*() ugliness much, but here it serves to document the optimization. It says that the compiler should move the 'false' case far away. This might need nops that pessimize it further. > Andrey's version has five divs at gcc8.2 -O2, and six imuls. Not too good. My -fno-inline-functions should prevent auto-inlining of the function. In practice, this flag is essential to unbreak gcc-4.2 -Os, and unusable with clang since it breaks inlining of all functions that are explicitly declared as inline, e.g., curthread. Not inlining prevents reuse of common expressions. 5 divs is still a lot. Statically, the committed version has 3 muls, 3 divs and 3 mods per call. I also considered imuls vs muls. Muls are much faster than divs and mods, so this doesn't matter a lot. The code is pessimized by using unsigned types. This makes it hard to use imul instead of mul on x86. x86 has a few more imul instructions than mul instructions. Some of the extras use less registers so should be preferred. > In the happy case, your version has two cmp+ja, two divs, and two > imuls. In the unhappy case, your version has two cmp+ja, three div, > and four imul. Just eyeballing it, your code might be marginally > larger, but it's fairly similar. The unhappy case is about 0.01% of cases except for watching all threads in the system where at least the idle threads have large runtimes and are a much larger proportion of all threads than 0.01%. Watching many threads is inherently slow so I don't care much about it. 3 divs is already much faster than 5. div takes about 20 cycles on x86 (slightky slower with 64 bits) and is hard to optimize, so other arches (including x86 floating point) can't be much faster without using too much hardware. Look at the i386 code. It is much larger for other reasons. Mostly for the unhappy case. > Does it matter? I doubt it. Modern CPUs are crazy superscalar OOO Not a lot. i386 has enormous pessimizations and it is impossible to recover using micro-optimizations like this. Times for getrusage() on Haswell i386: - FreeBSD-~5.2 Athlon-XP: 2444 cycles - FreeBSD-~11 Haswell: 1970 cycles - FreeBSD-cur pae_mode=0 Haswell: 3260 cycles - FreeBSD-cur pae_mode=1 Haswell: 5040 cycles (all anti-spectre, etc. off) The last 2 have my fix with its small optimization. All my other optimizations reduce the 5040 cycles by 500. amd64 in other benchmarks is slightly slower than in FreeBSD-11. > magic and as long as there aren't bad data dependencies, it can cruise > along. It is already using that to run i386 64-bit code reasonably fast. Dependencies are further apart because there is more to do in between. But there are more branches (2 instead of 1 just to compare 64-bit values), and divs are a larger problem. I haven't noticed any x86 with more than one ALU handling div. Pipelines tend to stall waiting for div. And values that actually need 64 bits need more than 1 div. > All values reside in registers and imul isn't much slower than > add. I think most non-old x86 have 2 or 3 ALUs for mul, with a throughput of 1 per ALU per cycle and only the latency a bit worse than for add. > div is a bit slower, but probably cheaper than an L1 miss. Feel Much slower than add. More like 1 per 20 cycles throughput and latency. But cache misses are hundreds of cycles. Micro-benchmarks tend not to see cache misses. The above benchmarks just call getrusage() in a loop. Everything should stay cached. I think lots of the large 5040 cycle time is for TLB misses. FreeBSD-11 doesn't have those. pae_mode=1 apparently makes them much larger. > free to measure and demonstrate a difference if you feel it is > important. I don't care, as long as it's correct (which it was not > for the past 14 years). Easy using micro-benchmarks but not in normal use. In normal operation, calcru1() is only called for accumulating times in exit(). It has been incorrect for more like 25 years (since BSD-4.4Lite1 and FreeBSD-2). 14 years is only the age of the first (?) PR about it. Bruce From owner-svn-src-all@freebsd.org Mon Feb 11 07:42:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2F8E514EBDEE; Mon, 11 Feb 2019 07:42:33 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C0C718827C; Mon, 11 Feb 2019 07:42:32 +0000 (UTC) (envelope-from gonzo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B264924C24; Mon, 11 Feb 2019 07:42:32 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B7gWVc091262; Mon, 11 Feb 2019 07:42:32 GMT (envelope-from gonzo@FreeBSD.org) Received: (from gonzo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B7gW7b091261; Mon, 11 Feb 2019 07:42:32 GMT (envelope-from gonzo@FreeBSD.org) Message-Id: <201902110742.x1B7gW7b091261@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gonzo set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko Date: Mon, 11 Feb 2019 07:42:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r343998 - head/sys/dev/beri/virtio X-SVN-Group: head X-SVN-Commit-Author: gonzo X-SVN-Commit-Paths: head/sys/dev/beri/virtio X-SVN-Commit-Revision: 343998 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C0C718827C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 07:42:33 -0000 Author: gonzo Date: Mon Feb 11 07:42:32 2019 New Revision: 343998 URL: https://svnweb.freebsd.org/changeset/base/343998 Log: Fix off-by-one error in BERI virtio driver The hardcoded ident is exactly 20 bytes long but sprintf adds terminating zero, so there is one byte written out of array bounds.As a fix use strncpy it appends \0 only if space allows and its behavior matches virtio spec: When VIRTIO_BLK_T_GET_ID is issued, the device identifier, up to 20 bytes, is written to the buffer. The identifier should be interpreted as an ascii string. It is terminated with \0, unless it is exactly 20 bytes long. PR: 202298 Reviewed by: br MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D18852 Modified: head/sys/dev/beri/virtio/virtio_block.c Modified: head/sys/dev/beri/virtio/virtio_block.c ============================================================================== --- head/sys/dev/beri/virtio/virtio_block.c Mon Feb 11 07:09:02 2019 (r343997) +++ head/sys/dev/beri/virtio/virtio_block.c Mon Feb 11 07:42:32 2019 (r343998) @@ -187,7 +187,7 @@ vtblk_proc(struct beri_vtblk_softc *sc, struct vqueue_ break; case VIRTIO_BLK_T_GET_ID: /* Assume a single buffer */ - strlcpy(iov[1].iov_base, sc->ident, + strncpy(iov[1].iov_base, sc->ident, MIN(iov[1].iov_len, sizeof(sc->ident))); err = 0; break; @@ -401,7 +401,7 @@ backend_info(struct beri_vtblk_softc *sc) s+=1; } - sprintf(sc->ident, "Virtio block backend"); + strncpy(sc->ident, "Virtio block backend", sizeof(sc->ident)); return (0); } From owner-svn-src-all@freebsd.org Mon Feb 11 08:49:58 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1665A14CE8C5; Mon, 11 Feb 2019 08:49:58 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BA52589F1A; Mon, 11 Feb 2019 08:49:57 +0000 (UTC) (envelope-from gonzo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AB92025638; Mon, 11 Feb 2019 08:49:57 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B8nvJT025945; Mon, 11 Feb 2019 08:49:57 GMT (envelope-from gonzo@FreeBSD.org) Received: (from gonzo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B8nvjE025942; Mon, 11 Feb 2019 08:49:57 GMT (envelope-from gonzo@FreeBSD.org) Message-Id: <201902110849.x1B8nvjE025942@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gonzo set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko Date: Mon, 11 Feb 2019 08:49:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r343999 - in stable/12: sbin/ifconfig sys/net80211 X-SVN-Group: stable-12 X-SVN-Commit-Author: gonzo X-SVN-Commit-Paths: in stable/12: sbin/ifconfig sys/net80211 X-SVN-Commit-Revision: 343999 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BA52589F1A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 08:49:58 -0000 Author: gonzo Date: Mon Feb 11 08:49:56 2019 New Revision: 343999 URL: https://svnweb.freebsd.org/changeset/base/343999 Log: MFC r343204: [ifconfig] Print more WPS attributes in verbose "list scan" output - Move WPS related defines to dedicated file - Add handlers for more WPS attributes PR: 217317 Submitted by: J.R. Oldroyd Added: stable/12/sys/net80211/ieee80211_wps.h - copied unchanged from r343204, head/sys/net80211/ieee80211_wps.h Modified: stable/12/sbin/ifconfig/ifieee80211.c stable/12/sys/net80211/ieee80211.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/12/sbin/ifconfig/ifieee80211.c Mon Feb 11 07:42:32 2019 (r343998) +++ stable/12/sbin/ifconfig/ifieee80211.c Mon Feb 11 08:49:56 2019 (r343999) @@ -77,6 +77,7 @@ #include #include #include +#include #include #include @@ -3124,13 +3125,6 @@ printrsnie(const char *tag, const u_int8_t *ie, size_t } } -/* XXX move to a public include file */ -#define IEEE80211_WPS_DEV_PASS_ID 0x1012 -#define IEEE80211_WPS_SELECTED_REG 0x1041 -#define IEEE80211_WPS_SETUP_STATE 0x1044 -#define IEEE80211_WPS_UUID_E 0x1047 -#define IEEE80211_WPS_VERSION 0x104a - #define BE_READ_2(p) \ ((u_int16_t) \ ((((const u_int8_t *)(p))[1] ) | \ @@ -3152,6 +3146,7 @@ printwpsie(const char *tag, const u_int8_t *ie, size_t "R" /* Registrar-specified */ }; int n; + int f; ie +=6, len -= 4; /* NB: len is payload only */ @@ -3160,6 +3155,7 @@ printwpsie(const char *tag, const u_int8_t *ie, size_t while (len) { uint16_t tlv_type = BE_READ_2(ie); uint16_t tlv_len = BE_READ_2(ie + 2); + uint16_t cfg_mthd; /* some devices broadcast invalid WPS frames */ if (tlv_len > len) { @@ -3172,30 +3168,191 @@ printwpsie(const char *tag, const u_int8_t *ie, size_t ie += 4, len -= 4; switch (tlv_type) { - case IEEE80211_WPS_VERSION: + case IEEE80211_WPS_ATTR_VERSION: printf("v:%d.%d", *ie >> 4, *ie & 0xf); break; - case IEEE80211_WPS_SETUP_STATE: - /* Only 1 and 2 are valid */ - if (*ie == 0 || *ie >= 3) - printf(" state:B"); + case IEEE80211_WPS_ATTR_AP_SETUP_LOCKED: + printf(" ap_setup:%s", *ie ? "locked" : + "unlocked"); + break; + case IEEE80211_WPS_ATTR_CONFIG_METHODS: + case IEEE80211_WPS_ATTR_SELECTED_REGISTRAR_CONFIG_METHODS: + if (tlv_type == IEEE80211_WPS_ATTR_SELECTED_REGISTRAR_CONFIG_METHODS) + printf(" sel_reg_cfg_mthd:"); else - printf(" st:%s", *ie == 1 ? "N" : "C"); + printf(" cfg_mthd:" ); + cfg_mthd = BE_READ_2(ie); + f = 0; + for (n = 15; n >= 0; n--) { + if (f) { + printf(","); + f = 0; + } + switch (cfg_mthd & (1 << n)) { + case 0: + break; + case IEEE80211_WPS_CONFIG_USBA: + printf("usba"); + f++; + break; + case IEEE80211_WPS_CONFIG_ETHERNET: + printf("ethernet"); + f++; + break; + case IEEE80211_WPS_CONFIG_LABEL: + printf("label"); + f++; + break; + case IEEE80211_WPS_CONFIG_DISPLAY: + if (!(cfg_mthd & + (IEEE80211_WPS_CONFIG_VIRT_DISPLAY | + IEEE80211_WPS_CONFIG_PHY_DISPLAY))) + { + printf("display"); + f++; + } + break; + case IEEE80211_WPS_CONFIG_EXT_NFC_TOKEN: + printf("ext_nfc_tokenk"); + f++; + break; + case IEEE80211_WPS_CONFIG_INT_NFC_TOKEN: + printf("int_nfc_token"); + f++; + break; + case IEEE80211_WPS_CONFIG_NFC_INTERFACE: + printf("nfc_interface"); + f++; + break; + case IEEE80211_WPS_CONFIG_PUSHBUTTON: + if (!(cfg_mthd & + (IEEE80211_WPS_CONFIG_VIRT_PUSHBUTTON | + IEEE80211_WPS_CONFIG_PHY_PUSHBUTTON))) { + printf("push_button"); + f++; + } + break; + case IEEE80211_WPS_CONFIG_KEYPAD: + printf("keypad"); + f++; + break; + case IEEE80211_WPS_CONFIG_VIRT_PUSHBUTTON: + printf("virtual_push_button"); + f++; + break; + case IEEE80211_WPS_CONFIG_PHY_PUSHBUTTON: + printf("physical_push_button"); + f++; + break; + case IEEE80211_WPS_CONFIG_P2PS: + printf("p2ps"); + f++; + break; + case IEEE80211_WPS_CONFIG_VIRT_DISPLAY: + printf("virtual_display"); + f++; + break; + case IEEE80211_WPS_CONFIG_PHY_DISPLAY: + printf("physical_display"); + f++; + break; + default: + printf("unknown_wps_config<%04x>", + cfg_mthd & (1 << n)); + f++; + break; + } + } break; - case IEEE80211_WPS_SELECTED_REG: - printf(" sel:%s", *ie ? "T" : "F"); + case IEEE80211_WPS_ATTR_DEV_NAME: + printf(" device_name:<%.*s>", tlv_len, ie); break; - case IEEE80211_WPS_DEV_PASS_ID: + case IEEE80211_WPS_ATTR_DEV_PASSWORD_ID: n = LE_READ_2(ie); if (n < nitems(dev_pass_id)) printf(" dpi:%s", dev_pass_id[n]); break; - case IEEE80211_WPS_UUID_E: + case IEEE80211_WPS_ATTR_MANUFACTURER: + printf(" manufacturer:<%.*s>", tlv_len, ie); + break; + case IEEE80211_WPS_ATTR_MODEL_NAME: + printf(" model_name:<%.*s>", tlv_len, ie); + break; + case IEEE80211_WPS_ATTR_MODEL_NUMBER: + printf(" model_number:<%.*s>", tlv_len, ie); + break; + case IEEE80211_WPS_ATTR_PRIMARY_DEV_TYPE: + printf(" prim_dev:"); + for (n = 0; n < tlv_len; n++) + printf("%02x", ie[n]); + break; + case IEEE80211_WPS_ATTR_RF_BANDS: + printf(" rf:"); + f = 0; + for (n = 7; n >= 0; n--) { + if (f) { + printf(","); + f = 0; + } + switch (*ie & (1 << n)) { + case 0: + break; + case IEEE80211_WPS_RF_BAND_24GHZ: + printf("2.4Ghz"); + f++; + break; + case IEEE80211_WPS_RF_BAND_50GHZ: + printf("5Ghz"); + f++; + break; + case IEEE80211_WPS_RF_BAND_600GHZ: + printf("60Ghz"); + f++; + break; + default: + printf("unknown<%02x>", + *ie & (1 << n)); + f++; + break; + } + } + break; + case IEEE80211_WPS_ATTR_RESPONSE_TYPE: + printf(" resp_type:0x%02x", *ie); + break; + case IEEE80211_WPS_ATTR_SELECTED_REGISTRAR: + printf(" sel:%s", *ie ? "T" : "F"); + break; + case IEEE80211_WPS_ATTR_SERIAL_NUMBER: + printf(" serial_number:<%.*s>", tlv_len, ie); + break; + case IEEE80211_WPS_ATTR_UUID_E: printf(" uuid-e:"); for (n = 0; n < (tlv_len - 1); n++) printf("%02x-", ie[n]); printf("%02x", ie[n]); break; + case IEEE80211_WPS_ATTR_VENDOR_EXT: + printf(" vendor:"); + for (n = 0; n < tlv_len; n++) + printf("%02x", ie[n]); + break; + case IEEE80211_WPS_ATTR_WPS_STATE: + switch (*ie) { + case IEEE80211_WPS_STATE_NOT_CONFIGURED: + printf(" state:N"); + break; + case IEEE80211_WPS_STATE_CONFIGURED: + printf(" state:C"); + break; + default: + printf(" state:B<%02x>", *ie); + break; + } + break; + default: + printf(" unknown_wps_attr:0x%x", tlv_type); + break; } ie += tlv_len, len -= tlv_len; } @@ -3348,6 +3505,7 @@ iswpsoui(const uint8_t *frm) static const char * iename(int elemid) { + static char iename_buf[64]; switch (elemid) { case IEEE80211_ELEMID_FHPARMS: return " FHPARMS"; case IEEE80211_ELEMID_CFPARMS: return " CFPARMS"; @@ -3365,10 +3523,21 @@ iename(int elemid) case IEEE80211_ELEMID_MEASREP: return " MEASREP"; case IEEE80211_ELEMID_QUIET: return " QUIET"; case IEEE80211_ELEMID_IBSSDFS: return " IBSSDFS"; + case IEEE80211_ELEMID_RESERVED_47: + return " RESERVED_47"; + case IEEE80211_ELEMID_MOBILITY_DOMAIN: + return " MOBILITY_DOMAIN"; + case IEEE80211_ELEMID_RRM_ENACAPS: + return " RRM_ENCAPS"; + case IEEE80211_ELEMID_OVERLAP_BSS_SCAN_PARAM: + return " OVERLAP_BSS"; case IEEE80211_ELEMID_TPC: return " TPC"; case IEEE80211_ELEMID_CCKM: return " CCKM"; + case IEEE80211_ELEMID_EXTCAP: return " EXTCAP"; } - return " ???"; + snprintf(iename_buf, sizeof(iename_buf), " UNKNOWN_ELEMID_%d", + elemid); + return (const char *) iename_buf; } static void Modified: stable/12/sys/net80211/ieee80211.h ============================================================================== --- stable/12/sys/net80211/ieee80211.h Mon Feb 11 07:42:32 2019 (r343998) +++ stable/12/sys/net80211/ieee80211.h Mon Feb 11 08:49:56 2019 (r343999) @@ -951,9 +951,11 @@ enum { IEEE80211_ELEMID_ERP = 42, IEEE80211_ELEMID_HTCAP = 45, IEEE80211_ELEMID_QOS = 46, + IEEE80211_ELEMID_RESERVED_47 = 47, IEEE80211_ELEMID_RSN = 48, IEEE80211_ELEMID_XRATES = 50, IEEE80211_ELEMID_APCHANREP = 51, + IEEE80211_ELEMID_MOBILITY_DOMAIN = 54, IEEE80211_ELEMID_HTINFO = 61, IEEE80211_ELEMID_SECCHAN_OFFSET = 62, IEEE80211_ELEMID_RRM_ENACAPS = 70, Copied: stable/12/sys/net80211/ieee80211_wps.h (from r343204, head/sys/net80211/ieee80211_wps.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/sys/net80211/ieee80211_wps.h Mon Feb 11 08:49:56 2019 (r343999, copy of r343204, head/sys/net80211/ieee80211_wps.h) @@ -0,0 +1,149 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2017 J.R. Oldroyd, Open Advisors Limited + * 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 ``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 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$ + */ +#ifndef _NET80211_IEEE80211_WPS_H_ +#define _NET80211_IEEE80211_WPS_H_ + +/* + * 802.11 WPS implementation definitions. + */ + +#define IEEE80211_WPS_ATTR_AP_CHANNEL 0x1001 +#define IEEE80211_WPS_ATTR_ASSOC_STATE 0x1002 +#define IEEE80211_WPS_ATTR_AUTH_TYPE 0x1003 +#define IEEE80211_WPS_ATTR_AUTH_TYPE_FLAGS 0x1004 +#define IEEE80211_WPS_ATTR_AUTHENTICATOR 0x1005 +#define IEEE80211_WPS_ATTR_CONFIG_METHODS 0x1008 +#define IEEE80211_WPS_ATTR_CONFIG_ERROR 0x1009 +#define IEEE80211_WPS_ATTR_CONFIRM_URL4 0x100a +#define IEEE80211_WPS_ATTR_CONFIRM_URL6 0x100b +#define IEEE80211_WPS_ATTR_CONN_TYPE 0x100c +#define IEEE80211_WPS_ATTR_CONN_TYPE_FLAGS 0x100d +#define IEEE80211_WPS_ATTR_CRED 0x100e +#define IEEE80211_WPS_ATTR_ENCR_TYPE 0x100f +#define IEEE80211_WPS_ATTR_ENCR_TYPE_FLAGS 0x1010 +#define IEEE80211_WPS_ATTR_DEV_NAME 0x1011 +#define IEEE80211_WPS_ATTR_DEV_PASSWORD_ID 0x1012 +#define IEEE80211_WPS_ATTR_E_HASH1 0x1014 +#define IEEE80211_WPS_ATTR_E_HASH2 0x1015 +#define IEEE80211_WPS_ATTR_E_SNONCE1 0x1016 +#define IEEE80211_WPS_ATTR_E_SNONCE2 0x1017 +#define IEEE80211_WPS_ATTR_ENCR_SETTINGS 0x1018 +#define IEEE80211_WPS_ATTR_ENROLLEE_NONCE 0x101a +#define IEEE80211_WPS_ATTR_FEATURE_ID 0x101b +#define IEEE80211_WPS_ATTR_IDENTITY 0x101c +#define IEEE80211_WPS_ATTR_IDENTITY_PROOF 0x101d +#define IEEE80211_WPS_ATTR_KEY_WRAP_AUTH 0x101e +#define IEEE80211_WPS_ATTR_KEY_ID 0x101f +#define IEEE80211_WPS_ATTR_MAC_ADDR 0x1020 +#define IEEE80211_WPS_ATTR_MANUFACTURER 0x1021 +#define IEEE80211_WPS_ATTR_MSG_TYPE 0x1022 +#define IEEE80211_WPS_ATTR_MODEL_NAME 0x1023 +#define IEEE80211_WPS_ATTR_MODEL_NUMBER 0x1024 +#define IEEE80211_WPS_ATTR_NETWORK_INDEX 0x1026 +#define IEEE80211_WPS_ATTR_NETWORK_KEY 0x1027 +#define IEEE80211_WPS_ATTR_NETWORK_KEY_INDEX 0x1028 +#define IEEE80211_WPS_ATTR_NEW_DEVICE_NAME 0x1029 +#define IEEE80211_WPS_ATTR_NEW_PASSWORD 0x102a +#define IEEE80211_WPS_ATTR_OOB_DEVICE_PASSWORD 0x102c +#define IEEE80211_WPS_ATTR_OS_VERSION 0x102d +#define IEEE80211_WPS_ATTR_POWER_LEVEL 0x102f +#define IEEE80211_WPS_ATTR_PSK_CURRENT 0x1030 +#define IEEE80211_WPS_ATTR_PSK_MAX 0x1031 +#define IEEE80211_WPS_ATTR_PUBLIC_KEY 0x1032 +#define IEEE80211_WPS_ATTR_RADIO_ENABLE 0x1033 +#define IEEE80211_WPS_ATTR_REBOOT 0x1034 +#define IEEE80211_WPS_ATTR_REGISTRAR_CURRENT 0x1035 +#define IEEE80211_WPS_ATTR_REGISTRAR_ESTBLSHD 0x1036 +#define IEEE80211_WPS_ATTR_REGISTRAR_LIST 0x1037 +#define IEEE80211_WPS_ATTR_REGISTRAR_MAX 0x1038 +#define IEEE80211_WPS_ATTR_REGISTRAR_NONCE 0x1039 +#define IEEE80211_WPS_ATTR_REQUEST_TYPE 0x103a +#define IEEE80211_WPS_ATTR_RESPONSE_TYPE 0x103b +#define IEEE80211_WPS_ATTR_RF_BANDS 0x103c +#define IEEE80211_WPS_ATTR_R_HASH1 0x103d +#define IEEE80211_WPS_ATTR_R_HASH2 0x103e +#define IEEE80211_WPS_ATTR_R_SNONCE1 0x103f +#define IEEE80211_WPS_ATTR_R_SNONCE2 0x1040 +#define IEEE80211_WPS_ATTR_SELECTED_REGISTRAR 0x1041 +#define IEEE80211_WPS_ATTR_SERIAL_NUMBER 0x1042 +#define IEEE80211_WPS_ATTR_WPS_STATE 0x1044 +#define IEEE80211_WPS_ATTR_SSID 0x1045 +#define IEEE80211_WPS_ATTR_TOTAL_NETWORKS 0x1046 +#define IEEE80211_WPS_ATTR_UUID_E 0x1047 +#define IEEE80211_WPS_ATTR_UUID_R 0x1048 +#define IEEE80211_WPS_ATTR_VENDOR_EXT 0x1049 +#define IEEE80211_WPS_ATTR_VERSION 0x104a +#define IEEE80211_WPS_ATTR_X509_CERT_REQ 0x104b +#define IEEE80211_WPS_ATTR_X509_CERT 0x104c +#define IEEE80211_WPS_ATTR_EAP_IDENTITY 0x104d +#define IEEE80211_WPS_ATTR_MSG_COUNTER 0x104e +#define IEEE80211_WPS_ATTR_PUBKEY_HASH 0x104f +#define IEEE80211_WPS_ATTR_REKEY_KEY 0x1050 +#define IEEE80211_WPS_ATTR_KEY_LIFETIME 0x1051 +#define IEEE80211_WPS_ATTR_PERMITTED_CONFIG_METHODS 0x1052 +#define IEEE80211_WPS_ATTR_SELECTED_REGISTRAR_CONFIG_METHODS 0x1053 +#define IEEE80211_WPS_ATTR_PRIMARY_DEV_TYPE 0x1054 +#define IEEE80211_WPS_ATTR_SECONDARY_DEV_TYPE_LIST 0x1055 +#define IEEE80211_WPS_ATTR_PORTABLE_DEV 0x1056 +#define IEEE80211_WPS_ATTR_AP_SETUP_LOCKED 0x1057 +#define IEEE80211_WPS_ATTR_APPLICATION_EXT 0x1058 +#define IEEE80211_WPS_ATTR_EAP_TYPE 0x1059 +#define IEEE80211_WPS_ATTR_IV 0x1060 +#define IEEE80211_WPS_ATTR_KEY_PROVIDED_AUTO 0x1061 +#define IEEE80211_WPS_ATTR_802_1X_ENABLED 0x1062 +#define IEEE80211_WPS_ATTR_AP_SESSION_KEY 0x1063 +#define IEEE80211_WPS_ATTR_WEP_TRANSMIT_KEY 0x1064 +#define IEEE80211_WPS_ATTR_REQUESTED_DEV_TYPE 0x106a +#define IEEE80211_WPS_ATTR_EXTENSIBILITY_TEST 0x10fa /* _NOT_ defined in the spec */ + +/* RF bands bitmask */ +#define IEEE80211_WPS_RF_BAND_24GHZ 0x01 +#define IEEE80211_WPS_RF_BAND_50GHZ 0x02 +#define IEEE80211_WPS_RF_BAND_600GHZ 0x04 + +/* Config methods bitmask */ +#define IEEE80211_WPS_CONFIG_USBA 0x0001 +#define IEEE80211_WPS_CONFIG_ETHERNET 0x0002 +#define IEEE80211_WPS_CONFIG_LABEL 0x0004 +#define IEEE80211_WPS_CONFIG_DISPLAY 0x0008 +#define IEEE80211_WPS_CONFIG_EXT_NFC_TOKEN 0x0010 +#define IEEE80211_WPS_CONFIG_INT_NFC_TOKEN 0x0020 +#define IEEE80211_WPS_CONFIG_NFC_INTERFACE 0x0040 +#define IEEE80211_WPS_CONFIG_PUSHBUTTON 0x0080 +#define IEEE80211_WPS_CONFIG_KEYPAD 0x0100 +#define IEEE80211_WPS_CONFIG_VIRT_PUSHBUTTON 0x0200 +#define IEEE80211_WPS_CONFIG_PHY_PUSHBUTTON 0x0400 +#define IEEE80211_WPS_CONFIG_P2PS 0x1000 +#define IEEE80211_WPS_CONFIG_VIRT_DISPLAY 0x2000 +#define IEEE80211_WPS_CONFIG_PHY_DISPLAY 0x4000 + +/* Wi-Fi Protected Setup state */ +#define IEEE80211_WPS_STATE_NOT_CONFIGURED 0x01 +#define IEEE80211_WPS_STATE_CONFIGURED 0x02 +#endif /* _NET80211_IEEE80211_WPS_H_ */ From owner-svn-src-all@freebsd.org Mon Feb 11 08:52:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4FA0A14CEB8E; Mon, 11 Feb 2019 08:52:49 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E96BD8A36E; Mon, 11 Feb 2019 08:52:48 +0000 (UTC) (envelope-from gonzo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D703C257D9; Mon, 11 Feb 2019 08:52:48 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B8qmoI031057; Mon, 11 Feb 2019 08:52:48 GMT (envelope-from gonzo@FreeBSD.org) Received: (from gonzo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B8qmA0031056; Mon, 11 Feb 2019 08:52:48 GMT (envelope-from gonzo@FreeBSD.org) Message-Id: <201902110852.x1B8qmA0031056@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gonzo set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko Date: Mon, 11 Feb 2019 08:52:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344000 - stable/12/sys/fs/smbfs X-SVN-Group: stable-12 X-SVN-Commit-Author: gonzo X-SVN-Commit-Paths: stable/12/sys/fs/smbfs X-SVN-Commit-Revision: 344000 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E96BD8A36E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 08:52:49 -0000 Author: gonzo Date: Mon Feb 11 08:52:48 2019 New Revision: 344000 URL: https://svnweb.freebsd.org/changeset/base/344000 Log: MFC r343209: [smbfs] Allow semicolon in mounts that support long names Semicolon is a legal character in long names but not in 8.3 format. Move it to respective character set. PR: 140068 Submitted by: tom@uffner.com Modified: stable/12/sys/fs/smbfs/smbfs_vnops.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/fs/smbfs/smbfs_vnops.c ============================================================================== --- stable/12/sys/fs/smbfs/smbfs_vnops.c Mon Feb 11 08:49:56 2019 (r343999) +++ stable/12/sys/fs/smbfs/smbfs_vnops.c Mon Feb 11 08:52:48 2019 (r344000) @@ -1120,8 +1120,8 @@ smbfs_advlock(ap) static int smbfs_pathcheck(struct smbmount *smp, const char *name, int nmlen, int nameiop) { - static const char *badchars = "*/:<>;?"; - static const char *badchars83 = " +|,[]="; + static const char *badchars = "*/:<>?"; + static const char *badchars83 = " +|,[]=;"; const char *cp; int i, error; From owner-svn-src-all@freebsd.org Mon Feb 11 08:55:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6CC1D14CEC9F; Mon, 11 Feb 2019 08:55:39 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0E5AD8A4F6; Mon, 11 Feb 2019 08:55:39 +0000 (UTC) (envelope-from gonzo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 030FB257DD; Mon, 11 Feb 2019 08:55:39 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1B8tcIm031261; Mon, 11 Feb 2019 08:55:38 GMT (envelope-from gonzo@FreeBSD.org) Received: (from gonzo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1B8tcWe031260; Mon, 11 Feb 2019 08:55:38 GMT (envelope-from gonzo@FreeBSD.org) Message-Id: <201902110855.x1B8tcWe031260@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gonzo set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko Date: Mon, 11 Feb 2019 08:55:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344001 - stable/12/usr.bin/calendar/calendars/de_AT.ISO_8859-15 X-SVN-Group: stable-12 X-SVN-Commit-Author: gonzo X-SVN-Commit-Paths: stable/12/usr.bin/calendar/calendars/de_AT.ISO_8859-15 X-SVN-Commit-Revision: 344001 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0E5AD8A4F6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 08:55:39 -0000 Author: gonzo Date: Mon Feb 11 08:55:38 2019 New Revision: 344001 URL: https://svnweb.freebsd.org/changeset/base/344001 Log: MFC r343560: calendar(1): Fix Aschermittwoch date for Austrian calendar PR: 165516 Submitted by: jhs@berklix.com Modified: stable/12/usr.bin/calendar/calendars/de_AT.ISO_8859-15/calendar.feiertag Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/calendar/calendars/de_AT.ISO_8859-15/calendar.feiertag ============================================================================== --- stable/12/usr.bin/calendar/calendars/de_AT.ISO_8859-15/calendar.feiertag Mon Feb 11 08:52:48 2019 (r344000) +++ stable/12/usr.bin/calendar/calendars/de_AT.ISO_8859-15/calendar.feiertag Mon Feb 11 08:55:38 2019 (r344001) @@ -37,7 +37,7 @@ Easter+60 Fronleichnam /* Gedenktage - nicht arbeitsfreie Feiertage */ 02/14 Valentinstag -02/WednesdayLast Aschermittwoch +Easter-46 Aschermittwoch Easter-7 Palmsonntag Nov Sun+3 Totensonntag Nov Sun+4 1. Advent From owner-svn-src-all@freebsd.org Mon Feb 11 12:08:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A835814D4E09; Mon, 11 Feb 2019 12:08:26 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id 136C96AA76; Mon, 11 Feb 2019 12:08:25 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id B7BE0105A556; Mon, 11 Feb 2019 23:08:23 +1100 (AEDT) Date: Mon, 11 Feb 2019 23:08:22 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Conrad Meyer cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343985 - head/sys/kern In-Reply-To: <20190211141730.Y1118@besplex.bde.org> Message-ID: <20190211224150.R4018@besplex.bde.org> References: <201902102307.x1AN7lj8011617@repo.freebsd.org> <20190211141730.Y1118@besplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=P6RKvmIu c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=20bWB6JnHn-25NKUEkgA:9 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 136C96AA76 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.94)[-0.942,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 12:08:26 -0000 On Mon, 11 Feb 2019, Bruce Evans wrote: > On Sun, 10 Feb 2019, Conrad Meyer wrote: > >> Log: >> Prevent overflow for usertime/systime in caclru1 >> ... >> +static uint64_t >> +mul64_by_fraction(uint64_t a, uint64_t b, uint64_t c) >> +{ >> + /* >> + * Compute floor(a * (b / c)) without overflowing, (b / c) <= 1.0. >> + */ >> + return ((a / c) * b + (a % c) * (b / c) + (a % c) * (b % c) / c); >> +} >> + > > This is the slowest correct fix in the PR followup. kib predicted > that I wouldn't like it. It does 2 64-bit divmods (after optimization) > and many multiplications per call. Times 2 calls. clang will probably > inline this, giving only 3 64-bit divmods instead of 4. > > Better version: > > + /* > + * Subdivide tu. Combine avoiding overflow with reduction to 32-bit > + * operands in the multiplications in the usual case of tu <= > + * UINT32_MAX usec = 4294 seconds. > + */ > + if (__predict_true(tu <= UINT32_MAX && tt <= UINT32_MAX)) { > + uu = ((uint64_t)(uint32_t)tu * (uint32_t)ut) / tt; > + su = ((uint64_t)(uint32_t)tu * (uint32_t)st) / tt; > + } else { > + q = tu / tt; > + r = tu % tt; > + uu = q * ut + (r * ut) / tt; > + su = q * st + (r * st) / tt; > + } I didn't keep the part of your reply to my reply above where you said that you tested over a number of years. I also tested over fake years in a running kernel using a fake cpu_tick freqency of 100000 times smaller. Now I see that all versions still overflow after 388 days with stathz = 128 when tt exceeds UINT32_MAX. Then r can be 1 less than tt, and ut and st can be the same as tt, so one operation is like sqaring tt which overflows when tt is 1 more than UINT32_MAX. There is a PR or 2 about this 388-day limit. I knew about it before I knew about the 105-hour limit fixed in this commit.( Uptimes of a few years are not preposterous, and cpu_idle threads usually have system time of nearly the uptime, so the overflow occurs on most systems after they have been up for 388 days. I'm trying a fix with tt and r divided by 16 in some places. This should work for 17 years with stathz = 128. The thread runtime is more than 388 days when this occurs, so no one would care about differences of even a few days but losing precision in the seconds and microseconds parts is not so good. Bruce From owner-svn-src-all@freebsd.org Mon Feb 11 14:31:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 75BCF14D8866; Mon, 11 Feb 2019 14:31:20 +0000 (UTC) (envelope-from ganbold@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1A3126F736; Mon, 11 Feb 2019 14:31:20 +0000 (UTC) (envelope-from ganbold@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0FA3D1124; Mon, 11 Feb 2019 14:31:20 +0000 (UTC) (envelope-from ganbold@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BEVJfH008120; Mon, 11 Feb 2019 14:31:19 GMT (envelope-from ganbold@FreeBSD.org) Received: (from ganbold@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BEVJlg008119; Mon, 11 Feb 2019 14:31:19 GMT (envelope-from ganbold@FreeBSD.org) Message-Id: <201902111431.x1BEVJlg008119@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ganbold set sender to ganbold@FreeBSD.org using -f From: Ganbold Tsagaankhuu Date: Mon, 11 Feb 2019 14:31:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344003 - head/sys/arm/allwinner X-SVN-Group: head X-SVN-Commit-Author: ganbold X-SVN-Commit-Paths: head/sys/arm/allwinner X-SVN-Commit-Revision: 344003 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1A3126F736 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:31:20 -0000 Author: ganbold Date: Mon Feb 11 14:31:19 2019 New Revision: 344003 URL: https://svnweb.freebsd.org/changeset/base/344003 Log: Add sensors support for AXP803/AXP813. Sensor values such as battery charging, charge state, voltage, charging current, discharging current, battery capacity etc. can be obtained via sysctl. Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D19145 Modified: head/sys/arm/allwinner/axp81x.c Modified: head/sys/arm/allwinner/axp81x.c ============================================================================== --- head/sys/arm/allwinner/axp81x.c Mon Feb 11 09:31:54 2019 (r344002) +++ head/sys/arm/allwinner/axp81x.c Mon Feb 11 14:31:19 2019 (r344003) @@ -194,6 +194,11 @@ MALLOC_DEFINE(M_AXP8XX_REG, "AXP8xx regulator", "AXP8x #define AXP_BAT_CAP_WARN_LV1 0xf0 /* Bits 4, 5, 6, 7 */ #define AXP_BAT_CAP_WARN_LV2 0xf /* Bits 0, 1, 2, 3 */ +/* Sensor conversion macros */ +#define AXP_SENSOR_BAT_H(hi) ((hi) << 4) +#define AXP_SENSOR_BAT_L(lo) ((lo) & 0xf) +#define AXP_SENSOR_COULOMB(hi, lo) (((hi & ~(1 << 7)) << 8) | (lo)) + static const struct { const char *name; uint8_t ctrl_reg; @@ -538,6 +543,123 @@ static struct axp8xx_regdef axp8xx_common_regdefs[] = }, }; +enum axp8xx_sensor { + AXP_SENSOR_ACIN_PRESENT, + AXP_SENSOR_VBUS_PRESENT, + AXP_SENSOR_BATT_PRESENT, + AXP_SENSOR_BATT_CHARGING, + AXP_SENSOR_BATT_CHARGE_STATE, + AXP_SENSOR_BATT_VOLTAGE, + AXP_SENSOR_BATT_CHARGE_CURRENT, + AXP_SENSOR_BATT_DISCHARGE_CURRENT, + AXP_SENSOR_BATT_CAPACITY_PERCENT, + AXP_SENSOR_BATT_MAXIMUM_CAPACITY, + AXP_SENSOR_BATT_CURRENT_CAPACITY, +}; + +enum battery_capacity_state { + BATT_CAPACITY_NORMAL = 1, /* normal cap in battery */ + BATT_CAPACITY_WARNING, /* warning cap in battery */ + BATT_CAPACITY_CRITICAL, /* critical cap in battery */ + BATT_CAPACITY_HIGH, /* high cap in battery */ + BATT_CAPACITY_MAX, /* maximum cap in battery */ + BATT_CAPACITY_LOW /* low cap in battery */ +}; + +struct axp8xx_sensors { + int id; + const char *name; + const char *desc; + const char *format; +}; + +static const struct axp8xx_sensors axp8xx_common_sensors[] = { + { + .id = AXP_SENSOR_ACIN_PRESENT, + .name = "acin", + .format = "I", + .desc = "ACIN Present", + }, + { + .id = AXP_SENSOR_VBUS_PRESENT, + .name = "vbus", + .format = "I", + .desc = "VBUS Present", + }, + { + .id = AXP_SENSOR_BATT_PRESENT, + .name = "bat", + .format = "I", + .desc = "Battery Present", + }, + { + .id = AXP_SENSOR_BATT_CHARGING, + .name = "batcharging", + .format = "I", + .desc = "Battery Charging", + }, + { + .id = AXP_SENSOR_BATT_CHARGE_STATE, + .name = "batchargestate", + .format = "I", + .desc = "Battery Charge State", + }, + { + .id = AXP_SENSOR_BATT_VOLTAGE, + .name = "batvolt", + .format = "I", + .desc = "Battery Voltage", + }, + { + .id = AXP_SENSOR_BATT_CHARGE_CURRENT, + .name = "batchargecurrent", + .format = "I", + .desc = "Battery Charging Current", + }, + { + .id = AXP_SENSOR_BATT_DISCHARGE_CURRENT, + .name = "batdischargecurrent", + .format = "I", + .desc = "Battery Discharging Current", + }, + { + .id = AXP_SENSOR_BATT_CAPACITY_PERCENT, + .name = "batcapacitypercent", + .format = "I", + .desc = "Battery Capacity Percentage", + }, + { + .id = AXP_SENSOR_BATT_MAXIMUM_CAPACITY, + .name = "batmaxcapacity", + .format = "I", + .desc = "Battery Maximum Capacity", + }, + { + .id = AXP_SENSOR_BATT_CURRENT_CAPACITY, + .name = "batcurrentcapacity", + .format = "I", + .desc = "Battery Current Capacity", + }, +}; + +struct axp8xx_config { + const char *name; + int batsense_step; /* uV */ + int charge_step; /* uA */ + int discharge_step; /* uA */ + int maxcap_step; /* uAh */ + int coulomb_step; /* uAh */ +}; + +static struct axp8xx_config axp803_config = { + .name = "AXP803", + .batsense_step = 1100, + .charge_step = 1000, + .discharge_step = 1000, + .maxcap_step = 1456, + .coulomb_step = 1456, +}; + struct axp8xx_softc; struct axp8xx_reg_sc { @@ -558,9 +680,20 @@ struct axp8xx_softc { int type; + /* Configs */ + const struct axp8xx_config *config; + + /* Sensors */ + const struct axp8xx_sensors *sensors; + int nsensors; + /* Regulators */ struct axp8xx_reg_sc **regs; int nregs; + + /* Warning, shutdown thresholds */ + int warn_thres; + int shut_thres; }; #define AXP_LOCK(sc) mtx_lock(&(sc)->mtx) @@ -756,6 +889,110 @@ axp8xx_shutdown(void *devp, int howto) axp8xx_write(dev, AXP_POWERBAT, AXP_POWERBAT_SHUTDOWN); } +static int +axp8xx_sysctl(SYSCTL_HANDLER_ARGS) +{ + struct axp8xx_softc *sc; + device_t dev = arg1; + enum axp8xx_sensor sensor = arg2; + const struct axp8xx_config *c; + uint8_t data; + int val, i, found, batt_val; + uint8_t lo, hi; + + sc = device_get_softc(dev); + c = sc->config; + + for (found = 0, i = 0; i < sc->nsensors; i++) { + if (sc->sensors[i].id == sensor) { + found = 1; + break; + } + } + + if (found == 0) + return (ENOENT); + + switch (sensor) { + case AXP_SENSOR_ACIN_PRESENT: + if (axp8xx_read(dev, AXP_POWERSRC, &data, 1) == 0) + val = !!(data & AXP_POWERSRC_ACIN); + break; + case AXP_SENSOR_VBUS_PRESENT: + if (axp8xx_read(dev, AXP_POWERSRC, &data, 1) == 0) + val = !!(data & AXP_POWERSRC_VBUS); + break; + case AXP_SENSOR_BATT_PRESENT: + if (axp8xx_read(dev, AXP_POWERMODE, &data, 1) == 0) { + if (data & AXP_POWERMODE_BAT_VALID) + val = !!(data & AXP_POWERMODE_BAT_PRESENT); + } + break; + case AXP_SENSOR_BATT_CHARGING: + if (axp8xx_read(dev, AXP_POWERMODE, &data, 1) == 0) + val = !!(data & AXP_POWERMODE_BAT_CHARGING); + break; + case AXP_SENSOR_BATT_CHARGE_STATE: + if (axp8xx_read(dev, AXP_BAT_CAP, &data, 1) == 0 && + (data & AXP_BAT_CAP_VALID) != 0) { + batt_val = (data & AXP_BAT_CAP_PERCENT); + if (batt_val <= sc->shut_thres) + val = BATT_CAPACITY_CRITICAL; + else if (batt_val <= sc->warn_thres) + val = BATT_CAPACITY_WARNING; + else + val = BATT_CAPACITY_NORMAL; + } + break; + case AXP_SENSOR_BATT_CAPACITY_PERCENT: + if (axp8xx_read(dev, AXP_BAT_CAP, &data, 1) == 0 && + (data & AXP_BAT_CAP_VALID) != 0) + val = (data & AXP_BAT_CAP_PERCENT); + break; + case AXP_SENSOR_BATT_VOLTAGE: + if (axp8xx_read(dev, AXP_BATSENSE_HI, &hi, 1) == 0 && + axp8xx_read(dev, AXP_BATSENSE_LO, &lo, 1) == 0) { + val = (AXP_SENSOR_BAT_H(hi) | AXP_SENSOR_BAT_L(lo)); + val *= c->batsense_step; + } + break; + case AXP_SENSOR_BATT_CHARGE_CURRENT: + if (axp8xx_read(dev, AXP_POWERSRC, &data, 1) == 0 && + (data & AXP_POWERSRC_CHARING) != 0 && + axp8xx_read(dev, AXP_BATCHG_HI, &hi, 1) == 0 && + axp8xx_read(dev, AXP_BATCHG_LO, &lo, 1) == 0) { + val = (AXP_SENSOR_BAT_H(hi) | AXP_SENSOR_BAT_L(lo)); + val *= c->charge_step; + } + break; + case AXP_SENSOR_BATT_DISCHARGE_CURRENT: + if (axp8xx_read(dev, AXP_POWERSRC, &data, 1) == 0 && + (data & AXP_POWERSRC_CHARING) == 0 && + axp8xx_read(dev, AXP_BATDISCHG_HI, &hi, 1) == 0 && + axp8xx_read(dev, AXP_BATDISCHG_LO, &lo, 1) == 0) { + val = (AXP_SENSOR_BAT_H(hi) | AXP_SENSOR_BAT_L(lo)); + val *= c->discharge_step; + } + break; + case AXP_SENSOR_BATT_MAXIMUM_CAPACITY: + if (axp8xx_read(dev, AXP_BAT_MAX_CAP_HI, &hi, 1) == 0 && + axp8xx_read(dev, AXP_BAT_MAX_CAP_LO, &lo, 1) == 0) { + val = AXP_SENSOR_COULOMB(hi, lo); + val *= c->maxcap_step; + } + break; + case AXP_SENSOR_BATT_CURRENT_CAPACITY: + if (axp8xx_read(dev, AXP_BAT_COULOMB_HI, &hi, 1) == 0 && + axp8xx_read(dev, AXP_BAT_COULOMB_LO, &lo, 1) == 0) { + val = AXP_SENSOR_COULOMB(hi, lo); + val *= c->coulomb_step; + } + break; + } + + return sysctl_handle_opaque(oidp, &val, sizeof(val), req); +} + static void axp8xx_intr(void *arg) { @@ -1157,7 +1394,7 @@ axp8xx_attach(device_t dev) { struct axp8xx_softc *sc; struct axp8xx_reg_sc *reg; - uint8_t chip_id; + uint8_t chip_id, val; phandle_t rnode, child; int error, i; @@ -1187,6 +1424,10 @@ axp8xx_attach(device_t dev) sc->nregs += nitems(axp813_regdefs); break; } + sc->config = &axp803_config; + sc->sensors = axp8xx_common_sensors; + sc->nsensors = nitems(axp8xx_common_sensors); + sc->regs = malloc(sizeof(struct axp8xx_reg_sc *) * sc->nregs, M_AXP8XX_REG, M_WAITOK | M_ZERO); @@ -1228,6 +1469,31 @@ axp8xx_attach(device_t dev) continue; } sc->regs[i] = reg; + } + } + + /* Add sensors */ + for (i = 0; i < sc->nsensors; i++) { + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, sc->sensors[i].name, + CTLTYPE_INT | CTLFLAG_RD, + dev, sc->sensors[i].id, axp8xx_sysctl, + sc->sensors[i].format, + sc->sensors[i].desc); + } + + /* Get thresholds */ + if (axp8xx_read(dev, AXP_BAT_CAP_WARN, &val, 1) == 0) { + sc->warn_thres = (val & AXP_BAT_CAP_WARN_LV1) >> 4; + sc->shut_thres = (val & AXP_BAT_CAP_WARN_LV2); + if (bootverbose) { + device_printf(dev, + "Raw reg val: 0x%02x\n", val); + device_printf(dev, + "Warning threshold: 0x%02x\n", sc->warn_thres); + device_printf(dev, + "Shutdown threshold: 0x%02x\n", sc->shut_thres); } } From owner-svn-src-all@freebsd.org Mon Feb 11 14:47:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2DA014D8F94; Mon, 11 Feb 2019 14:46:59 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9439870327; Mon, 11 Feb 2019 14:46:59 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8919514A0; Mon, 11 Feb 2019 14:46:59 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BEkx8s015076; Mon, 11 Feb 2019 14:46:59 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BEkxS4015075; Mon, 11 Feb 2019 14:46:59 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902111446.x1BEkxS4015075@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 11 Feb 2019 14:46:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344004 - stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 344004 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9439870327 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:47:00 -0000 Author: mav Date: Mon Feb 11 14:46:59 2019 New Revision: 344004 URL: https://svnweb.freebsd.org/changeset/base/344004 Log: MFC r343745, r343752: Add missed tunables/sysctls for some new vdev variables. While there, make few existing sysctls writeable, since there is no reason not to. Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Mon Feb 11 14:31:19 2019 (r344003) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Mon Feb 11 14:46:59 2019 (r344004) @@ -165,29 +165,38 @@ static vdev_ops_t *vdev_ops_table[] = { /* target number of metaslabs per top-level vdev */ int vdev_max_ms_count = 200; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count, CTLFLAG_RWTUN, &vdev_max_ms_count, 0, - "Maximum number of metaslabs per top-level vdev"); + "Target number of metaslabs per top-level vdev"); /* minimum number of metaslabs per top-level vdev */ int vdev_min_ms_count = 16; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, min_ms_count, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, min_ms_count, CTLFLAG_RWTUN, &vdev_min_ms_count, 0, "Minimum number of metaslabs per top-level vdev"); /* practical upper limit of total metaslabs per top-level vdev */ int vdev_ms_count_limit = 1ULL << 17; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count_limit, CTLFLAG_RWTUN, + &vdev_ms_count_limit, 0, + "Maximum number of metaslabs per top-level vdev"); /* lower limit for metaslab size (512M) */ int vdev_default_ms_shift = 29; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, default_ms_shift, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, default_ms_shift, CTLFLAG_RWTUN, &vdev_default_ms_shift, 0, - "Shift between vdev size and number of metaslabs"); + "Default shift between vdev size and number of metaslabs"); /* upper limit for metaslab size (256G) */ int vdev_max_ms_shift = 38; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_shift, CTLFLAG_RWTUN, + &vdev_max_ms_shift, 0, + "Maximum shift between vdev size and number of metaslabs"); boolean_t vdev_validate_skip = B_FALSE; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, validate_skip, CTLFLAG_RWTUN, + &vdev_validate_skip, 0, + "Bypass vdev validation"); /* * Since the DTL space map of a vdev is not expected to have a lot of From owner-svn-src-all@freebsd.org Mon Feb 11 14:47:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F0EE614D8FD8; Mon, 11 Feb 2019 14:47:26 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 95DDD70459; Mon, 11 Feb 2019 14:47:26 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 70BFA14A1; Mon, 11 Feb 2019 14:47:26 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BElQH9015153; Mon, 11 Feb 2019 14:47:26 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BElQ8a015152; Mon, 11 Feb 2019 14:47:26 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902111447.x1BElQ8a015152@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 11 Feb 2019 14:47:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344005 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 344005 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 95DDD70459 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:47:27 -0000 Author: mav Date: Mon Feb 11 14:47:26 2019 New Revision: 344005 URL: https://svnweb.freebsd.org/changeset/base/344005 Log: MFC r343745, r343752: Add missed tunables/sysctls for some new vdev variables. While there, make few existing sysctls writeable, since there is no reason not to. Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Mon Feb 11 14:46:59 2019 (r344004) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Mon Feb 11 14:47:26 2019 (r344005) @@ -165,29 +165,38 @@ static vdev_ops_t *vdev_ops_table[] = { /* target number of metaslabs per top-level vdev */ int vdev_max_ms_count = 200; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count, CTLFLAG_RWTUN, &vdev_max_ms_count, 0, - "Maximum number of metaslabs per top-level vdev"); + "Target number of metaslabs per top-level vdev"); /* minimum number of metaslabs per top-level vdev */ int vdev_min_ms_count = 16; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, min_ms_count, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, min_ms_count, CTLFLAG_RWTUN, &vdev_min_ms_count, 0, "Minimum number of metaslabs per top-level vdev"); /* practical upper limit of total metaslabs per top-level vdev */ int vdev_ms_count_limit = 1ULL << 17; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count_limit, CTLFLAG_RWTUN, + &vdev_ms_count_limit, 0, + "Maximum number of metaslabs per top-level vdev"); /* lower limit for metaslab size (512M) */ int vdev_default_ms_shift = 29; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, default_ms_shift, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, default_ms_shift, CTLFLAG_RWTUN, &vdev_default_ms_shift, 0, - "Shift between vdev size and number of metaslabs"); + "Default shift between vdev size and number of metaslabs"); /* upper limit for metaslab size (256G) */ int vdev_max_ms_shift = 38; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_shift, CTLFLAG_RWTUN, + &vdev_max_ms_shift, 0, + "Maximum shift between vdev size and number of metaslabs"); boolean_t vdev_validate_skip = B_FALSE; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, validate_skip, CTLFLAG_RWTUN, + &vdev_validate_skip, 0, + "Bypass vdev validation"); /* * Since the DTL space map of a vdev is not expected to have a lot of From owner-svn-src-all@freebsd.org Mon Feb 11 14:48:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1DE5114D90B4; Mon, 11 Feb 2019 14:48:45 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9854770622; Mon, 11 Feb 2019 14:48:45 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8C09814A3; Mon, 11 Feb 2019 14:48:45 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BEmjq2015260; Mon, 11 Feb 2019 14:48:45 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BEmjeb015259; Mon, 11 Feb 2019 14:48:45 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902111448.x1BEmjeb015259@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 11 Feb 2019 14:48:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344006 - stable/12/usr.sbin/sesutil X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/usr.sbin/sesutil X-SVN-Commit-Revision: 344006 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9854770622 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:48:46 -0000 Author: mav Date: Mon Feb 11 14:48:45 2019 New Revision: 344006 URL: https://svnweb.freebsd.org/changeset/base/344006 Log: MFC r343728: Check element type before setting LEDs. With r319610, sesutil started twiddling the bits of every SES device. Not everything is a disk slot, there are also fan controllers, temperature sensors, even power supplies, among other things controlled by SES. Add a type check to make sure we are only operating on device slot and array device slot elements. Other type elements will be skipped, but it would be simple to add additional cases for controlling the ident LEDs of other element types (which are not necessarily the same bits). Rather than doing raw bit manipulation of an unstructured byte array using unnamed numeric constants, leverage existing code abstractions. Submitted by: Ryan Moeller Sponsored by: iXsystems, Inc. Modified: stable/12/usr.sbin/sesutil/sesutil.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/sesutil/sesutil.c ============================================================================== --- stable/12/usr.sbin/sesutil/sesutil.c Mon Feb 11 14:47:26 2019 (r344005) +++ stable/12/usr.sbin/sesutil/sesutil.c Mon Feb 11 14:48:45 2019 (r344006) @@ -112,28 +112,30 @@ usage(FILE *out, const char *subcmd) } static void -do_led(int fd, unsigned int idx, bool onoff, bool setfault) +do_led(int fd, unsigned int idx, elm_type_t type, bool onoff, bool setfault) { + int state = onoff ? 1 : 0; encioc_elm_status_t o; + struct ses_ctrl_dev_slot *slot; o.elm_idx = idx; if (ioctl(fd, ENCIOC_GETELMSTAT, (caddr_t) &o) < 0) { close(fd); xo_err(EXIT_FAILURE, "ENCIOC_GETELMSTAT"); } - o.cstat[0] |= 0x80; - if (setfault) { - if (onoff) - o.cstat[3] |= 0x20; + slot = (struct ses_ctrl_dev_slot *) &o.cstat[0]; + switch (type) { + case ELMTYP_DEVICE: + case ELMTYP_ARRAY_DEV: + ses_ctrl_common_set_select(&slot->common, 1); + if (setfault) + ses_ctrl_dev_slot_set_rqst_fault(slot, state); else - o.cstat[3] &= 0xdf; - } else { - if (onoff) - o.cstat[2] |= 0x02; - else - o.cstat[2] &= 0xfd; + ses_ctrl_dev_slot_set_rqst_ident(slot, state); + break; + default: + return; } - if (ioctl(fd, ENCIOC_SETELMSTAT, (caddr_t) &o) < 0) { close(fd); xo_err(EXIT_FAILURE, "ENCIOC_SETELMSTAT"); @@ -250,14 +252,15 @@ sesled(int argc, char **argv, bool setfault) xo_errx(EXIT_FAILURE, "Requested SES ID does not exist"); } - do_led(fd, sesid, onoff, setfault); + do_led(fd, sesid, objp[sesid].elm_type, onoff, setfault); ndisks++; close(fd); break; } for (j = 0; j < nobj; j++) { if (all) { - do_led(fd, objp[j].elm_idx, onoff, setfault); + do_led(fd, objp[j].elm_idx, objp[j].elm_type, + onoff, setfault); continue; } memset(&objdn, 0, sizeof(objdn)); @@ -274,7 +277,7 @@ sesled(int argc, char **argv, bool setfault) } if (objdn.elm_names_len > 0) { if (disk_match(objdn.elm_devnames, disk, len)) { - do_led(fd, objdn.elm_idx, + do_led(fd, objdn.elm_idx, objp[j].elm_type, onoff, setfault); ndisks++; break; From owner-svn-src-all@freebsd.org Mon Feb 11 14:49:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 90CE414D90FB; Mon, 11 Feb 2019 14:49:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7E0D870752; Mon, 11 Feb 2019 14:49:10 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 73BA814A4; Mon, 11 Feb 2019 14:49:10 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BEnALY015339; Mon, 11 Feb 2019 14:49:10 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BEnAmS015338; Mon, 11 Feb 2019 14:49:10 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902111449.x1BEnAmS015338@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 11 Feb 2019 14:49:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344007 - stable/11/usr.sbin/sesutil X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/usr.sbin/sesutil X-SVN-Commit-Revision: 344007 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7E0D870752 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:49:11 -0000 Author: mav Date: Mon Feb 11 14:49:10 2019 New Revision: 344007 URL: https://svnweb.freebsd.org/changeset/base/344007 Log: MFC r343728: Check element type before setting LEDs. With r319610, sesutil started twiddling the bits of every SES device. Not everything is a disk slot, there are also fan controllers, temperature sensors, even power supplies, among other things controlled by SES. Add a type check to make sure we are only operating on device slot and array device slot elements. Other type elements will be skipped, but it would be simple to add additional cases for controlling the ident LEDs of other element types (which are not necessarily the same bits). Rather than doing raw bit manipulation of an unstructured byte array using unnamed numeric constants, leverage existing code abstractions. Submitted by: Ryan Moeller Sponsored by: iXsystems, Inc. Modified: stable/11/usr.sbin/sesutil/sesutil.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/sesutil/sesutil.c ============================================================================== --- stable/11/usr.sbin/sesutil/sesutil.c Mon Feb 11 14:48:45 2019 (r344006) +++ stable/11/usr.sbin/sesutil/sesutil.c Mon Feb 11 14:49:10 2019 (r344007) @@ -112,28 +112,30 @@ usage(FILE *out, const char *subcmd) } static void -do_led(int fd, unsigned int idx, bool onoff, bool setfault) +do_led(int fd, unsigned int idx, elm_type_t type, bool onoff, bool setfault) { + int state = onoff ? 1 : 0; encioc_elm_status_t o; + struct ses_ctrl_dev_slot *slot; o.elm_idx = idx; if (ioctl(fd, ENCIOC_GETELMSTAT, (caddr_t) &o) < 0) { close(fd); xo_err(EXIT_FAILURE, "ENCIOC_GETELMSTAT"); } - o.cstat[0] |= 0x80; - if (setfault) { - if (onoff) - o.cstat[3] |= 0x20; + slot = (struct ses_ctrl_dev_slot *) &o.cstat[0]; + switch (type) { + case ELMTYP_DEVICE: + case ELMTYP_ARRAY_DEV: + ses_ctrl_common_set_select(&slot->common, 1); + if (setfault) + ses_ctrl_dev_slot_set_rqst_fault(slot, state); else - o.cstat[3] &= 0xdf; - } else { - if (onoff) - o.cstat[2] |= 0x02; - else - o.cstat[2] &= 0xfd; + ses_ctrl_dev_slot_set_rqst_ident(slot, state); + break; + default: + return; } - if (ioctl(fd, ENCIOC_SETELMSTAT, (caddr_t) &o) < 0) { close(fd); xo_err(EXIT_FAILURE, "ENCIOC_SETELMSTAT"); @@ -250,14 +252,15 @@ sesled(int argc, char **argv, bool setfault) xo_errx(EXIT_FAILURE, "Requested SES ID does not exist"); } - do_led(fd, sesid, onoff, setfault); + do_led(fd, sesid, objp[sesid].elm_type, onoff, setfault); ndisks++; close(fd); break; } for (j = 0; j < nobj; j++) { if (all) { - do_led(fd, objp[j].elm_idx, onoff, setfault); + do_led(fd, objp[j].elm_idx, objp[j].elm_type, + onoff, setfault); continue; } memset(&objdn, 0, sizeof(objdn)); @@ -274,7 +277,7 @@ sesled(int argc, char **argv, bool setfault) } if (objdn.elm_names_len > 0) { if (disk_match(objdn.elm_devnames, disk, len)) { - do_led(fd, objdn.elm_idx, + do_led(fd, objdn.elm_idx, objp[j].elm_type, onoff, setfault); ndisks++; break; From owner-svn-src-all@freebsd.org Mon Feb 11 14:50:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CF20714D91B2; Mon, 11 Feb 2019 14:50:13 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6C926708EF; Mon, 11 Feb 2019 14:50:13 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 59A1C14A8; Mon, 11 Feb 2019 14:50:13 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BEoDWl015460; Mon, 11 Feb 2019 14:50:13 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BEoDlg015459; Mon, 11 Feb 2019 14:50:13 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902111450.x1BEoDlg015459@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 11 Feb 2019 14:50:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344008 - stable/11/sys/cam/scsi X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/cam/scsi X-SVN-Commit-Revision: 344008 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6C926708EF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:50:14 -0000 Author: mav Date: Mon Feb 11 14:50:12 2019 New Revision: 344008 URL: https://svnweb.freebsd.org/changeset/base/344008 Log: MFC r343727: Use switch instead of chained if/else to improve readability. Submitted by: Ryan Moeller Sponsored by: iXsystems, Inc. Modified: stable/11/sys/cam/scsi/scsi_enc_ses.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/scsi/scsi_enc_ses.c ============================================================================== --- stable/11/sys/cam/scsi/scsi_enc_ses.c Mon Feb 11 14:49:10 2019 (r344007) +++ stable/11/sys/cam/scsi/scsi_enc_ses.c Mon Feb 11 14:50:12 2019 (r344008) @@ -2727,13 +2727,13 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s if (sstr->bufsiz > 0xffff) return (EINVAL); /* buffer size too large */ - if (ioc == ENCIOC_SETSTRING) { + switch (ioc) { + case ENCIOC_SETSTRING: payload = sstr->bufsiz + 4; /* header for SEND DIAGNOSTIC */ amt = 0 - payload; buf = ENC_MALLOC(payload); if (buf == NULL) - return ENOMEM; - + return (ENOMEM); ses_page_cdb(cdb, payload, 0, CAM_DIR_OUT); /* Construct the page request */ buf[0] = SesStringOut; @@ -2741,12 +2741,14 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s buf[2] = sstr->bufsiz >> 8; buf[3] = sstr->bufsiz & 0xff; memcpy(&buf[4], sstr->buf, sstr->bufsiz); - } else if (ioc == ENCIOC_GETSTRING) { + break; + case ENCIOC_GETSTRING: payload = sstr->bufsiz; amt = payload; ses_page_cdb(cdb, payload, SesStringIn, CAM_DIR_IN); buf = sstr->buf; - } else if (ioc == ENCIOC_GETENCNAME) { + break; + case ENCIOC_GETENCNAME: if (ses_cache->ses_nsubencs < 1) return (ENODEV); enc_desc = ses_cache->subencs[0]; @@ -2766,7 +2768,7 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s size = sstr->bufsiz; copyout(str, sstr->buf, size); return (size == rsize ? 0 : ENOMEM); - } else if (ioc == ENCIOC_GETENCID) { + case ENCIOC_GETENCID: if (ses_cache->ses_nsubencs < 1) return (ENODEV); enc_desc = ses_cache->subencs[0]; @@ -2780,13 +2782,13 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s size = sstr->bufsiz; copyout(str, sstr->buf, size); return (size == rsize ? 0 : ENOMEM); - } else - return EINVAL; - + default: + return (EINVAL); + } ret = enc_runcmd(enc, cdb, 6, buf, &amt); if (ioc == ENCIOC_SETSTRING) ENC_FREE(buf); - return ret; + return (ret); } /** From owner-svn-src-all@freebsd.org Mon Feb 11 14:50:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4007514D931B; Mon, 11 Feb 2019 14:50:35 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 063DC70A2D; Mon, 11 Feb 2019 14:50:34 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D4F0B14AC; Mon, 11 Feb 2019 14:50:33 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BEoXYg015531; Mon, 11 Feb 2019 14:50:33 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BEoXtE015530; Mon, 11 Feb 2019 14:50:33 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902111450.x1BEoXtE015530@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 11 Feb 2019 14:50:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344009 - stable/12/sys/cam/scsi X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/cam/scsi X-SVN-Commit-Revision: 344009 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 063DC70A2D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 14:50:35 -0000 Author: mav Date: Mon Feb 11 14:50:33 2019 New Revision: 344009 URL: https://svnweb.freebsd.org/changeset/base/344009 Log: MFC r343727: Use switch instead of chained if/else to improve readability. Submitted by: Ryan Moeller Sponsored by: iXsystems, Inc. Modified: stable/12/sys/cam/scsi/scsi_enc_ses.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cam/scsi/scsi_enc_ses.c ============================================================================== --- stable/12/sys/cam/scsi/scsi_enc_ses.c Mon Feb 11 14:50:12 2019 (r344008) +++ stable/12/sys/cam/scsi/scsi_enc_ses.c Mon Feb 11 14:50:33 2019 (r344009) @@ -2729,13 +2729,13 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s if (sstr->bufsiz > 0xffff) return (EINVAL); /* buffer size too large */ - if (ioc == ENCIOC_SETSTRING) { + switch (ioc) { + case ENCIOC_SETSTRING: payload = sstr->bufsiz + 4; /* header for SEND DIAGNOSTIC */ amt = 0 - payload; buf = ENC_MALLOC(payload); if (buf == NULL) - return ENOMEM; - + return (ENOMEM); ses_page_cdb(cdb, payload, 0, CAM_DIR_OUT); /* Construct the page request */ buf[0] = SesStringOut; @@ -2743,12 +2743,14 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s buf[2] = sstr->bufsiz >> 8; buf[3] = sstr->bufsiz & 0xff; memcpy(&buf[4], sstr->buf, sstr->bufsiz); - } else if (ioc == ENCIOC_GETSTRING) { + break; + case ENCIOC_GETSTRING: payload = sstr->bufsiz; amt = payload; ses_page_cdb(cdb, payload, SesStringIn, CAM_DIR_IN); buf = sstr->buf; - } else if (ioc == ENCIOC_GETENCNAME) { + break; + case ENCIOC_GETENCNAME: if (ses_cache->ses_nsubencs < 1) return (ENODEV); enc_desc = ses_cache->subencs[0]; @@ -2768,7 +2770,7 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s size = sstr->bufsiz; copyout(str, sstr->buf, size); return (size == rsize ? 0 : ENOMEM); - } else if (ioc == ENCIOC_GETENCID) { + case ENCIOC_GETENCID: if (ses_cache->ses_nsubencs < 1) return (ENODEV); enc_desc = ses_cache->subencs[0]; @@ -2782,13 +2784,13 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s size = sstr->bufsiz; copyout(str, sstr->buf, size); return (size == rsize ? 0 : ENOMEM); - } else - return EINVAL; - + default: + return (EINVAL); + } ret = enc_runcmd(enc, cdb, 6, buf, &amt); if (ioc == ENCIOC_SETSTRING) ENC_FREE(buf); - return ret; + return (ret); } /** From owner-svn-src-all@freebsd.org Mon Feb 11 15:02:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D1E6D14D982A; Mon, 11 Feb 2019 15:02:07 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 79BC171596; Mon, 11 Feb 2019 15:02:07 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 63E801808; Mon, 11 Feb 2019 15:02:07 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BF27mS025669; Mon, 11 Feb 2019 15:02:07 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BF23Rv025647; Mon, 11 Feb 2019 15:02:03 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902111502.x1BF23Rv025647@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 11 Feb 2019 15:02:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344011 - in stable/12: lib/libthr lib/libthr/thread libexec/rtld-elf libexec/rtld-elf/aarch64 libexec/rtld-elf/amd64 libexec/rtld-elf/arm libexec/rtld-elf/i386 libexec/rtld-elf/mips li... X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in stable/12: lib/libthr lib/libthr/thread libexec/rtld-elf libexec/rtld-elf/aarch64 libexec/rtld-elf/amd64 libexec/rtld-elf/arm libexec/rtld-elf/i386 libexec/rtld-elf/mips libexec/rtld-elf/powerpc li... X-SVN-Commit-Revision: 344011 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 79BC171596 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 15:02:08 -0000 Author: kib Date: Mon Feb 11 15:02:02 2019 New Revision: 344011 URL: https://svnweb.freebsd.org/changeset/base/344011 Log: MFC r339877-r339879,r343564-r343566,r343580,r343754: Untangle jemalloc and mutexes initialization. The merge includes required warnings cleanup by arichardson, both to avoid conflicts and to make rtld_malloc.c compilable with the libthr WARNS settings. Added: stable/12/lib/libthr/thread/thr_malloc.c - copied, changed from r343566, head/lib/libthr/thread/thr_malloc.c stable/12/libexec/rtld-elf/rtld_malloc.c - copied unchanged from r343580, head/libexec/rtld-elf/rtld_malloc.c stable/12/libexec/rtld-elf/rtld_malloc.h - copied unchanged from r343565, head/libexec/rtld-elf/rtld_malloc.h Deleted: stable/12/libexec/rtld-elf/malloc.c Modified: stable/12/lib/libthr/Makefile stable/12/lib/libthr/thread/Makefile.inc stable/12/lib/libthr/thread/thr_fork.c stable/12/lib/libthr/thread/thr_init.c stable/12/lib/libthr/thread/thr_mutex.c stable/12/lib/libthr/thread/thr_private.h stable/12/lib/libthr/thread/thr_spec.c stable/12/libexec/rtld-elf/Makefile stable/12/libexec/rtld-elf/aarch64/reloc.c stable/12/libexec/rtld-elf/amd64/reloc.c stable/12/libexec/rtld-elf/arm/reloc.c stable/12/libexec/rtld-elf/i386/reloc.c stable/12/libexec/rtld-elf/i386/rtld_machdep.h stable/12/libexec/rtld-elf/libmap.c stable/12/libexec/rtld-elf/libmap.h stable/12/libexec/rtld-elf/map_object.c stable/12/libexec/rtld-elf/mips/reloc.c stable/12/libexec/rtld-elf/mips/rtld_machdep.h stable/12/libexec/rtld-elf/paths.h stable/12/libexec/rtld-elf/powerpc/reloc.c stable/12/libexec/rtld-elf/powerpc/rtld_machdep.h stable/12/libexec/rtld-elf/powerpc64/reloc.c stable/12/libexec/rtld-elf/powerpc64/rtld_machdep.h stable/12/libexec/rtld-elf/riscv/reloc.c stable/12/libexec/rtld-elf/rtld.c stable/12/libexec/rtld-elf/rtld.h stable/12/libexec/rtld-elf/rtld_lock.c stable/12/libexec/rtld-elf/rtld_printf.c stable/12/libexec/rtld-elf/sparc64/reloc.c stable/12/libexec/rtld-elf/xmalloc.c Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libthr/Makefile ============================================================================== --- stable/12/lib/libthr/Makefile Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/Makefile Mon Feb 11 15:02:02 2019 (r344011) @@ -26,6 +26,7 @@ CFLAGS+=-I${SRCTOP}/lib/libthread_db CFLAGS+=-Winline CFLAGS.thr_stack.c+= -Wno-cast-align +CFLAGS.rtld_malloc.c+= -Wno-cast-align .include .if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 40300) CFLAGS.thr_symbols.c+= -Wno-missing-variable-declarations @@ -49,12 +50,14 @@ CFLAGS+=-D_PTHREADS_INVARIANTS PRECIOUSLIB= .PATH: ${.CURDIR}/arch/${MACHINE_CPUARCH}/${MACHINE_CPUARCH} +.PATH: ${SRCTOP}/libexec/rtld-elf .if exists(${.CURDIR}/arch/${MACHINE_CPUARCH}/Makefile.inc) .include "${.CURDIR}/arch/${MACHINE_CPUARCH}/Makefile.inc" .endif .include "${.CURDIR}/sys/Makefile.inc" .include "${.CURDIR}/thread/Makefile.inc" +SRCS+= rtld_malloc.c .if ${MK_INSTALLLIB} != "no" SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a Modified: stable/12/lib/libthr/thread/Makefile.inc ============================================================================== --- stable/12/lib/libthr/thread/Makefile.inc Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/thread/Makefile.inc Mon Feb 11 15:02:02 2019 (r344011) @@ -31,6 +31,7 @@ SRCS+= \ thr_kern.c \ thr_kill.c \ thr_main_np.c \ + thr_malloc.c \ thr_multi_np.c \ thr_mutex.c \ thr_mutexattr.c \ Modified: stable/12/lib/libthr/thread/thr_fork.c ============================================================================== --- stable/12/lib/libthr/thread/thr_fork.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/thread/thr_fork.c Mon Feb 11 15:02:02 2019 (r344011) @@ -170,6 +170,7 @@ __thr_fork(void) */ if (_thr_isthreaded() != 0) { was_threaded = 1; + __thr_malloc_prefork(curthread); _malloc_prefork(); __thr_pshared_atfork_pre(); _rtld_atfork_pre(rtld_locks); @@ -197,6 +198,10 @@ __thr_fork(void) */ curthread->tlflags &= ~TLFLAGS_IN_TDLIST; + /* before thr_self() */ + if (was_threaded) + __thr_malloc_postfork(curthread); + /* child is a new kernel thread. */ thr_self(&curthread->tid); @@ -241,6 +246,7 @@ __thr_fork(void) _thr_signal_postfork(); if (was_threaded) { + __thr_malloc_postfork(curthread); _rtld_atfork_post(rtld_locks); __thr_pshared_atfork_post(); _malloc_postfork(); Modified: stable/12/lib/libthr/thread/thr_init.c ============================================================================== --- stable/12/lib/libthr/thread/thr_init.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/thread/thr_init.c Mon Feb 11 15:02:02 2019 (r344011) @@ -461,6 +461,7 @@ init_private(void) */ if (init_once == 0) { __thr_pshared_init(); + __thr_malloc_init(); /* Find the stack top */ mib[0] = CTL_KERN; mib[1] = KERN_USRSTACK; Copied and modified: stable/12/lib/libthr/thread/thr_malloc.c (from r343566, head/lib/libthr/thread/thr_malloc.c) ============================================================================== --- head/lib/libthr/thread/thr_malloc.c Tue Jan 29 22:46:44 2019 (r343566, copy source) +++ stable/12/lib/libthr/thread/thr_malloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -46,6 +46,8 @@ void __thr_malloc_init(void) { + if (npagesizes != 0) + return; npagesizes = getpagesizes(pagesizes_d, nitems(pagesizes_d)); if (npagesizes == -1) { npagesizes = 1; @@ -59,6 +61,8 @@ static void thr_malloc_lock(struct pthread *curthread) { + if (curthread == NULL) + return; curthread->locklevel++; _thr_umutex_lock(&thr_malloc_umtx, TID(curthread)); } @@ -67,6 +71,8 @@ static void thr_malloc_unlock(struct pthread *curthread) { + if (curthread == NULL) + return; _thr_umutex_unlock(&thr_malloc_umtx, TID(curthread)); curthread->locklevel--; _thr_ast(curthread); Modified: stable/12/lib/libthr/thread/thr_mutex.c ============================================================================== --- stable/12/lib/libthr/thread/thr_mutex.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/thread/thr_mutex.c Mon Feb 11 15:02:02 2019 (r344011) @@ -306,10 +306,11 @@ init_static(struct pthread *thread, pthread_mutex_t *m THR_LOCK_ACQUIRE(thread, &_mutex_static_lock); if (*mutex == THR_MUTEX_INITIALIZER) - ret = mutex_init(mutex, &_pthread_mutexattr_default, calloc); + ret = mutex_init(mutex, &_pthread_mutexattr_default, + __thr_calloc); else if (*mutex == THR_ADAPTIVE_MUTEX_INITIALIZER) ret = mutex_init(mutex, &_pthread_mutexattr_adaptive_default, - calloc); + __thr_calloc); else ret = 0; THR_LOCK_RELEASE(thread, &_mutex_static_lock); @@ -389,8 +390,9 @@ __pthread_mutex_init(pthread_mutex_t * __restrict mute } if (mutex_attr == NULL || (*mutex_attr)->m_pshared == PTHREAD_PROCESS_PRIVATE) { + __thr_malloc_init(); return (mutex_init(mutex, mutex_attr ? *mutex_attr : NULL, - calloc)); + __thr_calloc)); } pmtx = __thr_pshared_offpage(__DECONST(void *, mutex), 1); if (pmtx == NULL) @@ -483,7 +485,7 @@ _pthread_mutex_destroy(pthread_mutex_t *mutex) } else { *mutex = THR_MUTEX_DESTROYED; mutex_assert_not_owned(_get_curthread(), m); - free(m); + __thr_free(m); ret = 0; } } Modified: stable/12/lib/libthr/thread/thr_private.h ============================================================================== --- stable/12/lib/libthr/thread/thr_private.h Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/thread/thr_private.h Mon Feb 11 15:02:02 2019 (r344011) @@ -1009,6 +1009,14 @@ void __thr_pshared_destroy(void *key) __hidden; void __thr_pshared_atfork_pre(void) __hidden; void __thr_pshared_atfork_post(void) __hidden; +void *__thr_calloc(size_t num, size_t size); +void __thr_free(void *cp); +void *__thr_malloc(size_t nbytes); +void *__thr_realloc(void *cp, size_t nbytes); +void __thr_malloc_init(void); +void __thr_malloc_prefork(struct pthread *curthread); +void __thr_malloc_postfork(struct pthread *curthread); + __END_DECLS __NULLABILITY_PRAGMA_POP Modified: stable/12/lib/libthr/thread/thr_spec.c ============================================================================== --- stable/12/lib/libthr/thread/thr_spec.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/lib/libthr/thread/thr_spec.c Mon Feb 11 15:02:02 2019 (r344011) @@ -155,8 +155,7 @@ _thread_cleanupspecific(void) } } THR_LOCK_RELEASE(curthread, &_keytable_lock); - munmap(curthread->specific, PTHREAD_KEYS_MAX * sizeof(struct - pthread_specific_elem)); + __thr_free(curthread->specific); curthread->specific = NULL; if (curthread->specific_data_count > 0) { stderr_debug("Thread %p has exited with leftover " @@ -179,10 +178,9 @@ _pthread_setspecific(pthread_key_t userkey, const void pthread = _get_curthread(); if (pthread->specific == NULL) { - tmp = mmap(NULL, PTHREAD_KEYS_MAX * - sizeof(struct pthread_specific_elem), - PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); - if (tmp == MAP_FAILED) + tmp = __thr_calloc(PTHREAD_KEYS_MAX, + sizeof(struct pthread_specific_elem)); + if (tmp == NULL) return (ENOMEM); pthread->specific = tmp; } Modified: stable/12/libexec/rtld-elf/Makefile ============================================================================== --- stable/12/libexec/rtld-elf/Makefile Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/Makefile Mon Feb 11 15:02:02 2019 (r344011) @@ -13,9 +13,17 @@ PROG?= ld-elf.so.1 .if (${PROG:M*ld-elf32*} != "") TAGS+= lib32 .endif -SRCS= rtld_start.S \ - reloc.c rtld.c rtld_lock.c rtld_printf.c map_object.c \ - malloc.c xmalloc.c debug.c libmap.c +SRCS= \ + rtld_start.S \ + reloc.c \ + rtld.c \ + rtld_lock.c \ + rtld_malloc.c \ + rtld_printf.c \ + map_object.c \ + xmalloc.c \ + debug.c \ + libmap.c MAN= rtld.1 CSTD?= gnu99 CFLAGS+= -Wall -DFREEBSD_ELF -DIN_RTLD -ffreestanding @@ -31,7 +39,9 @@ LDFLAGS+= -nostdlib -e _rtld_start .else LDFLAGS+= -nostdlib -e .rtld_start .endif -WARNS?= 2 + +NO_WCAST_ALIGN= yes +WARNS?= 6 INSTALLFLAGS= -C -b PRECIOUSPROG= BINDIR= /libexec @@ -95,3 +105,13 @@ SUBDIR.${MK_TESTS}+= tests .include ${PROG_FULL}: ${VERSION_MAP} .include + +.if ${COMPILER_TYPE} == "gcc" +# GCC warns about redeclarations even though they have __exported +# and are therefore not identical to the ones from the system headers. +CFLAGS+= -Wno-redundant-decls +.if ${COMPILER_VERSION} < 40300 +# Silence -Wshadow false positives in ancient GCC +CFLAGS+= -Wno-shadow +.endif +.endif Modified: stable/12/libexec/rtld-elf/aarch64/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/aarch64/reloc.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/aarch64/reloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -85,7 +85,7 @@ do_copy_relocations(Obj_Entry *dstobj) */ assert(dstobj->mainprog); - relalim = (const Elf_Rela *)((char *)dstobj->rela + + relalim = (const Elf_Rela *)((const char *)dstobj->rela + dstobj->relasize); for (rela = dstobj->rela; rela < relalim; rela++) { if (ELF_R_TYPE(rela->r_info) != R_AARCH64_COPY) @@ -128,6 +128,8 @@ struct tls_data { Elf_Addr tls_offs; }; +int64_t rtld_tlsdesc_handle(struct tls_data *tlsdesc, int flags); + static Elf_Addr reloc_tlsdesc_alloc(int tlsindex, Elf_Addr tlsoffs) { @@ -187,7 +189,7 @@ reloc_plt(Obj_Entry *obj, int flags, RtldLockState *lo const Elf_Rela *relalim; const Elf_Rela *rela; - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { Elf_Addr *where; @@ -230,7 +232,7 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat if (obj->jmpslots_done) return (0); - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { Elf_Addr *where, target; @@ -265,7 +267,7 @@ reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockS if (!obj->irelative) return (0); - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { if (ELF_R_TYPE(rela->r_info) == R_AARCH64_IRELATIVE) { ptr = (Elf_Addr *)(obj->relocbase + rela->r_addend); @@ -292,7 +294,7 @@ reloc_gnu_ifunc(Obj_Entry *obj, int flags, if (!obj->gnu_ifunc) return (0); - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { if (ELF_R_TYPE(rela->r_info) == R_AARCH64_JUMP_SLOT) { where = (Elf_Addr *)(obj->relocbase + rela->r_offset); @@ -314,8 +316,9 @@ reloc_gnu_ifunc(Obj_Entry *obj, int flags, } Elf_Addr -reloc_jmpslot(Elf_Addr *where, Elf_Addr target, const Obj_Entry *defobj, - const Obj_Entry *obj, const Elf_Rel *rel) +reloc_jmpslot(Elf_Addr *where, Elf_Addr target, + const Obj_Entry *defobj __unused, const Obj_Entry *obj __unused, + const Elf_Rel *rel) { assert(ELF_R_TYPE(rel->r_info) == R_AARCH64_JUMP_SLOT || @@ -362,7 +365,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int cache = calloc(obj->dynsymcount, sizeof(SymCache)); /* No need to check for NULL here */ - relalim = (const Elf_Rela *)((caddr_t)obj->rela + obj->relasize); + relalim = (const Elf_Rela *)((const char *)obj->rela + obj->relasize); for (rela = obj->rela; rela < relalim; rela++) { /* * First, resolve symbol for relocations which @@ -449,7 +452,8 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int * error. */ if (!defobj->tls_done) { - if (!allocate_tls_offset((Obj_Entry*) defobj)) { + if (!allocate_tls_offset( + __DECONST(Obj_Entry *, defobj))) { _rtld_error( "%s: No space available for static " "Thread Local Storage", obj->path); Modified: stable/12/libexec/rtld-elf/amd64/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/amd64/reloc.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/amd64/reloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -68,7 +68,7 @@ do_copy_relocations(Obj_Entry *dstobj) assert(dstobj->mainprog); /* COPY relocations are invalid elsewhere */ - relalim = (const Elf_Rela *) ((caddr_t) dstobj->rela + dstobj->relasize); + relalim = (const Elf_Rela *)((const char *) dstobj->rela + dstobj->relasize); for (rela = dstobj->rela; rela < relalim; rela++) { if (ELF_R_TYPE(rela->r_info) == R_X86_64_COPY) { void *dstaddr; @@ -81,7 +81,7 @@ do_copy_relocations(Obj_Entry *dstobj) SymLook req; int res; - dstaddr = (void *) (dstobj->relocbase + rela->r_offset); + dstaddr = (void *)(dstobj->relocbase + rela->r_offset); dstsym = dstobj->symtab + ELF_R_SYM(rela->r_info); name = dstobj->strtab + dstsym->st_name; size = dstsym->st_size; @@ -105,7 +105,7 @@ do_copy_relocations(Obj_Entry *dstobj) return -1; } - srcaddr = (const void *) (defobj->relocbase + srcsym->st_value); + srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); memcpy(dstaddr, srcaddr, size); } } @@ -151,7 +151,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int } else cache = NULL; - relalim = (const Elf_Rela *)((caddr_t)obj->rela + obj->relasize); + relalim = (const Elf_Rela *)((const char*)obj->rela + obj->relasize); for (rela = obj->rela; rela < relalim; rela++) { /* * First, resolve symbol for relocations which @@ -258,7 +258,8 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int * of space, we generate an error. */ if (!defobj->tls_done) { - if (!allocate_tls_offset((Obj_Entry*) defobj)) { + if (!allocate_tls_offset( + __DECONST(Obj_Entry *, defobj))) { _rtld_error("%s: No space available " "for static Thread Local Storage", obj->path); @@ -278,7 +279,8 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int * of space, we generate an error. */ if (!defobj->tls_done) { - if (!allocate_tls_offset((Obj_Entry*) defobj)) { + if (!allocate_tls_offset( + __DECONST(Obj_Entry *, defobj))) { _rtld_error("%s: No space available " "for static Thread Local Storage", obj->path); @@ -326,7 +328,7 @@ reloc_plt(Obj_Entry *obj, int flags __unused, RtldLock const Elf_Rela *relalim; const Elf_Rela *rela; - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { Elf_Addr *where; @@ -359,7 +361,7 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat if (obj->jmpslots_done) return 0; - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { Elf_Addr *where, target; const Elf_Sym *def; @@ -396,8 +398,9 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat /* Fixup the jump slot at "where" to transfer control to "target". */ Elf_Addr reloc_jmpslot(Elf_Addr *where, Elf_Addr target, - const struct Struct_Obj_Entry *obj, const struct Struct_Obj_Entry *refobj, - const Elf_Rel *rel) + const struct Struct_Obj_Entry *obj __unused, + const struct Struct_Obj_Entry *refobj __unused, + const Elf_Rel *rel __unused) { #ifdef dbg dbg("reloc_jmpslot: *%p = %p", where, (void *)target); @@ -415,7 +418,7 @@ reloc_iresolve(Obj_Entry *obj, RtldLockState *lockstat if (!obj->irelative) return (0); - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { Elf_Addr *where, target, *ptr; @@ -445,7 +448,7 @@ reloc_gnu_ifunc(Obj_Entry *obj, int flags, RtldLockSta if (!obj->gnu_ifunc) return (0); - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { Elf_Addr *where, target; const Elf_Sym *def; Modified: stable/12/libexec/rtld-elf/arm/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/arm/reloc.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/arm/reloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -75,7 +75,7 @@ do_copy_relocations(Obj_Entry *dstobj) assert(dstobj->mainprog); /* COPY relocations are invalid elsewhere */ - rellim = (const Elf_Rel *) ((caddr_t) dstobj->rel + dstobj->relsize); + rellim = (const Elf_Rel *)((const char *) dstobj->rel + dstobj->relsize); for (rel = dstobj->rel; rel < rellim; rel++) { if (ELF_R_TYPE(rel->r_info) == R_ARM_COPY) { void *dstaddr; @@ -88,7 +88,7 @@ do_copy_relocations(Obj_Entry *dstobj) SymLook req; int res; - dstaddr = (void *) (dstobj->relocbase + rel->r_offset); + dstaddr = (void *)(dstobj->relocbase + rel->r_offset); dstsym = dstobj->symtab + ELF_R_SYM(rel->r_info); name = dstobj->strtab + dstsym->st_name; size = dstsym->st_size; @@ -125,8 +125,6 @@ do_copy_relocations(Obj_Entry *dstobj) void _rtld_bind_start(void); void _rtld_relocate_nonplt_self(Elf_Dyn *, Elf_Addr); -int open(); -int _open(); void _rtld_relocate_nonplt_self(Elf_Dyn *dynp, Elf_Addr relocbase) { @@ -145,7 +143,7 @@ _rtld_relocate_nonplt_self(Elf_Dyn *dynp, Elf_Addr rel break; } } - rellim = (const Elf_Rel *)((caddr_t)rel + relsz); + rellim = (const Elf_Rel *)((const char *)rel + relsz); size = (rellim - 1)->r_offset - rel->r_offset; for (; rel < rellim; rel++) { where = (Elf_Addr *)(relocbase + rel->r_offset); @@ -375,7 +373,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int cache = calloc(obj->dynsymcount, sizeof(SymCache)); /* No need to check for NULL here */ - rellim = (const Elf_Rel *)((caddr_t)obj->rel + obj->relsize); + rellim = (const Elf_Rel *)((const char *)obj->rel + obj->relsize); for (rel = obj->rel; rel < rellim; rel++) { if (reloc_nonplt_object(obj, rel, cache, flags, lockstate) < 0) goto done; @@ -396,7 +394,7 @@ reloc_plt(Obj_Entry *obj, int flags __unused, RtldLock const Elf_Rel *rellim; const Elf_Rel *rel; - rellim = (const Elf_Rel *)((char *)obj->pltrel + + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { Elf_Addr *where; @@ -423,7 +421,7 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat Elf_Addr *where; Elf_Addr target; - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { assert(ELF_R_TYPE(rel->r_info) == R_ARM_JUMP_SLOT); where = (Elf_Addr *)(obj->relocbase + rel->r_offset); @@ -445,7 +443,8 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat } int -reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockState *lockstate) +reloc_iresolve(Obj_Entry *obj __unused, + struct Struct_RtldLockState *lockstate __unused) { /* XXX not implemented */ @@ -453,8 +452,8 @@ reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockS } int -reloc_gnu_ifunc(Obj_Entry *obj, int flags, - struct Struct_RtldLockState *lockstate) +reloc_gnu_ifunc(Obj_Entry *obj __unused, int flags __unused, + struct Struct_RtldLockState *lockstate __unused) { /* XXX not implemented */ @@ -462,8 +461,9 @@ reloc_gnu_ifunc(Obj_Entry *obj, int flags, } Elf_Addr -reloc_jmpslot(Elf_Addr *where, Elf_Addr target, const Obj_Entry *defobj, - const Obj_Entry *obj, const Elf_Rel *rel) +reloc_jmpslot(Elf_Addr *where, Elf_Addr target, + const Obj_Entry *defobj __unused, const Obj_Entry *obj __unused, + const Elf_Rel *rel) { assert(ELF_R_TYPE(rel->r_info) == R_ARM_JUMP_SLOT); Modified: stable/12/libexec/rtld-elf/i386/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/i386/reloc.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/i386/reloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -67,7 +67,7 @@ do_copy_relocations(Obj_Entry *dstobj) assert(dstobj->mainprog); /* COPY relocations are invalid elsewhere */ - rellim = (const Elf_Rel *) ((caddr_t) dstobj->rel + dstobj->relsize); + rellim = (const Elf_Rel *)((const char *)dstobj->rel + dstobj->relsize); for (rel = dstobj->rel; rel < rellim; rel++) { if (ELF_R_TYPE(rel->r_info) == R_386_COPY) { void *dstaddr; @@ -80,7 +80,7 @@ do_copy_relocations(Obj_Entry *dstobj) SymLook req; int res; - dstaddr = (void *) (dstobj->relocbase + rel->r_offset); + dstaddr = (void *)(dstobj->relocbase + rel->r_offset); dstsym = dstobj->symtab + ELF_R_SYM(rel->r_info); name = dstobj->strtab + dstsym->st_name; size = dstsym->st_size; @@ -104,7 +104,7 @@ do_copy_relocations(Obj_Entry *dstobj) return -1; } - srcaddr = (const void *) (defobj->relocbase + srcsym->st_value); + srcaddr = (const void *)(defobj->relocbase + srcsym->st_value); memcpy(dstaddr, srcaddr, size); } } @@ -146,7 +146,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int } else cache = NULL; - rellim = (const Elf_Rel *)((caddr_t) obj->rel + obj->relsize); + rellim = (const Elf_Rel *)((const char *)obj->rel + obj->relsize); for (rel = obj->rel; rel < rellim; rel++) { switch (ELF_R_TYPE(rel->r_info)) { case R_386_32: @@ -239,7 +239,8 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int * of space, we generate an error. */ if (!defobj->tls_done) { - if (!allocate_tls_offset((Obj_Entry*) defobj)) { + if (!allocate_tls_offset( + __DECONST(Obj_Entry *, defobj))) { _rtld_error("%s: No space available " "for static Thread Local Storage", obj->path); @@ -278,7 +279,7 @@ reloc_plt(Obj_Entry *obj, int flags __unused, RtldLock const Elf_Rel *rellim; const Elf_Rel *rel; - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { Elf_Addr *where/*, val*/; @@ -311,7 +312,7 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat if (obj->jmpslots_done) return 0; - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { Elf_Addr *where, target; const Elf_Sym *def; @@ -349,8 +350,8 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat /* Fixup the jump slot at "where" to transfer control to "target". */ Elf_Addr reloc_jmpslot(Elf_Addr *where, Elf_Addr target, - const struct Struct_Obj_Entry *obj, const struct Struct_Obj_Entry *refobj, - const Elf_Rel *rel) + const Obj_Entry *obj __unused, const Obj_Entry *refobj __unused, + const Elf_Rel *rel __unused) { #ifdef dbg dbg("reloc_jmpslot: *%p = %p", where, (void *)target); @@ -369,7 +370,7 @@ reloc_iresolve(Obj_Entry *obj, RtldLockState *lockstat if (!obj->irelative) return (0); - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { switch (ELF_R_TYPE(rel->r_info)) { case R_386_IRELATIVE: @@ -393,7 +394,7 @@ reloc_gnu_ifunc(Obj_Entry *obj, int flags, RtldLockSta if (!obj->gnu_ifunc) return (0); - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { Elf_Addr *where, target; const Elf_Sym *def; Modified: stable/12/libexec/rtld-elf/i386/rtld_machdep.h ============================================================================== --- stable/12/libexec/rtld-elf/i386/rtld_machdep.h Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/i386/rtld_machdep.h Mon Feb 11 15:02:02 2019 (r344011) @@ -58,7 +58,7 @@ extern uint32_t cpu_feature2; extern uint32_t cpu_stdext_feature; extern uint32_t cpu_stdext_feature2; #define call_ifunc_resolver(ptr) \ - (((Elf_Addr (*)(uint32_t, uint32_t, uint32_t, uint32_t))ptr)( \ + (((Elf_Addr (*)(uint32_t, uint32_t, uint32_t, uint32_t))(ptr))( \ cpu_feature, cpu_feature2, cpu_stdext_feature, cpu_stdext_feature2)) #define round(size, align) \ Modified: stable/12/libexec/rtld-elf/libmap.c ============================================================================== --- stable/12/libexec/rtld-elf/libmap.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/libmap.c Mon Feb 11 15:02:02 2019 (r344011) @@ -25,7 +25,7 @@ struct lm { TAILQ_ENTRY(lm) lm_link; }; -TAILQ_HEAD(lmp_list, lmp) lmp_head = TAILQ_HEAD_INITIALIZER(lmp_head); +static TAILQ_HEAD(lmp_list, lmp) lmp_head = TAILQ_HEAD_INITIALIZER(lmp_head); struct lmp { char *p; enum { T_EXACT=0, T_BASENAME, T_DIRECTORY } type; @@ -44,8 +44,8 @@ struct lmc { static int lm_count; static void lmc_parse(char *, size_t); -static void lmc_parse_file(char *); -static void lmc_parse_dir(char *); +static void lmc_parse_file(const char *); +static void lmc_parse_dir(const char *); static void lm_add(const char *, const char *, const char *); static void lm_free(struct lm_list *); static char *lml_find(struct lm_list *, const char *); @@ -96,7 +96,7 @@ lm_init(char *libmap_override) } static void -lmc_parse_file(char *path) +lmc_parse_file(const char *path) { struct lmc *p; char *lm_map; @@ -149,7 +149,7 @@ lmc_parse_file(char *path) } static void -lmc_parse_dir(char *idir) +lmc_parse_dir(const char *idir) { DIR *d; struct dirent *dp; @@ -199,8 +199,7 @@ lmc_parse(char *lm_p, size_t lm_len) char prog[MAXPATHLEN]; /* allow includedir + full length path */ char line[MAXPATHLEN + 13]; - size_t cnt; - int i; + size_t cnt, i; cnt = 0; p = NULL; @@ -403,7 +402,7 @@ lm_find(const char *p, const char *f) * replacement library, or NULL. */ char * -lm_findn(const char *p, const char *f, const int n) +lm_findn(const char *p, const char *f, const size_t n) { char pathbuf[64], *s, *t; Modified: stable/12/libexec/rtld-elf/libmap.h ============================================================================== --- stable/12/libexec/rtld-elf/libmap.h Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/libmap.h Mon Feb 11 15:02:02 2019 (r344011) @@ -5,4 +5,4 @@ int lm_init (char *); void lm_fini (void); char * lm_find (const char *, const char *); -char * lm_findn (const char *, const char *, const int); +char * lm_findn (const char *, const char *, const size_t); Modified: stable/12/libexec/rtld-elf/map_object.c ============================================================================== --- stable/12/libexec/rtld-elf/map_object.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/map_object.c Mon Feb 11 15:02:02 2019 (r344011) @@ -103,7 +103,7 @@ map_object(int fd, const char *path, const struct stat * * We expect that the loadable segments are ordered by load address. */ - phdr = (Elf_Phdr *) ((char *)hdr + hdr->e_phoff); + phdr = (Elf_Phdr *)((char *)hdr + hdr->e_phoff); phsize = hdr->e_phnum * sizeof (phdr[0]); phlimit = phdr + hdr->e_phnum; nsegs = -1; @@ -114,6 +114,7 @@ map_object(int fd, const char *path, const struct stat note_start = 0; note_end = 0; note_map = NULL; + note_map_len = 0; segs = alloca(sizeof(segs[0]) * hdr->e_phnum); stack_flags = RTLD_DEFAULT_STACK_PF_EXEC | PF_R | PF_W; while (phdr < phlimit) { @@ -284,11 +285,11 @@ map_object(int fd, const char *path, const struct stat base_vaddr; obj->vaddrbase = base_vaddr; obj->relocbase = mapbase - base_vaddr; - obj->dynamic = (const Elf_Dyn *) (obj->relocbase + phdyn->p_vaddr); + obj->dynamic = (const Elf_Dyn *)(obj->relocbase + phdyn->p_vaddr); if (hdr->e_entry != 0) - obj->entry = (caddr_t) (obj->relocbase + hdr->e_entry); + obj->entry = (caddr_t)(obj->relocbase + hdr->e_entry); if (phdr_vaddr != 0) { - obj->phdr = (const Elf_Phdr *) (obj->relocbase + phdr_vaddr); + obj->phdr = (const Elf_Phdr *)(obj->relocbase + phdr_vaddr); } else { obj->phdr = malloc(phsize); if (obj->phdr == NULL) { @@ -296,12 +297,12 @@ map_object(int fd, const char *path, const struct stat _rtld_error("%s: cannot allocate program header", path); goto error1; } - memcpy((char *)obj->phdr, (char *)hdr + hdr->e_phoff, phsize); + memcpy(__DECONST(char *, obj->phdr), (char *)hdr + hdr->e_phoff, phsize); obj->phdr_alloc = true; } obj->phsize = phsize; if (phinterp != NULL) - obj->interp = (const char *) (obj->relocbase + phinterp->p_vaddr); + obj->interp = (const char *)(obj->relocbase + phinterp->p_vaddr); if (phtls != NULL) { tls_dtv_generation++; obj->tlsindex = ++tls_max_index; @@ -335,7 +336,7 @@ get_elf_header(int fd, const char *path, const struct Elf_Ehdr *hdr; /* Make sure file has enough data for the ELF header */ - if (sbp != NULL && sbp->st_size < sizeof(Elf_Ehdr)) { + if (sbp != NULL && sbp->st_size < (off_t)sizeof(Elf_Ehdr)) { _rtld_error("%s: invalid file format", path); return (NULL); } @@ -425,13 +426,13 @@ obj_free(Obj_Entry *obj) if (obj->origin_path) free(obj->origin_path); if (obj->z_origin) - free(obj->rpath); + free(__DECONST(void*, obj->rpath)); if (obj->priv) free(obj->priv); if (obj->path) free(obj->path); if (obj->phdr_alloc) - free((void *)obj->phdr); + free(__DECONST(void *, obj->phdr)); free(obj); } Modified: stable/12/libexec/rtld-elf/mips/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/mips/reloc.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/mips/reloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -126,7 +126,7 @@ do_copy_relocations(Obj_Entry *dstobj) */ assert(dstobj->mainprog); - rellim = (const Elf_Rel *)((caddr_t)dstobj->rel + dstobj->relsize); + rellim = (const Elf_Rel *)((const char *)dstobj->rel + dstobj->relsize); for (rel = dstobj->rel; rel < rellim; rel++) { if (ELF_R_TYPE(rel->r_info) != R_MIPS_COPY) continue; @@ -265,7 +265,7 @@ _rtld_relocate_nonplt_self(Elf_Dyn *dynp, Elf_Addr rel ++got; } - rellim = (const Elf_Rel *)((caddr_t)rel + relsz); + rellim = (const Elf_Rel *)((const char *)rel + relsz); for (; rel < rellim; rel++) { Elf_Word r_symndx, r_type; @@ -469,7 +469,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int } got = obj->pltgot; - rellim = (const Elf_Rel *)((caddr_t)obj->rel + obj->relsize); + rellim = (const Elf_Rel *)((const char *)obj->rel + obj->relsize); for (rel = obj->rel; rel < rellim; rel++) { Elf_Word r_symndx, r_type; void *where; @@ -657,7 +657,7 @@ reloc_plt(Obj_Entry *obj, int flags __unused, RtldLock const Elf_Rel *rellim; const Elf_Rel *rel; - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { Elf_Addr *where; @@ -687,7 +687,7 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat const Elf_Rel *rel; const Elf_Sym *def; - rellim = (const Elf_Rel *)((char *)obj->pltrel + obj->pltrelsize); + rellim = (const Elf_Rel *)((const char *)obj->pltrel + obj->pltrelsize); for (rel = obj->pltrel; rel < rellim; rel++) { Elf_Addr *where; @@ -714,7 +714,8 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat } int -reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockState *lockstate) +reloc_iresolve(Obj_Entry *obj __unused, + struct Struct_RtldLockState *lockstate __unused) { /* XXX not implemented */ @@ -722,8 +723,8 @@ reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockS } int -reloc_gnu_ifunc(Obj_Entry *obj, int flags, - struct Struct_RtldLockState *lockstate) +reloc_gnu_ifunc(Obj_Entry *obj __unused, int flags __unused, + struct Struct_RtldLockState *lockstate __unused) { /* XXX not implemented */ @@ -731,8 +732,9 @@ reloc_gnu_ifunc(Obj_Entry *obj, int flags, } Elf_Addr -reloc_jmpslot(Elf_Addr *where, Elf_Addr target, const Obj_Entry *defobj, - const Obj_Entry *obj, const Elf_Rel *rel) +reloc_jmpslot(Elf_Addr *where, Elf_Addr target, + const Obj_Entry *defobj __unused, const Obj_Entry *obj __unused, + const Elf_Rel *rel) { assert(ELF_R_TYPE(rel->r_info) == R_MIPS_JUMP_SLOT); Modified: stable/12/libexec/rtld-elf/mips/rtld_machdep.h ============================================================================== --- stable/12/libexec/rtld-elf/mips/rtld_machdep.h Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/mips/rtld_machdep.h Mon Feb 11 15:02:02 2019 (r344011) @@ -43,6 +43,9 @@ struct Struct_Obj_Entry; Elf_Addr reloc_jmpslot(Elf_Addr *where, Elf_Addr target, const struct Struct_Obj_Entry *defobj, const struct Struct_Obj_Entry *obj, const Elf_Rel *rel); +Elf_Addr _mips_rtld_bind(struct Struct_Obj_Entry *obj, Elf_Size reloff); +void *_mips_get_tls(void); + #define make_function_pointer(def, defobj) \ ((defobj)->relocbase + (def)->st_value) Modified: stable/12/libexec/rtld-elf/paths.h ============================================================================== --- stable/12/libexec/rtld-elf/paths.h Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/paths.h Mon Feb 11 15:02:02 2019 (r344011) @@ -69,10 +69,10 @@ #define SOFT_STANDARD_LIBRARY_PATH "/usr/libsoft" #define LD_SOFT_ "LD_SOFT_" -extern char *ld_elf_hints_default; -extern char *ld_path_libmap_conf; -extern char *ld_path_rtld; -extern char *ld_standard_library_path; -extern char *ld_env_prefix; +extern const char *ld_elf_hints_default; +extern const char *ld_path_libmap_conf; +extern const char *ld_path_rtld; +extern const char *ld_standard_library_path; +extern const char *ld_env_prefix; #endif /* PATHS_H */ Modified: stable/12/libexec/rtld-elf/powerpc/reloc.c ============================================================================== --- stable/12/libexec/rtld-elf/powerpc/reloc.c Mon Feb 11 14:57:29 2019 (r344010) +++ stable/12/libexec/rtld-elf/powerpc/reloc.c Mon Feb 11 15:02:02 2019 (r344011) @@ -71,7 +71,7 @@ do_copy_relocations(Obj_Entry *dstobj) */ assert(dstobj->mainprog); - relalim = (const Elf_Rela *) ((caddr_t) dstobj->rela + + relalim = (const Elf_Rela *)((const char *) dstobj->rela + dstobj->relasize); for (rela = dstobj->rela; rela < relalim; rela++) { void *dstaddr; @@ -88,7 +88,7 @@ do_copy_relocations(Obj_Entry *dstobj) continue; } - dstaddr = (void *) (dstobj->relocbase + rela->r_offset); + dstaddr = (void *)(dstobj->relocbase + rela->r_offset); dstsym = dstobj->symtab + ELF_R_SYM(rela->r_info); name = dstobj->strtab + dstsym->st_name; size = dstsym->st_size; @@ -113,7 +113,7 @@ do_copy_relocations(Obj_Entry *dstobj) return (-1); } - srcaddr = (const void *) (defobj->relocbase+srcsym->st_value); + srcaddr = (const void *)(defobj->relocbase+srcsym->st_value); memcpy(dstaddr, srcaddr, size); dbg("copy_reloc: src=%p,dst=%p,size=%d\n",srcaddr,dstaddr,size); } @@ -149,7 +149,7 @@ reloc_non_plt_self(Elf_Dyn *dynp, Elf_Addr relocbase) /* * Relocate these values */ - relalim = (const Elf_Rela *)((caddr_t)rela + relasz); + relalim = (const Elf_Rela *)((const char *)rela + relasz); for (; rela < relalim; rela++) { where = (Elf_Addr *)(relocbase + rela->r_offset); *where = (Elf_Addr)(relocbase + rela->r_addend); @@ -161,8 +161,8 @@ reloc_non_plt_self(Elf_Dyn *dynp, Elf_Addr relocbase) * Relocate a non-PLT object with addend. */ static int -reloc_nonplt_object(Obj_Entry *obj_rtld, Obj_Entry *obj, const Elf_Rela *rela, - SymCache *cache, int flags, RtldLockState *lockstate) +reloc_nonplt_object(Obj_Entry *obj_rtld __unused, Obj_Entry *obj, + const Elf_Rela *rela, SymCache *cache, int flags, RtldLockState *lockstate) { Elf_Addr *where = (Elf_Addr *)(obj->relocbase + rela->r_offset); const Elf_Sym *def; @@ -249,7 +249,8 @@ reloc_nonplt_object(Obj_Entry *obj_rtld, Obj_Entry *ob * error. */ if (!defobj->tls_done) { - if (!allocate_tls_offset((Obj_Entry*) defobj)) { + if (!allocate_tls_offset( + __DECONST(Obj_Entry *, defobj))) { _rtld_error("%s: No space available for static " "Thread Local Storage", obj->path); return (-1); @@ -315,7 +316,7 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int * "The PowerPC family uses only the Elf32_Rela relocation * entries with explicit addends." */ - relalim = (const Elf_Rela *)((caddr_t)obj->rela + obj->relasize); + relalim = (const Elf_Rela *)((const char *)obj->rela + obj->relasize); for (rela = obj->rela; rela < relalim; rela++) { if (reloc_nonplt_object(obj_rtld, obj, rela, cache, flags, lockstate) < 0) @@ -398,7 +399,7 @@ reloc_plt(Obj_Entry *obj, int flags __unused, RtldLock if (obj->pltrelasize != 0) { - relalim = (const Elf_Rela *)((char *)obj->pltrela + + relalim = (const Elf_Rela *)((const char *)obj->pltrela + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { assert(ELF_R_TYPE(rela->r_info) == R_PPC_JMP_SLOT); @@ -433,7 +434,8 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat Elf_Addr *where; Elf_Addr target; - relalim = (const Elf_Rela *)((char *)obj->pltrela + obj->pltrelasize); + relalim = (const Elf_Rela *)((const char *)obj->pltrela + + obj->pltrelasize); for (rela = obj->pltrela; rela < relalim; rela++) { assert(ELF_R_TYPE(rela->r_info) == R_PPC_JMP_SLOT); where = (Elf_Addr *)(obj->relocbase + rela->r_offset); @@ -469,8 +471,8 @@ reloc_jmpslots(Obj_Entry *obj, int flags, RtldLockStat * trampoline call and jump table. */ Elf_Addr -reloc_jmpslot(Elf_Addr *wherep, Elf_Addr target, const Obj_Entry *defobj, - const Obj_Entry *obj, const Elf_Rel *rel) +reloc_jmpslot(Elf_Addr *wherep, Elf_Addr target, + const Obj_Entry *defobj __unused, const Obj_Entry *obj, const Elf_Rel *rel) { Elf_Addr offset; const Elf_Rela *rela = (const Elf_Rela *) rel; @@ -529,7 +531,8 @@ out: } int -reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockState *lockstate) +reloc_iresolve(Obj_Entry *obj __unused, + struct Struct_RtldLockState *lockstate __unused) { /* XXX not implemented */ @@ -537,8 +540,8 @@ reloc_iresolve(Obj_Entry *obj, struct Struct_RtldLockS } int -reloc_gnu_ifunc(Obj_Entry *obj, int flags, - struct Struct_RtldLockState *lockstate) +reloc_gnu_ifunc(Obj_Entry *obj __unused, int flags __unused, + struct Struct_RtldLockState *lockstate __unused) { /* XXX not implemented */ @@ -650,7 +653,7 @@ allocate_initial_tls(Obj_Entry *list) tls_static_space = tls_last_offset + tls_last_size + RTLD_STATIC_TLS_EXTRA; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Feb 11 15:38:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 46D1714DA33F; Mon, 11 Feb 2019 15:38:06 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D9E6A72C22; Mon, 11 Feb 2019 15:38:05 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CFE7B1DC1; Mon, 11 Feb 2019 15:38:05 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BFc5K4041674; Mon, 11 Feb 2019 15:38:05 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BFc5ji041673; Mon, 11 Feb 2019 15:38:05 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902111538.x1BFc5ji041673@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Mon, 11 Feb 2019 15:38:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344012 - head/sys/conf X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/conf X-SVN-Commit-Revision: 344012 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D9E6A72C22 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 15:38:06 -0000 Author: tuexen Date: Mon Feb 11 15:38:05 2019 New Revision: 344012 URL: https://svnweb.freebsd.org/changeset/base/344012 Log: Fix flags used when compiling kern_kcov.c and subr_coverage.c. Without this fix, the usage of kernel coverage would lockup the system. Thanks to Andrew for suggesting the final form of the fix. PR: 235611 Reviewed by: andrew@, emaste@ Differential Revision: https://reviews.freebsd.org/D19135 Modified: head/sys/conf/files Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Mon Feb 11 15:02:02 2019 (r344011) +++ head/sys/conf/files Mon Feb 11 15:38:05 2019 (r344012) @@ -3808,7 +3808,7 @@ kern/kern_idle.c standard kern/kern_intr.c standard kern/kern_jail.c standard kern/kern_kcov.c optional kcov \ - compile-with "${NORMAL_C} -fno-sanitize=all" + compile-with "${NORMAL_C:N-fsanitize*}" kern/kern_khelp.c standard kern/kern_kthread.c standard kern/kern_ktr.c optional ktr @@ -3884,7 +3884,7 @@ kern/subr_clock.c standard kern/subr_compressor.c standard \ compile-with "${NORMAL_C} -I$S/contrib/zstd/lib/freebsd" kern/subr_coverage.c optional coverage \ - compile-with "${NORMAL_C} -fno-sanitize=all" + compile-with "${NORMAL_C:N-fsanitize*}" kern/subr_counter.c standard kern/subr_devstat.c standard kern/subr_disk.c standard From owner-svn-src-all@freebsd.org Mon Feb 11 15:51:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 20A3E14DA927; Mon, 11 Feb 2019 15:51:29 +0000 (UTC) (envelope-from cracauer@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AA216734D0; Mon, 11 Feb 2019 15:51:28 +0000 (UTC) (envelope-from cracauer@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A02931FDB; Mon, 11 Feb 2019 15:51:28 +0000 (UTC) (envelope-from cracauer@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BFpS8s050758; Mon, 11 Feb 2019 15:51:28 GMT (envelope-from cracauer@FreeBSD.org) Received: (from cracauer@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BFpS2T050748; Mon, 11 Feb 2019 15:51:28 GMT (envelope-from cracauer@FreeBSD.org) Message-Id: <201902111551.x1BFpS2T050748@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cracauer set sender to cracauer@FreeBSD.org using -f From: Martin Cracauer Date: Mon, 11 Feb 2019 15:51:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344013 - head/usr.sbin/mountd X-SVN-Group: head X-SVN-Commit-Author: cracauer X-SVN-Commit-Paths: head/usr.sbin/mountd X-SVN-Commit-Revision: 344013 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AA216734D0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 15:51:29 -0000 Author: cracauer Date: Mon Feb 11 15:51:28 2019 New Revision: 344013 URL: https://svnweb.freebsd.org/changeset/base/344013 Log: Clarify NFSv4 /etc/exports semantics, with working example. The existing wording has been confusing users for years. Modified: head/usr.sbin/mountd/exports.5 Modified: head/usr.sbin/mountd/exports.5 ============================================================================== --- head/usr.sbin/mountd/exports.5 Mon Feb 11 15:38:05 2019 (r344012) +++ head/usr.sbin/mountd/exports.5 Mon Feb 11 15:51:28 2019 (r344013) @@ -498,6 +498,40 @@ and any client within the 131.104.48 subnet is permitt operations on the server, so long as valid Kerberos credentials are provided. The machine grumpy.cis.uoguelph.ca is permitted to perform NFSv4 state operations on the server using AUTH_SYS credentials, as well as Kerberos ones. +.Pp +In the following example some directories are exported as NFSv3 and NFSv4: +.Bd -literal -offset indent +V4: /wingsdl/nfsv4 +/wingsdl/nfsv4/usr-ports -maproot=root -network 172.16.0.0 -mask 255.255.0.0 +/wingsdl/nfsv4/clasper -maproot=root clasper +.Ed +.Pp +Only one V4: line is needed or allowed to declare where NFSv4 is +rooted. The other lines declare specific exported directories with +their absolute paths given in /etc/exports. +.Pp +The exported directories' paths are used for both v3 and v4. +However, they are interpreted differently for v3 and v4. A client +mount command for usr-ports would use the server-absolute name when +using nfsv3: +.Bd -literal -offset indent +mount server:/wingsdl/nfsv4/usr-ports /mnt/tmp +.Ed +.Pp +A mount command using NFSv4 would use the path relative to the NFSv4 +root: +.Bd -literal -offset indent +mount server:/usr-ports /mnt/tmp +.Ed +.Pp +This also differentiates which version you want if the client can do +both v3 and v4. The former will only ever do a v3 mount and the +latter will only ever do a v4 mount. +.Pp +Note that due to different mount behavior between NFSv3 and NFSv4 a +NFSv4 mount request for a directory that the client does not have +permission for will succeed and read/write access will fail +afterwards, whereas NFSv3 rejects the mount request. .Sh SEE ALSO .Xr nfsv4 4 , .Xr netgroup 5 , From owner-svn-src-all@freebsd.org Mon Feb 11 16:16:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DBD1314DB981; Mon, 11 Feb 2019 16:16:10 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg1-x535.google.com (mail-pg1-x535.google.com [IPv6:2607:f8b0:4864:20::535]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 536EC74F08; Mon, 11 Feb 2019 16:16:10 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg1-x535.google.com with SMTP id z11so5170312pgu.0; Mon, 11 Feb 2019 08:16:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=cPR0cMJfj3XbTiGmpccn6Yy7gPafPyy73p0dYb8mR1U=; b=ppLYcM4mo6wLX7LtWuEMeOrXBy0SKLJRIJe3ctwQgFLJiH7mIsCYn5OT3KmHBnc2kl TH/tH1wCqitmnpIHoYfnTdKYyEbxn8ua/g4D5JnHG/vjnknjS92ZWilm2vIFD+HoWU2Z wwz1ABoURPv+T9CsbieMGlA8eB5ErESsvUzcwqhGRmbebRzcmbv55T0L7hRv34y7s8IK pJ3pe/eDzvnj7m1M+zjxwM2qrqPJI5J9l0G7cYtgIwjSM4IsMlLcDJ9NeY5JyvbfpceK H4yTjnX5FUlWPwsj5yugpuQSqovMyVLpE1kFrFALadDOEw7Go4PkAbtcp+CMVP1p10oB ZLjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=cPR0cMJfj3XbTiGmpccn6Yy7gPafPyy73p0dYb8mR1U=; b=oRT8xMn886iDYl8g7zSGE8d0oEiqQ5IV1bMvxMlnatJg/y7Nxa4CsO0VPdtd3yJ0ME wXvfJOLYoa73LqIluD4+UeoA257BoA0qSL1o68xIxNSd46WivPkmAYlUBeBfjHyw4PS4 0tMWJ4UhDwg4Tz8GtL4LAcXByB7hnMO68yx1xwza5Kvpri0L8pVYWcdHmRihVdLJ3DG2 Iy3NtbN7FHkpqC032QuChnbLAUWCnk282vwgHkoy4+R0xVIjTdxKmuT0GAefm8t0ATzw 1QViIw9HxOJNEph3qHeKvsPDAa8upcJGBt9+ruoi0xEfShLtb9m1wlsMhkTnxPqIKfVu 8Owg== X-Gm-Message-State: AHQUAuasB9DL/d5EuUXFKdBLE/ajvKlPj6O3T914Z2ByuP5ENVfWY9l6 +cm22+soTVnX+J9RsHJU4wWhaHK2 X-Google-Smtp-Source: AHgI3IaWkC2Q4iWBSCitJbozSRh/gyfKHfVT6dNKuKWNVrAM2RIYboIAmplXrsmD9Odaba2d2Hl6Zg== X-Received: by 2002:a63:cf56:: with SMTP id b22mr34335159pgj.376.1549901768977; Mon, 11 Feb 2019 08:16:08 -0800 (PST) Received: from [192.168.20.22] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id x123sm4774762pfx.94.2019.02.11.08.16.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 11 Feb 2019 08:16:08 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r344013 - head/usr.sbin/mountd From: Enji Cooper X-Mailer: iPhone Mail (16C104) In-Reply-To: <201902111551.x1BFpS2T050748@repo.freebsd.org> Date: Mon, 11 Feb 2019 08:16:07 -0800 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <7658F8CB-99CE-4632-8576-903035BBE136@gmail.com> References: <201902111551.x1BFpS2T050748@repo.freebsd.org> To: Martin Cracauer X-Rspamd-Queue-Id: 536EC74F08 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:16:11 -0000 Hi Martin, > On Feb 11, 2019, at 07:51, Martin Cracauer wrote: >=20 > Author: cracauer > Date: Mon Feb 11 15:51:28 2019 > New Revision: 344013 > URL: https://svnweb.freebsd.org/changeset/base/344013 >=20 > Log: > Clarify NFSv4 /etc/exports semantics, with working example. > The existing wording has been confusing users for years. >=20 > Modified: > head/usr.sbin/mountd/exports.5 >=20 > Modified: head/usr.sbin/mountd/exports.5 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D Two things: 1. .Dd needs to be bumped for the content change. 2. Did you plan on MFCing this? Cheers, -Enji= From owner-svn-src-all@freebsd.org Mon Feb 11 16:28:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C249C14DC211; Mon, 11 Feb 2019 16:28:05 +0000 (UTC) (envelope-from ram@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7310675AB0; Mon, 11 Feb 2019 16:28:05 +0000 (UTC) (envelope-from ram@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 67276263A; Mon, 11 Feb 2019 16:28:05 +0000 (UTC) (envelope-from ram@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BGS5Yl067674; Mon, 11 Feb 2019 16:28:05 GMT (envelope-from ram@FreeBSD.org) Received: (from ram@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BGS4pH067670; Mon, 11 Feb 2019 16:28:04 GMT (envelope-from ram@FreeBSD.org) Message-Id: <201902111628.x1BGS4pH067670@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ram set sender to ram@FreeBSD.org using -f From: Ram Kishore Vegesna Date: Mon, 11 Feb 2019 16:28:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344014 - stable/11/sys/dev/ocs_fc X-SVN-Group: stable-11 X-SVN-Commit-Author: ram X-SVN-Commit-Paths: stable/11/sys/dev/ocs_fc X-SVN-Commit-Revision: 344014 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7310675AB0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:28:06 -0000 Author: ram Date: Mon Feb 11 16:28:04 2019 New Revision: 344014 URL: https://svnweb.freebsd.org/changeset/base/344014 Log: MFC r336446: Implemented Device Lost Timer, which is used to give target device the time to recover before marking dead. Issue: IO fails immediately after doing port-toggle. Fix: Added LDT(Device Lost Timer)- we wait a specific period of time prior to telling the OS about lost device. Approved by: ken, mav Differential Revision: D16196 Modified: stable/11/sys/dev/ocs_fc/ocs.h stable/11/sys/dev/ocs_fc/ocs_cam.c stable/11/sys/dev/ocs_fc/ocs_pci.c stable/11/sys/dev/ocs_fc/ocs_xport.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/ocs_fc/ocs.h ============================================================================== --- stable/11/sys/dev/ocs_fc/ocs.h Mon Feb 11 15:51:28 2019 (r344013) +++ stable/11/sys/dev/ocs_fc/ocs.h Mon Feb 11 16:28:04 2019 (r344014) @@ -62,13 +62,36 @@ typedef struct ocs_intr_ctx_s { char name[64]; /** label for this context */ } ocs_intr_ctx_t; +typedef struct ocs_fc_rport_db_s { + uint32_t node_id; + uint32_t state; + uint8_t is_target; + uint8_t is_initiator; + + uint32_t port_id; + uint64_t wwnn; + uint64_t wwpn; + uint32_t gone_timer; + +} ocs_fc_target_t; + +#define OCS_TGT_STATE_NONE 0 /* Empty DB slot */ +#define OCS_TGT_STATE_VALID 1 /* Valid*/ +#define OCS_TGT_STATE_LOST 2 /* LOST*/ + typedef struct ocs_fcport_s { - struct cam_sim *sim; - struct cam_path *path; - uint32_t role; + ocs_t *ocs; + struct cam_sim *sim; + struct cam_path *path; + uint32_t role; - ocs_tgt_resource_t targ_rsrc_wildcard; - ocs_tgt_resource_t targ_rsrc[OCS_MAX_LUN]; + ocs_fc_target_t tgt[OCS_MAX_TARGETS]; + int lost_device_time; + struct callout ldt; /* device lost timer */ + struct task ltask; + + ocs_tgt_resource_t targ_rsrc_wildcard; + ocs_tgt_resource_t targ_rsrc[OCS_MAX_LUN]; ocs_vport_spec_t *vport; } ocs_fcport; @@ -169,7 +192,7 @@ struct ocs_softc { uint32_t enable_task_set_full; uint32_t io_in_use; uint32_t io_high_watermark; /**< used to send task set full */ - struct mtx sim_lock; + struct mtx sim_lock; uint32_t config_tgt:1, /**< Configured to support target mode */ config_ini:1; /**< Configured to support initiator mode */ Modified: stable/11/sys/dev/ocs_fc/ocs_cam.c ============================================================================== --- stable/11/sys/dev/ocs_fc/ocs_cam.c Mon Feb 11 15:51:28 2019 (r344013) +++ stable/11/sys/dev/ocs_fc/ocs_cam.c Mon Feb 11 16:28:04 2019 (r344014) @@ -74,6 +74,14 @@ static int32_t ocs_initiator_tmf_cb(ocs_io_t *, ocs_sc static uint32_t ocs_fcp_change_role(struct ocs_softc *ocs, ocs_fcport *fcp, uint32_t new_role); +static void ocs_ldt(void *arg); +static void ocs_ldt_task(void *arg, int pending); +static void ocs_delete_target(ocs_t *ocs, ocs_fcport *fcp, int tgt); +uint32_t ocs_add_new_tgt(ocs_node_t *node, ocs_fcport *fcp); +uint32_t ocs_update_tgt(ocs_node_t *node, ocs_fcport *fcp, uint32_t tgt_id); + +int32_t ocs_tgt_find(ocs_fcport *fcp, ocs_node_t *node); + static inline ocs_io_t *ocs_scsi_find_io(struct ocs_softc *ocs, uint32_t tag) { @@ -124,12 +132,15 @@ ocs_attach_port(ocs_t *ocs, int chan) cam_sim_free(sim, FALSE); return 1; } - + + fcp->ocs = ocs; fcp->sim = sim; fcp->path = path; - return 0; + callout_init_mtx(&fcp->ldt, &ocs->sim_lock, 0); + TASK_INIT(&fcp->ltask, 1, ocs_ldt_task, fcp); + return 0; } static int32_t @@ -143,6 +154,9 @@ ocs_detach_port(ocs_t *ocs, int32_t chan) sim = fcp->sim; path = fcp->path; + callout_drain(&fcp->ldt); + ocs_ldt_task(fcp, 0); + if (fcp->sim) { mtx_lock(&ocs->sim_lock); ocs_tgt_resource_abort(ocs, &fcp->targ_rsrc_wildcard); @@ -672,7 +686,7 @@ int32_t ocs_scsi_recv_tmf(ocs_io_t *tmfio, uint64_t lu inot = (struct ccb_immediate_notify *)STAILQ_FIRST(&trsrc->inot); } - if (!inot) { + if (!inot) { device_printf( ocs->dev, "%s: no INOT for LUN %llx (en=%s) OX_ID %#x\n", __func__, (unsigned long long)lun, trsrc ? (trsrc->enabled ? "T" : "F") : "X", @@ -932,6 +946,26 @@ ocs_scsi_sport_deleted(ocs_sport_t *sport) } +int32_t +ocs_tgt_find(ocs_fcport *fcp, ocs_node_t *node) +{ + ocs_fc_target_t *tgt = NULL; + uint32_t i; + + for (i = 0; i < OCS_MAX_TARGETS; i++) { + tgt = &fcp->tgt[i]; + + if (tgt->state == OCS_TGT_STATE_NONE) + continue; + + if (ocs_node_get_wwpn(node) == tgt->wwpn) { + return i; + } + } + + return -1; +} + /** * @ingroup scsi_api_initiator * @brief receive notification of a new SCSI target node @@ -949,38 +983,150 @@ ocs_scsi_sport_deleted(ocs_sport_t *sport) * * @note */ -int32_t -ocs_scsi_new_target(ocs_node_t *node) + +uint32_t +ocs_update_tgt(ocs_node_t *node, ocs_fcport *fcp, uint32_t tgt_id) { + ocs_fc_target_t *tgt = NULL; + + tgt = &fcp->tgt[tgt_id]; + + tgt->node_id = node->instance_index; + tgt->state = OCS_TGT_STATE_VALID; + + tgt->port_id = node->rnode.fc_id; + tgt->wwpn = ocs_node_get_wwpn(node); + tgt->wwnn = ocs_node_get_wwnn(node); + return 0; +} + +uint32_t +ocs_add_new_tgt(ocs_node_t *node, ocs_fcport *fcp) +{ + uint32_t i; + struct ocs_softc *ocs = node->ocs; union ccb *ccb = NULL; - ocs_fcport *fcp = NULL; - - fcp = node->sport->tgt_data; - if (fcp == NULL) { - printf("%s:FCP is NULL \n", __func__); - return 0; + for (i = 0; i < OCS_MAX_TARGETS; i++) { + if (fcp->tgt[i].state == OCS_TGT_STATE_NONE) + break; } if (NULL == (ccb = xpt_alloc_ccb_nowait())) { device_printf(ocs->dev, "%s: ccb allocation failed\n", __func__); return -1; } - + if (CAM_REQ_CMP != xpt_create_path(&ccb->ccb_h.path, xpt_periph, cam_sim_path(fcp->sim), - node->instance_index, CAM_LUN_WILDCARD)) { + i, CAM_LUN_WILDCARD)) { device_printf( ocs->dev, "%s: target path creation failed\n", __func__); xpt_free_ccb(ccb); return -1; } + ocs_update_tgt(node, fcp, i); xpt_rescan(ccb); + return 0; +} +int32_t +ocs_scsi_new_target(ocs_node_t *node) +{ + ocs_fcport *fcp = NULL; + int32_t i; + + fcp = node->sport->tgt_data; + if (fcp == NULL) { + printf("%s:FCP is NULL \n", __func__); + return 0; + } + + i = ocs_tgt_find(fcp, node); + + if (i < 0) { + ocs_add_new_tgt(node, fcp); + return 0; + } + + ocs_update_tgt(node, fcp, i); return 0; } +static void +ocs_delete_target(ocs_t *ocs, ocs_fcport *fcp, int tgt) +{ + struct cam_path *cpath = NULL; + + if (!fcp->sim) { + device_printf(ocs->dev, "%s: calling with NULL sim\n", __func__); + return; + } + + if (CAM_REQ_CMP == xpt_create_path(&cpath, NULL, cam_sim_path(fcp->sim), + tgt, CAM_LUN_WILDCARD)) { + xpt_async(AC_LOST_DEVICE, cpath, NULL); + + xpt_free_path(cpath); + } +} + +/* + * Device Lost Timer Function- when we have decided that a device was lost, + * we wait a specific period of time prior to telling the OS about lost device. + * + * This timer function gets activated when the device was lost. + * This function fires once a second and then scans the port database + * for devices that are marked dead but still have a virtual target assigned. + * We decrement a counter for that port database entry, and when it hits zero, + * we tell the OS the device was lost. Timer will be stopped when the device + * comes back active or removed from the OS. + */ +static void +ocs_ldt(void *arg) +{ + ocs_fcport *fcp = arg; + taskqueue_enqueue(taskqueue_thread, &fcp->ltask); +} + +static void +ocs_ldt_task(void *arg, int pending) +{ + ocs_fcport *fcp = arg; + ocs_t *ocs = fcp->ocs; + int i, more_to_do = 0; + ocs_fc_target_t *tgt = NULL; + + for (i = 0; i < OCS_MAX_TARGETS; i++) { + tgt = &fcp->tgt[i]; + + if (tgt->state != OCS_TGT_STATE_LOST) { + continue; + } + + if ((tgt->gone_timer != 0) && (ocs->attached)){ + tgt->gone_timer -= 1; + more_to_do++; + continue; + } + + if (tgt->is_target) { + tgt->is_target = 0; + ocs_delete_target(ocs, fcp, i); + } + + tgt->state = OCS_TGT_STATE_NONE; + } + + if (more_to_do) { + callout_reset(&fcp->ldt, hz, ocs_ldt, fcp); + } else { + callout_deactivate(&fcp->ldt); + } + +} + /** * @ingroup scsi_api_initiator * @brief Delete a SCSI target node @@ -1008,8 +1154,9 @@ int32_t ocs_scsi_del_target(ocs_node_t *node, ocs_scsi_del_target_reason_e reason) { struct ocs_softc *ocs = node->ocs; - struct cam_path *cpath = NULL; ocs_fcport *fcp = NULL; + ocs_fc_target_t *tgt = NULL; + uint32_t tgt_id; fcp = node->sport->tgt_data; if (fcp == NULL) { @@ -1017,18 +1164,23 @@ ocs_scsi_del_target(ocs_node_t *node, ocs_scsi_del_tar return 0; } - if (!fcp->sim) { - device_printf(ocs->dev, "%s: calling with NULL sim\n", __func__); - return OCS_SCSI_CALL_COMPLETE; - } + tgt_id = ocs_tgt_find(fcp, node); + + tgt = &fcp->tgt[tgt_id]; + + // IF in shutdown delete target. + if(!ocs->attached) { + ocs_delete_target(ocs, fcp, tgt_id); + } else { - if (CAM_REQ_CMP == xpt_create_path(&cpath, NULL, cam_sim_path(fcp->sim), - node->instance_index, CAM_LUN_WILDCARD)) { - xpt_async(AC_LOST_DEVICE, cpath, NULL); - - xpt_free_path(cpath); + tgt->state = OCS_TGT_STATE_LOST; + tgt->gone_timer = 30; + if (!callout_active(&fcp->ldt)) { + callout_reset(&fcp->ldt, hz, ocs_ldt, fcp); + } } - return OCS_SCSI_CALL_COMPLETE; + + return 0; } /** @@ -1356,6 +1508,10 @@ static int32_t ocs_scsi_initiator_io_cb(ocs_io_t *io, } } else if (scsi_status != OCS_SCSI_STATUS_GOOD) { ccb_status = CAM_REQ_CMP_ERR; + ocs_set_ccb_status(ccb, ccb_status); + csio->ccb_h.status |= CAM_DEV_QFRZN; + xpt_freeze_devq(csio->ccb_h.path, 1); + } else { ccb_status = CAM_REQ_CMP; } @@ -1618,18 +1774,37 @@ ocs_initiator_io(struct ocs_softc *ocs, union ccb *ccb ocs_scsi_sgl_t sgl[OCS_FC_MAX_SGL]; int32_t sgl_count; - node = ocs_node_get_instance(ocs, ccb_h->target_id); + ocs_fcport *fcp = NULL; + fcp = FCPORT(ocs, cam_sim_bus(xpt_path_sim((ccb)->ccb_h.path))); + if (fcp == NULL) { + device_printf(ocs->dev, "%s: fcp is NULL\n", __func__); + return -1; + } + + if (fcp->tgt[ccb_h->target_id].state == OCS_TGT_STATE_LOST) { + device_printf(ocs->dev, "%s: device LOST %d\n", __func__, + ccb_h->target_id); + return CAM_REQUEUE_REQ; + } + + if (fcp->tgt[ccb_h->target_id].state == OCS_TGT_STATE_NONE) { + device_printf(ocs->dev, "%s: device not ready %d\n", __func__, + ccb_h->target_id); + return CAM_SEL_TIMEOUT; + } + + node = ocs_node_get_instance(ocs, fcp->tgt[ccb_h->target_id].node_id); if (node == NULL) { device_printf(ocs->dev, "%s: no device %d\n", __func__, ccb_h->target_id); - return CAM_DEV_NOT_THERE; + return CAM_SEL_TIMEOUT; } if (!node->targ) { - device_printf(ocs->dev, "%s: not target device %d\n", __func__, + device_printf(ocs->dev, "%s: not target device %d\n", __func__, ccb_h->target_id); - return CAM_DEV_NOT_THERE; - } + return CAM_SEL_TIMEOUT; + } io = ocs_scsi_io_alloc(node, OCS_SCSI_IO_ROLE_ORIGINATOR); if (io == NULL) { @@ -1666,7 +1841,7 @@ ocs_initiator_io(struct ocs_softc *ocs, union ccb *ccb csio->cdb_io.cdb_ptr: csio->cdb_io.cdb_bytes, csio->cdb_len, ocs_scsi_initiator_io_cb, ccb); - break; + break; case CAM_DIR_IN: rc = ocs_scsi_send_rd_io(node, io, ccb_h->target_lun, ccb->ccb_h.flags & CAM_CDB_POINTER ? @@ -1702,9 +1877,9 @@ ocs_fcp_change_role(struct ocs_softc *ocs, ocs_fcport ocs_vport_spec_t *vport = fcp->vport; for (was = 0, i = 0; i < (ocs->num_vports + 1); i++) { - if (FCPORT(ocs, i)->role != KNOB_ROLE_NONE) - was++; - } + if (FCPORT(ocs, i)->role != KNOB_ROLE_NONE) + was++; + } // Physical port if ((was == 0) || (vport == NULL)) { @@ -1743,7 +1918,7 @@ ocs_fcp_change_role(struct ocs_softc *ocs, ocs_fcport vport->enable_ini = (new_role & KNOB_ROLE_INITIATOR)? 1:0; vport->enable_tgt = (new_role & KNOB_ROLE_TARGET)? 1:0; - if (fcp->role != KNOB_ROLE_NONE) { + if (fcp->role != KNOB_ROLE_NONE) { return ocs_sport_vport_alloc(ocs->domain, vport); } @@ -1774,20 +1949,28 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) switch (ccb_h->func_code) { case XPT_SCSI_IO: - + if ((ccb->ccb_h.flags & CAM_CDB_POINTER) != 0) { - if ((ccb->ccb_h.flags & CAM_CDB_PHYS) != 0) { - ccb->ccb_h.status = CAM_REQ_INVALID; + if ((ccb->ccb_h.flags & CAM_CDB_PHYS) != 0) { + ccb->ccb_h.status = CAM_REQ_INVALID; xpt_done(ccb); - break; - } - } + break; + } + } rc = ocs_initiator_io(ocs, ccb); if (0 == rc) { ocs_set_ccb_status(ccb, CAM_REQ_INPROG | CAM_SIM_QUEUED); break; } else { + if (rc == CAM_REQUEUE_REQ) { + cam_freeze_devq(ccb->ccb_h.path); + cam_release_devq(ccb->ccb_h.path, RELSIM_RELEASE_AFTER_TIMEOUT, 0, 100, 0); + ccb->ccb_h.status = CAM_REQUEUE_REQ; + xpt_done(ccb); + break; + } + ccb->ccb_h.status &= ~CAM_SIM_QUEUED; if (rc > 0) { ocs_set_ccb_status(ccb, rc); @@ -1838,7 +2021,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) } cpi->hba_misc = PIM_NOBUSRESET | PIM_UNMAPPED; - cpi->hba_misc |= PIM_EXTLUNS | PIM_NOSCAN; + cpi->hba_misc |= PIM_EXTLUNS | PIM_NOSCAN; cpi->hba_inquiry = PI_TAG_ABLE; cpi->max_target = OCS_MAX_TARGETS; @@ -1875,6 +2058,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) struct ccb_trans_settings_scsi *scsi = &cts->proto_specific.scsi; struct ccb_trans_settings_fc *fc = &cts->xport_specific.fc; ocs_xport_stats_t value; + ocs_fcport *fcp = FCPORT(ocs, bus); ocs_node_t *fnode = NULL; if (ocs->ocs_xport != OCS_XPORT_FC) { @@ -1883,7 +2067,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) break; } - fnode = ocs_node_get_instance(ocs, cts->ccb_h.target_id); + fnode = ocs_node_get_instance(ocs, fcp->tgt[cts->ccb_h.target_id].node_id); if (fnode == NULL) { ocs_set_ccb_status(ccb, CAM_DEV_NOT_THERE); xpt_done(ccb); @@ -2066,8 +2250,9 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) ocs_node_t *node = NULL; ocs_io_t *io = NULL; int32_t rc = 0; + ocs_fcport *fcp = FCPORT(ocs, bus); - node = ocs_node_get_instance(ocs, ccb_h->target_id); + node = ocs_node_get_instance(ocs, fcp->tgt[ccb_h->target_id].node_id); if (node == NULL) { device_printf(ocs->dev, "%s: no device %d\n", __func__, ccb_h->target_id); @@ -2096,7 +2281,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) ocs_set_ccb_status(ccb, CAM_REQ_CMP); } - if (node->fcp2device) { + if (node->fcp2device) { ocs_reset_crn(node, ccb_h->target_lun); } @@ -2358,7 +2543,7 @@ static void ocs_abort_atio(struct ocs_softc *ocs, union ccb *ccb) { - ocs_io_t *aio = NULL; + ocs_io_t *aio = NULL; ocs_tgt_resource_t *trsrc = NULL; uint32_t status = CAM_REQ_INVALID; struct ccb_hdr *cur = NULL; @@ -2449,12 +2634,13 @@ static uint32_t ocs_abort_initiator_io(struct ocs_softc *ocs, union ccb *accb) { - ocs_node_t *node = NULL; - ocs_io_t *io = NULL; + ocs_node_t *node = NULL; + ocs_io_t *io = NULL; int32_t rc = 0; struct ccb_scsiio *csio = &accb->csio; - node = ocs_node_get_instance(ocs, accb->ccb_h.target_id); + ocs_fcport *fcp = FCPORT(ocs, cam_sim_bus(xpt_path_sim((accb)->ccb_h.path))); + node = ocs_node_get_instance(ocs, fcp->tgt[accb->ccb_h.target_id].node_id); if (node == NULL) { device_printf(ocs->dev, "%s: no device %d\n", __func__, accb->ccb_h.target_id); Modified: stable/11/sys/dev/ocs_fc/ocs_pci.c ============================================================================== --- stable/11/sys/dev/ocs_fc/ocs_pci.c Mon Feb 11 15:51:28 2019 (r344013) +++ stable/11/sys/dev/ocs_fc/ocs_pci.c Mon Feb 11 16:28:04 2019 (r344014) @@ -577,6 +577,8 @@ ocs_device_detach(ocs_t *ocs) return -1; } + ocs->attached = FALSE; + rc = ocs_xport_control(ocs->xport, OCS_XPORT_SHUTDOWN); if (rc) { ocs_log_err(ocs, "%s: Transport Shutdown timed out\n", __func__); @@ -599,8 +601,6 @@ ocs_device_detach(ocs_t *ocs) bus_dma_tag_destroy(ocs->dmat); ocs_xport_free(ocs->xport); ocs->xport = NULL; - - ocs->attached = FALSE; } Modified: stable/11/sys/dev/ocs_fc/ocs_xport.c ============================================================================== --- stable/11/sys/dev/ocs_fc/ocs_xport.c Mon Feb 11 15:51:28 2019 (r344013) +++ stable/11/sys/dev/ocs_fc/ocs_xport.c Mon Feb 11 16:28:04 2019 (r344014) @@ -251,8 +251,10 @@ ocs_xport_attach(ocs_xport_t *xport) ocs_hw_get(&ocs->hw, OCS_HW_MAX_NODES, &max_remote_nodes); - rc = ocs_node_create_pool(ocs, (ocs->max_remote_nodes) ? - ocs->max_remote_nodes : max_remote_nodes); + if (!ocs->max_remote_nodes) + ocs->max_remote_nodes = max_remote_nodes; + + rc = ocs_node_create_pool(ocs, ocs->max_remote_nodes); if (rc) { ocs_log_err(ocs, "Can't allocate node pool\n"); goto ocs_xport_attach_cleanup; From owner-svn-src-all@freebsd.org Mon Feb 11 16:31:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5DC7614DC4CC; Mon, 11 Feb 2019 16:31:16 +0000 (UTC) (envelope-from cracauer@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0194475EC7; Mon, 11 Feb 2019 16:31:16 +0000 (UTC) (envelope-from cracauer@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E989A2773; Mon, 11 Feb 2019 16:31:15 +0000 (UTC) (envelope-from cracauer@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BGVFsW068577; Mon, 11 Feb 2019 16:31:15 GMT (envelope-from cracauer@FreeBSD.org) Received: (from cracauer@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BGVFpp068576; Mon, 11 Feb 2019 16:31:15 GMT (envelope-from cracauer@FreeBSD.org) Message-Id: <201902111631.x1BGVFpp068576@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cracauer set sender to cracauer@FreeBSD.org using -f From: Martin Cracauer Date: Mon, 11 Feb 2019 16:31:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344015 - head/usr.sbin/mountd X-SVN-Group: head X-SVN-Commit-Author: cracauer X-SVN-Commit-Paths: head/usr.sbin/mountd X-SVN-Commit-Revision: 344015 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0194475EC7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:31:16 -0000 Author: cracauer Date: Mon Feb 11 16:31:15 2019 New Revision: 344015 URL: https://svnweb.freebsd.org/changeset/base/344015 Log: Bump .Dd for today's edit. Thank you Enji Cooper Modified: head/usr.sbin/mountd/exports.5 Modified: head/usr.sbin/mountd/exports.5 ============================================================================== --- head/usr.sbin/mountd/exports.5 Mon Feb 11 16:28:04 2019 (r344014) +++ head/usr.sbin/mountd/exports.5 Mon Feb 11 16:31:15 2019 (r344015) @@ -28,7 +28,7 @@ .\" @(#)exports.5 8.3 (Berkeley) 3/29/95 .\" $FreeBSD$ .\" -.Dd May 20, 2017 +.Dd Feb 11, 2019 .Dt EXPORTS 5 .Os .Sh NAME From owner-svn-src-all@freebsd.org Mon Feb 11 16:31:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 35AAF14DC524; Mon, 11 Feb 2019 16:31:40 +0000 (UTC) (envelope-from cracauer@cons.org) Received: from koef.zs64.net (koef.zs64.net [IPv6:2a00:14b0:4200:32e0::1e6]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B46F476054; Mon, 11 Feb 2019 16:31:39 +0000 (UTC) (envelope-from cracauer@cons.org) Received: from koef.zs64.net (koef.zs64.net [212.12.50.230]) by 0ons.org (8.15.2/8.15.2) with ESMTP id x1BGVaZs050923; Mon, 11 Feb 2019 16:31:36 GMT (envelope-from cracauer@koef.zs64.net) Received: (from cracauer@localhost) by koef.zs64.net (8.15.2/8.15.2/Submit) id x1BGVajJ050922; Mon, 11 Feb 2019 11:31:36 -0500 (EST) (envelope-from cracauer) Date: Mon, 11 Feb 2019 11:31:36 -0500 From: Martin Cracauer To: Enji Cooper Cc: Martin Cracauer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344013 - head/usr.sbin/mountd Message-ID: <20190211163136.GA48181@cons.org> References: <201902111551.x1BFpS2T050748@repo.freebsd.org> <7658F8CB-99CE-4632-8576-903035BBE136@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <7658F8CB-99CE-4632-8576-903035BBE136@gmail.com> User-Agent: Mutt/1.11.2 (2019-01-07) X-Rspamd-Queue-Id: B46F476054 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:31:40 -0000 Enji Cooper wrote on Mon, Feb 11, 2019 at 08:16:07AM -0800: > Hi Martin, > > > On Feb 11, 2019, at 07:51, Martin Cracauer wrote: > > > > Author: cracauer > > Date: Mon Feb 11 15:51:28 2019 > > New Revision: 344013 > > URL: https://svnweb.freebsd.org/changeset/base/344013 > > > > Log: > > Clarify NFSv4 /etc/exports semantics, with working example. > > The existing wording has been confusing users for years. > > > > Modified: > > head/usr.sbin/mountd/exports.5 > > > > Modified: head/usr.sbin/mountd/exports.5 > > ============================================================================== > > Two things: > > 1. .Dd needs to be bumped for the content change. Thank you. > 2. Did you plan on MFCing this? I do but I wanted to wait for corrections to my manpage editing skills :-) Martin -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer http://www.cons.org/cracauer/ From owner-svn-src-all@freebsd.org Mon Feb 11 16:45:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5146514DCF4B; Mon, 11 Feb 2019 16:45:51 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ABAF076DF6; Mon, 11 Feb 2019 16:45:50 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1BGjkSA071655; Mon, 11 Feb 2019 08:45:46 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1BGjk0T071654; Mon, 11 Feb 2019 08:45:46 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902111645.x1BGjk0T071654@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344013 - head/usr.sbin/mountd In-Reply-To: <201902111551.x1BFpS2T050748@repo.freebsd.org> To: Martin Cracauer Date: Mon, 11 Feb 2019 08:45:46 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: ABAF076DF6 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:45:51 -0000 > Author: cracauer > Date: Mon Feb 11 15:51:28 2019 > New Revision: 344013 > URL: https://svnweb.freebsd.org/changeset/base/344013 > > Log: > Clarify NFSv4 /etc/exports semantics, with working example. > The existing wording has been confusing users for years. > > Modified: > head/usr.sbin/mountd/exports.5 > > Modified: head/usr.sbin/mountd/exports.5 > ============================================================================== > --- head/usr.sbin/mountd/exports.5 Mon Feb 11 15:38:05 2019 (r344012) > +++ head/usr.sbin/mountd/exports.5 Mon Feb 11 15:51:28 2019 (r344013) > @@ -498,6 +498,40 @@ and any client within the 131.104.48 subnet is permitt > operations on the server, so long as valid Kerberos credentials are provided. > The machine grumpy.cis.uoguelph.ca is permitted to perform NFSv4 state > operations on the server using AUTH_SYS credentials, as well as Kerberos ones. > +.Pp > +In the following example some directories are exported as NFSv3 and NFSv4: > +.Bd -literal -offset indent > +V4: /wingsdl/nfsv4 > +/wingsdl/nfsv4/usr-ports -maproot=root -network 172.16.0.0 -mask 255.255.0.0 > +/wingsdl/nfsv4/clasper -maproot=root clasper > +.Ed > +.Pp > +Only one V4: line is needed or allowed to declare where NFSv4 is > +rooted. The other lines declare specific exported directories with Line break ^ here > +their absolute paths given in /etc/exports. > +.Pp > +The exported directories' paths are used for both v3 and v4. > +However, they are interpreted differently for v3 and v4. A client Line break ^ here > +mount command for usr-ports would use the server-absolute name when > +using nfsv3: > +.Bd -literal -offset indent > +mount server:/wingsdl/nfsv4/usr-ports /mnt/tmp > +.Ed > +.Pp > +A mount command using NFSv4 would use the path relative to the NFSv4 > +root: > +.Bd -literal -offset indent > +mount server:/usr-ports /mnt/tmp > +.Ed > +.Pp > +This also differentiates which version you want if the client can do > +both v3 and v4. The former will only ever do a v3 mount and the Line break ^ here > +latter will only ever do a v4 mount. > +.Pp > +Note that due to different mount behavior between NFSv3 and NFSv4 a > +NFSv4 mount request for a directory that the client does not have > +permission for will succeed and read/write access will fail > +afterwards, whereas NFSv3 rejects the mount request. > .Sh SEE ALSO > .Xr nfsv4 4 , > .Xr netgroup 5 , > > When writting troff sentences should always start on a new line. And it is encourage to start each sentence fragment on a new line too. Thanks, -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Mon Feb 11 16:48:28 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4F8B514DD072; Mon, 11 Feb 2019 16:48:28 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CDA9176FD2; Mon, 11 Feb 2019 16:48:27 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1BGmMbE071668; Mon, 11 Feb 2019 08:48:22 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1BGmMNT071667; Mon, 11 Feb 2019 08:48:22 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902111648.x1BGmMNT071667@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344013 - head/usr.sbin/mountd In-Reply-To: <20190211163136.GA48181@cons.org> To: Martin Cracauer Date: Mon, 11 Feb 2019 08:48:22 -0800 (PST) CC: Enji Cooper , Martin Cracauer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: CDA9176FD2 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:48:28 -0000 > Enji Cooper wrote on Mon, Feb 11, 2019 at 08:16:07AM -0800: > > Hi Martin, > > > > > On Feb 11, 2019, at 07:51, Martin Cracauer wrote: > > > > > > Author: cracauer > > > Date: Mon Feb 11 15:51:28 2019 > > > New Revision: 344013 > > > URL: https://svnweb.freebsd.org/changeset/base/344013 > > > > > > Log: > > > Clarify NFSv4 /etc/exports semantics, with working example. > > > The existing wording has been confusing users for years. > > > > > > Modified: > > > head/usr.sbin/mountd/exports.5 > > > > > > Modified: head/usr.sbin/mountd/exports.5 > > > ============================================================================== > > > > Two things: > > > > 1. .Dd needs to be bumped for the content change. > > Thank you. > > > 2. Did you plan on MFCing this? > > I do but I wanted to wait for corrections to my manpage editing skills > :-) Might I suggest a phabricator review at http://reviews.freebsd.org as a more effective means than using commit and feedback from commiters? I am freely open to being tagged on any review of any sort, if it is outside of my skill set I simply resign as a reviewer. > Martin > -- > %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% > Martin Cracauer http://www.cons.org/cracauer/ -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Mon Feb 11 16:57:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5CA1C14DD479; Mon, 11 Feb 2019 16:57:15 +0000 (UTC) (envelope-from tuexen@fh-muenster.de) Received: from drew.franken.de (mail-n.franken.de [193.175.24.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.franken.de", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5F3CB7775E; Mon, 11 Feb 2019 16:57:13 +0000 (UTC) (envelope-from tuexen@fh-muenster.de) Received: from [IPv6:2003:cd:6f38:4a00:70f7:84a1:ce7a:c4ea] (p200300CD6F384A0070F784A1CE7AC4EA.dip0.t-ipconnect.de [IPv6:2003:cd:6f38:4a00:70f7:84a1:ce7a:c4ea]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTPSA id D3C56721E2830; Mon, 11 Feb 2019 17:57:04 +0100 (CET) From: Michael Tuexen Message-Id: Content-Type: multipart/signed; boundary="Apple-Mail=_4CCCA35D-276C-4788-9719-560462451D88"; protocol="application/pkcs7-signature"; micalg=sha-256 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r343949 - in head/sys: amd64/conf arm64/conf Date: Mon, 11 Feb 2019 17:57:04 +0100 In-Reply-To: <201902100754.x1A7skZo030474@repo.freebsd.org> Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org To: Conrad Meyer References: <201902100754.x1A7skZo030474@repo.freebsd.org> X-Mailer: Apple Mail (2.3445.102.3) X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=disabled version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on mail-n.franken.de X-Rspamd-Queue-Id: 5F3CB7775E X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-0.89 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; HAS_ATTACHMENT(0.00)[]; MX_GOOD(-0.01)[mx3.fh-muenster.de,mx2.fh-muenster.de,mx1.fh-muenster.de,mx4.fh-muenster.de]; RCVD_IN_DNSWL_LOW(-0.10)[27.24.175.193.list.dnswl.org : 127.0.5.1]; IP_SCORE(-0.09)[ipnet: 193.174.0.0/15(-0.38), asn: 680(-0.07), country: DE(-0.01)]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:680, ipnet:193.174.0.0/15, country:DE]; MIME_TRACE(0.00)[0:+,1:+]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; SIGNED_SMIME(-2.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-0.54)[-0.538,0]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; DMARC_NA(0.00)[fh-muenster.de]; RCPT_COUNT_THREE(0.00)[4]; AUTH_NA(1.00)[]; NEURAL_SPAM_MEDIUM(0.43)[0.432,0]; NEURAL_SPAM_SHORT(0.12)[0.121,0]; R_SPF_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 16:57:15 -0000 --Apple-Mail=_4CCCA35D-276C-4788-9719-560462451D88 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On 10. Feb 2019, at 08:54, Conrad Meyer wrote: >=20 > Author: cem > Date: Sun Feb 10 07:54:46 2019 > New Revision: 343949 > URL: https://svnweb.freebsd.org/changeset/base/343949 >=20 > Log: > Revert r343713 temporarily >=20 > The COVERAGE option breaks xtoolchain-gcc GENERIC kernel early boot > extremely badly and hasn't been fixed for the ~week since it was = committed. This should be fixed by: https://svnweb.freebsd.org/changeset/base/344012 Best regards Michael > Please enable for GENERIC only when it doesn't do that. >=20 > Related fallout reported by: lwhsu, tuexen (pr 235611) >=20 > Modified: > head/sys/amd64/conf/GENERIC > head/sys/arm64/conf/GENERIC >=20 > Modified: head/sys/amd64/conf/GENERIC > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/amd64/conf/GENERIC Sun Feb 10 05:42:01 2019 = (r343948) > +++ head/sys/amd64/conf/GENERIC Sun Feb 10 07:54:46 2019 = (r343949) > @@ -102,8 +102,8 @@ options MALLOC_DEBUG_MAXZONES=3D8 # = Separate malloc(9)=20 > options VERBOSE_SYSINIT=3D0 # Support debug.verbose_sysinit, = off by default >=20 > # Kernel Sanitizers > -options COVERAGE # Generic kernel coverage. Used = by KCOV > -options KCOV # Kernel Coverage Sanitizer > +#options COVERAGE # Generic kernel coverage. Used = by KCOV > +#options KCOV # Kernel Coverage Sanitizer > # Warning: KUBSAN can result in a kernel too large for loader to load > #options KUBSAN # Kernel Undefined Behavior = Sanitizer >=20 >=20 > Modified: head/sys/arm64/conf/GENERIC > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/arm64/conf/GENERIC Sun Feb 10 05:42:01 2019 = (r343948) > +++ head/sys/arm64/conf/GENERIC Sun Feb 10 07:54:46 2019 = (r343949) > @@ -94,8 +94,8 @@ options USB_DEBUG # enable debug = msgs > options VERBOSE_SYSINIT=3D0 # Support debug.verbose_sysinit, = off by default >=20 > # Kernel Sanitizers > -options COVERAGE # Generic kernel coverage. Used = by KCOV > -options KCOV # Kernel Coverage Sanitizer > +#options COVERAGE # Generic kernel coverage. Used = by KCOV > +#options KCOV # Kernel Coverage Sanitizer > # Warning: KUBSAN can result in a kernel too large for loader to load > #options KUBSAN # Kernel Undefined Behavior = Sanitizer >=20 >=20 --Apple-Mail=_4CCCA35D-276C-4788-9719-560462451D88 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEJAw ggTVMIIDvaADAgECAghQTsb1PRG0ZDANBgkqhkiG9w0BAQsFADBxMQswCQYDVQQGEwJERTEcMBoG A1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRl cjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNMTQwNzIyMTIwODI2WhcN MTkwNzA5MjM1OTAwWjBaMQswCQYDVQQGEwJERTETMBEGA1UEChMKREZOLVZlcmVpbjEQMA4GA1UE CxMHREZOLVBLSTEkMCIGA1UEAxMbREZOLVZlcmVpbiBQQ0EgR2xvYmFsIC0gRzAxMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6ZvDZ4X5Da71jVTDllA1PWLpbkztlNcAW5UidNQg6zSP 1uzAMQQLmYHiphTSUqAoI4SLdIkEXlvg4njBeMsWyyg1OXstkEXQ7aAAeny/Sg4bAMOG6VwrMRF7 DPOCJEOMHDiLamgAmu7cT3ir0sYTm3at7t4m6O8Br3QPwQmi9mvOvdPNFDBP9eXjpMhim4IaAycw DQJlYE3t0QkjKpY1WCfTdsZxtpAdxO3/NYZ9bzOz2w/FEcKKg6GUXUFr2NIQ9Uz9ylGs2b3vkoO7 2uuLFlZWQ8/h1RM9ph8nMM1JVNvJEzSacXXFbOqnC5j5IZ0nrz6jOTlIaoytyZn7wxLyvQIDAQAB o4IBhjCCAYIwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRJt8bP6D0ff+pEexMp9/EKcD7eZDAf BgNVHSMEGDAWgBQxw3kbuvVT1xfgiXotF2wKsyudMzASBgNVHRMBAf8ECDAGAQH/AgECMGIGA1Ud IARbMFkwEQYPKwYBBAGBrSGCLAEBBAICMBEGDysGAQQBga0hgiwBAQQDADARBg8rBgEEAYGtIYIs AQEEAwEwDwYNKwYBBAGBrSGCLAEBBDANBgsrBgEEAYGtIYIsHjA+BgNVHR8ENzA1MDOgMaAvhi1o dHRwOi8vcGtpMDMzNi50ZWxlc2VjLmRlL3JsL0RUX1JPT1RfQ0FfMi5jcmwweAYIKwYBBQUHAQEE bDBqMCwGCCsGAQUFBzABhiBodHRwOi8vb2NzcDAzMzYudGVsZXNlYy5kZS9vY3NwcjA6BggrBgEF BQcwAoYuaHR0cDovL3BraTAzMzYudGVsZXNlYy5kZS9jcnQvRFRfUk9PVF9DQV8yLmNlcjANBgkq hkiG9w0BAQsFAAOCAQEAYyAo/ZwhhnK+OUZZOTIlvKkBmw3Myn1BnIZtCm4ssxNZdbEzkhthJxb/ w7LVNYL7hCoBSb1mu2YvssIGXW4/buMBWlvKQ2NclbbhMacf1QdfTeZlgk4y+cN8ekvNTVx07iHy dQLsUj7SyWrTkCNuSWc1vn9NVqTszC/Pt6GXqHI+ybxA1lqkCD3WvILDt7cyjrEsjmpttzUCGc/1 OURYY6ckABCwu/xOr24vOLulV0k/2G5QbyyXltwdRpplic+uzPLl2Z9Tsz6hL5Kp2AvGhB8Exuse 6J99tXulAvEkxSRjETTMWpMgKnmIOiVCkKllO3yG0xIVIyn8LNrMOVtUFzCCBaIwggSKoAMCAQIC BxekJKEJSDMwDQYJKoZIhvcNAQELBQAwWjELMAkGA1UEBhMCREUxEzARBgNVBAoTCkRGTi1WZXJl aW4xEDAOBgNVBAsTB0RGTi1QS0kxJDAiBgNVBAMTG0RGTi1WZXJlaW4gUENBIEdsb2JhbCAtIEcw MTAeFw0xNDA1MjcxNDU0MDlaFw0xOTA3MDkyMzU5MDBaMIHGMQswCQYDVQQGEwJERTEcMBoGA1UE CBMTTm9yZHJoZWluLVdlc3RmYWxlbjERMA8GA1UEBxMITXVlbnN0ZXIxIDAeBgNVBAoTF0ZhY2ho b2Noc2NodWxlIE11ZW5zdGVyMSMwIQYDVQQLExpEYXRlbnZlcmFyYmVpdHVuZ3N6ZW50cmFsZTEd MBsGA1UEAxMURkggTXVlbnN0ZXIgQ0EgLSBHMDExIDAeBgkqhkiG9w0BCQEWEWNhQGZoLW11ZW5z dGVyLmRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuHlsrvBs7CL9IqMH9r//QU9E pghTV/3skHuQZ3DpNY+lyJWOW5zbtUubgXt7lYHpIE4d4CclTZWqCHwoAI6gqzSSGjUKuX6/0ui/ LhXmlDvCBfwuER+T+3/R59hlLnhI5iYYPQiNywQIa3wJhBLTZrlXw8nDdjI54MAzcVDUX7l21sbo ZIA6idM7SXmshxoRQ6xsfPHskrceNMcvtHNDhVnVscwRUJQUR55fs0X7Y93PasugWPv3xmgNr1da Cq94eV+nslNU/GJaT9TQ3uG8pagLXl9NbDNkHIrvFAD5zXO0m/d00I4QhUVQyEtwnTegDqcM+WFh JXensgnZhWe6bwIDAQABo4IB/jCCAfowEgYDVR0TAQH/BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMC AQYwEQYDVR0gBAowCDAGBgRVHSAAMB0GA1UdDgQWBBQK81u85DGA1jVCiabTw8833tHf1zAfBgNV HSMEGDAWgBRJt8bP6D0ff+pEexMp9/EKcD7eZDAcBgNVHREEFTATgRFjYUBmaC1tdWVuc3Rlci5k ZTCBiAYDVR0fBIGAMH4wPaA7oDmGN2h0dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3Qt Y2EvcHViL2NybC9jYWNybC5jcmwwPaA7oDmGN2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZ2xvYmFs LXJvb3QtY2EvcHViL2NybC9jYWNybC5jcmwwgdcGCCsGAQUFBwEBBIHKMIHHMDMGCCsGAQUFBzAB hidodHRwOi8vb2NzcC5wY2EuZGZuLmRlL09DU1AtU2VydmVyL09DU1AwRwYIKwYBBQUHMAKGO2h0 dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJvb3QtY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0 MEcGCCsGAQUFBzAChjtodHRwOi8vY2RwMi5wY2EuZGZuLmRlL2dsb2JhbC1yb290LWNhL3B1Yi9j YWNlcnQvY2FjZXJ0LmNydDANBgkqhkiG9w0BAQsFAAOCAQEA3kcDNdZKb7kSD7s1ly2qa/2QbQe+ ld3LhZeOcfysdLtN8oweBmgT3MYoZ+D9c+SoUWJAwTKPB15DoGy+fWhelXTpQrqxIGb4ISr1JCjg slnmMUva0xjwZGxojZ9gE1bi18xfKw3+dMpwCLt6LbLTjr/tyH6otacwr2tZzuuJIUAORnefwTcr vmB21n/BEQH/ZXruWu8lSO3L9YAmQB6ViaZFCpn2sMmOLACdoWxmUQb3QAjsa327jHUjsz53k9q5 Zrx/g+zOg5s1Wmy2JOlLQMUIZXXf0/6rB5Fr2llx7dBG/Uk7NhZdNy7OzNzci0C4Wnkd8rDVEWHG hH2gfpcTfjCCBg0wggT1oAMCAQICBxuZiHQ3saMwDQYJKoZIhvcNAQELBQAwgcYxCzAJBgNVBAYT AkRFMRwwGgYDVQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEgMB4G A1UEChMXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0dW5n c3plbnRyYWxlMR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJARYR Y2FAZmgtbXVlbnN0ZXIuZGUwHhcNMTYwNzA0MDcwNjEzWhcNMTkwNzA0MDcwNjEzWjB8MQswCQYD VQQGEwJERTEgMB4GA1UECgwXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxMjAwBgNVBAsMKUZhY2hi ZXJlaWNoIEVsZWt0cm90ZWNobmlrIHVuZCBJbmZvcm1hdGlrMRcwFQYDVQQDDA5NaWNoYWVsIFR1 ZXhlbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMyaGlBt2ZtuF8QP8zYNrGxXC+es PMajIPl+hu1LGHnN2BJ3J5ZMN44BOZw3n6LO1FaAgO8D4xU4/AELecX6VxJZ2zOOSD8uTYO4OnUu 24hkjFUQAj13tT644AKUQMMBpgj7wC52V5Jij+mZX/t1S38/WFiCGnirt4xTNi5OmN4K+VNZfG4x 0msDqFjJX70rF1y09/Mylu1M/Y0tu/I9DqhwDQT4LBOvyyaAlhSJ8Jb8m8YTt5xlOzrXlBmj4pKs 74y7C2IKRw4tFozGX1cf1LVEs2eBCb5iUwXrlcMipwm62sJ38GD00EOlRNTpAM5rDAcgWxMCffek bRv/01whtOkCAwEAAaOCAkcwggJDMEAGA1UdIAQ5MDcwEQYPKwYBBAGBrSGCLAEBBAMFMBEGDysG AQQBga0hgiwCAQQDATAPBg0rBgEEAYGtIYIsAQEEMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgXg MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAdBgNVHQ4EFgQU0B2vaoSoEmYAggD04WZF 2hGif3UwHwYDVR0jBBgwFoAUCvNbvOQxgNY1Qomm08PPN97R39cwIAYDVR0RBBkwF4EVdHVleGVu QGZoLW11ZW5zdGVyLmRlMIGIBgNVHR8EgYAwfjA9oDugOYY3aHR0cDovL2NkcDEucGNhLmRmbi5k ZS9maC1tdWVuc3Rlci1jYS9wdWIvY3JsL2NhY3JsLmNybDA9oDugOYY3aHR0cDovL2NkcDIucGNh LmRmbi5kZS9maC1tdWVuc3Rlci1jYS9wdWIvY3JsL2NhY3JsLmNybDCB1wYIKwYBBQUHAQEEgcow gccwMwYIKwYBBQUHMAGGJ2h0dHA6Ly9vY3NwLnBjYS5kZm4uZGUvT0NTUC1TZXJ2ZXIvT0NTUDBH BggrBgEFBQcwAoY7aHR0cDovL2NkcDEucGNhLmRmbi5kZS9maC1tdWVuc3Rlci1jYS9wdWIvY2Fj ZXJ0L2NhY2VydC5jcnQwRwYIKwYBBQUHMAKGO2h0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZmgtbXVl bnN0ZXItY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0MA0GCSqGSIb3DQEBCwUAA4IBAQBI9v+seJM6 AlSIrmmpopz6zh8QAsqGLJkkY2D0KYFucUY/xZaJTtZxvmWddbKk2903Qhg+vZKOf87PHhip7/4t FSwhxYNSS36WsRJTeUa0f3KkSa28yrIRfWlJATgxfL5X/QQnopjCt34n4221kcsR7LHxBAn37ow+ /2L7WjWDDuOkaM9/ZSCtrN+yFRat1eUVs1Hk7sKT/bfJTsYqzovXitjmCP3YdB40dkuQ6/ZzEdXT bpa4c45RcRnPqKXnxknK0UfRHNHqk15W7dUPVMzSGFUvjhmWPP2wW6a8F1U5sEqfHcoBFC5CGjGy 7Gk2luk3obi/KLrDyZC+dkjhDYEpMYIEOTCCBDUCAQEwgdIwgcYxCzAJBgNVBAYTAkRFMRwwGgYD VQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEgMB4GA1UEChMXRmFj aGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0dW5nc3plbnRyYWxl MR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJARYRY2FAZmgtbXVl bnN0ZXIuZGUCBxuZiHQ3saMwDQYJYIZIAWUDBAIBBQCgggI3MBgGCSqGSIb3DQEJAzELBgkqhkiG 9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE5MDIxMTE2NTcwNFowLwYJKoZIhvcNAQkEMSIEIHrFFTmD 69g6vgXe6ySw+Shy255r1hSg5naMXFVP5Ax5MIHjBgkrBgEEAYI3EAQxgdUwgdIwgcYxCzAJBgNV BAYTAkRFMRwwGgYDVQQIExNOb3JkcmhlaW4tV2VzdGZhbGVuMREwDwYDVQQHEwhNdWVuc3RlcjEg MB4GA1UEChMXRmFjaGhvY2hzY2h1bGUgTXVlbnN0ZXIxIzAhBgNVBAsTGkRhdGVudmVyYXJiZWl0 dW5nc3plbnRyYWxlMR0wGwYDVQQDExRGSCBNdWVuc3RlciBDQSAtIEcwMTEgMB4GCSqGSIb3DQEJ ARYRY2FAZmgtbXVlbnN0ZXIuZGUCBxuZiHQ3saMwgeUGCyqGSIb3DQEJEAILMYHVoIHSMIHGMQsw CQYDVQQGEwJERTEcMBoGA1UECBMTTm9yZHJoZWluLVdlc3RmYWxlbjERMA8GA1UEBxMITXVlbnN0 ZXIxIDAeBgNVBAoTF0ZhY2hob2Noc2NodWxlIE11ZW5zdGVyMSMwIQYDVQQLExpEYXRlbnZlcmFy YmVpdHVuZ3N6ZW50cmFsZTEdMBsGA1UEAxMURkggTXVlbnN0ZXIgQ0EgLSBHMDExIDAeBgkqhkiG 9w0BCQEWEWNhQGZoLW11ZW5zdGVyLmRlAgcbmYh0N7GjMA0GCSqGSIb3DQEBAQUABIIBALo4WUEU ebOd2gvAV6fi5IcmXuEK2cygYXpV9ia/zTgr3HRruzXatYh2LvZX2MiAFJy5S+Z3vrVASZkARMvk aPiWtcWG49M7rBgKiiRh4wD8xZf71B+vepweId647N0+HtuC0pSVZPDcU7vTUJd4ki5OXuIiUvoC owQKsV+9aTP4GaPRd6DGuH2fwXTSmxEF5DQjT3zXsmhouGyVLy83x+M+tSEhkZCbfcy9DeML5WIi SKusTrge+/WdYzPXtVfYYEgS7xHQXi2IFa9BFmvPn0ebkNq9duSWsy11946bKT/pT6VeHjrfTsn7 YNgcTDTeHvcv3+M2klO02hHltxVy9eIAAAAAAAA= --Apple-Mail=_4CCCA35D-276C-4788-9719-560462451D88-- From owner-svn-src-all@freebsd.org Mon Feb 11 17:47:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EEBAA14DEC92; Mon, 11 Feb 2019 17:47:22 +0000 (UTC) (envelope-from bcr@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8C93881B2A; Mon, 11 Feb 2019 17:47:22 +0000 (UTC) (envelope-from bcr@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7F2DC33BD; Mon, 11 Feb 2019 17:47:22 +0000 (UTC) (envelope-from bcr@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BHlM2Y009744; Mon, 11 Feb 2019 17:47:22 GMT (envelope-from bcr@FreeBSD.org) Received: (from bcr@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BHlMuD009743; Mon, 11 Feb 2019 17:47:22 GMT (envelope-from bcr@FreeBSD.org) Message-Id: <201902111747.x1BHlMuD009743@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bcr set sender to bcr@FreeBSD.org using -f From: Benedict Reuschling Date: Mon, 11 Feb 2019 17:47:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344016 - stable/12/usr.sbin/pw X-SVN-Group: stable-12 X-SVN-Commit-Author: bcr X-SVN-Commit-Paths: stable/12/usr.sbin/pw X-SVN-Commit-Revision: 344016 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8C93881B2A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 17:47:23 -0000 Author: bcr (doc committer) Date: Mon Feb 11 17:47:22 2019 New Revision: 344016 URL: https://svnweb.freebsd.org/changeset/base/344016 Log: MFC r343921: Add an example to pw.8 about how to add an existing user to a group. Instead of using pw to modify group membership, users often edit /etc/group by hand, which is discouraged. Provide an example of adding a user to the wheel group, which is a common use case. I'm using a different user here as in the previous example as that deleted the user (although the examples don't necessarily have to be followed in order). Reviewed by: rgrimes,0mp Approved by: 0mp Differential Revision: https://reviews.freebsd.org/D19123 Modified: stable/12/usr.sbin/pw/pw.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/pw/pw.8 ============================================================================== --- stable/12/usr.sbin/pw/pw.8 Mon Feb 11 16:31:15 2019 (r344015) +++ stable/12/usr.sbin/pw/pw.8 Mon Feb 11 17:47:22 2019 (r344016) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 10, 2017 +.Dd February 8, 2019 .Dt PW 8 .Os .Sh NAME @@ -978,6 +978,12 @@ pw useradd -n gsmith -c "Glurmo Smith" -s /bin/csh -m Delete the gsmith user and their home directory, including contents. .Bd -literal -offset indent pw userdel -n gsmith -r +.Ed +.Pp +Add the existing user jsmith to the wheel group, +in addition to the other groups jsmith is already a member of. +.Bd -literal -offset indent +pw groupmod wheel -m jsmith .Ed .Sh EXIT STATUS The From owner-svn-src-all@freebsd.org Mon Feb 11 17:48:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 07DAC14DED93; Mon, 11 Feb 2019 17:48:53 +0000 (UTC) (envelope-from bcr@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 994F681DB7; Mon, 11 Feb 2019 17:48:52 +0000 (UTC) (envelope-from bcr@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8B8EB33BE; Mon, 11 Feb 2019 17:48:52 +0000 (UTC) (envelope-from bcr@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BHmqU5009847; Mon, 11 Feb 2019 17:48:52 GMT (envelope-from bcr@FreeBSD.org) Received: (from bcr@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BHmqht009846; Mon, 11 Feb 2019 17:48:52 GMT (envelope-from bcr@FreeBSD.org) Message-Id: <201902111748.x1BHmqht009846@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bcr set sender to bcr@FreeBSD.org using -f From: Benedict Reuschling Date: Mon, 11 Feb 2019 17:48:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344017 - stable/11/usr.sbin/pw X-SVN-Group: stable-11 X-SVN-Commit-Author: bcr X-SVN-Commit-Paths: stable/11/usr.sbin/pw X-SVN-Commit-Revision: 344017 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 994F681DB7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.94)[-0.939,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 17:48:53 -0000 Author: bcr (doc committer) Date: Mon Feb 11 17:48:52 2019 New Revision: 344017 URL: https://svnweb.freebsd.org/changeset/base/344017 Log: MFC r343921: Add an example to pw.8 about how to add an existing user to a group. Instead of using pw to modify group membership, users often edit /etc/group by hand, which is discouraged. Provide an example of adding a user to the wheel group, which is a common use case. I'm using a different user here as in the previous example as that deleted the user (although the examples don't necessarily have to be followed in order). Reviewed by: rgrimes,0mp Approved by: 0mp Differential Revision: https://reviews.freebsd.org/D19123 Modified: stable/11/usr.sbin/pw/pw.8 Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/pw/pw.8 ============================================================================== --- stable/11/usr.sbin/pw/pw.8 Mon Feb 11 17:47:22 2019 (r344016) +++ stable/11/usr.sbin/pw/pw.8 Mon Feb 11 17:48:52 2019 (r344017) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 10, 2017 +.Dd February 8, 2019 .Dt PW 8 .Os .Sh NAME @@ -973,6 +973,12 @@ is created if it does not already exist. Finally, a random password is generated and displayed: .Bd -literal -offset indent pw useradd -n gsmith -c "Glurmo Smith" -s /bin/csh -m -w random +.Ed +.Pp +Add the existing user jsmith to the wheel group, +in addition to the other groups jsmith is already a member of. +.Bd -literal -offset indent +pw groupmod wheel -m jsmith .Ed .Sh EXIT STATUS The From owner-svn-src-all@freebsd.org Mon Feb 11 18:10:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A713414DF812; Mon, 11 Feb 2019 18:10:56 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 54E6D82D2F; Mon, 11 Feb 2019 18:10:56 +0000 (UTC) (envelope-from ae@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 494243919; Mon, 11 Feb 2019 18:10:56 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BIAuxm020498; Mon, 11 Feb 2019 18:10:56 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BIAut5020497; Mon, 11 Feb 2019 18:10:56 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201902111810.x1BIAut5020497@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Mon, 11 Feb 2019 18:10:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344018 - head/sys/netpfil/ipfw X-SVN-Group: head X-SVN-Commit-Author: ae X-SVN-Commit-Paths: head/sys/netpfil/ipfw X-SVN-Commit-Revision: 344018 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 54E6D82D2F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 18:10:56 -0000 Author: ae Date: Mon Feb 11 18:10:55 2019 New Revision: 344018 URL: https://svnweb.freebsd.org/changeset/base/344018 Log: Remove `set' field from state structure and use set from parent rule. Initially it was introduced because parent rule pointer could be freed, and rule's information could become inaccessible. In r341471 this was changed. And now we don't need this information, and also it can become stale. E.g. rule can be moved from one set to another. This can lead to parent's set and state's set will not match. In this case it is possible that static rule will be freed, but dynamic state will not. This can happen when `ipfw delete set N` command is used to delete rules, that were moved to another set. To fix the problem we will use the set number from parent rule. Obtained from: Yandex LLC MFC after: 1 week Sponsored by: Yandex LLC Modified: head/sys/netpfil/ipfw/ip_fw_dynamic.c Modified: head/sys/netpfil/ipfw/ip_fw_dynamic.c ============================================================================== --- head/sys/netpfil/ipfw/ip_fw_dynamic.c Mon Feb 11 17:48:52 2019 (r344017) +++ head/sys/netpfil/ipfw/ip_fw_dynamic.c Mon Feb 11 18:10:55 2019 (r344018) @@ -134,9 +134,8 @@ struct dyn_data { uint32_t hashval; /* hash value used for hash resize */ uint16_t fibnum; /* fib used to send keepalives */ - uint8_t _pad[2]; + uint8_t _pad[3]; uint8_t flags; /* internal flags */ - uint8_t set; /* parent rule set number */ uint16_t rulenum; /* parent rule number */ uint32_t ruleid; /* parent rule id */ @@ -162,8 +161,7 @@ struct dyn_data { struct dyn_parent { void *parent; /* pointer to parent rule */ uint32_t count; /* number of linked states */ - uint8_t _pad; - uint8_t set; /* parent rule set number */ + uint8_t _pad[2]; uint16_t rulenum; /* parent rule number */ uint32_t ruleid; /* parent rule id */ uint32_t hashval; /* hash value used for hash resize */ @@ -506,7 +504,7 @@ static int dyn_lookup_ipv6_state_locked(const struct i uint32_t, const void *, int, uint32_t, uint16_t); static struct dyn_ipv6_state *dyn_alloc_ipv6_state( const struct ipfw_flow_id *, uint32_t, uint16_t, uint8_t); -static int dyn_add_ipv6_state(void *, uint32_t, uint16_t, uint8_t, +static int dyn_add_ipv6_state(void *, uint32_t, uint16_t, const struct ipfw_flow_id *, uint32_t, const void *, int, uint32_t, struct ipfw_dyn_info *, uint16_t, uint16_t, uint8_t); static void dyn_export_ipv6_state(const struct dyn_ipv6_state *, @@ -527,8 +525,7 @@ static struct dyn_ipv6_state *dyn_lookup_ipv6_parent_l const struct ipfw_flow_id *, uint32_t, const void *, uint32_t, uint16_t, uint32_t); static struct dyn_ipv6_state *dyn_add_ipv6_parent(void *, uint32_t, uint16_t, - uint8_t, const struct ipfw_flow_id *, uint32_t, uint32_t, uint32_t, - uint16_t); + const struct ipfw_flow_id *, uint32_t, uint32_t, uint32_t, uint16_t); #endif /* INET6 */ /* Functions to work with limit states */ @@ -539,17 +536,17 @@ static struct dyn_ipv4_state *dyn_lookup_ipv4_parent( static struct dyn_ipv4_state *dyn_lookup_ipv4_parent_locked( const struct ipfw_flow_id *, const void *, uint32_t, uint16_t, uint32_t); static struct dyn_parent *dyn_alloc_parent(void *, uint32_t, uint16_t, - uint8_t, uint32_t); + uint32_t); static struct dyn_ipv4_state *dyn_add_ipv4_parent(void *, uint32_t, uint16_t, - uint8_t, const struct ipfw_flow_id *, uint32_t, uint32_t, uint16_t); + const struct ipfw_flow_id *, uint32_t, uint32_t, uint16_t); static void dyn_tick(void *); static void dyn_expire_states(struct ip_fw_chain *, ipfw_range_tlv *); static void dyn_free_states(struct ip_fw_chain *); -static void dyn_export_parent(const struct dyn_parent *, uint16_t, +static void dyn_export_parent(const struct dyn_parent *, uint16_t, uint8_t, ipfw_dyn_rule *); static void dyn_export_data(const struct dyn_data *, uint16_t, uint8_t, - ipfw_dyn_rule *); + uint8_t, ipfw_dyn_rule *); static uint32_t dyn_update_tcp_state(struct dyn_data *, const struct ipfw_flow_id *, const struct tcphdr *, int); static void dyn_update_proto_state(struct dyn_data *, @@ -562,7 +559,7 @@ static int dyn_lookup_ipv4_state_locked(const struct i const void *, int, uint32_t, uint16_t); static struct dyn_ipv4_state *dyn_alloc_ipv4_state( const struct ipfw_flow_id *, uint16_t, uint8_t); -static int dyn_add_ipv4_state(void *, uint32_t, uint16_t, uint8_t, +static int dyn_add_ipv4_state(void *, uint32_t, uint16_t, const struct ipfw_flow_id *, const void *, int, uint32_t, struct ipfw_dyn_info *, uint16_t, uint16_t, uint8_t); static void dyn_export_ipv4_state(const struct dyn_ipv4_state *, @@ -1459,7 +1456,7 @@ ipfw_dyn_lookup_state(const struct ip_fw_args *args, c static struct dyn_parent * dyn_alloc_parent(void *parent, uint32_t ruleid, uint16_t rulenum, - uint8_t set, uint32_t hashval) + uint32_t hashval) { struct dyn_parent *limit; @@ -1478,7 +1475,6 @@ dyn_alloc_parent(void *parent, uint32_t ruleid, uint16 limit->parent = parent; limit->ruleid = ruleid; limit->rulenum = rulenum; - limit->set = set; limit->hashval = hashval; limit->expire = time_uptime + V_dyn_short_lifetime; return (limit); @@ -1486,7 +1482,7 @@ dyn_alloc_parent(void *parent, uint32_t ruleid, uint16 static struct dyn_data * dyn_alloc_dyndata(void *parent, uint32_t ruleid, uint16_t rulenum, - uint8_t set, const struct ipfw_flow_id *pkt, const void *ulp, int pktlen, + const struct ipfw_flow_id *pkt, const void *ulp, int pktlen, uint32_t hashval, uint16_t fibnum) { struct dyn_data *data; @@ -1505,7 +1501,6 @@ dyn_alloc_dyndata(void *parent, uint32_t ruleid, uint1 data->parent = parent; data->ruleid = ruleid; data->rulenum = rulenum; - data->set = set; data->fibnum = fibnum; data->hashval = hashval; data->expire = time_uptime + V_dyn_syn_lifetime; @@ -1542,8 +1537,8 @@ dyn_alloc_ipv4_state(const struct ipfw_flow_id *pkt, u */ static struct dyn_ipv4_state * dyn_add_ipv4_parent(void *rule, uint32_t ruleid, uint16_t rulenum, - uint8_t set, const struct ipfw_flow_id *pkt, uint32_t hashval, - uint32_t version, uint16_t kidx) + const struct ipfw_flow_id *pkt, uint32_t hashval, uint32_t version, + uint16_t kidx) { struct dyn_ipv4_state *s; struct dyn_parent *limit; @@ -1570,7 +1565,7 @@ dyn_add_ipv4_parent(void *rule, uint32_t ruleid, uint1 } } - limit = dyn_alloc_parent(rule, ruleid, rulenum, set, hashval); + limit = dyn_alloc_parent(rule, ruleid, rulenum, hashval); if (limit == NULL) { DYN_BUCKET_UNLOCK(bucket); return (NULL); @@ -1595,7 +1590,7 @@ dyn_add_ipv4_parent(void *rule, uint32_t ruleid, uint1 static int dyn_add_ipv4_state(void *parent, uint32_t ruleid, uint16_t rulenum, - uint8_t set, const struct ipfw_flow_id *pkt, const void *ulp, int pktlen, + const struct ipfw_flow_id *pkt, const void *ulp, int pktlen, uint32_t hashval, struct ipfw_dyn_info *info, uint16_t fibnum, uint16_t kidx, uint8_t type) { @@ -1620,7 +1615,7 @@ dyn_add_ipv4_state(void *parent, uint32_t ruleid, uint } } - data = dyn_alloc_dyndata(parent, ruleid, rulenum, set, pkt, ulp, + data = dyn_alloc_dyndata(parent, ruleid, rulenum, pkt, ulp, pktlen, hashval, fibnum); if (data == NULL) { DYN_BUCKET_UNLOCK(bucket); @@ -1673,8 +1668,8 @@ dyn_alloc_ipv6_state(const struct ipfw_flow_id *pkt, u */ static struct dyn_ipv6_state * dyn_add_ipv6_parent(void *rule, uint32_t ruleid, uint16_t rulenum, - uint8_t set, const struct ipfw_flow_id *pkt, uint32_t zoneid, - uint32_t hashval, uint32_t version, uint16_t kidx) + const struct ipfw_flow_id *pkt, uint32_t zoneid, uint32_t hashval, + uint32_t version, uint16_t kidx) { struct dyn_ipv6_state *s; struct dyn_parent *limit; @@ -1701,7 +1696,7 @@ dyn_add_ipv6_parent(void *rule, uint32_t ruleid, uint1 } } - limit = dyn_alloc_parent(rule, ruleid, rulenum, set, hashval); + limit = dyn_alloc_parent(rule, ruleid, rulenum, hashval); if (limit == NULL) { DYN_BUCKET_UNLOCK(bucket); return (NULL); @@ -1726,8 +1721,8 @@ dyn_add_ipv6_parent(void *rule, uint32_t ruleid, uint1 static int dyn_add_ipv6_state(void *parent, uint32_t ruleid, uint16_t rulenum, - uint8_t set, const struct ipfw_flow_id *pkt, uint32_t zoneid, - const void *ulp, int pktlen, uint32_t hashval, struct ipfw_dyn_info *info, + const struct ipfw_flow_id *pkt, uint32_t zoneid, const void *ulp, + int pktlen, uint32_t hashval, struct ipfw_dyn_info *info, uint16_t fibnum, uint16_t kidx, uint8_t type) { struct dyn_ipv6_state *s; @@ -1751,7 +1746,7 @@ dyn_add_ipv6_state(void *parent, uint32_t ruleid, uint } } - data = dyn_alloc_dyndata(parent, ruleid, rulenum, set, pkt, ulp, + data = dyn_alloc_dyndata(parent, ruleid, rulenum, pkt, ulp, pktlen, hashval, fibnum); if (data == NULL) { DYN_BUCKET_UNLOCK(bucket); @@ -1801,8 +1796,7 @@ dyn_get_parent_state(const struct ipfw_flow_id *pkt, u DYNSTATE_CRITICAL_EXIT(); s = dyn_add_ipv4_parent(rule, rule->id, - rule->rulenum, rule->set, pkt, hashval, - version, kidx); + rule->rulenum, pkt, hashval, version, kidx); if (s == NULL) return (NULL); /* Now we are in critical section again. */ @@ -1825,8 +1819,8 @@ dyn_get_parent_state(const struct ipfw_flow_id *pkt, u DYNSTATE_CRITICAL_EXIT(); s = dyn_add_ipv6_parent(rule, rule->id, - rule->rulenum, rule->set, pkt, zoneid, hashval, - version, kidx); + rule->rulenum, pkt, zoneid, hashval, version, + kidx); if (s == NULL) return (NULL); /* Now we are in critical section again. */ @@ -1869,8 +1863,7 @@ dyn_get_parent_state(const struct ipfw_flow_id *pkt, u static int dyn_install_state(const struct ipfw_flow_id *pkt, uint32_t zoneid, - uint16_t fibnum, const void *ulp, int pktlen, void *rule, - uint32_t ruleid, uint16_t rulenum, uint8_t set, + uint16_t fibnum, const void *ulp, int pktlen, struct ip_fw *rule, struct ipfw_dyn_info *info, uint32_t limit, uint16_t limit_mask, uint16_t kidx, uint8_t type) { @@ -1934,11 +1927,11 @@ dyn_install_state(const struct ipfw_flow_id *pkt, uint hashval = hash_packet(pkt); if (IS_IP4_FLOW_ID(pkt)) - ret = dyn_add_ipv4_state(rule, ruleid, rulenum, set, pkt, + ret = dyn_add_ipv4_state(rule, rule->id, rule->rulenum, pkt, ulp, pktlen, hashval, info, fibnum, kidx, type); #ifdef INET6 else if (IS_IP6_FLOW_ID(pkt)) - ret = dyn_add_ipv6_state(rule, ruleid, rulenum, set, pkt, + ret = dyn_add_ipv6_state(rule, rule->id, rule->rulenum, pkt, zoneid, ulp, pktlen, hashval, info, fibnum, kidx, type); #endif /* INET6 */ else @@ -2011,8 +2004,8 @@ ipfw_dyn_install_state(struct ip_fw_chain *chain, stru #ifdef INET6 IS_IP6_FLOW_ID(&args->f_id) ? dyn_getscopeid(args): #endif - 0, M_GETFIB(args->m), ulp, pktlen, rule, rule->id, rule->rulenum, - rule->set, info, limit, limit_mask, cmd->o.arg1, cmd->o.opcode)); + 0, M_GETFIB(args->m), ulp, pktlen, rule, info, limit, + limit_mask, cmd->o.arg1, cmd->o.opcode)); } /* @@ -2197,17 +2190,19 @@ dyn_match_ipv4_state(struct ip_fw_chain *ch, struct dy struct ip_fw *rule; int ret; - if (s->type == O_LIMIT_PARENT) - return (dyn_match_range(s->limit->rulenum, - s->limit->set, rt)); + if (s->type == O_LIMIT_PARENT) { + rule = s->limit->parent; + return (dyn_match_range(s->limit->rulenum, rule->set, rt)); + } - ret = dyn_match_range(s->data->rulenum, s->data->set, rt); - if (ret == 0 || V_dyn_keep_states == 0 || ret > 1) - return (ret); - rule = s->data->parent; if (s->type == O_LIMIT) rule = ((struct dyn_ipv4_state *)rule)->limit->parent; + + ret = dyn_match_range(s->data->rulenum, rule->set, rt); + if (ret == 0 || V_dyn_keep_states == 0 || ret > 1) + return (ret); + dyn_acquire_rule(ch, s->data, rule, s->kidx); return (0); } @@ -2220,17 +2215,19 @@ dyn_match_ipv6_state(struct ip_fw_chain *ch, struct dy struct ip_fw *rule; int ret; - if (s->type == O_LIMIT_PARENT) - return (dyn_match_range(s->limit->rulenum, - s->limit->set, rt)); + if (s->type == O_LIMIT_PARENT) { + rule = s->limit->parent; + return (dyn_match_range(s->limit->rulenum, rule->set, rt)); + } - ret = dyn_match_range(s->data->rulenum, s->data->set, rt); - if (ret == 0 || V_dyn_keep_states == 0 || ret > 1) - return (ret); - rule = s->data->parent; if (s->type == O_LIMIT) rule = ((struct dyn_ipv6_state *)rule)->limit->parent; + + ret = dyn_match_range(s->data->rulenum, rule->set, rt); + if (ret == 0 || V_dyn_keep_states == 0 || ret > 1) + return (ret); + dyn_acquire_rule(ch, s->data, rule, s->kidx); return (0); } @@ -2898,7 +2895,7 @@ ipfw_is_dyn_rule(struct ip_fw *rule) } static void -dyn_export_parent(const struct dyn_parent *p, uint16_t kidx, +dyn_export_parent(const struct dyn_parent *p, uint16_t kidx, uint8_t set, ipfw_dyn_rule *dst) { @@ -2910,9 +2907,9 @@ dyn_export_parent(const struct dyn_parent *p, uint16_t /* 'rule' is used to pass up the rule number and set */ memcpy(&dst->rule, &p->rulenum, sizeof(p->rulenum)); + /* store set number into high word of dst->rule pointer. */ - memcpy((char *)&dst->rule + sizeof(p->rulenum), &p->set, - sizeof(p->set)); + memcpy((char *)&dst->rule + sizeof(p->rulenum), &set, sizeof(set)); /* unused fields */ dst->pcnt = 0; @@ -2931,7 +2928,7 @@ dyn_export_parent(const struct dyn_parent *p, uint16_t static void dyn_export_data(const struct dyn_data *data, uint16_t kidx, uint8_t type, - ipfw_dyn_rule *dst) + uint8_t set, ipfw_dyn_rule *dst) { dst->dyn_type = type; @@ -2943,9 +2940,9 @@ dyn_export_data(const struct dyn_data *data, uint16_t /* 'rule' is used to pass up the rule number and set */ memcpy(&dst->rule, &data->rulenum, sizeof(data->rulenum)); + /* store set number into high word of dst->rule pointer. */ - memcpy((char *)&dst->rule + sizeof(data->rulenum), &data->set, - sizeof(data->set)); + memcpy((char *)&dst->rule + sizeof(data->rulenum), &set, sizeof(set)); dst->state = data->state; if (data->flags & DYN_REFERENCED) @@ -2967,13 +2964,18 @@ dyn_export_data(const struct dyn_data *data, uint16_t static void dyn_export_ipv4_state(const struct dyn_ipv4_state *s, ipfw_dyn_rule *dst) { + struct ip_fw *rule; switch (s->type) { case O_LIMIT_PARENT: - dyn_export_parent(s->limit, s->kidx, dst); + rule = s->limit->parent; + dyn_export_parent(s->limit, s->kidx, rule->set, dst); break; default: - dyn_export_data(s->data, s->kidx, s->type, dst); + rule = s->data->parent; + if (s->type == O_LIMIT) + rule = ((struct dyn_ipv4_state *)rule)->limit->parent; + dyn_export_data(s->data, s->kidx, s->type, rule->set, dst); } dst->id.dst_ip = s->dst; @@ -2994,13 +2996,18 @@ dyn_export_ipv4_state(const struct dyn_ipv4_state *s, static void dyn_export_ipv6_state(const struct dyn_ipv6_state *s, ipfw_dyn_rule *dst) { + struct ip_fw *rule; switch (s->type) { case O_LIMIT_PARENT: - dyn_export_parent(s->limit, s->kidx, dst); + rule = s->limit->parent; + dyn_export_parent(s->limit, s->kidx, rule->set, dst); break; default: - dyn_export_data(s->data, s->kidx, s->type, dst); + rule = s->data->parent; + if (s->type == O_LIMIT) + rule = ((struct dyn_ipv6_state *)rule)->limit->parent; + dyn_export_data(s->data, s->kidx, s->type, rule->set, dst); } dst->id.src_ip6 = s->src; From owner-svn-src-all@freebsd.org Mon Feb 11 19:08:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DB5EA14E0EBC; Mon, 11 Feb 2019 19:08:02 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7FF9F85BE2; Mon, 11 Feb 2019 19:08:02 +0000 (UTC) (envelope-from kp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 69DA04423; Mon, 11 Feb 2019 19:08:02 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BJ8277054996; Mon, 11 Feb 2019 19:08:02 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BJ82Do054995; Mon, 11 Feb 2019 19:08:02 GMT (envelope-from kp@FreeBSD.org) Message-Id: <201902111908.x1BJ82Do054995@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Mon, 11 Feb 2019 19:08:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344019 - stable/12/sbin/pfctl X-SVN-Group: stable-12 X-SVN-Commit-Author: kp X-SVN-Commit-Paths: stable/12/sbin/pfctl X-SVN-Commit-Revision: 344019 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7FF9F85BE2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 19:08:03 -0000 Author: kp Date: Mon Feb 11 19:08:01 2019 New Revision: 344019 URL: https://svnweb.freebsd.org/changeset/base/344019 Log: MFC r343520: pfctl: Point users to net.pf.request_maxcount if large requests are rejected The kernel will reject very large tables to avoid resource exhaustion attacks. Some users run into this limit with legitimate table configurations. The error message in this case was not very clear: pf.conf:1: cannot define table nets: Invalid argument pfctl: Syntax error in config file: pf rules not loaded If a table definition fails we now check the request_maxcount sysctl, and if we've tried to create more than that point the user at net.pf.request_maxcount: pf.conf:1: cannot define table nets: too many elements. Consider increasing net.pf.request_maxcount. pfctl: Syntax error in config file: pf rules not loaded PR: 235076 Modified: stable/12/sbin/pfctl/parse.y Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/pfctl/parse.y ============================================================================== --- stable/12/sbin/pfctl/parse.y Mon Feb 11 18:10:55 2019 (r344018) +++ stable/12/sbin/pfctl/parse.y Mon Feb 11 19:08:01 2019 (r344019) @@ -4735,6 +4735,8 @@ process_tabledef(char *name, struct table_opts *opts) { struct pfr_buffer ab; struct node_tinit *ti; + unsigned long maxcount; + size_t s = sizeof(maxcount); bzero(&ab, sizeof(ab)); ab.pfrb_type = PFRB_ADDRS; @@ -4762,8 +4764,19 @@ process_tabledef(char *name, struct table_opts *opts) if (!(pf->opts & PF_OPT_NOACTION) && pfctl_define_table(name, opts->flags, opts->init_addr, pf->anchor->name, &ab, pf->anchor->ruleset.tticket)) { - yyerror("cannot define table %s: %s", name, - pfr_strerror(errno)); + + if (sysctlbyname("net.pf.request_maxcount", &maxcount, &s, + NULL, 0) == -1) + maxcount = 65535; + + if (ab.pfrb_size > maxcount) + yyerror("cannot define table %s: too many elements.\n" + "Consider increasing net.pf.request_maxcount.", + name); + else + yyerror("cannot define table %s: %s", name, + pfr_strerror(errno)); + goto _error; } pf->tdirty = 1; From owner-svn-src-all@freebsd.org Mon Feb 11 19:08:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08CA314E0EC2; Mon, 11 Feb 2019 19:08:04 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A09F385BE5; Mon, 11 Feb 2019 19:08:03 +0000 (UTC) (envelope-from kp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 941384425; Mon, 11 Feb 2019 19:08:03 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BJ832C055053; Mon, 11 Feb 2019 19:08:03 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BJ83mS055052; Mon, 11 Feb 2019 19:08:03 GMT (envelope-from kp@FreeBSD.org) Message-Id: <201902111908.x1BJ83mS055052@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Mon, 11 Feb 2019 19:08:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344020 - stable/11/sbin/pfctl X-SVN-Group: stable-11 X-SVN-Commit-Author: kp X-SVN-Commit-Paths: stable/11/sbin/pfctl X-SVN-Commit-Revision: 344020 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A09F385BE5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 19:08:04 -0000 Author: kp Date: Mon Feb 11 19:08:03 2019 New Revision: 344020 URL: https://svnweb.freebsd.org/changeset/base/344020 Log: MFC r343520: pfctl: Point users to net.pf.request_maxcount if large requests are rejected The kernel will reject very large tables to avoid resource exhaustion attacks. Some users run into this limit with legitimate table configurations. The error message in this case was not very clear: pf.conf:1: cannot define table nets: Invalid argument pfctl: Syntax error in config file: pf rules not loaded If a table definition fails we now check the request_maxcount sysctl, and if we've tried to create more than that point the user at net.pf.request_maxcount: pf.conf:1: cannot define table nets: too many elements. Consider increasing net.pf.request_maxcount. pfctl: Syntax error in config file: pf rules not loaded PR: 235076 Modified: stable/11/sbin/pfctl/parse.y Directory Properties: stable/11/ (props changed) Modified: stable/11/sbin/pfctl/parse.y ============================================================================== --- stable/11/sbin/pfctl/parse.y Mon Feb 11 19:08:01 2019 (r344019) +++ stable/11/sbin/pfctl/parse.y Mon Feb 11 19:08:03 2019 (r344020) @@ -4728,6 +4728,8 @@ process_tabledef(char *name, struct table_opts *opts) { struct pfr_buffer ab; struct node_tinit *ti; + unsigned long maxcount; + size_t s = sizeof(maxcount); bzero(&ab, sizeof(ab)); ab.pfrb_type = PFRB_ADDRS; @@ -4755,8 +4757,19 @@ process_tabledef(char *name, struct table_opts *opts) if (!(pf->opts & PF_OPT_NOACTION) && pfctl_define_table(name, opts->flags, opts->init_addr, pf->anchor->name, &ab, pf->anchor->ruleset.tticket)) { - yyerror("cannot define table %s: %s", name, - pfr_strerror(errno)); + + if (sysctlbyname("net.pf.request_maxcount", &maxcount, &s, + NULL, 0) == -1) + maxcount = 65535; + + if (ab.pfrb_size > maxcount) + yyerror("cannot define table %s: too many elements.\n" + "Consider increasing net.pf.request_maxcount.", + name); + else + yyerror("cannot define table %s: %s", name, + pfr_strerror(errno)); + goto _error; } pf->tdirty = 1; From owner-svn-src-all@freebsd.org Mon Feb 11 20:46:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2B5314E389A; Mon, 11 Feb 2019 20:46:32 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9185C898F6; Mon, 11 Feb 2019 20:46:32 +0000 (UTC) (envelope-from trasz@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 868705555; Mon, 11 Feb 2019 20:46:32 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BKkWUB007745; Mon, 11 Feb 2019 20:46:32 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BKkWFJ007744; Mon, 11 Feb 2019 20:46:32 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201902112046.x1BKkWFJ007744@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Mon, 11 Feb 2019 20:46:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344021 - head/share/man/man7 X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/share/man/man7 X-SVN-Commit-Revision: 344021 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9185C898F6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 20:46:33 -0000 Author: trasz Date: Mon Feb 11 20:46:32 2019 New Revision: 344021 URL: https://svnweb.freebsd.org/changeset/base/344021 Log: Add explanation of branches to the ports(7) man page. Reviewed by: matthew@, freebsd@mhka.no MFC after: 2 weeks Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D19146 Modified: head/share/man/man7/ports.7 Modified: head/share/man/man7/ports.7 ============================================================================== --- head/share/man/man7/ports.7 Mon Feb 11 19:08:03 2019 (r344020) +++ head/share/man/man7/ports.7 Mon Feb 11 20:46:32 2019 (r344021) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 8, 2019 +.Dd February 11, 2019 .Dt PORTS 7 .Os .Sh NAME @@ -38,8 +38,6 @@ Ports Collection offers a simple way to compile and install third party applications. It is also used to build packages, to be installed using .Xr pkg 8 . -It can be installed and updated using -.Xr portsnap 8 . .Pp The ports tree, typically located at .Pa /usr/ports , @@ -61,6 +59,55 @@ the port depends on in order to build and work. Afterwards, .Dq Li "make install" installs the application. +.Pp +The +.Fx +Ports Collection is maintained in several branches, which differ mostly +by versions of software provided: the +.Em head +branch contains all the latest changes, while the +.Em quarterly +branches only provide critical fixes. +The +.Em head +branch can be installed or updated using either +.Xr portsnap 8 , +or from Subversion repository at: +.Pp +.Lk https://svn.FreeBSD.org/ports/head +.Pp +The +.Em quarterly +branches can be found in Subversion in the +.Fa branches/ +subdirectory, eg: +.Pp +.Lk https://svn.FreeBSD.org/ports/branches/2019Q1 +.Pp +It is generally a good idea to use the +.Nm +branch that matches the +.Xr pkg 8 +repository being used. +By default, for +.Fx CURRENT +the +.Xr pkg 8 +is configured to install packages built from the +.Em head +branch, while for +.Fx STABLE +or RELEASE versions it is configured to install packages built from +the latest +.Em quarterly +branch. +Currently configured +.Xr pkg 8 +repository can be verified by looking at the +.Em url +field in +.Cm pkg -vv +output. .Pp For more information about using ports, see the .Dq "Packages and Ports" section From owner-svn-src-all@freebsd.org Mon Feb 11 20:47:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05C9014E394B; Mon, 11 Feb 2019 20:47:10 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A1CC789AB9; Mon, 11 Feb 2019 20:47:09 +0000 (UTC) (envelope-from jhb@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 973245577; Mon, 11 Feb 2019 20:47:09 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BKl9o0007815; Mon, 11 Feb 2019 20:47:09 GMT (envelope-from jhb@FreeBSD.org) Received: (from jhb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BKl9Rd007814; Mon, 11 Feb 2019 20:47:09 GMT (envelope-from jhb@FreeBSD.org) Message-Id: <201902112047.x1BKl9Rd007814@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org using -f From: John Baldwin Date: Mon, 11 Feb 2019 20:47:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344022 - head/sys/dev/pci X-SVN-Group: head X-SVN-Commit-Author: jhb X-SVN-Commit-Paths: head/sys/dev/pci X-SVN-Commit-Revision: 344022 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A1CC789AB9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 20:47:10 -0000 Author: jhb Date: Mon Feb 11 20:47:09 2019 New Revision: 344022 URL: https://svnweb.freebsd.org/changeset/base/344022 Log: Enable PCI BAR reallocation by default. When pci_realloc_bars was first added, the intention was to eventually enable it by default, but it was left disabled to preserve existing behavior. The setting is pretty conservative in that it does not attempt to allocate resources for BARs that the BIOS/firmware leaves disabled. It only attempts to reallocate resources for a BAR that the firmware programmed during boot but that conflicts with another resource during the kernel's device scan. PR 221350 is an example of a machine that this knob fixes. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D18965 Modified: head/sys/dev/pci/pci.c Modified: head/sys/dev/pci/pci.c ============================================================================== --- head/sys/dev/pci/pci.c Mon Feb 11 20:46:32 2019 (r344021) +++ head/sys/dev/pci/pci.c Mon Feb 11 20:47:09 2019 (r344022) @@ -341,7 +341,7 @@ SYSCTL_INT(_hw_pci, OID_AUTO, enable_io_modes, CTLFLAG " enable these bits correctly. We'd like to do this all the time, but" " there are some peripherals that this causes problems with."); -static int pci_do_realloc_bars = 0; +static int pci_do_realloc_bars = 1; SYSCTL_INT(_hw_pci, OID_AUTO, realloc_bars, CTLFLAG_RWTUN, &pci_do_realloc_bars, 0, "Attempt to allocate a new range for any BARs whose original " From owner-svn-src-all@freebsd.org Mon Feb 11 21:31:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C8D7014E47F6; Mon, 11 Feb 2019 21:31:27 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 54E4F8B007; Mon, 11 Feb 2019 21:31:27 +0000 (UTC) (envelope-from brooks@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4829D5C78; Mon, 11 Feb 2019 21:31:27 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BLVRtx031149; Mon, 11 Feb 2019 21:31:27 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BLVRQ7031148; Mon, 11 Feb 2019 21:31:27 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <201902112131.x1BLVRQ7031148@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Mon, 11 Feb 2019 21:31:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344023 - head/sbin/mdmfs X-SVN-Group: head X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: head/sbin/mdmfs X-SVN-Commit-Revision: 344023 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 54E4F8B007 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 21:31:28 -0000 Author: brooks Date: Mon Feb 11 21:31:26 2019 New Revision: 344023 URL: https://svnweb.freebsd.org/changeset/base/344023 Log: mdmfs: Fix many bugs in automatic md(4) creation. This code allocated a correctly sized buffer, read past the end of the source buffer, writing off the end of the target buffer, and then writing a '\0' terminator past the end of the target buffer (in the wrong place). It then leaked the buffer. Switch to a statically sized buffer on the stack and update the source pointer and length before use so the correct things are copied. Fix a logic error in the checks that the format of the line is as expected and move on out of an assert. Remove an unneeded close(). fclose() closes the descriptor. Found with: CheriABI Obtained from: CheriBSD Reviewed by: kib, jhb, markj Differential Revision: https://reviews.freebsd.org/D19122 Modified: head/sbin/mdmfs/mdmfs.c Modified: head/sbin/mdmfs/mdmfs.c ============================================================================== --- head/sbin/mdmfs/mdmfs.c Mon Feb 11 20:47:09 2019 (r344022) +++ head/sbin/mdmfs/mdmfs.c Mon Feb 11 21:31:26 2019 (r344023) @@ -444,7 +444,8 @@ static void do_mdconfig_attach_au(const char *args, const enum md_types mdtype) { const char *ta; /* Type arg. */ - char *linep, *linebuf; /* Line pointer, line buffer. */ + char *linep; + char linebuf[12]; /* 32-bit unit (10) + '\n' (1) + '\0' (1) */ int fd; /* Standard output of mdconfig invocation. */ FILE *sfd; int rv; @@ -479,14 +480,15 @@ do_mdconfig_attach_au(const char *args, const enum md_ if (sfd == NULL) err(1, "fdopen"); linep = fgetln(sfd, &linelen); - if (linep == NULL && linelen < mdnamelen + 1) - errx(1, "unexpected output from mdconfig (attach)"); /* If the output format changes, we want to know about it. */ - assert(strncmp(linep, mdname, mdnamelen) == 0); - linebuf = malloc(linelen - mdnamelen + 1); - assert(linebuf != NULL); + if (linep == NULL || linelen <= mdnamelen + 1 || + linelen - mdnamelen >= sizeof(linebuf) || + strncmp(linep, mdname, mdnamelen) != 0) + errx(1, "unexpected output from mdconfig (attach)"); + linep += mdnamelen; + linelen -= mdnamelen; /* Can't use strlcpy because linep is not NULL-terminated. */ - strncpy(linebuf, linep + mdnamelen, linelen); + strncpy(linebuf, linep, linelen); linebuf[linelen] = '\0'; ul = strtoul(linebuf, &p, 10); if (ul == ULONG_MAX || *p != '\n') @@ -494,7 +496,6 @@ do_mdconfig_attach_au(const char *args, const enum md_ unit = ul; fclose(sfd); - close(fd); } /* From owner-svn-src-all@freebsd.org Mon Feb 11 22:09:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C027614E54D3; Mon, 11 Feb 2019 22:09:27 +0000 (UTC) (envelope-from dab@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 647528C1EF; Mon, 11 Feb 2019 22:09:27 +0000 (UTC) (envelope-from dab@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 580D86343; Mon, 11 Feb 2019 22:09:27 +0000 (UTC) (envelope-from dab@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BM9RTQ049464; Mon, 11 Feb 2019 22:09:27 GMT (envelope-from dab@FreeBSD.org) Received: (from dab@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BM9R4D049463; Mon, 11 Feb 2019 22:09:27 GMT (envelope-from dab@FreeBSD.org) Message-Id: <201902112209.x1BM9R4D049463@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org using -f From: David Bright Date: Mon, 11 Feb 2019 22:09:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344024 - head/sys/cam/scsi X-SVN-Group: head X-SVN-Commit-Author: dab X-SVN-Commit-Paths: head/sys/cam/scsi X-SVN-Commit-Revision: 344024 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 647528C1EF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 22:09:27 -0000 Author: dab Date: Mon Feb 11 22:09:26 2019 New Revision: 344024 URL: https://svnweb.freebsd.org/changeset/base/344024 Log: CID 1009492: Logically dead code in sys/cam/scsi/scsi_xpt.c In `probedone()`, for the `PROBE_REPORT_LUNS` case, all paths that fall to the bottom of the case set `lp` to `NULL`, so the test for a non-NULL value of `lp` and call to `free()` if true is dead code as the test can never be true. Fix by eliminating the whole if statement. To guard against a possible future change that accidentally violates this assumption, use a `KASSERT()` to catch if `lp` is non-NULL. Reviewed by: cem MFC after: 1 week Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D19109 Modified: head/sys/cam/scsi/scsi_xpt.c Modified: head/sys/cam/scsi/scsi_xpt.c ============================================================================== --- head/sys/cam/scsi/scsi_xpt.c Mon Feb 11 21:31:26 2019 (r344023) +++ head/sys/cam/scsi/scsi_xpt.c Mon Feb 11 22:09:26 2019 (r344024) @@ -1385,6 +1385,12 @@ out: probe_purge_old(path, lp, softc->flags); lp = NULL; } + /* The processing above should either exit via a `goto + * out` or leave the `lp` variable `NULL` and (if + * applicable) `free()` the storage to which it had + * pointed. Assert here that is the case. + */ + KASSERT(lp == NULL, ("%s: lp is not NULL", __func__)); inq_buf = &path->device->inq_data; if (path->device->flags & CAM_DEV_INQUIRY_DATA_VALID && (SID_QUAL(inq_buf) == SID_QUAL_LU_CONNECTED || @@ -1397,9 +1403,6 @@ out: xpt_release_ccb(done_ccb); xpt_schedule(periph, priority); goto out; - } - if (lp) { - free(lp, M_CAMXPT); } PROBE_SET_ACTION(softc, PROBE_INVALID); xpt_release_ccb(done_ccb); From owner-svn-src-all@freebsd.org Mon Feb 11 22:58:44 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1A91F14E63B8; Mon, 11 Feb 2019 22:58:44 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B41388DA20; Mon, 11 Feb 2019 22:58:43 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A13F16BDE; Mon, 11 Feb 2019 22:58:43 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BMwhmc075099; Mon, 11 Feb 2019 22:58:43 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BMwhMB075098; Mon, 11 Feb 2019 22:58:43 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902112258.x1BMwhMB075098@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 22:58:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344025 - head/sbin/pfctl X-SVN-Group: head X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: head/sbin/pfctl X-SVN-Commit-Revision: 344025 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B41388DA20 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 22:58:44 -0000 Author: pkelsey Date: Mon Feb 11 22:58:43 2019 New Revision: 344025 URL: https://svnweb.freebsd.org/changeset/base/344025 Log: Fix the fix added in r343287 for spurious HFSC bandwidth check errors The logic added in r343287 to avoid false-positive sum-of-child-bandwidth check errors for HFSC queues has a bug in it that causes the upperlimit service curve of an HFSC queue to be pulled down to its parent's linkshare service curve if it happens to be above it. Upon further inspection/reflection, this generic sum-of-child-bandwidths check does not need to be fixed for HFSC - it needs to be skipped. For HFSC, the equivalent check is to ensure the sum of child linkshare service curves are at or below the parent's linkshare service curve, and this check is already being performed by eval_pfqueue_hfsc(). This commit reverts the affected parts of r343287 and adds new logic to skip the generic sum-of-child-bandwidths check for HFSC. MFC after: 1 day Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D19124 Modified: head/sbin/pfctl/pfctl_altq.c Modified: head/sbin/pfctl/pfctl_altq.c ============================================================================== --- head/sbin/pfctl/pfctl_altq.c Mon Feb 11 22:09:26 2019 (r344024) +++ head/sbin/pfctl/pfctl_altq.c Mon Feb 11 22:58:43 2019 (r344025) @@ -429,34 +429,25 @@ eval_pfqueue(struct pfctl *pf, struct pf_altq *pa, str if (pa->qlimit == 0) pa->qlimit = DEFAULT_QLIMIT; - if (eval_queue_opts(pa, opts, - parent == NULL ? pa->ifbandwidth : parent->pa.bandwidth)) - return (1); - if (pa->scheduler == ALTQT_CBQ || pa->scheduler == ALTQT_HFSC || pa->scheduler == ALTQT_FAIRQ) { pa->bandwidth = eval_bwspec(bw, parent == NULL ? pa->ifbandwidth : parent->pa.bandwidth); - /* - * For HFSC, if the linkshare service curve m2 parameter is - * set, it overrides the provided queue bandwidth parameter, - * so adjust the queue bandwidth parameter accordingly here - * to avoid false positives in the total child bandwidth - * check below. - */ - if ((pa->scheduler == ALTQT_HFSC) && - (pa->pq_u.hfsc_opts.lssc_m2 != 0)) { - pa->bandwidth = pa->pq_u.hfsc_opts.lssc_m2; - } - if (pa->bandwidth > pa->ifbandwidth) { fprintf(stderr, "bandwidth for %s higher than " "interface\n", pa->qname); return (1); } - /* check the sum of the child bandwidth is under parent's */ - if (parent != NULL) { + /* + * If not HFSC, then check that the sum of the child + * bandwidths is less than the parent's bandwidth. For + * HFSC, the equivalent concept is to check that the sum of + * the child linkshare service curves are under the parent's + * linkshare service curve, and that check is performed by + * eval_pfqueue_hfsc(). + */ + if ((parent != NULL) && (pa->scheduler != ALTQT_HFSC)) { if (pa->bandwidth > parent->pa.bandwidth) { warnx("bandwidth for %s higher than parent", pa->qname); @@ -471,6 +462,10 @@ eval_pfqueue(struct pfctl *pf, struct pf_altq *pa, str } } } + + if (eval_queue_opts(pa, opts, + parent == NULL ? pa->ifbandwidth : parent->pa.bandwidth)) + return (1); if (parent != NULL) parent->meta.children++; From owner-svn-src-all@freebsd.org Mon Feb 11 23:13:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 01B2014E68C2; Mon, 11 Feb 2019 23:13:40 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A99BF8E283; Mon, 11 Feb 2019 23:13:39 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9E1B96F45; Mon, 11 Feb 2019 23:13:39 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BNDdCv085265; Mon, 11 Feb 2019 23:13:39 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BNDdqH085262; Mon, 11 Feb 2019 23:13:39 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902112313.x1BNDdqH085262@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 23:13:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344026 - stable/12/sbin/pfctl X-SVN-Group: stable-12 X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: stable/12/sbin/pfctl X-SVN-Commit-Revision: 344026 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A99BF8E283 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 23:13:40 -0000 Author: pkelsey Date: Mon Feb 11 23:13:38 2019 New Revision: 344026 URL: https://svnweb.freebsd.org/changeset/base/344026 Log: MFC r343287: Reduce pf.conf parsing cost for configs that define N queues from O(N^2) to O(N) The number of syscalls made during parsing of any config that defines tables is also reduced, and incorrect warnings that HFSC parent queue bandwidths were smaller than the sum of their child bandwidths have been fixed. Reviewed by: kp Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D18759 MFC r343296: Remove unused function gsc_destroy() gsc_destroy() is no longer needed as of r343287. MFC r344025: Fix the fix added in r343287 for spurious HFSC bandwidth check errors The logic added in r343287 to avoid false-positive sum-of-child-bandwidth check errors for HFSC queues has a bug in it that causes the upperlimit service curve of an HFSC queue to be pulled down to its parent's linkshare service curve if it happens to be above it. Upon further inspection/reflection, this generic sum-of-child-bandwidths check does not need to be fixed for HFSC - it needs to be skipped. For HFSC, the equivalent check is to ensure the sum of child linkshare service curves are at or below the parent's linkshare service curve, and this check is already being performed by eval_pfqueue_hfsc(). This commit reverts the affected parts of r343287 and adds new logic to skip the generic sum-of-child-bandwidths check for HFSC. Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D19124 Modified: stable/12/sbin/pfctl/pfctl.h stable/12/sbin/pfctl/pfctl_altq.c stable/12/sbin/pfctl/pfctl_parser.c stable/12/sbin/pfctl/pfctl_parser.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/pfctl/pfctl.h ============================================================================== --- stable/12/sbin/pfctl/pfctl.h Mon Feb 11 22:58:43 2019 (r344025) +++ stable/12/sbin/pfctl/pfctl.h Mon Feb 11 23:13:38 2019 (r344026) @@ -114,7 +114,6 @@ extern int loadopt; int check_commit_altq(int, int); void pfaltq_store(struct pf_altq *); -struct pf_altq *pfaltq_lookup(const char *); char *rate2str(double); void print_addr(struct pf_addr_wrap *, sa_family_t, int); Modified: stable/12/sbin/pfctl/pfctl_altq.c ============================================================================== --- stable/12/sbin/pfctl/pfctl_altq.c Mon Feb 11 22:58:43 2019 (r344025) +++ stable/12/sbin/pfctl/pfctl_altq.c Mon Feb 11 23:13:38 2019 (r344026) @@ -24,6 +24,7 @@ __FBSDID("$FreeBSD$"); #define PFIOC_USE_LATEST #include +#include #include #include @@ -36,6 +37,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -53,38 +55,44 @@ __FBSDID("$FreeBSD$"); #define is_sc_null(sc) (((sc) == NULL) || ((sc)->m1 == 0 && (sc)->m2 == 0)) -static TAILQ_HEAD(altqs, pf_altq) altqs = TAILQ_HEAD_INITIALIZER(altqs); -static LIST_HEAD(gen_sc, segment) rtsc, lssc; +static STAILQ_HEAD(interfaces, pfctl_altq) interfaces = STAILQ_HEAD_INITIALIZER(interfaces); +static struct hsearch_data queue_map; +static struct hsearch_data if_map; +static struct hsearch_data qid_map; -struct pf_altq *qname_to_pfaltq(const char *, const char *); -u_int32_t qname_to_qid(const char *); +static struct pfctl_altq *pfaltq_lookup(char *ifname); +static struct pfctl_altq *qname_to_pfaltq(const char *, const char *); +static u_int32_t qname_to_qid(char *); -static int eval_pfqueue_cbq(struct pfctl *, struct pf_altq *); +static int eval_pfqueue_cbq(struct pfctl *, struct pf_altq *, + struct pfctl_altq *); static int cbq_compute_idletime(struct pfctl *, struct pf_altq *); -static int check_commit_cbq(int, int, struct pf_altq *); +static int check_commit_cbq(int, int, struct pfctl_altq *); static int print_cbq_opts(const struct pf_altq *); static int print_codel_opts(const struct pf_altq *, const struct node_queue_opt *); -static int eval_pfqueue_priq(struct pfctl *, struct pf_altq *); -static int check_commit_priq(int, int, struct pf_altq *); +static int eval_pfqueue_priq(struct pfctl *, struct pf_altq *, + struct pfctl_altq *); +static int check_commit_priq(int, int, struct pfctl_altq *); static int print_priq_opts(const struct pf_altq *); -static int eval_pfqueue_hfsc(struct pfctl *, struct pf_altq *); -static int check_commit_hfsc(int, int, struct pf_altq *); +static int eval_pfqueue_hfsc(struct pfctl *, struct pf_altq *, + struct pfctl_altq *, struct pfctl_altq *); +static int check_commit_hfsc(int, int, struct pfctl_altq *); static int print_hfsc_opts(const struct pf_altq *, const struct node_queue_opt *); -static int eval_pfqueue_fairq(struct pfctl *, struct pf_altq *); +static int eval_pfqueue_fairq(struct pfctl *, struct pf_altq *, + struct pfctl_altq *, struct pfctl_altq *); static int print_fairq_opts(const struct pf_altq *, const struct node_queue_opt *); -static int check_commit_fairq(int, int, struct pf_altq *); +static int check_commit_fairq(int, int, struct pfctl_altq *); static void gsc_add_sc(struct gen_sc *, struct service_curve *); static int is_gsc_under_sc(struct gen_sc *, struct service_curve *); -static void gsc_destroy(struct gen_sc *); static struct segment *gsc_getentry(struct gen_sc *, double); static int gsc_add_seg(struct gen_sc *, double, double, double, double); @@ -104,59 +112,101 @@ void print_hfsc_sc(const char *, u_int, u_int, u_int void print_fairq_sc(const char *, u_int, u_int, u_int, const struct node_fairq_sc *); +static __attribute__((constructor)) void +pfctl_altq_init(void) +{ + /* + * As hdestroy() will never be called on these tables, it will be + * safe to use references into the stored data as keys. + */ + if (hcreate_r(0, &queue_map) == 0) + err(1, "Failed to create altq queue map"); + if (hcreate_r(0, &if_map) == 0) + err(1, "Failed to create altq interface map"); + if (hcreate_r(0, &qid_map) == 0) + err(1, "Failed to create altq queue id map"); +} + void pfaltq_store(struct pf_altq *a) { - struct pf_altq *altq; - + struct pfctl_altq *altq; + ENTRY item; + ENTRY *ret_item; + size_t key_size; + if ((altq = malloc(sizeof(*altq))) == NULL) - err(1, "malloc"); - memcpy(altq, a, sizeof(struct pf_altq)); - TAILQ_INSERT_TAIL(&altqs, altq, entries); + err(1, "queue malloc"); + memcpy(&altq->pa, a, sizeof(struct pf_altq)); + memset(&altq->meta, 0, sizeof(altq->meta)); + + if (a->qname[0] == 0) { + item.key = altq->pa.ifname; + item.data = altq; + if (hsearch_r(item, ENTER, &ret_item, &if_map) == 0) + err(1, "interface map insert"); + STAILQ_INSERT_TAIL(&interfaces, altq, meta.link); + } else { + key_size = sizeof(a->ifname) + sizeof(a->qname); + if ((item.key = malloc(key_size)) == NULL) + err(1, "queue map key malloc"); + snprintf(item.key, key_size, "%s:%s", a->ifname, a->qname); + item.data = altq; + if (hsearch_r(item, ENTER, &ret_item, &queue_map) == 0) + err(1, "queue map insert"); + + item.key = altq->pa.qname; + item.data = &altq->pa.qid; + if (hsearch_r(item, ENTER, &ret_item, &qid_map) == 0) + err(1, "qid map insert"); + } } -struct pf_altq * -pfaltq_lookup(const char *ifname) +static struct pfctl_altq * +pfaltq_lookup(char *ifname) { - struct pf_altq *altq; + ENTRY item; + ENTRY *ret_item; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(ifname, altq->ifname, IFNAMSIZ) == 0 && - altq->qname[0] == 0) - return (altq); - } - return (NULL); + item.key = ifname; + if (hsearch_r(item, FIND, &ret_item, &if_map) == 0) + return (NULL); + + return (ret_item->data); } -struct pf_altq * +static struct pfctl_altq * qname_to_pfaltq(const char *qname, const char *ifname) { - struct pf_altq *altq; + ENTRY item; + ENTRY *ret_item; + char key[IFNAMSIZ + PF_QNAME_SIZE]; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(ifname, altq->ifname, IFNAMSIZ) == 0 && - strncmp(qname, altq->qname, PF_QNAME_SIZE) == 0) - return (altq); - } - return (NULL); + item.key = key; + snprintf(item.key, sizeof(key), "%s:%s", ifname, qname); + if (hsearch_r(item, FIND, &ret_item, &queue_map) == 0) + return (NULL); + + return (ret_item->data); } -u_int32_t -qname_to_qid(const char *qname) +static u_int32_t +qname_to_qid(char *qname) { - struct pf_altq *altq; - + ENTRY item; + ENTRY *ret_item; + uint32_t qid; + /* * We guarantee that same named queues on different interfaces - * have the same qid, so we do NOT need to limit matching on - * one interface! + * have the same qid. */ + item.key = qname; + if (hsearch_r(item, FIND, &ret_item, &qid_map) == 0) + return (0); - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(qname, altq->qname, PF_QNAME_SIZE) == 0) - return (altq->qid); - } - return (0); + qid = *(uint32_t *)ret_item->data; + return (qid); } void @@ -315,28 +365,26 @@ eval_pfaltq(struct pfctl *pf, struct pf_altq *pa, stru int check_commit_altq(int dev, int opts) { - struct pf_altq *altq; - int error = 0; + struct pfctl_altq *if_ppa; + int error = 0; /* call the discipline check for each interface. */ - TAILQ_FOREACH(altq, &altqs, entries) { - if (altq->qname[0] == 0) { - switch (altq->scheduler) { - case ALTQT_CBQ: - error = check_commit_cbq(dev, opts, altq); - break; - case ALTQT_PRIQ: - error = check_commit_priq(dev, opts, altq); - break; - case ALTQT_HFSC: - error = check_commit_hfsc(dev, opts, altq); - break; - case ALTQT_FAIRQ: - error = check_commit_fairq(dev, opts, altq); - break; - default: - break; - } + STAILQ_FOREACH(if_ppa, &interfaces, meta.link) { + switch (if_ppa->pa.scheduler) { + case ALTQT_CBQ: + error = check_commit_cbq(dev, opts, if_ppa); + break; + case ALTQT_PRIQ: + error = check_commit_priq(dev, opts, if_ppa); + break; + case ALTQT_HFSC: + error = check_commit_hfsc(dev, opts, if_ppa); + break; + case ALTQT_FAIRQ: + error = check_commit_fairq(dev, opts, if_ppa); + break; + default: + break; } } return (error); @@ -350,17 +398,16 @@ eval_pfqueue(struct pfctl *pf, struct pf_altq *pa, str struct node_queue_opt *opts) { /* should be merged with expand_queue */ - struct pf_altq *if_pa, *parent, *altq; - u_int64_t bwsum; - int error = 0; + struct pfctl_altq *if_ppa, *parent; + int error = 0; /* find the corresponding interface and copy fields used by queues */ - if ((if_pa = pfaltq_lookup(pa->ifname)) == NULL) { + if ((if_ppa = pfaltq_lookup(pa->ifname)) == NULL) { fprintf(stderr, "altq not defined on %s\n", pa->ifname); return (1); } - pa->scheduler = if_pa->scheduler; - pa->ifbandwidth = if_pa->ifbandwidth; + pa->scheduler = if_ppa->pa.scheduler; + pa->ifbandwidth = if_ppa->pa.ifbandwidth; if (qname_to_pfaltq(pa->qname, pa->ifname) != NULL) { fprintf(stderr, "queue %s already exists on interface %s\n", @@ -377,7 +424,7 @@ eval_pfqueue(struct pfctl *pf, struct pf_altq *pa, str pa->parent, pa->qname); return (1); } - pa->parent_qid = parent->qid; + pa->parent_qid = parent->pa.qid; } if (pa->qlimit == 0) pa->qlimit = DEFAULT_QLIMIT; @@ -385,53 +432,56 @@ eval_pfqueue(struct pfctl *pf, struct pf_altq *pa, str if (pa->scheduler == ALTQT_CBQ || pa->scheduler == ALTQT_HFSC || pa->scheduler == ALTQT_FAIRQ) { pa->bandwidth = eval_bwspec(bw, - parent == NULL ? pa->ifbandwidth : parent->bandwidth); + parent == NULL ? pa->ifbandwidth : parent->pa.bandwidth); if (pa->bandwidth > pa->ifbandwidth) { fprintf(stderr, "bandwidth for %s higher than " "interface\n", pa->qname); return (1); } - /* check the sum of the child bandwidth is under parent's */ - if (parent != NULL) { - if (pa->bandwidth > parent->bandwidth) { + /* + * If not HFSC, then check that the sum of the child + * bandwidths is less than the parent's bandwidth. For + * HFSC, the equivalent concept is to check that the sum of + * the child linkshare service curves are under the parent's + * linkshare service curve, and that check is performed by + * eval_pfqueue_hfsc(). + */ + if ((parent != NULL) && (pa->scheduler != ALTQT_HFSC)) { + if (pa->bandwidth > parent->pa.bandwidth) { warnx("bandwidth for %s higher than parent", pa->qname); return (1); } - bwsum = 0; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, - IFNAMSIZ) == 0 && - altq->qname[0] != 0 && - strncmp(altq->parent, pa->parent, - PF_QNAME_SIZE) == 0) - bwsum += altq->bandwidth; + parent->meta.bwsum += pa->bandwidth; + if (parent->meta.bwsum > parent->pa.bandwidth) { + warnx("the sum of the child bandwidth (%" PRIu64 + ") higher than parent \"%s\" (%" PRIu64 ")", + parent->meta.bwsum, parent->pa.qname, + parent->pa.bandwidth); } - bwsum += pa->bandwidth; - if (bwsum > parent->bandwidth) { - warnx("the sum of the child bandwidth higher" - " than parent \"%s\"", parent->qname); - } } } if (eval_queue_opts(pa, opts, - parent == NULL ? pa->ifbandwidth : parent->bandwidth)) + parent == NULL ? pa->ifbandwidth : parent->pa.bandwidth)) return (1); + if (parent != NULL) + parent->meta.children++; + switch (pa->scheduler) { case ALTQT_CBQ: - error = eval_pfqueue_cbq(pf, pa); + error = eval_pfqueue_cbq(pf, pa, if_ppa); break; case ALTQT_PRIQ: - error = eval_pfqueue_priq(pf, pa); + error = eval_pfqueue_priq(pf, pa, if_ppa); break; case ALTQT_HFSC: - error = eval_pfqueue_hfsc(pf, pa); + error = eval_pfqueue_hfsc(pf, pa, if_ppa, parent); break; case ALTQT_FAIRQ: - error = eval_pfqueue_fairq(pf, pa); + error = eval_pfqueue_fairq(pf, pa, if_ppa, parent); break; default: break; @@ -446,7 +496,7 @@ eval_pfqueue(struct pfctl *pf, struct pf_altq *pa, str #define RM_NS_PER_SEC (1000000000) static int -eval_pfqueue_cbq(struct pfctl *pf, struct pf_altq *pa) +eval_pfqueue_cbq(struct pfctl *pf, struct pf_altq *pa, struct pfctl_altq *if_ppa) { struct cbq_opts *opts; u_int ifmtu; @@ -476,6 +526,11 @@ eval_pfqueue_cbq(struct pfctl *pf, struct pf_altq *pa) if (pa->parent[0] == 0) opts->flags |= (CBQCLF_ROOTCLASS | CBQCLF_WRR); + if (pa->pq_u.cbq_opts.flags & CBQCLF_ROOTCLASS) + if_ppa->meta.root_classes++; + if (pa->pq_u.cbq_opts.flags & CBQCLF_DEFCLASS) + if_ppa->meta.default_classes++; + cbq_compute_idletime(pf, pa); return (0); } @@ -568,33 +623,20 @@ cbq_compute_idletime(struct pfctl *pf, struct pf_altq } static int -check_commit_cbq(int dev, int opts, struct pf_altq *pa) +check_commit_cbq(int dev, int opts, struct pfctl_altq *if_ppa) { - struct pf_altq *altq; - int root_class, default_class; - int error = 0; + int error = 0; /* * check if cbq has one root queue and one default queue * for this interface */ - root_class = default_class = 0; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - if (altq->pq_u.cbq_opts.flags & CBQCLF_ROOTCLASS) - root_class++; - if (altq->pq_u.cbq_opts.flags & CBQCLF_DEFCLASS) - default_class++; - } - if (root_class != 1) { - warnx("should have one root queue on %s", pa->ifname); + if (if_ppa->meta.root_classes != 1) { + warnx("should have one root queue on %s", if_ppa->pa.ifname); error++; } - if (default_class != 1) { - warnx("should have one default queue on %s", pa->ifname); + if (if_ppa->meta.default_classes != 1) { + warnx("should have one default queue on %s", if_ppa->pa.ifname); error++; } return (error); @@ -641,51 +683,37 @@ print_cbq_opts(const struct pf_altq *a) * PRIQ support functions */ static int -eval_pfqueue_priq(struct pfctl *pf, struct pf_altq *pa) +eval_pfqueue_priq(struct pfctl *pf, struct pf_altq *pa, struct pfctl_altq *if_ppa) { - struct pf_altq *altq; if (pa->priority >= PRIQ_MAXPRI) { warnx("priority out of range: max %d", PRIQ_MAXPRI - 1); return (-1); } - /* the priority should be unique for the interface */ - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) == 0 && - altq->qname[0] != 0 && altq->priority == pa->priority) { - warnx("%s and %s have the same priority", - altq->qname, pa->qname); - return (-1); - } - } + if (BIT_ISSET(QPRI_BITSET_SIZE, pa->priority, &if_ppa->meta.qpris)) { + warnx("%s does not have a unique priority on interface %s", + pa->qname, pa->ifname); + return (-1); + } else + BIT_SET(QPRI_BITSET_SIZE, pa->priority, &if_ppa->meta.qpris); + if (pa->pq_u.priq_opts.flags & PRCF_DEFAULTCLASS) + if_ppa->meta.default_classes++; return (0); } static int -check_commit_priq(int dev, int opts, struct pf_altq *pa) +check_commit_priq(int dev, int opts, struct pfctl_altq *if_ppa) { - struct pf_altq *altq; - int default_class; - int error = 0; /* * check if priq has one default class for this interface */ - default_class = 0; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - if (altq->pq_u.priq_opts.flags & PRCF_DEFAULTCLASS) - default_class++; + if (if_ppa->meta.default_classes != 1) { + warnx("should have one default queue on %s", if_ppa->pa.ifname); + return (1); } - if (default_class != 1) { - warnx("should have one default queue on %s", pa->ifname); - error++; - } - return (error); + return (0); } static int @@ -720,15 +748,15 @@ print_priq_opts(const struct pf_altq *a) * HFSC support functions */ static int -eval_pfqueue_hfsc(struct pfctl *pf, struct pf_altq *pa) +eval_pfqueue_hfsc(struct pfctl *pf, struct pf_altq *pa, struct pfctl_altq *if_ppa, + struct pfctl_altq *parent) { - struct pf_altq *altq, *parent; struct hfsc_opts_v1 *opts; struct service_curve sc; opts = &pa->pq_u.hfsc_opts; - if (pa->parent[0] == 0) { + if (parent == NULL) { /* root queue */ opts->lssc_m1 = pa->ifbandwidth; opts->lssc_m2 = pa->ifbandwidth; @@ -736,9 +764,21 @@ eval_pfqueue_hfsc(struct pfctl *pf, struct pf_altq *pa return (0); } - LIST_INIT(&rtsc); - LIST_INIT(&lssc); + /* First child initializes the parent's service curve accumulators. */ + if (parent->meta.children == 1) { + LIST_INIT(&parent->meta.rtsc); + LIST_INIT(&parent->meta.lssc); + } + if (parent->pa.pq_u.hfsc_opts.flags & HFCF_DEFAULTCLASS) { + warnx("adding %s would make default queue %s not a leaf", + pa->qname, pa->parent); + return (-1); + } + + if (pa->pq_u.hfsc_opts.flags & HFCF_DEFAULTCLASS) + if_ppa->meta.default_classes++; + /* if link_share is not specified, use bandwidth */ if (opts->lssc_m2 == 0) opts->lssc_m2 = pa->bandwidth; @@ -768,51 +808,22 @@ eval_pfqueue_hfsc(struct pfctl *pf, struct pf_altq *pa * be smaller than the interface bandwidth, and the upper-limit should * be larger than the real-time service curve when both are defined. */ - parent = qname_to_pfaltq(pa->parent, pa->ifname); - if (parent == NULL) - errx(1, "parent %s not found for %s", pa->parent, pa->qname); - - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - - /* if the class has a real-time service curve, add it. */ - if (opts->rtsc_m2 != 0 && altq->pq_u.hfsc_opts.rtsc_m2 != 0) { - sc.m1 = altq->pq_u.hfsc_opts.rtsc_m1; - sc.d = altq->pq_u.hfsc_opts.rtsc_d; - sc.m2 = altq->pq_u.hfsc_opts.rtsc_m2; - gsc_add_sc(&rtsc, &sc); - } - - if (strncmp(altq->parent, pa->parent, PF_QNAME_SIZE) != 0) - continue; - - /* if the class has a linkshare service curve, add it. */ - if (opts->lssc_m2 != 0 && altq->pq_u.hfsc_opts.lssc_m2 != 0) { - sc.m1 = altq->pq_u.hfsc_opts.lssc_m1; - sc.d = altq->pq_u.hfsc_opts.lssc_d; - sc.m2 = altq->pq_u.hfsc_opts.lssc_m2; - gsc_add_sc(&lssc, &sc); - } - } - + /* check the real-time service curve. reserve 20% of interface bw */ if (opts->rtsc_m2 != 0) { /* add this queue to the sum */ sc.m1 = opts->rtsc_m1; sc.d = opts->rtsc_d; sc.m2 = opts->rtsc_m2; - gsc_add_sc(&rtsc, &sc); + gsc_add_sc(&parent->meta.rtsc, &sc); /* compare the sum with 80% of the interface */ sc.m1 = 0; sc.d = 0; sc.m2 = pa->ifbandwidth / 100 * 80; - if (!is_gsc_under_sc(&rtsc, &sc)) { + if (!is_gsc_under_sc(&parent->meta.rtsc, &sc)) { warnx("real-time sc exceeds 80%% of the interface " "bandwidth (%s)", rate2str((double)sc.m2)); - goto err_ret; + return (-1); } } @@ -822,14 +833,14 @@ eval_pfqueue_hfsc(struct pfctl *pf, struct pf_altq *pa sc.m1 = opts->lssc_m1; sc.d = opts->lssc_d; sc.m2 = opts->lssc_m2; - gsc_add_sc(&lssc, &sc); + gsc_add_sc(&parent->meta.lssc, &sc); /* compare the sum of the children with parent's sc */ - sc.m1 = parent->pq_u.hfsc_opts.lssc_m1; - sc.d = parent->pq_u.hfsc_opts.lssc_d; - sc.m2 = parent->pq_u.hfsc_opts.lssc_m2; - if (!is_gsc_under_sc(&lssc, &sc)) { + sc.m1 = parent->pa.pq_u.hfsc_opts.lssc_m1; + sc.d = parent->pa.pq_u.hfsc_opts.lssc_d; + sc.m2 = parent->pa.pq_u.hfsc_opts.lssc_m2; + if (!is_gsc_under_sc(&parent->meta.lssc, &sc)) { warnx("linkshare sc exceeds parent's sc"); - goto err_ret; + return (-1); } } @@ -838,38 +849,30 @@ eval_pfqueue_hfsc(struct pfctl *pf, struct pf_altq *pa if (opts->ulsc_m1 > pa->ifbandwidth || opts->ulsc_m2 > pa->ifbandwidth) { warnx("upper-limit larger than interface bandwidth"); - goto err_ret; + return (-1); } if (opts->rtsc_m2 != 0 && opts->rtsc_m2 > opts->ulsc_m2) { warnx("upper-limit sc smaller than real-time sc"); - goto err_ret; + return (-1); } } - gsc_destroy(&rtsc); - gsc_destroy(&lssc); - return (0); - -err_ret: - gsc_destroy(&rtsc); - gsc_destroy(&lssc); - return (-1); } /* * FAIRQ support functions */ static int -eval_pfqueue_fairq(struct pfctl *pf __unused, struct pf_altq *pa) +eval_pfqueue_fairq(struct pfctl *pf __unused, struct pf_altq *pa, + struct pfctl_altq *if_ppa, struct pfctl_altq *parent) { - struct pf_altq *altq, *parent; struct fairq_opts *opts; struct service_curve sc; opts = &pa->pq_u.fairq_opts; - if (pa->parent[0] == 0) { + if (pa->parent == NULL) { /* root queue */ opts->lssc_m1 = pa->ifbandwidth; opts->lssc_m2 = pa->ifbandwidth; @@ -877,8 +880,19 @@ eval_pfqueue_fairq(struct pfctl *pf __unused, struct p return (0); } - LIST_INIT(&lssc); + /* First child initializes the parent's service curve accumulator. */ + if (parent->meta.children == 1) + LIST_INIT(&parent->meta.lssc); + if (parent->pa.pq_u.fairq_opts.flags & FARF_DEFAULTCLASS) { + warnx("adding %s would make default queue %s not a leaf", + pa->qname, pa->parent); + return (-1); + } + + if (pa->pq_u.fairq_opts.flags & FARF_DEFAULTCLASS) + if_ppa->meta.default_classes++; + /* if link_share is not specified, use bandwidth */ if (opts->lssc_m2 == 0) opts->lssc_m2 = pa->bandwidth; @@ -894,122 +908,49 @@ eval_pfqueue_fairq(struct pfctl *pf __unused, struct p * be smaller than the interface bandwidth, and the upper-limit should * be larger than the real-time service curve when both are defined. */ - parent = qname_to_pfaltq(pa->parent, pa->ifname); - if (parent == NULL) - errx(1, "parent %s not found for %s", pa->parent, pa->qname); - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - - if (strncmp(altq->parent, pa->parent, PF_QNAME_SIZE) != 0) - continue; - - /* if the class has a link-sharing service curve, add it. */ - if (opts->lssc_m2 != 0 && altq->pq_u.fairq_opts.lssc_m2 != 0) { - sc.m1 = altq->pq_u.fairq_opts.lssc_m1; - sc.d = altq->pq_u.fairq_opts.lssc_d; - sc.m2 = altq->pq_u.fairq_opts.lssc_m2; - gsc_add_sc(&lssc, &sc); - } - } - - /* check the link-sharing service curve. */ + /* check the linkshare service curve. */ if (opts->lssc_m2 != 0) { - sc.m1 = parent->pq_u.fairq_opts.lssc_m1; - sc.d = parent->pq_u.fairq_opts.lssc_d; - sc.m2 = parent->pq_u.fairq_opts.lssc_m2; - if (!is_gsc_under_sc(&lssc, &sc)) { + /* add this queue to the child sum */ + sc.m1 = opts->lssc_m1; + sc.d = opts->lssc_d; + sc.m2 = opts->lssc_m2; + gsc_add_sc(&parent->meta.lssc, &sc); + /* compare the sum of the children with parent's sc */ + sc.m1 = parent->pa.pq_u.fairq_opts.lssc_m1; + sc.d = parent->pa.pq_u.fairq_opts.lssc_d; + sc.m2 = parent->pa.pq_u.fairq_opts.lssc_m2; + if (!is_gsc_under_sc(&parent->meta.lssc, &sc)) { warnx("link-sharing sc exceeds parent's sc"); - goto err_ret; + return (-1); } } - gsc_destroy(&lssc); - return (0); - -err_ret: - gsc_destroy(&lssc); - return (-1); } static int -check_commit_hfsc(int dev, int opts, struct pf_altq *pa) +check_commit_hfsc(int dev, int opts, struct pfctl_altq *if_ppa) { - struct pf_altq *altq, *def = NULL; - int default_class; - int error = 0; /* check if hfsc has one default queue for this interface */ - default_class = 0; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - if (altq->parent[0] == 0) /* dummy root */ - continue; - if (altq->pq_u.hfsc_opts.flags & HFCF_DEFAULTCLASS) { - default_class++; - def = altq; - } - } - if (default_class != 1) { - warnx("should have one default queue on %s", pa->ifname); + if (if_ppa->meta.default_classes != 1) { + warnx("should have one default queue on %s", if_ppa->pa.ifname); return (1); } - /* make sure the default queue is a leaf */ - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - if (strncmp(altq->parent, def->qname, PF_QNAME_SIZE) == 0) { - warnx("default queue is not a leaf"); - error++; - } - } - return (error); + return (0); } static int -check_commit_fairq(int dev __unused, int opts __unused, struct pf_altq *pa) +check_commit_fairq(int dev __unused, int opts __unused, struct pfctl_altq *if_ppa) { - struct pf_altq *altq, *def = NULL; - int default_class; - int error = 0; /* check if fairq has one default queue for this interface */ - default_class = 0; - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - if (altq->pq_u.fairq_opts.flags & FARF_DEFAULTCLASS) { - default_class++; - def = altq; - } - } - if (default_class != 1) { - warnx("should have one default queue on %s", pa->ifname); + if (if_ppa->meta.default_classes != 1) { + warnx("should have one default queue on %s", if_ppa->pa.ifname); return (1); } - /* make sure the default queue is a leaf */ - TAILQ_FOREACH(altq, &altqs, entries) { - if (strncmp(altq->ifname, pa->ifname, IFNAMSIZ) != 0) - continue; - if (altq->qname[0] == 0) /* this is for interface */ - continue; - if (strncmp(altq->parent, def->qname, PF_QNAME_SIZE) == 0) { - warnx("default queue is not a leaf"); - error++; - } - } - return (error); + return (0); } static int @@ -1182,17 +1123,6 @@ is_gsc_under_sc(struct gen_sc *gsc, struct service_cur return (1); } -static void -gsc_destroy(struct gen_sc *gsc) -{ - struct segment *s; - - while ((s = LIST_FIRST(gsc)) != NULL) { - LIST_REMOVE(s, _next); - free(s); - } -} - /* * return a segment entry starting at x. * if gsc has no entry starting at x, a new entry is created at x. @@ -1351,8 +1281,7 @@ getifspeed(char *ifname) struct ifreq ifr; struct if_data ifrdat; - if ((s = socket(get_socket_domain(), SOCK_DGRAM, 0)) < 0) - err(1, "socket"); + s = get_query_socket(); bzero(&ifr, sizeof(ifr)); if (strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)) >= sizeof(ifr.ifr_name)) @@ -1360,8 +1289,6 @@ getifspeed(char *ifname) ifr.ifr_data = (caddr_t)&ifrdat; if (ioctl(s, SIOCGIFDATA, (caddr_t)&ifr) == -1) err(1, "SIOCGIFDATA"); - if (close(s)) - err(1, "close"); return ((u_int32_t)ifrdat.ifi_baudrate); } #endif @@ -1372,8 +1299,7 @@ getifmtu(char *ifname) int s; struct ifreq ifr; - if ((s = socket(get_socket_domain(), SOCK_DGRAM, 0)) < 0) - err(1, "socket"); + s = get_query_socket(); bzero(&ifr, sizeof(ifr)); if (strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)) >= sizeof(ifr.ifr_name)) @@ -1384,8 +1310,6 @@ getifmtu(char *ifname) #else err(1, "SIOCGIFMTU"); #endif - if (close(s)) - err(1, "close"); if (ifr.ifr_mtu > 0) return (ifr.ifr_mtu); else { Modified: stable/12/sbin/pfctl/pfctl_parser.c ============================================================================== --- stable/12/sbin/pfctl/pfctl_parser.c Mon Feb 11 22:58:43 2019 (r344025) +++ stable/12/sbin/pfctl/pfctl_parser.c Mon Feb 11 23:13:38 2019 (r344026) @@ -50,6 +50,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -72,7 +73,6 @@ void print_fromto(struct pf_rule_addr *, pf_osfp_t, struct pf_rule_addr *, u_int8_t, u_int8_t, int, int); int ifa_skip_if(const char *filter, struct node_host *p); -struct node_host *ifa_grouplookup(const char *, int); struct node_host *host_if(const char *, int); struct node_host *host_v4(const char *, int); struct node_host *host_v6(const char *, int); @@ -209,6 +209,19 @@ const struct pf_timeout pf_timeouts[] = { { NULL, 0 } }; +static struct hsearch_data isgroup_map; + +static __attribute__((constructor)) void +pfctl_parser_init(void) +{ + /* + * As hdestroy() will never be called on these tables, it will be + * safe to use references into the stored data as keys. + */ + if (hcreate_r(0, &isgroup_map) == 0) + err(1, "Failed to create interface group query response map"); +} + const struct icmptypeent * geticmptypebynumber(u_int8_t type, sa_family_t af) { @@ -1153,6 +1166,71 @@ check_netmask(struct node_host *h, sa_family_t af) static struct node_host *iftab; +/* + * Retrieve the list of groups this interface is a member of and make sure + * each group is in the group map. + */ +static void +ifa_add_groups_to_map(char *ifa_name) +{ + int s, len; + struct ifgroupreq ifgr; + struct ifg_req *ifg; + + s = get_query_socket(); + + /* Get size of group list for this interface */ + memset(&ifgr, 0, sizeof(ifgr)); + strlcpy(ifgr.ifgr_name, ifa_name, IFNAMSIZ); + if (ioctl(s, SIOCGIFGROUP, (caddr_t)&ifgr) == -1) + err(1, "SIOCGIFGROUP"); + + /* Retrieve group list for this interface */ + len = ifgr.ifgr_len; + ifgr.ifgr_groups = + (struct ifg_req *)calloc(len / sizeof(struct ifg_req), + sizeof(struct ifg_req)); + if (ifgr.ifgr_groups == NULL) + err(1, "calloc"); + if (ioctl(s, SIOCGIFGROUP, (caddr_t)&ifgr) == -1) + err(1, "SIOCGIFGROUP"); + + ifg = ifgr.ifgr_groups; + for (; ifg && len >= sizeof(struct ifg_req); ifg++) { + len -= sizeof(struct ifg_req); + if (strcmp(ifg->ifgrq_group, "all")) { + ENTRY item; + ENTRY *ret_item; + int *answer; + + item.key = ifg->ifgrq_group; + if (hsearch_r(item, FIND, &ret_item, &isgroup_map) == 0) { + struct ifgroupreq ifgr2; + + /* Don't know the answer yet */ + if ((answer = malloc(sizeof(int))) == NULL) + err(1, "malloc"); + + bzero(&ifgr2, sizeof(ifgr2)); + strlcpy(ifgr2.ifgr_name, ifg->ifgrq_group, + sizeof(ifgr2.ifgr_name)); + if (ioctl(s, SIOCGIFGMEMB, (caddr_t)&ifgr2) == 0) + *answer = ifgr2.ifgr_len; + else + *answer = 0; + + item.key = strdup(ifg->ifgrq_group); + item.data = answer; + if (hsearch_r(item, ENTER, &ret_item, + &isgroup_map) == 0) + err(1, "interface group query response" + " map insert"); + } + } + } + free(ifgr.ifgr_groups); +} + void ifa_load(void) { *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Feb 11 23:24:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 948CC14E6DC6; Mon, 11 Feb 2019 23:24:40 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 452168E89F; Mon, 11 Feb 2019 23:24:40 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1ACBC70F3; Mon, 11 Feb 2019 23:24:40 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BNOdiD090381; Mon, 11 Feb 2019 23:24:39 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BNOdL4090379; Mon, 11 Feb 2019 23:24:39 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902112324.x1BNOdL4090379@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 23:24:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net X-SVN-Group: stable-12 X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net X-SVN-Commit-Revision: 344027 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 452168E89F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 23:24:41 -0000 Author: pkelsey Date: Mon Feb 11 23:24:39 2019 New Revision: 344027 URL: https://svnweb.freebsd.org/changeset/base/344027 Log: MFC r343291: Convert vmx(4) to being an iflib driver. Also, expose IFLIB_MAX_RX_SEGS to iflib drivers and add iflib_dma_alloc_align() to the iflib API. Performance is generally better with the tunable/sysctl dev.vmx..iflib.tx_abdicate=1. Reviewed by: shurd Relnotes: yes Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D18761 MFC r343301: Add missing dependency to vmxnet3 Makefile and clean it up a bit otherwise. MFC r343688: Fix interrupt index configuration when using MSI interrupts. When in MSI mode, the device was only being configured with one interrupt index, but it needs two - one for the actual interrupt and one to park the tx queue at. Also clarified comments relating to interrupt index assignment. Reported by: Yuri Pankov Modified: stable/12/sys/dev/vmware/vmxnet3/if_vmx.c stable/12/sys/dev/vmware/vmxnet3/if_vmxvar.h stable/12/sys/modules/vmware/vmxnet3/Makefile stable/12/sys/net/iflib.c stable/12/sys/net/iflib.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/vmware/vmxnet3/if_vmx.c ============================================================================== --- stable/12/sys/dev/vmware/vmxnet3/if_vmx.c Mon Feb 11 23:13:38 2019 (r344026) +++ stable/12/sys/dev/vmware/vmxnet3/if_vmx.c Mon Feb 11 23:24:39 2019 (r344027) @@ -1,6 +1,7 @@ /*- * Copyright (c) 2013 Tsubai Masanari * Copyright (c) 2013 Bryan Venteicher + * Copyright (c) 2018 Patrick Kelsey * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -24,7 +25,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include @@ -34,7 +34,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include @@ -46,9 +45,8 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include -#include - #include #include #include @@ -57,8 +55,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include - #include #include #include @@ -67,139 +63,95 @@ __FBSDID("$FreeBSD$"); #include #include +#include "ifdi_if.h" + #include "if_vmxreg.h" #include "if_vmxvar.h" #include "opt_inet.h" #include "opt_inet6.h" -#ifdef VMXNET3_FAILPOINTS -#include -static SYSCTL_NODE(DEBUG_FP, OID_AUTO, vmxnet3, CTLFLAG_RW, 0, - "vmxnet3 fail points"); -#define VMXNET3_FP _debug_fail_point_vmxnet3 -#endif -static int vmxnet3_probe(device_t); -static int vmxnet3_attach(device_t); -static int vmxnet3_detach(device_t); -static int vmxnet3_shutdown(device_t); +#define VMXNET3_VMWARE_VENDOR_ID 0x15AD +#define VMXNET3_VMWARE_DEVICE_ID 0x07B0 +static pci_vendor_info_t vmxnet3_vendor_info_array[] = +{ + PVID(VMXNET3_VMWARE_VENDOR_ID, VMXNET3_VMWARE_DEVICE_ID, "VMware VMXNET3 Ethernet Adapter"), + /* required last entry */ + PVID_END +}; + +static void *vmxnet3_register(device_t); +static int vmxnet3_attach_pre(if_ctx_t); +static int vmxnet3_msix_intr_assign(if_ctx_t, int); +static void vmxnet3_free_irqs(struct vmxnet3_softc *); +static int vmxnet3_attach_post(if_ctx_t); +static int vmxnet3_detach(if_ctx_t); +static int vmxnet3_shutdown(if_ctx_t); +static int vmxnet3_suspend(if_ctx_t); +static int vmxnet3_resume(if_ctx_t); + static int vmxnet3_alloc_resources(struct vmxnet3_softc *); static void vmxnet3_free_resources(struct vmxnet3_softc *); static int vmxnet3_check_version(struct vmxnet3_softc *); -static void vmxnet3_initial_config(struct vmxnet3_softc *); -static void vmxnet3_check_multiqueue(struct vmxnet3_softc *); +static void vmxnet3_set_interrupt_idx(struct vmxnet3_softc *); -static int vmxnet3_alloc_msix_interrupts(struct vmxnet3_softc *); -static int vmxnet3_alloc_msi_interrupts(struct vmxnet3_softc *); -static int vmxnet3_alloc_legacy_interrupts(struct vmxnet3_softc *); -static int vmxnet3_alloc_interrupt(struct vmxnet3_softc *, int, int, - struct vmxnet3_interrupt *); -static int vmxnet3_alloc_intr_resources(struct vmxnet3_softc *); -static int vmxnet3_setup_msix_interrupts(struct vmxnet3_softc *); -static int vmxnet3_setup_legacy_interrupt(struct vmxnet3_softc *); -static int vmxnet3_setup_interrupts(struct vmxnet3_softc *); -static int vmxnet3_alloc_interrupts(struct vmxnet3_softc *); +static int vmxnet3_queues_shared_alloc(struct vmxnet3_softc *); +static void vmxnet3_init_txq(struct vmxnet3_softc *, int); +static int vmxnet3_tx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); +static void vmxnet3_init_rxq(struct vmxnet3_softc *, int, int); +static int vmxnet3_rx_queues_alloc(if_ctx_t, caddr_t *, uint64_t *, int, int); +static void vmxnet3_queues_free(if_ctx_t); -static void vmxnet3_free_interrupt(struct vmxnet3_softc *, - struct vmxnet3_interrupt *); -static void vmxnet3_free_interrupts(struct vmxnet3_softc *); - -#ifndef VMXNET3_LEGACY_TX -static int vmxnet3_alloc_taskqueue(struct vmxnet3_softc *); -static void vmxnet3_start_taskqueue(struct vmxnet3_softc *); -static void vmxnet3_drain_taskqueue(struct vmxnet3_softc *); -static void vmxnet3_free_taskqueue(struct vmxnet3_softc *); -#endif - -static int vmxnet3_init_rxq(struct vmxnet3_softc *, int); -static int vmxnet3_init_txq(struct vmxnet3_softc *, int); -static int vmxnet3_alloc_rxtx_queues(struct vmxnet3_softc *); -static void vmxnet3_destroy_rxq(struct vmxnet3_rxqueue *); -static void vmxnet3_destroy_txq(struct vmxnet3_txqueue *); -static void vmxnet3_free_rxtx_queues(struct vmxnet3_softc *); - static int vmxnet3_alloc_shared_data(struct vmxnet3_softc *); static void vmxnet3_free_shared_data(struct vmxnet3_softc *); -static int vmxnet3_alloc_txq_data(struct vmxnet3_softc *); -static void vmxnet3_free_txq_data(struct vmxnet3_softc *); -static int vmxnet3_alloc_rxq_data(struct vmxnet3_softc *); -static void vmxnet3_free_rxq_data(struct vmxnet3_softc *); -static int vmxnet3_alloc_queue_data(struct vmxnet3_softc *); -static void vmxnet3_free_queue_data(struct vmxnet3_softc *); static int vmxnet3_alloc_mcast_table(struct vmxnet3_softc *); +static void vmxnet3_free_mcast_table(struct vmxnet3_softc *); static void vmxnet3_init_shared_data(struct vmxnet3_softc *); -static void vmxnet3_init_hwassist(struct vmxnet3_softc *); -static void vmxnet3_reinit_interface(struct vmxnet3_softc *); static void vmxnet3_reinit_rss_shared_data(struct vmxnet3_softc *); static void vmxnet3_reinit_shared_data(struct vmxnet3_softc *); static int vmxnet3_alloc_data(struct vmxnet3_softc *); static void vmxnet3_free_data(struct vmxnet3_softc *); -static int vmxnet3_setup_interface(struct vmxnet3_softc *); static void vmxnet3_evintr(struct vmxnet3_softc *); -static void vmxnet3_txq_eof(struct vmxnet3_txqueue *); -static void vmxnet3_rx_csum(struct vmxnet3_rxcompdesc *, struct mbuf *); -static int vmxnet3_newbuf(struct vmxnet3_softc *, struct vmxnet3_rxring *); -static void vmxnet3_rxq_eof_discard(struct vmxnet3_rxqueue *, - struct vmxnet3_rxring *, int); -static void vmxnet3_rxq_eof(struct vmxnet3_rxqueue *); -static void vmxnet3_legacy_intr(void *); -static void vmxnet3_txq_intr(void *); -static void vmxnet3_rxq_intr(void *); -static void vmxnet3_event_intr(void *); +static int vmxnet3_isc_txd_encap(void *, if_pkt_info_t); +static void vmxnet3_isc_txd_flush(void *, uint16_t, qidx_t); +static int vmxnet3_isc_txd_credits_update(void *, uint16_t, bool); +static int vmxnet3_isc_rxd_available(void *, uint16_t, qidx_t, qidx_t); +static int vmxnet3_isc_rxd_pkt_get(void *, if_rxd_info_t); +static void vmxnet3_isc_rxd_refill(void *, if_rxd_update_t); +static void vmxnet3_isc_rxd_flush(void *, uint16_t, uint8_t, qidx_t); +static int vmxnet3_legacy_intr(void *); +static int vmxnet3_rxq_intr(void *); +static int vmxnet3_event_intr(void *); -static void vmxnet3_txstop(struct vmxnet3_softc *, struct vmxnet3_txqueue *); -static void vmxnet3_rxstop(struct vmxnet3_softc *, struct vmxnet3_rxqueue *); -static void vmxnet3_stop(struct vmxnet3_softc *); +static void vmxnet3_stop(if_ctx_t); static void vmxnet3_txinit(struct vmxnet3_softc *, struct vmxnet3_txqueue *); -static int vmxnet3_rxinit(struct vmxnet3_softc *, struct vmxnet3_rxqueue *); -static int vmxnet3_reinit_queues(struct vmxnet3_softc *); +static void vmxnet3_rxinit(struct vmxnet3_softc *, struct vmxnet3_rxqueue *); +static void vmxnet3_reinit_queues(struct vmxnet3_softc *); static int vmxnet3_enable_device(struct vmxnet3_softc *); static void vmxnet3_reinit_rxfilters(struct vmxnet3_softc *); -static int vmxnet3_reinit(struct vmxnet3_softc *); -static void vmxnet3_init_locked(struct vmxnet3_softc *); -static void vmxnet3_init(void *); +static void vmxnet3_init(if_ctx_t); +static void vmxnet3_multi_set(if_ctx_t); +static int vmxnet3_mtu_set(if_ctx_t, uint32_t); +static void vmxnet3_media_status(if_ctx_t, struct ifmediareq *); +static int vmxnet3_media_change(if_ctx_t); +static int vmxnet3_promisc_set(if_ctx_t, int); +static uint64_t vmxnet3_get_counter(if_ctx_t, ift_counter); +static void vmxnet3_update_admin_status(if_ctx_t); +static void vmxnet3_txq_timer(if_ctx_t, uint16_t); -static int vmxnet3_txq_offload_ctx(struct vmxnet3_txqueue *,struct mbuf *, - int *, int *, int *); -static int vmxnet3_txq_load_mbuf(struct vmxnet3_txqueue *, struct mbuf **, - bus_dmamap_t, bus_dma_segment_t [], int *); -static void vmxnet3_txq_unload_mbuf(struct vmxnet3_txqueue *, bus_dmamap_t); -static int vmxnet3_txq_encap(struct vmxnet3_txqueue *, struct mbuf **); -#ifdef VMXNET3_LEGACY_TX -static void vmxnet3_start_locked(struct ifnet *); -static void vmxnet3_start(struct ifnet *); -#else -static int vmxnet3_txq_mq_start_locked(struct vmxnet3_txqueue *, - struct mbuf *); -static int vmxnet3_txq_mq_start(struct ifnet *, struct mbuf *); -static void vmxnet3_txq_tq_deferred(void *, int); -#endif -static void vmxnet3_txq_start(struct vmxnet3_txqueue *); -static void vmxnet3_tx_start_all(struct vmxnet3_softc *); - static void vmxnet3_update_vlan_filter(struct vmxnet3_softc *, int, uint16_t); -static void vmxnet3_register_vlan(void *, struct ifnet *, uint16_t); -static void vmxnet3_unregister_vlan(void *, struct ifnet *, uint16_t); -static void vmxnet3_set_rxfilter(struct vmxnet3_softc *); -static int vmxnet3_change_mtu(struct vmxnet3_softc *, int); -static int vmxnet3_ioctl(struct ifnet *, u_long, caddr_t); -static uint64_t vmxnet3_get_counter(struct ifnet *, ift_counter); +static void vmxnet3_vlan_register(if_ctx_t, uint16_t); +static void vmxnet3_vlan_unregister(if_ctx_t, uint16_t); +static void vmxnet3_set_rxfilter(struct vmxnet3_softc *, int); -#ifndef VMXNET3_LEGACY_TX -static void vmxnet3_qflush(struct ifnet *); -#endif - -static int vmxnet3_watchdog(struct vmxnet3_txqueue *); static void vmxnet3_refresh_host_stats(struct vmxnet3_softc *); -static void vmxnet3_tick(void *); +static int vmxnet3_link_is_up(struct vmxnet3_softc *); static void vmxnet3_link_status(struct vmxnet3_softc *); -static void vmxnet3_media_status(struct ifnet *, struct ifmediareq *); -static int vmxnet3_media_change(struct ifnet *); static void vmxnet3_set_lladdr(struct vmxnet3_softc *); static void vmxnet3_get_lladdr(struct vmxnet3_softc *); @@ -219,18 +171,14 @@ static void vmxnet3_write_bar1(struct vmxnet3_softc *, static void vmxnet3_write_cmd(struct vmxnet3_softc *, uint32_t); static uint32_t vmxnet3_read_cmd(struct vmxnet3_softc *, uint32_t); +static int vmxnet3_tx_queue_intr_enable(if_ctx_t, uint16_t); +static int vmxnet3_rx_queue_intr_enable(if_ctx_t, uint16_t); +static void vmxnet3_link_intr_enable(if_ctx_t); static void vmxnet3_enable_intr(struct vmxnet3_softc *, int); static void vmxnet3_disable_intr(struct vmxnet3_softc *, int); -static void vmxnet3_enable_all_intrs(struct vmxnet3_softc *); -static void vmxnet3_disable_all_intrs(struct vmxnet3_softc *); +static void vmxnet3_intr_enable_all(if_ctx_t); +static void vmxnet3_intr_disable_all(if_ctx_t); -static int vmxnet3_dma_malloc(struct vmxnet3_softc *, bus_size_t, - bus_size_t, struct vmxnet3_dma_alloc *); -static void vmxnet3_dma_free(struct vmxnet3_softc *, - struct vmxnet3_dma_alloc *); -static int vmxnet3_tunable_int(struct vmxnet3_softc *, - const char *, int); - typedef enum { VMXNET3_BARRIER_RD, VMXNET3_BARRIER_WR, @@ -239,25 +187,16 @@ typedef enum { static void vmxnet3_barrier(struct vmxnet3_softc *, vmxnet3_barrier_t); -/* Tunables. */ -static int vmxnet3_mq_disable = 0; -TUNABLE_INT("hw.vmx.mq_disable", &vmxnet3_mq_disable); -static int vmxnet3_default_txnqueue = VMXNET3_DEF_TX_QUEUES; -TUNABLE_INT("hw.vmx.txnqueue", &vmxnet3_default_txnqueue); -static int vmxnet3_default_rxnqueue = VMXNET3_DEF_RX_QUEUES; -TUNABLE_INT("hw.vmx.rxnqueue", &vmxnet3_default_rxnqueue); -static int vmxnet3_default_txndesc = VMXNET3_DEF_TX_NDESC; -TUNABLE_INT("hw.vmx.txndesc", &vmxnet3_default_txndesc); -static int vmxnet3_default_rxndesc = VMXNET3_DEF_RX_NDESC; -TUNABLE_INT("hw.vmx.rxndesc", &vmxnet3_default_rxndesc); static device_method_t vmxnet3_methods[] = { - /* Device interface. */ - DEVMETHOD(device_probe, vmxnet3_probe), - DEVMETHOD(device_attach, vmxnet3_attach), - DEVMETHOD(device_detach, vmxnet3_detach), - DEVMETHOD(device_shutdown, vmxnet3_shutdown), - + /* Device interface */ + DEVMETHOD(device_register, vmxnet3_register), + DEVMETHOD(device_probe, iflib_device_probe), + DEVMETHOD(device_attach, iflib_device_attach), + DEVMETHOD(device_detach, iflib_device_detach), + DEVMETHOD(device_shutdown, iflib_device_shutdown), + DEVMETHOD(device_suspend, iflib_device_suspend), + DEVMETHOD(device_resume, iflib_device_resume), DEVMETHOD_END }; @@ -267,153 +206,382 @@ static driver_t vmxnet3_driver = { static devclass_t vmxnet3_devclass; DRIVER_MODULE(vmx, pci, vmxnet3_driver, vmxnet3_devclass, 0, 0); +IFLIB_PNP_INFO(pci, vmx, vmxnet3_vendor_info_array); +MODULE_VERSION(vmx, 2); MODULE_DEPEND(vmx, pci, 1, 1, 1); MODULE_DEPEND(vmx, ether, 1, 1, 1); +MODULE_DEPEND(vmx, iflib, 1, 1, 1); -#define VMXNET3_VMWARE_VENDOR_ID 0x15AD -#define VMXNET3_VMWARE_DEVICE_ID 0x07B0 +static device_method_t vmxnet3_iflib_methods[] = { + DEVMETHOD(ifdi_tx_queues_alloc, vmxnet3_tx_queues_alloc), + DEVMETHOD(ifdi_rx_queues_alloc, vmxnet3_rx_queues_alloc), + DEVMETHOD(ifdi_queues_free, vmxnet3_queues_free), -static int -vmxnet3_probe(device_t dev) -{ + DEVMETHOD(ifdi_attach_pre, vmxnet3_attach_pre), + DEVMETHOD(ifdi_attach_post, vmxnet3_attach_post), + DEVMETHOD(ifdi_detach, vmxnet3_detach), - if (pci_get_vendor(dev) == VMXNET3_VMWARE_VENDOR_ID && - pci_get_device(dev) == VMXNET3_VMWARE_DEVICE_ID) { - device_set_desc(dev, "VMware VMXNET3 Ethernet Adapter"); - return (BUS_PROBE_DEFAULT); - } + DEVMETHOD(ifdi_init, vmxnet3_init), + DEVMETHOD(ifdi_stop, vmxnet3_stop), + DEVMETHOD(ifdi_multi_set, vmxnet3_multi_set), + DEVMETHOD(ifdi_mtu_set, vmxnet3_mtu_set), + DEVMETHOD(ifdi_media_status, vmxnet3_media_status), + DEVMETHOD(ifdi_media_change, vmxnet3_media_change), + DEVMETHOD(ifdi_promisc_set, vmxnet3_promisc_set), + DEVMETHOD(ifdi_get_counter, vmxnet3_get_counter), + DEVMETHOD(ifdi_update_admin_status, vmxnet3_update_admin_status), + DEVMETHOD(ifdi_timer, vmxnet3_txq_timer), - return (ENXIO); + DEVMETHOD(ifdi_tx_queue_intr_enable, vmxnet3_tx_queue_intr_enable), + DEVMETHOD(ifdi_rx_queue_intr_enable, vmxnet3_rx_queue_intr_enable), + DEVMETHOD(ifdi_link_intr_enable, vmxnet3_link_intr_enable), + DEVMETHOD(ifdi_intr_enable, vmxnet3_intr_enable_all), + DEVMETHOD(ifdi_intr_disable, vmxnet3_intr_disable_all), + DEVMETHOD(ifdi_msix_intr_assign, vmxnet3_msix_intr_assign), + + DEVMETHOD(ifdi_vlan_register, vmxnet3_vlan_register), + DEVMETHOD(ifdi_vlan_unregister, vmxnet3_vlan_unregister), + + DEVMETHOD(ifdi_shutdown, vmxnet3_shutdown), + DEVMETHOD(ifdi_suspend, vmxnet3_suspend), + DEVMETHOD(ifdi_resume, vmxnet3_resume), + + DEVMETHOD_END +}; + +static driver_t vmxnet3_iflib_driver = { + "vmx", vmxnet3_iflib_methods, sizeof(struct vmxnet3_softc) +}; + +struct if_txrx vmxnet3_txrx = { + .ift_txd_encap = vmxnet3_isc_txd_encap, + .ift_txd_flush = vmxnet3_isc_txd_flush, + .ift_txd_credits_update = vmxnet3_isc_txd_credits_update, + .ift_rxd_available = vmxnet3_isc_rxd_available, + .ift_rxd_pkt_get = vmxnet3_isc_rxd_pkt_get, + .ift_rxd_refill = vmxnet3_isc_rxd_refill, + .ift_rxd_flush = vmxnet3_isc_rxd_flush, + .ift_legacy_intr = vmxnet3_legacy_intr +}; + +static struct if_shared_ctx vmxnet3_sctx_init = { + .isc_magic = IFLIB_MAGIC, + .isc_q_align = 512, + + .isc_tx_maxsize = VMXNET3_TX_MAXSIZE, + .isc_tx_maxsegsize = VMXNET3_TX_MAXSEGSIZE, + .isc_tso_maxsize = VMXNET3_TSO_MAXSIZE + sizeof(struct ether_vlan_header), + .isc_tso_maxsegsize = VMXNET3_TX_MAXSEGSIZE, + + /* + * These values are used to configure the busdma tag used for + * receive descriptors. Each receive descriptor only points to one + * buffer. + */ + .isc_rx_maxsize = VMXNET3_RX_MAXSEGSIZE, /* One buf per descriptor */ + .isc_rx_nsegments = 1, /* One mapping per descriptor */ + .isc_rx_maxsegsize = VMXNET3_RX_MAXSEGSIZE, + + .isc_admin_intrcnt = 1, + .isc_vendor_info = vmxnet3_vendor_info_array, + .isc_driver_version = "2", + .isc_driver = &vmxnet3_iflib_driver, + .isc_flags = IFLIB_HAS_RXCQ | IFLIB_HAS_TXCQ, + + /* + * Number of receive queues per receive queue set, with associated + * descriptor settings for each. + */ + .isc_nrxqs = 3, + .isc_nfl = 2, /* one free list for each receive command queue */ + .isc_nrxd_min = {VMXNET3_MIN_RX_NDESC, VMXNET3_MIN_RX_NDESC, VMXNET3_MIN_RX_NDESC}, + .isc_nrxd_max = {VMXNET3_MAX_RX_NDESC, VMXNET3_MAX_RX_NDESC, VMXNET3_MAX_RX_NDESC}, + .isc_nrxd_default = {VMXNET3_DEF_RX_NDESC, VMXNET3_DEF_RX_NDESC, VMXNET3_DEF_RX_NDESC}, + + /* + * Number of transmit queues per transmit queue set, with associated + * descriptor settings for each. + */ + .isc_ntxqs = 2, + .isc_ntxd_min = {VMXNET3_MIN_TX_NDESC, VMXNET3_MIN_TX_NDESC}, + .isc_ntxd_max = {VMXNET3_MAX_TX_NDESC, VMXNET3_MAX_TX_NDESC}, + .isc_ntxd_default = {VMXNET3_DEF_TX_NDESC, VMXNET3_DEF_TX_NDESC}, +}; + +static void * +vmxnet3_register(device_t dev) +{ + return (&vmxnet3_sctx_init); } static int -vmxnet3_attach(device_t dev) +vmxnet3_attach_pre(if_ctx_t ctx) { + device_t dev; + if_softc_ctx_t scctx; struct vmxnet3_softc *sc; + uint32_t intr_config; int error; - sc = device_get_softc(dev); + dev = iflib_get_dev(ctx); + sc = iflib_get_softc(ctx); sc->vmx_dev = dev; + sc->vmx_ctx = ctx; + sc->vmx_sctx = iflib_get_sctx(ctx); + sc->vmx_scctx = iflib_get_softc_ctx(ctx); + sc->vmx_ifp = iflib_get_ifp(ctx); + sc->vmx_media = iflib_get_media(ctx); + scctx = sc->vmx_scctx; - pci_enable_busmaster(dev); + scctx->isc_tx_nsegments = VMXNET3_TX_MAXSEGS; + scctx->isc_tx_tso_segments_max = VMXNET3_TX_MAXSEGS; + /* isc_tx_tso_size_max doesn't include possible vlan header */ + scctx->isc_tx_tso_size_max = VMXNET3_TSO_MAXSIZE; + scctx->isc_tx_tso_segsize_max = VMXNET3_TX_MAXSEGSIZE; + scctx->isc_txrx = &vmxnet3_txrx; - VMXNET3_CORE_LOCK_INIT(sc, device_get_nameunit(dev)); - callout_init_mtx(&sc->vmx_tick, &sc->vmx_mtx, 0); + /* If 0, the iflib tunable was not set, so set to the default */ + if (scctx->isc_nrxqsets == 0) + scctx->isc_nrxqsets = VMXNET3_DEF_RX_QUEUES; + scctx->isc_nrxqsets_max = min(VMXNET3_MAX_RX_QUEUES, mp_ncpus); - vmxnet3_initial_config(sc); + /* If 0, the iflib tunable was not set, so set to the default */ + if (scctx->isc_ntxqsets == 0) + scctx->isc_ntxqsets = VMXNET3_DEF_TX_QUEUES; + scctx->isc_ntxqsets_max = min(VMXNET3_MAX_TX_QUEUES, mp_ncpus); - error = vmxnet3_alloc_resources(sc); - if (error) - goto fail; + /* + * Enforce that the transmit completion queue descriptor count is + * the same as the transmit command queue descriptor count. + */ + scctx->isc_ntxd[0] = scctx->isc_ntxd[1]; + scctx->isc_txqsizes[0] = + sizeof(struct vmxnet3_txcompdesc) * scctx->isc_ntxd[0]; + scctx->isc_txqsizes[1] = + sizeof(struct vmxnet3_txdesc) * scctx->isc_ntxd[1]; - error = vmxnet3_check_version(sc); - if (error) - goto fail; + /* + * Enforce that the receive completion queue descriptor count is the + * sum of the receive command queue descriptor counts, and that the + * second receive command queue descriptor count is the same as the + * first one. + */ + scctx->isc_nrxd[2] = scctx->isc_nrxd[1]; + scctx->isc_nrxd[0] = scctx->isc_nrxd[1] + scctx->isc_nrxd[2]; + scctx->isc_rxqsizes[0] = + sizeof(struct vmxnet3_rxcompdesc) * scctx->isc_nrxd[0]; + scctx->isc_rxqsizes[1] = + sizeof(struct vmxnet3_rxdesc) * scctx->isc_nrxd[1]; + scctx->isc_rxqsizes[2] = + sizeof(struct vmxnet3_rxdesc) * scctx->isc_nrxd[2]; - error = vmxnet3_alloc_rxtx_queues(sc); - if (error) - goto fail; + scctx->isc_rss_table_size = UPT1_RSS_MAX_IND_TABLE_SIZE; -#ifndef VMXNET3_LEGACY_TX - error = vmxnet3_alloc_taskqueue(sc); + /* Map PCI BARs */ + error = vmxnet3_alloc_resources(sc); if (error) goto fail; -#endif - error = vmxnet3_alloc_interrupts(sc); + /* Check device versions */ + error = vmxnet3_check_version(sc); if (error) goto fail; - vmxnet3_check_multiqueue(sc); + /* + * The interrupt mode can be set in the hypervisor configuration via + * the parameter ethernet.intrMode. + */ + intr_config = vmxnet3_read_cmd(sc, VMXNET3_CMD_GET_INTRCFG); + sc->vmx_intr_mask_mode = (intr_config >> 2) & 0x03; - error = vmxnet3_alloc_data(sc); - if (error) - goto fail; + /* + * Configure the softc context to attempt to configure the interrupt + * mode now indicated by intr_config. iflib will follow the usual + * fallback path MSIX -> MSI -> LEGACY, starting at the configured + * starting mode. + */ + switch (intr_config & 0x03) { + case VMXNET3_IT_AUTO: + case VMXNET3_IT_MSIX: + scctx->isc_msix_bar = pci_msix_table_bar(dev); + break; + case VMXNET3_IT_MSI: + scctx->isc_msix_bar = -1; + scctx->isc_disable_msix = 1; + break; + case VMXNET3_IT_LEGACY: + scctx->isc_msix_bar = 0; + break; + } - error = vmxnet3_setup_interface(sc); - if (error) - goto fail; + scctx->isc_tx_csum_flags = VMXNET3_CSUM_ALL_OFFLOAD; + scctx->isc_capabilities = scctx->isc_capenable = + IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6 | + IFCAP_TSO4 | IFCAP_TSO6 | + IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6 | + IFCAP_VLAN_MTU | IFCAP_VLAN_HWTAGGING | + IFCAP_VLAN_HWCSUM | IFCAP_VLAN_HWTSO | + IFCAP_JUMBO_MTU; - error = vmxnet3_setup_interrupts(sc); - if (error) { - ether_ifdetach(sc->vmx_ifp); - device_printf(dev, "could not set up interrupt\n"); - goto fail; - } + /* These capabilities are not enabled by default. */ + scctx->isc_capabilities |= IFCAP_LRO | IFCAP_VLAN_HWFILTER; - vmxnet3_setup_sysctl(sc); -#ifndef VMXNET3_LEGACY_TX - vmxnet3_start_taskqueue(sc); -#endif + vmxnet3_get_lladdr(sc); + iflib_set_mac(ctx, sc->vmx_lladdr); + return (0); fail: - if (error) - vmxnet3_detach(dev); + /* + * We must completely clean up anything allocated above as iflib + * will not invoke any other driver entry points as a result of this + * failure. + */ + vmxnet3_free_resources(sc); return (error); } static int -vmxnet3_detach(device_t dev) +vmxnet3_msix_intr_assign(if_ctx_t ctx, int msix) { struct vmxnet3_softc *sc; - struct ifnet *ifp; + if_softc_ctx_t scctx; + struct vmxnet3_rxqueue *rxq; + int error; + int i; + char irq_name[16]; - sc = device_get_softc(dev); - ifp = sc->vmx_ifp; + sc = iflib_get_softc(ctx); + scctx = sc->vmx_scctx; + + for (i = 0; i < scctx->isc_nrxqsets; i++) { + snprintf(irq_name, sizeof(irq_name), "rxq%d", i); - if (device_is_attached(dev)) { - VMXNET3_CORE_LOCK(sc); - vmxnet3_stop(sc); - VMXNET3_CORE_UNLOCK(sc); + rxq = &sc->vmx_rxq[i]; + error = iflib_irq_alloc_generic(ctx, &rxq->vxrxq_irq, i + 1, + IFLIB_INTR_RX, vmxnet3_rxq_intr, rxq, i, irq_name); + if (error) { + device_printf(iflib_get_dev(ctx), + "Failed to register rxq %d interrupt handler\n", i); + return (error); + } + } - callout_drain(&sc->vmx_tick); -#ifndef VMXNET3_LEGACY_TX - vmxnet3_drain_taskqueue(sc); -#endif + for (i = 0; i < scctx->isc_ntxqsets; i++) { + snprintf(irq_name, sizeof(irq_name), "txq%d", i); - ether_ifdetach(ifp); + /* + * Don't provide the corresponding rxq irq for reference - + * we want the transmit task to be attached to a task queue + * that is different from the one used by the corresponding + * rxq irq. That is because the TX doorbell writes are very + * expensive as virtualized MMIO operations, so we want to + * be able to defer them to another core when possible so + * that they don't steal receive processing cycles during + * stack turnarounds like TCP ACK generation. The other + * piece to this approach is enabling the iflib abdicate + * option (currently via an interface-specific + * tunable/sysctl). + */ + iflib_softirq_alloc_generic(ctx, NULL, IFLIB_INTR_TX, NULL, i, + irq_name); } - if (sc->vmx_vlan_attach != NULL) { - EVENTHANDLER_DEREGISTER(vlan_config, sc->vmx_vlan_attach); - sc->vmx_vlan_attach = NULL; + error = iflib_irq_alloc_generic(ctx, &sc->vmx_event_intr_irq, + scctx->isc_nrxqsets + 1, IFLIB_INTR_ADMIN, vmxnet3_event_intr, sc, 0, + "event"); + if (error) { + device_printf(iflib_get_dev(ctx), + "Failed to register event interrupt handler\n"); + return (error); } - if (sc->vmx_vlan_detach != NULL) { - EVENTHANDLER_DEREGISTER(vlan_config, sc->vmx_vlan_detach); - sc->vmx_vlan_detach = NULL; - } -#ifndef VMXNET3_LEGACY_TX - vmxnet3_free_taskqueue(sc); -#endif - vmxnet3_free_interrupts(sc); + return (0); +} - if (ifp != NULL) { - if_free(ifp); - sc->vmx_ifp = NULL; +static void +vmxnet3_free_irqs(struct vmxnet3_softc *sc) +{ + if_softc_ctx_t scctx; + struct vmxnet3_rxqueue *rxq; + int i; + + scctx = sc->vmx_scctx; + + for (i = 0; i < scctx->isc_nrxqsets; i++) { + rxq = &sc->vmx_rxq[i]; + iflib_irq_free(sc->vmx_ctx, &rxq->vxrxq_irq); } - ifmedia_removeall(&sc->vmx_media); + iflib_irq_free(sc->vmx_ctx, &sc->vmx_event_intr_irq); +} +static int +vmxnet3_attach_post(if_ctx_t ctx) +{ + device_t dev; + if_softc_ctx_t scctx; + struct vmxnet3_softc *sc; + int error; + + dev = iflib_get_dev(ctx); + scctx = iflib_get_softc_ctx(ctx); + sc = iflib_get_softc(ctx); + + if (scctx->isc_nrxqsets > 1) + sc->vmx_flags |= VMXNET3_FLAG_RSS; + + error = vmxnet3_alloc_data(sc); + if (error) + goto fail; + + vmxnet3_set_interrupt_idx(sc); + vmxnet3_setup_sysctl(sc); + + ifmedia_add(sc->vmx_media, IFM_ETHER | IFM_AUTO, 0, NULL); + ifmedia_set(sc->vmx_media, IFM_ETHER | IFM_AUTO); + +fail: + return (error); +} + +static int +vmxnet3_detach(if_ctx_t ctx) +{ + struct vmxnet3_softc *sc; + + sc = iflib_get_softc(ctx); + + vmxnet3_free_irqs(sc); vmxnet3_free_data(sc); vmxnet3_free_resources(sc); - vmxnet3_free_rxtx_queues(sc); - VMXNET3_CORE_LOCK_DESTROY(sc); + return (0); +} +static int +vmxnet3_shutdown(if_ctx_t ctx) +{ + return (0); } static int -vmxnet3_shutdown(device_t dev) +vmxnet3_suspend(if_ctx_t ctx) { return (0); } static int +vmxnet3_resume(if_ctx_t ctx) +{ + + return (0); +} + +static int vmxnet3_alloc_resources(struct vmxnet3_softc *sc) { device_t dev; @@ -445,15 +613,6 @@ vmxnet3_alloc_resources(struct vmxnet3_softc *sc) sc->vmx_iot1 = rman_get_bustag(sc->vmx_res1); sc->vmx_ioh1 = rman_get_bushandle(sc->vmx_res1); - if (pci_find_cap(dev, PCIY_MSIX, NULL) == 0) { - rid = PCIR_BAR(2); - sc->vmx_msix_res = bus_alloc_resource_any(dev, - SYS_RES_MEMORY, &rid, RF_ACTIVE); - } - - if (sc->vmx_msix_res == NULL) - sc->vmx_flags |= VMXNET3_FLAG_NO_MSIX; - return (0); } @@ -475,12 +634,6 @@ vmxnet3_free_resources(struct vmxnet3_softc *sc) rman_get_rid(sc->vmx_res1), sc->vmx_res1); sc->vmx_res1 = NULL; } - - if (sc->vmx_msix_res != NULL) { - bus_release_resource(dev, SYS_RES_MEMORY, - rman_get_rid(sc->vmx_msix_res), sc->vmx_msix_res); - sc->vmx_msix_res = NULL; - } } static int @@ -509,603 +662,284 @@ vmxnet3_check_version(struct vmxnet3_softc *sc) return (0); } -static int -trunc_powerof2(int val) -{ - - return (1U << (fls(val) - 1)); -} - static void -vmxnet3_initial_config(struct vmxnet3_softc *sc) -{ - int nqueue, ndesc; - - nqueue = vmxnet3_tunable_int(sc, "txnqueue", vmxnet3_default_txnqueue); - if (nqueue > VMXNET3_MAX_TX_QUEUES || nqueue < 1) - nqueue = VMXNET3_DEF_TX_QUEUES; - if (nqueue > mp_ncpus) - nqueue = mp_ncpus; - sc->vmx_max_ntxqueues = trunc_powerof2(nqueue); - - nqueue = vmxnet3_tunable_int(sc, "rxnqueue", vmxnet3_default_rxnqueue); - if (nqueue > VMXNET3_MAX_RX_QUEUES || nqueue < 1) - nqueue = VMXNET3_DEF_RX_QUEUES; - if (nqueue > mp_ncpus) - nqueue = mp_ncpus; - sc->vmx_max_nrxqueues = trunc_powerof2(nqueue); - - if (vmxnet3_tunable_int(sc, "mq_disable", vmxnet3_mq_disable)) { - sc->vmx_max_nrxqueues = 1; - sc->vmx_max_ntxqueues = 1; - } - - ndesc = vmxnet3_tunable_int(sc, "txd", vmxnet3_default_txndesc); - if (ndesc > VMXNET3_MAX_TX_NDESC || ndesc < VMXNET3_MIN_TX_NDESC) - ndesc = VMXNET3_DEF_TX_NDESC; - if (ndesc & VMXNET3_MASK_TX_NDESC) - ndesc &= ~VMXNET3_MASK_TX_NDESC; - sc->vmx_ntxdescs = ndesc; - - ndesc = vmxnet3_tunable_int(sc, "rxd", vmxnet3_default_rxndesc); - if (ndesc > VMXNET3_MAX_RX_NDESC || ndesc < VMXNET3_MIN_RX_NDESC) - ndesc = VMXNET3_DEF_RX_NDESC; - if (ndesc & VMXNET3_MASK_RX_NDESC) - ndesc &= ~VMXNET3_MASK_RX_NDESC; - sc->vmx_nrxdescs = ndesc; - sc->vmx_max_rxsegs = VMXNET3_MAX_RX_SEGS; -} - -static void -vmxnet3_check_multiqueue(struct vmxnet3_softc *sc) -{ - - if (sc->vmx_intr_type != VMXNET3_IT_MSIX) - goto out; - - /* BMV: Just use the maximum configured for now. */ - sc->vmx_nrxqueues = sc->vmx_max_nrxqueues; - sc->vmx_ntxqueues = sc->vmx_max_ntxqueues; - - if (sc->vmx_nrxqueues > 1) - sc->vmx_flags |= VMXNET3_FLAG_RSS; - - return; - -out: - sc->vmx_ntxqueues = 1; - sc->vmx_nrxqueues = 1; -} - -static int -vmxnet3_alloc_msix_interrupts(struct vmxnet3_softc *sc) -{ - device_t dev; - int nmsix, cnt, required; - - dev = sc->vmx_dev; - - if (sc->vmx_flags & VMXNET3_FLAG_NO_MSIX) - return (1); - - /* Allocate an additional vector for the events interrupt. */ - required = sc->vmx_max_nrxqueues + sc->vmx_max_ntxqueues + 1; - - nmsix = pci_msix_count(dev); - if (nmsix < required) - return (1); - - cnt = required; - if (pci_alloc_msix(dev, &cnt) == 0 && cnt >= required) { - sc->vmx_nintrs = required; - return (0); - } else - pci_release_msi(dev); - - /* BMV TODO Fallback to sharing MSIX vectors if possible. */ - - return (1); -} - -static int -vmxnet3_alloc_msi_interrupts(struct vmxnet3_softc *sc) -{ - device_t dev; - int nmsi, cnt, required; - - dev = sc->vmx_dev; - required = 1; - - nmsi = pci_msi_count(dev); - if (nmsi < required) - return (1); - - cnt = required; - if (pci_alloc_msi(dev, &cnt) == 0 && cnt >= required) { - sc->vmx_nintrs = 1; - return (0); - } else - pci_release_msi(dev); - - return (1); -} - -static int -vmxnet3_alloc_legacy_interrupts(struct vmxnet3_softc *sc) -{ - - sc->vmx_nintrs = 1; - return (0); -} - -static int -vmxnet3_alloc_interrupt(struct vmxnet3_softc *sc, int rid, int flags, - struct vmxnet3_interrupt *intr) -{ - struct resource *irq; - - irq = bus_alloc_resource_any(sc->vmx_dev, SYS_RES_IRQ, &rid, flags); - if (irq == NULL) - return (ENXIO); - - intr->vmxi_irq = irq; - intr->vmxi_rid = rid; - - return (0); -} - -static int -vmxnet3_alloc_intr_resources(struct vmxnet3_softc *sc) -{ - int i, rid, flags, error; - - rid = 0; - flags = RF_ACTIVE; - - if (sc->vmx_intr_type == VMXNET3_IT_LEGACY) - flags |= RF_SHAREABLE; - else - rid = 1; - - for (i = 0; i < sc->vmx_nintrs; i++, rid++) { - error = vmxnet3_alloc_interrupt(sc, rid, flags, - &sc->vmx_intrs[i]); - if (error) - return (error); - } - - return (0); -} - -static int -vmxnet3_setup_msix_interrupts(struct vmxnet3_softc *sc) -{ - device_t dev; - struct vmxnet3_txqueue *txq; - struct vmxnet3_rxqueue *rxq; - struct vmxnet3_interrupt *intr; - enum intr_type type; - int i, error; - - dev = sc->vmx_dev; - intr = &sc->vmx_intrs[0]; - type = INTR_TYPE_NET | INTR_MPSAFE; - - for (i = 0; i < sc->vmx_ntxqueues; i++, intr++) { - txq = &sc->vmx_txq[i]; - error = bus_setup_intr(dev, intr->vmxi_irq, type, NULL, - vmxnet3_txq_intr, txq, &intr->vmxi_handler); - if (error) - return (error); - bus_describe_intr(dev, intr->vmxi_irq, intr->vmxi_handler, - "tq%d", i); - txq->vxtxq_intr_idx = intr->vmxi_rid - 1; - } - - for (i = 0; i < sc->vmx_nrxqueues; i++, intr++) { - rxq = &sc->vmx_rxq[i]; - error = bus_setup_intr(dev, intr->vmxi_irq, type, NULL, - vmxnet3_rxq_intr, rxq, &intr->vmxi_handler); - if (error) - return (error); - bus_describe_intr(dev, intr->vmxi_irq, intr->vmxi_handler, - "rq%d", i); - rxq->vxrxq_intr_idx = intr->vmxi_rid - 1; - } - - error = bus_setup_intr(dev, intr->vmxi_irq, type, NULL, *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Feb 11 23:30:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CCFC514E6F60; Mon, 11 Feb 2019 23:30:33 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5E3758EAD8; Mon, 11 Feb 2019 23:30:33 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3343E70F9; Mon, 11 Feb 2019 23:30:33 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BNUXJT090719; Mon, 11 Feb 2019 23:30:33 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BNUV12090705; Mon, 11 Feb 2019 23:30:31 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902112330.x1BNUV12090705@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 23:30:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344028 - in stable/12/sys: net net/altq netpfil/pf X-SVN-Group: stable-12 X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: in stable/12/sys: net net/altq netpfil/pf X-SVN-Commit-Revision: 344028 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5E3758EAD8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 23:30:34 -0000 Author: pkelsey Date: Mon Feb 11 23:30:30 2019 New Revision: 344028 URL: https://svnweb.freebsd.org/changeset/base/344028 Log: MFC r343995: Reduce the time it takes the kernel to install a new PF config containing a large number of queues In general, the time savings come from separating the active and inactive queues lists into separate interface and non-interface queue lists, and changing the rule and queue tag management from list-based to hash-bashed. In HFSC, a linear scan of the class table during each queue destroy was also eliminated. There are now two new tunables to control the hash size used for each tag set (default for each is 128): net.pf.queue_tag_hashsize net.pf.rule_tag_hashsize Reviewed by: kp Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D19131 MFC r343996: Place pf_altq_get_nth_active() under the ALTQ ifdef Modified: stable/12/sys/net/altq/altq_cbq.c stable/12/sys/net/altq/altq_codel.c stable/12/sys/net/altq/altq_fairq.c stable/12/sys/net/altq/altq_hfsc.c stable/12/sys/net/altq/altq_hfsc.h stable/12/sys/net/altq/altq_priq.c stable/12/sys/net/altq/altq_subr.c stable/12/sys/net/altq/altq_var.h stable/12/sys/net/pfvar.h stable/12/sys/netpfil/pf/pf.c stable/12/sys/netpfil/pf/pf_ioctl.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/net/altq/altq_cbq.c ============================================================================== --- stable/12/sys/net/altq/altq_cbq.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_cbq.c Mon Feb 11 23:30:30 2019 (r344028) @@ -259,12 +259,11 @@ cbq_pfattach(struct pf_altq *a) } int -cbq_add_altq(struct pf_altq *a) +cbq_add_altq(struct ifnet *ifp, struct pf_altq *a) { cbq_state_t *cbqp; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: stable/12/sys/net/altq/altq_codel.c ============================================================================== --- stable/12/sys/net/altq/altq_codel.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_codel.c Mon Feb 11 23:30:30 2019 (r344028) @@ -89,13 +89,12 @@ codel_pfattach(struct pf_altq *a) } int -codel_add_altq(struct pf_altq *a) +codel_add_altq(struct ifnet *ifp, struct pf_altq *a) { struct codel_if *cif; - struct ifnet *ifp; struct codel_opts *opts; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: stable/12/sys/net/altq/altq_fairq.c ============================================================================== --- stable/12/sys/net/altq/altq_fairq.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_fairq.c Mon Feb 11 23:30:30 2019 (r344028) @@ -148,12 +148,11 @@ fairq_pfattach(struct pf_altq *a) } int -fairq_add_altq(struct pf_altq *a) +fairq_add_altq(struct ifnet *ifp, struct pf_altq *a) { struct fairq_if *pif; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: stable/12/sys/net/altq/altq_hfsc.c ============================================================================== --- stable/12/sys/net/altq/altq_hfsc.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_hfsc.c Mon Feb 11 23:30:30 2019 (r344028) @@ -183,12 +183,11 @@ hfsc_pfattach(struct pf_altq *a) } int -hfsc_add_altq(struct pf_altq *a) +hfsc_add_altq(struct ifnet *ifp, struct pf_altq *a) { struct hfsc_if *hif; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); @@ -534,6 +533,7 @@ hfsc_class_create(struct hfsc_if *hif, struct service_ goto err_ret; } } + cl->cl_slot = i; if (flags & HFCF_DEFAULTCLASS) hif->hif_defaultclass = cl; @@ -586,7 +586,7 @@ hfsc_class_create(struct hfsc_if *hif, struct service_ static int hfsc_class_destroy(struct hfsc_class *cl) { - int i, s; + int s; if (cl == NULL) return (0); @@ -621,12 +621,7 @@ hfsc_class_destroy(struct hfsc_class *cl) ASSERT(p != NULL); } - for (i = 0; i < HFSC_MAX_CLASSES; i++) - if (cl->cl_hif->hif_class_tbl[i] == cl) { - cl->cl_hif->hif_class_tbl[i] = NULL; - break; - } - + cl->cl_hif->hif_class_tbl[cl->cl_slot] = NULL; cl->cl_hif->hif_classes--; IFQ_UNLOCK(cl->cl_hif->hif_ifq); splx(s); Modified: stable/12/sys/net/altq/altq_hfsc.h ============================================================================== --- stable/12/sys/net/altq/altq_hfsc.h Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_hfsc.h Mon Feb 11 23:30:30 2019 (r344028) @@ -282,6 +282,7 @@ struct runtime_sc { struct hfsc_class { u_int cl_id; /* class id (just for debug) */ + u_int cl_slot; /* slot in hif class table */ u_int32_t cl_handle; /* class handle */ struct hfsc_if *cl_hif; /* back pointer to struct hfsc_if */ int cl_flags; /* misc flags */ Modified: stable/12/sys/net/altq/altq_priq.c ============================================================================== --- stable/12/sys/net/altq/altq_priq.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_priq.c Mon Feb 11 23:30:30 2019 (r344028) @@ -118,12 +118,11 @@ priq_pfattach(struct pf_altq *a) } int -priq_add_altq(struct pf_altq *a) +priq_add_altq(struct ifnet * ifp, struct pf_altq *a) { struct priq_if *pif; - struct ifnet *ifp; - if ((ifp = ifunit(a->ifname)) == NULL) + if (ifp == NULL) return (EINVAL); if (!ALTQ_IS_READY(&ifp->if_snd)) return (ENODEV); Modified: stable/12/sys/net/altq/altq_subr.c ============================================================================== --- stable/12/sys/net/altq/altq_subr.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_subr.c Mon Feb 11 23:30:30 2019 (r344028) @@ -550,7 +550,7 @@ altq_pfdetach(struct pf_altq *a) * malloc with WAITOK, also it is not yet clear which lock to use. */ int -altq_add(struct pf_altq *a) +altq_add(struct ifnet *ifp, struct pf_altq *a) { int error = 0; @@ -565,27 +565,27 @@ altq_add(struct pf_altq *a) switch (a->scheduler) { #ifdef ALTQ_CBQ case ALTQT_CBQ: - error = cbq_add_altq(a); + error = cbq_add_altq(ifp, a); break; #endif #ifdef ALTQ_PRIQ case ALTQT_PRIQ: - error = priq_add_altq(a); + error = priq_add_altq(ifp, a); break; #endif #ifdef ALTQ_HFSC case ALTQT_HFSC: - error = hfsc_add_altq(a); + error = hfsc_add_altq(ifp, a); break; #endif #ifdef ALTQ_FAIRQ case ALTQT_FAIRQ: - error = fairq_add_altq(a); + error = fairq_add_altq(ifp, a); break; #endif #ifdef ALTQ_CODEL case ALTQT_CODEL: - error = codel_add_altq(a); + error = codel_add_altq(ifp, a); break; #endif default: Modified: stable/12/sys/net/altq/altq_var.h ============================================================================== --- stable/12/sys/net/altq/altq_var.h Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/altq/altq_var.h Mon Feb 11 23:30:30 2019 (r344028) @@ -199,40 +199,40 @@ int tbr_set(struct ifaltq *, struct tb_profile *); int altq_pfattach(struct pf_altq *); int altq_pfdetach(struct pf_altq *); -int altq_add(struct pf_altq *); +int altq_add(struct ifnet *, struct pf_altq *); int altq_remove(struct pf_altq *); int altq_add_queue(struct pf_altq *); int altq_remove_queue(struct pf_altq *); int altq_getqstats(struct pf_altq *, void *, int *, int); int cbq_pfattach(struct pf_altq *); -int cbq_add_altq(struct pf_altq *); +int cbq_add_altq(struct ifnet *, struct pf_altq *); int cbq_remove_altq(struct pf_altq *); int cbq_add_queue(struct pf_altq *); int cbq_remove_queue(struct pf_altq *); int cbq_getqstats(struct pf_altq *, void *, int *, int); int codel_pfattach(struct pf_altq *); -int codel_add_altq(struct pf_altq *); +int codel_add_altq(struct ifnet *, struct pf_altq *); int codel_remove_altq(struct pf_altq *); int codel_getqstats(struct pf_altq *, void *, int *, int); int priq_pfattach(struct pf_altq *); -int priq_add_altq(struct pf_altq *); +int priq_add_altq(struct ifnet *, struct pf_altq *); int priq_remove_altq(struct pf_altq *); int priq_add_queue(struct pf_altq *); int priq_remove_queue(struct pf_altq *); int priq_getqstats(struct pf_altq *, void *, int *, int); int hfsc_pfattach(struct pf_altq *); -int hfsc_add_altq(struct pf_altq *); +int hfsc_add_altq(struct ifnet *, struct pf_altq *); int hfsc_remove_altq(struct pf_altq *); int hfsc_add_queue(struct pf_altq *); int hfsc_remove_queue(struct pf_altq *); int hfsc_getqstats(struct pf_altq *, void *, int *, int); int fairq_pfattach(struct pf_altq *); -int fairq_add_altq(struct pf_altq *); +int fairq_add_altq(struct ifnet *, struct pf_altq *); int fairq_remove_altq(struct pf_altq *); int fairq_add_queue(struct pf_altq *); int fairq_remove_queue(struct pf_altq *); Modified: stable/12/sys/net/pfvar.h ============================================================================== --- stable/12/sys/net/pfvar.h Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/net/pfvar.h Mon Feb 11 23:30:30 2019 (r344028) @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -95,6 +96,9 @@ struct pf_addr_wrap { #ifdef _KERNEL +SYSCTL_DECL(_net_pf); +MALLOC_DECLARE(M_PFHASH); + struct pfi_dynaddr { TAILQ_ENTRY(pfi_dynaddr) entry; struct pf_addr pfid_addr4; @@ -1588,7 +1592,7 @@ VNET_DECLARE(uint64_t, pf_stateid[MAXCPU]); #define V_pf_stateid VNET(pf_stateid) TAILQ_HEAD(pf_altqqueue, pf_altq); -VNET_DECLARE(struct pf_altqqueue, pf_altqs[2]); +VNET_DECLARE(struct pf_altqqueue, pf_altqs[4]); #define V_pf_altqs VNET(pf_altqs) VNET_DECLARE(struct pf_palist, pf_pabuf); #define V_pf_pabuf VNET(pf_pabuf) @@ -1603,8 +1607,12 @@ VNET_DECLARE(u_int32_t, ticket_pabuf); #define V_ticket_pabuf VNET(ticket_pabuf) VNET_DECLARE(struct pf_altqqueue *, pf_altqs_active); #define V_pf_altqs_active VNET(pf_altqs_active) +VNET_DECLARE(struct pf_altqqueue *, pf_altq_ifs_active); +#define V_pf_altq_ifs_active VNET(pf_altq_ifs_active) VNET_DECLARE(struct pf_altqqueue *, pf_altqs_inactive); #define V_pf_altqs_inactive VNET(pf_altqs_inactive) +VNET_DECLARE(struct pf_altqqueue *, pf_altq_ifs_inactive); +#define V_pf_altq_ifs_inactive VNET(pf_altq_ifs_inactive) VNET_DECLARE(struct pf_rulequeue, pf_unlinked_rules); #define V_pf_unlinked_rules VNET(pf_unlinked_rules) Modified: stable/12/sys/netpfil/pf/pf.c ============================================================================== --- stable/12/sys/netpfil/pf/pf.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/netpfil/pf/pf.c Mon Feb 11 23:30:30 2019 (r344028) @@ -113,10 +113,12 @@ __FBSDID("$FreeBSD$"); */ /* state tables */ -VNET_DEFINE(struct pf_altqqueue, pf_altqs[2]); +VNET_DEFINE(struct pf_altqqueue, pf_altqs[4]); VNET_DEFINE(struct pf_palist, pf_pabuf); VNET_DEFINE(struct pf_altqqueue *, pf_altqs_active); +VNET_DEFINE(struct pf_altqqueue *, pf_altq_ifs_active); VNET_DEFINE(struct pf_altqqueue *, pf_altqs_inactive); +VNET_DEFINE(struct pf_altqqueue *, pf_altq_ifs_inactive); VNET_DEFINE(struct pf_kstatus, pf_status); VNET_DEFINE(u_int32_t, ticket_altqs_active); @@ -358,7 +360,7 @@ VNET_DEFINE(struct pf_limit, pf_limits[PF_LIMIT_MAX]); counter_u64_add(s->rule.ptr->states_cur, -1); \ } while (0) -static MALLOC_DEFINE(M_PFHASH, "pf_hash", "pf(4) hash header structures"); +MALLOC_DEFINE(M_PFHASH, "pf_hash", "pf(4) hash header structures"); VNET_DEFINE(struct pf_keyhash *, pf_keyhash); VNET_DEFINE(struct pf_idhash *, pf_idhash); VNET_DEFINE(struct pf_srchash *, pf_srchash); @@ -860,9 +862,13 @@ pf_initialize() /* ALTQ */ TAILQ_INIT(&V_pf_altqs[0]); TAILQ_INIT(&V_pf_altqs[1]); + TAILQ_INIT(&V_pf_altqs[2]); + TAILQ_INIT(&V_pf_altqs[3]); TAILQ_INIT(&V_pf_pabuf); V_pf_altqs_active = &V_pf_altqs[0]; - V_pf_altqs_inactive = &V_pf_altqs[1]; + V_pf_altq_ifs_active = &V_pf_altqs[1]; + V_pf_altqs_inactive = &V_pf_altqs[2]; + V_pf_altq_ifs_inactive = &V_pf_altqs[3]; /* Send & overload+flush queues. */ STAILQ_INIT(&V_pf_sendqueue); Modified: stable/12/sys/netpfil/pf/pf_ioctl.c ============================================================================== --- stable/12/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 23:24:39 2019 (r344027) +++ stable/12/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 23:30:30 2019 (r344028) @@ -46,11 +46,14 @@ __FBSDID("$FreeBSD$"); #include "opt_pf.h" #include +#include +#include #include #include #include #include #include +#include #include #include #include @@ -129,18 +132,40 @@ VNET_DEFINE_STATIC(int, pf_altq_running); #define TAGID_MAX 50000 struct pf_tagname { - TAILQ_ENTRY(pf_tagname) entries; + TAILQ_ENTRY(pf_tagname) namehash_entries; + TAILQ_ENTRY(pf_tagname) taghash_entries; char name[PF_TAG_NAME_SIZE]; uint16_t tag; int ref; }; -TAILQ_HEAD(pf_tags, pf_tagname); -#define V_pf_tags VNET(pf_tags) -VNET_DEFINE(struct pf_tags, pf_tags); -#define V_pf_qids VNET(pf_qids) -VNET_DEFINE(struct pf_tags, pf_qids); -static MALLOC_DEFINE(M_PFTAG, "pf_tag", "pf(4) tag names"); +struct pf_tagset { + TAILQ_HEAD(, pf_tagname) *namehash; + TAILQ_HEAD(, pf_tagname) *taghash; + unsigned int mask; + uint32_t seed; + BITSET_DEFINE(, TAGID_MAX) avail; +}; + +VNET_DEFINE(struct pf_tagset, pf_tags); +#define V_pf_tags VNET(pf_tags) +static unsigned int pf_rule_tag_hashsize; +#define PF_RULE_TAG_HASH_SIZE_DEFAULT 128 +SYSCTL_UINT(_net_pf, OID_AUTO, rule_tag_hashsize, CTLFLAG_RDTUN, + &pf_rule_tag_hashsize, PF_RULE_TAG_HASH_SIZE_DEFAULT, + "Size of pf(4) rule tag hashtable"); + +#ifdef ALTQ +VNET_DEFINE(struct pf_tagset, pf_qids); +#define V_pf_qids VNET(pf_qids) +static unsigned int pf_queue_tag_hashsize; +#define PF_QUEUE_TAG_HASH_SIZE_DEFAULT 128 +SYSCTL_UINT(_net_pf, OID_AUTO, queue_tag_hashsize, CTLFLAG_RDTUN, + &pf_queue_tag_hashsize, PF_QUEUE_TAG_HASH_SIZE_DEFAULT, + "Size of pf(4) queue tag hashtable"); +#endif +VNET_DEFINE(uma_zone_t, pf_tag_z); +#define V_pf_tag_z VNET(pf_tag_z) static MALLOC_DEFINE(M_PFALTQ, "pf_altq", "pf(4) altq configuration db"); static MALLOC_DEFINE(M_PFRULE, "pf_rule", "pf(4) rules"); @@ -148,9 +173,14 @@ static MALLOC_DEFINE(M_PFRULE, "pf_rule", "pf(4) rules #error PF_QNAME_SIZE must be equal to PF_TAG_NAME_SIZE #endif -static u_int16_t tagname2tag(struct pf_tags *, char *); +static void pf_init_tagset(struct pf_tagset *, unsigned int *, + unsigned int); +static void pf_cleanup_tagset(struct pf_tagset *); +static uint16_t tagname2hashindex(const struct pf_tagset *, const char *); +static uint16_t tag2hashindex(const struct pf_tagset *, uint16_t); +static u_int16_t tagname2tag(struct pf_tagset *, char *); static u_int16_t pf_tagname2tag(char *); -static void tag_unref(struct pf_tags *, u_int16_t); +static void tag_unref(struct pf_tagset *, u_int16_t); #define DPFPRINTF(n, x) if (V_pf_status.debug >= (n)) printf x @@ -436,68 +466,141 @@ pf_free_rule(struct pf_rule *rule) free(rule, M_PFRULE); } +static void +pf_init_tagset(struct pf_tagset *ts, unsigned int *tunable_size, + unsigned int default_size) +{ + unsigned int i; + unsigned int hashsize; + + if (*tunable_size == 0 || !powerof2(*tunable_size)) + *tunable_size = default_size; + + hashsize = *tunable_size; + ts->namehash = mallocarray(hashsize, sizeof(*ts->namehash), M_PFHASH, + M_WAITOK); + ts->taghash = mallocarray(hashsize, sizeof(*ts->taghash), M_PFHASH, + M_WAITOK); + ts->mask = hashsize - 1; + ts->seed = arc4random(); + for (i = 0; i < hashsize; i++) { + TAILQ_INIT(&ts->namehash[i]); + TAILQ_INIT(&ts->taghash[i]); + } + BIT_FILL(TAGID_MAX, &ts->avail); +} + +static void +pf_cleanup_tagset(struct pf_tagset *ts) +{ + unsigned int i; + unsigned int hashsize; + struct pf_tagname *t, *tmp; + + /* + * Only need to clean up one of the hashes as each tag is hashed + * into each table. + */ + hashsize = ts->mask + 1; + for (i = 0; i < hashsize; i++) + TAILQ_FOREACH_SAFE(t, &ts->namehash[i], namehash_entries, tmp) + uma_zfree(V_pf_tag_z, t); + + free(ts->namehash, M_PFHASH); + free(ts->taghash, M_PFHASH); +} + +static uint16_t +tagname2hashindex(const struct pf_tagset *ts, const char *tagname) +{ + + return (murmur3_32_hash(tagname, strlen(tagname), ts->seed) & ts->mask); +} + +static uint16_t +tag2hashindex(const struct pf_tagset *ts, uint16_t tag) +{ + + return (tag & ts->mask); +} + static u_int16_t -tagname2tag(struct pf_tags *head, char *tagname) +tagname2tag(struct pf_tagset *ts, char *tagname) { - struct pf_tagname *tag, *p = NULL; - u_int16_t new_tagid = 1; + struct pf_tagname *tag; + u_int32_t index; + u_int16_t new_tagid; PF_RULES_WASSERT(); - TAILQ_FOREACH(tag, head, entries) + index = tagname2hashindex(ts, tagname); + TAILQ_FOREACH(tag, &ts->namehash[index], namehash_entries) if (strcmp(tagname, tag->name) == 0) { tag->ref++; return (tag->tag); } /* + * new entry + * * to avoid fragmentation, we do a linear search from the beginning - * and take the first free slot we find. if there is none or the list - * is empty, append a new entry at the end. + * and take the first free slot we find. */ - - /* new entry */ - if (!TAILQ_EMPTY(head)) - for (p = TAILQ_FIRST(head); p != NULL && - p->tag == new_tagid; p = TAILQ_NEXT(p, entries)) - new_tagid = p->tag + 1; - - if (new_tagid > TAGID_MAX) + new_tagid = BIT_FFS(TAGID_MAX, &ts->avail); + /* + * Tags are 1-based, with valid tags in the range [1..TAGID_MAX]. + * BIT_FFS() returns a 1-based bit number, with 0 indicating no bits + * set. It may also return a bit number greater than TAGID_MAX due + * to rounding of the number of bits in the vector up to a multiple + * of the vector word size at declaration/allocation time. + */ + if ((new_tagid == 0) || (new_tagid > TAGID_MAX)) return (0); + /* Mark the tag as in use. Bits are 0-based for BIT_CLR() */ + BIT_CLR(TAGID_MAX, new_tagid - 1, &ts->avail); + /* allocate and fill new struct pf_tagname */ - tag = malloc(sizeof(*tag), M_PFTAG, M_NOWAIT|M_ZERO); + tag = uma_zalloc(V_pf_tag_z, M_NOWAIT); if (tag == NULL) return (0); strlcpy(tag->name, tagname, sizeof(tag->name)); tag->tag = new_tagid; - tag->ref++; + tag->ref = 1; - if (p != NULL) /* insert new entry before p */ - TAILQ_INSERT_BEFORE(p, tag, entries); - else /* either list empty or no free slot in between */ - TAILQ_INSERT_TAIL(head, tag, entries); + /* Insert into namehash */ + TAILQ_INSERT_TAIL(&ts->namehash[index], tag, namehash_entries); + /* Insert into taghash */ + index = tag2hashindex(ts, new_tagid); + TAILQ_INSERT_TAIL(&ts->taghash[index], tag, taghash_entries); + return (tag->tag); } static void -tag_unref(struct pf_tags *head, u_int16_t tag) +tag_unref(struct pf_tagset *ts, u_int16_t tag) { - struct pf_tagname *p, *next; - + struct pf_tagname *t; + uint16_t index; + PF_RULES_WASSERT(); - for (p = TAILQ_FIRST(head); p != NULL; p = next) { - next = TAILQ_NEXT(p, entries); - if (tag == p->tag) { - if (--p->ref == 0) { - TAILQ_REMOVE(head, p, entries); - free(p, M_PFTAG); + index = tag2hashindex(ts, tag); + TAILQ_FOREACH(t, &ts->taghash[index], taghash_entries) + if (tag == t->tag) { + if (--t->ref == 0) { + TAILQ_REMOVE(&ts->taghash[index], t, + taghash_entries); + index = tagname2hashindex(ts, t->name); + TAILQ_REMOVE(&ts->namehash[index], t, + namehash_entries); + /* Bits are 0-based for BIT_SET() */ + BIT_SET(TAGID_MAX, tag - 1, &ts->avail); + uma_zfree(V_pf_tag_z, t); } break; } - } } static u_int16_t @@ -522,22 +625,25 @@ pf_qid_unref(u_int32_t qid) static int pf_begin_altq(u_int32_t *ticket) { - struct pf_altq *altq; + struct pf_altq *altq, *tmp; int error = 0; PF_RULES_WASSERT(); - /* Purge the old altq list */ - while ((altq = TAILQ_FIRST(V_pf_altqs_inactive)) != NULL) { - TAILQ_REMOVE(V_pf_altqs_inactive, altq, entries); - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + /* Purge the old altq lists */ + TAILQ_FOREACH_SAFE(altq, V_pf_altq_ifs_inactive, entries, tmp) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* detach and destroy the discipline */ error = altq_remove(altq); - } else - pf_qid_unref(altq->qid); + } free(altq, M_PFALTQ); } + TAILQ_INIT(V_pf_altq_ifs_inactive); + TAILQ_FOREACH_SAFE(altq, V_pf_altqs_inactive, entries, tmp) { + pf_qid_unref(altq->qid); + free(altq, M_PFALTQ); + } + TAILQ_INIT(V_pf_altqs_inactive); if (error) return (error); *ticket = ++V_ticket_altqs_inactive; @@ -548,24 +654,27 @@ pf_begin_altq(u_int32_t *ticket) static int pf_rollback_altq(u_int32_t ticket) { - struct pf_altq *altq; + struct pf_altq *altq, *tmp; int error = 0; PF_RULES_WASSERT(); if (!V_altqs_inactive_open || ticket != V_ticket_altqs_inactive) return (0); - /* Purge the old altq list */ - while ((altq = TAILQ_FIRST(V_pf_altqs_inactive)) != NULL) { - TAILQ_REMOVE(V_pf_altqs_inactive, altq, entries); - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + /* Purge the old altq lists */ + TAILQ_FOREACH_SAFE(altq, V_pf_altq_ifs_inactive, entries, tmp) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* detach and destroy the discipline */ error = altq_remove(altq); - } else - pf_qid_unref(altq->qid); + } free(altq, M_PFALTQ); } + TAILQ_INIT(V_pf_altq_ifs_inactive); + TAILQ_FOREACH_SAFE(altq, V_pf_altqs_inactive, entries, tmp) { + pf_qid_unref(altq->qid); + free(altq, M_PFALTQ); + } + TAILQ_INIT(V_pf_altqs_inactive); V_altqs_inactive_open = 0; return (error); } @@ -573,8 +682,8 @@ pf_rollback_altq(u_int32_t ticket) static int pf_commit_altq(u_int32_t ticket) { - struct pf_altqqueue *old_altqs; - struct pf_altq *altq; + struct pf_altqqueue *old_altqs, *old_altq_ifs; + struct pf_altq *altq, *tmp; int err, error = 0; PF_RULES_WASSERT(); @@ -584,14 +693,16 @@ pf_commit_altq(u_int32_t ticket) /* swap altqs, keep the old. */ old_altqs = V_pf_altqs_active; + old_altq_ifs = V_pf_altq_ifs_active; V_pf_altqs_active = V_pf_altqs_inactive; + V_pf_altq_ifs_active = V_pf_altq_ifs_inactive; V_pf_altqs_inactive = old_altqs; + V_pf_altq_ifs_inactive = old_altq_ifs; V_ticket_altqs_active = V_ticket_altqs_inactive; /* Attach new disciplines */ - TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* attach the discipline */ error = altq_pfattach(altq); if (error == 0 && V_pf_altq_running) @@ -601,11 +712,9 @@ pf_commit_altq(u_int32_t ticket) } } - /* Purge the old altq list */ - while ((altq = TAILQ_FIRST(V_pf_altqs_inactive)) != NULL) { - TAILQ_REMOVE(V_pf_altqs_inactive, altq, entries); - if (altq->qname[0] == 0 && - (altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { + /* Purge the old altq lists */ + TAILQ_FOREACH_SAFE(altq, V_pf_altq_ifs_inactive, entries, tmp) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { /* detach and destroy the discipline */ if (V_pf_altq_running) error = pf_disable_altq(altq); @@ -615,10 +724,15 @@ pf_commit_altq(u_int32_t ticket) err = altq_remove(altq); if (err != 0 && error == 0) error = err; - } else - pf_qid_unref(altq->qid); + } free(altq, M_PFALTQ); } + TAILQ_INIT(V_pf_altq_ifs_inactive); + TAILQ_FOREACH_SAFE(altq, V_pf_altqs_inactive, entries, tmp) { + pf_qid_unref(altq->qid); + free(altq, M_PFALTQ); + } + TAILQ_INIT(V_pf_altqs_inactive); V_altqs_inactive_open = 0; return (error); @@ -675,10 +789,34 @@ pf_disable_altq(struct pf_altq *altq) return (error); } +static int +pf_altq_ifnet_event_add(struct ifnet *ifp, int remove, u_int32_t ticket, + struct pf_altq *altq) +{ + struct ifnet *ifp1; + int error = 0; + + /* Deactivate the interface in question */ + altq->local_flags &= ~PFALTQ_FLAG_IF_REMOVED; + if ((ifp1 = ifunit(altq->ifname)) == NULL || + (remove && ifp1 == ifp)) { + altq->local_flags |= PFALTQ_FLAG_IF_REMOVED; + } else { + error = altq_add(ifp1, altq); + + if (ticket != V_ticket_altqs_inactive) + error = EBUSY; + + if (error) + free(altq, M_PFALTQ); + } + + return (error); +} + void pf_altq_ifnet_event(struct ifnet *ifp, int remove) { - struct ifnet *ifp1; struct pf_altq *a1, *a2, *a3; u_int32_t ticket; int error = 0; @@ -692,7 +830,7 @@ pf_altq_ifnet_event(struct ifnet *ifp, int remove) return; /* Copy the current active set */ - TAILQ_FOREACH(a1, V_pf_altqs_active, entries) { + TAILQ_FOREACH(a1, V_pf_altq_ifs_active, entries) { a2 = malloc(sizeof(*a2), M_PFALTQ, M_NOWAIT); if (a2 == NULL) { error = ENOMEM; @@ -700,41 +838,43 @@ pf_altq_ifnet_event(struct ifnet *ifp, int remove) } bcopy(a1, a2, sizeof(struct pf_altq)); - if (a2->qname[0] != 0) { - if ((a2->qid = pf_qname2qid(a2->qname)) == 0) { - error = EBUSY; - free(a2, M_PFALTQ); - break; - } - a2->altq_disc = NULL; - TAILQ_FOREACH(a3, V_pf_altqs_inactive, entries) { - if (strncmp(a3->ifname, a2->ifname, - IFNAMSIZ) == 0 && a3->qname[0] == 0) { - a2->altq_disc = a3->altq_disc; - break; - } - } + error = pf_altq_ifnet_event_add(ifp, remove, ticket, a2); + if (error) + break; + + TAILQ_INSERT_TAIL(V_pf_altq_ifs_inactive, a2, entries); + } + if (error) + goto out; + TAILQ_FOREACH(a1, V_pf_altqs_active, entries) { + a2 = malloc(sizeof(*a2), M_PFALTQ, M_NOWAIT); + if (a2 == NULL) { + error = ENOMEM; + break; } - /* Deactivate the interface in question */ - a2->local_flags &= ~PFALTQ_FLAG_IF_REMOVED; - if ((ifp1 = ifunit(a2->ifname)) == NULL || - (remove && ifp1 == ifp)) { - a2->local_flags |= PFALTQ_FLAG_IF_REMOVED; - } else { - error = altq_add(a2); + bcopy(a1, a2, sizeof(struct pf_altq)); - if (ticket != V_ticket_altqs_inactive) - error = EBUSY; - - if (error) { - free(a2, M_PFALTQ); + if ((a2->qid = pf_qname2qid(a2->qname)) == 0) { + error = EBUSY; + free(a2, M_PFALTQ); + break; + } + a2->altq_disc = NULL; + TAILQ_FOREACH(a3, V_pf_altq_ifs_inactive, entries) { + if (strncmp(a3->ifname, a2->ifname, + IFNAMSIZ) == 0) { + a2->altq_disc = a3->altq_disc; break; } } + error = pf_altq_ifnet_event_add(ifp, remove, ticket, a2); + if (error) + break; TAILQ_INSERT_TAIL(V_pf_altqs_inactive, a2, entries); } +out: if (error != 0) pf_rollback_altq(ticket); else @@ -1212,6 +1352,28 @@ pf_import_kaltq(struct pfioc_altq_v1 *pa, struct pf_al return (0); } + +static struct pf_altq * +pf_altq_get_nth_active(u_int32_t n) +{ + struct pf_altq *altq; + u_int32_t nr; + + nr = 0; + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if (nr == n) + return (altq); + nr++; + } + + TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { + if (nr == n) + return (altq); + nr++; + } + + return (NULL); +} #endif /* ALTQ */ static int @@ -2261,9 +2423,8 @@ DIOCGETSTATES_full: PF_RULES_WLOCK(); /* enable all altq interfaces on active list */ - TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { - if (altq->qname[0] == 0 && (altq->local_flags & - PFALTQ_FLAG_IF_REMOVED) == 0) { + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { error = pf_enable_altq(altq); if (error != 0) break; @@ -2281,9 +2442,8 @@ DIOCGETSTATES_full: PF_RULES_WLOCK(); /* disable all altq interfaces on active list */ - TAILQ_FOREACH(altq, V_pf_altqs_active, entries) { - if (altq->qname[0] == 0 && (altq->local_flags & - PFALTQ_FLAG_IF_REMOVED) == 0) { + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) { + if ((altq->local_flags & PFALTQ_FLAG_IF_REMOVED) == 0) { error = pf_disable_altq(altq); if (error != 0) break; @@ -2328,9 +2488,9 @@ DIOCGETSTATES_full: break; } altq->altq_disc = NULL; - TAILQ_FOREACH(a, V_pf_altqs_inactive, entries) { + TAILQ_FOREACH(a, V_pf_altq_ifs_inactive, entries) { if (strncmp(a->ifname, altq->ifname, - IFNAMSIZ) == 0 && a->qname[0] == 0) { + IFNAMSIZ) == 0) { altq->altq_disc = a->altq_disc; break; } @@ -2340,7 +2500,7 @@ DIOCGETSTATES_full: if ((ifp = ifunit(altq->ifname)) == NULL) altq->local_flags |= PFALTQ_FLAG_IF_REMOVED; else - error = altq_add(altq); + error = altq_add(ifp, altq); if (error) { PF_RULES_WUNLOCK(); @@ -2348,7 +2508,10 @@ DIOCGETSTATES_full: break; } - TAILQ_INSERT_TAIL(V_pf_altqs_inactive, altq, entries); + if (altq->qname[0] != 0) + TAILQ_INSERT_TAIL(V_pf_altqs_inactive, altq, entries); + else + TAILQ_INSERT_TAIL(V_pf_altq_ifs_inactive, altq, entries); /* version error check done on import above */ pf_export_kaltq(altq, pa, IOCPARM_LEN(cmd)); PF_RULES_WUNLOCK(); @@ -2362,6 +2525,8 @@ DIOCGETSTATES_full: PF_RULES_RLOCK(); pa->nr = 0; + TAILQ_FOREACH(altq, V_pf_altq_ifs_active, entries) + pa->nr++; TAILQ_FOREACH(altq, V_pf_altqs_active, entries) pa->nr++; pa->ticket = V_ticket_altqs_active; @@ -2373,7 +2538,6 @@ DIOCGETSTATES_full: case DIOCGETALTQV1: { struct pfioc_altq_v1 *pa = (struct pfioc_altq_v1 *)addr; struct pf_altq *altq; - u_int32_t nr; PF_RULES_RLOCK(); if (pa->ticket != V_ticket_altqs_active) { @@ -2381,12 +2545,7 @@ DIOCGETSTATES_full: error = EBUSY; break; } - nr = 0; - altq = TAILQ_FIRST(V_pf_altqs_active); - while ((altq != NULL) && (nr < pa->nr)) { - altq = TAILQ_NEXT(altq, entries); - nr++; - } + altq = pf_altq_get_nth_active(pa->nr); if (altq == NULL) { PF_RULES_RUNLOCK(); error = EBUSY; @@ -2407,7 +2566,6 @@ DIOCGETSTATES_full: case DIOCGETQSTATSV1: { struct pfioc_qstats_v1 *pq = (struct pfioc_qstats_v1 *)addr; struct pf_altq *altq; - u_int32_t nr; int nbytes; u_int32_t version; @@ -2418,12 +2576,7 @@ DIOCGETSTATES_full: break; } nbytes = pq->nbytes; - nr = 0; - altq = TAILQ_FIRST(V_pf_altqs_active); - while ((altq != NULL) && (nr < pq->nr)) { - altq = TAILQ_NEXT(altq, entries); - nr++; - } + altq = pf_altq_get_nth_active(pq->nr); if (altq == NULL) { PF_RULES_RUNLOCK(); error = EBUSY; @@ -4151,9 +4304,16 @@ dehook_pf(void) static void pf_load_vnet(void) { - TAILQ_INIT(&V_pf_tags); - TAILQ_INIT(&V_pf_qids); + V_pf_tag_z = uma_zcreate("pf tags", sizeof(struct pf_tagname), + NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + pf_init_tagset(&V_pf_tags, &pf_rule_tag_hashsize, + PF_RULE_TAG_HASH_SIZE_DEFAULT); +#ifdef ALTQ + pf_init_tagset(&V_pf_qids, &pf_queue_tag_hashsize, + PF_QUEUE_TAG_HASH_SIZE_DEFAULT); +#endif + pfattach_vnet(); V_pf_vnet_active = 1; } @@ -4218,6 +4378,12 @@ pf_unload_vnet(void) pf_cleanup(); if (IS_DEFAULT_VNET(curvnet)) pf_mtag_cleanup(); + + pf_cleanup_tagset(&V_pf_tags); +#ifdef ALTQ + pf_cleanup_tagset(&V_pf_qids); +#endif + uma_zdestroy(V_pf_tag_z); /* Free counters last as we updated them during shutdown. */ counter_u64_free(V_pf_default_rule.states_cur); From owner-svn-src-all@freebsd.org Mon Feb 11 23:33:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 232D914E7163; Mon, 11 Feb 2019 23:33:17 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B917C8EED1; Mon, 11 Feb 2019 23:33:16 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ABF7C7295; Mon, 11 Feb 2019 23:33:16 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BNXGic095843; Mon, 11 Feb 2019 23:33:16 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BNXGSS095842; Mon, 11 Feb 2019 23:33:16 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902112333.x1BNXGSS095842@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 23:33:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344029 - stable/12/sys/netpfil/pf X-SVN-Group: stable-12 X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: stable/12/sys/netpfil/pf X-SVN-Commit-Revision: 344029 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B917C8EED1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 23:33:17 -0000 Author: pkelsey Date: Mon Feb 11 23:33:16 2019 New Revision: 344029 URL: https://svnweb.freebsd.org/changeset/base/344029 Log: MFC r343534: Don't re-evaluate ALTQ kernel configuration due to events on non-ALTQ interfaces Re-evaluating the ALTQ kernel configuration can be expensive, particularly when there are a large number (hundreds or thousands) of queues, and is wholly unnecessary in response to events on interfaces that do not support ALTQ as such interfaces cannot be part of an ALTQ configuration. Reviewed by: kp Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D18918 Modified: stable/12/sys/netpfil/pf/pf_ioctl.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/netpfil/pf/pf_ioctl.c ============================================================================== --- stable/12/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 23:30:30 2019 (r344028) +++ stable/12/sys/netpfil/pf/pf_ioctl.c Mon Feb 11 23:33:16 2019 (r344029) @@ -821,6 +821,14 @@ pf_altq_ifnet_event(struct ifnet *ifp, int remove) u_int32_t ticket; int error = 0; + /* + * No need to re-evaluate the configuration for events on interfaces + * that do not support ALTQ, as it's not possible for such + * interfaces to be part of the configuration. + */ + if (!ALTQ_IS_READY(&ifp->if_snd)) + return; + /* Interrupt userland queue modifications */ if (V_altqs_inactive_open) pf_rollback_altq(V_ticket_altqs_inactive); From owner-svn-src-all@freebsd.org Mon Feb 11 23:35:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0385114E71F2; Mon, 11 Feb 2019 23:35:36 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 968938F038; Mon, 11 Feb 2019 23:35:35 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 71D7A7296; Mon, 11 Feb 2019 23:35:35 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1BNZZj0095993; Mon, 11 Feb 2019 23:35:35 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1BNZZ02095992; Mon, 11 Feb 2019 23:35:35 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902112335.x1BNZZ02095992@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Mon, 11 Feb 2019 23:35:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344030 - stable/12/sbin/ifconfig X-SVN-Group: stable-12 X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: stable/12/sbin/ifconfig X-SVN-Commit-Revision: 344030 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 968938F038 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Feb 2019 23:35:36 -0000 Author: pkelsey Date: Mon Feb 11 23:35:34 2019 New Revision: 344030 URL: https://svnweb.freebsd.org/changeset/base/344030 Log: MFC r343535: Speed up non-status operations applied to a single interface When performing a non-status operation on a single interface, it is not necessary for ifconfig to build a list of all addresses in the system, sort them, then iterate through them looking for the entry for the single interface of interest. Doing so becomes increasingly expensive as the number of interfaces in the system grows (e.g., in a system with 1000+ vlan(4) interfaces). Reviewed by: ae, kp Sponsored by: RG Nets Differential Revision: https://reviews.freebsd.org/D18919 Modified: stable/12/sbin/ifconfig/ifconfig.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/ifconfig/ifconfig.c ============================================================================== --- stable/12/sbin/ifconfig/ifconfig.c Mon Feb 11 23:33:16 2019 (r344029) +++ stable/12/sbin/ifconfig/ifconfig.c Mon Feb 11 23:35:34 2019 (r344030) @@ -111,6 +111,8 @@ static void status(const struct afswtch *afp, const st static void tunnel_status(int s); static _Noreturn void usage(void); +static int getifflags(const char *ifname, int us); + static struct afswtch *af_getbyname(const char *name); static struct afswtch *af_getbyfamily(int af); static void af_other_status(int); @@ -369,6 +371,7 @@ main(int argc, char *argv[]) const char *ifname; struct option *p; size_t iflen; + int flags; all = downonly = uponly = namesonly = noload = verbose = 0; f_inet = f_inet6 = f_ether = f_addr = NULL; @@ -526,6 +529,25 @@ main(int argc, char *argv[]) argc--, argv++; } + /* + * Check for a requested configuration action on a single interface, + * which doesn't require building, sorting, and searching the entire + * system address list + */ + if ((argc > 0) && (ifname != NULL)) { + iflen = strlcpy(name, ifname, sizeof(name)); + if (iflen >= sizeof(name)) { + warnx("%s: interface name too long, skipping", ifname); + } else { + flags = getifflags(name, -1); + if (!(((flags & IFF_CANTCONFIG) != 0) || + (downonly && (flags & IFF_UP) != 0) || + (uponly && (flags & IFF_UP) == 0))) + ifconfig(argc, argv, 0, afp); + } + goto done; + } + if (getifaddrs(&ifap) != 0) err(EXIT_FAILURE, "getifaddrs"); @@ -609,6 +631,7 @@ main(int argc, char *argv[]) printf("\n"); freeifaddrs(ifap); +done: freeformat(); exit(exit_code); } @@ -1020,6 +1043,28 @@ setifdstaddr(const char *addr, int param __unused, int afp->af_getaddr(addr, DSTADDR); } +static int +getifflags(const char *ifname, int us) +{ + struct ifreq my_ifr; + int s; + + memset(&my_ifr, 0, sizeof(my_ifr)); + (void) strlcpy(my_ifr.ifr_name, ifname, sizeof(my_ifr.ifr_name)); + if (us < 0) { + if ((s = socket(AF_LOCAL, SOCK_DGRAM, 0)) < 0) + err(1, "socket(family AF_LOCAL,SOCK_DGRAM"); + } else + s = us; + if (ioctl(s, SIOCGIFFLAGS, (caddr_t)&my_ifr) < 0) { + Perror("ioctl (SIOCGIFFLAGS)"); + exit(1); + } + if (us < 0) + close(s); + return ((my_ifr.ifr_flags & 0xffff) | (my_ifr.ifr_flagshigh << 16)); +} + /* * Note: doing an SIOCIGIFFLAGS scribbles on the union portion * of the ifreq structure, which may confuse other parts of ifconfig. @@ -1031,20 +1076,14 @@ setifflags(const char *vname, int value, int s, const struct ifreq my_ifr; int flags; - memset(&my_ifr, 0, sizeof(my_ifr)); - (void) strlcpy(my_ifr.ifr_name, name, sizeof(my_ifr.ifr_name)); - - if (ioctl(s, SIOCGIFFLAGS, (caddr_t)&my_ifr) < 0) { - Perror("ioctl (SIOCGIFFLAGS)"); - exit(1); - } - flags = (my_ifr.ifr_flags & 0xffff) | (my_ifr.ifr_flagshigh << 16); - + flags = getifflags(name, s); if (value < 0) { value = -value; flags &= ~value; } else flags |= value; + memset(&my_ifr, 0, sizeof(my_ifr)); + (void) strlcpy(my_ifr.ifr_name, name, sizeof(my_ifr.ifr_name)); my_ifr.ifr_flags = flags & 0xffff; my_ifr.ifr_flagshigh = flags >> 16; if (ioctl(s, SIOCSIFFLAGS, (caddr_t)&my_ifr) < 0) From owner-svn-src-all@freebsd.org Tue Feb 12 00:00:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EAF6714E7A4D; Tue, 12 Feb 2019 00:00:33 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8FC3E8FAEB; Tue, 12 Feb 2019 00:00:33 +0000 (UTC) (envelope-from pkelsey@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 838C5762C; Tue, 12 Feb 2019 00:00:33 +0000 (UTC) (envelope-from pkelsey@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C00XZl006597; Tue, 12 Feb 2019 00:00:33 GMT (envelope-from pkelsey@FreeBSD.org) Received: (from pkelsey@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C00XJe006596; Tue, 12 Feb 2019 00:00:33 GMT (envelope-from pkelsey@FreeBSD.org) Message-Id: <201902120000.x1C00XJe006596@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pkelsey set sender to pkelsey@FreeBSD.org using -f From: Patrick Kelsey Date: Tue, 12 Feb 2019 00:00:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344031 - stable/12/sys/dev/e1000 X-SVN-Group: stable-12 X-SVN-Commit-Author: pkelsey X-SVN-Commit-Paths: stable/12/sys/dev/e1000 X-SVN-Commit-Revision: 344031 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8FC3E8FAEB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 00:00:34 -0000 Author: pkelsey Date: Tue Feb 12 00:00:32 2019 New Revision: 344031 URL: https://svnweb.freebsd.org/changeset/base/344031 Log: MFC r343919: Fix em(4) interrupt routing When configured with more tx queues than rx queues, em_if_msix_intr_assign() was incorrectly routing the tx event interrupts. Reviewed by: erj, marius Differential Revision: https://reviews.freebsd.org/D19070 Modified: stable/12/sys/dev/e1000/if_em.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/e1000/if_em.c ============================================================================== --- stable/12/sys/dev/e1000/if_em.c Mon Feb 11 23:35:34 2019 (r344030) +++ stable/12/sys/dev/e1000/if_em.c Tue Feb 12 00:00:32 2019 (r344031) @@ -1988,7 +1988,7 @@ em_if_msix_intr_assign(if_ctx_t ctx, int msix) &adapter->rx_queues[i % adapter->rx_num_queues].que_irq, IFLIB_INTR_TX, tx_que, tx_que->me, buf); - tx_que->msix = (vector % adapter->tx_num_queues); + tx_que->msix = (vector % adapter->rx_num_queues); /* * Set the bit to enable interrupt @@ -2001,9 +2001,9 @@ em_if_msix_intr_assign(if_ctx_t ctx, int msix) adapter->ims |= tx_que->eims; adapter->ivars |= (8 | tx_que->msix) << (8 + (i * 4)); } else if (adapter->hw.mac.type == e1000_82575) { - tx_que->eims = E1000_EICR_TX_QUEUE0 << (i % adapter->tx_num_queues); + tx_que->eims = E1000_EICR_TX_QUEUE0 << i; } else { - tx_que->eims = 1 << (i % adapter->tx_num_queues); + tx_que->eims = 1 << i; } } From owner-svn-src-all@freebsd.org Tue Feb 12 00:26:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A6C9314E832B; Tue, 12 Feb 2019 00:26:06 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 22B2E9079D; Tue, 12 Feb 2019 00:26:05 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1C0Q2QC073338; Mon, 11 Feb 2019 16:26:02 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1C0Q1FW073337; Mon, 11 Feb 2019 16:26:01 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902120026.x1C0Q1FW073337@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net In-Reply-To: <201902112324.x1BNOdL4090379@repo.freebsd.org> To: Patrick Kelsey Date: Mon, 11 Feb 2019 16:26:01 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 22B2E9079D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.983,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 00:26:06 -0000 > Author: pkelsey > Date: Mon Feb 11 23:24:39 2019 > New Revision: 344027 > URL: https://svnweb.freebsd.org/changeset/base/344027 > > Log: > MFC r343291: > Convert vmx(4) to being an iflib driver. I strongly object to this MFC, given the current number of 12.0 RELEASE related iflib problems we have it is foolish of us to iflib any more drivers in 12.0 With Hat RE> please consider reverting this until the iflib issues are resolved. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Feb 12 00:53:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D90A14E8DC5; Tue, 12 Feb 2019 00:53:15 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D72B291BC8; Tue, 12 Feb 2019 00:53:14 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B9B388040; Tue, 12 Feb 2019 00:53:14 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C0rEQq038321; Tue, 12 Feb 2019 00:53:14 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C0rEaG038320; Tue, 12 Feb 2019 00:53:14 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902120053.x1C0rEaG038320@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 12 Feb 2019 00:53:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344032 - stable/12/sys/dev/nvd X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/dev/nvd X-SVN-Commit-Revision: 344032 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D72B291BC8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 00:53:15 -0000 Author: mav Date: Tue Feb 12 00:53:14 2019 New Revision: 344032 URL: https://svnweb.freebsd.org/changeset/base/344032 Log: MFC r343562, r343563: Reimplement BIO_ORDERED handling in nvd(4). This fixes BIO_ORDERED semantics while also improving performance by: - sleeping also before BIO_ORDERED bio, as defined, not only after; - not queueing BIO_ORDERED bio to taskqueue if no other bios running; - waking up sleeping taskqueue explicitly rather then rely on polling. On Samsung SSD 970 PRO this shows sync write latency, measured with `diskinfo -wS`, reduction from ~2ms to ~1.1ms by not sleeping without reason till next HZ tick. On the same device ZFS pool with 8 ZVOLs synchronously writing 4KB blocks shows ~950 IOPS instead of ~750 IOPS before. I suspect ZFS does not need BIO_ORDERED on BIO_FLUSH at all, but that will be next question. Modified: stable/12/sys/dev/nvd/nvd.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/nvd/nvd.c ============================================================================== --- stable/12/sys/dev/nvd/nvd.c Tue Feb 12 00:00:32 2019 (r344031) +++ stable/12/sys/dev/nvd/nvd.c Tue Feb 12 00:53:14 2019 (r344032) @@ -82,6 +82,7 @@ struct nvd_disk { struct nvme_namespace *ns; uint32_t cur_depth; +#define NVD_ODEPTH (1 << 30) uint32_t ordered_in_flight; u_int unit; @@ -181,39 +182,50 @@ nvd_unload() mtx_destroy(&nvd_lock); } -static int +static void nvd_bio_submit(struct nvd_disk *ndisk, struct bio *bp) { int err; bp->bio_driver1 = NULL; - atomic_add_int(&ndisk->cur_depth, 1); + if (__predict_false(bp->bio_flags & BIO_ORDERED)) + atomic_add_int(&ndisk->cur_depth, NVD_ODEPTH); + else + atomic_add_int(&ndisk->cur_depth, 1); err = nvme_ns_bio_process(ndisk->ns, bp, nvd_done); if (err) { - atomic_add_int(&ndisk->cur_depth, -1); - if (__predict_false(bp->bio_flags & BIO_ORDERED)) + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + atomic_add_int(&ndisk->cur_depth, -NVD_ODEPTH); atomic_add_int(&ndisk->ordered_in_flight, -1); + wakeup(&ndisk->cur_depth); + } else { + if (atomic_fetchadd_int(&ndisk->cur_depth, -1) == 1 && + __predict_false(ndisk->ordered_in_flight != 0)) + wakeup(&ndisk->cur_depth); + } bp->bio_error = err; bp->bio_flags |= BIO_ERROR; bp->bio_resid = bp->bio_bcount; biodone(bp); - return (-1); } - - return (0); } static void nvd_strategy(struct bio *bp) { - struct nvd_disk *ndisk; + struct nvd_disk *ndisk = (struct nvd_disk *)bp->bio_disk->d_drv1; - ndisk = (struct nvd_disk *)bp->bio_disk->d_drv1; - - if (__predict_false(bp->bio_flags & BIO_ORDERED)) - atomic_add_int(&ndisk->ordered_in_flight, 1); - - if (__predict_true(ndisk->ordered_in_flight == 0)) { + /* + * bio with BIO_ORDERED flag must be executed after all previous + * bios in the queue, and before any successive bios. + */ + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + if (atomic_fetchadd_int(&ndisk->ordered_in_flight, 1) == 0 && + ndisk->cur_depth == 0 && bioq_first(&ndisk->bioq) == NULL) { + nvd_bio_submit(ndisk, bp); + return; + } + } else if (__predict_true(ndisk->ordered_in_flight == 0)) { nvd_bio_submit(ndisk, bp); return; } @@ -281,28 +293,27 @@ nvd_ioctl(struct disk *ndisk, u_long cmd, void *data, static int nvd_dump(void *arg, void *virt, vm_offset_t phys, off_t offset, size_t len) { - struct nvd_disk *ndisk; - struct disk *dp; + struct disk *dp = arg; + struct nvd_disk *ndisk = dp->d_drv1; - dp = arg; - ndisk = dp->d_drv1; - return (nvme_ns_dump(ndisk->ns, virt, offset, len)); } static void nvd_done(void *arg, const struct nvme_completion *cpl) { - struct bio *bp; - struct nvd_disk *ndisk; + struct bio *bp = (struct bio *)arg; + struct nvd_disk *ndisk = bp->bio_disk->d_drv1; - bp = (struct bio *)arg; - - ndisk = bp->bio_disk->d_drv1; - - atomic_add_int(&ndisk->cur_depth, -1); - if (__predict_false(bp->bio_flags & BIO_ORDERED)) + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + atomic_add_int(&ndisk->cur_depth, -NVD_ODEPTH); atomic_add_int(&ndisk->ordered_in_flight, -1); + wakeup(&ndisk->cur_depth); + } else { + if (atomic_fetchadd_int(&ndisk->cur_depth, -1) == 1 && + __predict_false(ndisk->ordered_in_flight != 0)) + wakeup(&ndisk->cur_depth); + } biodone(bp); } @@ -320,22 +331,23 @@ nvd_bioq_process(void *arg, int pending) if (bp == NULL) break; - if (nvd_bio_submit(ndisk, bp) != 0) { - continue; + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + /* + * bio with BIO_ORDERED flag set must be executed + * after all previous bios. + */ + while (ndisk->cur_depth > 0) + tsleep(&ndisk->cur_depth, 0, "nvdorb", 1); + } else { + /* + * bio with BIO_ORDERED flag set must be completed + * before proceeding with additional bios. + */ + while (ndisk->cur_depth >= NVD_ODEPTH) + tsleep(&ndisk->cur_depth, 0, "nvdora", 1); } -#ifdef BIO_ORDERED - /* - * BIO_ORDERED flag dictates that the bio with BIO_ORDERED - * flag set must be completed before proceeding with - * additional bios. - */ - if (bp->bio_flags & BIO_ORDERED) { - while (ndisk->cur_depth > 0) { - pause("nvd flush", 1); - } - } -#endif + nvd_bio_submit(ndisk, bp); } } From owner-svn-src-all@freebsd.org Tue Feb 12 00:53:44 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 940E514E8E3F; Tue, 12 Feb 2019 00:53:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1AC5291CFC; Tue, 12 Feb 2019 00:53:44 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0D41E8042; Tue, 12 Feb 2019 00:53:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C0rhJr038395; Tue, 12 Feb 2019 00:53:43 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C0rhjK038394; Tue, 12 Feb 2019 00:53:43 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902120053.x1C0rhjK038394@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 12 Feb 2019 00:53:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344033 - stable/11/sys/dev/nvd X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/dev/nvd X-SVN-Commit-Revision: 344033 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1AC5291CFC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 00:53:44 -0000 Author: mav Date: Tue Feb 12 00:53:43 2019 New Revision: 344033 URL: https://svnweb.freebsd.org/changeset/base/344033 Log: MFC r343562, r343563: Reimplement BIO_ORDERED handling in nvd(4). This fixes BIO_ORDERED semantics while also improving performance by: - sleeping also before BIO_ORDERED bio, as defined, not only after; - not queueing BIO_ORDERED bio to taskqueue if no other bios running; - waking up sleeping taskqueue explicitly rather then rely on polling. On Samsung SSD 970 PRO this shows sync write latency, measured with `diskinfo -wS`, reduction from ~2ms to ~1.1ms by not sleeping without reason till next HZ tick. On the same device ZFS pool with 8 ZVOLs synchronously writing 4KB blocks shows ~950 IOPS instead of ~750 IOPS before. I suspect ZFS does not need BIO_ORDERED on BIO_FLUSH at all, but that will be next question. Modified: stable/11/sys/dev/nvd/nvd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/nvd/nvd.c ============================================================================== --- stable/11/sys/dev/nvd/nvd.c Tue Feb 12 00:53:14 2019 (r344032) +++ stable/11/sys/dev/nvd/nvd.c Tue Feb 12 00:53:43 2019 (r344033) @@ -80,6 +80,7 @@ struct nvd_disk { struct nvme_namespace *ns; uint32_t cur_depth; +#define NVD_ODEPTH (1 << 30) uint32_t ordered_in_flight; u_int unit; @@ -179,39 +180,50 @@ nvd_unload() mtx_destroy(&nvd_lock); } -static int +static void nvd_bio_submit(struct nvd_disk *ndisk, struct bio *bp) { int err; bp->bio_driver1 = NULL; - atomic_add_int(&ndisk->cur_depth, 1); + if (__predict_false(bp->bio_flags & BIO_ORDERED)) + atomic_add_int(&ndisk->cur_depth, NVD_ODEPTH); + else + atomic_add_int(&ndisk->cur_depth, 1); err = nvme_ns_bio_process(ndisk->ns, bp, nvd_done); if (err) { - atomic_add_int(&ndisk->cur_depth, -1); - if (__predict_false(bp->bio_flags & BIO_ORDERED)) + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + atomic_add_int(&ndisk->cur_depth, -NVD_ODEPTH); atomic_add_int(&ndisk->ordered_in_flight, -1); + wakeup(&ndisk->cur_depth); + } else { + if (atomic_fetchadd_int(&ndisk->cur_depth, -1) == 1 && + __predict_false(ndisk->ordered_in_flight != 0)) + wakeup(&ndisk->cur_depth); + } bp->bio_error = err; bp->bio_flags |= BIO_ERROR; bp->bio_resid = bp->bio_bcount; biodone(bp); - return (-1); } - - return (0); } static void nvd_strategy(struct bio *bp) { - struct nvd_disk *ndisk; + struct nvd_disk *ndisk = (struct nvd_disk *)bp->bio_disk->d_drv1; - ndisk = (struct nvd_disk *)bp->bio_disk->d_drv1; - - if (__predict_false(bp->bio_flags & BIO_ORDERED)) - atomic_add_int(&ndisk->ordered_in_flight, 1); - - if (__predict_true(ndisk->ordered_in_flight == 0)) { + /* + * bio with BIO_ORDERED flag must be executed after all previous + * bios in the queue, and before any successive bios. + */ + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + if (atomic_fetchadd_int(&ndisk->ordered_in_flight, 1) == 0 && + ndisk->cur_depth == 0 && bioq_first(&ndisk->bioq) == NULL) { + nvd_bio_submit(ndisk, bp); + return; + } + } else if (__predict_true(ndisk->ordered_in_flight == 0)) { nvd_bio_submit(ndisk, bp); return; } @@ -279,28 +291,27 @@ nvd_ioctl(struct disk *ndisk, u_long cmd, void *data, static int nvd_dump(void *arg, void *virt, vm_offset_t phys, off_t offset, size_t len) { - struct nvd_disk *ndisk; - struct disk *dp; + struct disk *dp = arg; + struct nvd_disk *ndisk = dp->d_drv1; - dp = arg; - ndisk = dp->d_drv1; - return (nvme_ns_dump(ndisk->ns, virt, offset, len)); } static void nvd_done(void *arg, const struct nvme_completion *cpl) { - struct bio *bp; - struct nvd_disk *ndisk; + struct bio *bp = (struct bio *)arg; + struct nvd_disk *ndisk = bp->bio_disk->d_drv1; - bp = (struct bio *)arg; - - ndisk = bp->bio_disk->d_drv1; - - atomic_add_int(&ndisk->cur_depth, -1); - if (__predict_false(bp->bio_flags & BIO_ORDERED)) + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + atomic_add_int(&ndisk->cur_depth, -NVD_ODEPTH); atomic_add_int(&ndisk->ordered_in_flight, -1); + wakeup(&ndisk->cur_depth); + } else { + if (atomic_fetchadd_int(&ndisk->cur_depth, -1) == 1 && + __predict_false(ndisk->ordered_in_flight != 0)) + wakeup(&ndisk->cur_depth); + } biodone(bp); } @@ -318,22 +329,23 @@ nvd_bioq_process(void *arg, int pending) if (bp == NULL) break; - if (nvd_bio_submit(ndisk, bp) != 0) { - continue; + if (__predict_false(bp->bio_flags & BIO_ORDERED)) { + /* + * bio with BIO_ORDERED flag set must be executed + * after all previous bios. + */ + while (ndisk->cur_depth > 0) + tsleep(&ndisk->cur_depth, 0, "nvdorb", 1); + } else { + /* + * bio with BIO_ORDERED flag set must be completed + * before proceeding with additional bios. + */ + while (ndisk->cur_depth >= NVD_ODEPTH) + tsleep(&ndisk->cur_depth, 0, "nvdora", 1); } -#ifdef BIO_ORDERED - /* - * BIO_ORDERED flag dictates that the bio with BIO_ORDERED - * flag set must be completed before proceeding with - * additional bios. - */ - if (bp->bio_flags & BIO_ORDERED) { - while (ndisk->cur_depth > 0) { - pause("nvd flush", 1); - } - } -#endif + nvd_bio_submit(ndisk, bp); } } From owner-svn-src-all@freebsd.org Tue Feb 12 01:08:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0A10614E92B7; Tue, 12 Feb 2019 01:08:49 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A4A3D92640; Tue, 12 Feb 2019 01:08:48 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id E7F47C8C7; Tue, 12 Feb 2019 01:08:47 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net To: rgrimes@freebsd.org, Patrick Kelsey Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org References: <201902120026.x1C0Q1FW073337@pdx.rh.CN85.dnsmgr.net> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> Date: Mon, 11 Feb 2019 17:08:44 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: <201902120026.x1C0Q1FW073337@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A4A3D92640 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 01:08:49 -0000 On 2/11/19 4:26 PM, Rodney W. Grimes wrote: >> Author: pkelsey >> Date: Mon Feb 11 23:24:39 2019 >> New Revision: 344027 >> URL: https://svnweb.freebsd.org/changeset/base/344027 >> >> Log: >> MFC r343291: >> Convert vmx(4) to being an iflib driver. > > I strongly object to this MFC, given the current number > of 12.0 RELEASE related iflib problems we have it is > foolish of us to iflib any more drivers in 12.0 This isn't the release branch though and presumably we have some time before 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 we could always revert this commit then? I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in stable/12 yet or are we still waiting for them to land in HEAD and/or be merged? -- John Baldwin                                                                              From owner-svn-src-all@freebsd.org Tue Feb 12 01:24:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0DDF214EB6D1; Tue, 12 Feb 2019 01:24:27 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8CF3A94159; Tue, 12 Feb 2019 01:24:20 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1C1OIhV073610; Mon, 11 Feb 2019 17:24:18 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1C1OI5b073609; Mon, 11 Feb 2019 17:24:18 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902120124.x1C1OI5b073609@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net In-Reply-To: <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> To: John Baldwin Date: Mon, 11 Feb 2019 17:24:18 -0800 (PST) CC: rgrimes@FreeBSD.org, Patrick Kelsey , src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-stable@FreeBSD.org, svn-src-stable-12@FreeBSD.org Reply-To: rgrimes@FreeBSD.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 8CF3A94159 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 01:24:27 -0000 > On 2/11/19 4:26 PM, Rodney W. Grimes wrote: > >> Author: pkelsey > >> Date: Mon Feb 11 23:24:39 2019 > >> New Revision: 344027 > >> URL: https://svnweb.freebsd.org/changeset/base/344027 > >> > >> Log: > >> MFC r343291: > >> Convert vmx(4) to being an iflib driver. > > > > I strongly object to this MFC, given the current number > > of 12.0 RELEASE related iflib problems we have it is > > foolish of us to iflib any more drivers in 12.0 > > This isn't the release branch though and presumably we have some time before > 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 > we could always revert this commit then? At this point the status if iflib in stable/12 is not certain, but what is certain is this merge to 12 is probably going to break someones system and at best is an unknown if working. People DO run stable/12, breaking it is a no no. Has the committer even booted this code in a stable/12 system and run a serious amount of testing on it? > > I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in stable/12 > yet or are we still waiting for them to land in HEAD and/or be merged? I sent a ping out earlier today trying to find that out. I belive that some of them are merged to stable/12, some are waiting to be merged, I do believe most if not all are commited to head. But that is orthagonal to breaking another driver in stable/12. No one should have the attitude that "oh, we have until 12.1 release to fix it." The branch is called stable, you should never break it! -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Feb 12 01:18:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1192E14EAC2A; Tue, 12 Feb 2019 01:18:56 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: from mail-it1-f175.google.com (mail-it1-f175.google.com [209.85.166.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 97CBF93770; Tue, 12 Feb 2019 01:18:55 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: by mail-it1-f175.google.com with SMTP id z20so3342174itc.3; Mon, 11 Feb 2019 17:18:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=bUT6jRd87+jgAnWEkVU9v2Q8yYRH8dMEl6vT/m6BHyg=; b=hoMUfBDA8kZowbd+TixM1Btv5VKLLXVmqJkz2R93Jg93moiwsuwSwt3FGO/cpX4u1Y ZOpR+oNAanUyD5MP93qUstV2eci76utdqFS/y9gBgVfT5u0SFfW8TYM+jvVzT1bFV9Au NA+tWnKZhPWfdigWp0NWy9QlZ/lMFMYyB8bORwbKjP9hjLg/0iAnrYESTuwPClD/4o+A TDAR7djHqsC+yhOI/lEDPiGOX6p7O2ZdrDHFES0vhWgj+hLGZZu7o3yKCJjQPdZbXwUI c7gPo7Y06AKjOpcVqAnwSoqajS3klUbHJomcigiNDaH/Fe5PUQJ2MrpP1uu1+uBLkzhy 53ug== X-Gm-Message-State: AHQUAuboKw5QugpCCvSdp8kTqhmDPucG2YQ/JM0rIKBqbX6AvxmC/rKC Eg2Jh+10D/qu2tgQPgpR2JLh7fhsYImkGlkmO1DHtw== X-Google-Smtp-Source: AHgI3IYDXzooB0bqa5SKbyNitXYjhGIb8wjbRLgHX6kKZ4Bs4HKLl/Fs9A3Qf+m+PcYPfT3HJb03wtjPsyse2YnKzuI= X-Received: by 2002:a24:5f4c:: with SMTP id r73mr681941itb.25.1549934009334; Mon, 11 Feb 2019 17:13:29 -0800 (PST) MIME-Version: 1.0 References: <201902120026.x1C0Q1FW073337@pdx.rh.CN85.dnsmgr.net> <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> In-Reply-To: <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> From: Patrick Kelsey Date: Mon, 11 Feb 2019 20:13:16 -0500 Message-ID: Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net To: John Baldwin Cc: rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org X-Rspamd-Queue-Id: 97CBF93770 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.88 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.89)[-0.887,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 01:18:56 -0000 On Mon, Feb 11, 2019 at 8:08 PM John Baldwin wrote: > On 2/11/19 4:26 PM, Rodney W. Grimes wrote: > >> Author: pkelsey > >> Date: Mon Feb 11 23:24:39 2019 > >> New Revision: 344027 > >> URL: https://svnweb.freebsd.org/changeset/base/344027 > >> > >> Log: > >> MFC r343291: > >> Convert vmx(4) to being an iflib driver. > > > > I strongly object to this MFC, given the current number > > of 12.0 RELEASE related iflib problems we have it is > > foolish of us to iflib any more drivers in 12.0 > > This isn't the release branch though and presumably we have some time > before > 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 > we could always revert this commit then? > > I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in > stable/12 > yet or are we still waiting for them to land in HEAD and/or be merged? > iflib.c is currently the same between head and stable/12. I've found and fixed a number of iflib bugs by developing the iflib version of the vmx(4) driver, and it's also being fielded in a product. I'm also aware that not all current driver problems are necessarily iflib problems. I think we'd be better off letting this version of vmx(4) ride it out in stable/12 until such time as we discover an actual horror that we then feel we need to react to in some way other than just going ahead and fixing it. -Patrick From owner-svn-src-all@freebsd.org Tue Feb 12 01:25:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AC13514EB881; Tue, 12 Feb 2019 01:25:37 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1AEA994384; Tue, 12 Feb 2019 01:25:35 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1C1PXWP073632; Mon, 11 Feb 2019 17:25:33 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1C1PX7G073631; Mon, 11 Feb 2019 17:25:33 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902120125.x1C1PX7G073631@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net In-Reply-To: To: Patrick Kelsey Date: Mon, 11 Feb 2019 17:25:33 -0800 (PST) CC: John Baldwin , rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 1AEA994384 X-Spamd-Bar: ++ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [2.17 / 15.00]; ARC_NA(0.00)[]; HAS_REPLYTO(0.00)[rgrimes@freebsd.org]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_SPAM_SHORT(0.65)[0.654,0]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[dnsmgr.net]; AUTH_NA(1.00)[]; REPLYTO_DOM_NEQ_FROM_DOM(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; IP_SCORE(-0.01)[ip: (0.02), ipnet: 69.59.192.0/19(0.01), asn: 13868(-0.02), country: US(-0.07)]; MX_GOOD(-0.01)[cached: pdx.rh.CN85.dnsmgr.net]; NEURAL_SPAM_LONG(0.03)[0.028,0]; RCPT_COUNT_SEVEN(0.00)[7]; NEURAL_SPAM_MEDIUM(0.61)[0.611,0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:13868, ipnet:69.59.192.0/19, country:US]; MID_RHS_MATCH_FROM(0.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 01:25:38 -0000 > On Mon, Feb 11, 2019 at 8:08 PM John Baldwin wrote: > > > On 2/11/19 4:26 PM, Rodney W. Grimes wrote: > > >> Author: pkelsey > > >> Date: Mon Feb 11 23:24:39 2019 > > >> New Revision: 344027 > > >> URL: https://svnweb.freebsd.org/changeset/base/344027 > > >> > > >> Log: > > >> MFC r343291: > > >> Convert vmx(4) to being an iflib driver. > > > > > > I strongly object to this MFC, given the current number > > > of 12.0 RELEASE related iflib problems we have it is > > > foolish of us to iflib any more drivers in 12.0 > > > > This isn't the release branch though and presumably we have some time > > before > > 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 > > we could always revert this commit then? > > > > I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in > > stable/12 > > yet or are we still waiting for them to land in HEAD and/or be merged? > > > > iflib.c is currently the same between head and stable/12. I've found and > fixed a number of iflib bugs by developing the iflib version of the vmx(4) > driver, and it's also being fielded in a product. I'm also aware that not > all current driver problems are necessarily iflib problems. I think we'd > be better off letting this version of vmx(4) ride it out in stable/12 until > such time as we discover an actual horror that we then feel we need to > react to in some way other than just going ahead and fixing it. It can ride it out in head just fine, give it 3 months... plenty of time before any 12.1. stable/12 IS NOT A TEST GROUND. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Feb 12 02:07:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5B80714EFEA2; Tue, 12 Feb 2019 02:07:46 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: from mail-it1-f181.google.com (mail-it1-f181.google.com [209.85.166.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7C1CF97280; Tue, 12 Feb 2019 02:07:45 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: by mail-it1-f181.google.com with SMTP id r11so3466946itc.2; Mon, 11 Feb 2019 18:07:45 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=X+6qFmx1/3cLEmCSo5vMIrBwIVdqeuiZQEmPafmK5jw=; b=JOv14PNheO8doHELB8S7Iwfl6d5BPBNGeGSUIxp+X3SVG6PL5hxoZtqh9XhG/V1kNH 1p5xQ/Ci7wOcRXYuLqZypKyoTfAAbOfk8qrwhzTJyb13Obwven2VsUt4ZFqP7+FwMfsC NZINw5rSsgXxBhdiO5kTEqTCK/o1hobx/JZ9Rht6B9UZOIE4CG4aMUZ5AntTF2xjnEtI mmkwK3yBe7sXO3T5n9S3+yJhRHG81+vcF3+RWQWTWRZEww4rD8Jn1P+5PizoSlPuy4js kn2gp4Q/SMgDW2Iwr3E3WBQmQMgwZeNWMSMMLFX14aGmxYA8QvafRZka90gE/tGgQ3JR RA2w== X-Gm-Message-State: AHQUAuamC3PNaIeZ3Kj6stsKTCN0v48KuaQGpqxhOEnXtIWB3Cv+42i1 0mZTEJAGIlyNXLUI61G0BTY+sFpx424cbpM/pq6LQg== X-Google-Smtp-Source: AHgI3IaYCZh349yG0nDHgMrk+9Wwnk+QnGEEuitz8+5fwtq1lNrkOJeztKR7I9G//q6FEhAH6e6EQIpNWznMBlLBuj8= X-Received: by 2002:a24:2104:: with SMTP id e4mr610002ita.59.1549937259110; Mon, 11 Feb 2019 18:07:39 -0800 (PST) MIME-Version: 1.0 References: <201902120026.x1C0Q1FW073337@pdx.rh.CN85.dnsmgr.net> <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> In-Reply-To: From: Patrick Kelsey Date: Mon, 11 Feb 2019 21:07:26 -0500 Message-ID: Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net To: John Baldwin Cc: rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org X-Rspamd-Queue-Id: 7C1CF97280 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.88 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_SHORT(-0.89)[-0.887,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 02:07:46 -0000 On Mon, Feb 11, 2019 at 8:13 PM Patrick Kelsey wrote: > > > On Mon, Feb 11, 2019 at 8:08 PM John Baldwin wrote: > >> On 2/11/19 4:26 PM, Rodney W. Grimes wrote: >> >> Author: pkelsey >> >> Date: Mon Feb 11 23:24:39 2019 >> >> New Revision: 344027 >> >> URL: https://svnweb.freebsd.org/changeset/base/344027 >> >> >> >> Log: >> >> MFC r343291: >> >> Convert vmx(4) to being an iflib driver. >> > >> > I strongly object to this MFC, given the current number >> > of 12.0 RELEASE related iflib problems we have it is >> > foolish of us to iflib any more drivers in 12.0 >> >> This isn't the release branch though and presumably we have some time >> before >> 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 >> we could always revert this commit then? >> >> I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in >> stable/12 >> yet or are we still waiting for them to land in HEAD and/or be merged? >> > > iflib.c is currently the same between head and stable/12. I've found and > fixed a number of iflib bugs by developing the iflib version of the vmx(4) > driver, and it's also being fielded in a product. I'm also aware that not > all current driver problems are necessarily iflib problems. I think we'd > be better off letting this version of vmx(4) ride it out in stable/12 until > such time as we discover an actual horror that we then feel we need to > react to in some way other than just going ahead and fixing it. > > John, Which is to say, I second your motion to proceed with normal process. As one would reasonably expect, this driver didn't fall out of the sky yesterday. It was completed on 15 November 2018 and has been undergoing multi-party testing since then. I doubt it's bug free (nor was the last one), but when bugs have turned up in the driver or in iflib at any point along the way, convergence to root cause and a fix has been same-day, so I don't think there's anything that walks like an emergency or quacks like an emergency related to this commit. -Patrick From owner-svn-src-all@freebsd.org Tue Feb 12 02:16:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C77BD14F0BFD; Tue, 12 Feb 2019 02:16:22 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6ADBF97BB5; Tue, 12 Feb 2019 02:16:22 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 606489208; Tue, 12 Feb 2019 02:16:22 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C2GMPV079520; Tue, 12 Feb 2019 02:16:22 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C2GMIe079519; Tue, 12 Feb 2019 02:16:22 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902120216.x1C2GMIe079519@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Tue, 12 Feb 2019 02:16:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344034 - head/lib/libbe X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/lib/libbe X-SVN-Commit-Revision: 344034 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6ADBF97BB5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 02:16:23 -0000 Author: kevans Date: Tue Feb 12 02:16:21 2019 New Revision: 344034 URL: https://svnweb.freebsd.org/changeset/base/344034 Log: libbe(3): Belatedly note the BE_DESTROY_ORIGIN option added in r343977 X-MFC-With: r343977 Modified: head/lib/libbe/libbe.3 Modified: head/lib/libbe/libbe.3 ============================================================================== --- head/lib/libbe/libbe.3 Tue Feb 12 00:53:43 2019 (r344033) +++ head/lib/libbe/libbe.3 Tue Feb 12 02:16:21 2019 (r344034) @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 21, 2018 +.Dd February 11, 2019 .Dt LIBBE 3 .Os .Sh NAME @@ -253,6 +253,13 @@ It will not destroy a mounted boot environment unless .Dv BE_DESTROY_FORCE option is set in .Fa options . +If the +.Dv BE_DESTROY_ORIGIN +option is set in +.Fa options , +the +.Fn be_destroy +function will destroy the origin snapshot to this boot environment as well. .Pp The .Fn be_nicenum From owner-svn-src-all@freebsd.org Tue Feb 12 02:48:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5F75314D068B; Tue, 12 Feb 2019 02:48:17 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F34916ABC1; Tue, 12 Feb 2019 02:48:16 +0000 (UTC) (envelope-from kevlo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E7BC7976F; Tue, 12 Feb 2019 02:48:16 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C2mGda095321; Tue, 12 Feb 2019 02:48:16 GMT (envelope-from kevlo@FreeBSD.org) Received: (from kevlo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C2mGA7095319; Tue, 12 Feb 2019 02:48:16 GMT (envelope-from kevlo@FreeBSD.org) Message-Id: <201902120248.x1C2mGA7095319@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevlo set sender to kevlo@FreeBSD.org using -f From: Kevin Lo Date: Tue, 12 Feb 2019 02:48:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344035 - in head/sys/dev/usb: . quirk X-SVN-Group: head X-SVN-Commit-Author: kevlo X-SVN-Commit-Paths: in head/sys/dev/usb: . quirk X-SVN-Commit-Revision: 344035 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: F34916ABC1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 02:48:17 -0000 Author: kevlo Date: Tue Feb 12 02:48:16 2019 New Revision: 344035 URL: https://svnweb.freebsd.org/changeset/base/344035 Log: Remove duplicate vendor id in r334650. Intenso doesn't have a USB VID. Modified: head/sys/dev/usb/quirk/usb_quirk.c head/sys/dev/usb/usbdevs Modified: head/sys/dev/usb/quirk/usb_quirk.c ============================================================================== --- head/sys/dev/usb/quirk/usb_quirk.c Tue Feb 12 02:16:21 2019 (r344034) +++ head/sys/dev/usb/quirk/usb_quirk.c Tue Feb 12 02:48:16 2019 (r344035) @@ -273,7 +273,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRK UQ_MSC_FORCE_PROTO_RBC), USB_QUIRK(INSYSTEM, STORAGE_V2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(INTENSO, MEMORY_BOX, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), + USB_QUIRK(VIALABS, VL701, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), USB_QUIRK(IODATA, IU_CD2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), USB_QUIRK(IODATA, DVR_UEH8, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, Modified: head/sys/dev/usb/usbdevs ============================================================================== --- head/sys/dev/usb/usbdevs Tue Feb 12 02:16:21 2019 (r344034) +++ head/sys/dev/usb/usbdevs Tue Feb 12 02:48:16 2019 (r344035) @@ -767,7 +767,6 @@ vendor SIMTEC 0x20df Simtec Electronics vendor TRENDNET 0x20f4 TRENDnet vendor RTSYSTEMS 0x2100 RT Systems vendor DLINK4 0x2101 D-Link -vendor INTENSO 0x2109 INTENSO vendor VIALABS 0x2109 VIA Labs vendor ERICSSON 0x2282 Ericsson vendor MOTOROLA2 0x22b8 Motorola @@ -4738,6 +4737,7 @@ product VIA USB2IDEBRIDGE 0x6204 USB 2.0 IDE Bridge /* VIA Labs */ product VIALABS USB30SATABRIDGE 0x0700 USB 3.0 SATA Bridge +product VIALABS VL701 0x0701 VL701 USB 3.0 SATA Bridge /* Vaisala products */ product VAISALA CABLE 0x0200 USB Interface cable From owner-svn-src-all@freebsd.org Tue Feb 12 02:55:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A84D14D1173; Tue, 12 Feb 2019 02:55:26 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0591F6B381; Tue, 12 Feb 2019 02:55:26 +0000 (UTC) (envelope-from kevlo@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B00DE9982; Tue, 12 Feb 2019 02:55:25 +0000 (UTC) (envelope-from kevlo@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C2tPgT000518; Tue, 12 Feb 2019 02:55:25 GMT (envelope-from kevlo@FreeBSD.org) Received: (from kevlo@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C2tPnV000517; Tue, 12 Feb 2019 02:55:25 GMT (envelope-from kevlo@FreeBSD.org) Message-Id: <201902120255.x1C2tPnV000517@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevlo set sender to kevlo@FreeBSD.org using -f From: Kevin Lo Date: Tue, 12 Feb 2019 02:55:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344036 - head/sys/dev/usb X-SVN-Group: head X-SVN-Commit-Author: kevlo X-SVN-Commit-Paths: head/sys/dev/usb X-SVN-Commit-Revision: 344036 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0591F6B381 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 02:55:26 -0000 Author: kevlo Date: Tue Feb 12 02:55:25 2019 New Revision: 344036 URL: https://svnweb.freebsd.org/changeset/base/344036 Log: Remove entry for Intenso product. Modified: head/sys/dev/usb/usbdevs Modified: head/sys/dev/usb/usbdevs ============================================================================== --- head/sys/dev/usb/usbdevs Tue Feb 12 02:48:16 2019 (r344035) +++ head/sys/dev/usb/usbdevs Tue Feb 12 02:55:25 2019 (r344036) @@ -2571,9 +2571,6 @@ product INSYSTEM ISD105 0x0202 IDE Adapter ISD105 product INSYSTEM USBCABLE 0x081a USB cable product INSYSTEM STORAGE_V2 0x5701 USB Storage Adapter V2 -/* Intenso products */ -product INTENSO MEMORY_BOX 0x0701 External disk - /* Intel products */ product INTEL EASYPC_CAMERA 0x0110 Easy PC Camera product INTEL TESTBOARD 0x9890 82930 test board From owner-svn-src-all@freebsd.org Tue Feb 12 02:57:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A99C814D1313; Tue, 12 Feb 2019 02:57:29 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 463196B569; Tue, 12 Feb 2019 02:57:29 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 38CE89987; Tue, 12 Feb 2019 02:57:29 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C2vTb0000668; Tue, 12 Feb 2019 02:57:29 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C2vTmK000667; Tue, 12 Feb 2019 02:57:29 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902120257.x1C2vTmK000667@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 02:57:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344037 - stable/12/lib/libc/sys X-SVN-Group: stable-12 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: stable/12/lib/libc/sys X-SVN-Commit-Revision: 344037 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 463196B569 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 02:57:29 -0000 Author: ngie Date: Tue Feb 12 02:57:28 2019 New Revision: 344037 URL: https://svnweb.freebsd.org/changeset/base/344037 Log: MFC r343444: Document that `sendfile` will return an invalid value for `sbytes` if provided an invalid address This is meant to clarify the fact that the system call will not fail with -1/EFAULT, as one might expect, when reading the sendfile(2) manpage today. While here, pet the mandoc linter, when dealing with the section that describes valid values for `flags`. PR: 232210 Approved by: jtl (mentor) Differential Revision: https://reviews.freebsd.org/D19151 Modified: stable/12/lib/libc/sys/sendfile.2 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/sys/sendfile.2 ============================================================================== --- stable/12/lib/libc/sys/sendfile.2 Tue Feb 12 02:55:25 2019 (r344036) +++ stable/12/lib/libc/sys/sendfile.2 Tue Feb 12 02:57:28 2019 (r344037) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 12, 2018 +.Dd January 25, 2019 .Dt SENDFILE 2 .Os .Sh NAME @@ -104,7 +104,7 @@ variable pointed to by The least significant 16 bits of .Fa flags argument is a bitmap of these values: -.Bl -tag -offset indent +.Bl -tag -offset indent -width "SF_USER_READAHEAD" .It Dv SF_NODISKIO This flag causes .Nm @@ -403,3 +403,14 @@ The .Fx 11 implementation was written by .An Gleb Smirnoff Aq Mt glebius@FreeBSD.org . +.Sh BUGS +The +.Fn sendfile +system call will not fail, i.e., return +.Dv -1 +and set +.Va errno +to +.Er EFAULT , +if provided an invalid address for +.Fa sbytes . From owner-svn-src-all@freebsd.org Tue Feb 12 02:57:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E4D2814D1352; Tue, 12 Feb 2019 02:57:36 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 85D496B5F7; Tue, 12 Feb 2019 02:57:36 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0F0839989; Tue, 12 Feb 2019 02:57:35 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C2vYg5000732; Tue, 12 Feb 2019 02:57:34 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C2vYjX000731; Tue, 12 Feb 2019 02:57:34 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902120257.x1C2vYjX000731@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 02:57:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344038 - stable/11/lib/libc/sys X-SVN-Group: stable-11 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: stable/11/lib/libc/sys X-SVN-Commit-Revision: 344038 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 85D496B5F7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 02:57:37 -0000 Author: ngie Date: Tue Feb 12 02:57:34 2019 New Revision: 344038 URL: https://svnweb.freebsd.org/changeset/base/344038 Log: MFC r339343,r343444: r339343 (by allanjude): Document that sendfile(2) can return ENOTCAPABLE PR: 232207 r343444: Document that `sendfile` will return an invalid value for `sbytes` if provided an invalid address This is meant to clarify the fact that the system call will not fail with -1/EFAULT, as one might expect, when reading the sendfile(2) manpage today. While here, pet the mandoc linter, when dealing with the section that describes valid values for `flags`. PR: 232210 Approved by: jtl (mentor) Differential Revision: https://reviews.freebsd.org/D19150 Modified: stable/11/lib/libc/sys/sendfile.2 Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libc/sys/sendfile.2 ============================================================================== --- stable/11/lib/libc/sys/sendfile.2 Tue Feb 12 02:57:28 2019 (r344037) +++ stable/11/lib/libc/sys/sendfile.2 Tue Feb 12 02:57:34 2019 (r344038) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 7, 2016 +.Dd January 25, 2019 .Dt SENDFILE 2 .Os .Sh NAME @@ -104,7 +104,7 @@ variable pointed to by The least significant 16 bits of .Fa flags argument is a bitmap of these values: -.Bl -tag -offset indent +.Bl -tag -offset indent -width "SF_USER_READAHEAD" .It Dv SF_NODISKIO This flag causes .Nm @@ -314,6 +314,12 @@ is negative. .It Bq Er EIO An error occurred while reading from .Fa fd . +.It Bq Er ENOTCAPABLE +The +.Fa fd +or the +.Fa s +argument has insufficient rights. .It Bq Er ENOBUFS The system was unable to allocate an internal buffer. .It Bq Er ENOTCONN @@ -375,3 +381,14 @@ The .Fx 11 implementation was written by .An Gleb Smirnoff Aq Mt glebius@FreeBSD.org . +.Sh BUGS +The +.Fn sendfile +system call will not fail, i.e., return +.Dv -1 +and set +.Va errno +to +.Er EFAULT , +if provided an invalid address for +.Fa sbytes . From owner-svn-src-all@freebsd.org Tue Feb 12 03:12:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4F1F714D27A3; Tue, 12 Feb 2019 03:12:20 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E7AA16CA91; Tue, 12 Feb 2019 03:12:19 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D86639E29; Tue, 12 Feb 2019 03:12:19 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C3CJXW012044; Tue, 12 Feb 2019 03:12:19 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C3CJH7012043; Tue, 12 Feb 2019 03:12:19 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902120312.x1C3CJH7012043@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 03:12:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344039 - stable/12/sbin/route X-SVN-Group: stable-12 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: stable/12/sbin/route X-SVN-Commit-Revision: 344039 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E7AA16CA91 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 03:12:20 -0000 Author: ngie Date: Tue Feb 12 03:12:19 2019 New Revision: 344039 URL: https://svnweb.freebsd.org/changeset/base/344039 Log: MFC r342904: route(8): clarify -prefixlen description Try to reword -prefixlen section to more clearly and accurately describe how the -prefixlen modifier works. While here, fix a word that igor considered a typo: aggregatable addresses is a valid technical term per RFC-2374, however, it was superseded by the term "aggregator" in RFC-3587. Approved by: jtl (mentor) Differential Revision: https://reviews.freebsd.org/D19155 Modified: stable/12/sbin/route/route.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/route/route.8 ============================================================================== --- stable/12/sbin/route/route.8 Tue Feb 12 02:57:34 2019 (r344038) +++ stable/12/sbin/route/route.8 Tue Feb 12 03:12:19 2019 (r344039) @@ -28,7 +28,7 @@ .\" @(#)route.8 8.3 (Berkeley) 3/19/94 .\" $FreeBSD$ .\" -.Dd February 16, 2018 +.Dd January 9, 2019 .Dt ROUTE 8 .Os .Sh NAME @@ -303,14 +303,14 @@ is available instead of the qualifier because non-continuous masks are not allowed in IPv6. For example, .Fl prefixlen Li 32 -specifies network mask of +specifies that a network mask of .Li ffff:ffff:0000:0000:0000:0000:0000:0000 -to be used. -The default value of prefixlen is 64 to get along with -the aggregatable address. -But 0 is assumed if +will be used. +The default prefixlen is 64. +However, it is assumed to be 0 if .Cm default -is specified. +is specified for +.Ar destination . Note that the qualifier works only for .Dv AF_INET6 address family. From owner-svn-src-all@freebsd.org Tue Feb 12 03:13:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1160514D2861; Tue, 12 Feb 2019 03:13:11 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7EC526CC32; Tue, 12 Feb 2019 03:13:10 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 72A339E4C; Tue, 12 Feb 2019 03:13:10 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C3DA5Q012122; Tue, 12 Feb 2019 03:13:10 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C3DAAI012121; Tue, 12 Feb 2019 03:13:10 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902120313.x1C3DAAI012121@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 03:13:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344040 - stable/11/sbin/route X-SVN-Group: stable-11 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: stable/11/sbin/route X-SVN-Commit-Revision: 344040 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7EC526CC32 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 03:13:11 -0000 Author: ngie Date: Tue Feb 12 03:13:10 2019 New Revision: 344040 URL: https://svnweb.freebsd.org/changeset/base/344040 Log: MFC r342904: route(8): clarify -prefixlen description Try to reword -prefixlen section to more clearly and accurately describe how the -prefixlen modifier works. While here, fix a word that igor considered a typo: aggregatable addresses is a valid technical term per RFC-2374, however, it was superseded by the term "aggregator" in RFC-3587. Approved by: jtl (mentor) Differential Revision: https://reviews.freebsd.org/D19156 Modified: stable/11/sbin/route/route.8 Directory Properties: stable/11/ (props changed) Modified: stable/11/sbin/route/route.8 ============================================================================== --- stable/11/sbin/route/route.8 Tue Feb 12 03:12:19 2019 (r344039) +++ stable/11/sbin/route/route.8 Tue Feb 12 03:13:10 2019 (r344040) @@ -28,7 +28,7 @@ .\" @(#)route.8 8.3 (Berkeley) 3/19/94 .\" $FreeBSD$ .\" -.Dd November 11, 2014 +.Dd January 9, 2019 .Dt ROUTE 8 .Os .Sh NAME @@ -290,14 +290,14 @@ is available instead of the qualifier because non-continuous masks are not allowed in IPv6. For example, .Fl prefixlen Li 32 -specifies network mask of +specifies that a network mask of .Li ffff:ffff:0000:0000:0000:0000:0000:0000 -to be used. -The default value of prefixlen is 64 to get along with -the aggregatable address. -But 0 is assumed if +will be used. +The default prefixlen is 64. +However, it is assumed to be 0 if .Cm default -is specified. +is specified for +.Ar destination . Note that the qualifier works only for .Dv AF_INET6 address family. From owner-svn-src-all@freebsd.org Tue Feb 12 03:32:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C828014D36E4; Tue, 12 Feb 2019 03:32:41 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 662B96D81F; Tue, 12 Feb 2019 03:32:41 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 594AFA26A; Tue, 12 Feb 2019 03:32:41 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C3WfIA022320; Tue, 12 Feb 2019 03:32:41 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C3WfPd022319; Tue, 12 Feb 2019 03:32:41 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902120332.x1C3WfPd022319@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 03:32:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344041 - head/sys/sys X-SVN-Group: head X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: head/sys/sys X-SVN-Commit-Revision: 344041 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 662B96D81F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 03:32:42 -0000 Author: ngie Date: Tue Feb 12 03:32:40 2019 New Revision: 344041 URL: https://svnweb.freebsd.org/changeset/base/344041 Log: Bump `__FreeBSD_version__` for r343891 This will allow upstream consumers, e.g., capsicum-test and third-party packages (via ports(7)), to test for a specific `__FreeBSD_version__` and expect `renameat(2)` to be functional. PR: 222258 Approved by: emaste (mentor) Reviewed by: emaste MFC with: r343891 Differential Revision: https://reviews.freebsd.org/D19154 Modified: head/sys/sys/param.h Modified: head/sys/sys/param.h ============================================================================== --- head/sys/sys/param.h Tue Feb 12 03:13:10 2019 (r344040) +++ head/sys/sys/param.h Tue Feb 12 03:32:40 2019 (r344041) @@ -60,7 +60,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1300010 /* Master, propagated to newvers */ +#define __FreeBSD_version 1300011 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From owner-svn-src-all@freebsd.org Tue Feb 12 04:33:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DF75714D4F46; Tue, 12 Feb 2019 04:33:06 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7CD3A6F33B; Tue, 12 Feb 2019 04:33:06 +0000 (UTC) (envelope-from pfg@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4812CAC84; Tue, 12 Feb 2019 04:33:06 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C4X6dx053543; Tue, 12 Feb 2019 04:33:06 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C4X5bv053541; Tue, 12 Feb 2019 04:33:05 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201902120433.x1C4X5bv053541@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Tue, 12 Feb 2019 04:33:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344042 - head/sys/vm X-SVN-Group: head X-SVN-Commit-Author: pfg X-SVN-Commit-Paths: head/sys/vm X-SVN-Commit-Revision: 344042 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7CD3A6F33B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 04:33:07 -0000 Author: pfg Date: Tue Feb 12 04:33:05 2019 New Revision: 344042 URL: https://svnweb.freebsd.org/changeset/base/344042 Log: UMA: unsign some variables related to allocation in hash_alloc(). As a followup to r343673, unsign some variables related to allocation since the hashsize cannot be negative. This gives a bit more space to handle bigger allocations and avoid some implicit casting. While here also unsign uh_hashmask, it makes little sense to keep that signed. MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D19148 Modified: head/sys/vm/uma_core.c head/sys/vm/uma_int.h Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Tue Feb 12 03:32:40 2019 (r344041) +++ head/sys/vm/uma_core.c Tue Feb 12 04:33:05 2019 (r344042) @@ -622,7 +622,7 @@ zone_timeout(uma_zone_t zone) static int hash_alloc(struct uma_hash *hash) { - int oldsize; + u_int oldsize; size_t alloc; oldsize = hash->uh_hashsize; @@ -666,8 +666,8 @@ static int hash_expand(struct uma_hash *oldhash, struct uma_hash *newhash) { uma_slab_t slab; - int hval; - int i; + u_int hval; + u_int idx; if (!newhash->uh_slab_hash) return (0); @@ -680,10 +680,10 @@ hash_expand(struct uma_hash *oldhash, struct uma_hash * full rehash. */ - for (i = 0; i < oldhash->uh_hashsize; i++) - while (!SLIST_EMPTY(&oldhash->uh_slab_hash[i])) { - slab = SLIST_FIRST(&oldhash->uh_slab_hash[i]); - SLIST_REMOVE_HEAD(&oldhash->uh_slab_hash[i], us_hlink); + for (idx = 0; idx < oldhash->uh_hashsize; idx++) + while (!SLIST_EMPTY(&oldhash->uh_slab_hash[idx])) { + slab = SLIST_FIRST(&oldhash->uh_slab_hash[idx]); + SLIST_REMOVE_HEAD(&oldhash->uh_slab_hash[idx], us_hlink); hval = UMA_HASH(newhash, slab->us_data); SLIST_INSERT_HEAD(&newhash->uh_slab_hash[hval], slab, us_hlink); Modified: head/sys/vm/uma_int.h ============================================================================== --- head/sys/vm/uma_int.h Tue Feb 12 03:32:40 2019 (r344041) +++ head/sys/vm/uma_int.h Tue Feb 12 04:33:05 2019 (r344042) @@ -179,8 +179,8 @@ SLIST_HEAD(slabhead, uma_slab); struct uma_hash { struct slabhead *uh_slab_hash; /* Hash table for slabs */ - int uh_hashsize; /* Current size of the hash table */ - int uh_hashmask; /* Mask used during hashing */ + u_int uh_hashsize; /* Current size of the hash table */ + u_int uh_hashmask; /* Mask used during hashing */ }; /* @@ -453,7 +453,7 @@ static __inline uma_slab_t hash_sfind(struct uma_hash *hash, uint8_t *data) { uma_slab_t slab; - int hval; + u_int hval; hval = UMA_HASH(hash, data); From owner-svn-src-all@freebsd.org Tue Feb 12 05:15:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1082614D5E16; Tue, 12 Feb 2019 05:15:37 +0000 (UTC) (envelope-from bwidawsk@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A65987066E; Tue, 12 Feb 2019 05:15:36 +0000 (UTC) (envelope-from bwidawsk@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 97D1DB35F; Tue, 12 Feb 2019 05:15:36 +0000 (UTC) (envelope-from bwidawsk@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C5Fapj074567; Tue, 12 Feb 2019 05:15:36 GMT (envelope-from bwidawsk@FreeBSD.org) Received: (from bwidawsk@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C5FaxF074566; Tue, 12 Feb 2019 05:15:36 GMT (envelope-from bwidawsk@FreeBSD.org) Message-Id: <201902120515.x1C5FaxF074566@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bwidawsk set sender to bwidawsk@FreeBSD.org using -f From: Ben Widawsky Date: Tue, 12 Feb 2019 05:15:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344043 - head/share/termcap X-SVN-Group: head X-SVN-Commit-Author: bwidawsk X-SVN-Commit-Paths: head/share/termcap X-SVN-Commit-Revision: 344043 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A65987066E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 05:15:37 -0000 Author: bwidawsk Date: Tue Feb 12 05:15:36 2019 New Revision: 344043 URL: https://svnweb.freebsd.org/changeset/base/344043 Log: termcap: Add an entry for kitty The project is here: https://github.com/kovidgoyal/kitty/ I created a port (which now needs updating): https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233010 If only we could use terminfo :( MFC after: 5 days Approved by: bapt Differential Revision: https://reviews.freebsd.org/D19060 Modified: head/share/termcap/termcap Modified: head/share/termcap/termcap ============================================================================== --- head/share/termcap/termcap Tue Feb 12 04:33:05 2019 (r344042) +++ head/share/termcap/termcap Tue Feb 12 05:15:36 2019 (r344043) @@ -4746,6 +4746,29 @@ st-meta-256color|simpleterm with meta key and 256 colo :is=\E[4l\E>\E[?1034h:mm=\E[?1034h:mo=\E[?1034l:\ :rs=\E[4l\E>\E[?1034h:tc=st-256color: + +# From version 0.13.3 +xterm-kitty|KovId's TTY:\ + :tc=xterm-256color:tc=kitty+common: + +kitty+common|KovId's TTY common properties:\ + :am:hs:km:mi:ms:xn:\ + :co#80:it#8:li#24:\ + :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:K1=:K3=:\ + :K4=:K5=:LE=\E[%dD:RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:\ + :ae=\E(B:al=\E[L:as=\E(0:bl=^G:bt=\E[Z:cd=\E[J:ce=\E[K:\ + :cl=\E[H\E[2J:cm=\E[%i%d;%dH:cr=\r:cs=\E[%i%d;%dr:\ + :ct=\E[3g:dc=\E[P:dl=\E[M:do=\n:ds=\E]2;\007:ec=\E[%dX:\ + :ei=\E[4l:fs=^G:ho=\E[H:im=\E[4h:k1=\EOP:k2=\EOQ:k3=\EOR:\ + :k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:\ + :k9=\E[20~:kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:\ + :kd=\EOB:ke=\E[?1l:kh=\EOH:kl=\EOD:kr=\EOC:ks=\E[?1h:\ + :ku=\EOA:le=^H:md=\E[1m:me=\E[0m:mh=\E[2m:mr=\E[7m:nd=\E[C:\ + :rc=\E8:sc=\E7:se=\E[27m:sf=\n:so=\E[7m:sr=\EM:st=\EH:ta=^I:\ + :te=\E[?1049l:ti=\E[?1049h:ts=\E]2;:ue=\E[24m:up=\E[A:\ + :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?12l\E[?25h:vi=\E[?25l:\ + :vs=\E[?12;25h: + # # END OF TERMCAP # ------------------------ From owner-svn-src-all@freebsd.org Tue Feb 12 07:03:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 246E114D9253; Tue, 12 Feb 2019 07:03:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BC179750E8; Tue, 12 Feb 2019 07:03:38 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A1016C7A5; Tue, 12 Feb 2019 07:03:38 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C73cMu032976; Tue, 12 Feb 2019 07:03:38 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C73cfi032975; Tue, 12 Feb 2019 07:03:38 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902120703.x1C73cfi032975@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Tue, 12 Feb 2019 07:03:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r344044 - in stable: 10/usr.bin/ipcs 11/usr.bin/ipcs 12/usr.bin/ipcs X-SVN-Group: stable-10 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/usr.bin/ipcs 11/usr.bin/ipcs 12/usr.bin/ipcs X-SVN-Commit-Revision: 344044 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BC179750E8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 07:03:39 -0000 Author: avos Date: Tue Feb 12 07:03:37 2019 New Revision: 344044 URL: https://svnweb.freebsd.org/changeset/base/344044 Log: MFC r343870: ipcs(1): drop obsolete error checking This code is unreachable since r77551. PR: 201728 Modified: stable/10/usr.bin/ipcs/ipcs.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/usr.bin/ipcs/ipcs.c stable/12/usr.bin/ipcs/ipcs.c Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/usr.bin/ipcs/ipcs.c ============================================================================== --- stable/10/usr.bin/ipcs/ipcs.c Tue Feb 12 05:15:36 2019 (r344043) +++ stable/10/usr.bin/ipcs/ipcs.c Tue Feb 12 07:03:37 2019 (r344044) @@ -195,7 +195,7 @@ main(int argc, char *argv[]) } kget(X_MSGINFO, &msginfo, sizeof(msginfo)); - if ((display & (MSGINFO | MSGTOTAL))) { + if (display & (MSGINFO | MSGTOTAL)) { if (display & MSGTOTAL) print_kmsqtotal(msginfo); @@ -223,15 +223,10 @@ main(int argc, char *argv[]) printf("\n"); } - } else - if (display & (MSGINFO | MSGTOTAL)) { - fprintf(stderr, - "SVID messages facility " - "not configured in the system\n"); - } + } kget(X_SHMINFO, &shminfo, sizeof(shminfo)); - if ((display & (SHMINFO | SHMTOTAL))) { + if (display & (SHMINFO | SHMTOTAL)) { if (display & SHMTOTAL) print_kshmtotal(shminfo); @@ -258,15 +253,10 @@ main(int argc, char *argv[]) } printf("\n"); } - } else - if (display & (SHMINFO | SHMTOTAL)) { - fprintf(stderr, - "SVID shared memory facility " - "not configured in the system\n"); - } + } kget(X_SEMINFO, &seminfo, sizeof(seminfo)); - if ((display & (SEMINFO | SEMTOTAL))) { + if (display & (SEMINFO | SEMTOTAL)) { struct semid_kernel *kxsema; size_t kxsema_len; @@ -295,12 +285,7 @@ main(int argc, char *argv[]) printf("\n"); } - } else - if (display & (SEMINFO | SEMTOTAL)) { - fprintf(stderr, - "SVID semaphores facility " - "not configured in the system\n"); - } + } if (!use_sysctl) kvm_close(kd); From owner-svn-src-all@freebsd.org Tue Feb 12 07:03:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8805214D925C; Tue, 12 Feb 2019 07:03:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 29B8D750E9; Tue, 12 Feb 2019 07:03:39 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 17BBDC7A6; Tue, 12 Feb 2019 07:03:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C73cQ3032982; Tue, 12 Feb 2019 07:03:38 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C73cfn032981; Tue, 12 Feb 2019 07:03:38 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902120703.x1C73cfn032981@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Tue, 12 Feb 2019 07:03:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344044 - in stable: 10/usr.bin/ipcs 11/usr.bin/ipcs 12/usr.bin/ipcs X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/usr.bin/ipcs 11/usr.bin/ipcs 12/usr.bin/ipcs X-SVN-Commit-Revision: 344044 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 29B8D750E9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 07:03:39 -0000 Author: avos Date: Tue Feb 12 07:03:37 2019 New Revision: 344044 URL: https://svnweb.freebsd.org/changeset/base/344044 Log: MFC r343870: ipcs(1): drop obsolete error checking This code is unreachable since r77551. PR: 201728 Modified: stable/12/usr.bin/ipcs/ipcs.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/usr.bin/ipcs/ipcs.c stable/11/usr.bin/ipcs/ipcs.c Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/usr.bin/ipcs/ipcs.c ============================================================================== --- stable/12/usr.bin/ipcs/ipcs.c Tue Feb 12 05:15:36 2019 (r344043) +++ stable/12/usr.bin/ipcs/ipcs.c Tue Feb 12 07:03:37 2019 (r344044) @@ -199,7 +199,7 @@ main(int argc, char *argv[]) } kget(X_MSGINFO, &msginfo, sizeof(msginfo)); - if ((display & (MSGINFO | MSGTOTAL))) { + if (display & (MSGINFO | MSGTOTAL)) { if (display & MSGTOTAL) print_kmsqtotal(msginfo); @@ -227,15 +227,10 @@ main(int argc, char *argv[]) printf("\n"); } - } else - if (display & (MSGINFO | MSGTOTAL)) { - fprintf(stderr, - "SVID messages facility " - "not configured in the system\n"); - } + } kget(X_SHMINFO, &shminfo, sizeof(shminfo)); - if ((display & (SHMINFO | SHMTOTAL))) { + if (display & (SHMINFO | SHMTOTAL)) { if (display & SHMTOTAL) print_kshmtotal(shminfo); @@ -262,15 +257,10 @@ main(int argc, char *argv[]) } printf("\n"); } - } else - if (display & (SHMINFO | SHMTOTAL)) { - fprintf(stderr, - "SVID shared memory facility " - "not configured in the system\n"); - } + } kget(X_SEMINFO, &seminfo, sizeof(seminfo)); - if ((display & (SEMINFO | SEMTOTAL))) { + if (display & (SEMINFO | SEMTOTAL)) { struct semid_kernel *kxsema; size_t kxsema_len; @@ -299,12 +289,7 @@ main(int argc, char *argv[]) printf("\n"); } - } else - if (display & (SEMINFO | SEMTOTAL)) { - fprintf(stderr, - "SVID semaphores facility " - "not configured in the system\n"); - } + } if (!use_sysctl) kvm_close(kd); From owner-svn-src-all@freebsd.org Tue Feb 12 07:03:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6B2014D9252; Tue, 12 Feb 2019 07:03:38 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 629B5750E7; Tue, 12 Feb 2019 07:03:38 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4E6A6C7A4; Tue, 12 Feb 2019 07:03:38 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C73cPu032970; Tue, 12 Feb 2019 07:03:38 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C73cVs032969; Tue, 12 Feb 2019 07:03:38 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902120703.x1C73cVs032969@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Tue, 12 Feb 2019 07:03:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344044 - in stable: 10/usr.bin/ipcs 11/usr.bin/ipcs 12/usr.bin/ipcs X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/usr.bin/ipcs 11/usr.bin/ipcs 12/usr.bin/ipcs X-SVN-Commit-Revision: 344044 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 629B5750E7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 07:03:39 -0000 Author: avos Date: Tue Feb 12 07:03:37 2019 New Revision: 344044 URL: https://svnweb.freebsd.org/changeset/base/344044 Log: MFC r343870: ipcs(1): drop obsolete error checking This code is unreachable since r77551. PR: 201728 Modified: stable/11/usr.bin/ipcs/ipcs.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/usr.bin/ipcs/ipcs.c stable/12/usr.bin/ipcs/ipcs.c Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/usr.bin/ipcs/ipcs.c ============================================================================== --- stable/11/usr.bin/ipcs/ipcs.c Tue Feb 12 05:15:36 2019 (r344043) +++ stable/11/usr.bin/ipcs/ipcs.c Tue Feb 12 07:03:37 2019 (r344044) @@ -198,7 +198,7 @@ main(int argc, char *argv[]) } kget(X_MSGINFO, &msginfo, sizeof(msginfo)); - if ((display & (MSGINFO | MSGTOTAL))) { + if (display & (MSGINFO | MSGTOTAL)) { if (display & MSGTOTAL) print_kmsqtotal(msginfo); @@ -226,15 +226,10 @@ main(int argc, char *argv[]) printf("\n"); } - } else - if (display & (MSGINFO | MSGTOTAL)) { - fprintf(stderr, - "SVID messages facility " - "not configured in the system\n"); - } + } kget(X_SHMINFO, &shminfo, sizeof(shminfo)); - if ((display & (SHMINFO | SHMTOTAL))) { + if (display & (SHMINFO | SHMTOTAL)) { if (display & SHMTOTAL) print_kshmtotal(shminfo); @@ -261,15 +256,10 @@ main(int argc, char *argv[]) } printf("\n"); } - } else - if (display & (SHMINFO | SHMTOTAL)) { - fprintf(stderr, - "SVID shared memory facility " - "not configured in the system\n"); - } + } kget(X_SEMINFO, &seminfo, sizeof(seminfo)); - if ((display & (SEMINFO | SEMTOTAL))) { + if (display & (SEMINFO | SEMTOTAL)) { struct semid_kernel *kxsema; size_t kxsema_len; @@ -298,12 +288,7 @@ main(int argc, char *argv[]) printf("\n"); } - } else - if (display & (SEMINFO | SEMTOTAL)) { - fprintf(stderr, - "SVID semaphores facility " - "not configured in the system\n"); - } + } if (!use_sysctl) kvm_close(kd); From owner-svn-src-all@freebsd.org Tue Feb 12 08:16:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1A94114DBBF5; Tue, 12 Feb 2019 08:16:07 +0000 (UTC) (envelope-from lwhsu@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B3A80776C6; Tue, 12 Feb 2019 08:16:06 +0000 (UTC) (envelope-from lwhsu@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8211ED392; Tue, 12 Feb 2019 08:16:06 +0000 (UTC) (envelope-from lwhsu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C8G6Fb069158; Tue, 12 Feb 2019 08:16:06 GMT (envelope-from lwhsu@FreeBSD.org) Received: (from lwhsu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C8G6T6069157; Tue, 12 Feb 2019 08:16:06 GMT (envelope-from lwhsu@FreeBSD.org) Message-Id: <201902120816.x1C8G6T6069157@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: lwhsu set sender to lwhsu@FreeBSD.org using -f From: Li-Wen Hsu Date: Tue, 12 Feb 2019 08:16:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344045 - head/sys/contrib/dev/iwm X-SVN-Group: head X-SVN-Commit-Author: lwhsu X-SVN-Commit-Paths: head/sys/contrib/dev/iwm X-SVN-Commit-Revision: 344045 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B3A80776C6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 08:16:07 -0000 Author: lwhsu Date: Tue Feb 12 08:16:05 2019 New Revision: 344045 URL: https://svnweb.freebsd.org/changeset/base/344045 Log: Remove empty files Approved by: markj (mentor) Sponsored by: The FreeBSD Foundation Deleted: head/sys/contrib/dev/iwm/iwm-3160-9.fw.uu head/sys/contrib/dev/iwm/iwm-7260-9.fw.uu head/sys/contrib/dev/iwm/iwm-7265-9.fw.uu From owner-svn-src-all@freebsd.org Tue Feb 12 08:45:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AABA114DCA39; Tue, 12 Feb 2019 08:45:04 +0000 (UTC) (envelope-from freebsd@omnilan.de) Received: from mx0.gentlemail.de (mx0.gentlemail.de [IPv6:2a00:e10:2800::a130]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3338D809C4; Tue, 12 Feb 2019 08:45:03 +0000 (UTC) (envelope-from freebsd@omnilan.de) Received: from mh0.gentlemail.de (mh0.gentlemail.de [78.138.80.135]) by mx0.gentlemail.de (8.14.5/8.14.5) with ESMTP id x1C8j0n6056169; Tue, 12 Feb 2019 09:45:00 +0100 (CET) (envelope-from freebsd@omnilan.de) Received: from titan.inop.mo1.omnilan.net (s1.omnilan.de [217.91.127.234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mh0.gentlemail.de (Postfix) with ESMTPSA id E6B02FE2; Tue, 12 Feb 2019 09:44:59 +0100 (CET) Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net To: rgrimes@freebsd.org, Patrick Kelsey Cc: src-committers@freebsd.org, John Baldwin , svn-src-stable@freebsd.org, svn-src-all@freebsd.org, svn-src-stable-12@freebsd.org References: <201902120125.x1C1PX7G073631@pdx.rh.CN85.dnsmgr.net> From: Harry Schmalzbauer Organization: OmniLAN Message-ID: <47b11231-32d5-df41-2043-25f26484c664@omnilan.de> Date: Tue, 12 Feb 2019 09:44:59 +0100 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <201902120125.x1C1PX7G073631@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Greylist: ACL 130 matched, not delayed by milter-greylist-4.2.7 (mx0.gentlemail.de [78.138.80.130]); Tue, 12 Feb 2019 09:45:00 +0100 (CET) X-Milter: Spamilter (Reciever: mx0.gentlemail.de; Sender-ip: 78.138.80.135; Sender-helo: mh0.gentlemail.de; ) X-Rspamd-Queue-Id: 3338D809C4 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 08:45:04 -0000 Am 12.02.2019 um 02:25 schrieb Rodney W. Grimes: >> On Mon, Feb 11, 2019 at 8:08 PM John Baldwin wrote: >> >>> On 2/11/19 4:26 PM, Rodney W. Grimes wrote: >>>>> Author: pkelsey >>>>> Date: Mon Feb 11 23:24:39 2019 >>>>> New Revision: 344027 >>>>> URL: https://svnweb.freebsd.org/changeset/base/344027 >>>>> >>>>> Log: >>>>> MFC r343291: >>>>> Convert vmx(4) to being an iflib driver. >>>> I strongly object to this MFC, given the current number >>>> of 12.0 RELEASE related iflib problems we have it is >>>> foolish of us to iflib any more drivers in 12.0 >>> This isn't the release branch though and presumably we have some time >>> before >>> 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 >>> we could always revert this commit then? >>> >>> I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in >>> stable/12 >>> yet or are we still waiting for them to land in HEAD and/or be merged? >>> >> iflib.c is currently the same between head and stable/12. I've found and >> fixed a number of iflib bugs by developing the iflib version of the vmx(4) >> driver, and it's also being fielded in a product. I'm also aware that not >> all current driver problems are necessarily iflib problems. I think we'd >> be better off letting this version of vmx(4) ride it out in stable/12 until >> such time as we discover an actual horror that we then feel we need to >> react to in some way other than just going ahead and fixing it. > It can ride it out in head just fine, give it 3 months... plenty of time > before any 12.1. stable/12 IS NOT A TEST GROUND. I don't think the intention of this MFC is to test the iflib(4) version of vmx(4), but to improve the driver, which has been tested locally by the devop and also in HEAD for some time. Many regressions/problem(combinations) aren't found during HEAD lifetime, but after MFC.  And in case of iflib(4), it wasn't the MFC to -STABLE, but after -RELEASE. If it would have had a wider production (-STABLE) usage, possibly... As long as the devop isn't aware of known, yet to fix _additional_ bugs or any regression, I'm happy to reduce my local MFC patchset and have it in STABLE as soon as the devops MFC timeframe lapsed without a single regression/problem notification.  I've never updated any -stable production machine relying on the hope someone else tested every possible change.  That's what I'd like to beeing allowed to expect from -RELEASE; which hasn't ever been true for major version updates. So this MFC won't harm -stable in any form, but will improve 12.1-release quality. Just a/my opinion from the users view! Thanks, -harry From owner-svn-src-all@freebsd.org Tue Feb 12 09:07:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7BBB614DDF9D; Tue, 12 Feb 2019 09:07:49 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2CDFE8195D; Tue, 12 Feb 2019 09:07:49 +0000 (UTC) (envelope-from vmaffione@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0707EDC66; Tue, 12 Feb 2019 09:07:49 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C97nH7095194; Tue, 12 Feb 2019 09:07:49 GMT (envelope-from vmaffione@FreeBSD.org) Received: (from vmaffione@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C97lqa095183; Tue, 12 Feb 2019 09:07:47 GMT (envelope-from vmaffione@FreeBSD.org) Message-Id: <201902120907.x1C97lqa095183@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: vmaffione set sender to vmaffione@FreeBSD.org using -f From: Vincenzo Maffione Date: Tue, 12 Feb 2019 09:07:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344046 - stable/12/sys/dev/netmap X-SVN-Group: stable-12 X-SVN-Commit-Author: vmaffione X-SVN-Commit-Paths: stable/12/sys/dev/netmap X-SVN-Commit-Revision: 344046 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2CDFE8195D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 09:07:49 -0000 Author: vmaffione Date: Tue Feb 12 09:07:46 2019 New Revision: 344046 URL: https://svnweb.freebsd.org/changeset/base/344046 Log: MFC r343772, r343867 netmap: refactor logging macros and pipes Changelist: - Replace ND, D and RD macros with nm_prdis, nm_prinf, nm_prerr and nm_prlim, to avoid possible naming conflicts. - Add netmap_krings_mode_commit() helper function and use that to reduce code duplication. - Refactor pipes control code to export some functions that can be reused by the veth driver (on Linux) and epair(4). - Add check to reject API requests with version less than 11. - Small code refactoring for the null adapter. Modified: stable/12/sys/dev/netmap/if_ptnet.c stable/12/sys/dev/netmap/if_vtnet_netmap.h stable/12/sys/dev/netmap/netmap.c stable/12/sys/dev/netmap/netmap_bdg.c stable/12/sys/dev/netmap/netmap_freebsd.c stable/12/sys/dev/netmap/netmap_generic.c stable/12/sys/dev/netmap/netmap_kern.h stable/12/sys/dev/netmap/netmap_legacy.c stable/12/sys/dev/netmap/netmap_mem2.c stable/12/sys/dev/netmap/netmap_monitor.c stable/12/sys/dev/netmap/netmap_null.c stable/12/sys/dev/netmap/netmap_offloadings.c stable/12/sys/dev/netmap/netmap_pipe.c stable/12/sys/dev/netmap/netmap_vale.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/netmap/if_ptnet.c ============================================================================== --- stable/12/sys/dev/netmap/if_ptnet.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/if_ptnet.c Tue Feb 12 09:07:46 2019 (r344046) @@ -1151,10 +1151,10 @@ ptnet_sync_from_csb(struct ptnet_softc *sc, struct net kring->nr_hwtail = kring->rtail = kring->ring->tail = ktoa->hwtail; - ND("%d,%d: csb {hc %u h %u c %u ht %u}", t, i, + nm_prdis("%d,%d: csb {hc %u h %u c %u ht %u}", t, i, ktoa->hwcur, atok->head, atok->cur, ktoa->hwtail); - ND("%d,%d: kring {hc %u rh %u rc %u h %u c %u ht %u rt %u t %u}", + nm_prdis("%d,%d: kring {hc %u rh %u rc %u h %u c %u ht %u rt %u t %u}", t, i, kring->nr_hwcur, kring->rhead, kring->rcur, kring->ring->head, kring->ring->cur, kring->nr_hwtail, kring->rtail, kring->ring->tail); @@ -1179,7 +1179,6 @@ ptnet_nm_register(struct netmap_adapter *na, int onoff struct ptnet_softc *sc = if_getsoftc(ifp); int native = (na == &sc->ptna->hwup.up); struct ptnet_queue *pq; - enum txrx t; int ret = 0; int i; @@ -1194,7 +1193,7 @@ ptnet_nm_register(struct netmap_adapter *na, int onoff * in the RX rings, since we will not receive further interrupts * until these will be processed. */ if (native && !onoff && na->active_fds == 0) { - D("Exit netmap mode, re-enable interrupts"); + nm_prinf("Exit netmap mode, re-enable interrupts"); for (i = 0; i < sc->num_rings; i++) { pq = sc->queues + i; pq->atok->appl_need_kick = 1; @@ -1230,30 +1229,14 @@ ptnet_nm_register(struct netmap_adapter *na, int onoff /* If not native, don't call nm_set_native_flags, since we don't want * to replace if_transmit method, nor set NAF_NETMAP_ON */ if (native) { - for_rx_tx(t) { - for (i = 0; i <= nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_on(kring)) { - kring->nr_mode = NKR_NETMAP_ON; - } - } - } + netmap_krings_mode_commit(na, onoff); nm_set_native_flags(na); } } else { if (native) { nm_clear_native_flags(na); - for_rx_tx(t) { - for (i = 0; i <= nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_off(kring)) { - kring->nr_mode = NKR_NETMAP_OFF; - } - } - } + netmap_krings_mode_commit(na, onoff); } if (sc->ptna->backend_users == 0) { @@ -1728,7 +1711,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns if (!PTNET_Q_TRYLOCK(pq)) { /* We failed to acquire the lock, schedule the taskqueue. */ - RD(1, "Deferring TX work"); + nm_prlim(1, "Deferring TX work"); if (may_resched) { taskqueue_enqueue(pq->taskq, &pq->task); } @@ -1738,7 +1721,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns if (unlikely(!(ifp->if_drv_flags & IFF_DRV_RUNNING))) { PTNET_Q_UNLOCK(pq); - RD(1, "Interface is down"); + nm_prlim(1, "Interface is down"); return ENETDOWN; } @@ -1776,7 +1759,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns break; } - RD(1, "Found more slots by doublecheck"); + nm_prlim(1, "Found more slots by doublecheck"); /* More slots were freed before reactivating * the interrupts. */ atok->appl_need_kick = 0; @@ -1815,7 +1798,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns continue; } } - ND(1, "%s: [csum_flags %lX] vnet hdr: flags %x " + nm_prdis(1, "%s: [csum_flags %lX] vnet hdr: flags %x " "csum_start %u csum_ofs %u hdr_len = %u " "gso_size %u gso_type %x", __func__, mhead->m_pkthdr.csum_flags, vh->flags, @@ -1890,7 +1873,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns } if (count >= budget && may_resched) { - DBG(RD(1, "out of budget: resched, %d mbufs pending\n", + DBG(nm_prlim(1, "out of budget: resched, %d mbufs pending\n", drbr_inuse(ifp, pq->bufring))); taskqueue_enqueue(pq->taskq, &pq->task); } @@ -1932,7 +1915,7 @@ ptnet_transmit(if_t ifp, struct mbuf *m) err = drbr_enqueue(ifp, pq->bufring, m); if (err) { /* ENOBUFS when the bufring is full */ - RD(1, "%s: drbr_enqueue() failed %d\n", + nm_prlim(1, "%s: drbr_enqueue() failed %d\n", __func__, err); pq->stats.errors ++; return err; @@ -2077,13 +2060,13 @@ host_sync: /* There is no good reason why host should * put the header in multiple netmap slots. * If this is the case, discard. */ - RD(1, "Fragmented vnet-hdr: dropping"); + nm_prlim(1, "Fragmented vnet-hdr: dropping"); head = ptnet_rx_discard(kring, head); pq->stats.iqdrops ++; deliver = 0; goto skip; } - ND(1, "%s: vnet hdr: flags %x csum_start %u " + nm_prdis(1, "%s: vnet hdr: flags %x csum_start %u " "csum_ofs %u hdr_len = %u gso_size %u " "gso_type %x", __func__, vh->flags, vh->csum_start, vh->csum_offset, vh->hdr_len, @@ -2147,7 +2130,7 @@ host_sync: /* The very last slot prepared by the host has * the NS_MOREFRAG set. Drop it and continue * the outer cycle (to do the double-check). */ - RD(1, "Incomplete packet: dropping"); + nm_prlim(1, "Incomplete packet: dropping"); m_freem(mhead); pq->stats.iqdrops ++; goto host_sync; @@ -2185,7 +2168,7 @@ host_sync: | VIRTIO_NET_HDR_F_DATA_VALID))) { if (unlikely(ptnet_rx_csum(mhead, vh))) { m_freem(mhead); - RD(1, "Csum offload error: dropping"); + nm_prlim(1, "Csum offload error: dropping"); pq->stats.iqdrops ++; deliver = 0; } @@ -2231,7 +2214,7 @@ escape: if (count >= budget && may_resched) { /* If we ran out of budget or the double-check found new * slots to process, schedule the taskqueue. */ - DBG(RD(1, "out of budget: resched h %u t %u\n", + DBG(nm_prlim(1, "out of budget: resched h %u t %u\n", head, ring->tail)); taskqueue_enqueue(pq->taskq, &pq->task); } @@ -2246,7 +2229,7 @@ ptnet_rx_task(void *context, int pending) { struct ptnet_queue *pq = context; - DBG(RD(1, "%s: pq #%u\n", __func__, pq->kring_id)); + DBG(nm_prlim(1, "%s: pq #%u\n", __func__, pq->kring_id)); ptnet_rx_eof(pq, PTNET_RX_BUDGET, true); } @@ -2255,7 +2238,7 @@ ptnet_tx_task(void *context, int pending) { struct ptnet_queue *pq = context; - DBG(RD(1, "%s: pq #%u\n", __func__, pq->kring_id)); + DBG(nm_prlim(1, "%s: pq #%u\n", __func__, pq->kring_id)); ptnet_drain_transmit_queue(pq, PTNET_TX_BUDGET, true); } @@ -2273,7 +2256,7 @@ ptnet_poll(if_t ifp, enum poll_cmd cmd, int budget) KASSERT(sc->num_rings > 0, ("Found no queues in while polling ptnet")); queue_budget = MAX(budget / sc->num_rings, 1); - RD(1, "Per-queue budget is %d", queue_budget); + nm_prlim(1, "Per-queue budget is %d", queue_budget); while (budget) { unsigned int rcnt = 0; Modified: stable/12/sys/dev/netmap/if_vtnet_netmap.h ============================================================================== --- stable/12/sys/dev/netmap/if_vtnet_netmap.h Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/if_vtnet_netmap.h Tue Feb 12 09:07:46 2019 (r344046) @@ -90,7 +90,6 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) struct ifnet *ifp = na->ifp; struct vtnet_softc *sc = ifp->if_softc; int success; - enum txrx t; int i; /* Drain the taskqueues to make sure that there are no worker threads @@ -132,44 +131,11 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) success = (ifp->if_drv_flags & IFF_DRV_RUNNING) ? 0 : ENXIO; if (state) { - for_rx_tx(t) { - /* Hardware rings. */ - for (i = 0; i < nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_on(kring)) - kring->nr_mode = NKR_NETMAP_ON; - } - - /* Host rings. */ - for (i = 0; i < nma_get_host_nrings(na, t); i++) { - struct netmap_kring *kring = - NMR(na, t)[nma_get_nrings(na, t) + i]; - - if (nm_kring_pending_on(kring)) - kring->nr_mode = NKR_NETMAP_ON; - } - } + netmap_krings_mode_commit(na, state); + nm_set_native_flags(na); } else { nm_clear_native_flags(na); - for_rx_tx(t) { - /* Hardware rings. */ - for (i = 0; i < nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_off(kring)) - kring->nr_mode = NKR_NETMAP_OFF; - } - - /* Host rings. */ - for (i = 0; i < nma_get_host_nrings(na, t); i++) { - struct netmap_kring *kring = - NMR(na, t)[nma_get_nrings(na, t) + i]; - - if (nm_kring_pending_off(kring)) - kring->nr_mode = NKR_NETMAP_OFF; - } - } + netmap_krings_mode_commit(na, state); } VTNET_CORE_UNLOCK(sc); @@ -396,7 +362,7 @@ vtnet_netmap_rxsync(struct netmap_kring *kring, int fl /* Skip the virtio-net header. */ len -= sc->vtnet_hdr_size; if (unlikely(len < 0)) { - RD(1, "Truncated virtio-net-header, " + nm_prlim(1, "Truncated virtio-net-header, " "missing %d bytes", -len); len = 0; } @@ -408,7 +374,7 @@ vtnet_netmap_rxsync(struct netmap_kring *kring, int fl kring->nr_hwtail = nm_i; kring->nr_kflags &= ~NKR_PENDINTR; } - ND("[B] h %d c %d hwcur %d hwtail %d", ring->head, ring->cur, + nm_prdis("[B] h %d c %d hwcur %d hwtail %d", ring->head, ring->cur, kring->nr_hwcur, kring->nr_hwtail); /* @@ -423,7 +389,7 @@ vtnet_netmap_rxsync(struct netmap_kring *kring, int fl virtqueue_notify(vq); } - ND("[C] h %d c %d t %d hwcur %d hwtail %d", ring->head, ring->cur, + nm_prdis("[C] h %d c %d t %d hwcur %d hwtail %d", ring->head, ring->cur, ring->tail, kring->nr_hwcur, kring->nr_hwtail); return 0; Modified: stable/12/sys/dev/netmap/netmap.c ============================================================================== --- stable/12/sys/dev/netmap/netmap.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap.c Tue Feb 12 09:07:46 2019 (r344046) @@ -893,7 +893,7 @@ netmap_krings_create(struct netmap_adapter *na, u_int kring->rtail = kring->nr_hwtail = (t == NR_TX ? ndesc - 1 : 0); snprintf(kring->name, sizeof(kring->name) - 1, "%s %s%d", na->name, nm_txrx2str(t), i); - ND("ktx %s h %d c %d t %d", + nm_prdis("ktx %s h %d c %d t %d", kring->name, kring->rhead, kring->rcur, kring->rtail); mtx_init(&kring->q_lock, (t == NR_TX ? "nm_txq_lock" : "nm_rxq_lock"), NULL, MTX_DEF); nm_os_selinfo_init(&kring->si); @@ -946,7 +946,7 @@ netmap_hw_krings_delete(struct netmap_adapter *na) for (i = nma_get_nrings(na, NR_RX); i < lim; i++) { struct mbq *q = &NMR(na, NR_RX)[i]->rx_queue; - ND("destroy sw mbq with len %d", mbq_len(q)); + nm_prdis("destroy sw mbq with len %d", mbq_len(q)); mbq_purge(q); mbq_safe_fini(q); } @@ -1167,7 +1167,7 @@ netmap_grab_packets(struct netmap_kring *kring, struct if ((slot->flags & NS_FORWARD) == 0 && !force) continue; if (slot->len < 14 || slot->len > NETMAP_BUF_SIZE(na)) { - RD(5, "bad pkt at %d len %d", n, slot->len); + nm_prlim(5, "bad pkt at %d len %d", n, slot->len); continue; } slot->flags &= ~NS_FORWARD; // XXX needed ? @@ -1281,7 +1281,7 @@ netmap_txsync_to_host(struct netmap_kring *kring, int */ mbq_init(&q); netmap_grab_packets(kring, &q, 1 /* force */); - ND("have %d pkts in queue", mbq_len(&q)); + nm_prdis("have %d pkts in queue", mbq_len(&q)); kring->nr_hwcur = head; kring->nr_hwtail = head + lim; if (kring->nr_hwtail > lim) @@ -1329,7 +1329,7 @@ netmap_rxsync_from_host(struct netmap_kring *kring, in struct netmap_slot *slot = &ring->slot[nm_i]; m_copydata(m, 0, len, NMB(na, slot)); - ND("nm %d len %d", nm_i, len); + nm_prdis("nm %d len %d", nm_i, len); if (netmap_debug & NM_DEBUG_HOST) nm_prinf("%s", nm_dump_buf(NMB(na, slot),len, 128, NULL)); @@ -1594,7 +1594,7 @@ netmap_unget_na(struct netmap_adapter *na, struct ifne #define NM_FAIL_ON(t) do { \ if (unlikely(t)) { \ - RD(5, "%s: fail '" #t "' " \ + nm_prlim(5, "%s: fail '" #t "' " \ "h %d c %d t %d " \ "rh %d rc %d rt %d " \ "hc %d ht %d", \ @@ -1626,7 +1626,7 @@ nm_txsync_prologue(struct netmap_kring *kring, struct u_int cur = ring->cur; /* read only once */ u_int n = kring->nkr_num_slots; - ND(5, "%s kcur %d ktail %d head %d cur %d tail %d", + nm_prdis(5, "%s kcur %d ktail %d head %d cur %d tail %d", kring->name, kring->nr_hwcur, kring->nr_hwtail, ring->head, ring->cur, ring->tail); @@ -1662,7 +1662,7 @@ nm_txsync_prologue(struct netmap_kring *kring, struct } } if (ring->tail != kring->rtail) { - RD(5, "%s tail overwritten was %d need %d", kring->name, + nm_prlim(5, "%s tail overwritten was %d need %d", kring->name, ring->tail, kring->rtail); ring->tail = kring->rtail; } @@ -1689,7 +1689,7 @@ nm_rxsync_prologue(struct netmap_kring *kring, struct uint32_t const n = kring->nkr_num_slots; uint32_t head, cur; - ND(5,"%s kc %d kt %d h %d c %d t %d", + nm_prdis(5,"%s kc %d kt %d h %d c %d t %d", kring->name, kring->nr_hwcur, kring->nr_hwtail, ring->head, ring->cur, ring->tail); @@ -1724,7 +1724,7 @@ nm_rxsync_prologue(struct netmap_kring *kring, struct } } if (ring->tail != kring->rtail) { - RD(5, "%s tail overwritten was %d need %d", + nm_prlim(5, "%s tail overwritten was %d need %d", kring->name, ring->tail, kring->rtail); ring->tail = kring->rtail; @@ -1753,7 +1753,7 @@ netmap_ring_reinit(struct netmap_kring *kring) int errors = 0; // XXX KASSERT nm_kr_tryget - RD(10, "called for %s", kring->name); + nm_prlim(10, "called for %s", kring->name); // XXX probably wrong to trust userspace kring->rhead = ring->head; kring->rcur = ring->cur; @@ -1769,17 +1769,17 @@ netmap_ring_reinit(struct netmap_kring *kring) u_int idx = ring->slot[i].buf_idx; u_int len = ring->slot[i].len; if (idx < 2 || idx >= kring->na->na_lut.objtotal) { - RD(5, "bad index at slot %d idx %d len %d ", i, idx, len); + nm_prlim(5, "bad index at slot %d idx %d len %d ", i, idx, len); ring->slot[i].buf_idx = 0; ring->slot[i].len = 0; } else if (len > NETMAP_BUF_SIZE(kring->na)) { ring->slot[i].len = 0; - RD(5, "bad len at slot %d idx %d len %d", i, idx, len); + nm_prlim(5, "bad len at slot %d idx %d len %d", i, idx, len); } } if (errors) { - RD(10, "total %d errors", errors); - RD(10, "%s reinit, cur %d -> %d tail %d -> %d", + nm_prlim(10, "total %d errors", errors); + nm_prlim(10, "%s reinit, cur %d -> %d tail %d -> %d", kring->name, ring->cur, kring->nr_hwcur, ring->tail, kring->nr_hwtail); @@ -1816,7 +1816,7 @@ netmap_interp_ringid(struct netmap_priv_d *priv, uint3 case NR_REG_NULL: priv->np_qfirst[t] = 0; priv->np_qlast[t] = nma_get_nrings(na, t); - ND("ALL/PIPE: %s %d %d", nm_txrx2str(t), + nm_prdis("ALL/PIPE: %s %d %d", nm_txrx2str(t), priv->np_qfirst[t], priv->np_qlast[t]); break; case NR_REG_SW: @@ -1828,7 +1828,7 @@ netmap_interp_ringid(struct netmap_priv_d *priv, uint3 priv->np_qfirst[t] = (nr_mode == NR_REG_SW ? nma_get_nrings(na, t) : 0); priv->np_qlast[t] = netmap_all_rings(na, t); - ND("%s: %s %d %d", nr_mode == NR_REG_SW ? "SW" : "NIC+SW", + nm_prdis("%s: %s %d %d", nr_mode == NR_REG_SW ? "SW" : "NIC+SW", nm_txrx2str(t), priv->np_qfirst[t], priv->np_qlast[t]); break; @@ -1844,7 +1844,7 @@ netmap_interp_ringid(struct netmap_priv_d *priv, uint3 j = 0; priv->np_qfirst[t] = j; priv->np_qlast[t] = j + 1; - ND("ONE_NIC: %s %d %d", nm_txrx2str(t), + nm_prdis("ONE_NIC: %s %d %d", nm_txrx2str(t), priv->np_qfirst[t], priv->np_qlast[t]); break; default: @@ -1953,7 +1953,7 @@ netmap_krings_get(struct netmap_priv_d *priv) if ((kring->nr_kflags & NKR_EXCLUSIVE) || (kring->users && excl)) { - ND("ring %s busy", kring->name); + nm_prdis("ring %s busy", kring->name); return EBUSY; } } @@ -1988,7 +1988,7 @@ netmap_krings_put(struct netmap_priv_d *priv) int excl = (priv->np_flags & NR_EXCLUSIVE); enum txrx t; - ND("%s: releasing tx [%d, %d) rx [%d, %d)", + nm_prdis("%s: releasing tx [%d, %d) rx [%d, %d)", na->name, priv->np_qfirst[NR_TX], priv->np_qlast[NR_TX], @@ -2253,7 +2253,7 @@ netmap_do_regif(struct netmap_priv_d *priv, struct net error = netmap_mem_get_lut(na->nm_mem, &na->na_lut); if (error) goto err_drop_mem; - ND("lut %p bufs %u size %u", na->na_lut.lut, na->na_lut.objtotal, + nm_prdis("lut %p bufs %u size %u", na->na_lut.lut, na->na_lut.objtotal, na->na_lut.objsize); /* ring configuration may have changed, fetch from the card */ @@ -2275,7 +2275,7 @@ netmap_do_regif(struct netmap_priv_d *priv, struct net /* This netmap adapter is attached to an ifnet. */ unsigned mtu = nm_os_ifnet_mtu(na->ifp); - ND("%s: mtu %d rx_buf_maxsize %d netmap_buf_size %d", + nm_prdis("%s: mtu %d rx_buf_maxsize %d netmap_buf_size %d", na->name, mtu, na->rx_buf_maxsize, NETMAP_BUF_SIZE(na)); if (na->rx_buf_maxsize == 0) { @@ -2372,7 +2372,7 @@ nm_sync_finalize(struct netmap_kring *kring) */ kring->ring->tail = kring->rtail = kring->nr_hwtail; - ND(5, "%s now hwcur %d hwtail %d head %d cur %d tail %d", + nm_prdis(5, "%s now hwcur %d hwtail %d head %d cur %d tail %d", kring->name, kring->nr_hwcur, kring->nr_hwtail, kring->rhead, kring->rcur, kring->rtail); } @@ -3770,7 +3770,7 @@ netmap_hw_krings_create(struct netmap_adapter *na) for (i = na->num_rx_rings; i < lim; i++) { mbq_safe_init(&NMR(na, NR_RX)[i]->rx_queue); } - ND("initialized sw rx queue %d", na->num_rx_rings); + nm_prdis("initialized sw rx queue %d", na->num_rx_rings); } return ret; } @@ -3871,13 +3871,13 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) if (!netmap_generic_hwcsum) { if (nm_os_mbuf_has_csum_offld(m)) { - RD(1, "%s drop mbuf that needs checksum offload", na->name); + nm_prlim(1, "%s drop mbuf that needs checksum offload", na->name); goto done; } } if (nm_os_mbuf_has_seg_offld(m)) { - RD(1, "%s drop mbuf that needs generic segmentation offload", na->name); + nm_prlim(1, "%s drop mbuf that needs generic segmentation offload", na->name); goto done; } @@ -3897,11 +3897,11 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) if (busy < 0) busy += kring->nkr_num_slots; if (busy + mbq_len(q) >= kring->nkr_num_slots - 1) { - RD(2, "%s full hwcur %d hwtail %d qlen %d", na->name, + nm_prlim(2, "%s full hwcur %d hwtail %d qlen %d", na->name, kring->nr_hwcur, kring->nr_hwtail, mbq_len(q)); } else { mbq_enqueue(q, m); - ND(2, "%s %d bufs in queue", na->name, mbq_len(q)); + nm_prdis(2, "%s %d bufs in queue", na->name, mbq_len(q)); /* notify outside the lock */ m = NULL; error = 0; @@ -3937,7 +3937,7 @@ netmap_reset(struct netmap_adapter *na, enum txrx tx, int new_hwofs, lim; if (!nm_native_on(na)) { - ND("interface not in native netmap mode"); + nm_prdis("interface not in native netmap mode"); return NULL; /* nothing to reinitialize */ } @@ -4079,7 +4079,7 @@ netmap_rx_irq(struct ifnet *ifp, u_int q, u_int *work_ return NM_IRQ_PASS; if (na->na_flags & NAF_SKIP_INTR) { - ND("use regular interrupt"); + nm_prdis("use regular interrupt"); return NM_IRQ_PASS; } @@ -4118,6 +4118,25 @@ nm_clear_native_flags(struct netmap_adapter *na) nm_os_onexit(ifp); na->na_flags &= ~NAF_NETMAP_ON; +} + +void +netmap_krings_mode_commit(struct netmap_adapter *na, int onoff) +{ + enum txrx t; + + for_rx_tx(t) { + int i; + + for (i = 0; i < netmap_real_rings(na, t); i++) { + struct netmap_kring *kring = NMR(na, t)[i]; + + if (onoff && nm_kring_pending_on(kring)) + kring->nr_mode = NKR_NETMAP_ON; + else if (!onoff && nm_kring_pending_off(kring)) + kring->nr_mode = NKR_NETMAP_OFF; + } + } } /* Modified: stable/12/sys/dev/netmap/netmap_bdg.c ============================================================================== --- stable/12/sys/dev/netmap/netmap_bdg.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap_bdg.c Tue Feb 12 09:07:46 2019 (r344046) @@ -203,14 +203,14 @@ nm_find_bridge(const char *name, int create, struct ne } else if (x->bdg_namelen != namelen) { continue; } else if (strncmp(name, x->bdg_basename, namelen) == 0) { - ND("found '%.*s' at %d", namelen, name, i); + nm_prdis("found '%.*s' at %d", namelen, name, i); b = x; break; } } if (i == num_bridges && b) { /* name not found, can create entry */ /* initialize the bridge */ - ND("create new bridge %s with ports %d", b->bdg_basename, + nm_prdis("create new bridge %s with ports %d", b->bdg_basename, b->bdg_active_ports); b->ht = nm_os_malloc(sizeof(struct nm_hash_ent) * NM_BDG_HASH); if (b->ht == NULL) { @@ -239,7 +239,7 @@ netmap_bdg_free(struct nm_bridge *b) return EBUSY; } - ND("marking bridge %s as free", b->bdg_basename); + nm_prdis("marking bridge %s as free", b->bdg_basename); nm_os_free(b->ht); memset(&b->bdg_ops, 0, sizeof(b->bdg_ops)); memset(&b->bdg_saved_ops, 0, sizeof(b->bdg_saved_ops)); @@ -312,13 +312,13 @@ netmap_bdg_detach_common(struct nm_bridge *b, int hw, memcpy(b->tmp_bdg_port_index, b->bdg_port_index, sizeof(b->tmp_bdg_port_index)); for (i = 0; (hw >= 0 || sw >= 0) && i < lim; ) { if (hw >= 0 && tmp[i] == hw) { - ND("detach hw %d at %d", hw, i); + nm_prdis("detach hw %d at %d", hw, i); lim--; /* point to last active port */ tmp[i] = tmp[lim]; /* swap with i */ tmp[lim] = hw; /* now this is inactive */ hw = -1; } else if (sw >= 0 && tmp[i] == sw) { - ND("detach sw %d at %d", sw, i); + nm_prdis("detach sw %d at %d", sw, i); lim--; tmp[i] = tmp[lim]; tmp[lim] = sw; @@ -342,7 +342,7 @@ netmap_bdg_detach_common(struct nm_bridge *b, int hw, b->bdg_active_ports = lim; BDG_WUNLOCK(b); - ND("now %d active ports", lim); + nm_prdis("now %d active ports", lim); netmap_bdg_free(b); } @@ -408,7 +408,7 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net b = nm_find_bridge(nr_name, create, ops); if (b == NULL) { - ND("no bridges available for '%s'", nr_name); + nm_prdis("no bridges available for '%s'", nr_name); return (create ? ENOMEM : ENXIO); } if (strlen(nr_name) < b->bdg_namelen) /* impossible */ @@ -425,10 +425,10 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net for (j = 0; j < b->bdg_active_ports; j++) { i = b->bdg_port_index[j]; vpna = b->bdg_ports[i]; - ND("checking %s", vpna->up.name); + nm_prdis("checking %s", vpna->up.name); if (!strcmp(vpna->up.name, nr_name)) { netmap_adapter_get(&vpna->up); - ND("found existing if %s refs %d", nr_name) + nm_prdis("found existing if %s refs %d", nr_name) *na = &vpna->up; return 0; } @@ -445,7 +445,7 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net /* record the next two ports available, but do not allocate yet */ cand = b->bdg_port_index[b->bdg_active_ports]; cand2 = b->bdg_port_index[b->bdg_active_ports + 1]; - ND("+++ bridge %s port %s used %d avail %d %d", + nm_prdis("+++ bridge %s port %s used %d avail %d %d", b->bdg_basename, ifname, b->bdg_active_ports, cand, cand2); /* @@ -515,7 +515,7 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net BDG_WLOCK(b); vpna->bdg_port = cand; - ND("NIC %p to bridge port %d", vpna, cand); + nm_prdis("NIC %p to bridge port %d", vpna, cand); /* bind the port to the bridge (virtual ports are not active) */ b->bdg_ports[cand] = vpna; vpna->na_bdg = b; @@ -526,9 +526,9 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net hostna->bdg_port = cand2; hostna->na_bdg = b; b->bdg_active_ports++; - ND("host %p to bridge port %d", hostna, cand2); + nm_prdis("host %p to bridge port %d", hostna, cand2); } - ND("if %s refs %d", ifname, vpna->up.na_refcount); + nm_prdis("if %s refs %d", ifname, vpna->up.na_refcount); BDG_WUNLOCK(b); *na = &vpna->up; netmap_adapter_get(*na); @@ -920,8 +920,6 @@ netmap_vp_reg(struct netmap_adapter *na, int onoff) { struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter*)na; - enum txrx t; - int i; /* persistent ports may be put in netmap mode * before being attached to a bridge @@ -929,14 +927,7 @@ netmap_vp_reg(struct netmap_adapter *na, int onoff) if (vpna->na_bdg) BDG_WLOCK(vpna->na_bdg); if (onoff) { - for_rx_tx(t) { - for (i = 0; i < netmap_real_rings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_on(kring)) - kring->nr_mode = NKR_NETMAP_ON; - } - } + netmap_krings_mode_commit(na, onoff); if (na->active_fds == 0) na->na_flags |= NAF_NETMAP_ON; /* XXX on FreeBSD, persistent VALE ports should also @@ -945,14 +936,7 @@ netmap_vp_reg(struct netmap_adapter *na, int onoff) } else { if (na->active_fds == 0) na->na_flags &= ~NAF_NETMAP_ON; - for_rx_tx(t) { - for (i = 0; i < netmap_real_rings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_off(kring)) - kring->nr_mode = NKR_NETMAP_OFF; - } - } + netmap_krings_mode_commit(na, onoff); } if (vpna->na_bdg) BDG_WUNLOCK(vpna->na_bdg); @@ -1077,7 +1061,7 @@ netmap_bwrap_dtor(struct netmap_adapter *na) (bh ? bna->host.bdg_port : -1)); } - ND("na %p", na); + nm_prdis("na %p", na); na->ifp = NULL; bna->host.up.ifp = NULL; hwna->na_vp = bna->saved_na_vp; @@ -1182,7 +1166,7 @@ netmap_bwrap_reg(struct netmap_adapter *na, int onoff) int error, i; enum txrx t; - ND("%s %s", na->name, onoff ? "on" : "off"); + nm_prdis("%s %s", na->name, onoff ? "on" : "off"); if (onoff) { /* netmap_do_regif has been called on the bwrap na. @@ -1387,7 +1371,7 @@ netmap_bwrap_krings_delete_common(struct netmap_adapte enum txrx t; int i; - ND("%s", na->name); + nm_prdis("%s", na->name); /* decrement the usage counter for all the hwna krings */ for_rx_tx(t) { @@ -1414,7 +1398,7 @@ netmap_bwrap_notify(struct netmap_kring *kring, int fl struct netmap_kring *hw_kring; int error; - ND("%s: na %s hwna %s", + nm_prdis("%s: na %s hwna %s", (kring ? kring->name : "NULL!"), (na ? na->name : "NULL!"), (hwna ? hwna->name : "NULL!")); @@ -1426,7 +1410,7 @@ netmap_bwrap_notify(struct netmap_kring *kring, int fl /* first step: simulate a user wakeup on the rx ring */ netmap_vp_rxsync(kring, flags); - ND("%s[%d] PRE rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", + nm_prdis("%s[%d] PRE rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", na->name, ring_n, kring->nr_hwcur, kring->nr_hwtail, kring->nkr_hwlease, kring->rhead, kring->rcur, kring->rtail, @@ -1445,7 +1429,7 @@ netmap_bwrap_notify(struct netmap_kring *kring, int fl /* fourth step: the user goes to sleep again, causing another rxsync */ netmap_vp_rxsync(kring, flags); - ND("%s[%d] PST rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", + nm_prdis("%s[%d] PST rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", na->name, ring_n, kring->nr_hwcur, kring->nr_hwtail, kring->nkr_hwlease, kring->rhead, kring->rcur, kring->rtail, @@ -1595,7 +1579,7 @@ netmap_bwrap_attach_common(struct netmap_adapter *na, if (hwna->na_flags & NAF_MOREFRAG) na->na_flags |= NAF_MOREFRAG; - ND("%s<->%s txr %d txd %d rxr %d rxd %d", + nm_prdis("%s<->%s txr %d txd %d rxr %d rxd %d", na->name, ifp->if_xname, na->num_tx_rings, na->num_tx_desc, na->num_rx_rings, na->num_rx_desc); Modified: stable/12/sys/dev/netmap/netmap_freebsd.c ============================================================================== --- stable/12/sys/dev/netmap/netmap_freebsd.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap_freebsd.c Tue Feb 12 09:07:46 2019 (r344046) @@ -1312,8 +1312,6 @@ nm_os_kctx_destroy(struct nm_kctx *nmk) void nm_os_selwakeup(struct nm_selinfo *si) { - if (netmap_verbose) - nm_prinf("on knote %p", &si->si.si_note); selwakeuppri(&si->si, PI_NET); /* We use a non-zero hint to distinguish this notification call * from the call done in kqueue_scan(), which uses hint=0. Modified: stable/12/sys/dev/netmap/netmap_generic.c ============================================================================== --- stable/12/sys/dev/netmap/netmap_generic.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap_generic.c Tue Feb 12 09:07:46 2019 (r344046) @@ -237,18 +237,7 @@ generic_netmap_unregister(struct netmap_adapter *na) nm_os_catch_tx(gna, 0); } - for_each_rx_kring_h(r, kring, na) { - if (nm_kring_pending_off(kring)) { - nm_prinf("Emulated adapter: ring '%s' deactivated", kring->name); - kring->nr_mode = NKR_NETMAP_OFF; - } - } - for_each_tx_kring_h(r, kring, na) { - if (nm_kring_pending_off(kring)) { - kring->nr_mode = NKR_NETMAP_OFF; - nm_prinf("Emulated adapter: ring '%s' deactivated", kring->name); - } - } + netmap_krings_mode_commit(na, /*onoff=*/0); for_each_rx_kring(r, kring, na) { /* Free the mbufs still pending in the RX queues, @@ -371,19 +360,7 @@ generic_netmap_register(struct netmap_adapter *na, int } } - for_each_rx_kring_h(r, kring, na) { - if (nm_kring_pending_on(kring)) { - nm_prinf("Emulated adapter: ring '%s' activated", kring->name); - kring->nr_mode = NKR_NETMAP_ON; - } - - } - for_each_tx_kring_h(r, kring, na) { - if (nm_kring_pending_on(kring)) { - nm_prinf("Emulated adapter: ring '%s' activated", kring->name); - kring->nr_mode = NKR_NETMAP_ON; - } - } + netmap_krings_mode_commit(na, /*onoff=*/1); for_each_tx_kring(r, kring, na) { /* Initialize tx_pool and tx_event. */ Modified: stable/12/sys/dev/netmap/netmap_kern.h ============================================================================== --- stable/12/sys/dev/netmap/netmap_kern.h Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap_kern.h Tue Feb 12 09:07:46 2019 (r344046) @@ -268,7 +268,7 @@ typedef struct hrtimer{ __LINE__, __FUNCTION__, ##__VA_ARGS__); \ } while (0) -/* Disabled printf (used to be ND). */ +/* Disabled printf (used to be nm_prdis). */ #define nm_prdis(format, ...) /* Rate limited, lps indicates how many per second. */ @@ -283,11 +283,6 @@ typedef struct hrtimer{ nm_prinf(format, ##__VA_ARGS__); \ } while (0) -/* Old macros. */ -#define ND nm_prdis -#define D nm_prerr -#define RD nm_prlim - struct netmap_adapter; struct nm_bdg_fwd; struct nm_bridge; @@ -1146,7 +1141,7 @@ nm_kr_rxspace(struct netmap_kring *k) int space = k->nr_hwtail - k->nr_hwcur; if (space < 0) space += k->nkr_num_slots; - ND("preserving %d rx slots %d -> %d", space, k->nr_hwcur, k->nr_hwtail); + nm_prdis("preserving %d rx slots %d -> %d", space, k->nr_hwcur, k->nr_hwtail); return space; } @@ -1372,6 +1367,8 @@ nm_update_hostrings_mode(struct netmap_adapter *na) void nm_set_native_flags(struct netmap_adapter *); void nm_clear_native_flags(struct netmap_adapter *); +void netmap_krings_mode_commit(struct netmap_adapter *na, int onoff); + /* * nm_*sync_prologue() functions are used in ioctl/poll and ptnetmap * kthreads. @@ -1399,7 +1396,7 @@ uint32_t nm_rxsync_prologue(struct netmap_kring *, str #if 1 /* debug version */ #define NM_CHECK_ADDR_LEN(_na, _a, _l) do { \ if (_a == NETMAP_BUF_BASE(_na) || _l > NETMAP_BUF_SIZE(_na)) { \ - RD(5, "bad addr/len ring %d slot %d idx %d len %d", \ + nm_prlim(5, "bad addr/len ring %d slot %d idx %d len %d", \ kring->ring_id, nm_i, slot->buf_idx, len); \ if (_l > NETMAP_BUF_SIZE(_na)) \ _l = NETMAP_BUF_SIZE(_na); \ @@ -1561,7 +1558,7 @@ void __netmap_adapter_get(struct netmap_adapter *na); #define netmap_adapter_get(na) \ do { \ struct netmap_adapter *__na = na; \ - D("getting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ + nm_prinf("getting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ __netmap_adapter_get(__na); \ } while (0) @@ -1570,7 +1567,7 @@ int __netmap_adapter_put(struct netmap_adapter *na); #define netmap_adapter_put(na) \ ({ \ struct netmap_adapter *__na = na; \ - D("putting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ + nm_prinf("putting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ __netmap_adapter_put(__na); \ }) @@ -1732,7 +1729,7 @@ int nm_iommu_group_id(bus_dma_tag_t dev); addr, NETMAP_BUF_SIZE, DMA_TO_DEVICE); if (dma_mapping_error(&adapter->pdev->dev, buffer_info->dma)) { - D("dma mapping error"); + nm_prerr("dma mapping error"); /* goto dma_error; See e1000_put_txbuf() */ /* XXX reset */ } @@ -1991,6 +1988,12 @@ nm_si_user(struct netmap_priv_d *priv, enum txrx t) #ifdef WITH_PIPES int netmap_pipe_txsync(struct netmap_kring *txkring, int flags); int netmap_pipe_rxsync(struct netmap_kring *rxkring, int flags); +int netmap_pipe_krings_create_both(struct netmap_adapter *na, + struct netmap_adapter *ona); +void netmap_pipe_krings_delete_both(struct netmap_adapter *na, + struct netmap_adapter *ona); +int netmap_pipe_reg_both(struct netmap_adapter *na, + struct netmap_adapter *ona); #endif /* WITH_PIPES */ #ifdef WITH_MONITOR @@ -2325,7 +2328,7 @@ nm_os_get_mbuf(struct ifnet *ifp, int len) m->m_ext.ext_arg1 = m->m_ext.ext_buf; // XXX save m->m_ext.ext_free = (void *)void_mbuf_dtor; m->m_ext.ext_type = EXT_EXTREF; - ND(5, "create m %p refcnt %d", m, MBUF_REFCNT(m)); + nm_prdis(5, "create m %p refcnt %d", m, MBUF_REFCNT(m)); } return m; } Modified: stable/12/sys/dev/netmap/netmap_legacy.c ============================================================================== --- stable/12/sys/dev/netmap/netmap_legacy.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap_legacy.c Tue Feb 12 09:07:46 2019 (r344046) @@ -365,7 +365,14 @@ netmap_ioctl_legacy(struct netmap_priv_d *priv, u_long /* Request for the legacy control API. Convert it to a * NIOCCTRL request. */ struct nmreq *nmr = (struct nmreq *) data; - struct nmreq_header *hdr = nmreq_from_legacy(nmr, cmd); + struct nmreq_header *hdr; + + if (nmr->nr_version < 11) { + nm_prerr("Minimum supported API is 11 (requested %u)", + nmr->nr_version); + return EINVAL; + } + hdr = nmreq_from_legacy(nmr, cmd); if (hdr == NULL) { /* out of memory */ return ENOMEM; } @@ -390,14 +397,14 @@ netmap_ioctl_legacy(struct netmap_priv_d *priv, u_long #ifdef __FreeBSD__ case FIONBIO: case FIOASYNC: - ND("FIONBIO/FIOASYNC are no-ops"); + /* FIONBIO/FIOASYNC are no-ops. */ break; case BIOCIMMEDIATE: case BIOCGHDRCMPLT: case BIOCSHDRCMPLT: case BIOCSSEESENT: - D("ignore BIOCIMMEDIATE/BIOCSHDRCMPLT/BIOCSHDRCMPLT/BIOCSSEESENT"); + /* Ignore these commands. */ break; default: /* allow device-specific ioctls */ Modified: stable/12/sys/dev/netmap/netmap_mem2.c ============================================================================== --- stable/12/sys/dev/netmap/netmap_mem2.c Tue Feb 12 08:16:05 2019 (r344045) +++ stable/12/sys/dev/netmap/netmap_mem2.c Tue Feb 12 09:07:46 2019 (r344046) @@ -979,7 +979,7 @@ netmap_obj_offset(struct netmap_obj_pool *p, const voi continue; ofs = ofs + relofs; - ND("%s: return offset %d (cluster %d) for pointer %p", + nm_prdis("%s: return offset %d (cluster %d) for pointer %p", p->name, ofs, i, vaddr); return ofs; } @@ -1043,7 +1043,7 @@ netmap_obj_malloc(struct netmap_obj_pool *p, u_int len if (index) *index = i * 32 + j; } - ND("%s allocator: allocated object @ [%d][%d]: vaddr %p",p->name, i, j, vaddr); + nm_prdis("%s allocator: allocated object @ [%d][%d]: vaddr %p",p->name, i, j, vaddr); if (start) *start = i; @@ -1143,7 +1143,7 @@ netmap_extra_alloc(struct netmap_adapter *na, uint32_t *head = cur; /* restore */ break; } - ND(5, "allocate buffer %d -> %d", *head, cur); + nm_prdis(5, "allocate buffer %d -> %d", *head, cur); *p = cur; /* link to previous head */ } @@ -1160,7 +1160,7 @@ netmap_extra_free(struct netmap_adapter *na, uint32_t struct netmap_obj_pool *p = &nmd->pools[NETMAP_BUF_POOL]; uint32_t i, cur, *buf; - ND("freeing the extra list"); + nm_prdis("freeing the extra list"); for (i = 0; head >=2 && head < p->objtotal; i++) { cur = head; buf = lut[head].vaddr; @@ -1197,7 +1197,7 @@ netmap_new_bufs(struct netmap_mem_d *nmd, struct netma slot[i].ptr = 0; } - ND("%s: allocated %d buffers, %d available, first at %d", p->name, n, p->objfree, pos); + nm_prdis("%s: allocated %d buffers, %d available, first at %d", p->name, n, p->objfree, pos); return (0); cleanup: @@ -1245,7 +1245,7 @@ netmap_free_bufs(struct netmap_mem_d *nmd, struct netm if (slot[i].buf_idx > 1) netmap_free_buf(nmd, slot[i].buf_idx); } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Feb 12 09:26:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A4D7B14DF6EA; Tue, 12 Feb 2019 09:26:08 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4E39783087; Tue, 12 Feb 2019 09:26:08 +0000 (UTC) (envelope-from vmaffione@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 26B9EE031; Tue, 12 Feb 2019 09:26:08 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1C9Q8TF005706; Tue, 12 Feb 2019 09:26:08 GMT (envelope-from vmaffione@FreeBSD.org) Received: (from vmaffione@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1C9Q6jh005696; Tue, 12 Feb 2019 09:26:06 GMT (envelope-from vmaffione@FreeBSD.org) Message-Id: <201902120926.x1C9Q6jh005696@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: vmaffione set sender to vmaffione@FreeBSD.org using -f From: Vincenzo Maffione Date: Tue, 12 Feb 2019 09:26:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344047 - in stable/11/sys/dev: ixgbe netmap X-SVN-Group: stable-11 X-SVN-Commit-Author: vmaffione X-SVN-Commit-Paths: in stable/11/sys/dev: ixgbe netmap X-SVN-Commit-Revision: 344047 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4E39783087 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 09:26:09 -0000 Author: vmaffione Date: Tue Feb 12 09:26:05 2019 New Revision: 344047 URL: https://svnweb.freebsd.org/changeset/base/344047 Log: MFC r343772, r343867 netmap: refactor logging macros and pipes Changelist: - Replace ND, D and RD macros with nm_prdis, nm_prinf, nm_prerr and nm_prlim, to avoid possible naming conflicts. - Add netmap_krings_mode_commit() helper function and use that to reduce code duplication. - Refactor pipes control code to export some functions that can be reused by the veth driver (on Linux) and epair(4). - Add check to reject API requests with version less than 11. - Small code refactoring for the null adapter. Modified: stable/11/sys/dev/ixgbe/ixgbe_netmap.c stable/11/sys/dev/netmap/if_vtnet_netmap.h stable/11/sys/dev/netmap/netmap.c stable/11/sys/dev/netmap/netmap_bdg.c stable/11/sys/dev/netmap/netmap_freebsd.c stable/11/sys/dev/netmap/netmap_generic.c stable/11/sys/dev/netmap/netmap_kern.h stable/11/sys/dev/netmap/netmap_legacy.c stable/11/sys/dev/netmap/netmap_mem2.c stable/11/sys/dev/netmap/netmap_monitor.c stable/11/sys/dev/netmap/netmap_null.c stable/11/sys/dev/netmap/netmap_offloadings.c stable/11/sys/dev/netmap/netmap_pipe.c stable/11/sys/dev/netmap/netmap_vale.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/ixgbe/ixgbe_netmap.c ============================================================================== --- stable/11/sys/dev/ixgbe/ixgbe_netmap.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/ixgbe/ixgbe_netmap.c Tue Feb 12 09:26:05 2019 (r344047) @@ -118,7 +118,7 @@ set_crcstrip(struct ixgbe_hw *hw, int onoff) hl = IXGBE_READ_REG(hw, IXGBE_HLREG0); rxc = IXGBE_READ_REG(hw, IXGBE_RDRXCTL); if (netmap_verbose) - D("%s read HLREG 0x%x rxc 0x%x", + nm_prinf("%s read HLREG 0x%x rxc 0x%x", onoff ? "enter" : "exit", hl, rxc); /* hw requirements ... */ rxc &= ~IXGBE_RDRXCTL_RSCFRSTSIZE; @@ -133,7 +133,7 @@ set_crcstrip(struct ixgbe_hw *hw, int onoff) rxc |= IXGBE_RDRXCTL_CRCSTRIP; } if (netmap_verbose) - D("%s write HLREG 0x%x rxc 0x%x", + nm_prinf("%s write HLREG 0x%x rxc 0x%x", onoff ? "enter" : "exit", hl, rxc); IXGBE_WRITE_REG(hw, IXGBE_HLREG0, hl); IXGBE_WRITE_REG(hw, IXGBE_RDRXCTL, rxc); @@ -340,8 +340,8 @@ ixgbe_netmap_txsync(struct netmap_kring *kring, int fl * good way. */ nic_i = IXGBE_READ_REG(&adapter->hw, IXGBE_TDH(kring->ring_id)); - if (nic_i >= kring->nkr_num_slots) { /* XXX can it happen ? */ - D("TDH wrap %d", nic_i); + if (unlikely(nic_i >= kring->nkr_num_slots)) { + nm_prinf("TDH wrap %d", nic_i); nic_i -= kring->nkr_num_slots; } if (nic_i != txr->next_to_clean) { Modified: stable/11/sys/dev/netmap/if_vtnet_netmap.h ============================================================================== --- stable/11/sys/dev/netmap/if_vtnet_netmap.h Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/if_vtnet_netmap.h Tue Feb 12 09:26:05 2019 (r344047) @@ -90,7 +90,6 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) struct ifnet *ifp = na->ifp; struct vtnet_softc *sc = ifp->if_softc; int success; - enum txrx t; int i; /* Drain the taskqueues to make sure that there are no worker threads @@ -132,44 +131,11 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) success = (ifp->if_drv_flags & IFF_DRV_RUNNING) ? 0 : ENXIO; if (state) { - for_rx_tx(t) { - /* Hardware rings. */ - for (i = 0; i < nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_on(kring)) - kring->nr_mode = NKR_NETMAP_ON; - } - - /* Host rings. */ - for (i = 0; i < nma_get_host_nrings(na, t); i++) { - struct netmap_kring *kring = - NMR(na, t)[nma_get_nrings(na, t) + i]; - - if (nm_kring_pending_on(kring)) - kring->nr_mode = NKR_NETMAP_ON; - } - } + netmap_krings_mode_commit(na, state); + nm_set_native_flags(na); } else { nm_clear_native_flags(na); - for_rx_tx(t) { - /* Hardware rings. */ - for (i = 0; i < nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_off(kring)) - kring->nr_mode = NKR_NETMAP_OFF; - } - - /* Host rings. */ - for (i = 0; i < nma_get_host_nrings(na, t); i++) { - struct netmap_kring *kring = - NMR(na, t)[nma_get_nrings(na, t) + i]; - - if (nm_kring_pending_off(kring)) - kring->nr_mode = NKR_NETMAP_OFF; - } - } + netmap_krings_mode_commit(na, state); } VTNET_CORE_UNLOCK(sc); @@ -396,7 +362,7 @@ vtnet_netmap_rxsync(struct netmap_kring *kring, int fl /* Skip the virtio-net header. */ len -= sc->vtnet_hdr_size; if (unlikely(len < 0)) { - RD(1, "Truncated virtio-net-header, " + nm_prlim(1, "Truncated virtio-net-header, " "missing %d bytes", -len); len = 0; } @@ -408,7 +374,7 @@ vtnet_netmap_rxsync(struct netmap_kring *kring, int fl kring->nr_hwtail = nm_i; kring->nr_kflags &= ~NKR_PENDINTR; } - ND("[B] h %d c %d hwcur %d hwtail %d", ring->head, ring->cur, + nm_prdis("[B] h %d c %d hwcur %d hwtail %d", ring->head, ring->cur, kring->nr_hwcur, kring->nr_hwtail); /* @@ -423,7 +389,7 @@ vtnet_netmap_rxsync(struct netmap_kring *kring, int fl virtqueue_notify(vq); } - ND("[C] h %d c %d t %d hwcur %d hwtail %d", ring->head, ring->cur, + nm_prdis("[C] h %d c %d t %d hwcur %d hwtail %d", ring->head, ring->cur, ring->tail, kring->nr_hwcur, kring->nr_hwtail); return 0; Modified: stable/11/sys/dev/netmap/netmap.c ============================================================================== --- stable/11/sys/dev/netmap/netmap.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap.c Tue Feb 12 09:26:05 2019 (r344047) @@ -894,7 +894,7 @@ netmap_krings_create(struct netmap_adapter *na, u_int kring->rtail = kring->nr_hwtail = (t == NR_TX ? ndesc - 1 : 0); snprintf(kring->name, sizeof(kring->name) - 1, "%s %s%d", na->name, nm_txrx2str(t), i); - ND("ktx %s h %d c %d t %d", + nm_prdis("ktx %s h %d c %d t %d", kring->name, kring->rhead, kring->rcur, kring->rtail); mtx_init(&kring->q_lock, (t == NR_TX ? "nm_txq_lock" : "nm_rxq_lock"), NULL, MTX_DEF); nm_os_selinfo_init(&kring->si); @@ -947,7 +947,7 @@ netmap_hw_krings_delete(struct netmap_adapter *na) for (i = nma_get_nrings(na, NR_RX); i < lim; i++) { struct mbq *q = &NMR(na, NR_RX)[i]->rx_queue; - ND("destroy sw mbq with len %d", mbq_len(q)); + nm_prdis("destroy sw mbq with len %d", mbq_len(q)); mbq_purge(q); mbq_safe_fini(q); } @@ -1168,7 +1168,7 @@ netmap_grab_packets(struct netmap_kring *kring, struct if ((slot->flags & NS_FORWARD) == 0 && !force) continue; if (slot->len < 14 || slot->len > NETMAP_BUF_SIZE(na)) { - RD(5, "bad pkt at %d len %d", n, slot->len); + nm_prlim(5, "bad pkt at %d len %d", n, slot->len); continue; } slot->flags &= ~NS_FORWARD; // XXX needed ? @@ -1282,7 +1282,7 @@ netmap_txsync_to_host(struct netmap_kring *kring, int */ mbq_init(&q); netmap_grab_packets(kring, &q, 1 /* force */); - ND("have %d pkts in queue", mbq_len(&q)); + nm_prdis("have %d pkts in queue", mbq_len(&q)); kring->nr_hwcur = head; kring->nr_hwtail = head + lim; if (kring->nr_hwtail > lim) @@ -1330,7 +1330,7 @@ netmap_rxsync_from_host(struct netmap_kring *kring, in struct netmap_slot *slot = &ring->slot[nm_i]; m_copydata(m, 0, len, NMB(na, slot)); - ND("nm %d len %d", nm_i, len); + nm_prdis("nm %d len %d", nm_i, len); if (netmap_debug & NM_DEBUG_HOST) nm_prinf("%s", nm_dump_buf(NMB(na, slot),len, 128, NULL)); @@ -1595,7 +1595,7 @@ netmap_unget_na(struct netmap_adapter *na, struct ifne #define NM_FAIL_ON(t) do { \ if (unlikely(t)) { \ - RD(5, "%s: fail '" #t "' " \ + nm_prlim(5, "%s: fail '" #t "' " \ "h %d c %d t %d " \ "rh %d rc %d rt %d " \ "hc %d ht %d", \ @@ -1627,7 +1627,7 @@ nm_txsync_prologue(struct netmap_kring *kring, struct u_int cur = ring->cur; /* read only once */ u_int n = kring->nkr_num_slots; - ND(5, "%s kcur %d ktail %d head %d cur %d tail %d", + nm_prdis(5, "%s kcur %d ktail %d head %d cur %d tail %d", kring->name, kring->nr_hwcur, kring->nr_hwtail, ring->head, ring->cur, ring->tail); @@ -1663,7 +1663,7 @@ nm_txsync_prologue(struct netmap_kring *kring, struct } } if (ring->tail != kring->rtail) { - RD(5, "%s tail overwritten was %d need %d", kring->name, + nm_prlim(5, "%s tail overwritten was %d need %d", kring->name, ring->tail, kring->rtail); ring->tail = kring->rtail; } @@ -1690,7 +1690,7 @@ nm_rxsync_prologue(struct netmap_kring *kring, struct uint32_t const n = kring->nkr_num_slots; uint32_t head, cur; - ND(5,"%s kc %d kt %d h %d c %d t %d", + nm_prdis(5,"%s kc %d kt %d h %d c %d t %d", kring->name, kring->nr_hwcur, kring->nr_hwtail, ring->head, ring->cur, ring->tail); @@ -1725,7 +1725,7 @@ nm_rxsync_prologue(struct netmap_kring *kring, struct } } if (ring->tail != kring->rtail) { - RD(5, "%s tail overwritten was %d need %d", + nm_prlim(5, "%s tail overwritten was %d need %d", kring->name, ring->tail, kring->rtail); ring->tail = kring->rtail; @@ -1754,7 +1754,7 @@ netmap_ring_reinit(struct netmap_kring *kring) int errors = 0; // XXX KASSERT nm_kr_tryget - RD(10, "called for %s", kring->name); + nm_prlim(10, "called for %s", kring->name); // XXX probably wrong to trust userspace kring->rhead = ring->head; kring->rcur = ring->cur; @@ -1770,17 +1770,17 @@ netmap_ring_reinit(struct netmap_kring *kring) u_int idx = ring->slot[i].buf_idx; u_int len = ring->slot[i].len; if (idx < 2 || idx >= kring->na->na_lut.objtotal) { - RD(5, "bad index at slot %d idx %d len %d ", i, idx, len); + nm_prlim(5, "bad index at slot %d idx %d len %d ", i, idx, len); ring->slot[i].buf_idx = 0; ring->slot[i].len = 0; } else if (len > NETMAP_BUF_SIZE(kring->na)) { ring->slot[i].len = 0; - RD(5, "bad len at slot %d idx %d len %d", i, idx, len); + nm_prlim(5, "bad len at slot %d idx %d len %d", i, idx, len); } } if (errors) { - RD(10, "total %d errors", errors); - RD(10, "%s reinit, cur %d -> %d tail %d -> %d", + nm_prlim(10, "total %d errors", errors); + nm_prlim(10, "%s reinit, cur %d -> %d tail %d -> %d", kring->name, ring->cur, kring->nr_hwcur, ring->tail, kring->nr_hwtail); @@ -1817,7 +1817,7 @@ netmap_interp_ringid(struct netmap_priv_d *priv, uint3 case NR_REG_NULL: priv->np_qfirst[t] = 0; priv->np_qlast[t] = nma_get_nrings(na, t); - ND("ALL/PIPE: %s %d %d", nm_txrx2str(t), + nm_prdis("ALL/PIPE: %s %d %d", nm_txrx2str(t), priv->np_qfirst[t], priv->np_qlast[t]); break; case NR_REG_SW: @@ -1829,7 +1829,7 @@ netmap_interp_ringid(struct netmap_priv_d *priv, uint3 priv->np_qfirst[t] = (nr_mode == NR_REG_SW ? nma_get_nrings(na, t) : 0); priv->np_qlast[t] = netmap_all_rings(na, t); - ND("%s: %s %d %d", nr_mode == NR_REG_SW ? "SW" : "NIC+SW", + nm_prdis("%s: %s %d %d", nr_mode == NR_REG_SW ? "SW" : "NIC+SW", nm_txrx2str(t), priv->np_qfirst[t], priv->np_qlast[t]); break; @@ -1845,7 +1845,7 @@ netmap_interp_ringid(struct netmap_priv_d *priv, uint3 j = 0; priv->np_qfirst[t] = j; priv->np_qlast[t] = j + 1; - ND("ONE_NIC: %s %d %d", nm_txrx2str(t), + nm_prdis("ONE_NIC: %s %d %d", nm_txrx2str(t), priv->np_qfirst[t], priv->np_qlast[t]); break; default: @@ -1954,7 +1954,7 @@ netmap_krings_get(struct netmap_priv_d *priv) if ((kring->nr_kflags & NKR_EXCLUSIVE) || (kring->users && excl)) { - ND("ring %s busy", kring->name); + nm_prdis("ring %s busy", kring->name); return EBUSY; } } @@ -1989,7 +1989,7 @@ netmap_krings_put(struct netmap_priv_d *priv) int excl = (priv->np_flags & NR_EXCLUSIVE); enum txrx t; - ND("%s: releasing tx [%d, %d) rx [%d, %d)", + nm_prdis("%s: releasing tx [%d, %d) rx [%d, %d)", na->name, priv->np_qfirst[NR_TX], priv->np_qlast[NR_TX], @@ -2254,7 +2254,7 @@ netmap_do_regif(struct netmap_priv_d *priv, struct net error = netmap_mem_get_lut(na->nm_mem, &na->na_lut); if (error) goto err_drop_mem; - ND("lut %p bufs %u size %u", na->na_lut.lut, na->na_lut.objtotal, + nm_prdis("lut %p bufs %u size %u", na->na_lut.lut, na->na_lut.objtotal, na->na_lut.objsize); /* ring configuration may have changed, fetch from the card */ @@ -2276,7 +2276,7 @@ netmap_do_regif(struct netmap_priv_d *priv, struct net /* This netmap adapter is attached to an ifnet. */ unsigned mtu = nm_os_ifnet_mtu(na->ifp); - ND("%s: mtu %d rx_buf_maxsize %d netmap_buf_size %d", + nm_prdis("%s: mtu %d rx_buf_maxsize %d netmap_buf_size %d", na->name, mtu, na->rx_buf_maxsize, NETMAP_BUF_SIZE(na)); if (na->rx_buf_maxsize == 0) { @@ -2373,7 +2373,7 @@ nm_sync_finalize(struct netmap_kring *kring) */ kring->ring->tail = kring->rtail = kring->nr_hwtail; - ND(5, "%s now hwcur %d hwtail %d head %d cur %d tail %d", + nm_prdis(5, "%s now hwcur %d hwtail %d head %d cur %d tail %d", kring->name, kring->nr_hwcur, kring->nr_hwtail, kring->rhead, kring->rcur, kring->rtail); } @@ -3771,7 +3771,7 @@ netmap_hw_krings_create(struct netmap_adapter *na) for (i = na->num_rx_rings; i < lim; i++) { mbq_safe_init(&NMR(na, NR_RX)[i]->rx_queue); } - ND("initialized sw rx queue %d", na->num_rx_rings); + nm_prdis("initialized sw rx queue %d", na->num_rx_rings); } return ret; } @@ -3872,13 +3872,13 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) if (!netmap_generic_hwcsum) { if (nm_os_mbuf_has_csum_offld(m)) { - RD(1, "%s drop mbuf that needs checksum offload", na->name); + nm_prlim(1, "%s drop mbuf that needs checksum offload", na->name); goto done; } } if (nm_os_mbuf_has_seg_offld(m)) { - RD(1, "%s drop mbuf that needs generic segmentation offload", na->name); + nm_prlim(1, "%s drop mbuf that needs generic segmentation offload", na->name); goto done; } @@ -3898,11 +3898,11 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) if (busy < 0) busy += kring->nkr_num_slots; if (busy + mbq_len(q) >= kring->nkr_num_slots - 1) { - RD(2, "%s full hwcur %d hwtail %d qlen %d", na->name, + nm_prlim(2, "%s full hwcur %d hwtail %d qlen %d", na->name, kring->nr_hwcur, kring->nr_hwtail, mbq_len(q)); } else { mbq_enqueue(q, m); - ND(2, "%s %d bufs in queue", na->name, mbq_len(q)); + nm_prdis(2, "%s %d bufs in queue", na->name, mbq_len(q)); /* notify outside the lock */ m = NULL; error = 0; @@ -3938,7 +3938,7 @@ netmap_reset(struct netmap_adapter *na, enum txrx tx, int new_hwofs, lim; if (!nm_native_on(na)) { - ND("interface not in native netmap mode"); + nm_prdis("interface not in native netmap mode"); return NULL; /* nothing to reinitialize */ } @@ -4080,7 +4080,7 @@ netmap_rx_irq(struct ifnet *ifp, u_int q, u_int *work_ return NM_IRQ_PASS; if (na->na_flags & NAF_SKIP_INTR) { - ND("use regular interrupt"); + nm_prdis("use regular interrupt"); return NM_IRQ_PASS; } @@ -4119,6 +4119,25 @@ nm_clear_native_flags(struct netmap_adapter *na) nm_os_onexit(ifp); na->na_flags &= ~NAF_NETMAP_ON; +} + +void +netmap_krings_mode_commit(struct netmap_adapter *na, int onoff) +{ + enum txrx t; + + for_rx_tx(t) { + int i; + + for (i = 0; i < netmap_real_rings(na, t); i++) { + struct netmap_kring *kring = NMR(na, t)[i]; + + if (onoff && nm_kring_pending_on(kring)) + kring->nr_mode = NKR_NETMAP_ON; + else if (!onoff && nm_kring_pending_off(kring)) + kring->nr_mode = NKR_NETMAP_OFF; + } + } } /* Modified: stable/11/sys/dev/netmap/netmap_bdg.c ============================================================================== --- stable/11/sys/dev/netmap/netmap_bdg.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap_bdg.c Tue Feb 12 09:26:05 2019 (r344047) @@ -203,14 +203,14 @@ nm_find_bridge(const char *name, int create, struct ne } else if (x->bdg_namelen != namelen) { continue; } else if (strncmp(name, x->bdg_basename, namelen) == 0) { - ND("found '%.*s' at %d", namelen, name, i); + nm_prdis("found '%.*s' at %d", namelen, name, i); b = x; break; } } if (i == num_bridges && b) { /* name not found, can create entry */ /* initialize the bridge */ - ND("create new bridge %s with ports %d", b->bdg_basename, + nm_prdis("create new bridge %s with ports %d", b->bdg_basename, b->bdg_active_ports); b->ht = nm_os_malloc(sizeof(struct nm_hash_ent) * NM_BDG_HASH); if (b->ht == NULL) { @@ -239,7 +239,7 @@ netmap_bdg_free(struct nm_bridge *b) return EBUSY; } - ND("marking bridge %s as free", b->bdg_basename); + nm_prdis("marking bridge %s as free", b->bdg_basename); nm_os_free(b->ht); memset(&b->bdg_ops, 0, sizeof(b->bdg_ops)); memset(&b->bdg_saved_ops, 0, sizeof(b->bdg_saved_ops)); @@ -312,13 +312,13 @@ netmap_bdg_detach_common(struct nm_bridge *b, int hw, memcpy(b->tmp_bdg_port_index, b->bdg_port_index, sizeof(b->tmp_bdg_port_index)); for (i = 0; (hw >= 0 || sw >= 0) && i < lim; ) { if (hw >= 0 && tmp[i] == hw) { - ND("detach hw %d at %d", hw, i); + nm_prdis("detach hw %d at %d", hw, i); lim--; /* point to last active port */ tmp[i] = tmp[lim]; /* swap with i */ tmp[lim] = hw; /* now this is inactive */ hw = -1; } else if (sw >= 0 && tmp[i] == sw) { - ND("detach sw %d at %d", sw, i); + nm_prdis("detach sw %d at %d", sw, i); lim--; tmp[i] = tmp[lim]; tmp[lim] = sw; @@ -342,7 +342,7 @@ netmap_bdg_detach_common(struct nm_bridge *b, int hw, b->bdg_active_ports = lim; BDG_WUNLOCK(b); - ND("now %d active ports", lim); + nm_prdis("now %d active ports", lim); netmap_bdg_free(b); } @@ -408,7 +408,7 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net b = nm_find_bridge(nr_name, create, ops); if (b == NULL) { - ND("no bridges available for '%s'", nr_name); + nm_prdis("no bridges available for '%s'", nr_name); return (create ? ENOMEM : ENXIO); } if (strlen(nr_name) < b->bdg_namelen) /* impossible */ @@ -425,10 +425,10 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net for (j = 0; j < b->bdg_active_ports; j++) { i = b->bdg_port_index[j]; vpna = b->bdg_ports[i]; - ND("checking %s", vpna->up.name); + nm_prdis("checking %s", vpna->up.name); if (!strcmp(vpna->up.name, nr_name)) { netmap_adapter_get(&vpna->up); - ND("found existing if %s refs %d", nr_name) + nm_prdis("found existing if %s refs %d", nr_name) *na = &vpna->up; return 0; } @@ -445,7 +445,7 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net /* record the next two ports available, but do not allocate yet */ cand = b->bdg_port_index[b->bdg_active_ports]; cand2 = b->bdg_port_index[b->bdg_active_ports + 1]; - ND("+++ bridge %s port %s used %d avail %d %d", + nm_prdis("+++ bridge %s port %s used %d avail %d %d", b->bdg_basename, ifname, b->bdg_active_ports, cand, cand2); /* @@ -515,7 +515,7 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net BDG_WLOCK(b); vpna->bdg_port = cand; - ND("NIC %p to bridge port %d", vpna, cand); + nm_prdis("NIC %p to bridge port %d", vpna, cand); /* bind the port to the bridge (virtual ports are not active) */ b->bdg_ports[cand] = vpna; vpna->na_bdg = b; @@ -526,9 +526,9 @@ netmap_get_bdg_na(struct nmreq_header *hdr, struct net hostna->bdg_port = cand2; hostna->na_bdg = b; b->bdg_active_ports++; - ND("host %p to bridge port %d", hostna, cand2); + nm_prdis("host %p to bridge port %d", hostna, cand2); } - ND("if %s refs %d", ifname, vpna->up.na_refcount); + nm_prdis("if %s refs %d", ifname, vpna->up.na_refcount); BDG_WUNLOCK(b); *na = &vpna->up; netmap_adapter_get(*na); @@ -920,8 +920,6 @@ netmap_vp_reg(struct netmap_adapter *na, int onoff) { struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter*)na; - enum txrx t; - int i; /* persistent ports may be put in netmap mode * before being attached to a bridge @@ -929,14 +927,7 @@ netmap_vp_reg(struct netmap_adapter *na, int onoff) if (vpna->na_bdg) BDG_WLOCK(vpna->na_bdg); if (onoff) { - for_rx_tx(t) { - for (i = 0; i < netmap_real_rings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_on(kring)) - kring->nr_mode = NKR_NETMAP_ON; - } - } + netmap_krings_mode_commit(na, onoff); if (na->active_fds == 0) na->na_flags |= NAF_NETMAP_ON; /* XXX on FreeBSD, persistent VALE ports should also @@ -945,14 +936,7 @@ netmap_vp_reg(struct netmap_adapter *na, int onoff) } else { if (na->active_fds == 0) na->na_flags &= ~NAF_NETMAP_ON; - for_rx_tx(t) { - for (i = 0; i < netmap_real_rings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_off(kring)) - kring->nr_mode = NKR_NETMAP_OFF; - } - } + netmap_krings_mode_commit(na, onoff); } if (vpna->na_bdg) BDG_WUNLOCK(vpna->na_bdg); @@ -1077,7 +1061,7 @@ netmap_bwrap_dtor(struct netmap_adapter *na) (bh ? bna->host.bdg_port : -1)); } - ND("na %p", na); + nm_prdis("na %p", na); na->ifp = NULL; bna->host.up.ifp = NULL; hwna->na_vp = bna->saved_na_vp; @@ -1182,7 +1166,7 @@ netmap_bwrap_reg(struct netmap_adapter *na, int onoff) int error, i; enum txrx t; - ND("%s %s", na->name, onoff ? "on" : "off"); + nm_prdis("%s %s", na->name, onoff ? "on" : "off"); if (onoff) { /* netmap_do_regif has been called on the bwrap na. @@ -1387,7 +1371,7 @@ netmap_bwrap_krings_delete_common(struct netmap_adapte enum txrx t; int i; - ND("%s", na->name); + nm_prdis("%s", na->name); /* decrement the usage counter for all the hwna krings */ for_rx_tx(t) { @@ -1414,7 +1398,7 @@ netmap_bwrap_notify(struct netmap_kring *kring, int fl struct netmap_kring *hw_kring; int error; - ND("%s: na %s hwna %s", + nm_prdis("%s: na %s hwna %s", (kring ? kring->name : "NULL!"), (na ? na->name : "NULL!"), (hwna ? hwna->name : "NULL!")); @@ -1426,7 +1410,7 @@ netmap_bwrap_notify(struct netmap_kring *kring, int fl /* first step: simulate a user wakeup on the rx ring */ netmap_vp_rxsync(kring, flags); - ND("%s[%d] PRE rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", + nm_prdis("%s[%d] PRE rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", na->name, ring_n, kring->nr_hwcur, kring->nr_hwtail, kring->nkr_hwlease, kring->rhead, kring->rcur, kring->rtail, @@ -1445,7 +1429,7 @@ netmap_bwrap_notify(struct netmap_kring *kring, int fl /* fourth step: the user goes to sleep again, causing another rxsync */ netmap_vp_rxsync(kring, flags); - ND("%s[%d] PST rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", + nm_prdis("%s[%d] PST rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", na->name, ring_n, kring->nr_hwcur, kring->nr_hwtail, kring->nkr_hwlease, kring->rhead, kring->rcur, kring->rtail, @@ -1595,7 +1579,7 @@ netmap_bwrap_attach_common(struct netmap_adapter *na, if (hwna->na_flags & NAF_MOREFRAG) na->na_flags |= NAF_MOREFRAG; - ND("%s<->%s txr %d txd %d rxr %d rxd %d", + nm_prdis("%s<->%s txr %d txd %d rxr %d rxd %d", na->name, ifp->if_xname, na->num_tx_rings, na->num_tx_desc, na->num_rx_rings, na->num_rx_desc); Modified: stable/11/sys/dev/netmap/netmap_freebsd.c ============================================================================== --- stable/11/sys/dev/netmap/netmap_freebsd.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap_freebsd.c Tue Feb 12 09:26:05 2019 (r344047) @@ -1310,8 +1310,6 @@ nm_os_kctx_destroy(struct nm_kctx *nmk) void nm_os_selwakeup(struct nm_selinfo *si) { - if (netmap_verbose) - nm_prinf("on knote %p", &si->si.si_note); selwakeuppri(&si->si, PI_NET); /* We use a non-zero hint to distinguish this notification call * from the call done in kqueue_scan(), which uses hint=0. Modified: stable/11/sys/dev/netmap/netmap_generic.c ============================================================================== --- stable/11/sys/dev/netmap/netmap_generic.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap_generic.c Tue Feb 12 09:26:05 2019 (r344047) @@ -235,18 +235,7 @@ generic_netmap_unregister(struct netmap_adapter *na) nm_os_catch_tx(gna, 0); } - for_each_rx_kring_h(r, kring, na) { - if (nm_kring_pending_off(kring)) { - nm_prinf("Emulated adapter: ring '%s' deactivated", kring->name); - kring->nr_mode = NKR_NETMAP_OFF; - } - } - for_each_tx_kring_h(r, kring, na) { - if (nm_kring_pending_off(kring)) { - kring->nr_mode = NKR_NETMAP_OFF; - nm_prinf("Emulated adapter: ring '%s' deactivated", kring->name); - } - } + netmap_krings_mode_commit(na, /*onoff=*/0); for_each_rx_kring(r, kring, na) { /* Free the mbufs still pending in the RX queues, @@ -369,19 +358,7 @@ generic_netmap_register(struct netmap_adapter *na, int } } - for_each_rx_kring_h(r, kring, na) { - if (nm_kring_pending_on(kring)) { - nm_prinf("Emulated adapter: ring '%s' activated", kring->name); - kring->nr_mode = NKR_NETMAP_ON; - } - - } - for_each_tx_kring_h(r, kring, na) { - if (nm_kring_pending_on(kring)) { - nm_prinf("Emulated adapter: ring '%s' activated", kring->name); - kring->nr_mode = NKR_NETMAP_ON; - } - } + netmap_krings_mode_commit(na, /*onoff=*/1); for_each_tx_kring(r, kring, na) { /* Initialize tx_pool and tx_event. */ Modified: stable/11/sys/dev/netmap/netmap_kern.h ============================================================================== --- stable/11/sys/dev/netmap/netmap_kern.h Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap_kern.h Tue Feb 12 09:26:05 2019 (r344047) @@ -266,7 +266,7 @@ typedef struct hrtimer{ __LINE__, __FUNCTION__, ##__VA_ARGS__); \ } while (0) -/* Disabled printf (used to be ND). */ +/* Disabled printf (used to be nm_prdis). */ #define nm_prdis(format, ...) /* Rate limited, lps indicates how many per second. */ @@ -281,11 +281,6 @@ typedef struct hrtimer{ nm_prinf(format, ##__VA_ARGS__); \ } while (0) -/* Old macros. */ -#define ND nm_prdis -#define D nm_prerr -#define RD nm_prlim - struct netmap_adapter; struct nm_bdg_fwd; struct nm_bridge; @@ -1144,7 +1139,7 @@ nm_kr_rxspace(struct netmap_kring *k) int space = k->nr_hwtail - k->nr_hwcur; if (space < 0) space += k->nkr_num_slots; - ND("preserving %d rx slots %d -> %d", space, k->nr_hwcur, k->nr_hwtail); + nm_prdis("preserving %d rx slots %d -> %d", space, k->nr_hwcur, k->nr_hwtail); return space; } @@ -1370,6 +1365,8 @@ nm_update_hostrings_mode(struct netmap_adapter *na) void nm_set_native_flags(struct netmap_adapter *); void nm_clear_native_flags(struct netmap_adapter *); +void netmap_krings_mode_commit(struct netmap_adapter *na, int onoff); + /* * nm_*sync_prologue() functions are used in ioctl/poll and ptnetmap * kthreads. @@ -1397,7 +1394,7 @@ uint32_t nm_rxsync_prologue(struct netmap_kring *, str #if 1 /* debug version */ #define NM_CHECK_ADDR_LEN(_na, _a, _l) do { \ if (_a == NETMAP_BUF_BASE(_na) || _l > NETMAP_BUF_SIZE(_na)) { \ - RD(5, "bad addr/len ring %d slot %d idx %d len %d", \ + nm_prlim(5, "bad addr/len ring %d slot %d idx %d len %d", \ kring->ring_id, nm_i, slot->buf_idx, len); \ if (_l > NETMAP_BUF_SIZE(_na)) \ _l = NETMAP_BUF_SIZE(_na); \ @@ -1559,7 +1556,7 @@ void __netmap_adapter_get(struct netmap_adapter *na); #define netmap_adapter_get(na) \ do { \ struct netmap_adapter *__na = na; \ - D("getting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ + nm_prinf("getting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ __netmap_adapter_get(__na); \ } while (0) @@ -1568,7 +1565,7 @@ int __netmap_adapter_put(struct netmap_adapter *na); #define netmap_adapter_put(na) \ ({ \ struct netmap_adapter *__na = na; \ - D("putting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ + nm_prinf("putting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ __netmap_adapter_put(__na); \ }) @@ -1730,7 +1727,7 @@ int nm_iommu_group_id(bus_dma_tag_t dev); addr, NETMAP_BUF_SIZE, DMA_TO_DEVICE); if (dma_mapping_error(&adapter->pdev->dev, buffer_info->dma)) { - D("dma mapping error"); + nm_prerr("dma mapping error"); /* goto dma_error; See e1000_put_txbuf() */ /* XXX reset */ } @@ -1989,6 +1986,12 @@ nm_si_user(struct netmap_priv_d *priv, enum txrx t) #ifdef WITH_PIPES int netmap_pipe_txsync(struct netmap_kring *txkring, int flags); int netmap_pipe_rxsync(struct netmap_kring *rxkring, int flags); +int netmap_pipe_krings_create_both(struct netmap_adapter *na, + struct netmap_adapter *ona); +void netmap_pipe_krings_delete_both(struct netmap_adapter *na, + struct netmap_adapter *ona); +int netmap_pipe_reg_both(struct netmap_adapter *na, + struct netmap_adapter *ona); #endif /* WITH_PIPES */ #ifdef WITH_MONITOR @@ -2323,7 +2326,7 @@ nm_os_get_mbuf(struct ifnet *ifp, int len) m->m_ext.ext_arg1 = m->m_ext.ext_buf; // XXX save m->m_ext.ext_free = (void *)void_mbuf_dtor; m->m_ext.ext_type = EXT_EXTREF; - ND(5, "create m %p refcnt %d", m, MBUF_REFCNT(m)); + nm_prdis(5, "create m %p refcnt %d", m, MBUF_REFCNT(m)); } return m; } Modified: stable/11/sys/dev/netmap/netmap_legacy.c ============================================================================== --- stable/11/sys/dev/netmap/netmap_legacy.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap_legacy.c Tue Feb 12 09:26:05 2019 (r344047) @@ -362,7 +362,14 @@ netmap_ioctl_legacy(struct netmap_priv_d *priv, u_long /* Request for the legacy control API. Convert it to a * NIOCCTRL request. */ struct nmreq *nmr = (struct nmreq *) data; - struct nmreq_header *hdr = nmreq_from_legacy(nmr, cmd); + struct nmreq_header *hdr; + + if (nmr->nr_version < 11) { + nm_prerr("Minimum supported API is 11 (requested %u)", + nmr->nr_version); + return EINVAL; + } + hdr = nmreq_from_legacy(nmr, cmd); if (hdr == NULL) { /* out of memory */ return ENOMEM; } @@ -387,14 +394,14 @@ netmap_ioctl_legacy(struct netmap_priv_d *priv, u_long #ifdef __FreeBSD__ case FIONBIO: case FIOASYNC: - ND("FIONBIO/FIOASYNC are no-ops"); + /* FIONBIO/FIOASYNC are no-ops. */ break; case BIOCIMMEDIATE: case BIOCGHDRCMPLT: case BIOCSHDRCMPLT: case BIOCSSEESENT: - D("ignore BIOCIMMEDIATE/BIOCSHDRCMPLT/BIOCSHDRCMPLT/BIOCSSEESENT"); + /* Ignore these commands. */ break; default: /* allow device-specific ioctls */ Modified: stable/11/sys/dev/netmap/netmap_mem2.c ============================================================================== --- stable/11/sys/dev/netmap/netmap_mem2.c Tue Feb 12 09:07:46 2019 (r344046) +++ stable/11/sys/dev/netmap/netmap_mem2.c Tue Feb 12 09:26:05 2019 (r344047) @@ -977,7 +977,7 @@ netmap_obj_offset(struct netmap_obj_pool *p, const voi continue; ofs = ofs + relofs; - ND("%s: return offset %d (cluster %d) for pointer %p", + nm_prdis("%s: return offset %d (cluster %d) for pointer %p", p->name, ofs, i, vaddr); return ofs; } @@ -1041,7 +1041,7 @@ netmap_obj_malloc(struct netmap_obj_pool *p, u_int len if (index) *index = i * 32 + j; } - ND("%s allocator: allocated object @ [%d][%d]: vaddr %p",p->name, i, j, vaddr); + nm_prdis("%s allocator: allocated object @ [%d][%d]: vaddr %p",p->name, i, j, vaddr); if (start) *start = i; @@ -1141,7 +1141,7 @@ netmap_extra_alloc(struct netmap_adapter *na, uint32_t *head = cur; /* restore */ break; } - ND(5, "allocate buffer %d -> %d", *head, cur); + nm_prdis(5, "allocate buffer %d -> %d", *head, cur); *p = cur; /* link to previous head */ } @@ -1158,7 +1158,7 @@ netmap_extra_free(struct netmap_adapter *na, uint32_t struct netmap_obj_pool *p = &nmd->pools[NETMAP_BUF_POOL]; uint32_t i, cur, *buf; - ND("freeing the extra list"); + nm_prdis("freeing the extra list"); for (i = 0; head >=2 && head < p->objtotal; i++) { cur = head; buf = lut[head].vaddr; @@ -1195,7 +1195,7 @@ netmap_new_bufs(struct netmap_mem_d *nmd, struct netma slot[i].ptr = 0; } - ND("%s: allocated %d buffers, %d available, first at %d", p->name, n, p->objfree, pos); + nm_prdis("%s: allocated %d buffers, %d available, first at %d", p->name, n, p->objfree, pos); return (0); cleanup: @@ -1243,7 +1243,7 @@ netmap_free_bufs(struct netmap_mem_d *nmd, struct netm if (slot[i].buf_idx > 1) netmap_free_buf(nmd, slot[i].buf_idx); } - ND("%s: released some buffers, available: %u", + nm_prdis("%s: released some buffers, available: %u", p->name, p->objfree); } @@ -1537,7 +1537,7 @@ netmap_mem_unmap(struct netmap_obj_pool *p, struct net (void)lut; nm_prerr("unsupported on Windows"); #else /* linux */ - ND("unmapping and freeing plut for %s", na->name); + nm_prdis("unmapping and freeing plut for %s", na->name); if (lut->plut == NULL) return 0; for (i = 0; i < lim; i += p->_clustentries) { @@ -1575,11 +1575,11 @@ netmap_mem_map(struct netmap_obj_pool *p, struct netma #else /* linux */ if (lut->plut != NULL) { - ND("plut already allocated for %s", na->name); + nm_prdis("plut already allocated for %s", na->name); return 0; } - ND("allocating physical lut for %s", na->name); + nm_prdis("allocating physical lut for %s", na->name); lut->plut = nm_alloc_plut(lim); if (lut->plut == NULL) { nm_prerr("Failed to allocate physical lut for %s", na->name); @@ -1773,7 +1773,7 @@ netmap_mem2_config(struct netmap_mem_d *nmd) if (!netmap_mem_params_changed(nmd->params)) goto out; - ND("reconfiguring"); + nm_prdis("reconfiguring"); if (nmd->flags & NETMAP_MEM_FINALIZED) { /* reset previous allocation */ @@ -1868,10 +1868,10 @@ netmap_free_rings(struct netmap_adapter *na) if (netmap_debug & NM_DEBUG_MEM) nm_prinf("deleting ring %s", kring->name); if (!(kring->nr_kflags & NKR_FAKERING)) { - ND("freeing bufs for %s", kring->name); + nm_prdis("freeing bufs for %s", kring->name); netmap_free_bufs(na->nm_mem, ring->slot, kring->nkr_num_slots); } else { - ND("NOT freeing bufs for %s", kring->name); + nm_prdis("NOT freeing bufs for %s", kring->name); } netmap_ring_free(na->nm_mem, ring); kring->ring = NULL; @@ -1916,7 +1916,7 @@ netmap_mem2_rings_create(struct netmap_adapter *na) nm_prerr("Cannot allocate %s_ring", nm_txrx2str(t)); goto cleanup; } - ND("txring at %p", ring); + nm_prdis("txring at %p", ring); kring->ring = ring; *(uint32_t *)(uintptr_t)&ring->num_slots = ndesc; *(int64_t *)(uintptr_t)&ring->buf_ofs = @@ -1930,9 +1930,9 @@ netmap_mem2_rings_create(struct netmap_adapter *na) ring->tail = kring->rtail; *(uint32_t *)(uintptr_t)&ring->nr_buf_size = netmap_mem_bufsize(na->nm_mem); - ND("%s h %d c %d t %d", kring->name, + nm_prdis("%s h %d c %d t %d", kring->name, ring->head, ring->cur, ring->tail); - ND("initializing slots for %s_ring", nm_txrx2str(t)); + nm_prdis("initializing slots for %s_ring", nm_txrx2str(t)); if (!(kring->nr_kflags & NKR_FAKERING)) { /* this is a real ring */ if (netmap_debug & NM_DEBUG_MEM) @@ -2304,19 +2304,19 @@ netmap_mem_ext_create(uint64_t usrptr, struct nmreq_po #if !defined(linux) && !defined(_WIN32) p->lut[j].paddr = vtophys(p->lut[j].vaddr); #endif - ND("%s %d at %p", p->name, j, p->lut[j].vaddr); + nm_prdis("%s %d at %p", p->name, j, p->lut[j].vaddr); noff = off + p->_objsize; if (noff < PAGE_SIZE) { off = noff; continue; } - ND("too big, recomputing offset..."); + nm_prdis("too big, recomputing offset..."); while (noff >= PAGE_SIZE) { char *old_clust = clust; noff -= PAGE_SIZE; clust = nm_os_extmem_nextpage(nme->os); nr_pages--; - ND("noff %zu page %p nr_pages %d", noff, + nm_prdis("noff %zu page %p nr_pages %d", noff, page_to_virt(*pages), nr_pages); if (noff > 0 && !nm_isset(p->invalid_bitmap, j) && (nr_pages == 0 || @@ -2326,7 +2326,7 @@ netmap_mem_ext_create(uint64_t usrptr, struct nmreq_po * drop this object * */ p->invalid_bitmap[ (j>>5) ] |= 1U << (j & 31U); - ND("non contiguous at off %zu, drop", noff); + nm_prdis("non contiguous at off %zu, drop", noff); } if (nr_pages == 0) break; @@ -2336,7 +2336,7 @@ netmap_mem_ext_create(uint64_t usrptr, struct nmreq_po p->objtotal = j; p->numclusters = p->objtotal; p->memtotal = j * p->_objsize; - ND("%d memtotal %u", j, p->memtotal); + nm_prdis("%d memtotal %u", j, p->memtotal); } netmap_mem_ext_register(nme); @@ -2440,7 +2440,7 @@ netmap_mem_pt_guest_ifp_del(struct netmap_mem_d *nmd, } else { ptnmd->pt_ifs = curr->next; } - D("removed (ifp=%p,nifp_offset=%u)", + nm_prinf("removed (ifp=%p,nifp_offset=%u)", curr->ifp, curr->nifp_offset); nm_os_free(curr); ret = 0; @@ -2496,7 +2496,7 @@ netmap_mem_pt_guest_ofstophys(struct netmap_mem_d *nmd vm_paddr_t paddr; /* if the offset is valid, just return csb->base_addr + off */ paddr = (vm_paddr_t)(ptnmd->nm_paddr + off); - ND("off %lx padr %lx", off, (unsigned long)paddr); + nm_prdis("off %lx padr %lx", off, (unsigned long)paddr); return paddr; } @@ -2526,7 +2526,7 @@ netmap_mem_pt_guest_finalize(struct netmap_mem_d *nmd) goto out; if (ptnmd->ptn_dev == NULL) { - D("ptnetmap memdev not attached"); + nm_prerr("ptnetmap memdev not attached"); error = ENOMEM; goto out; } @@ -2545,10 +2545,10 @@ netmap_mem_pt_guest_finalize(struct netmap_mem_d *nmd) /* allocate the lut */ if (ptnmd->buf_lut.lut == NULL) { - D("allocating lut"); + nm_prinf("allocating lut"); ptnmd->buf_lut.lut = nm_alloc_lut(nbuffers); if (ptnmd->buf_lut.lut == NULL) { - D("lut allocation failed"); + nm_prerr("lut allocation failed"); return ENOMEM; } } @@ -2613,11 +2613,11 @@ netmap_mem_pt_guest_delete(struct netmap_mem_d *nmd) if (nmd == NULL) return; if (netmap_verbose) - D("deleting %p", nmd); + nm_prinf("deleting %p", nmd); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Feb 12 09:31:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 46F1C14DFB30; Tue, 12 Feb 2019 09:31:22 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3029B835E5; Tue, 12 Feb 2019 09:31:20 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1C9VIad075164; Tue, 12 Feb 2019 01:31:18 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1C9VIfr075163; Tue, 12 Feb 2019 01:31:18 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902120931.x1C9VIfr075163@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net In-Reply-To: To: Patrick Kelsey Date: Tue, 12 Feb 2019 01:31:18 -0800 (PST) CC: John Baldwin , rgrimes@freebsd.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 3029B835E5 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.94)[-0.944,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 09:31:22 -0000 > On Mon, Feb 11, 2019 at 8:13 PM Patrick Kelsey wrote: > > > > > > > On Mon, Feb 11, 2019 at 8:08 PM John Baldwin wrote: > > > >> On 2/11/19 4:26 PM, Rodney W. Grimes wrote: > >> >> Author: pkelsey > >> >> Date: Mon Feb 11 23:24:39 2019 > >> >> New Revision: 344027 > >> >> URL: https://svnweb.freebsd.org/changeset/base/344027 > >> >> > >> >> Log: > >> >> MFC r343291: > >> >> Convert vmx(4) to being an iflib driver. > >> > > >> > I strongly object to this MFC, given the current number > >> > of 12.0 RELEASE related iflib problems we have it is > >> > foolish of us to iflib any more drivers in 12.0 > >> > >> This isn't the release branch though and presumably we have some time > >> before > >> 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 > >> we could always revert this commit then? > >> > >> I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in > >> stable/12 > >> yet or are we still waiting for them to land in HEAD and/or be merged? > >> > > > > iflib.c is currently the same between head and stable/12. I've found and > > fixed a number of iflib bugs by developing the iflib version of the vmx(4) > > driver, and it's also being fielded in a product. I'm also aware that not > > all current driver problems are necessarily iflib problems. I think we'd > > be better off letting this version of vmx(4) ride it out in stable/12 until > > such time as we discover an actual horror that we then feel we need to > > react to in some way other than just going ahead and fixing it. > > > > > John, > > Which is to say, I second your motion to proceed with normal process. As Point of order here, per the commiters guide you do not have the option of seconding any motion that should of never been made, per rule 6 a request by a Maintainer to revert your change has been made. There is no arguing on that point. > one would reasonably expect, this driver didn't fall out of the sky > yesterday. It was completed on 15 November 2018 and has been undergoing The code was committed to ^head 3 weeks ago, I dont care if it was written 10 years ago, for this type of change and giving the current issues that users of iflib based drivers are facing in stable/12 and releng/12.0 I want this code out of stable/12 until we address and verify that we have solved these other issues. > multi-party testing since then. I doubt it's bug free (nor was the last > one), but when bugs have turned up in the driver or in iflib at any point > along the way, convergence to root cause and a fix has been same-day, so I > don't think there's anything that walks like an emergency or quacks like an > emergency related to this commit. None of this is an emergency, it is a simple mater of vmxnet3 is working just fine, has been working just fine for a very long time, and is of know quality. What however is defanitly NOT an emergency is getting some new iflib'ed version of this driver in the stable branch when we already have issues in that branch with all the other iflibed drivers. I am now upgrading my strongly suggest you revert to a flat out revert this commit, with hat RE on. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Feb 12 10:17:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1E4FC14E11A3; Tue, 12 Feb 2019 10:17:22 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B48F4850C5; Tue, 12 Feb 2019 10:17:21 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A820DE8DF; Tue, 12 Feb 2019 10:17:21 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CAHLZE031794; Tue, 12 Feb 2019 10:17:21 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CAHLN0031793; Tue, 12 Feb 2019 10:17:21 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902121017.x1CAHLN0031793@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Tue, 12 Feb 2019 10:17:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344048 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 344048 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B48F4850C5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 10:17:22 -0000 Author: tuexen Date: Tue Feb 12 10:17:21 2019 New Revision: 344048 URL: https://svnweb.freebsd.org/changeset/base/344048 Log: Improve input validation for raw IPv4 socket using the IP_HDRINCL option. This issue was found by running syzkaller on OpenBSD. Greg Steuck made me aware that the problem might also exist on FreeBSD. Reported by: Greg Steuck MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D18834 Modified: head/sys/netinet/raw_ip.c Modified: head/sys/netinet/raw_ip.c ============================================================================== --- head/sys/netinet/raw_ip.c Tue Feb 12 09:26:05 2019 (r344047) +++ head/sys/netinet/raw_ip.c Tue Feb 12 10:17:21 2019 (r344048) @@ -454,6 +454,8 @@ rip_output(struct mbuf *m, struct socket *so, ...) u_long dst; int flags = ((so->so_options & SO_DONTROUTE) ? IP_ROUTETOIF : 0) | IP_ALLOWBROADCAST; + int cnt; + u_char opttype, optlen, *cp; va_start(ap, so); dst = va_arg(ap, u_long); @@ -527,6 +529,34 @@ rip_output(struct mbuf *m, struct socket *so, ...) INP_RUNLOCK(inp); m_freem(m); return (EINVAL); + } + /* + * Don't allow IP options which do not have the required + * structure as specified in section 3.1 of RFC 791 on + * pages 15-23. + */ + cp = (u_char *)(ip + 1); + cnt = (ip->ip_hl << 2) - sizeof (struct ip); + for (; cnt > 0; cnt -= optlen, cp += optlen) { + opttype = cp[IPOPT_OPTVAL]; + if (opttype == IPOPT_EOL) + break; + if (opttype == IPOPT_NOP) { + optlen = 1; + continue; + } + if (cnt < IPOPT_OLEN + sizeof(u_char)) { + INP_RUNLOCK(inp); + m_freem(m); + return (EINVAL); + } + optlen = cp[IPOPT_OLEN]; + if (optlen < IPOPT_OLEN + sizeof(u_char) || + optlen > cnt) { + INP_RUNLOCK(inp); + m_freem(m); + return (EINVAL); + } } /* * This doesn't allow application to specify ID of zero, From owner-svn-src-all@freebsd.org Tue Feb 12 11:29:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 62D3B14E347A; Tue, 12 Feb 2019 11:29:04 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 07E5287D6A; Tue, 12 Feb 2019 11:29:04 +0000 (UTC) (envelope-from luporl@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EB13BF506; Tue, 12 Feb 2019 11:29:03 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CBT3nA069236; Tue, 12 Feb 2019 11:29:03 GMT (envelope-from luporl@FreeBSD.org) Received: (from luporl@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CBT3Kq069235; Tue, 12 Feb 2019 11:29:03 GMT (envelope-from luporl@FreeBSD.org) Message-Id: <201902121129.x1CBT3Kq069235@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: luporl set sender to luporl@FreeBSD.org using -f From: Leandro Lupori Date: Tue, 12 Feb 2019 11:29:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344049 - head/sys/powerpc/aim X-SVN-Group: head X-SVN-Commit-Author: luporl X-SVN-Commit-Paths: head/sys/powerpc/aim X-SVN-Commit-Revision: 344049 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 07E5287D6A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 11:29:04 -0000 Author: luporl Date: Tue Feb 12 11:29:03 2019 New Revision: 344049 URL: https://svnweb.freebsd.org/changeset/base/344049 Log: [ppc64] prevent infinite loop on icache sync At moea64_sync_icache(), when the 'va' argument has page size alignment, round_page() will return the same value as 'va'. This would cause 'len' to be 0 and thus an infinite loop. With this change, 'lim' will always point to the next page boundary. This issue occurred especially during debugging sessions, when a breakpoint was placed on an exact page-aligned offset, for instance. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D19149 Modified: head/sys/powerpc/aim/mmu_oea64.c Modified: head/sys/powerpc/aim/mmu_oea64.c ============================================================================== --- head/sys/powerpc/aim/mmu_oea64.c Tue Feb 12 10:17:21 2019 (r344048) +++ head/sys/powerpc/aim/mmu_oea64.c Tue Feb 12 11:29:03 2019 (r344049) @@ -2807,7 +2807,7 @@ moea64_sync_icache(mmu_t mmu, pmap_t pm, vm_offset_t v PMAP_LOCK(pm); while (sz > 0) { - lim = round_page(va); + lim = round_page(va+1); len = MIN(lim - va, sz); pvo = moea64_pvo_find_va(pm, va & ~ADDR_POFF); if (pvo != NULL && !(pvo->pvo_pte.pa & LPTE_I)) { From owner-svn-src-all@freebsd.org Tue Feb 12 13:01:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D906A14E5F2B; Tue, 12 Feb 2019 13:01:55 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7C0328B095; Tue, 12 Feb 2019 13:01:55 +0000 (UTC) (envelope-from trasz@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 71978184C3; Tue, 12 Feb 2019 13:01:55 +0000 (UTC) (envelope-from trasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CD1trQ020356; Tue, 12 Feb 2019 13:01:55 GMT (envelope-from trasz@FreeBSD.org) Received: (from trasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CD1thk020355; Tue, 12 Feb 2019 13:01:55 GMT (envelope-from trasz@FreeBSD.org) Message-Id: <201902121301.x1CD1thk020355@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: trasz set sender to trasz@FreeBSD.org using -f From: Edward Tomasz Napierala Date: Tue, 12 Feb 2019 13:01:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344050 - head/share/man/man7 X-SVN-Group: head X-SVN-Commit-Author: trasz X-SVN-Commit-Paths: head/share/man/man7 X-SVN-Commit-Revision: 344050 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7C0328B095 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 13:01:56 -0000 Author: trasz Date: Tue Feb 12 13:01:55 2019 New Revision: 344050 URL: https://svnweb.freebsd.org/changeset/base/344050 Log: Fix markup - use .Pa for the directory component, not .Fa. Reported by: 0mp MFC after: 2 weeks Sponsored by: DARPA, AFRL Modified: head/share/man/man7/ports.7 Modified: head/share/man/man7/ports.7 ============================================================================== --- head/share/man/man7/ports.7 Tue Feb 12 11:29:03 2019 (r344049) +++ head/share/man/man7/ports.7 Tue Feb 12 13:01:55 2019 (r344050) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 11, 2019 +.Dd February 12, 2019 .Dt PORTS 7 .Os .Sh NAME @@ -79,7 +79,7 @@ or from Subversion repository at: The .Em quarterly branches can be found in Subversion in the -.Fa branches/ +.Pa branches/ subdirectory, eg: .Pp .Lk https://svn.FreeBSD.org/ports/branches/2019Q1 From owner-svn-src-all@freebsd.org Tue Feb 12 13:58:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 47DB714E7646; Tue, 12 Feb 2019 13:58:18 +0000 (UTC) (envelope-from marck@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E09728D06C; Tue, 12 Feb 2019 13:58:17 +0000 (UTC) (envelope-from marck@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CDBBC18E45; Tue, 12 Feb 2019 13:58:17 +0000 (UTC) (envelope-from marck@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CDwHRO047877; Tue, 12 Feb 2019 13:58:17 GMT (envelope-from marck@FreeBSD.org) Received: (from marck@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CDwGf9047873; Tue, 12 Feb 2019 13:58:16 GMT (envelope-from marck@FreeBSD.org) Message-Id: <201902121358.x1CDwGf9047873@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marck set sender to marck@FreeBSD.org using -f From: Dmitry Morozovsky Date: Tue, 12 Feb 2019 13:58:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344051 - in stable/12/sbin: newfs tunefs X-SVN-Group: stable-12 X-SVN-Commit-Author: marck X-SVN-Commit-Paths: in stable/12/sbin: newfs tunefs X-SVN-Commit-Revision: 344051 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E09728D06C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 13:58:18 -0000 Author: marck (doc committer) Date: Tue Feb 12 13:58:16 2019 New Revision: 344051 URL: https://svnweb.freebsd.org/changeset/base/344051 Log: MFC 343548: Allow dashes as a valid character in UFS labels. Modified: stable/12/sbin/newfs/newfs.8 stable/12/sbin/newfs/newfs.c stable/12/sbin/tunefs/tunefs.8 stable/12/sbin/tunefs/tunefs.c Modified: stable/12/sbin/newfs/newfs.8 ============================================================================== --- stable/12/sbin/newfs/newfs.8 Tue Feb 12 13:01:55 2019 (r344050) +++ stable/12/sbin/newfs/newfs.8 Tue Feb 12 13:58:16 2019 (r344051) @@ -28,7 +28,7 @@ .\" @(#)newfs.8 8.6 (Berkeley) 5/3/95 .\" $FreeBSD$ .\" -.Dd July 7, 2017 +.Dd January 29, 2019 .Dt NEWFS 8 .Os .Sh NAME @@ -89,7 +89,7 @@ See for details. .It Fl L Ar volname Add a volume label to the new file system. -Legal characters are alphanumerics and underscores. +Legal characters are alphanumerics, dashes, and underscores. .It Fl N Cause the file system parameters to be printed out without really creating the file system. Modified: stable/12/sbin/newfs/newfs.c ============================================================================== --- stable/12/sbin/newfs/newfs.c Tue Feb 12 13:01:55 2019 (r344050) +++ stable/12/sbin/newfs/newfs.c Tue Feb 12 13:58:16 2019 (r344051) @@ -153,10 +153,10 @@ main(int argc, char *argv[]) volumelabel = optarg; i = -1; while (isalnum(volumelabel[++i]) || - volumelabel[i] == '_'); + volumelabel[i] == '_' || volumelabel[i] == '-'); if (volumelabel[i] != '\0') { errx(1, "bad volume label. Valid characters " - "are alphanumerics and underscores."); + "are alphanumerics, dashes, and underscores."); } if (strlen(volumelabel) >= MAXVOLLEN) { errx(1, "bad volume label. Length is longer than %d.", Modified: stable/12/sbin/tunefs/tunefs.8 ============================================================================== --- stable/12/sbin/tunefs/tunefs.8 Tue Feb 12 13:01:55 2019 (r344050) +++ stable/12/sbin/tunefs/tunefs.8 Tue Feb 12 13:58:16 2019 (r344051) @@ -28,7 +28,7 @@ .\" @(#)tunefs.8 8.2 (Berkeley) 12/11/93 .\" $FreeBSD$ .\" -.Dd April 19, 2016 +.Dd January 29, 2019 .Dt TUNEFS 8 .Os .Sh NAME @@ -112,7 +112,7 @@ By default sets it to half of the space reserved to minfree. .It Fl L Ar volname Add/modify an optional file system volume label. -Legal characters are alphanumerics and underscores. +Legal characters are alphanumerics, dashes, and underscores. .It Fl l Cm enable | disable Turn on/off MAC multilabel flag. .It Fl m Ar minfree Modified: stable/12/sbin/tunefs/tunefs.c ============================================================================== --- stable/12/sbin/tunefs/tunefs.c Tue Feb 12 13:01:55 2019 (r344050) +++ stable/12/sbin/tunefs/tunefs.c Tue Feb 12 13:58:16 2019 (r344051) @@ -189,10 +189,13 @@ main(int argc, char *argv[]) name = "volume label"; Lvalue = optarg; i = -1; - while (isalnum(Lvalue[++i]) || Lvalue[i] == '_'); + while (isalnum(Lvalue[++i]) || Lvalue[i] == '_' || + Lvalue[i] == '-') + ; if (Lvalue[i] != '\0') { errx(10, "bad %s. Valid characters are " - "alphanumerics and underscores.", name); + "alphanumerics, dashes, and underscores.", + name); } if (strlen(Lvalue) >= MAXVOLLEN) { errx(10, "bad %s. Length is longer than %d.", From owner-svn-src-all@freebsd.org Tue Feb 12 14:03:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7EB9D14E7958; Tue, 12 Feb 2019 14:03:41 +0000 (UTC) (envelope-from marck@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 200C98D612; Tue, 12 Feb 2019 14:03:41 +0000 (UTC) (envelope-from marck@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0BE8218FFA; Tue, 12 Feb 2019 14:03:41 +0000 (UTC) (envelope-from marck@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CE3ePE052694; Tue, 12 Feb 2019 14:03:40 GMT (envelope-from marck@FreeBSD.org) Received: (from marck@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CE3efp052690; Tue, 12 Feb 2019 14:03:40 GMT (envelope-from marck@FreeBSD.org) Message-Id: <201902121403.x1CE3efp052690@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marck set sender to marck@FreeBSD.org using -f From: Dmitry Morozovsky Date: Tue, 12 Feb 2019 14:03:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344052 - in stable/11/sbin: newfs tunefs X-SVN-Group: stable-11 X-SVN-Commit-Author: marck X-SVN-Commit-Paths: in stable/11/sbin: newfs tunefs X-SVN-Commit-Revision: 344052 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 200C98D612 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:03:41 -0000 Author: marck (doc committer) Date: Tue Feb 12 14:03:39 2019 New Revision: 344052 URL: https://svnweb.freebsd.org/changeset/base/344052 Log: MFC 343548: Allow dashes as a valid character in UFS labels. Modified: stable/11/sbin/newfs/newfs.8 stable/11/sbin/newfs/newfs.c stable/11/sbin/tunefs/tunefs.8 stable/11/sbin/tunefs/tunefs.c Modified: stable/11/sbin/newfs/newfs.8 ============================================================================== --- stable/11/sbin/newfs/newfs.8 Tue Feb 12 13:58:16 2019 (r344051) +++ stable/11/sbin/newfs/newfs.8 Tue Feb 12 14:03:39 2019 (r344052) @@ -28,7 +28,7 @@ .\" @(#)newfs.8 8.6 (Berkeley) 5/3/95 .\" $FreeBSD$ .\" -.Dd July 15, 2015 +.Dd January 29, 2019 .Dt NEWFS 8 .Os .Sh NAME @@ -91,7 +91,7 @@ See for details. .It Fl L Ar volname Add a volume label to the new file system. -Legal characters are alphanumerics and underscores. +Legal characters are alphanumerics, dashes, and underscores. .It Fl N Cause the file system parameters to be printed out without really creating the file system. Modified: stable/11/sbin/newfs/newfs.c ============================================================================== --- stable/11/sbin/newfs/newfs.c Tue Feb 12 13:58:16 2019 (r344051) +++ stable/11/sbin/newfs/newfs.c Tue Feb 12 14:03:39 2019 (r344052) @@ -151,10 +151,10 @@ main(int argc, char *argv[]) volumelabel = optarg; i = -1; while (isalnum(volumelabel[++i]) || - volumelabel[i] == '_'); + volumelabel[i] == '_' || volumelabel[i] == '-'); if (volumelabel[i] != '\0') { errx(1, "bad volume label. Valid characters " - "are alphanumerics and underscores."); + "are alphanumerics, dashes, and underscores."); } if (strlen(volumelabel) >= MAXVOLLEN) { errx(1, "bad volume label. Length is longer than %d.", Modified: stable/11/sbin/tunefs/tunefs.8 ============================================================================== --- stable/11/sbin/tunefs/tunefs.8 Tue Feb 12 13:58:16 2019 (r344051) +++ stable/11/sbin/tunefs/tunefs.8 Tue Feb 12 14:03:39 2019 (r344052) @@ -28,7 +28,7 @@ .\" @(#)tunefs.8 8.2 (Berkeley) 12/11/93 .\" $FreeBSD$ .\" -.Dd April 19, 2016 +.Dd January 29, 2019 .Dt TUNEFS 8 .Os .Sh NAME @@ -112,7 +112,7 @@ By default sets it to half of the space reserved to minfree. .It Fl L Ar volname Add/modify an optional file system volume label. -Legal characters are alphanumerics and underscores. +Legal characters are alphanumerics, dashes, and underscores. .It Fl l Cm enable | disable Turn on/off MAC multilabel flag. .It Fl m Ar minfree Modified: stable/11/sbin/tunefs/tunefs.c ============================================================================== --- stable/11/sbin/tunefs/tunefs.c Tue Feb 12 13:58:16 2019 (r344051) +++ stable/11/sbin/tunefs/tunefs.c Tue Feb 12 14:03:39 2019 (r344052) @@ -184,10 +184,13 @@ main(int argc, char *argv[]) name = "volume label"; Lvalue = optarg; i = -1; - while (isalnum(Lvalue[++i]) || Lvalue[i] == '_'); + while (isalnum(Lvalue[++i]) || Lvalue[i] == '_' || + Lvalue[i] == '-') + ; if (Lvalue[i] != '\0') { errx(10, "bad %s. Valid characters are " - "alphanumerics and underscores.", name); + "alphanumerics, dashes, and underscores.", + name); } if (strlen(Lvalue) >= MAXVOLLEN) { errx(10, "bad %s. Length is longer than %d.", From owner-svn-src-all@freebsd.org Tue Feb 12 14:18:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 65B2E14E7E98; Tue, 12 Feb 2019 14:18:20 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 8754C8DD91; Tue, 12 Feb 2019 14:18:18 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id tYsygA1Bx8uQmtYt0gn2L0; Tue, 12 Feb 2019 07:18:11 -0700 X-Authority-Analysis: v=2.3 cv=XKpOtjpE c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=kj9zAlcOel0A:10 a=CFTnQlWoA9kA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=yA2LqZ_Xy9GID_ZgA3sA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 400D41701; Tue, 12 Feb 2019 06:18:08 -0800 (PST) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x1CEI6rS070917; Tue, 12 Feb 2019 06:18:06 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x1CEI6ir070913; Tue, 12 Feb 2019 06:18:06 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201902121418.x1CEI6ir070913@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Dmitry Morozovsky cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs In-Reply-To: Message from Dmitry Morozovsky of "Tue, 12 Feb 2019 13:58:16 +0000." <201902121358.x1CDwGf9047873@repo.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 12 Feb 2019 06:18:06 -0800 X-CMAE-Envelope: MS4wfF06a7baGd0NXVaWMd1Pbv5VlbSRkCm8kj4MnOc+2asFhuzN5tkTosAU10MlsX45MpH4ulee5F+iAHlOtv0KExyhJU5l213eit14myeG6x5DQHfLqOTd T0Z8SV7Cl5u/KVehNsqUC5UT34rlHMGpVEOjybp85D45Sm7c4m3kiAHG2Hc3ZiTBi0ExUL2SM02jWWYUXxNDtERk2cPUV9q4P2pmw9dwE/5UDRcmj1WIQz1U +diiaI1Tk79fCKbO2zJlSSkvjR9NZJj2uZ2aqGwM3ah1e6iyXUQvSY/nm/NFYRu8lgOe5pner2ZiL87rOX++1GsxFyHoz01Il3ystnEb81I= X-Rspamd-Queue-Id: 8754C8DD91 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.53 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; RCPT_COUNT_FIVE(0.00)[5]; REPLYTO_EQ_FROM(0.00)[]; IP_SCORE(-1.85)[ip: (-4.66), ipnet: 64.59.128.0/20(-2.54), asn: 6327(-1.97), country: CA(-0.09)]; MX_GOOD(-0.01)[spqr.komquats.com]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; R_SPF_NA(0.00)[]; RCVD_IN_DNSWL_LOW(-0.10)[9.134.59.64.list.dnswl.org : 127.0.5.1]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:18:20 -0000 In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry Morozovsky wr ites: > Author: marck (doc committer) > Date: Tue Feb 12 13:58:16 2019 > New Revision: 344051 > URL: https://svnweb.freebsd.org/changeset/base/344051 > > Log: > MFC 343548: > > Allow dashes as a valid character in UFS labels. Approved by: Whom? -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Tue Feb 12 14:18:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B209A14E7EB4; Tue, 12 Feb 2019 14:18:22 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 875E48DD92; Tue, 12 Feb 2019 14:18:18 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id tYsygA1Bw8uQmtYt0gn2Ky; Tue, 12 Feb 2019 07:18:11 -0700 X-Authority-Analysis: v=2.3 cv=XKpOtjpE c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=kj9zAlcOel0A:10 a=CFTnQlWoA9kA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=KhrHtb6sz5ZnzwM1b6cA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 403341702; Tue, 12 Feb 2019 06:18:08 -0800 (PST) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x1CEI77m070971; Tue, 12 Feb 2019 06:18:07 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x1CEI7js070949; Tue, 12 Feb 2019 06:18:07 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201902121418.x1CEI7js070949@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Dmitry Morozovsky cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r344052 - in stable/11/sbin: newfs tunefs In-Reply-To: Message from Dmitry Morozovsky of "Tue, 12 Feb 2019 14:03:40 +0000." <201902121403.x1CE3efp052690@repo.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 12 Feb 2019 06:18:07 -0800 X-CMAE-Envelope: MS4wfF06a7baGd0NXVaWMd1Pbv5VlbSRkCm8kj4MnOc+2asFhuzN5tkTosAU10MlsX45MpH4ulee5F+iAHlOtv0KExyhJU5l213eit14myeG6x5DQHfLqOTd T0Z8SV7Cl5u/KVehNsqUC5UT34rlHMGpVEOjybp85D45Sm7c4m3kiAHG2Hc3ZiTBi0ExUL2SM02jWWYUXxNDtERk2cPUV9q4P2pmw9dwE/5UDRcmj1WIQz1U +diiaI1Tk79fCKbO2zJlSXzzCytgMAX/o3LOJ+bnEk/C4ijjQJmSP3eAmEEyZkxY+5zbaLL9xYceeRYVXzOMmWqoDjWD7opbleeyU7H2HXM= X-Rspamd-Queue-Id: 875E48DD92 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.51 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; RCVD_IN_DNSWL_LOW(-0.10)[9.134.59.64.list.dnswl.org : 127.0.5.1]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; RCPT_COUNT_FIVE(0.00)[5]; REPLYTO_EQ_FROM(0.00)[]; IP_SCORE(-1.83)[ip: (-4.58), ipnet: 64.59.128.0/20(-2.53), asn: 6327(-1.97), country: CA(-0.09)]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:18:22 -0000 In message <201902121403.x1CE3efp052690@repo.freebsd.org>, Dmitry Morozovsky wr ites: > Author: marck (doc committer) > Date: Tue Feb 12 14:03:39 2019 > New Revision: 344052 > URL: https://svnweb.freebsd.org/changeset/base/344052 > > Log: > MFC 343548: > > Allow dashes as a valid character in UFS labels. Approved by: Whom? -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Tue Feb 12 14:54:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1DC6414E9156 for ; Tue, 12 Feb 2019 14:54:15 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x72a.google.com (mail-qk1-x72a.google.com [IPv6:2607:f8b0:4864:20::72a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A2ED48F61D for ; Tue, 12 Feb 2019 14:54:14 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x72a.google.com with SMTP id i5so4118214qkd.13 for ; Tue, 12 Feb 2019 06:54:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=SgxzYxKxKwP4S7EE04QDejnQw13c+D7LTpndF0ZYXl4=; b=Hzv3o5x88GfZoiy7MHwK9HmkyfCjfQx/H/lb/IG/E1EohZbzUVv3FoCJRhJXmdL+b/ 9jPku4eZ6w9BMGcqIgQjTG/L4TTpxgLSLIjDIWeLxxy3npwqhtq34ogk/AK9o3fIJ+f3 ZNZLRnx1UGitvzWLztg1bQz1dwon49gEooSoAdGh0R6dBXUsrZlSOWQrdFs4TN70vIib 9SO2frH2d5Gaomgd3JQ1js5Ilf6zCpHk8FImol519v92V4Nv1DfyY1bzpZ0ad8U7CQ5k hJbyCQ1k+Sa8WwmDRVRKxYcC/s+BhBGuu2Sr5QmMaGciaN4QLYs0B1+mOa53cVrFSxFJ cVOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=SgxzYxKxKwP4S7EE04QDejnQw13c+D7LTpndF0ZYXl4=; b=TMq3bJc1OF1bLibWlg4pFg9CHoQf11RQ1IWGfOi8olOeEaIjIS0/IJ7cW4mQZcHRg7 q98x6ZVc1CLTWkC14Cr/fgMaqO552kblwJGFzd6ZR+Or2tyJT5daWSqA+lgbVTMsm0dr 9+2ZXxT2QAUqykttoQRcCUUCGEggjO4d9QqizE68wk+jXg1vxCvJw+xyWA07dlqmlfJM 8CUwrrwdyvXppE9KhNd6wL8uGlZwWwyKPy68bGL3LYr1S9RD1uk81A5MQTkhuVTXTp2o 0VzEUe+632RDsiQAIjBg7+IrVtdZw56U/BbdHNydtR6IsEU0yUdDbLM/W72XFJHuO3OB +2cw== X-Gm-Message-State: AHQUAuabBlOgW9Dg0F3YUrpqxWd3gjTncsJQ/jdIfqb65D8tkpsbjcBI o3M1JHZctUk6INoHzuE8mSUnctQCtMEM5t3hRELi8T9r X-Google-Smtp-Source: AHgI3IaVSlHLU48Y7CgzeCQyhalb0FD0bVHJsW6GqXz6Sg1sMTtskV0RxhQfOI9AWOJ5jA+7nsBktL4Q/xIE/TXNWWQ= X-Received: by 2002:a37:a704:: with SMTP id q4mr2977784qke.245.1549983253693; Tue, 12 Feb 2019 06:54:13 -0800 (PST) MIME-Version: 1.0 References: <201902121358.x1CDwGf9047873@repo.freebsd.org> <201902121418.x1CEI6ir070913@slippy.cwsent.com> In-Reply-To: <201902121418.x1CEI6ir070913@slippy.cwsent.com> From: Warner Losh Date: Tue, 12 Feb 2019 07:54:02 -0700 Message-ID: Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs To: Cy Schubert Cc: Dmitry Morozovsky , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org X-Rspamd-Queue-Id: A2ED48F61D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:54:15 -0000 On Tue, Feb 12, 2019 at 7:18 AM Cy Schubert wrote: > In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry > Morozovsky wr > ites: > > Author: marck (doc committer) > > Date: Tue Feb 12 13:58:16 2019 > > New Revision: 344051 > > URL: https://svnweb.freebsd.org/changeset/base/344051 > > > > Log: > > MFC 343548: > > > > Allow dashes as a valid character in UFS labels. > > Approved by: Whom? > Kirk McKusick and I both approved the change in -current. This change is fine in -stable. I certainly approve it after the fact. Warner From owner-svn-src-all@freebsd.org Tue Feb 12 14:54:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DAF2F14E91CD; Tue, 12 Feb 2019 14:54:54 +0000 (UTC) (envelope-from srs0=cpp7=qt=vega.codepro.be=kp@codepro.be) Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.codepro.be", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7C78B8F78E; Tue, 12 Feb 2019 14:54:54 +0000 (UTC) (envelope-from srs0=cpp7=qt=vega.codepro.be=kp@codepro.be) Received: from vega.codepro.be (unknown [172.16.1.3]) by venus.codepro.be (Postfix) with ESMTP id 54F9A1023D; Tue, 12 Feb 2019 15:54:51 +0100 (CET) Received: by vega.codepro.be (Postfix, from userid 1001) id 516832C0B8; Tue, 12 Feb 2019 15:54:51 +0100 (CET) Date: Tue, 12 Feb 2019 15:54:51 +0100 From: Kristof Provost To: Cy Schubert Cc: Dmitry Morozovsky , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r344052 - in stable/11/sbin: newfs tunefs Message-ID: <20190212145451.GI8450@vega.codepro.be> References: <201902121403.x1CE3efp052690@repo.freebsd.org> <201902121418.x1CEI7js070949@slippy.cwsent.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <201902121418.x1CEI7js070949@slippy.cwsent.com> X-Checked-By-NSA: Probably User-Agent: Mutt/1.11.2 (2019-01-07) X-Rspamd-Queue-Id: 7C78B8F78E X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.948,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:54:55 -0000 On 2019-02-12 06:18:07 (-0800), Cy Schubert wrote: > In message <201902121403.x1CE3efp052690@repo.freebsd.org>, Dmitry > Morozovsky wr > ites: > > Author: marck (doc committer) > > Date: Tue Feb 12 14:03:39 2019 > > New Revision: 344052 > > URL: https://svnweb.freebsd.org/changeset/base/344052 > > > > Log: > > MFC 343548: > > > > Allow dashes as a valid character in UFS labels. > > Approved by: Whom? > Doc committers do not need approval to change base system documentation. doc committers may commit documentation changes to src files, such as man pages, READMEs, fortune databases, calendar files, and comment fixes without approval from a src committer, subject to the normal care and tending of commits. Source: https://www.freebsd.org/doc/en/articles/committers-guide/committer.types.html Regards, Kristof From owner-svn-src-all@freebsd.org Tue Feb 12 14:55:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 55EE814E9273; Tue, 12 Feb 2019 14:55:42 +0000 (UTC) (envelope-from srs0=cpp7=qt=vega.codepro.be=kp@codepro.be) Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.codepro.be", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EA6D98F916; Tue, 12 Feb 2019 14:55:41 +0000 (UTC) (envelope-from srs0=cpp7=qt=vega.codepro.be=kp@codepro.be) Received: from vega.codepro.be (unknown [172.16.1.3]) by venus.codepro.be (Postfix) with ESMTP id 101361024A; Tue, 12 Feb 2019 15:55:41 +0100 (CET) Received: by vega.codepro.be (Postfix, from userid 1001) id 0D6622C0E7; Tue, 12 Feb 2019 15:55:41 +0100 (CET) Date: Tue, 12 Feb 2019 15:55:41 +0100 From: Kristof Provost To: Cy Schubert Cc: Dmitry Morozovsky , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r344052 - in stable/11/sbin: newfs tunefs Message-ID: <20190212145540.GJ8450@vega.codepro.be> References: <201902121403.x1CE3efp052690@repo.freebsd.org> <201902121418.x1CEI7js070949@slippy.cwsent.com> <20190212145451.GI8450@vega.codepro.be> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20190212145451.GI8450@vega.codepro.be> X-Checked-By-NSA: Probably User-Agent: Mutt/1.11.2 (2019-01-07) X-Rspamd-Queue-Id: EA6D98F916 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:55:42 -0000 On 2019-02-12 15:54:51 (+0100), Kristof Provost wrote: > On 2019-02-12 06:18:07 (-0800), Cy Schubert wrote: > > In message <201902121403.x1CE3efp052690@repo.freebsd.org>, Dmitry > > Morozovsky wr > > ites: > > > Author: marck (doc committer) > > > Date: Tue Feb 12 14:03:39 2019 > > > New Revision: 344052 > > > URL: https://svnweb.freebsd.org/changeset/base/344052 > > > > > > Log: > > > MFC 343548: > > > > > > Allow dashes as a valid character in UFS labels. > > > > Approved by: Whom? > > > Doc committers do not need approval to change base system documentation. > > doc committers may commit documentation changes to src files, such as > man pages, READMEs, fortune databases, calendar files, and comment fixes > without approval from a src committer, subject to the normal care and > tending of commits. > > Source: > > https://www.freebsd.org/doc/en/articles/committers-guide/committer.types.html > Sigh, but perhaps I should have read the entire diff. Regards, Kristof From owner-svn-src-all@freebsd.org Tue Feb 12 14:56:28 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 39E1714E9311 for ; Tue, 12 Feb 2019 14:56:28 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x829.google.com (mail-qt1-x829.google.com [IPv6:2607:f8b0:4864:20::829]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BB4FC8FA74 for ; Tue, 12 Feb 2019 14:56:27 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x829.google.com with SMTP id v10so3204579qtp.8 for ; Tue, 12 Feb 2019 06:56:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=mCFAx/V2Hs2b9FT/zlPularPI6MNfHUzi9T+nKVgh3k=; b=GuGpR1sH7y2kz1HfDEsW2D2jRocVx9EQC7deopshrD+G2b54n8deUq54ZOBo6lDzi/ 6UPdX7lI+J9jZXy5Gnlb2rn8NqjHsCZMeQfwcJmbrY27loedzhd3MR/qj3gnGpp41EIz AnWL623kuTnz6yAWIk3n2XU6UTssOktTJbv3ZavK/hbSQJKniKBRzwa4mzvqUArZseHx 62NoOe5JCpcTJXFmxuVSxwTfNkxz7CHp523TRg/5xITX3EV2o/XSHeyJEw1UEFblCoO5 xifLkCz000KgR2AyMHVZFf4Ma3VHzoRd/bttmJr/doK31RY9mQC42Lctb84/nosjCEM3 klEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=mCFAx/V2Hs2b9FT/zlPularPI6MNfHUzi9T+nKVgh3k=; b=iS45320Vn8gg6XR+/KQm0yvYuX6yHZ66aIwSUphyGVlyslmDLNQJIK5mk9ra4b+OQA VUzKPe2deBxSNomlQYzlGgNVCLkZQ1gAvRhKI4zCb8VIAiIIwOq+KXABfiAnGbyRxahf GW92Gh2Db/jVskWxv8yTiKu/qCLbbRoGyg5UQEZtilzclSYg8nRbmc3Ycj8aU3YPfj32 2eMe5B4YnFZQGTXkRMC0ORR+NlAD+U1WPOVMQt0W0Ny1RaKf4BnDMoCz1xWrjtv5AjmF wVsW+qls6DHUEsUHKvQFh9th0JE448iaXbQReJNSJNs9eyvd57LDtQDcx3ns2e4ewAr1 guMg== X-Gm-Message-State: AHQUAubSoJiPGJdoxjBy30F6dg5zw1YvEa/DC7jjA2hGrCvXMQqWxrhz G3KHQnXsd/qFjLTa1NrNwted4j5mH78XEpwWZS0P/Q== X-Google-Smtp-Source: AHgI3IYtT2HkP/md4Df7qiSWx8SkhJi+KtMfaOLaGilZzSeRDyWnTte9LOtzPeRx7vbavCqEJYy6JYlNJXQSiwmlLBk= X-Received: by 2002:ac8:3974:: with SMTP id t49mr3191493qtb.118.1549983387078; Tue, 12 Feb 2019 06:56:27 -0800 (PST) MIME-Version: 1.0 References: <201902121403.x1CE3efp052690@repo.freebsd.org> <201902121418.x1CEI7js070949@slippy.cwsent.com> <20190212145451.GI8450@vega.codepro.be> In-Reply-To: <20190212145451.GI8450@vega.codepro.be> From: Warner Losh Date: Tue, 12 Feb 2019 07:56:16 -0700 Message-ID: Subject: Re: svn commit: r344052 - in stable/11/sbin: newfs tunefs To: Kristof Provost Cc: Cy Schubert , Dmitry Morozovsky , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org X-Rspamd-Queue-Id: BB4FC8FA74 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 14:56:28 -0000 On Tue, Feb 12, 2019 at 7:55 AM Kristof Provost wrote: > On 2019-02-12 06:18:07 (-0800), Cy Schubert > wrote: > > In message <201902121403.x1CE3efp052690@repo.freebsd.org>, Dmitry > > Morozovsky wr > > ites: > > > Author: marck (doc committer) > > > Date: Tue Feb 12 14:03:39 2019 > > > New Revision: 344052 > > > URL: https://svnweb.freebsd.org/changeset/base/344052 > > > > > > Log: > > > MFC 343548: > > > > > > Allow dashes as a valid character in UFS labels. > > > > Approved by: Whom? > > > Doc committers do not need approval to change base system documentation. > > doc committers may commit documentation changes to src files, such as > man pages, READMEs, fortune databases, calendar files, and comment fixes > without approval from a src committer, subject to the normal care and > tending of commits. > > Source: > > > https://www.freebsd.org/doc/en/articles/committers-guide/committer.types.html This change also included code, which is why people asked. The code changes are fine. Warner From owner-svn-src-all@freebsd.org Tue Feb 12 15:05:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2589E14E9664; Tue, 12 Feb 2019 15:05:18 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: from mail-it1-f171.google.com (mail-it1-f171.google.com [209.85.166.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A9C468FFD5; Tue, 12 Feb 2019 15:05:17 +0000 (UTC) (envelope-from pkelsey@gmail.com) Received: by mail-it1-f171.google.com with SMTP id z7so7939910iti.0; Tue, 12 Feb 2019 07:05:17 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=rLtyUK1JK0jKjQz85tTjyABeoYkuVOxtOHaOal+Y2Yg=; b=apAqB0w7Cr72s7f5s1OS9QiSU0CdH9oxflvnd9U83vKQ6Wj2QL0n+nSJVlLQOWy7T2 9TGRavnKaFF709keREVrly0B9LJDhvLdzEFPmrfG5Jna2DZN6+yuC3jZ3HHi6oGixWGa 3ORjUAmWA1moUatGvx3AhUjkgEExLTxqbAo8YgLJGxQ0sUgmuxP8cwtLbhtqmGj44dex UIPAo6snH30HDp1ZhGpsx23iK9Br/RAR27GB6efV1/f51OBDOxJEvD6dvnIRox2dbjlv 5x1WWaM+AGcfSHyV40d8qv0A5HqEYQymbWKUhvVSJNnHO8nkkYmYGrLJWacJ95aGpakr NeGA== X-Gm-Message-State: AHQUAuaGF1qtcb0z9epafcggZaKTXYxGOxf4yWUsbqPJwqGoqiSpe6oL Jcvu/aMcHyNy7OQLtmWD7A60FuxwOdvoNb2Ni4RKm3Fw X-Google-Smtp-Source: AHgI3IaiFv1/KiWYAKbxDXlgO3RHPJoBXDKUban+C+Mg21dpcmRReV0JNXDviRmjMeki9rE2qLmza9vHujOHJskPHEg= X-Received: by 2002:a24:5f4c:: with SMTP id r73mr2506602itb.25.1549983910235; Tue, 12 Feb 2019 07:05:10 -0800 (PST) MIME-Version: 1.0 References: <201902120931.x1C9VIfr075163@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201902120931.x1C9VIfr075163@pdx.rh.CN85.dnsmgr.net> From: Patrick Kelsey Date: Tue, 12 Feb 2019 10:04:56 -0500 Message-ID: Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net To: rgrimes@freebsd.org Cc: John Baldwin , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org X-Rspamd-Queue-Id: A9C468FFD5 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.91 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.92)[-0.917,0]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 15:05:18 -0000 On Tue, Feb 12, 2019 at 4:31 AM Rodney W. Grimes < freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > On Mon, Feb 11, 2019 at 8:13 PM Patrick Kelsey > wrote: > > > > > > > > > > > On Mon, Feb 11, 2019 at 8:08 PM John Baldwin wrote: > > > > > >> On 2/11/19 4:26 PM, Rodney W. Grimes wrote: > > >> >> Author: pkelsey > > >> >> Date: Mon Feb 11 23:24:39 2019 > > >> >> New Revision: 344027 > > >> >> URL: https://svnweb.freebsd.org/changeset/base/344027 > > >> >> > > >> >> Log: > > >> >> MFC r343291: > > >> >> Convert vmx(4) to being an iflib driver. > > >> > > > >> > I strongly object to this MFC, given the current number > > >> > of 12.0 RELEASE related iflib problems we have it is > > >> > foolish of us to iflib any more drivers in 12.0 > > >> > > >> This isn't the release branch though and presumably we have some time > > >> before > > >> 12.1 ships. If there are reports of vmx(4) breakage on stable before > 12.1 > > >> we could always revert this commit then? > > >> > > >> I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in > > >> stable/12 > > >> yet or are we still waiting for them to land in HEAD and/or be merged? > > >> > > > > > > iflib.c is currently the same between head and stable/12. I've found > and > > > fixed a number of iflib bugs by developing the iflib version of the > vmx(4) > > > driver, and it's also being fielded in a product. I'm also aware that > not > > > all current driver problems are necessarily iflib problems. I think > we'd > > > be better off letting this version of vmx(4) ride it out in stable/12 > until > > > such time as we discover an actual horror that we then feel we need to > > > react to in some way other than just going ahead and fixing it. > > > > > > > > John, > > > > Which is to say, I second your motion to proceed with normal process. As > > Point of order here, per the commiters guide you do not have the option > of seconding any motion that should of never been made, per rule 6 a > request by a Maintainer to revert your change has been made. There > is no arguing on that point. > > I think you may have caused a bit of confusion when you opened with "please consider reverting this until the iflib issues are resolved", as then jhb@ and I both seem to have gone and considered it not recognizing that you were actually making a demand. -Patrick From owner-svn-src-all@freebsd.org Tue Feb 12 15:14:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C07514E99C5; Tue, 12 Feb 2019 15:14:10 +0000 (UTC) (envelope-from marck@FreeBSD.org) Received: from woozle.rinet.ru (woozle.rinet.ru [195.54.192.68]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 90BC1699E4; Tue, 12 Feb 2019 15:14:09 +0000 (UTC) (envelope-from marck@FreeBSD.org) Received: from localhost (localhost [127.0.0.1]) by woozle.rinet.ru (8.14.5/8.14.5) with ESMTP id x1CF8pNO051632; Tue, 12 Feb 2019 18:08:51 +0300 (MSK) (envelope-from marck@FreeBSD.org) Date: Tue, 12 Feb 2019 18:08:49 +0300 (MSK) From: Dmitry Morozovsky X-X-Sender: marck@woozle.rinet.ru To: Cy Schubert cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-stable@FreeBSD.org, svn-src-stable-12@FreeBSD.org Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs In-Reply-To: <201902121418.x1CEI6ir070913@slippy.cwsent.com> Message-ID: References: <201902121418.x1CEI6ir070913@slippy.cwsent.com> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) X-NCC-RegID: ru.rinet X-OpenPGP-Key-ID: 6B691B03 MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.4.3 (woozle.rinet.ru [0.0.0.0]); Tue, 12 Feb 2019 18:08:51 +0300 (MSK) X-Rspamd-Queue-Id: 90BC1699E4 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.91 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.92)[-0.917,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 15:14:10 -0000 On Tue, 12 Feb 2019, Cy Schubert wrote: > In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry > Morozovsky wr > ites: > > Author: marck (doc committer) > > Date: Tue Feb 12 13:58:16 2019 > > New Revision: 344051 > > URL: https://svnweb.freebsd.org/changeset/base/344051 > > > > Log: > > MFC 343548: > > > > Allow dashes as a valid character in UFS labels. > > Approved by: Whom? Sorry, I missed commit log metadata from the original change. Lesson learnt. -- Sincerely, D.Marck [DM5020, MCK-RIPE, DM3-RIPN] --------------------------------------------------------------------------- *** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck@FreeBSD.org *** --------------------------------------------------------------------------- From owner-svn-src-all@freebsd.org Tue Feb 12 16:21:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7A34314EB865; Tue, 12 Feb 2019 16:21:19 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ED7D46C6D9; Tue, 12 Feb 2019 16:21:18 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1CGL56q076679; Tue, 12 Feb 2019 08:21:05 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1CGL5dq076678; Tue, 12 Feb 2019 08:21:05 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902121621.x1CGL5dq076678@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs In-Reply-To: To: Dmitry Morozovsky Date: Tue, 12 Feb 2019 08:21:05 -0800 (PST) CC: Cy Schubert , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: ED7D46C6D9 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 16:21:19 -0000 > On Tue, 12 Feb 2019, Cy Schubert wrote: > > > In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry > > Morozovsky wr > > ites: > > > Author: marck (doc committer) > > > Date: Tue Feb 12 13:58:16 2019 > > > New Revision: 344051 > > > URL: https://svnweb.freebsd.org/changeset/base/344051 > > > > > > Log: > > > MFC 343548: > > > > > > Allow dashes as a valid character in UFS labels. > > > > Approved by: Whom? > > Sorry, I missed commit log metadata from the original change. > > Lesson learnt. I think your fine on how you did this, I certainly already knew from reading the ^head commits that this change had infact been approved by Kirk, and had been flagged for MFC. I do not see value in duplicationg all that info in the stable branches, but perhaps we should formalize that in the committers guide on commit messages? -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Feb 12 16:25:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 94E6114EBC4D for ; Tue, 12 Feb 2019 16:25:42 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x834.google.com (mail-qt1-x834.google.com [IPv6:2607:f8b0:4864:20::834]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 26FB36CC6A for ; Tue, 12 Feb 2019 16:25:42 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x834.google.com with SMTP id b8so3588870qtr.9 for ; Tue, 12 Feb 2019 08:25:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=pclRw20DVgQh4D4aPcAbrlWT59qDFOC+ukliZGRxPOA=; b=zWpNP7izdsyfIGrBkVjU7xtC4zwrzmJwqaonrHqH31WzUzKYhgXnp77yaArKsOptmn efn7FPtEBBZUN53hGK5b1wfLfVO9cM0fMwSEZ95Ea0+4rx3Eqf8mNK7W2wpz69AVvpUL aqG9CVJqB3KcmeRYaG22kD7lLRrFBtZPJ1yFZkW1ZrXNJ0amborXHnL8CgTXFU6tsOeN mbXGu0ieIioQsAPfHPEa73ANgie1XT7dCLE4vqwoxeTg7VBLL+4KrUFZpljWA8DX3iAe bvabMxnB5twtXaBX0Tnfe8dTR29jdy66HX8Nlq0lLe5qPv4EKC+6vxW/zZfXtwFeKeGA XPKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=pclRw20DVgQh4D4aPcAbrlWT59qDFOC+ukliZGRxPOA=; b=NgLqxqxM7AGRyP+v0jELAqnQ4sVyNZtwnh4cIDelHoQlXiyWF9wpeQmzOnjr92VbJY WVpneZqgsjpFRH9CMmZo9yGp6kWj+H5G25QPBig6nqsdiV/VCTIzrKjvpUl9ABLYOBsD nH4ZEQYVQR1dslHq2gyjhRrr1T2PGGt0Hnqa516zUb6e7jbZZjBAdIPNvuHUHPWt1cEe I4n4s+WGxOj7Uss1PVxm2pRgyc7hpfsON4B4OVg83xFrzdA+aQtpiHm37czhaq3Nmz6s 8Bke3RudG2bsEovkJZmFY2xJe6nlTluc6oW6ICJecH7MkiMQELg9taeTQeS9sv5HRLdQ ckUg== X-Gm-Message-State: AHQUAubV7GXyphtFCk9U4nrFFHdejFc0KeLq5pNXEc4jPV8Hsgp1cxEt m19Z4V1gynVGrRFBFMJYZaQRRa9MacLNxMpYKT5MbpK6 X-Google-Smtp-Source: AHgI3IYzVX8iAn1SyDO9n8hyy7chWy1cOOlR4HeTh3eT4Xu3Co0XsD/A9sTsRXwoQNeFL2YHnnI4jXIEHEId98+HfP4= X-Received: by 2002:ac8:16d0:: with SMTP id y16mr3348342qtk.345.1549988741521; Tue, 12 Feb 2019 08:25:41 -0800 (PST) MIME-Version: 1.0 References: <201902121621.x1CGL5dq076678@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201902121621.x1CGL5dq076678@pdx.rh.CN85.dnsmgr.net> From: Warner Losh Date: Tue, 12 Feb 2019 09:25:30 -0700 Message-ID: Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs To: "Rodney W. Grimes" Cc: Dmitry Morozovsky , Cy Schubert , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org X-Rspamd-Queue-Id: 26FB36CC6A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 16:25:42 -0000 On Tue, Feb 12, 2019 at 9:21 AM Rodney W. Grimes < freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > On Tue, 12 Feb 2019, Cy Schubert wrote: > > > > > In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry > > > Morozovsky wr > > > ites: > > > > Author: marck (doc committer) > > > > Date: Tue Feb 12 13:58:16 2019 > > > > New Revision: 344051 > > > > URL: https://svnweb.freebsd.org/changeset/base/344051 > > > > > > > > Log: > > > > MFC 343548: > > > > > > > > Allow dashes as a valid character in UFS labels. > > > > > > Approved by: Whom? > > > > Sorry, I missed commit log metadata from the original change. > > > > Lesson learnt. > > I think your fine on how you did this, I certainly already > knew from reading the ^head commits that this change had > infact been approved by Kirk, and had been flagged for MFC. > > I do not see value in duplicationg all that info in the > stable branches, but perhaps we should formalize that in > the committers guide on commit messages? > Let's not overreact. Someone made a commit, someone else didn't go check the original commit to see it was legit and asked a question. The original bonafides were provided. Case closed. No need to make a federal case out of it. The doc committer learned to take a little extra care on their commit messages, it seems, as doc committers committing to src get a little extra scrutiny. The original complainer likely noticed the info was in the original commit and may check there in the future before complaining. Or maybe he won't. It isn't a big deal either way. None of this requires a change to the rules. Warner From owner-svn-src-all@freebsd.org Tue Feb 12 16:31:58 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 70A5414EC06F; Tue, 12 Feb 2019 16:31:58 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C85CD6D24C; Tue, 12 Feb 2019 16:31:57 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1CGVqvb076721; Tue, 12 Feb 2019 08:31:52 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1CGVqWE076720; Tue, 12 Feb 2019 08:31:52 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902121631.x1CGVqWE076720@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs In-Reply-To: To: Warner Losh Date: Tue, 12 Feb 2019 08:31:52 -0800 (PST) CC: "Rodney W. Grimes" , Dmitry Morozovsky , Cy Schubert , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: C85CD6D24C X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.953,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 16:31:58 -0000 > On Tue, Feb 12, 2019 at 9:21 AM Rodney W. Grimes < > freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > > > On Tue, 12 Feb 2019, Cy Schubert wrote: > > > > > > > In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry > > > > Morozovsky wr > > > > ites: > > > > > Author: marck (doc committer) > > > > > Date: Tue Feb 12 13:58:16 2019 > > > > > New Revision: 344051 > > > > > URL: https://svnweb.freebsd.org/changeset/base/344051 > > > > > > > > > > Log: > > > > > MFC 343548: > > > > > > > > > > Allow dashes as a valid character in UFS labels. > > > > > > > > Approved by: Whom? > > > > > > Sorry, I missed commit log metadata from the original change. > > > > > > Lesson learnt. > > > > I think your fine on how you did this, I certainly already > > knew from reading the ^head commits that this change had > > infact been approved by Kirk, and had been flagged for MFC. > > > > I do not see value in duplicationg all that info in the > > stable branches, but perhaps we should formalize that in > > the committers guide on commit messages? > > > > Let's not overreact. Someone made a commit, someone else didn't go check > the original commit to see it was legit and asked a question. The original > bonafides were provided. Case closed. No need to make a federal case out of > it. The doc committer learned to take a little extra care on their commit > messages, it seems, as doc committers committing to src get a little extra > scrutiny. The original complainer likely noticed the info was in the > original commit and may check there in the future before complaining. Or > maybe he won't. It isn't a big deal either way. > > None of this requires a change to the rules. I advocating better documenting better how we want to operate, if you see no value in that, so be it, but imho we are way to large and way to loose to continue to funciton in the manner we have been. If all of our process was better documented and layed down we would have less of this type of discussion on a much less frequent basis. Again, imho, this is not an over reaction, but a simple reaction to what occurred, with a proposed, and what imho, is a reasonable step forward, rather than just staying at status quo. New committers need to know many more things than what is currently in our committers guide, lets improve that. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Feb 12 16:45:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B6BFC14EC8A0; Tue, 12 Feb 2019 16:45:09 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 9BB326DDBB; Tue, 12 Feb 2019 16:45:07 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id tbB2gs7KH82YctbB3gZRjb; Tue, 12 Feb 2019 09:44:58 -0700 X-Authority-Analysis: v=2.3 cv=NNSrBHyg c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=kj9zAlcOel0A:10 a=CFTnQlWoA9kA:10 a=xfDLHkLGAAAA:8 a=iKhvJSA4AAAA:8 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=OKdY6dQ4TF2Wvm_oR2AA:9 a=CjuIK1q_8ugA:10 a=IfaqVvZgccqrtc8gcwf2:22 a=odh9cflL3HIXMm4fY7Wr:22 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 855391CA; Tue, 12 Feb 2019 08:44:55 -0800 (PST) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x1CGitNP070478; Tue, 12 Feb 2019 08:44:55 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x1CGisIg070475; Tue, 12 Feb 2019 08:44:54 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201902121644.x1CGisIg070475@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Warner Losh cc: "Rodney W. Grimes" , Dmitry Morozovsky , Cy Schubert , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs In-Reply-To: Message from Warner Losh of "Tue, 12 Feb 2019 09:25:30 -0700." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 12 Feb 2019 08:44:54 -0800 X-CMAE-Envelope: MS4wfN0F5VjMH6/f1AwC2iE8t79lWh+ZzMCjhOHwH/xY8W1VdA4DpyZY6r7gXKfpkCB9JAVz9nfE1albHK5L6t4uGOH0/EGQw/NHzl73XTdGuJ2cv3u0GBLV eEIuPQuQx+Y5oC6iKFKnZrdt0Ff6H4xpbPBpEzaf4XjltWZeCQYC2/3NwZMOMjJCJwH7uru0qY++AVsYalx+Q+3NnV/5jJ2OhlnG/VVBJjceuyVNpK/zdmtJ ydLMB8vjaxXQYBHScKveK0UMkwfr9pti7YpHJJBcuQ5izov9wPy0cgTZm9mcgeNA0VchXo61zTAQUwe3m5BPuec2pHBpUoeF2UyO3rpGf9/TqQv46cG2LgFf FVZBcQahSnMhPNuKzXyQ1tUdwlWkaSp7DNjwbgJT2oRIFRQjLTc= X-Rspamd-Queue-Id: 9BB326DDBB X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.48 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; REPLYTO_EQ_FROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.92)[-0.924,0]; RCPT_COUNT_SEVEN(0.00)[8]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; R_SPF_NA(0.00)[]; RCVD_IN_DNSWL_LOW(-0.10)[139.136.59.64.list.dnswl.org : 127.0.5.1]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; IP_SCORE(-1.85)[ip: (-4.67), ipnet: 64.59.128.0/20(-2.52), asn: 6327(-1.96), country: CA(-0.09)]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 16:45:10 -0000 In message , Warner Losh writes: > --000000000000583a5b0581b4e04a > Content-Type: text/plain; charset="UTF-8" > > On Tue, Feb 12, 2019 at 9:21 AM Rodney W. Grimes < > freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > > > On Tue, 12 Feb 2019, Cy Schubert wrote: > > > > > > > In message <201902121358.x1CDwGf9047873@repo.freebsd.org>, Dmitry > > > > Morozovsky wr > > > > ites: > > > > > Author: marck (doc committer) > > > > > Date: Tue Feb 12 13:58:16 2019 > > > > > New Revision: 344051 > > > > > URL: https://svnweb.freebsd.org/changeset/base/344051 > > > > > > > > > > Log: > > > > > MFC 343548: > > > > > > > > > > Allow dashes as a valid character in UFS labels. > > > > > > > > Approved by: Whom? > > > > > > Sorry, I missed commit log metadata from the original change. > > > > > > Lesson learnt. > > > > I think your fine on how you did this, I certainly already > > knew from reading the ^head commits that this change had > > infact been approved by Kirk, and had been flagged for MFC. > > > > I do not see value in duplicationg all that info in the > > stable branches, but perhaps we should formalize that in > > the committers guide on commit messages? > > > > Let's not overreact. Someone made a commit, someone else didn't go check > the original commit to see it was legit and asked a question. The original > bonafides were provided. Case closed. No need to make a federal case out of > it. The doc committer learned to take a little extra care on their commit > messages, it seems, as doc committers committing to src get a little extra > scrutiny. The original complainer likely noticed the info was in the > original commit and may check there in the future before complaining. Or > maybe he won't. It isn't a big deal either way. I, the original complainer, noticed a commit by a doc committer without approval by a src committer. > > None of this requires a change to the rules. Agreed. No rules need to be changed. It's not a big deal. At the time the question was about, something was missed or someone did something that they didn't have authority to do. The question was answered a couple of hours ago. We can stop bikeshedding this to try to create more rules when none are required. It was a simple, who authorized this commit? We got our answer. Let's move on. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Tue Feb 12 16:53:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0DD1114ECD07; Tue, 12 Feb 2019 16:53:13 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com [IPv6:2607:f8b0:4864:20::42a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 756F26E441; Tue, 12 Feb 2019 16:53:12 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf1-x42a.google.com with SMTP id q1so1566162pfi.5; Tue, 12 Feb 2019 08:53:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=H9a533TsW97GzAUe34AWVyKZTUv8TAcS8s6b4BFfino=; b=NhIRFyIzXtgxquFDFGZlgbpF6QKGYOiWuJPbF2v5UwW6XjyyDUdo25k5hpxkJB1+5k Ey4cuDnUho9PM1pS9EMZNQ+ufjJOwdQxYcmJWm/nLUk7QsuJ+Dkw9t7iIe4EIJ2VihcI DjyevJBs3dt6NbYpwp7TLWHPD1av2xopavl6LexfzOXeXQS5QNP37yt9WyiUxZGjv/MJ Z0YL4JI08VG+idvkXJnuA/GuIsq5Af0KiEaxqrEOxlf+JmuNLbyiNSicAH7tff/pDZq+ S4e3uLpOS2nd+H+koFEJAOgXhb1iRrst8JRQAxmk8fQv8zdGYzZxadvSFS87uxB6VFro dTVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=H9a533TsW97GzAUe34AWVyKZTUv8TAcS8s6b4BFfino=; b=poujhJ4TNjLUa4rUnw6amQLyna0Z9BSz3m2wTYIEij5trch0WFbsJNIQubeZrsE/YR vgMAG1kvvhqlewKwEDpMgegiwG+X42EtC5EA4gxTkehY/uHmP9BZDmhSqE+jNuqya670 p1Izhsv1K6VAc+mUIVw+PDuNgvg801M7r1jokOB23dku+C42tA3Lm/wWFEr3jPTaiH9K DtDX90kGda9gSb2GdX9Q23ZMgOFVVkzFegkk5QSEFZbxrjxgdPzXAjevW6mYVrX4QgIM 31JAjx7OLJrL3DfdZ4cxvqDy6+i0NCE3xcZ7k5XdxHgI5XWcO7FDneAe8uxRKRM7soi5 adHw== X-Gm-Message-State: AHQUAuYDM7o+SEbikR9GTurQ01DybUlevC8znGgo+GhccuSprR2Bdqs4 vy/VUQQt8sK8gEraWvxb9fcOi5TK X-Google-Smtp-Source: AHgI3IY2xl2wgCNLudNW6QMOFPL4XUkEJY4195tPOsyjeDeL5iEti/NSs6AVgx12ATi8KkIjzVLZ6A== X-Received: by 2002:a63:8f45:: with SMTP id r5mr4399678pgn.222.1549990390858; Tue, 12 Feb 2019 08:53:10 -0800 (PST) Received: from ?IPv6:2607:fb90:a695:22c1:409c:1f73:a1ae:a38e? ([2607:fb90:a695:22c1:409c:1f73:a1ae:a38e]) by smtp.gmail.com with ESMTPSA id u66sm30584295pfi.115.2019.02.12.08.53.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 12 Feb 2019 08:53:09 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs From: Enji Cooper X-Mailer: iPhone Mail (16C104) In-Reply-To: <201902121644.x1CGisIg070475@slippy.cwsent.com> Date: Tue, 12 Feb 2019 08:53:08 -0800 Cc: Warner Losh , "Rodney W. Grimes" , Dmitry Morozovsky , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <201902121644.x1CGisIg070475@slippy.cwsent.com> To: Cy Schubert X-Rspamd-Queue-Id: 756F26E441 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.93 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; NEURAL_HAM_SHORT(-0.94)[-0.941,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 16:53:13 -0000 > On Feb 12, 2019, at 08:44, Cy Schubert wrote: ... > Agreed. No rules need to be changed. It's not a big deal. At the time=20 > the question was about, something was missed or someone did something=20 > that they didn't have authority to do. The question was answered a=20 > couple of hours ago. We can stop bikeshedding this to try to create=20 > more rules when none are required. It was a simple, who authorized this=20= > commit? We got our answer. Let's move on. I agree with others that=E2=80=94unless the process is automated and applied= automatically without one thinking about it=E2=80=94let=E2=80=99s not imple= ment yet another bit of unnecessary (to remember) process. Otherwise, I fear= the committer=E2=80=99s guide will become as complicated as US law. This was a simple mistake/omission. Let=E2=80=99s move on. Thank you, -Enji= From owner-svn-src-all@freebsd.org Tue Feb 12 16:56:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6797D14ECE9B; Tue, 12 Feb 2019 16:56:11 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0E0146E692; Tue, 12 Feb 2019 16:56:11 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F119F1AC28; Tue, 12 Feb 2019 16:56:10 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CGuAvh041817; Tue, 12 Feb 2019 16:56:10 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CGuAc5041816; Tue, 12 Feb 2019 16:56:10 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902121656.x1CGuAc5041816@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 12 Feb 2019 16:56:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344053 - stable/11/sys/i386/include X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/sys/i386/include X-SVN-Commit-Revision: 344053 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0E0146E692 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.94)[-0.940,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 16:56:11 -0000 Author: kib Date: Tue Feb 12 16:56:10 2019 New Revision: 344053 URL: https://svnweb.freebsd.org/changeset/base/344053 Log: Fix PAE modules build on i386. Reimplement PAE version of pte_load() by copying/pasting the atomic_load_acq_64_i586() into it definition. pmap_kextract() is defined as inline and uses pte_load() in its body, so the pte_load() should be available when pmap.h is included. On stable/11, the atomic inlines are not exposed to modules. This is a direct commit to stable/11. Reported by: dim Sponsored by: The FreeBSD Foundation Modified: stable/11/sys/i386/include/pmap.h Modified: stable/11/sys/i386/include/pmap.h ============================================================================== --- stable/11/sys/i386/include/pmap.h Tue Feb 12 14:03:39 2019 (r344052) +++ stable/11/sys/i386/include/pmap.h Tue Feb 12 16:56:10 2019 (r344053) @@ -241,7 +241,20 @@ extern pt_entry_t *KPTmap; #define pte_load_store(ptep, pte) atomic_swap_64_i586(ptep, pte) #define pte_load_clear(ptep) atomic_swap_64_i586(ptep, 0) #define pte_store(ptep, pte) atomic_store_rel_64_i586(ptep, pte) -#define pte_load(ptep) atomic_load_acq_64_i586(ptep) +static __inline uint64_t +pte_load(pt_entry_t *p) +{ + uint64_t res; + + __asm __volatile( + " movl %%ebx,%%eax ; " + " movl %%ecx,%%edx ; " + " lock; cmpxchg8b %1" + : "=&A" (res), /* 0 */ + "+m" (*p) /* 1 */ + : : "memory", "cc"); + return (res); +} extern pt_entry_t pg_nx; From owner-svn-src-all@freebsd.org Tue Feb 12 17:06:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CFE7E14ED97F; Tue, 12 Feb 2019 17:06:00 +0000 (UTC) (envelope-from ram@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6D5D66F25F; Tue, 12 Feb 2019 17:06:00 +0000 (UTC) (envelope-from ram@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5DD951ADEB; Tue, 12 Feb 2019 17:06:00 +0000 (UTC) (envelope-from ram@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CH60Qq047748; Tue, 12 Feb 2019 17:06:00 GMT (envelope-from ram@FreeBSD.org) Received: (from ram@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CH60Y9047742; Tue, 12 Feb 2019 17:06:00 GMT (envelope-from ram@FreeBSD.org) Message-Id: <201902121706.x1CH60Y9047742@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ram set sender to ram@FreeBSD.org using -f From: Ram Kishore Vegesna Date: Tue, 12 Feb 2019 17:06:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344054 - stable/11/sys/dev/ocs_fc X-SVN-Group: stable-11 X-SVN-Commit-Author: ram X-SVN-Commit-Paths: stable/11/sys/dev/ocs_fc X-SVN-Commit-Revision: 344054 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6D5D66F25F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 17:06:01 -0000 Author: ram Date: Tue Feb 12 17:05:59 2019 New Revision: 344054 URL: https://svnweb.freebsd.org/changeset/base/344054 Log: MFC r342946: Remove accessing remote node and domain objects while processing cam actions. Issue: ocs_fc(4) driver panics. It's induced by setting the port_state sysctl to offline, then online, then offline, then online, and so forth and so on in rapid succession. Reason: While we set the port_state to online fc discovery will start and OS is enumerating the target discs by calling ocs_action(), then set the port state to "offline" which deletes domain/sport/nodes. In ocs_action()->XPT_GET_TRAN_SETTINGS we are accessing the remote node which can be invalid to get the wwpn, wwnn and port. Fix: Removed accessing of remote node and domain in some ocs_action() cases. Populated the required values from ocs_fcport. This removes the dependency of node and domain structures while processing XPT_PATH_INQ and XPT_GET_TRAN_SETTINGS. We will invalidate the target entries after the device lost timeout(30 seconds). Approved by:ken,mav Modified: stable/11/sys/dev/ocs_fc/ocs.h stable/11/sys/dev/ocs_fc/ocs_cam.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/ocs_fc/ocs.h ============================================================================== --- stable/11/sys/dev/ocs_fc/ocs.h Tue Feb 12 16:56:10 2019 (r344053) +++ stable/11/sys/dev/ocs_fc/ocs.h Tue Feb 12 17:05:59 2019 (r344054) @@ -84,6 +84,7 @@ typedef struct ocs_fcport_s { struct cam_sim *sim; struct cam_path *path; uint32_t role; + uint32_t fc_id; ocs_fc_target_t tgt[OCS_MAX_TARGETS]; int lost_device_time; Modified: stable/11/sys/dev/ocs_fc/ocs_cam.c ============================================================================== --- stable/11/sys/dev/ocs_fc/ocs_cam.c Tue Feb 12 16:56:10 2019 (r344053) +++ stable/11/sys/dev/ocs_fc/ocs_cam.c Tue Feb 12 17:05:59 2019 (r344054) @@ -886,9 +886,11 @@ int32_t ocs_scsi_ini_new_sport(ocs_sport_t *sport) { ocs_t *ocs = sport->ocs; + ocs_fcport *fcp = FCPORT(ocs, 0); - if(!sport->is_vport) { - sport->tgt_data = FCPORT(ocs, 0); + if (!sport->is_vport) { + sport->tgt_data = fcp; + fcp->fc_id = sport->fc_id; } return 0; @@ -911,6 +913,12 @@ ocs_scsi_ini_new_sport(ocs_sport_t *sport) void ocs_scsi_ini_del_sport(ocs_sport_t *sport) { + ocs_t *ocs = sport->ocs; + ocs_fcport *fcp = FCPORT(ocs, 0); + + if (!sport->is_vport) { + fcp->fc_id = 0; + } } void @@ -1984,6 +1992,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) { struct ccb_pathinq *cpi = &ccb->cpi; struct ccb_pathinq_settings_fc *fc = &cpi->xport_specific.fc; + ocs_fcport *fcp = FCPORT(ocs, bus); uint64_t wwn = 0; ocs_xport_stats_t value; @@ -2011,9 +2020,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) wwn = *((uint64_t *)ocs_scsi_get_property_ptr(ocs, OCS_SCSI_WWNN)); fc->wwnn = be64toh(wwn); - if (ocs->domain && ocs->domain->attached) { - fc->port = ocs->domain->sport->fc_id; - } + fc->port = fcp->fc_id; if (ocs->config_tgt) { cpi->target_sprt = @@ -2059,7 +2066,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) struct ccb_trans_settings_fc *fc = &cts->xport_specific.fc; ocs_xport_stats_t value; ocs_fcport *fcp = FCPORT(ocs, bus); - ocs_node_t *fnode = NULL; + ocs_fc_target_t *tgt = NULL; if (ocs->ocs_xport != OCS_XPORT_FC) { ocs_set_ccb_status(ccb, CAM_REQ_INVALID); @@ -2067,13 +2074,19 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) break; } - fnode = ocs_node_get_instance(ocs, fcp->tgt[cts->ccb_h.target_id].node_id); - if (fnode == NULL) { + if (cts->ccb_h.target_id > OCS_MAX_TARGETS) { ocs_set_ccb_status(ccb, CAM_DEV_NOT_THERE); xpt_done(ccb); break; } + tgt = &fcp->tgt[cts->ccb_h.target_id]; + if (tgt->state == OCS_TGT_STATE_NONE) { + ocs_set_ccb_status(ccb, CAM_DEV_NOT_THERE); + xpt_done(ccb); + break; + } + cts->protocol = PROTO_SCSI; cts->protocol_version = SCSI_REV_SPC2; cts->transport = XPORT_FC; @@ -2086,11 +2099,11 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) ocs_xport_status(ocs->xport, OCS_XPORT_LINK_SPEED, &value); fc->bitrate = value.value * 100; - fc->wwpn = ocs_node_get_wwpn(fnode); + fc->wwpn = tgt->wwpn; - fc->wwnn = ocs_node_get_wwnn(fnode); + fc->wwnn = tgt->wwnn; - fc->port = fnode->rnode.fc_id; + fc->port = tgt->port_id; fc->valid = CTS_FC_VALID_SPEED | CTS_FC_VALID_WWPN | From owner-svn-src-all@freebsd.org Tue Feb 12 17:07:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 970AA14EDA1B; Tue, 12 Feb 2019 17:07:16 +0000 (UTC) (envelope-from ram@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 39FA86F3BB; Tue, 12 Feb 2019 17:07:16 +0000 (UTC) (envelope-from ram@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2B8F11ADEC; Tue, 12 Feb 2019 17:07:16 +0000 (UTC) (envelope-from ram@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CH7GcH047840; Tue, 12 Feb 2019 17:07:16 GMT (envelope-from ram@FreeBSD.org) Received: (from ram@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CH7Fik047838; Tue, 12 Feb 2019 17:07:15 GMT (envelope-from ram@FreeBSD.org) Message-Id: <201902121707.x1CH7Fik047838@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ram set sender to ram@FreeBSD.org using -f From: Ram Kishore Vegesna Date: Tue, 12 Feb 2019 17:07:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344055 - stable/12/sys/dev/ocs_fc X-SVN-Group: stable-12 X-SVN-Commit-Author: ram X-SVN-Commit-Paths: stable/12/sys/dev/ocs_fc X-SVN-Commit-Revision: 344055 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 39FA86F3BB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 17:07:16 -0000 Author: ram Date: Tue Feb 12 17:07:15 2019 New Revision: 344055 URL: https://svnweb.freebsd.org/changeset/base/344055 Log: MFC r342946: Remove accessing remote node and domain objects while processing cam actions. Issue: ocs_fc(4) driver panics. It's induced by setting the port_state sysctl to offline, then online, then offline, then online, and so forth and so on in rapid succession. Reason: While we set the port_state to online fc discovery will start and OS is enumerating the target discs by calling ocs_action(), then set the port state to "offline" which deletes domain/sport/nodes. In ocs_action()->XPT_GET_TRAN_SETTINGS we are accessing the remote node which can be invalid to get the wwpn, wwnn and port. Fix: Removed accessing of remote node and domain in some ocs_action() cases. Populated the required values from ocs_fcport. This removes the dependency of node and domain structures while processing XPT_PATH_INQ and XPT_GET_TRAN_SETTINGS. We will invalidate the target entries after the device lost timeout(30 seconds). Approved by:ken,mav Modified: stable/12/sys/dev/ocs_fc/ocs.h stable/12/sys/dev/ocs_fc/ocs_cam.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ocs_fc/ocs.h ============================================================================== --- stable/12/sys/dev/ocs_fc/ocs.h Tue Feb 12 17:05:59 2019 (r344054) +++ stable/12/sys/dev/ocs_fc/ocs.h Tue Feb 12 17:07:15 2019 (r344055) @@ -84,6 +84,7 @@ typedef struct ocs_fcport_s { struct cam_sim *sim; struct cam_path *path; uint32_t role; + uint32_t fc_id; ocs_fc_target_t tgt[OCS_MAX_TARGETS]; int lost_device_time; Modified: stable/12/sys/dev/ocs_fc/ocs_cam.c ============================================================================== --- stable/12/sys/dev/ocs_fc/ocs_cam.c Tue Feb 12 17:05:59 2019 (r344054) +++ stable/12/sys/dev/ocs_fc/ocs_cam.c Tue Feb 12 17:07:15 2019 (r344055) @@ -886,9 +886,11 @@ int32_t ocs_scsi_ini_new_sport(ocs_sport_t *sport) { ocs_t *ocs = sport->ocs; + ocs_fcport *fcp = FCPORT(ocs, 0); - if(!sport->is_vport) { - sport->tgt_data = FCPORT(ocs, 0); + if (!sport->is_vport) { + sport->tgt_data = fcp; + fcp->fc_id = sport->fc_id; } return 0; @@ -911,6 +913,12 @@ ocs_scsi_ini_new_sport(ocs_sport_t *sport) void ocs_scsi_ini_del_sport(ocs_sport_t *sport) { + ocs_t *ocs = sport->ocs; + ocs_fcport *fcp = FCPORT(ocs, 0); + + if (!sport->is_vport) { + fcp->fc_id = 0; + } } void @@ -1984,6 +1992,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) { struct ccb_pathinq *cpi = &ccb->cpi; struct ccb_pathinq_settings_fc *fc = &cpi->xport_specific.fc; + ocs_fcport *fcp = FCPORT(ocs, bus); uint64_t wwn = 0; ocs_xport_stats_t value; @@ -2011,9 +2020,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) wwn = *((uint64_t *)ocs_scsi_get_property_ptr(ocs, OCS_SCSI_WWNN)); fc->wwnn = be64toh(wwn); - if (ocs->domain && ocs->domain->attached) { - fc->port = ocs->domain->sport->fc_id; - } + fc->port = fcp->fc_id; if (ocs->config_tgt) { cpi->target_sprt = @@ -2059,7 +2066,7 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) struct ccb_trans_settings_fc *fc = &cts->xport_specific.fc; ocs_xport_stats_t value; ocs_fcport *fcp = FCPORT(ocs, bus); - ocs_node_t *fnode = NULL; + ocs_fc_target_t *tgt = NULL; if (ocs->ocs_xport != OCS_XPORT_FC) { ocs_set_ccb_status(ccb, CAM_REQ_INVALID); @@ -2067,13 +2074,19 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) break; } - fnode = ocs_node_get_instance(ocs, fcp->tgt[cts->ccb_h.target_id].node_id); - if (fnode == NULL) { + if (cts->ccb_h.target_id > OCS_MAX_TARGETS) { ocs_set_ccb_status(ccb, CAM_DEV_NOT_THERE); xpt_done(ccb); break; } + tgt = &fcp->tgt[cts->ccb_h.target_id]; + if (tgt->state == OCS_TGT_STATE_NONE) { + ocs_set_ccb_status(ccb, CAM_DEV_NOT_THERE); + xpt_done(ccb); + break; + } + cts->protocol = PROTO_SCSI; cts->protocol_version = SCSI_REV_SPC2; cts->transport = XPORT_FC; @@ -2086,11 +2099,11 @@ ocs_action(struct cam_sim *sim, union ccb *ccb) ocs_xport_status(ocs->xport, OCS_XPORT_LINK_SPEED, &value); fc->bitrate = value.value * 100; - fc->wwpn = ocs_node_get_wwpn(fnode); + fc->wwpn = tgt->wwpn; - fc->wwnn = ocs_node_get_wwnn(fnode); + fc->wwnn = tgt->wwnn; - fc->port = fnode->rnode.fc_id; + fc->port = tgt->port_id; fc->valid = CTS_FC_VALID_SPEED | CTS_FC_VALID_WWPN | From owner-svn-src-all@freebsd.org Tue Feb 12 18:32:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C8C814F03BD; Tue, 12 Feb 2019 18:32:16 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3F516737C1; Tue, 12 Feb 2019 18:32:16 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1EAC31BCF6; Tue, 12 Feb 2019 18:32:16 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CIWFif098620; Tue, 12 Feb 2019 18:32:15 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CIWEec098600; Tue, 12 Feb 2019 18:32:14 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902121832.x1CIWEec098600@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 12 Feb 2019 18:32:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344056 - in head/contrib/llvm: include/llvm/CodeGen lib/CodeGen/SelectionDAG lib/Target/AArch64 lib/Target/ARM X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in head/contrib/llvm: include/llvm/CodeGen lib/CodeGen/SelectionDAG lib/Target/AArch64 lib/Target/ARM X-SVN-Commit-Revision: 344056 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3F516737C1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.976,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 18:32:16 -0000 Author: dim Date: Tue Feb 12 18:32:14 2019 New Revision: 344056 URL: https://svnweb.freebsd.org/changeset/base/344056 Log: Pull in r339734 from upstream llvm trunk (by Eli Friedman): [ARM] Make PerformSHLSimplify add nodes to the DAG worklist correctly. Intentionally excluding nodes from the DAGCombine worklist is likely to lead to weird optimizations and infinite loops, so it's generally a bad idea. To avoid the infinite loops, fix DAGCombine to use the isDesirableToCommuteWithShift target hook before performing the transforms in question, and implement the target hook in the ARM backend disable the transforms in question. Fixes https://bugs.llvm.org/show_bug.cgi?id=38530 . (I don't have a reduced testcase for that bug. But we should have sufficient test coverage for PerformSHLSimplify given that we're not playing weird tricks with the worklist. I can try to bugpoint it if necessary, though.) Differential Revision: https://reviews.llvm.org/D50667 This should fix a possible hang when compiling sys/dev/nxge/if_nxge.c (which exists now only in the stable/11 branch) for arm. Modified: head/contrib/llvm/include/llvm/CodeGen/TargetLowering.h head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h Modified: head/contrib/llvm/include/llvm/CodeGen/TargetLowering.h ============================================================================== --- head/contrib/llvm/include/llvm/CodeGen/TargetLowering.h Tue Feb 12 17:07:15 2019 (r344055) +++ head/contrib/llvm/include/llvm/CodeGen/TargetLowering.h Tue Feb 12 18:32:14 2019 (r344056) @@ -2935,12 +2935,16 @@ class TargetLowering : public TargetLoweringBase { (pu /// virtual SDValue PerformDAGCombine(SDNode *N, DAGCombinerInfo &DCI) const; - /// Return true if it is profitable to move a following shift through this - // node, adjusting any immediate operands as necessary to preserve semantics. - // This transformation may not be desirable if it disrupts a particularly - // auspicious target-specific tree (e.g. bitfield extraction in AArch64). - // By default, it returns true. - virtual bool isDesirableToCommuteWithShift(const SDNode *N) const { + /// Return true if it is profitable to move this shift by a constant amount + /// though its operand, adjusting any immediate operands as necessary to + /// preserve semantics. This transformation may not be desirable if it + /// disrupts a particularly auspicious target-specific tree (e.g. bitfield + /// extraction in AArch64). By default, it returns true. + /// + /// @param N the shift node + /// @param Level the current DAGCombine legalization level. + virtual bool isDesirableToCommuteWithShift(const SDNode *N, + CombineLevel Level) const { return true; } Modified: head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp ============================================================================== --- head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp Tue Feb 12 17:07:15 2019 (r344055) +++ head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp Tue Feb 12 18:32:14 2019 (r344056) @@ -6191,7 +6191,7 @@ SDValue DAGCombiner::visitShiftByConstant(SDNode *N, C return SDValue(); } - if (!TLI.isDesirableToCommuteWithShift(LHS)) + if (!TLI.isDesirableToCommuteWithShift(N, Level)) return SDValue(); // Fold the constants, shifting the binop RHS by the shift amount. @@ -6495,7 +6495,8 @@ SDValue DAGCombiner::visitSHL(SDNode *N) { if ((N0.getOpcode() == ISD::ADD || N0.getOpcode() == ISD::OR) && N0.getNode()->hasOneUse() && isConstantOrConstantVector(N1, /* No Opaques */ true) && - isConstantOrConstantVector(N0.getOperand(1), /* No Opaques */ true)) { + isConstantOrConstantVector(N0.getOperand(1), /* No Opaques */ true) && + TLI.isDesirableToCommuteWithShift(N, Level)) { SDValue Shl0 = DAG.getNode(ISD::SHL, SDLoc(N0), VT, N0.getOperand(0), N1); SDValue Shl1 = DAG.getNode(ISD::SHL, SDLoc(N1), VT, N0.getOperand(1), N1); AddToWorklist(Shl0.getNode()); Modified: head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp ============================================================================== --- head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp Tue Feb 12 17:07:15 2019 (r344055) +++ head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp Tue Feb 12 18:32:14 2019 (r344056) @@ -8496,7 +8496,9 @@ AArch64TargetLowering::getScratchRegisters(CallingConv } bool -AArch64TargetLowering::isDesirableToCommuteWithShift(const SDNode *N) const { +AArch64TargetLowering::isDesirableToCommuteWithShift(const SDNode *N, + CombineLevel Level) const { + N = N->getOperand(0).getNode(); EVT VT = N->getValueType(0); // If N is unsigned bit extraction: ((x >> C) & mask), then do not combine // it with shift to let it be lowered to UBFX. Modified: head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h ============================================================================== --- head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h Tue Feb 12 17:07:15 2019 (r344055) +++ head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h Tue Feb 12 18:32:14 2019 (r344056) @@ -363,7 +363,8 @@ class AArch64TargetLowering : public TargetLowering { const MCPhysReg *getScratchRegisters(CallingConv::ID CC) const override; /// Returns false if N is a bit extraction pattern of (X >> C) & Mask. - bool isDesirableToCommuteWithShift(const SDNode *N) const override; + bool isDesirableToCommuteWithShift(const SDNode *N, + CombineLevel Level) const override; /// Returns true if it is beneficial to convert a load of a constant /// to just the constant itself. Modified: head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp ============================================================================== --- head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp Tue Feb 12 17:07:15 2019 (r344055) +++ head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp Tue Feb 12 18:32:14 2019 (r344056) @@ -10407,6 +10407,25 @@ static SDValue PerformADDCombineWithOperands(SDNode *N return SDValue(); } +bool +ARMTargetLowering::isDesirableToCommuteWithShift(const SDNode *N, + CombineLevel Level) const { + if (Level == BeforeLegalizeTypes) + return true; + + if (Subtarget->isThumb() && Subtarget->isThumb1Only()) + return true; + + if (N->getOpcode() != ISD::SHL) + return true; + + // Turn off commute-with-shift transform after legalization, so it doesn't + // conflict with PerformSHLSimplify. (We could try to detect when + // PerformSHLSimplify would trigger more precisely, but it isn't + // really necessary.) + return false; +} + static SDValue PerformSHLSimplify(SDNode *N, TargetLowering::DAGCombinerInfo &DCI, const ARMSubtarget *ST) { @@ -10506,9 +10525,7 @@ static SDValue PerformSHLSimplify(SDNode *N, LLVM_DEBUG(dbgs() << "Simplify shl use:\n"; SHL.getOperand(0).dump(); SHL.dump(); N->dump()); LLVM_DEBUG(dbgs() << "Into:\n"; X.dump(); BinOp.dump(); Res.dump()); - - DAG.ReplaceAllUsesWith(SDValue(N, 0), Res); - return SDValue(N, 0); + return Res; } Modified: head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h ============================================================================== --- head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h Tue Feb 12 17:07:15 2019 (r344055) +++ head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h Tue Feb 12 18:32:14 2019 (r344056) @@ -583,6 +583,9 @@ class VectorType; unsigned getABIAlignmentForCallingConv(Type *ArgTy, DataLayout DL) const override; + bool isDesirableToCommuteWithShift(const SDNode *N, + CombineLevel Level) const override; + protected: std::pair findRepresentativeClass(const TargetRegisterInfo *TRI, From owner-svn-src-all@freebsd.org Tue Feb 12 18:46:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C70F14F0EB0; Tue, 12 Feb 2019 18:46:01 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id EEFE974999; Tue, 12 Feb 2019 18:45:58 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id td40gtZJUMRX3td41gGJkS; Tue, 12 Feb 2019 11:45:49 -0700 X-Authority-Analysis: v=2.3 cv=TL87tGta c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=kj9zAlcOel0A:10 a=CFTnQlWoA9kA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=phWP7LH8hs_b4ytsaDEA:9 a=CjuIK1q_8ugA:10 a=16AdNe16yogA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 7581549F; Tue, 12 Feb 2019 10:45:47 -0800 (PST) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x1CIjlah076716; Tue, 12 Feb 2019 10:45:47 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x1CIjkMO076713; Tue, 12 Feb 2019 10:45:46 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201902121845.x1CIjkMO076713@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Cy Schubert cc: Dmitry Morozovsky , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r344052 - in stable/11/sbin: newfs tunefs In-Reply-To: Message from Cy Schubert of "Tue, 12 Feb 2019 06:18:07 -0800." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 12 Feb 2019 10:45:46 -0800 X-CMAE-Envelope: MS4wfFdE5pZjuF6gLWhNzb6s2yHHaKHNItLDblYyIljNr9Llbt7vxi4B4EaIqaTUEqukNrg+rWA8Q1Lkh9d7bxwfgUB2ctJlmUIcy3tWf3F2g8CokFauVBqU MPuQDuQMkkA6iepOmiv+gvDcv/iU/LeWLTF2ueAgpFMr+v6Mcv2VHL5I4RxjlGAYpGpKMJxH6ys7es1tz81kVF/mQM3j3vxy7lMpbpqCPeA6eBdKCD/tRyRU jYUlbHiybVDyahh/E3neU2KEhaUJBKjdYyyGZKByZ7Xq+GOJoZ/hwySpFiP7uDdtU6GM61Szbn5VxS0XWVAdKbTBISz207R5GiCiLMFj0fw= X-Rspamd-Queue-Id: EEFE974999 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-4.61 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; RCPT_COUNT_FIVE(0.00)[6]; REPLYTO_EQ_FROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.94)[-0.935,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; RCVD_TLS_LAST(0.00)[]; IP_SCORE(-1.97)[ip: (-5.31), ipnet: 64.59.128.0/20(-2.50), asn: 6327(-1.95), country: CA(-0.09)]; RCVD_IN_DNSWL_LOW(-0.10)[12.134.59.64.list.dnswl.org : 127.0.5.1] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 18:46:01 -0000 Cy Schubert writes: > In message <201902121403.x1CE3efp052690@repo.freebsd.org>, Dmitry > Morozovsky wr > ites: > > Author: marck (doc committer) > > Date: Tue Feb 12 14:03:39 2019 > > New Revision: 344052 > > URL: https://svnweb.freebsd.org/changeset/base/344052 > > > > Log: > > MFC 343548: > > > > Allow dashes as a valid character in UFS labels. > > Approved by: Whom? It was pointed out to me that my original reply lacked the detail as to my objection and replying to both bordered on harassment. This was not my intent. I'm sorry to anyone and everyone who were offended by either of or both my replies. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Tue Feb 12 19:05:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3909B14F1B14; Tue, 12 Feb 2019 19:05:10 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CD01575B69; Tue, 12 Feb 2019 19:05:09 +0000 (UTC) (envelope-from imp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B8CBB1C2A1; Tue, 12 Feb 2019 19:05:09 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CJ59E6015466; Tue, 12 Feb 2019 19:05:09 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CJ59KM015465; Tue, 12 Feb 2019 19:05:09 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201902121905.x1CJ59KM015465@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Tue, 12 Feb 2019 19:05:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344057 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 344057 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: CD01575B69 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 19:05:10 -0000 Author: imp Date: Tue Feb 12 19:05:09 2019 New Revision: 344057 URL: https://svnweb.freebsd.org/changeset/base/344057 Log: Revert r343077 until the license issues surrounding it can be resolved. Approved by: core@ Modified: head/usr.sbin/bhyve/uart_emul.c Modified: head/usr.sbin/bhyve/uart_emul.c ============================================================================== --- head/usr.sbin/bhyve/uart_emul.c Tue Feb 12 18:32:14 2019 (r344056) +++ head/usr.sbin/bhyve/uart_emul.c Tue Feb 12 19:05:09 2019 (r344057) @@ -431,13 +431,6 @@ uart_write(struct uart_softc *sc, int offset, uint8_t sc->thre_int_pending = true; break; case REG_IER: - /* Assert an interrupt if re-enabling the THRE intr, since we - * always report THRE as active in the status register. - */ - if ((sc->ier & IER_ETXRDY) == 0 && - (value & IER_ETXRDY) != 0) { - sc->thre_int_pending = true; - } /* * Apply mask so that bits 4-7 are 0 * Also enables bits 0-3 only if they're 1 From owner-svn-src-all@freebsd.org Tue Feb 12 20:12:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AAC3714CF2A6; Tue, 12 Feb 2019 20:12:42 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D63680653; Tue, 12 Feb 2019 20:12:42 +0000 (UTC) (envelope-from imp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 338651CE52; Tue, 12 Feb 2019 20:12:42 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CKCgTB051936; Tue, 12 Feb 2019 20:12:42 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CKCgco051935; Tue, 12 Feb 2019 20:12:42 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201902122012.x1CKCgco051935@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Tue, 12 Feb 2019 20:12:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344058 - stable/12/usr.sbin/bhyve X-SVN-Group: stable-12 X-SVN-Commit-Author: imp X-SVN-Commit-Paths: stable/12/usr.sbin/bhyve X-SVN-Commit-Revision: 344058 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4D63680653 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 20:12:42 -0000 Author: imp Date: Tue Feb 12 20:12:41 2019 New Revision: 344058 URL: https://svnweb.freebsd.org/changeset/base/344058 Log: Revert the r343077 MFC after it was reverted in -current. Approved by: core@ Modified: stable/12/usr.sbin/bhyve/uart_emul.c Modified: stable/12/usr.sbin/bhyve/uart_emul.c ============================================================================== --- stable/12/usr.sbin/bhyve/uart_emul.c Tue Feb 12 19:05:09 2019 (r344057) +++ stable/12/usr.sbin/bhyve/uart_emul.c Tue Feb 12 20:12:41 2019 (r344058) @@ -431,13 +431,6 @@ uart_write(struct uart_softc *sc, int offset, uint8_t sc->thre_int_pending = true; break; case REG_IER: - /* Assert an interrupt if re-enabling the THRE intr, since we - * always report THRE as active in the status register. - */ - if ((sc->ier & IER_ETXRDY) == 0 && - (value & IER_ETXRDY) != 0) { - sc->thre_int_pending = true; - } /* * Apply mask so that bits 4-7 are 0 * Also enables bits 0-3 only if they're 1 From owner-svn-src-all@freebsd.org Tue Feb 12 21:06:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 88D3C14D10B3; Tue, 12 Feb 2019 21:06:08 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 95D7482CB1; Tue, 12 Feb 2019 21:06:07 +0000 (UTC) (envelope-from phk@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 76EB71D6AA; Tue, 12 Feb 2019 21:06:07 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CL678l078679; Tue, 12 Feb 2019 21:06:07 GMT (envelope-from phk@FreeBSD.org) Received: (from phk@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CL67kH078678; Tue, 12 Feb 2019 21:06:07 GMT (envelope-from phk@FreeBSD.org) Message-Id: <201902122106.x1CL67kH078678@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: phk set sender to phk@FreeBSD.org using -f From: Poul-Henning Kamp Date: Tue, 12 Feb 2019 21:06:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344059 - head/share/man/man4 X-SVN-Group: head X-SVN-Commit-Author: phk X-SVN-Commit-Paths: head/share/man/man4 X-SVN-Commit-Revision: 344059 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 95D7482CB1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.950,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 21:06:08 -0000 Author: phk Date: Tue Feb 12 21:06:07 2019 New Revision: 344059 URL: https://svnweb.freebsd.org/changeset/base/344059 Log: Point people to SMP(4) for CPU<->domain mapping. Modified: head/share/man/man4/numa.4 Modified: head/share/man/man4/numa.4 ============================================================================== --- head/share/man/man4/numa.4 Tue Feb 12 20:12:41 2019 (r344058) +++ head/share/man/man4/numa.4 Tue Feb 12 21:06:07 2019 (r344059) @@ -77,6 +77,9 @@ The .Xr cpuset 1 tool is available for starting processes with a non-default policy, or to change the policy of an existing thread or process. +See +.Xr SMP 4 +for information about CPU to domain mapping. .Pp Systems with non-uniform access to I/O devices may mark those devices with the local VM domain identifier. @@ -117,6 +120,7 @@ Policy information is available in both struct thread .Xr cpuset 1 , .Xr cpuset_getaffinity 2 , .Xr cpuset_setaffinity 2 , +.Xr SMP 4 , .Xr bus_get_domain 9 .Sh HISTORY .Nm From owner-svn-src-all@freebsd.org Tue Feb 12 21:08:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0FD7614D12AA; Tue, 12 Feb 2019 21:08:45 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B4AE082F8E; Tue, 12 Feb 2019 21:08:44 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A4F9D1D6AD; Tue, 12 Feb 2019 21:08:44 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CL8iB5078926; Tue, 12 Feb 2019 21:08:44 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CL8iqc078925; Tue, 12 Feb 2019 21:08:44 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902122108.x1CL8iqc078925@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Tue, 12 Feb 2019 21:08:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344060 - head/sys/net X-SVN-Group: head X-SVN-Commit-Author: marius X-SVN-Commit-Paths: head/sys/net X-SVN-Commit-Revision: 344060 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B4AE082F8E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 21:08:45 -0000 Author: marius Date: Tue Feb 12 21:08:44 2019 New Revision: 344060 URL: https://svnweb.freebsd.org/changeset/base/344060 Log: Further correct and optimize the bus_dma(9) usage of iflib(4): o Correct the obvious bugs in the netmap(4) parts: - No longer check for the existence of DMA maps as bus_dma(9) is used unconditionally in iflib(4) since r341095. - Supply the correct DMA tag and map pairs to bus_dma(9) functions (see also the commit message of r343753). - In iflib_netmap_timer_adjust(), add synchronization of the TX descriptors before calling the ift_txd_credits_update method as the latter evaluates the TX descriptors possibly updated by the MAC. - In _task_fn_tx(), wrap the netmap(4)-specific bits in #ifdef DEV_NETMAP just as done in _task_fn_admin() and _task_fn_rx() respectively. o In iflib_fast_intr_rxtx(), synchronize the TX rather than the RX descriptors before calling the ift_txd_credits_update method (see also above). o There's no need to synchronize an RX buffer that is going to be recycled in iflib_rxd_pkt_get(), yet; it's sufficient to do that as late as passing RX buffers to the MAC via the ift_rxd_refill method. Hence, combine that synchronization with the synchronization of new buffers into a common spot in _iflib_fl_refill(). o There's no need to synchronize the RX descriptors of a free list in preparation of the MAC updating their statuses with every invocation of rxd_frag_to_sd(); it's enough to do this once before handing control over to the MAC, i. e. before calling ift_rxd_flush method in _iflib_fl_refill(), which already performs the necessary synchronization. o Given that the ift_rxd_available method evaluates the RX descriptors which possibly have been altered by the MAC, synchronize as appropriate beforehand. Most notably this is now done in iflib_rxd_avail(), which in turn means that we don't need to issue the same synchronization yet again before calling the ift_rxd_pkt_get method in iflib_rxeof(). o In iflib_txd_db_check(), synchronize the TX descriptors before handing them over to the MAC for transmission via the ift_txd_flush method. o In iflib_encap(), move the TX buffer synchronization after the invocation of the ift_txd_encap() method. If the MAC driver fails to encapsulate the packet and we retry with a defragmented mbuf chain or finally fail, the cycles for TX buffer synchronization have been wasted. Synchronizing afterwards matches what non-iflib(4) drivers typically do and is sufficient as the MAC will not actually start with the transmission before - in this case - the ift_txd_flush method is called. Moreover, for the latter reason the synchronization of the TX descriptors in iflib_encap() can go as it's enough to synchronize them before passing control over to the MAC by issuing the ift_txd_flush() method (see above). o In iflib_txq_can_drain(), only synchronize TX descriptors if the ift_txd_credits_update method accessing these is actually called. Differential Revision: https://reviews.freebsd.org/D19081 Modified: head/sys/net/iflib.c Modified: head/sys/net/iflib.c ============================================================================== --- head/sys/net/iflib.c Tue Feb 12 21:06:07 2019 (r344059) +++ head/sys/net/iflib.c Tue Feb 12 21:08:44 2019 (r344060) @@ -845,11 +845,13 @@ netmap_fl_refill(iflib_rxq_t rxq, struct netmap_kring return netmap_ring_reinit(kring); fl->ifl_vm_addrs[tmp_pidx] = addr; - if (__predict_false(init) && map) { - netmap_load_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); - } else if (map && (slot->flags & NS_BUF_CHANGED)) { + if (__predict_false(init)) { + netmap_load_map(na, fl->ifl_buf_tag, + map[nic_i], addr); + } else if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); + netmap_reload_map(na, fl->ifl_buf_tag, + map[nic_i], addr); } slot->flags &= ~NS_BUF_CHANGED; @@ -861,13 +863,9 @@ netmap_fl_refill(iflib_rxq_t rxq, struct netmap_kring iru.iru_pidx = refill_pidx; iru.iru_count = tmp_pidx+1; ctx->isc_rxd_refill(ctx->ifc_softc, &iru); - refill_pidx = nic_i; - if (map == NULL) - continue; - for (int n = 0; n < iru.iru_count; n++) { - bus_dmamap_sync(fl->ifl_ifdi->idi_tag, map[nic_i_dma], + bus_dmamap_sync(fl->ifl_buf_tag, map[nic_i_dma], BUS_DMASYNC_PREREAD); /* XXX - change this to not use the netmap func*/ nic_i_dma = nm_next(nic_i_dma, lim); @@ -876,9 +874,8 @@ netmap_fl_refill(iflib_rxq_t rxq, struct netmap_kring } kring->nr_hwcur = head; - if (map) - bus_dmamap_sync(fl->ifl_ifdi->idi_tag, fl->ifl_ifdi->idi_map, - BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); + bus_dmamap_sync(fl->ifl_ifdi->idi_tag, fl->ifl_ifdi->idi_map, + BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); if (__predict_true(nic_i != UINT_MAX)) { ctx->isc_rxd_flush(ctx->ifc_softc, rxq->ifr_id, fl->ifl_id, nic_i); DBG_COUNTER_INC(rxd_flush); @@ -922,7 +919,7 @@ iflib_netmap_txsync(struct netmap_kring *kring, int fl if_ctx_t ctx = ifp->if_softc; iflib_txq_t txq = &ctx->ifc_txqs[kring->ring_id]; - bus_dmamap_sync(txq->ift_buf_tag, txq->ift_ifdi->idi_map, + bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE); /* @@ -956,8 +953,7 @@ iflib_netmap_txsync(struct netmap_kring *kring, int fl __builtin_prefetch(&ring->slot[nm_i]); __builtin_prefetch(&txq->ift_sds.ifsd_m[nic_i]); - if (txq->ift_sds.ifsd_map) - __builtin_prefetch(&txq->ift_sds.ifsd_map[nic_i]); + __builtin_prefetch(&txq->ift_sds.ifsd_map[nic_i]); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; @@ -984,20 +980,20 @@ iflib_netmap_txsync(struct netmap_kring *kring, int fl /* prefetch for next round */ __builtin_prefetch(&ring->slot[nm_i + 1]); __builtin_prefetch(&txq->ift_sds.ifsd_m[nic_i + 1]); - if (txq->ift_sds.ifsd_map) { - __builtin_prefetch(&txq->ift_sds.ifsd_map[nic_i + 1]); + __builtin_prefetch(&txq->ift_sds.ifsd_map[nic_i + 1]); - NM_CHECK_ADDR_LEN(na, addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); - if (slot->flags & NS_BUF_CHANGED) { - /* buffer has changed, reload map */ - netmap_reload_map(na, txq->ift_buf_tag, - txq->ift_sds.ifsd_map[nic_i], addr); - } - /* make sure changes to the buffer are synced */ - bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_sds.ifsd_map[nic_i], - BUS_DMASYNC_PREWRITE); + if (slot->flags & NS_BUF_CHANGED) { + /* buffer has changed, reload map */ + netmap_reload_map(na, txq->ift_buf_tag, + txq->ift_sds.ifsd_map[nic_i], addr); } + /* make sure changes to the buffer are synced */ + bus_dmamap_sync(txq->ift_buf_tag, + txq->ift_sds.ifsd_map[nic_i], + BUS_DMASYNC_PREWRITE); + slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); nm_i = nm_next(nm_i, lim); nic_i = nm_next(nic_i, lim); @@ -1005,7 +1001,7 @@ iflib_netmap_txsync(struct netmap_kring *kring, int fl kring->nr_hwcur = nm_i; /* synchronize the NIC ring */ - bus_dmamap_sync(txq->ift_buf_tag, txq->ift_ifdi->idi_map, + bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); /* (re)start the tx unit up to slot nic_i (excluded) */ @@ -1053,6 +1049,7 @@ iflib_netmap_rxsync(struct netmap_kring *kring, int fl { struct netmap_adapter *na = kring->na; struct netmap_ring *ring = kring->ring; + iflib_fl_t fl; uint32_t nm_i; /* index into the netmap ring */ uint32_t nic_i; /* index into the NIC ring */ u_int i, n; @@ -1064,18 +1061,18 @@ iflib_netmap_rxsync(struct netmap_kring *kring, int fl struct ifnet *ifp = na->ifp; if_ctx_t ctx = ifp->if_softc; iflib_rxq_t rxq = &ctx->ifc_rxqs[kring->ring_id]; - iflib_fl_t fl = rxq->ifr_fl; if (head > lim) return netmap_ring_reinit(kring); - /* XXX check sync modes */ + /* + * XXX netmap_fl_refill() only ever (re)fills free list 0 so far. + */ + for (i = 0, fl = rxq->ifr_fl; i < rxq->ifr_nfl; i++, fl++) { - if (fl->ifl_sds.ifsd_map == NULL) - continue; - bus_dmamap_sync(rxq->ifr_fl[i].ifl_buf_tag, - fl->ifl_ifdi->idi_map, + bus_dmamap_sync(fl->ifl_ifdi->idi_tag, fl->ifl_ifdi->idi_map, BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE); } + /* * First part: import newly received packets. * @@ -1099,7 +1096,8 @@ iflib_netmap_rxsync(struct netmap_kring *kring, int fl fl = &rxq->ifr_fl[i]; nic_i = fl->ifl_cidx; nm_i = netmap_idx_n2k(kring, nic_i); - avail = iflib_rxd_avail(ctx, rxq, nic_i, USHRT_MAX); + avail = ctx->isc_rxd_available(ctx->ifc_softc, + rxq->ifr_id, nic_i, USHRT_MAX); for (n = 0; avail > 0; n++, avail--) { rxd_info_zero(&ri); ri.iri_frags = rxq->ifr_frags; @@ -1110,7 +1108,7 @@ iflib_netmap_rxsync(struct netmap_kring *kring, int fl error = ctx->isc_rxd_pkt_get(ctx->ifc_softc, &ri); ring->slot[nm_i].len = error ? 0 : ri.iri_len - crclen; ring->slot[nm_i].flags = 0; - bus_dmamap_sync(fl->ifl_ifdi->idi_tag, + bus_dmamap_sync(fl->ifl_buf_tag, fl->ifl_sds.ifsd_map[nic_i], BUS_DMASYNC_POSTREAD); nm_i = nm_next(nm_i, lim); nic_i = nm_next(nic_i, lim); @@ -1221,13 +1219,17 @@ iflib_netmap_rxq_init(if_ctx_t ctx, iflib_rxq_t rxq) } static void -iflib_netmap_timer_adjust(if_ctx_t ctx, uint16_t txqid, uint32_t *reset_on) +iflib_netmap_timer_adjust(if_ctx_t ctx, iflib_txq_t txq, uint32_t *reset_on) { struct netmap_kring *kring; + uint16_t txqid; + txqid = txq->ift_id; kring = NA(ctx->ifc_ifp)->tx_rings[txqid]; if (kring->nr_hwcur != nm_next(kring->nr_hwtail, kring->nkr_num_slots - 1)) { + bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, + BUS_DMASYNC_POSTREAD); if (ctx->isc_txd_credits_update(ctx->ifc_softc, txqid, false)) netmap_tx_irq(ctx->ifc_ifp, txqid); if (!(ctx->ifc_flags & IFC_NETMAP_TX_IRQ)) { @@ -1249,7 +1251,7 @@ iflib_netmap_timer_adjust(if_ctx_t ctx, uint16_t txqid #define iflib_netmap_attach(ctx) (0) #define netmap_rx_irq(ifp, qid, budget) (0) #define netmap_tx_irq(ifp, qid) do {} while (0) -#define iflib_netmap_timer_adjust(ctx, txqid, reset_on) +#define iflib_netmap_timer_adjust(ctx, txq, reset_on) #endif @@ -1482,9 +1484,12 @@ iflib_fast_intr_rxtx(void *arg) { iflib_filter_info_t info = arg; struct grouptask *gtask = info->ifi_task; + if_ctx_t ctx; iflib_rxq_t rxq = (iflib_rxq_t)info->ifi_ctx; - if_ctx_t ctx = NULL;; + iflib_txq_t txq; + void *sc; int i, cidx; + qidx_t txqid; if (!iflib_started) return (FILTER_HANDLED); @@ -1493,19 +1498,19 @@ iflib_fast_intr_rxtx(void *arg) if (info->ifi_filter != NULL && info->ifi_filter(info->ifi_filter_arg) == FILTER_HANDLED) return (FILTER_HANDLED); + ctx = rxq->ifr_ctx; + sc = ctx->ifc_softc; MPASS(rxq->ifr_ntxqirq); for (i = 0; i < rxq->ifr_ntxqirq; i++) { - qidx_t txqid = rxq->ifr_txqid[i]; - - ctx = rxq->ifr_ctx; - - bus_dmamap_sync(rxq->ifr_ifdi->idi_tag, rxq->ifr_ifdi->idi_map, + txqid = rxq->ifr_txqid[i]; + txq = &ctx->ifc_txqs[txqid]; + bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, BUS_DMASYNC_POSTREAD); - if (!ctx->isc_txd_credits_update(ctx->ifc_softc, txqid, false)) { + if (!ctx->isc_txd_credits_update(sc, txqid, false)) { IFDI_TX_QUEUE_INTR_ENABLE(ctx, txqid); continue; } - GROUPTASK_ENQUEUE(&ctx->ifc_txqs[txqid].ift_task); + GROUPTASK_ENQUEUE(&txq->ift_task); } if (ctx->ifc_sctx->isc_flags & IFLIB_HAS_RXCQ) cidx = rxq->ifr_cq_cidx; @@ -1804,7 +1809,7 @@ iflib_txq_setup(iflib_txq_t txq) IFDI_TXQ_SETUP(ctx, txq->ift_id); for (i = 0, di = txq->ift_ifdi; i < sctx->isc_ntxqs; i++, di++) bus_dmamap_sync(di->idi_tag, di->idi_map, - BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); + BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); return (0); } @@ -2008,8 +2013,6 @@ _iflib_fl_refill(if_ctx_t ctx, iflib_fl_t fl, int coun break; } - bus_dmamap_sync(fl->ifl_buf_tag, sd_map[frag_idx], - BUS_DMASYNC_PREREAD); sd_ba[frag_idx] = bus_addr = cb_arg.seg.ds_addr; sd_cl[frag_idx] = cl; #if MEMORY_LOGGING @@ -2018,6 +2021,8 @@ _iflib_fl_refill(if_ctx_t ctx, iflib_fl_t fl, int coun } else { bus_addr = sd_ba[frag_idx]; } + bus_dmamap_sync(fl->ifl_buf_tag, sd_map[frag_idx], + BUS_DMASYNC_PREREAD); MPASS(sd_m[frag_idx] == NULL); if ((m = m_gethdr(M_NOWAIT, MT_NOINIT)) == NULL) { @@ -2285,7 +2290,7 @@ iflib_timer(void *arg) } #ifdef DEV_NETMAP if (if_getcapenable(ctx->ifc_ifp) & IFCAP_NETMAP) - iflib_netmap_timer_adjust(ctx, txq->ift_id, &reset_on); + iflib_netmap_timer_adjust(ctx, txq, &reset_on); #endif /* handle any laggards */ if (txq->ift_db_pending) @@ -2494,7 +2499,6 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, int int flid, cidx; bus_dmamap_t map; iflib_fl_t fl; - iflib_dma_info_t di; int next; map = NULL; @@ -2514,7 +2518,6 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, int next = (cidx + CACHE_PTR_INCREMENT) & (fl->ifl_size-1); prefetch(&fl->ifl_sds.ifsd_map[next]); map = fl->ifl_sds.ifsd_map[cidx]; - di = fl->ifl_ifdi; next = (cidx + CACHE_LINE_SIZE) & (fl->ifl_size-1); /* not valid assert if bxe really does SGE from non-contiguous elements */ @@ -2525,8 +2528,6 @@ rxd_frag_to_sd(iflib_rxq_t rxq, if_rxd_frag_t irf, int fl->ifl_cidx = (fl->ifl_cidx + 1) & (fl->ifl_size-1); if (__predict_false(fl->ifl_cidx == 0)) fl->ifl_gen = 0; - bus_dmamap_sync(fl->ifl_ifdi->idi_tag, fl->ifl_ifdi->idi_map, - BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); bit_clear(fl->ifl_rx_bitmap, cidx); } @@ -2604,9 +2605,6 @@ iflib_rxd_pkt_get(iflib_rxq_t rxq, if_rxd_info_t ri) m->m_data += 2; #endif memcpy(m->m_data, *sd.ifsd_cl, ri->iri_len); - bus_dmamap_sync(rxq->ifr_fl->ifl_buf_tag, - rxq->ifr_fl->ifl_sds.ifsd_map[ri->iri_frags[0].irf_idx], - BUS_DMASYNC_PREREAD); m->m_len = ri->iri_frags[0].irf_len; } else { m = assemble_segments(rxq, ri, &sd); @@ -2675,7 +2673,6 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) if_ctx_t ctx = rxq->ifr_ctx; if_shared_ctx_t sctx = ctx->ifc_sctx; if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; - iflib_dma_info_t di; int avail, i; qidx_t *cidxp; struct if_rxd_info ri; @@ -2720,9 +2717,6 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) ri.iri_cidx = *cidxp; ri.iri_ifp = ifp; ri.iri_frags = rxq->ifr_frags; - di = rxq->ifr_fl[rxq->ifr_frags[0].irf_flid].ifl_ifdi; - bus_dmamap_sync(di->idi_tag, di->idi_map, - BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE); err = ctx->isc_rxd_pkt_get(ctx->ifc_softc, &ri); if (err) @@ -2891,6 +2885,8 @@ iflib_txd_db_check(if_ctx_t ctx, iflib_txq_t txq, int max = TXQ_MAX_DB_DEFERRED(txq, in_use); if (ring || txq->ift_db_pending >= max) { dbval = txq->ift_npending ? txq->ift_npending : txq->ift_pidx; + bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, + BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); ctx->isc_txd_flush(ctx->ifc_softc, txq->ift_id, dbval); txq->ift_db_pending = txq->ift_npending = 0; rang = true; @@ -3333,10 +3329,8 @@ defrag: #ifdef PKT_DEBUG print_pkt(&pi); #endif - bus_dmamap_sync(buf_tag, map, BUS_DMASYNC_PREWRITE); if ((err = ctx->isc_txd_encap(ctx->ifc_softc, &pi)) == 0) { - bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, - BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); + bus_dmamap_sync(buf_tag, map, BUS_DMASYNC_PREWRITE); DBG_COUNTER_INC(tx_encap); MPASS(pi.ipi_new_pidx < txq->ift_size); @@ -3505,10 +3499,12 @@ iflib_txq_can_drain(struct ifmp_ring *r) iflib_txq_t txq = r->cookie; if_ctx_t ctx = txq->ift_ctx; + if (TXQ_AVAIL(txq) > MAX_TX_DESC(ctx) + 2) + return (1); bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, BUS_DMASYNC_POSTREAD); - return ((TXQ_AVAIL(txq) > MAX_TX_DESC(ctx) + 2) || - ctx->isc_txd_credits_update(ctx->ifc_softc, txq->ift_id, false)); + return (ctx->isc_txd_credits_update(ctx->ifc_softc, txq->ift_id, + false)); } static uint32_t @@ -3662,7 +3658,6 @@ _task_fn_tx(void *context) { iflib_txq_t txq = context; if_ctx_t ctx = txq->ift_ctx; - struct ifnet *ifp = ctx->ifc_ifp; int abdicate = ctx->ifc_sysctl_tx_abdicate; #ifdef IFLIB_DIAGNOSTICS @@ -3670,14 +3665,16 @@ _task_fn_tx(void *context) #endif if (!(if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING)) return; - if (if_getcapenable(ifp) & IFCAP_NETMAP) { +#ifdef DEV_NETMAP + if (if_getcapenable(ctx->ifc_ifp) & IFCAP_NETMAP) { bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, BUS_DMASYNC_POSTREAD); if (ctx->isc_txd_credits_update(ctx->ifc_softc, txq->ift_id, false)) - netmap_tx_irq(ifp, txq->ift_id); + netmap_tx_irq(ctx->ifc_ifp, txq->ift_id); IFDI_TX_QUEUE_INTR_ENABLE(ctx, txq->ift_id); return; } +#endif #ifdef ALTQ if (ALTQ_IS_ENABLED(&ifp->if_snd)) iflib_altq_if_start(ifp); @@ -3785,7 +3782,7 @@ _task_fn_admin(void *context) #ifdef DEV_NETMAP reset_on = hz / 2; if (if_getcapenable(ctx->ifc_ifp) & IFCAP_NETMAP) - iflib_netmap_timer_adjust(ctx, txq->ift_id, &reset_on); + iflib_netmap_timer_adjust(ctx, txq, &reset_on); #endif callout_reset_on(&txq->ift_timer, reset_on, iflib_timer, txq, txq->ift_timer.c_cpu); } @@ -5953,7 +5950,12 @@ iflib_tx_credits_update(if_ctx_t ctx, iflib_txq_t txq) static int iflib_rxd_avail(if_ctx_t ctx, iflib_rxq_t rxq, qidx_t cidx, qidx_t budget) { + iflib_fl_t fl; + u_int i; + for (i = 0, fl = &rxq->ifr_fl[0]; i < rxq->ifr_nfl; i++, fl++) + bus_dmamap_sync(fl->ifl_ifdi->idi_tag, fl->ifl_ifdi->idi_map, + BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE); return (ctx->isc_rxd_available(ctx->ifc_softc, rxq->ifr_id, cidx, budget)); } From owner-svn-src-all@freebsd.org Tue Feb 12 21:22:58 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A47414D1985; Tue, 12 Feb 2019 21:22:58 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2C38C83945; Tue, 12 Feb 2019 21:22:58 +0000 (UTC) (envelope-from kp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1D9D21DA19; Tue, 12 Feb 2019 21:22:58 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CLMv1n089415; Tue, 12 Feb 2019 21:22:57 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CLMv6P089414; Tue, 12 Feb 2019 21:22:57 GMT (envelope-from kp@FreeBSD.org) Message-Id: <201902122122.x1CLMv6P089414@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Tue, 12 Feb 2019 21:22:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344061 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: kp X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 344061 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2C38C83945 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.950,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 21:22:58 -0000 Author: kp Date: Tue Feb 12 21:22:57 2019 New Revision: 344061 URL: https://svnweb.freebsd.org/changeset/base/344061 Log: garp: Fix vnet related panic for gratuitous arp Gratuitous ARP packets are sent from a timer, which means we don't have a vnet context set. As a result we panic trying to send the packet. Set the vnet context based on the interface associated with the interface address. To reproduce: sysctl net.link.ether.inet.garp_rexmit_count=2 ifconfig vtnet1 10.0.0.1/24 up PR: 235699 Reviewed by: vangyzen@ MFC after: 1 week Modified: head/sys/netinet/if_ether.c Modified: head/sys/netinet/if_ether.c ============================================================================== --- head/sys/netinet/if_ether.c Tue Feb 12 21:08:44 2019 (r344060) +++ head/sys/netinet/if_ether.c Tue Feb 12 21:22:57 2019 (r344061) @@ -1335,6 +1335,8 @@ garp_rexmit(void *arg) return; } + CURVNET_SET(ia->ia_ifa.ifa_ifp->if_vnet); + /* * Drop lock while the ARP request is generated. */ @@ -1362,6 +1364,8 @@ garp_rexmit(void *arg) ifa_free(&ia->ia_ifa); } } + + CURVNET_RESTORE(); } /* From owner-svn-src-all@freebsd.org Tue Feb 12 21:24:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9489314D1A50; Tue, 12 Feb 2019 21:24:01 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3FBA883AFD; Tue, 12 Feb 2019 21:24:01 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2C5AF1DA2B; Tue, 12 Feb 2019 21:24:01 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CLO1wm089528; Tue, 12 Feb 2019 21:24:01 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CLNxSq089514; Tue, 12 Feb 2019 21:23:59 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902122123.x1CLNxSq089514@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Tue, 12 Feb 2019 21:23:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344062 - in head/sys: compat/linuxkpi/common/src kern net sys X-SVN-Group: head X-SVN-Commit-Author: marius X-SVN-Commit-Paths: in head/sys: compat/linuxkpi/common/src kern net sys X-SVN-Commit-Revision: 344062 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3FBA883AFD X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 21:24:01 -0000 Author: marius Date: Tue Feb 12 21:23:59 2019 New Revision: 344062 URL: https://svnweb.freebsd.org/changeset/base/344062 Log: Make taskqgroup_attach{,_cpu}(9) work across architectures So far, intr_{g,s}etaffinity(9) take a single int for identifying a device interrupt. This approach doesn't work on all architectures supported, as a single int isn't sufficient to globally specify a device interrupt. In particular, with multiple interrupt controllers in one system as found on e. g. arm and arm64 machines, an interrupt number as returned by rman_get_start(9) may be only unique relative to the bus and, thus, interrupt controller, a certain device hangs off from. In turn, this makes taskqgroup_attach{,_cpu}(9) and - internal to the gtaskqueue implementation - taskqgroup_attach_deferred{,_cpu}() not work across architectures. Yet in turn, iflib(4) as gtaskqueue consumer so far doesn't fit architectures where interrupt numbers aren't globally unique. However, at least for intr_setaffinity(..., CPU_WHICH_IRQ, ...) as employed by the gtaskqueue implementation to bind an interrupt to a particular CPU, using bus_bind_intr(9) instead is equivalent from a functional point of view, with bus_bind_intr(9) taking the device and interrupt resource arguments required for uniquely specifying a device interrupt. Thus, change the gtaskqueue implementation to employ bus_bind_intr(9) instead and intr_{g,s}etaffinity(9) to take the device and interrupt resource arguments required respectively. This change also moves struct grouptask from to and wraps struct gtask along with the gtask_fn_t typedef into #ifdef _KERNEL as userland likes to include or indirectly drags it in - for better or worse also with _KERNEL defined -, which with device_t and struct resource dependencies otherwise is no longer as easily possible now. The userland inclusion problem probably can be improved a bit by introducing a _WANT_TASK (as well as a _WANT_MOUNT) akin to the existing _WANT_PRISON etc., which is orthogonal to this change, though, and likely needs an exp-run. While at it: - Change the gt_cpu member in the grouptask structure to be of type int as used elswhere for specifying CPUs (an int16_t may be too narrow sooner or later), - move the gtaskqueue_enqueue_fn typedef from to the gtaskqueue implementation as it's only used and needed there, - change the GTASK_INIT macro to use "gtask" rather than "task" as argument given that it actually operates on a struct gtask rather than a struct task, and - let subr_gtaskqueue.c consistently use __func__ to print functions names. Reported by: mmel Reviewed by: mmel Differential Revision: https://reviews.freebsd.org/D19139 Modified: head/sys/compat/linuxkpi/common/src/linux_tasklet.c head/sys/kern/subr_epoch.c head/sys/kern/subr_gtaskqueue.c head/sys/net/iflib.c head/sys/sys/_task.h head/sys/sys/gtaskqueue.h head/sys/sys/param.h Modified: head/sys/compat/linuxkpi/common/src/linux_tasklet.c ============================================================================== --- head/sys/compat/linuxkpi/common/src/linux_tasklet.c Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/compat/linuxkpi/common/src/linux_tasklet.c Tue Feb 12 21:23:59 2019 (r344062) @@ -109,7 +109,7 @@ tasklet_subsystem_init(void *arg __unused) GROUPTASK_INIT(&tw->gtask, 0, tasklet_handler, tw); snprintf(buf, sizeof(buf), "softirq%d", i); taskqgroup_attach_cpu(qgroup_softirq, &tw->gtask, - "tasklet", i, -1, buf); + "tasklet", i, NULL, NULL, buf); } } SYSINIT(linux_tasklet, SI_SUB_TASKQ, SI_ORDER_THIRD, tasklet_subsystem_init, NULL); Modified: head/sys/kern/subr_epoch.c ============================================================================== --- head/sys/kern/subr_epoch.c Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/kern/subr_epoch.c Tue Feb 12 21:23:59 2019 (r344062) @@ -147,7 +147,7 @@ epoch_init(void *arg __unused) GROUPTASK_INIT(DPCPU_ID_PTR(cpu, epoch_cb_task), 0, epoch_call_task, NULL); taskqgroup_attach_cpu(qgroup_softirq, - DPCPU_ID_PTR(cpu, epoch_cb_task), NULL, cpu, -1, + DPCPU_ID_PTR(cpu, epoch_cb_task), NULL, cpu, NULL, NULL, "epoch call task"); } inited = 1; Modified: head/sys/kern/subr_gtaskqueue.c ============================================================================== --- head/sys/kern/subr_gtaskqueue.c Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/kern/subr_gtaskqueue.c Tue Feb 12 21:23:59 2019 (r344062) @@ -33,7 +33,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -64,6 +63,8 @@ struct gtaskqueue_busy { static struct gtask * const TB_DRAIN_WAITER = (struct gtask *)0x1; +typedef void (*gtaskqueue_enqueue_fn)(void *context); + struct gtaskqueue { STAILQ_HEAD(, gtask) tq_queue; gtaskqueue_enqueue_fn tq_enqueue; @@ -681,7 +682,7 @@ taskqgroup_find(struct taskqgroup *qgroup, void *uniq) } } if (idx == -1) - panic("taskqgroup_find: Failed to pick a qid."); + panic("%s: failed to pick a qid.", __func__); return (idx); } @@ -713,13 +714,13 @@ SYSINIT(tqg_record_smp_started, SI_SUB_SMP, SI_ORDER_F void taskqgroup_attach(struct taskqgroup *qgroup, struct grouptask *gtask, - void *uniq, int irq, const char *name) + void *uniq, device_t dev, struct resource *irq, const char *name) { - cpuset_t mask; - int qid, error; + int cpu, qid, error; gtask->gt_uniq = uniq; snprintf(gtask->gt_name, GROUPTASK_NAMELEN, "%s", name ? name : "grouptask"); + gtask->gt_dev = dev; gtask->gt_irq = irq; gtask->gt_cpu = -1; mtx_lock(&qgroup->tqg_lock); @@ -727,14 +728,14 @@ taskqgroup_attach(struct taskqgroup *qgroup, struct gr qgroup->tqg_queue[qid].tgc_cnt++; LIST_INSERT_HEAD(&qgroup->tqg_queue[qid].tgc_tasks, gtask, gt_list); gtask->gt_taskqueue = qgroup->tqg_queue[qid].tgc_taskq; - if (irq != -1 && tqg_smp_started) { - gtask->gt_cpu = qgroup->tqg_queue[qid].tgc_cpu; - CPU_ZERO(&mask); - CPU_SET(qgroup->tqg_queue[qid].tgc_cpu, &mask); + if (dev != NULL && irq != NULL && tqg_smp_started) { + cpu = qgroup->tqg_queue[qid].tgc_cpu; + gtask->gt_cpu = cpu; mtx_unlock(&qgroup->tqg_lock); - error = intr_setaffinity(irq, CPU_WHICH_IRQ, &mask); + error = bus_bind_intr(dev, irq, cpu); if (error) - printf("%s: setaffinity failed for %s: %d\n", __func__, gtask->gt_name, error); + printf("%s: binding interrupt failed for %s: %d\n", + __func__, gtask->gt_name, error); } else mtx_unlock(&qgroup->tqg_lock); } @@ -742,27 +743,22 @@ taskqgroup_attach(struct taskqgroup *qgroup, struct gr static void taskqgroup_attach_deferred(struct taskqgroup *qgroup, struct grouptask *gtask) { - cpuset_t mask; int qid, cpu, error; mtx_lock(&qgroup->tqg_lock); qid = taskqgroup_find(qgroup, gtask->gt_uniq); cpu = qgroup->tqg_queue[qid].tgc_cpu; - if (gtask->gt_irq != -1) { + if (gtask->gt_dev != NULL && gtask->gt_irq != NULL) { mtx_unlock(&qgroup->tqg_lock); - - CPU_ZERO(&mask); - CPU_SET(cpu, &mask); - error = intr_setaffinity(gtask->gt_irq, CPU_WHICH_IRQ, &mask); + error = bus_bind_intr(gtask->gt_dev, gtask->gt_irq, cpu); mtx_lock(&qgroup->tqg_lock); if (error) - printf("%s: %s setaffinity failed: %d\n", __func__, gtask->gt_name, error); + printf("%s: binding interrupt failed for %s: %d\n", + __func__, gtask->gt_name, error); } qgroup->tqg_queue[qid].tgc_cnt++; - - LIST_INSERT_HEAD(&qgroup->tqg_queue[qid].tgc_tasks, gtask, - gt_list); + LIST_INSERT_HEAD(&qgroup->tqg_queue[qid].tgc_tasks, gtask, gt_list); MPASS(qgroup->tqg_queue[qid].tgc_taskq != NULL); gtask->gt_taskqueue = qgroup->tqg_queue[qid].tgc_taskq; mtx_unlock(&qgroup->tqg_lock); @@ -770,14 +766,14 @@ taskqgroup_attach_deferred(struct taskqgroup *qgroup, int taskqgroup_attach_cpu(struct taskqgroup *qgroup, struct grouptask *gtask, - void *uniq, int cpu, int irq, const char *name) + void *uniq, int cpu, device_t dev, struct resource *irq, const char *name) { - cpuset_t mask; int i, qid, error; qid = -1; gtask->gt_uniq = uniq; snprintf(gtask->gt_name, GROUPTASK_NAMELEN, "%s", name ? name : "grouptask"); + gtask->gt_dev = dev; gtask->gt_irq = irq; gtask->gt_cpu = cpu; mtx_lock(&qgroup->tqg_lock); @@ -800,12 +796,11 @@ taskqgroup_attach_cpu(struct taskqgroup *qgroup, struc cpu = qgroup->tqg_queue[qid].tgc_cpu; mtx_unlock(&qgroup->tqg_lock); - CPU_ZERO(&mask); - CPU_SET(cpu, &mask); - if (irq != -1 && tqg_smp_started) { - error = intr_setaffinity(irq, CPU_WHICH_IRQ, &mask); + if (dev != NULL && irq != NULL && tqg_smp_started) { + error = bus_bind_intr(dev, irq, cpu); if (error) - printf("%s: setaffinity failed: %d\n", __func__, error); + printf("%s: binding interrupt failed for %s: %d\n", + __func__, gtask->gt_name, error); } return (0); } @@ -813,10 +808,12 @@ taskqgroup_attach_cpu(struct taskqgroup *qgroup, struc static int taskqgroup_attach_cpu_deferred(struct taskqgroup *qgroup, struct grouptask *gtask) { - cpuset_t mask; - int i, qid, irq, cpu, error; + device_t dev; + struct resource *irq; + int cpu, error, i, qid; qid = -1; + dev = gtask->gt_dev; irq = gtask->gt_irq; cpu = gtask->gt_cpu; MPASS(tqg_smp_started); @@ -837,13 +834,11 @@ taskqgroup_attach_cpu_deferred(struct taskqgroup *qgro gtask->gt_taskqueue = qgroup->tqg_queue[qid].tgc_taskq; mtx_unlock(&qgroup->tqg_lock); - CPU_ZERO(&mask); - CPU_SET(cpu, &mask); - - if (irq != -1) { - error = intr_setaffinity(irq, CPU_WHICH_IRQ, &mask); + if (dev != NULL && irq != NULL) { + error = bus_bind_intr(dev, irq, cpu); if (error) - printf("%s: setaffinity failed: %d\n", __func__, error); + printf("%s: binding interrupt failed for %s: %d\n", + __func__, gtask->gt_name, error); } return (0); } @@ -859,7 +854,7 @@ taskqgroup_detach(struct taskqgroup *qgroup, struct gr if (qgroup->tqg_queue[i].tgc_taskq == gtask->gt_taskqueue) break; if (i == qgroup->tqg_cnt) - panic("taskqgroup_detach: task %s not in group\n", gtask->gt_name); + panic("%s: task %s not in group", __func__, gtask->gt_name); qgroup->tqg_queue[i].tgc_cnt--; LIST_REMOVE(gtask, gt_list); mtx_unlock(&qgroup->tqg_lock); @@ -882,8 +877,7 @@ taskqgroup_binder(void *ctx) thread_unlock(curthread); if (error) - printf("%s: setaffinity failed: %d\n", __func__, - error); + printf("%s: binding curthread failed: %d\n", __func__, error); free(gtask, M_DEVBUF); } @@ -1051,15 +1045,16 @@ taskqgroup_destroy(struct taskqgroup *qgroup) void taskqgroup_config_gtask_init(void *ctx, struct grouptask *gtask, gtask_fn_t *fn, - const char *name) + const char *name) { GROUPTASK_INIT(gtask, 0, fn, ctx); - taskqgroup_attach(qgroup_config, gtask, gtask, -1, name); + taskqgroup_attach(qgroup_config, gtask, gtask, NULL, NULL, name); } void taskqgroup_config_gtask_deinit(struct grouptask *gtask) { + taskqgroup_detach(qgroup_config, gtask); } Modified: head/sys/net/iflib.c ============================================================================== --- head/sys/net/iflib.c Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/net/iflib.c Tue Feb 12 21:23:59 2019 (r344062) @@ -4481,7 +4481,8 @@ iflib_device_register(device_t dev, void *sc, if_share GROUPTASK_INIT(&ctx->ifc_admin_task, 0, _task_fn_admin, ctx); /* XXX format name */ - taskqgroup_attach(qgroup_if_config_tqg, &ctx->ifc_admin_task, ctx, -1, "admin"); + taskqgroup_attach(qgroup_if_config_tqg, &ctx->ifc_admin_task, ctx, + NULL, NULL, "admin"); /* Set up cpu set. If it fails, use the set of all CPUs. */ if (bus_get_cpus(dev, INTR_CPUS, sizeof(ctx->ifc_cpus), &ctx->ifc_cpus) != 0) { @@ -4742,7 +4743,8 @@ iflib_pseudo_register(device_t dev, if_shared_ctx_t sc GROUPTASK_INIT(&ctx->ifc_admin_task, 0, _task_fn_admin, ctx); /* XXX format name */ - taskqgroup_attach(qgroup_if_config_tqg, &ctx->ifc_admin_task, ctx, -1, "admin"); + taskqgroup_attach(qgroup_if_config_tqg, &ctx->ifc_admin_task, ctx, + NULL, NULL, "admin"); /* XXX --- can support > 1 -- but keep it simple for now */ scctx->isc_intr = IFLIB_INTR_LEGACY; @@ -5634,19 +5636,22 @@ get_core_offset(if_ctx_t ctx, iflib_intr_type_t type, /* Just to avoid copy/paste */ static inline int -iflib_irq_set_affinity(if_ctx_t ctx, int irq, iflib_intr_type_t type, int qid, - struct grouptask *gtask, struct taskqgroup *tqg, void *uniq, const char *name) +iflib_irq_set_affinity(if_ctx_t ctx, if_irq_t irq, iflib_intr_type_t type, + int qid, struct grouptask *gtask, struct taskqgroup *tqg, void *uniq, + const char *name) { - int cpuid; - int err, tid; + device_t dev; + int err, cpuid, tid; + dev = ctx->ifc_dev; cpuid = find_nth(ctx, qid); tid = get_core_offset(ctx, type, qid); MPASS(tid >= 0); cpuid = find_close_core(cpuid, tid); - err = taskqgroup_attach_cpu(tqg, gtask, uniq, cpuid, irq, name); + err = taskqgroup_attach_cpu(tqg, gtask, uniq, cpuid, dev, irq->ii_res, + name); if (err) { - device_printf(ctx->ifc_dev, "taskqgroup_attach_cpu failed %d\n", err); + device_printf(dev, "taskqgroup_attach_cpu failed %d\n", err); return (err); } #ifdef notyet @@ -5661,6 +5666,7 @@ iflib_irq_alloc_generic(if_ctx_t ctx, if_irq_t irq, in iflib_intr_type_t type, driver_filter_t *filter, void *filter_arg, int qid, const char *name) { + device_t dev; struct grouptask *gtask; struct taskqgroup *tqg; iflib_filter_info_t info; @@ -5720,20 +5726,22 @@ iflib_irq_alloc_generic(if_ctx_t ctx, if_irq_t irq, in info->ifi_task = gtask; info->ifi_ctx = q; + dev = ctx->ifc_dev; err = _iflib_irq_alloc(ctx, irq, rid, intr_fast, NULL, info, name); if (err != 0) { - device_printf(ctx->ifc_dev, "_iflib_irq_alloc failed %d\n", err); + device_printf(dev, "_iflib_irq_alloc failed %d\n", err); return (err); } if (type == IFLIB_INTR_ADMIN) return (0); if (tqrid != -1) { - err = iflib_irq_set_affinity(ctx, rman_get_start(irq->ii_res), type, qid, gtask, tqg, q, name); + err = iflib_irq_set_affinity(ctx, irq, type, qid, gtask, tqg, + q, name); if (err) return (err); } else { - taskqgroup_attach(tqg, gtask, q, rman_get_start(irq->ii_res), name); + taskqgroup_attach(tqg, gtask, q, dev, irq->ii_res, name); } return (0); @@ -5746,7 +5754,6 @@ iflib_softirq_alloc_generic(if_ctx_t ctx, if_irq_t irq struct taskqgroup *tqg; gtask_fn_t *fn; void *q; - int irq_num = -1; int err; switch (type) { @@ -5755,16 +5762,12 @@ iflib_softirq_alloc_generic(if_ctx_t ctx, if_irq_t irq gtask = &ctx->ifc_txqs[qid].ift_task; tqg = qgroup_if_io_tqg; fn = _task_fn_tx; - if (irq != NULL) - irq_num = rman_get_start(irq->ii_res); break; case IFLIB_INTR_RX: q = &ctx->ifc_rxqs[qid]; gtask = &ctx->ifc_rxqs[qid].ifr_task; tqg = qgroup_if_io_tqg; fn = _task_fn_rx; - if (irq != NULL) - irq_num = rman_get_start(irq->ii_res); break; case IFLIB_INTR_IOV: q = ctx; @@ -5776,14 +5779,15 @@ iflib_softirq_alloc_generic(if_ctx_t ctx, if_irq_t irq panic("unknown net intr type"); } GROUPTASK_INIT(gtask, 0, fn, q); - if (irq_num != -1) { - err = iflib_irq_set_affinity(ctx, irq_num, type, qid, gtask, tqg, q, name); + if (irq != NULL) { + err = iflib_irq_set_affinity(ctx, irq, type, qid, gtask, tqg, + q, name); if (err) - taskqgroup_attach(tqg, gtask, q, irq_num, name); + taskqgroup_attach(tqg, gtask, q, ctx->ifc_dev, + irq->ii_res, name); + } else { + taskqgroup_attach(tqg, gtask, q, NULL, NULL, name); } - else { - taskqgroup_attach(tqg, gtask, q, irq_num, name); - } } void @@ -5805,7 +5809,9 @@ iflib_legacy_setup(if_ctx_t ctx, driver_filter_t filte iflib_rxq_t rxq = ctx->ifc_rxqs; if_irq_t irq = &ctx->ifc_legacy_irq; iflib_filter_info_t info; + device_t dev; struct grouptask *gtask; + struct resource *res; struct taskqgroup *tqg; gtask_fn_t *fn; int tqrid; @@ -5825,14 +5831,17 @@ iflib_legacy_setup(if_ctx_t ctx, driver_filter_t filte info->ifi_task = gtask; info->ifi_ctx = ctx; + dev = ctx->ifc_dev; /* We allocate a single interrupt resource */ if ((err = _iflib_irq_alloc(ctx, irq, tqrid, iflib_fast_intr_ctx, NULL, info, name)) != 0) return (err); GROUPTASK_INIT(gtask, 0, fn, q); - taskqgroup_attach(tqg, gtask, q, rman_get_start(irq->ii_res), name); + res = irq->ii_res; + taskqgroup_attach(tqg, gtask, q, dev, res, name); GROUPTASK_INIT(&txq->ift_task, 0, _task_fn_tx, txq); - taskqgroup_attach(qgroup_if_io_tqg, &txq->ift_task, txq, rman_get_start(irq->ii_res), "tx"); + taskqgroup_attach(qgroup_if_io_tqg, &txq->ift_task, txq, dev, res, + "tx"); return (0); } @@ -5882,7 +5891,8 @@ void iflib_io_tqg_attach(struct grouptask *gt, void *uniq, int cpu, char *name) { - taskqgroup_attach_cpu(qgroup_if_io_tqg, gt, uniq, cpu, -1, name); + taskqgroup_attach_cpu(qgroup_if_io_tqg, gt, uniq, cpu, NULL, NULL, + name); } void @@ -5891,7 +5901,8 @@ iflib_config_gtask_init(void *ctx, struct grouptask *g { GROUPTASK_INIT(gtask, 0, fn, ctx); - taskqgroup_attach(qgroup_if_config_tqg, gtask, gtask, -1, name); + taskqgroup_attach(qgroup_if_config_tqg, gtask, gtask, NULL, NULL, + name); } void Modified: head/sys/sys/_task.h ============================================================================== --- head/sys/sys/_task.h Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/sys/_task.h Tue Feb 12 21:23:59 2019 (r344062) @@ -39,12 +39,11 @@ * field of struct task and the second argument is a count of how many * times the task was enqueued before the call to taskqueue_run(). * - * List of locks - * (c) const after init + * List of locks + * (c) const after init * (q) taskqueue lock */ typedef void task_fn_t(void *context, int pending); -typedef void gtask_fn_t(void *context); struct task { STAILQ_ENTRY(task) ta_link; /* (q) link for queue */ @@ -54,6 +53,10 @@ struct task { void *ta_context; /* (c) argument for handler */ }; +#ifdef _KERNEL + +typedef void gtask_fn_t(void *context); + struct gtask { STAILQ_ENTRY(gtask) ta_link; /* (q) link for queue */ uint16_t ta_flags; /* (q) state flags */ @@ -62,15 +65,6 @@ struct gtask { void *ta_context; /* (c) argument for handler */ }; -struct grouptask { - struct gtask gt_task; - void *gt_taskqueue; - LIST_ENTRY(grouptask) gt_list; - void *gt_uniq; -#define GROUPTASK_NAMELEN 32 - char gt_name[GROUPTASK_NAMELEN]; - int16_t gt_irq; - int16_t gt_cpu; -}; +#endif /* _KERNEL */ #endif /* !_SYS__TASK_H_ */ Modified: head/sys/sys/gtaskqueue.h ============================================================================== --- head/sys/sys/gtaskqueue.h Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/sys/gtaskqueue.h Tue Feb 12 21:23:59 2019 (r344062) @@ -31,20 +31,35 @@ #ifndef _SYS_GTASKQUEUE_H_ #define _SYS_GTASKQUEUE_H_ -#include #ifndef _KERNEL #error "no user-serviceable parts inside" #endif +#include +#include +#include +#include + struct gtaskqueue; -typedef void (*gtaskqueue_enqueue_fn)(void *context); /* * Taskqueue groups. Manages dynamic thread groups and irq binding for * device and other tasks. */ +struct grouptask { + struct gtask gt_task; + void *gt_taskqueue; + LIST_ENTRY(grouptask) gt_list; + void *gt_uniq; +#define GROUPTASK_NAMELEN 32 + char gt_name[GROUPTASK_NAMELEN]; + device_t gt_dev; + struct resource *gt_irq; + int gt_cpu; +}; + void gtaskqueue_block(struct gtaskqueue *queue); void gtaskqueue_unblock(struct gtaskqueue *queue); @@ -55,28 +70,29 @@ void gtaskqueue_drain_all(struct gtaskqueue *queue); void grouptask_block(struct grouptask *grouptask); void grouptask_unblock(struct grouptask *grouptask); int grouptaskqueue_enqueue(struct gtaskqueue *queue, struct gtask *task); + void taskqgroup_attach(struct taskqgroup *qgroup, struct grouptask *grptask, - void *uniq, int irq, const char *name); -int taskqgroup_attach_cpu(struct taskqgroup *qgroup, struct grouptask *grptask, - void *uniq, int cpu, int irq, const char *name); + void *uniq, device_t dev, struct resource *irq, const char *name); +int taskqgroup_attach_cpu(struct taskqgroup *qgroup, + struct grouptask *grptask, void *uniq, int cpu, device_t dev, + struct resource *irq, const char *name); void taskqgroup_detach(struct taskqgroup *qgroup, struct grouptask *gtask); struct taskqgroup *taskqgroup_create(const char *name); void taskqgroup_destroy(struct taskqgroup *qgroup); int taskqgroup_adjust(struct taskqgroup *qgroup, int cnt, int stride); -void taskqgroup_config_gtask_init(void *ctx, struct grouptask *gtask, gtask_fn_t *fn, - const char *name); +void taskqgroup_config_gtask_init(void *ctx, struct grouptask *gtask, + gtask_fn_t *fn, const char *name); void taskqgroup_config_gtask_deinit(struct grouptask *gtask); #define TASK_ENQUEUED 0x1 #define TASK_SKIP_WAKEUP 0x2 #define TASK_NOENQUEUE 0x4 - -#define GTASK_INIT(task, flags, priority, func, context) do { \ - (task)->ta_flags = flags; \ - (task)->ta_priority = (priority); \ - (task)->ta_func = (func); \ - (task)->ta_context = (context); \ +#define GTASK_INIT(gtask, flags, priority, func, context) do { \ + (gtask)->ta_flags = flags; \ + (gtask)->ta_priority = (priority); \ + (gtask)->ta_func = (func); \ + (gtask)->ta_context = (context); \ } while (0) #define GROUPTASK_INIT(gtask, priority, func, context) \ Modified: head/sys/sys/param.h ============================================================================== --- head/sys/sys/param.h Tue Feb 12 21:22:57 2019 (r344061) +++ head/sys/sys/param.h Tue Feb 12 21:23:59 2019 (r344062) @@ -60,7 +60,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1300011 /* Master, propagated to newvers */ +#define __FreeBSD_version 1300012 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From owner-svn-src-all@freebsd.org Tue Feb 12 22:29:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B18DC14D4CC3; Tue, 12 Feb 2019 22:29:45 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5937986301; Tue, 12 Feb 2019 22:29:45 +0000 (UTC) (envelope-from mm@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 447271E452; Tue, 12 Feb 2019 22:29:45 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CMTjZJ023407; Tue, 12 Feb 2019 22:29:45 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CMTg7A023392; Tue, 12 Feb 2019 22:29:42 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201902122229.x1CMTg7A023392@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Tue, 12 Feb 2019 22:29:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344063 - in vendor/libarchive/dist: . build build/ci contrib/shar cpio/test libarchive libarchive/test test_utils X-SVN-Group: vendor X-SVN-Commit-Author: mm X-SVN-Commit-Paths: in vendor/libarchive/dist: . build build/ci contrib/shar cpio/test libarchive libarchive/test test_utils X-SVN-Commit-Revision: 344063 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5937986301 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 22:29:46 -0000 Author: mm Date: Tue Feb 12 22:29:41 2019 New Revision: 344063 URL: https://svnweb.freebsd.org/changeset/base/344063 Log: Update vendor/libarchive/dist to git 31c0a517c91f44eeee717a04db8b075cadda83d8 Relevant vendor changes: PR #1085: Fix a null pointer dereference bug in zip writer PR #1110: ZIP reader added support for XZ, LZMA, PPMD8 and BZIP2 decopmpression PR #1116: Add support for 64-bit ar format PR #1120: Fix a 7zip crash [1] and a ISO9660 infinite loop [2] PR #1125: RAR5 reader - fix an invalid read and a memory leak PR #1131: POSIX reader - do not fail when tree_current_lstat() fails due to ENOENT [3] PR #1134: Delete unnecessary null pointer checks before calls of free() OSS-Fuzz 10843: Force intermediate to uint64_t to make UBSAN happy. OSS-Fuzz 11011: Avoid buffer overflow in rar5 reader PR: 233006 [3] Security: CVE-2019-1000019 [1], CVE-2019-1000020 [2] Added: vendor/libarchive/dist/.cirrus.yml vendor/libarchive/dist/build/ci/ vendor/libarchive/dist/build/ci/build.sh (contents, props changed) vendor/libarchive/dist/build/ci/cirrus_ci.sh (contents, props changed) vendor/libarchive/dist/build/ci/test_driver (contents, props changed) vendor/libarchive/dist/libarchive/archive_ppmd8.c (contents, props changed) vendor/libarchive/dist/libarchive/archive_ppmd8_private.h (contents, props changed) vendor/libarchive/dist/libarchive/test/test_read_format_zip_bzip2.zipx.uu vendor/libarchive/dist/libarchive/test/test_read_format_zip_bzip2_multi.zipx.uu vendor/libarchive/dist/libarchive/test/test_read_format_zip_lzma.zipx.uu vendor/libarchive/dist/libarchive/test/test_read_format_zip_lzma_multi.zipx.uu vendor/libarchive/dist/libarchive/test/test_read_format_zip_ppmd8.zipx.uu vendor/libarchive/dist/libarchive/test/test_read_format_zip_ppmd8_multi.zipx.uu vendor/libarchive/dist/libarchive/test/test_read_format_zip_xz_multi.zipx.uu Deleted: vendor/libarchive/dist/.travis.yml vendor/libarchive/dist/build/ci_build.sh vendor/libarchive/dist/build/ci_test_driver vendor/libarchive/dist/libarchive/test/test_compat_pax_libarchive_2x.c vendor/libarchive/dist/libarchive/test/test_compat_pax_libarchive_2x.tar.Z.uu Modified: vendor/libarchive/dist/CMakeLists.txt vendor/libarchive/dist/Makefile.am vendor/libarchive/dist/contrib/shar/tree.c vendor/libarchive/dist/cpio/test/test_option_t.c vendor/libarchive/dist/libarchive/CMakeLists.txt vendor/libarchive/dist/libarchive/archive_acl.c vendor/libarchive/dist/libarchive/archive_disk_acl_sunos.c vendor/libarchive/dist/libarchive/archive_entry.c vendor/libarchive/dist/libarchive/archive_pack_dev.c vendor/libarchive/dist/libarchive/archive_read_disk_posix.c vendor/libarchive/dist/libarchive/archive_read_open_file.c vendor/libarchive/dist/libarchive/archive_read_support_format_7zip.c vendor/libarchive/dist/libarchive/archive_read_support_format_ar.c vendor/libarchive/dist/libarchive/archive_read_support_format_cpio.c vendor/libarchive/dist/libarchive/archive_read_support_format_iso9660.c vendor/libarchive/dist/libarchive/archive_read_support_format_rar5.c vendor/libarchive/dist/libarchive/archive_read_support_format_xar.c vendor/libarchive/dist/libarchive/archive_read_support_format_zip.c vendor/libarchive/dist/libarchive/archive_write_disk_posix.c vendor/libarchive/dist/libarchive/archive_write_disk_set_standard_lookup.c vendor/libarchive/dist/libarchive/archive_write_disk_windows.c vendor/libarchive/dist/libarchive/archive_write_set_format_ar.c vendor/libarchive/dist/libarchive/archive_write_set_format_cpio.c vendor/libarchive/dist/libarchive/archive_write_set_format_cpio_newc.c vendor/libarchive/dist/libarchive/archive_write_set_format_gnutar.c vendor/libarchive/dist/libarchive/archive_write_set_format_shar.c vendor/libarchive/dist/libarchive/archive_write_set_format_ustar.c vendor/libarchive/dist/libarchive/archive_write_set_format_v7tar.c vendor/libarchive/dist/libarchive/archive_write_set_format_zip.c vendor/libarchive/dist/libarchive/test/CMakeLists.txt vendor/libarchive/dist/libarchive/test/test_read_format_zip.c vendor/libarchive/dist/test_utils/test_main.c Added: vendor/libarchive/dist/.cirrus.yml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/libarchive/dist/.cirrus.yml Tue Feb 12 22:29:41 2019 (r344063) @@ -0,0 +1,26 @@ +env: + CIRRUS_CLONE_DEPTH: 1 + ARCH: amd64 + +task: + matrix: + container: + image: fedora:29 + freebsd_instance: + image: freebsd-12-0-release-amd64 + freebsd_instance: + image: freebsd-11-2-release-amd64 + osx_instance: + image: mojave-xcode-10.1 + osx_instance: + image: high-sierra-xcode-10.0 + matrix: + env: + BS: autotools + env: + BS: cmake + install_script: + - ./build/ci/cirrus_ci.sh install + script: + - ./build/ci/build.sh + - ./build/ci/cirrus_ci.sh test Modified: vendor/libarchive/dist/CMakeLists.txt ============================================================================== --- vendor/libarchive/dist/CMakeLists.txt Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/CMakeLists.txt Tue Feb 12 22:29:41 2019 (r344063) @@ -183,6 +183,7 @@ OPTION(ENABLE_LIBB2 "Enable the use of the system LIBB OPTION(ENABLE_LZ4 "Enable the use of the system LZ4 library if found" ON) OPTION(ENABLE_LZO "Enable the use of the system LZO library if found" OFF) OPTION(ENABLE_LZMA "Enable the use of the system LZMA library if found" ON) +OPTION(ENABLE_ZSTD "Enable the use of the system zstd library if found" ON) OPTION(ENABLE_ZLIB "Enable the use of the system ZLIB library if found" ON) OPTION(ENABLE_BZip2 "Enable the use of the system BZip2 library if found" ON) @@ -458,7 +459,7 @@ MARK_AS_ADVANCED(CLEAR BZIP2_LIBRARIES) IF(ENABLE_LZMA) FIND_PACKAGE(LibLZMA) ELSE() - SET(LIBZMA_FOUND FALSE) # Override cached value + SET(LIBLZMA_FOUND FALSE) # Override cached value ENDIF() IF(LIBLZMA_FOUND) @@ -480,6 +481,9 @@ IF(LIBLZMA_FOUND) ELSE(LIBLZMA_FOUND) # LZMA not found and will not be used. ENDIF(LIBLZMA_FOUND) +MARK_AS_ADVANCED(CLEAR LIBLZMA_INCLUDE_DIR) +MARK_AS_ADVANCED(CLEAR LIBLZMA_LIBRARY) + # # Find LZO2 # @@ -569,15 +573,19 @@ MARK_AS_ADVANCED(CLEAR LZ4_LIBRARY) # # Find Zstd # -IF (ZSTD_INCLUDE_DIR) - # Already in cache, be silent - SET(ZSTD_FIND_QUIETLY TRUE) -ENDIF (ZSTD_INCLUDE_DIR) +IF(ENABLE_ZSTD) + IF (ZSTD_INCLUDE_DIR) + # Already in cache, be silent + SET(ZSTD_FIND_QUIETLY TRUE) + ENDIF (ZSTD_INCLUDE_DIR) -FIND_PATH(ZSTD_INCLUDE_DIR zstd.h) -FIND_LIBRARY(ZSTD_LIBRARY NAMES zstd libzstd) -INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(ZSTD DEFAULT_MSG ZSTD_LIBRARY ZSTD_INCLUDE_DIR) + FIND_PATH(ZSTD_INCLUDE_DIR zstd.h) + FIND_LIBRARY(ZSTD_LIBRARY NAMES zstd libzstd) + INCLUDE(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS(ZSTD DEFAULT_MSG ZSTD_LIBRARY ZSTD_INCLUDE_DIR) +ELSE(ENABLE_ZSTD) + SET(ZSTD_FOUND FALSE) # Override cached value +ENDIF(ENABLE_ZSTD) IF(ZSTD_FOUND) SET(HAVE_ZSTD_H 1) INCLUDE_DIRECTORIES(${ZSTD_INCLUDE_DIR}) Modified: vendor/libarchive/dist/Makefile.am ============================================================================== --- vendor/libarchive/dist/Makefile.am Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/Makefile.am Tue Feb 12 22:29:41 2019 (r344063) @@ -132,6 +132,8 @@ libarchive_la_SOURCES= \ libarchive/archive_ppmd_private.h \ libarchive/archive_ppmd7.c \ libarchive/archive_ppmd7_private.h \ + libarchive/archive_ppmd8.c \ + libarchive/archive_ppmd8_private.h \ libarchive/archive_private.h \ libarchive/archive_random.c \ libarchive/archive_random_private.h \ @@ -400,7 +402,6 @@ libarchive_test_SOURCES= \ libarchive/test/test_compat_lzma.c \ libarchive/test/test_compat_lzop.c \ libarchive/test/test_compat_mac.c \ - libarchive/test/test_compat_pax_libarchive_2x.c \ libarchive/test/test_compat_perl_archive_tar.c \ libarchive/test/test_compat_plexus_archiver_tar.c \ libarchive/test/test_compat_solaris_tar_acl.c \ @@ -671,7 +672,6 @@ libarchive_test_EXTRA_DIST=\ libarchive/test/test_compat_lzop_3.tar.lzo.uu \ libarchive/test/test_compat_mac-1.tar.Z.uu \ libarchive/test/test_compat_mac-2.tar.Z.uu \ - libarchive/test/test_compat_pax_libarchive_2x.tar.Z.uu \ libarchive/test/test_compat_perl_archive_tar.tar.uu \ libarchive/test/test_compat_plexus_archiver_tar.tar.uu \ libarchive/test/test_compat_solaris_pax_sparse_1.pax.Z.uu \ Added: vendor/libarchive/dist/build/ci/build.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/libarchive/dist/build/ci/build.sh Tue Feb 12 22:29:41 2019 (r344063) @@ -0,0 +1,112 @@ +#!/bin/sh +# +# Automated build and test of libarchive on CI systems +# +# Variables that can be passed via environment: +# BS= # build system (autotools or cmake) +# BUILDDIR= # build directory +# SRCDIR= # source directory +# CONFIGURE_ARGS= # configure arguments +# MAKE_ARGS= # make arguments + +ACTIONS= +if [ -n "${BUILD_SYSTEM}" ]; then + BS="${BUILD_SYSTEM}" +fi +BS="${BS:-autotools}" +MAKE="${MAKE:-make}" +CMAKE="${CMAKE:-cmake}" +CURDIR=`pwd` +SRCDIR="${SRCDIR:-`pwd`}" +RET=0 + +usage () { + echo "Usage: $0 [-b autotools|cmake] [-a autogen|configure|build|test ] [ -a ... ] [ -d builddir ] [-s srcdir ]" +} +inputerror () { + echo $1 + usage + exit 1 +} +while getopts a:b:d:s: opt; do + case ${opt} in + a) + case "${OPTARG}" in + autogen) ;; + configure) ;; + build) ;; + test) ;; + *) inputerror "Invalid action (-a)" ;; + esac + ACTIONS="${ACTIONS} ${OPTARG}" + ;; + b) BS="${OPTARG}" + case "${BS}" in + autotools) ;; + cmake) ;; + *) inputerror "Invalid build system (-b)" ;; + esac + ;; + d) + BUILDDIR="${OPTARG}" + ;; + s) + SRCDIR="${OPTARG}" + if [ ! -f "${SRCDIR}/build/version" ]; then + inputerror "Missing file: ${SRCDIR}/build/version" + fi + ;; + esac +done +if [ -z "${ACTIONS}" ]; then + ACTIONS="autogen configure build test" +fi +if [ -z "${BS}" ]; then + inputerror "Missing build system (-b) parameter" +fi +if [ -z "${BUILDDIR}" ]; then + BUILDDIR="${CURDIR}/build_ci/${BS}" +fi +mkdir -p "${BUILDDIR}" +for action in ${ACTIONS}; do + cd "${BUILDDIR}" + case "${action}" in + autogen) + case "${BS}" in + autotools) + cd "${SRCDIR}" + sh build/autogen.sh + RET="$?" + ;; + esac + ;; + configure) + case "${BS}" in + autotools) "${SRCDIR}/configure" ${CONFIGURE_ARGS} ;; + cmake) ${CMAKE} ${CONFIGURE_ARGS} "${SRCDIR}" ;; + esac + RET="$?" + ;; + build) + ${MAKE} ${MAKE_ARGS} + RET="$?" + ;; + test) + case "${BS}" in + autotools) + ${MAKE} ${MAKE_ARGS} check LOG_DRIVER="${SRCDIR}/build/ci/test_driver" + ;; + cmake) + ${MAKE} ${MAKE_ARGS} test + ;; + esac + RET="$?" + find ${TMPDIR:-/tmp} -path '*_test.*' -name '*.log' -print -exec cat {} \; + ;; + esac + if [ "${RET}" != "0" ]; then + exit "${RET}" + fi + cd "${CURDIR}" +done +exit "${RET}" Added: vendor/libarchive/dist/build/ci/cirrus_ci.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/libarchive/dist/build/ci/cirrus_ci.sh Tue Feb 12 22:29:41 2019 (r344063) @@ -0,0 +1,53 @@ +#!/bin/sh +UNAME=`uname` +if [ "$1" = "install" ] +then + if [ "${UNAME}" = "FreeBSD" ] + then + set -x -e + sed -i.bak -e 's,pkg+http://pkg.FreeBSD.org/\${ABI}/quarterly,pkg+http://pkg.FreeBSD.org/\${ABI}/latest,' /etc/pkg/FreeBSD.conf + mount -u -o acls / + mkdir /tmp_acl_nfsv4 + MD=`mdconfig -a -t swap -s 128M` + newfs /dev/$MD + tunefs -N enable /dev/$MD + mount /dev/$MD /tmp_acl_nfsv4 + chmod 1777 /tmp_acl_nfsv4 + pkg install -y autoconf automake cmake libiconv libtool pkgconf expat libxml2 liblz4 zstd + elif [ "${UNAME}" = "Darwin" ] + then + set -x -e + brew update + brew install autoconf automake libtool pkg-config cmake xz lz4 zstd + elif [ "${UNAME}" = "Linux" ] + then + if [ -f "/etc/debian_version" ] + then + apt-get -y update + apt-get -y install build-essential locales automake libtool bison sharutils pkgconf libacl1-dev libbz2-dev libzip-dev zlib1g-dev liblzma-dev liblz4-dev libzstd-dev libssl-dev lrzip cmake + elif [ -f "/etc/fedora-release" ] + then + dnf -y install make cmake gcc gcc-c++ kernel-devel automake libtool bison sharutils pkgconf libacl-devel librichacl-devel bzip2-devel libzip-devel zlib-devel xz-devel lz4-devel libzstd-devel openssl-devel + fi + fi +elif [ "$1" = "test" ] +then + if [ "${UNAME}" = "FreeBSD" ] + then + set -e + echo "Additional NFSv4 ACL tests" + CURDIR=`pwd` + if [ "${BS}" = "cmake" ] + then + BIN_SUBDIR="bin" + else + BIN_SUBDIR=. + fi + BUILDDIR="${CURDIR}/build_ci/${BS}" + cd "$BUILDDIR" + TMPDIR=/tmp_acl_nfsv4 ${BIN_SUBDIR}/libarchive_test -r "${CURDIR}/libarchive/test" -v test_acl_platform_nfs4 + fi +else + echo "Usage $0 install | test_nfsv4_acls" + exit 1 +fi Added: vendor/libarchive/dist/build/ci/test_driver ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/libarchive/dist/build/ci/test_driver Tue Feb 12 22:29:41 2019 (r344063) @@ -0,0 +1,148 @@ +#! /bin/sh +# test-driver - basic testsuite driver script. + +scriptversion=2013-07-13.22; # UTC + +# Copyright (C) 2011-2014 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to or send patches to +# . + +# Make unconditional expansion of undefined variables an error. This +# helps a lot in preventing typo-related bugs. +set -u + +usage_error () +{ + echo "$0: $*" >&2 + print_usage >&2 + exit 2 +} + +print_usage () +{ + cat < $log_file.s ) | tee $log_file 2>&1 +estatus=`cat $log_file.s` + +if test $enable_hard_errors = no && test $estatus -eq 99; then + tweaked_estatus=1 +else + tweaked_estatus=$estatus +fi + +case $tweaked_estatus:$expect_failure in + 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; + 0:*) col=$grn res=PASS recheck=no gcopy=no;; + 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; + 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;; + *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;; + *:*) col=$red res=FAIL recheck=yes gcopy=yes;; +esac + +# Report the test outcome and exit status in the logs, so that one can +# know whether the test passed or failed simply by looking at the '.log' +# file, without the need of also peaking into the corresponding '.trs' +# file (automake bug#11814). +echo "$res $test_name (exit status: $estatus)" >>$log_file + +# Report outcome to console. +echo "${col}${res}${std}: $test_name" + +# Register the test result, and other relevant metadata. +echo ":test-result: $res" > $trs_file +echo ":global-test-result: $res" >> $trs_file +echo ":recheck: $recheck" >> $trs_file +echo ":copy-in-global-log: $gcopy" >> $trs_file + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: Modified: vendor/libarchive/dist/contrib/shar/tree.c ============================================================================== --- vendor/libarchive/dist/contrib/shar/tree.c Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/contrib/shar/tree.c Tue Feb 12 22:29:41 2019 (r344063) @@ -530,8 +530,7 @@ tree_close(struct tree *t) /* Release anything remaining in the stack. */ while (t->stack != NULL) tree_pop(t); - if (t->buff) - free(t->buff); + free(t->buff); /* chdir() back to where we started. */ if (t->initialDirFd >= 0) { fchdir(t->initialDirFd); Modified: vendor/libarchive/dist/cpio/test/test_option_t.c ============================================================================== --- vendor/libarchive/dist/cpio/test/test_option_t.c Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/cpio/test/test_option_t.c Tue Feb 12 22:29:41 2019 (r344063) @@ -88,11 +88,11 @@ DEFINE_TEST(test_option_t) setlocale(LC_ALL, ""); #endif #if defined(_WIN32) && !defined(__CYGWIN__) - strftime(date2, sizeof(date), "%b %d %Y", localtime(&mtime)); - _snprintf(date, sizeof(date)-1, "%12s file", date2); + strftime(date2, sizeof(date2)-1, "%b %d %Y", localtime(&mtime)); + _snprintf(date, sizeof(date)-1, "%12.12s file", date2); #else - strftime(date2, sizeof(date), "%b %e %Y", localtime(&mtime)); - snprintf(date, sizeof(date)-1, "%12s file", date2); + strftime(date2, sizeof(date2)-1, "%b %e %Y", localtime(&mtime)); + snprintf(date, sizeof(date)-1, "%12.12s file", date2); #endif assertEqualMem(p + 42, date, strlen(date)); free(p); Modified: vendor/libarchive/dist/libarchive/CMakeLists.txt ============================================================================== --- vendor/libarchive/dist/libarchive/CMakeLists.txt Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/libarchive/CMakeLists.txt Tue Feb 12 22:29:41 2019 (r344063) @@ -51,6 +51,8 @@ SET(libarchive_SOURCES archive_platform_acl.h archive_platform_xattr.h archive_ppmd_private.h + archive_ppmd8.c + archive_ppmd8_private.h archive_ppmd7.c archive_ppmd7_private.h archive_private.h Modified: vendor/libarchive/dist/libarchive/archive_acl.c ============================================================================== --- vendor/libarchive/dist/libarchive/archive_acl.c Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/libarchive/archive_acl.c Tue Feb 12 22:29:41 2019 (r344063) @@ -138,14 +138,10 @@ archive_acl_clear(struct archive_acl *acl) free(acl->acl_head); acl->acl_head = ap; } - if (acl->acl_text_w != NULL) { - free(acl->acl_text_w); - acl->acl_text_w = NULL; - } - if (acl->acl_text != NULL) { - free(acl->acl_text); - acl->acl_text = NULL; - } + free(acl->acl_text_w); + acl->acl_text_w = NULL; + free(acl->acl_text); + acl->acl_text = NULL; acl->acl_p = NULL; acl->acl_types = 0; acl->acl_state = 0; /* Not counting. */ @@ -324,14 +320,10 @@ acl_new_entry(struct archive_acl *acl, return (NULL); } - if (acl->acl_text_w != NULL) { - free(acl->acl_text_w); - acl->acl_text_w = NULL; - } - if (acl->acl_text != NULL) { - free(acl->acl_text); - acl->acl_text = NULL; - } + free(acl->acl_text_w); + acl->acl_text_w = NULL; + free(acl->acl_text); + acl->acl_text = NULL; /* * If there's a matching entry already in the list, overwrite it. Modified: vendor/libarchive/dist/libarchive/archive_disk_acl_sunos.c ============================================================================== --- vendor/libarchive/dist/libarchive/archive_disk_acl_sunos.c Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/libarchive/archive_disk_acl_sunos.c Tue Feb 12 22:29:41 2019 (r344063) @@ -145,10 +145,8 @@ sunacl_get(int cmd, int *aclcnt, int fd, const char *p cnt = facl(fd, cmd, cnt, aclp); } } else { - if (aclp != NULL) { - free(aclp); - aclp = NULL; - } + free(aclp); + aclp = NULL; break; } } Modified: vendor/libarchive/dist/libarchive/archive_entry.c ============================================================================== --- vendor/libarchive/dist/libarchive/archive_entry.c Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/libarchive/archive_entry.c Tue Feb 12 22:29:41 2019 (r344063) @@ -1560,10 +1560,8 @@ archive_entry_acl_text_compat(int *flags) const wchar_t * archive_entry_acl_text_w(struct archive_entry *entry, int flags) { - if (entry->acl.acl_text_w != NULL) { - free(entry->acl.acl_text_w); - entry->acl.acl_text_w = NULL; - } + free(entry->acl.acl_text_w); + entry->acl.acl_text_w = NULL; if (archive_entry_acl_text_compat(&flags) == 0) entry->acl.acl_text_w = archive_acl_to_text_w(&entry->acl, NULL, flags, entry->archive); @@ -1574,10 +1572,8 @@ archive_entry_acl_text_w(struct archive_entry *entry, const char * archive_entry_acl_text(struct archive_entry *entry, int flags) { - if (entry->acl.acl_text != NULL) { - free(entry->acl.acl_text); - entry->acl.acl_text = NULL; - } + free(entry->acl.acl_text); + entry->acl.acl_text = NULL; if (archive_entry_acl_text_compat(&flags) == 0) entry->acl.acl_text = archive_acl_to_text_l(&entry->acl, NULL, flags, NULL); @@ -1590,10 +1586,8 @@ int _archive_entry_acl_text_l(struct archive_entry *entry, int flags, const char **acl_text, size_t *len, struct archive_string_conv *sc) { - if (entry->acl.acl_text != NULL) { - free(entry->acl.acl_text); - entry->acl.acl_text = NULL; - } + free(entry->acl.acl_text); + entry->acl.acl_text = NULL; if (archive_entry_acl_text_compat(&flags) == 0) entry->acl.acl_text = archive_acl_to_text_l(&entry->acl, Modified: vendor/libarchive/dist/libarchive/archive_pack_dev.c ============================================================================== --- vendor/libarchive/dist/libarchive/archive_pack_dev.c Tue Feb 12 21:23:59 2019 (r344062) +++ vendor/libarchive/dist/libarchive/archive_pack_dev.c Tue Feb 12 22:29:41 2019 (r344063) @@ -60,6 +60,9 @@ __RCSID("$NetBSD$"); #ifdef HAVE_SYS_SYSMACROS_H #include #endif +#ifdef HAVE_SYS_MKDEV_H +#include +#endif #ifdef HAVE_UNISTD_H #include #endif Added: vendor/libarchive/dist/libarchive/archive_ppmd8.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/libarchive/dist/libarchive/archive_ppmd8.c Tue Feb 12 22:29:41 2019 (r344063) @@ -0,0 +1,1287 @@ +/* Ppmd8.c -- PPMdI codec +2016-05-21 : Igor Pavlov : Public domain +This code is based on PPMd var.I (2002): Dmitry Shkarin : Public domain */ + +#include "archive_platform.h" + +#include + +#include "archive_ppmd8_private.h" + +const Byte PPMD8_kExpEscape[16] = { 25, 14, 9, 7, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2 }; +static const UInt16 kInitBinEsc[] = { 0x3CDD, 0x1F3F, 0x59BF, 0x48F3, 0x64A1, 0x5ABC, 0x6632, 0x6051}; + +#define MAX_FREQ 124 +#define UNIT_SIZE 12 + +#define U2B(nu) ((UInt32)(nu) * UNIT_SIZE) +#define U2I(nu) (p->Units2Indx[(nu) - 1]) +#define I2U(indx) (p->Indx2Units[indx]) + +#ifdef PPMD_32BIT + #define REF(ptr) (ptr) +#else + #define REF(ptr) ((UInt32)((Byte *)(ptr) - (p)->Base)) +#endif + +#define STATS_REF(ptr) ((CPpmd_State_Ref)REF(ptr)) + +#define CTX(ref) ((CPpmd8_Context *)Ppmd8_GetContext(p, ref)) +#define STATS(ctx) Ppmd8_GetStats(p, ctx) +#define ONE_STATE(ctx) Ppmd8Context_OneState(ctx) +#define SUFFIX(ctx) CTX((ctx)->Suffix) + +#define kTop (1 << 24) +#define kBot (1 << 15) + +typedef CPpmd8_Context * CTX_PTR; + +struct CPpmd8_Node_; + +typedef + #ifdef PPMD_32BIT + struct CPpmd8_Node_ * + #else + UInt32 + #endif + CPpmd8_Node_Ref; + +typedef struct CPpmd8_Node_ +{ + UInt32 Stamp; + CPpmd8_Node_Ref Next; + UInt32 NU; +} CPpmd8_Node; + +#ifdef PPMD_32BIT + #define NODE(ptr) (ptr) +#else + #define NODE(offs) ((CPpmd8_Node *)(p->Base + (offs))) +#endif + +#define EMPTY_NODE 0xFFFFFFFF + +void Ppmd8_Construct(CPpmd8 *p) +{ + unsigned i, k, m; + + p->Base = 0; + + for (i = 0, k = 0; i < PPMD_NUM_INDEXES; i++) + { + unsigned step = (i >= 12 ? 4 : (i >> 2) + 1); + do { p->Units2Indx[k++] = (Byte)i; } while (--step); + p->Indx2Units[i] = (Byte)k; + } + + p->NS2BSIndx[0] = (0 << 1); + p->NS2BSIndx[1] = (1 << 1); + memset(p->NS2BSIndx + 2, (2 << 1), 9); + memset(p->NS2BSIndx + 11, (3 << 1), 256 - 11); + + for (i = 0; i < 5; i++) + p->NS2Indx[i] = (Byte)i; + for (m = i, k = 1; i < 260; i++) + { + p->NS2Indx[i] = (Byte)m; + if (--k == 0) + k = (++m) - 4; + } +} + +void Ppmd8_Free(CPpmd8 *p) +{ + free(p->Base); + p->Size = 0; + p->Base = 0; +} + +Bool Ppmd8_Alloc(CPpmd8 *p, UInt32 size) +{ + if (p->Base == 0 || p->Size != size) + { + Ppmd8_Free(p); + p->AlignOffset = + #ifdef PPMD_32BIT + (4 - size) & 3; + #else + 4 - (size & 3); + #endif + if ((p->Base = (Byte *)malloc(p->AlignOffset + size)) == 0) + return False; + p->Size = size; + } + return True; +} + +static void InsertNode(CPpmd8 *p, void *node, unsigned indx) +{ + ((CPpmd8_Node *)node)->Stamp = EMPTY_NODE; + ((CPpmd8_Node *)node)->Next = (CPpmd8_Node_Ref)p->FreeList[indx]; + ((CPpmd8_Node *)node)->NU = I2U(indx); + p->FreeList[indx] = REF(node); + p->Stamps[indx]++; +} + +static void *RemoveNode(CPpmd8 *p, unsigned indx) +{ + CPpmd8_Node *node = NODE((CPpmd8_Node_Ref)p->FreeList[indx]); + p->FreeList[indx] = node->Next; + p->Stamps[indx]--; + return node; +} + +static void SplitBlock(CPpmd8 *p, void *ptr, unsigned oldIndx, unsigned newIndx) +{ + unsigned i, nu = I2U(oldIndx) - I2U(newIndx); + ptr = (Byte *)ptr + U2B(I2U(newIndx)); + if (I2U(i = U2I(nu)) != nu) + { + unsigned k = I2U(--i); + InsertNode(p, ((Byte *)ptr) + U2B(k), nu - k - 1); + } + InsertNode(p, ptr, i); +} + +static void GlueFreeBlocks(CPpmd8 *p) +{ + CPpmd8_Node_Ref head = 0; + CPpmd8_Node_Ref *prev = &head; + unsigned i; + + p->GlueCount = 1 << 13; + memset(p->Stamps, 0, sizeof(p->Stamps)); + + /* Order-0 context is always at top UNIT, so we don't need guard NODE at the end. + All blocks up to p->LoUnit can be free, so we need guard NODE at LoUnit. */ + if (p->LoUnit != p->HiUnit) + ((CPpmd8_Node *)p->LoUnit)->Stamp = 0; + + /* Glue free blocks */ + for (i = 0; i < PPMD_NUM_INDEXES; i++) + { + CPpmd8_Node_Ref next = (CPpmd8_Node_Ref)p->FreeList[i]; + p->FreeList[i] = 0; + while (next != 0) + { + CPpmd8_Node *node = NODE(next); + if (node->NU != 0) + { + CPpmd8_Node *node2; + *prev = next; + prev = &(node->Next); + while ((node2 = node + node->NU)->Stamp == EMPTY_NODE) + { + node->NU += node2->NU; + node2->NU = 0; + } + } + next = node->Next; + } + } + *prev = 0; + + /* Fill lists of free blocks */ + while (head != 0) + { + CPpmd8_Node *node = NODE(head); + unsigned nu; + head = node->Next; + nu = node->NU; + if (nu == 0) + continue; + for (; nu > 128; nu -= 128, node += 128) + InsertNode(p, node, PPMD_NUM_INDEXES - 1); + if (I2U(i = U2I(nu)) != nu) + { + unsigned k = I2U(--i); + InsertNode(p, node + k, nu - k - 1); + } + InsertNode(p, node, i); + } +} + +static void *AllocUnitsRare(CPpmd8 *p, unsigned indx) +{ + unsigned i; + void *retVal; + if (p->GlueCount == 0) + { + GlueFreeBlocks(p); + if (p->FreeList[indx] != 0) + return RemoveNode(p, indx); + } + i = indx; + do + { + if (++i == PPMD_NUM_INDEXES) + { + UInt32 numBytes = U2B(I2U(indx)); + p->GlueCount--; + return ((UInt32)(p->UnitsStart - p->Text) > numBytes) ? (p->UnitsStart -= numBytes) : (NULL); + } + } + while (p->FreeList[i] == 0); + retVal = RemoveNode(p, i); + SplitBlock(p, retVal, i, indx); + return retVal; +} + +static void *AllocUnits(CPpmd8 *p, unsigned indx) +{ + UInt32 numBytes; + if (p->FreeList[indx] != 0) + return RemoveNode(p, indx); + numBytes = U2B(I2U(indx)); + if (numBytes <= (UInt32)(p->HiUnit - p->LoUnit)) + { + void *retVal = p->LoUnit; + p->LoUnit += numBytes; + return retVal; + } + return AllocUnitsRare(p, indx); +} + +#define MyMem12Cpy(dest, src, num) \ + { UInt32 *d = (UInt32 *)dest; const UInt32 *z = (const UInt32 *)src; UInt32 n = num; \ + do { d[0] = z[0]; d[1] = z[1]; d[2] = z[2]; z += 3; d += 3; } while (--n); } + +static void *ShrinkUnits(CPpmd8 *p, void *oldPtr, unsigned oldNU, unsigned newNU) +{ + unsigned i0 = U2I(oldNU); + unsigned i1 = U2I(newNU); + if (i0 == i1) + return oldPtr; + if (p->FreeList[i1] != 0) + { + void *ptr = RemoveNode(p, i1); + MyMem12Cpy(ptr, oldPtr, newNU); + InsertNode(p, oldPtr, i0); + return ptr; + } + SplitBlock(p, oldPtr, i0, i1); + return oldPtr; +} + +static void FreeUnits(CPpmd8 *p, void *ptr, unsigned nu) +{ + InsertNode(p, ptr, U2I(nu)); +} + +static void SpecialFreeUnit(CPpmd8 *p, void *ptr) +{ + if ((Byte *)ptr != p->UnitsStart) + InsertNode(p, ptr, 0); + else + { + #ifdef PPMD8_FREEZE_SUPPORT + *(UInt32 *)ptr = EMPTY_NODE; /* it's used for (Flags == 0xFF) check in RemoveBinContexts */ + #endif + p->UnitsStart += UNIT_SIZE; + } +} + +static void *MoveUnitsUp(CPpmd8 *p, void *oldPtr, unsigned nu) +{ + unsigned indx = U2I(nu); + void *ptr; + if ((Byte *)oldPtr > p->UnitsStart + 16 * 1024 || REF(oldPtr) > p->FreeList[indx]) + return oldPtr; + ptr = RemoveNode(p, indx); + MyMem12Cpy(ptr, oldPtr, nu); + if ((Byte*)oldPtr != p->UnitsStart) + InsertNode(p, oldPtr, indx); + else + p->UnitsStart += U2B(I2U(indx)); + return ptr; +} + +static void ExpandTextArea(CPpmd8 *p) +{ + UInt32 count[PPMD_NUM_INDEXES]; + unsigned i; + memset(count, 0, sizeof(count)); + if (p->LoUnit != p->HiUnit) + ((CPpmd8_Node *)p->LoUnit)->Stamp = 0; + + { + CPpmd8_Node *node = (CPpmd8_Node *)p->UnitsStart; + for (; node->Stamp == EMPTY_NODE; node += node->NU) + { + node->Stamp = 0; + count[U2I(node->NU)]++; + } + p->UnitsStart = (Byte *)node; + } + + for (i = 0; i < PPMD_NUM_INDEXES; i++) + { + CPpmd8_Node_Ref *next = (CPpmd8_Node_Ref *)&p->FreeList[i]; + while (count[i] != 0) + { + CPpmd8_Node *node = NODE(*next); + while (node->Stamp == 0) + { + *next = node->Next; + node = NODE(*next); + p->Stamps[i]--; + if (--count[i] == 0) + break; + } + next = &node->Next; + } + } +} + +#define SUCCESSOR(p) ((CPpmd_Void_Ref)((p)->SuccessorLow | ((UInt32)(p)->SuccessorHigh << 16))) + +static void SetSuccessor(CPpmd_State *p, CPpmd_Void_Ref v) +{ + (p)->SuccessorLow = (UInt16)((UInt32)(v) & 0xFFFF); + (p)->SuccessorHigh = (UInt16)(((UInt32)(v) >> 16) & 0xFFFF); +} + +#define RESET_TEXT(offs) { p->Text = p->Base + p->AlignOffset + (offs); } + +static void RestartModel(CPpmd8 *p) +{ + unsigned i, k, m, r; + + memset(p->FreeList, 0, sizeof(p->FreeList)); + memset(p->Stamps, 0, sizeof(p->Stamps)); + RESET_TEXT(0); + p->HiUnit = p->Text + p->Size; + p->LoUnit = p->UnitsStart = p->HiUnit - p->Size / 8 / UNIT_SIZE * 7 * UNIT_SIZE; + p->GlueCount = 0; + + p->OrderFall = p->MaxOrder; + p->RunLength = p->InitRL = -(Int32)((p->MaxOrder < 12) ? p->MaxOrder : 12) - 1; + p->PrevSuccess = 0; + + p->MinContext = p->MaxContext = (CTX_PTR)(p->HiUnit -= UNIT_SIZE); /* AllocContext(p); */ + p->MinContext->Suffix = 0; + p->MinContext->NumStats = 255; + p->MinContext->Flags = 0; + p->MinContext->SummFreq = 256 + 1; + p->FoundState = (CPpmd_State *)p->LoUnit; /* AllocUnits(p, PPMD_NUM_INDEXES - 1); */ + p->LoUnit += U2B(256 / 2); + p->MinContext->Stats = REF(p->FoundState); + for (i = 0; i < 256; i++) + { + CPpmd_State *s = &p->FoundState[i]; + s->Symbol = (Byte)i; + s->Freq = 1; + SetSuccessor(s, 0); + } + + for (i = m = 0; m < 25; m++) + { + while (p->NS2Indx[i] == m) + i++; + for (k = 0; k < 8; k++) + { + UInt16 val = (UInt16)(PPMD_BIN_SCALE - kInitBinEsc[k] / (i + 1)); + UInt16 *dest = p->BinSumm[m] + k; + for (r = 0; r < 64; r += 8) + dest[r] = val; + } + } + + for (i = m = 0; m < 24; m++) + { + while (p->NS2Indx[i + 3] == m + 3) + i++; + for (k = 0; k < 32; k++) + { + CPpmd_See *s = &p->See[m][k]; + s->Summ = (UInt16)((2 * i + 5) << (s->Shift = PPMD_PERIOD_BITS - 4)); + s->Count = 7; + } + } +} + +void Ppmd8_Init(CPpmd8 *p, unsigned maxOrder, unsigned restoreMethod) +{ + p->MaxOrder = maxOrder; + p->RestoreMethod = restoreMethod; + RestartModel(p); + p->DummySee.Shift = PPMD_PERIOD_BITS; + p->DummySee.Summ = 0; /* unused */ + p->DummySee.Count = 64; /* unused */ +} + +static void Refresh(CPpmd8 *p, CTX_PTR ctx, unsigned oldNU, unsigned scale) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Feb 12 22:33:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 180B414D5032; Tue, 12 Feb 2019 22:33:18 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AC6F386820; Tue, 12 Feb 2019 22:33:17 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9590D1E5F3; Tue, 12 Feb 2019 22:33:17 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CMXHA8028618; Tue, 12 Feb 2019 22:33:17 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CMXHaK028617; Tue, 12 Feb 2019 22:33:17 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902122233.x1CMXHaK028617@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Tue, 12 Feb 2019 22:33:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344064 - head/sys/net X-SVN-Group: head X-SVN-Commit-Author: marius X-SVN-Commit-Paths: head/sys/net X-SVN-Commit-Revision: 344064 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AC6F386820 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 22:33:18 -0000 Author: marius Date: Tue Feb 12 22:33:17 2019 New Revision: 344064 URL: https://svnweb.freebsd.org/changeset/base/344064 Log: Fix the build with ALTQ after r344060. Modified: head/sys/net/iflib.c Modified: head/sys/net/iflib.c ============================================================================== --- head/sys/net/iflib.c Tue Feb 12 22:29:41 2019 (r344063) +++ head/sys/net/iflib.c Tue Feb 12 22:33:17 2019 (r344064) @@ -3658,6 +3658,9 @@ _task_fn_tx(void *context) { iflib_txq_t txq = context; if_ctx_t ctx = txq->ift_ctx; +#if defined(ALTQ) || defined(DEV_NETMAP) + if_t ifp = ctx->ifc_ifp; +#endif int abdicate = ctx->ifc_sysctl_tx_abdicate; #ifdef IFLIB_DIAGNOSTICS @@ -3666,11 +3669,11 @@ _task_fn_tx(void *context) if (!(if_getdrvflags(ctx->ifc_ifp) & IFF_DRV_RUNNING)) return; #ifdef DEV_NETMAP - if (if_getcapenable(ctx->ifc_ifp) & IFCAP_NETMAP) { + if (if_getcapenable(ifp) & IFCAP_NETMAP) { bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_ifdi->idi_map, BUS_DMASYNC_POSTREAD); if (ctx->isc_txd_credits_update(ctx->ifc_softc, txq->ift_id, false)) - netmap_tx_irq(ctx->ifc_ifp, txq->ift_id); + netmap_tx_irq(ifp, txq->ift_id); IFDI_TX_QUEUE_INTR_ENABLE(ctx, txq->ift_id); return; } From owner-svn-src-all@freebsd.org Tue Feb 12 23:24:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 69B3214D6E2F; Tue, 12 Feb 2019 23:24:47 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1738C88F8B; Tue, 12 Feb 2019 23:24:47 +0000 (UTC) (envelope-from mm@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 07A6E1EE8B; Tue, 12 Feb 2019 23:24:47 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CNOle8059451; Tue, 12 Feb 2019 23:24:47 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CNOkki059446; Tue, 12 Feb 2019 23:24:46 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201902122324.x1CNOkki059446@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Tue, 12 Feb 2019 23:24:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344065 - in head: contrib/libarchive/cpio/test contrib/libarchive/libarchive contrib/libarchive/libarchive/test contrib/libarchive/test_utils lib/libarchive lib/libarchive/tests X-SVN-Group: head X-SVN-Commit-Author: mm X-SVN-Commit-Paths: in head: contrib/libarchive/cpio/test contrib/libarchive/libarchive contrib/libarchive/libarchive/test contrib/libarchive/test_utils lib/libarchive lib/libarchive/tests X-SVN-Commit-Revision: 344065 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1738C88F8B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:24:47 -0000 Author: mm Date: Tue Feb 12 23:24:45 2019 New Revision: 344065 URL: https://svnweb.freebsd.org/changeset/base/344065 Log: MFV r344063: Sync libarchive with vendor. Relevant vendor changes: PR #1085: Fix a null pointer dereference bug in zip writer PR #1110: ZIP reader added support for XZ, LZMA, PPMD8 and BZIP2 decopmpression PR #1116: Add support for 64-bit ar format PR #1120: Fix a 7zip crash [1] and a ISO9660 infinite loop [2] PR #1125: RAR5 reader - fix an invalid read and a memory leak PR #1131: POSIX reader - do not fail when tree_current_lstat() fails due to ENOENT [3] PR #1134: Delete unnecessary null pointer checks before calls of free() OSS-Fuzz 10843: Force intermediate to uint64_t to make UBSAN happy. OSS-Fuzz 11011: Avoid buffer overflow in rar5 reader PR: 233006 [3] Security: CVE-2019-1000019 [1], CVE-2019-1000020 [2] MFC after: 2 weeks Added: head/contrib/libarchive/libarchive/archive_ppmd8.c - copied unchanged from r344063, vendor/libarchive/dist/libarchive/archive_ppmd8.c head/contrib/libarchive/libarchive/archive_ppmd8_private.h - copied unchanged from r344063, vendor/libarchive/dist/libarchive/archive_ppmd8_private.h head/contrib/libarchive/libarchive/test/test_read_format_zip_bzip2.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_bzip2.zipx.uu head/contrib/libarchive/libarchive/test/test_read_format_zip_bzip2_multi.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_bzip2_multi.zipx.uu head/contrib/libarchive/libarchive/test/test_read_format_zip_lzma.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_lzma.zipx.uu head/contrib/libarchive/libarchive/test/test_read_format_zip_lzma_multi.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_lzma_multi.zipx.uu head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_ppmd8.zipx.uu head/contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_multi.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_ppmd8_multi.zipx.uu head/contrib/libarchive/libarchive/test/test_read_format_zip_xz_multi.zipx.uu - copied unchanged from r344063, vendor/libarchive/dist/libarchive/test/test_read_format_zip_xz_multi.zipx.uu Deleted: head/contrib/libarchive/libarchive/test/test_compat_pax_libarchive_2x.c head/contrib/libarchive/libarchive/test/test_compat_pax_libarchive_2x.tar.Z.uu Modified: head/contrib/libarchive/cpio/test/test_option_t.c head/contrib/libarchive/libarchive/archive_acl.c head/contrib/libarchive/libarchive/archive_entry.c head/contrib/libarchive/libarchive/archive_pack_dev.c head/contrib/libarchive/libarchive/archive_read_disk_posix.c head/contrib/libarchive/libarchive/archive_read_open_file.c head/contrib/libarchive/libarchive/archive_read_support_format_7zip.c head/contrib/libarchive/libarchive/archive_read_support_format_ar.c head/contrib/libarchive/libarchive/archive_read_support_format_cpio.c head/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c head/contrib/libarchive/libarchive/archive_read_support_format_rar5.c head/contrib/libarchive/libarchive/archive_read_support_format_xar.c head/contrib/libarchive/libarchive/archive_read_support_format_zip.c head/contrib/libarchive/libarchive/archive_write_disk_posix.c head/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c head/contrib/libarchive/libarchive/archive_write_set_format_ar.c head/contrib/libarchive/libarchive/archive_write_set_format_cpio.c head/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c head/contrib/libarchive/libarchive/archive_write_set_format_gnutar.c head/contrib/libarchive/libarchive/archive_write_set_format_shar.c head/contrib/libarchive/libarchive/archive_write_set_format_ustar.c head/contrib/libarchive/libarchive/archive_write_set_format_v7tar.c head/contrib/libarchive/libarchive/archive_write_set_format_zip.c head/contrib/libarchive/libarchive/test/test_read_format_zip.c head/contrib/libarchive/test_utils/test_main.c head/lib/libarchive/Makefile head/lib/libarchive/tests/Makefile Directory Properties: head/contrib/libarchive/ (props changed) Modified: head/contrib/libarchive/cpio/test/test_option_t.c ============================================================================== --- head/contrib/libarchive/cpio/test/test_option_t.c Tue Feb 12 22:33:17 2019 (r344064) +++ head/contrib/libarchive/cpio/test/test_option_t.c Tue Feb 12 23:24:45 2019 (r344065) @@ -88,11 +88,11 @@ DEFINE_TEST(test_option_t) setlocale(LC_ALL, ""); #endif #if defined(_WIN32) && !defined(__CYGWIN__) - strftime(date2, sizeof(date), "%b %d %Y", localtime(&mtime)); - _snprintf(date, sizeof(date)-1, "%12s file", date2); + strftime(date2, sizeof(date2)-1, "%b %d %Y", localtime(&mtime)); + _snprintf(date, sizeof(date)-1, "%12.12s file", date2); #else - strftime(date2, sizeof(date), "%b %e %Y", localtime(&mtime)); - snprintf(date, sizeof(date)-1, "%12s file", date2); + strftime(date2, sizeof(date2)-1, "%b %e %Y", localtime(&mtime)); + snprintf(date, sizeof(date)-1, "%12.12s file", date2); #endif assertEqualMem(p + 42, date, strlen(date)); free(p); Modified: head/contrib/libarchive/libarchive/archive_acl.c ============================================================================== --- head/contrib/libarchive/libarchive/archive_acl.c Tue Feb 12 22:33:17 2019 (r344064) +++ head/contrib/libarchive/libarchive/archive_acl.c Tue Feb 12 23:24:45 2019 (r344065) @@ -138,14 +138,10 @@ archive_acl_clear(struct archive_acl *acl) free(acl->acl_head); acl->acl_head = ap; } - if (acl->acl_text_w != NULL) { - free(acl->acl_text_w); - acl->acl_text_w = NULL; - } - if (acl->acl_text != NULL) { - free(acl->acl_text); - acl->acl_text = NULL; - } + free(acl->acl_text_w); + acl->acl_text_w = NULL; + free(acl->acl_text); + acl->acl_text = NULL; acl->acl_p = NULL; acl->acl_types = 0; acl->acl_state = 0; /* Not counting. */ @@ -324,14 +320,10 @@ acl_new_entry(struct archive_acl *acl, return (NULL); } - if (acl->acl_text_w != NULL) { - free(acl->acl_text_w); - acl->acl_text_w = NULL; - } - if (acl->acl_text != NULL) { - free(acl->acl_text); - acl->acl_text = NULL; - } + free(acl->acl_text_w); + acl->acl_text_w = NULL; + free(acl->acl_text); + acl->acl_text = NULL; /* * If there's a matching entry already in the list, overwrite it. Modified: head/contrib/libarchive/libarchive/archive_entry.c ============================================================================== --- head/contrib/libarchive/libarchive/archive_entry.c Tue Feb 12 22:33:17 2019 (r344064) +++ head/contrib/libarchive/libarchive/archive_entry.c Tue Feb 12 23:24:45 2019 (r344065) @@ -1560,10 +1560,8 @@ archive_entry_acl_text_compat(int *flags) const wchar_t * archive_entry_acl_text_w(struct archive_entry *entry, int flags) { - if (entry->acl.acl_text_w != NULL) { - free(entry->acl.acl_text_w); - entry->acl.acl_text_w = NULL; - } + free(entry->acl.acl_text_w); + entry->acl.acl_text_w = NULL; if (archive_entry_acl_text_compat(&flags) == 0) entry->acl.acl_text_w = archive_acl_to_text_w(&entry->acl, NULL, flags, entry->archive); @@ -1574,10 +1572,8 @@ archive_entry_acl_text_w(struct archive_entry *entry, const char * archive_entry_acl_text(struct archive_entry *entry, int flags) { - if (entry->acl.acl_text != NULL) { - free(entry->acl.acl_text); - entry->acl.acl_text = NULL; - } + free(entry->acl.acl_text); + entry->acl.acl_text = NULL; if (archive_entry_acl_text_compat(&flags) == 0) entry->acl.acl_text = archive_acl_to_text_l(&entry->acl, NULL, flags, NULL); @@ -1590,10 +1586,8 @@ int _archive_entry_acl_text_l(struct archive_entry *entry, int flags, const char **acl_text, size_t *len, struct archive_string_conv *sc) { - if (entry->acl.acl_text != NULL) { - free(entry->acl.acl_text); - entry->acl.acl_text = NULL; - } + free(entry->acl.acl_text); + entry->acl.acl_text = NULL; if (archive_entry_acl_text_compat(&flags) == 0) entry->acl.acl_text = archive_acl_to_text_l(&entry->acl, Modified: head/contrib/libarchive/libarchive/archive_pack_dev.c ============================================================================== --- head/contrib/libarchive/libarchive/archive_pack_dev.c Tue Feb 12 22:33:17 2019 (r344064) +++ head/contrib/libarchive/libarchive/archive_pack_dev.c Tue Feb 12 23:24:45 2019 (r344065) @@ -60,6 +60,9 @@ __RCSID("$NetBSD$"); #ifdef HAVE_SYS_SYSMACROS_H #include #endif +#ifdef HAVE_SYS_MKDEV_H +#include +#endif #ifdef HAVE_UNISTD_H #include #endif Copied: head/contrib/libarchive/libarchive/archive_ppmd8.c (from r344063, vendor/libarchive/dist/libarchive/archive_ppmd8.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/libarchive/libarchive/archive_ppmd8.c Tue Feb 12 23:24:45 2019 (r344065, copy of r344063, vendor/libarchive/dist/libarchive/archive_ppmd8.c) @@ -0,0 +1,1287 @@ +/* Ppmd8.c -- PPMdI codec +2016-05-21 : Igor Pavlov : Public domain +This code is based on PPMd var.I (2002): Dmitry Shkarin : Public domain */ + +#include "archive_platform.h" + +#include + +#include "archive_ppmd8_private.h" + +const Byte PPMD8_kExpEscape[16] = { 25, 14, 9, 7, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2 }; +static const UInt16 kInitBinEsc[] = { 0x3CDD, 0x1F3F, 0x59BF, 0x48F3, 0x64A1, 0x5ABC, 0x6632, 0x6051}; + +#define MAX_FREQ 124 +#define UNIT_SIZE 12 + +#define U2B(nu) ((UInt32)(nu) * UNIT_SIZE) +#define U2I(nu) (p->Units2Indx[(nu) - 1]) +#define I2U(indx) (p->Indx2Units[indx]) + +#ifdef PPMD_32BIT + #define REF(ptr) (ptr) +#else + #define REF(ptr) ((UInt32)((Byte *)(ptr) - (p)->Base)) +#endif + +#define STATS_REF(ptr) ((CPpmd_State_Ref)REF(ptr)) + +#define CTX(ref) ((CPpmd8_Context *)Ppmd8_GetContext(p, ref)) +#define STATS(ctx) Ppmd8_GetStats(p, ctx) +#define ONE_STATE(ctx) Ppmd8Context_OneState(ctx) +#define SUFFIX(ctx) CTX((ctx)->Suffix) + +#define kTop (1 << 24) +#define kBot (1 << 15) + +typedef CPpmd8_Context * CTX_PTR; + +struct CPpmd8_Node_; + +typedef + #ifdef PPMD_32BIT + struct CPpmd8_Node_ * + #else + UInt32 + #endif + CPpmd8_Node_Ref; + +typedef struct CPpmd8_Node_ +{ + UInt32 Stamp; + CPpmd8_Node_Ref Next; + UInt32 NU; +} CPpmd8_Node; + +#ifdef PPMD_32BIT + #define NODE(ptr) (ptr) +#else + #define NODE(offs) ((CPpmd8_Node *)(p->Base + (offs))) +#endif + +#define EMPTY_NODE 0xFFFFFFFF + +void Ppmd8_Construct(CPpmd8 *p) +{ + unsigned i, k, m; + + p->Base = 0; + + for (i = 0, k = 0; i < PPMD_NUM_INDEXES; i++) + { + unsigned step = (i >= 12 ? 4 : (i >> 2) + 1); + do { p->Units2Indx[k++] = (Byte)i; } while (--step); + p->Indx2Units[i] = (Byte)k; + } + + p->NS2BSIndx[0] = (0 << 1); + p->NS2BSIndx[1] = (1 << 1); + memset(p->NS2BSIndx + 2, (2 << 1), 9); + memset(p->NS2BSIndx + 11, (3 << 1), 256 - 11); + + for (i = 0; i < 5; i++) + p->NS2Indx[i] = (Byte)i; + for (m = i, k = 1; i < 260; i++) + { + p->NS2Indx[i] = (Byte)m; + if (--k == 0) + k = (++m) - 4; + } +} + +void Ppmd8_Free(CPpmd8 *p) +{ + free(p->Base); + p->Size = 0; + p->Base = 0; +} + +Bool Ppmd8_Alloc(CPpmd8 *p, UInt32 size) +{ + if (p->Base == 0 || p->Size != size) + { + Ppmd8_Free(p); + p->AlignOffset = + #ifdef PPMD_32BIT + (4 - size) & 3; + #else + 4 - (size & 3); + #endif + if ((p->Base = (Byte *)malloc(p->AlignOffset + size)) == 0) + return False; + p->Size = size; + } + return True; +} + +static void InsertNode(CPpmd8 *p, void *node, unsigned indx) +{ + ((CPpmd8_Node *)node)->Stamp = EMPTY_NODE; + ((CPpmd8_Node *)node)->Next = (CPpmd8_Node_Ref)p->FreeList[indx]; + ((CPpmd8_Node *)node)->NU = I2U(indx); + p->FreeList[indx] = REF(node); + p->Stamps[indx]++; +} + +static void *RemoveNode(CPpmd8 *p, unsigned indx) +{ + CPpmd8_Node *node = NODE((CPpmd8_Node_Ref)p->FreeList[indx]); + p->FreeList[indx] = node->Next; + p->Stamps[indx]--; + return node; +} + +static void SplitBlock(CPpmd8 *p, void *ptr, unsigned oldIndx, unsigned newIndx) +{ + unsigned i, nu = I2U(oldIndx) - I2U(newIndx); + ptr = (Byte *)ptr + U2B(I2U(newIndx)); + if (I2U(i = U2I(nu)) != nu) + { + unsigned k = I2U(--i); + InsertNode(p, ((Byte *)ptr) + U2B(k), nu - k - 1); + } + InsertNode(p, ptr, i); +} + +static void GlueFreeBlocks(CPpmd8 *p) +{ + CPpmd8_Node_Ref head = 0; + CPpmd8_Node_Ref *prev = &head; + unsigned i; + + p->GlueCount = 1 << 13; + memset(p->Stamps, 0, sizeof(p->Stamps)); + + /* Order-0 context is always at top UNIT, so we don't need guard NODE at the end. + All blocks up to p->LoUnit can be free, so we need guard NODE at LoUnit. */ + if (p->LoUnit != p->HiUnit) + ((CPpmd8_Node *)p->LoUnit)->Stamp = 0; + + /* Glue free blocks */ + for (i = 0; i < PPMD_NUM_INDEXES; i++) + { + CPpmd8_Node_Ref next = (CPpmd8_Node_Ref)p->FreeList[i]; + p->FreeList[i] = 0; + while (next != 0) + { + CPpmd8_Node *node = NODE(next); + if (node->NU != 0) + { + CPpmd8_Node *node2; + *prev = next; + prev = &(node->Next); + while ((node2 = node + node->NU)->Stamp == EMPTY_NODE) + { + node->NU += node2->NU; + node2->NU = 0; + } + } + next = node->Next; + } + } + *prev = 0; + + /* Fill lists of free blocks */ + while (head != 0) + { + CPpmd8_Node *node = NODE(head); + unsigned nu; + head = node->Next; + nu = node->NU; + if (nu == 0) + continue; + for (; nu > 128; nu -= 128, node += 128) + InsertNode(p, node, PPMD_NUM_INDEXES - 1); + if (I2U(i = U2I(nu)) != nu) + { + unsigned k = I2U(--i); + InsertNode(p, node + k, nu - k - 1); + } + InsertNode(p, node, i); + } +} + +static void *AllocUnitsRare(CPpmd8 *p, unsigned indx) +{ + unsigned i; + void *retVal; + if (p->GlueCount == 0) + { + GlueFreeBlocks(p); + if (p->FreeList[indx] != 0) + return RemoveNode(p, indx); + } + i = indx; + do + { + if (++i == PPMD_NUM_INDEXES) + { + UInt32 numBytes = U2B(I2U(indx)); + p->GlueCount--; + return ((UInt32)(p->UnitsStart - p->Text) > numBytes) ? (p->UnitsStart -= numBytes) : (NULL); + } + } + while (p->FreeList[i] == 0); + retVal = RemoveNode(p, i); + SplitBlock(p, retVal, i, indx); + return retVal; +} + +static void *AllocUnits(CPpmd8 *p, unsigned indx) +{ + UInt32 numBytes; + if (p->FreeList[indx] != 0) + return RemoveNode(p, indx); + numBytes = U2B(I2U(indx)); + if (numBytes <= (UInt32)(p->HiUnit - p->LoUnit)) + { + void *retVal = p->LoUnit; + p->LoUnit += numBytes; + return retVal; + } + return AllocUnitsRare(p, indx); +} + +#define MyMem12Cpy(dest, src, num) \ + { UInt32 *d = (UInt32 *)dest; const UInt32 *z = (const UInt32 *)src; UInt32 n = num; \ + do { d[0] = z[0]; d[1] = z[1]; d[2] = z[2]; z += 3; d += 3; } while (--n); } + +static void *ShrinkUnits(CPpmd8 *p, void *oldPtr, unsigned oldNU, unsigned newNU) +{ + unsigned i0 = U2I(oldNU); + unsigned i1 = U2I(newNU); + if (i0 == i1) + return oldPtr; + if (p->FreeList[i1] != 0) + { + void *ptr = RemoveNode(p, i1); + MyMem12Cpy(ptr, oldPtr, newNU); + InsertNode(p, oldPtr, i0); + return ptr; + } + SplitBlock(p, oldPtr, i0, i1); + return oldPtr; +} + +static void FreeUnits(CPpmd8 *p, void *ptr, unsigned nu) +{ + InsertNode(p, ptr, U2I(nu)); +} + +static void SpecialFreeUnit(CPpmd8 *p, void *ptr) +{ + if ((Byte *)ptr != p->UnitsStart) + InsertNode(p, ptr, 0); + else + { + #ifdef PPMD8_FREEZE_SUPPORT + *(UInt32 *)ptr = EMPTY_NODE; /* it's used for (Flags == 0xFF) check in RemoveBinContexts */ + #endif + p->UnitsStart += UNIT_SIZE; + } +} + +static void *MoveUnitsUp(CPpmd8 *p, void *oldPtr, unsigned nu) +{ + unsigned indx = U2I(nu); + void *ptr; + if ((Byte *)oldPtr > p->UnitsStart + 16 * 1024 || REF(oldPtr) > p->FreeList[indx]) + return oldPtr; + ptr = RemoveNode(p, indx); + MyMem12Cpy(ptr, oldPtr, nu); + if ((Byte*)oldPtr != p->UnitsStart) + InsertNode(p, oldPtr, indx); + else + p->UnitsStart += U2B(I2U(indx)); + return ptr; +} + +static void ExpandTextArea(CPpmd8 *p) +{ + UInt32 count[PPMD_NUM_INDEXES]; + unsigned i; + memset(count, 0, sizeof(count)); + if (p->LoUnit != p->HiUnit) + ((CPpmd8_Node *)p->LoUnit)->Stamp = 0; + + { + CPpmd8_Node *node = (CPpmd8_Node *)p->UnitsStart; + for (; node->Stamp == EMPTY_NODE; node += node->NU) + { + node->Stamp = 0; + count[U2I(node->NU)]++; + } + p->UnitsStart = (Byte *)node; + } + + for (i = 0; i < PPMD_NUM_INDEXES; i++) + { + CPpmd8_Node_Ref *next = (CPpmd8_Node_Ref *)&p->FreeList[i]; + while (count[i] != 0) + { + CPpmd8_Node *node = NODE(*next); + while (node->Stamp == 0) + { + *next = node->Next; + node = NODE(*next); + p->Stamps[i]--; + if (--count[i] == 0) + break; + } + next = &node->Next; + } + } +} + +#define SUCCESSOR(p) ((CPpmd_Void_Ref)((p)->SuccessorLow | ((UInt32)(p)->SuccessorHigh << 16))) + +static void SetSuccessor(CPpmd_State *p, CPpmd_Void_Ref v) +{ + (p)->SuccessorLow = (UInt16)((UInt32)(v) & 0xFFFF); + (p)->SuccessorHigh = (UInt16)(((UInt32)(v) >> 16) & 0xFFFF); +} + +#define RESET_TEXT(offs) { p->Text = p->Base + p->AlignOffset + (offs); } + +static void RestartModel(CPpmd8 *p) +{ + unsigned i, k, m, r; + + memset(p->FreeList, 0, sizeof(p->FreeList)); + memset(p->Stamps, 0, sizeof(p->Stamps)); + RESET_TEXT(0); + p->HiUnit = p->Text + p->Size; + p->LoUnit = p->UnitsStart = p->HiUnit - p->Size / 8 / UNIT_SIZE * 7 * UNIT_SIZE; + p->GlueCount = 0; + + p->OrderFall = p->MaxOrder; + p->RunLength = p->InitRL = -(Int32)((p->MaxOrder < 12) ? p->MaxOrder : 12) - 1; + p->PrevSuccess = 0; + + p->MinContext = p->MaxContext = (CTX_PTR)(p->HiUnit -= UNIT_SIZE); /* AllocContext(p); */ + p->MinContext->Suffix = 0; + p->MinContext->NumStats = 255; + p->MinContext->Flags = 0; + p->MinContext->SummFreq = 256 + 1; + p->FoundState = (CPpmd_State *)p->LoUnit; /* AllocUnits(p, PPMD_NUM_INDEXES - 1); */ + p->LoUnit += U2B(256 / 2); + p->MinContext->Stats = REF(p->FoundState); + for (i = 0; i < 256; i++) + { + CPpmd_State *s = &p->FoundState[i]; + s->Symbol = (Byte)i; + s->Freq = 1; + SetSuccessor(s, 0); + } + + for (i = m = 0; m < 25; m++) + { + while (p->NS2Indx[i] == m) + i++; + for (k = 0; k < 8; k++) + { + UInt16 val = (UInt16)(PPMD_BIN_SCALE - kInitBinEsc[k] / (i + 1)); + UInt16 *dest = p->BinSumm[m] + k; + for (r = 0; r < 64; r += 8) + dest[r] = val; + } + } + + for (i = m = 0; m < 24; m++) + { + while (p->NS2Indx[i + 3] == m + 3) + i++; + for (k = 0; k < 32; k++) + { + CPpmd_See *s = &p->See[m][k]; + s->Summ = (UInt16)((2 * i + 5) << (s->Shift = PPMD_PERIOD_BITS - 4)); + s->Count = 7; + } + } +} + +void Ppmd8_Init(CPpmd8 *p, unsigned maxOrder, unsigned restoreMethod) +{ + p->MaxOrder = maxOrder; + p->RestoreMethod = restoreMethod; + RestartModel(p); + p->DummySee.Shift = PPMD_PERIOD_BITS; + p->DummySee.Summ = 0; /* unused */ + p->DummySee.Count = 64; /* unused */ +} + +static void Refresh(CPpmd8 *p, CTX_PTR ctx, unsigned oldNU, unsigned scale) +{ + unsigned i = ctx->NumStats, escFreq, sumFreq, flags; + CPpmd_State *s = (CPpmd_State *)ShrinkUnits(p, STATS(ctx), oldNU, (i + 2) >> 1); + ctx->Stats = REF(s); + #ifdef PPMD8_FREEZE_SUPPORT + /* fixed over Shkarin's code. Fixed code is not compatible with original code for some files in FREEZE mode. */ + scale |= (ctx->SummFreq >= ((UInt32)1 << 15)); + #endif + flags = (ctx->Flags & (0x10 + 0x04 * scale)) + 0x08 * (s->Symbol >= 0x40); + escFreq = ctx->SummFreq - s->Freq; + sumFreq = (s->Freq = (Byte)((s->Freq + scale) >> scale)); + do + { + escFreq -= (++s)->Freq; + sumFreq += (s->Freq = (Byte)((s->Freq + scale) >> scale)); + flags |= 0x08 * (s->Symbol >= 0x40); + } + while (--i); + ctx->SummFreq = (UInt16)(sumFreq + ((escFreq + scale) >> scale)); + ctx->Flags = (Byte)flags; +} + +static void SwapStates(CPpmd_State *t1, CPpmd_State *t2) +{ + CPpmd_State tmp = *t1; + *t1 = *t2; + *t2 = tmp; +} + +static CPpmd_Void_Ref CutOff(CPpmd8 *p, CTX_PTR ctx, unsigned order) +{ + int i; + unsigned tmp; + CPpmd_State *s; + + if (!ctx->NumStats) + { + s = ONE_STATE(ctx); + if ((Byte *)Ppmd8_GetPtr(p, SUCCESSOR(s)) >= p->UnitsStart) + { + if (order < p->MaxOrder) + SetSuccessor(s, CutOff(p, CTX(SUCCESSOR(s)), order + 1)); + else + SetSuccessor(s, 0); + if (SUCCESSOR(s) || order <= 9) /* O_BOUND */ + return REF(ctx); + } + SpecialFreeUnit(p, ctx); + return 0; + } + + ctx->Stats = STATS_REF(MoveUnitsUp(p, STATS(ctx), tmp = ((unsigned)ctx->NumStats + 2) >> 1)); + + for (s = STATS(ctx) + (i = ctx->NumStats); s >= STATS(ctx); s--) + if ((Byte *)Ppmd8_GetPtr(p, SUCCESSOR(s)) < p->UnitsStart) + { + CPpmd_State *s2 = STATS(ctx) + (i--); + SetSuccessor(s, 0); + SwapStates(s, s2); + } + else if (order < p->MaxOrder) + SetSuccessor(s, CutOff(p, CTX(SUCCESSOR(s)), order + 1)); + else + SetSuccessor(s, 0); + + if (i != ctx->NumStats && order) + { + ctx->NumStats = (Byte)i; + s = STATS(ctx); + if (i < 0) + { + FreeUnits(p, s, tmp); + SpecialFreeUnit(p, ctx); + return 0; + } + if (i == 0) + { + ctx->Flags = (Byte)((ctx->Flags & 0x10) + 0x08 * (s->Symbol >= 0x40)); + *ONE_STATE(ctx) = *s; + FreeUnits(p, s, tmp); + /* 9.31: the code was fixed. It's was not BUG, if Freq <= MAX_FREQ = 124 */ + ONE_STATE(ctx)->Freq = (Byte)(((unsigned)ONE_STATE(ctx)->Freq + 11) >> 3); + } + else + Refresh(p, ctx, tmp, ctx->SummFreq > 16 * i); + } + return REF(ctx); +} + +#ifdef PPMD8_FREEZE_SUPPORT +static CPpmd_Void_Ref RemoveBinContexts(CPpmd8 *p, CTX_PTR ctx, unsigned order) +{ + CPpmd_State *s; + if (!ctx->NumStats) + { + s = ONE_STATE(ctx); + if ((Byte *)Ppmd8_GetPtr(p, SUCCESSOR(s)) >= p->UnitsStart && order < p->MaxOrder) + SetSuccessor(s, RemoveBinContexts(p, CTX(SUCCESSOR(s)), order + 1)); + else + SetSuccessor(s, 0); + /* Suffix context can be removed already, since different (high-order) + Successors may refer to same context. So we check Flags == 0xFF (Stamp == EMPTY_NODE) */ + if (!SUCCESSOR(s) && (!SUFFIX(ctx)->NumStats || SUFFIX(ctx)->Flags == 0xFF)) + { + FreeUnits(p, ctx, 1); + return 0; + } + else + return REF(ctx); + } + + for (s = STATS(ctx) + ctx->NumStats; s >= STATS(ctx); s--) + if ((Byte *)Ppmd8_GetPtr(p, SUCCESSOR(s)) >= p->UnitsStart && order < p->MaxOrder) + SetSuccessor(s, RemoveBinContexts(p, CTX(SUCCESSOR(s)), order + 1)); + else + SetSuccessor(s, 0); + + return REF(ctx); +} +#endif + +static UInt32 GetUsedMemory(const CPpmd8 *p) +{ + UInt32 v = 0; + unsigned i; + for (i = 0; i < PPMD_NUM_INDEXES; i++) + v += p->Stamps[i] * I2U(i); + return p->Size - (UInt32)(p->HiUnit - p->LoUnit) - (UInt32)(p->UnitsStart - p->Text) - U2B(v); +} + +#ifdef PPMD8_FREEZE_SUPPORT + #define RESTORE_MODEL(c1, fSuccessor) RestoreModel(p, c1, fSuccessor) +#else + #define RESTORE_MODEL(c1, fSuccessor) RestoreModel(p, c1) +#endif + +static void RestoreModel(CPpmd8 *p, CTX_PTR c1 + #ifdef PPMD8_FREEZE_SUPPORT + , CTX_PTR fSuccessor + #endif + ) +{ + CTX_PTR c; + CPpmd_State *s; + RESET_TEXT(0); + for (c = p->MaxContext; c != c1; c = SUFFIX(c)) + if (--(c->NumStats) == 0) + { + s = STATS(c); + c->Flags = (Byte)((c->Flags & 0x10) + 0x08 * (s->Symbol >= 0x40)); + *ONE_STATE(c) = *s; + SpecialFreeUnit(p, s); + ONE_STATE(c)->Freq = (Byte)(((unsigned)ONE_STATE(c)->Freq + 11) >> 3); + } + else + Refresh(p, c, (c->NumStats+3) >> 1, 0); + + for (; c != p->MinContext; c = SUFFIX(c)) + if (!c->NumStats) + ONE_STATE(c)->Freq = (Byte)(ONE_STATE(c)->Freq - (ONE_STATE(c)->Freq >> 1)); + else if ((c->SummFreq += 4) > 128 + 4 * c->NumStats) + Refresh(p, c, (c->NumStats + 2) >> 1, 1); + + #ifdef PPMD8_FREEZE_SUPPORT + if (p->RestoreMethod > PPMD8_RESTORE_METHOD_FREEZE) + { + p->MaxContext = fSuccessor; + p->GlueCount += !(p->Stamps[1] & 1); + } + else if (p->RestoreMethod == PPMD8_RESTORE_METHOD_FREEZE) + { + while (p->MaxContext->Suffix) + p->MaxContext = SUFFIX(p->MaxContext); + RemoveBinContexts(p, p->MaxContext, 0); + p->RestoreMethod++; + p->GlueCount = 0; + p->OrderFall = p->MaxOrder; + } + else + #endif + if (p->RestoreMethod == PPMD8_RESTORE_METHOD_RESTART || GetUsedMemory(p) < (p->Size >> 1)) + RestartModel(p); + else + { + while (p->MaxContext->Suffix) + p->MaxContext = SUFFIX(p->MaxContext); + do + { + CutOff(p, p->MaxContext, 0); + ExpandTextArea(p); + } + while (GetUsedMemory(p) > 3 * (p->Size >> 2)); + p->GlueCount = 0; + p->OrderFall = p->MaxOrder; + } +} + +static CTX_PTR CreateSuccessors(CPpmd8 *p, Bool skip, CPpmd_State *s1, CTX_PTR c) +{ + CPpmd_State upState; + Byte flags; + CPpmd_Byte_Ref upBranch = (CPpmd_Byte_Ref)SUCCESSOR(p->FoundState); + /* fixed over Shkarin's code. Maybe it could work without + 1 too. */ + CPpmd_State *ps[PPMD8_MAX_ORDER + 1]; + unsigned numPs = 0; + + if (!skip) + ps[numPs++] = p->FoundState; + + while (c->Suffix) + { + CPpmd_Void_Ref successor; + CPpmd_State *s; + c = SUFFIX(c); + if (s1) + { + s = s1; + s1 = NULL; + } + else if (c->NumStats != 0) + { + for (s = STATS(c); s->Symbol != p->FoundState->Symbol; s++); + if (s->Freq < MAX_FREQ - 9) + { + s->Freq++; + c->SummFreq++; + } + } + else + { + s = ONE_STATE(c); + s->Freq = (Byte)(s->Freq + (!SUFFIX(c)->NumStats & (s->Freq < 24))); + } + successor = SUCCESSOR(s); + if (successor != upBranch) + { + c = CTX(successor); + if (numPs == 0) + return c; + break; + } + ps[numPs++] = s; + } + + upState.Symbol = *(const Byte *)Ppmd8_GetPtr(p, upBranch); + SetSuccessor(&upState, upBranch + 1); + flags = (Byte)(0x10 * (p->FoundState->Symbol >= 0x40) + 0x08 * (upState.Symbol >= 0x40)); + + if (c->NumStats == 0) + upState.Freq = ONE_STATE(c)->Freq; + else + { + UInt32 cf, s0; + CPpmd_State *s; + for (s = STATS(c); s->Symbol != upState.Symbol; s++); + cf = s->Freq - 1; + s0 = c->SummFreq - c->NumStats - cf; + upState.Freq = (Byte)(1 + ((2 * cf <= s0) ? (5 * cf > s0) : ((cf + 2 * s0 - 3) / s0))); + } + + do + { + /* Create Child */ + CTX_PTR c1; /* = AllocContext(p); */ + if (p->HiUnit != p->LoUnit) + c1 = (CTX_PTR)(p->HiUnit -= UNIT_SIZE); + else if (p->FreeList[0] != 0) + c1 = (CTX_PTR)RemoveNode(p, 0); + else + { + c1 = (CTX_PTR)AllocUnitsRare(p, 0); + if (!c1) + return NULL; + } + c1->NumStats = 0; + c1->Flags = flags; + *ONE_STATE(c1) = upState; + c1->Suffix = REF(c); + SetSuccessor(ps[--numPs], REF(c1)); + c = c1; + } + while (numPs != 0); + + return c; +} + +static CTX_PTR ReduceOrder(CPpmd8 *p, CPpmd_State *s1, CTX_PTR c) +{ + CPpmd_State *s = NULL; + CTX_PTR c1 = c; + CPpmd_Void_Ref upBranch = REF(p->Text); + + #ifdef PPMD8_FREEZE_SUPPORT + /* The BUG in Shkarin's code was fixed: ps could overflow in CUT_OFF mode. */ + CPpmd_State *ps[PPMD8_MAX_ORDER + 1]; + unsigned numPs = 0; + ps[numPs++] = p->FoundState; + #endif + + SetSuccessor(p->FoundState, upBranch); + p->OrderFall++; + + for (;;) + { + if (s1) + { + c = SUFFIX(c); + s = s1; + s1 = NULL; + } + else + { + if (!c->Suffix) + { + #ifdef PPMD8_FREEZE_SUPPORT + if (p->RestoreMethod > PPMD8_RESTORE_METHOD_FREEZE) + { + do { SetSuccessor(ps[--numPs], REF(c)); } while (numPs); + RESET_TEXT(1); + p->OrderFall = 1; + } + #endif + return c; + } + c = SUFFIX(c); + if (c->NumStats) + { + if ((s = STATS(c))->Symbol != p->FoundState->Symbol) + do { s++; } while (s->Symbol != p->FoundState->Symbol); + if (s->Freq < MAX_FREQ - 9) + { + s->Freq += 2; + c->SummFreq += 2; + } + } + else + { + s = ONE_STATE(c); + s->Freq = (Byte)(s->Freq + (s->Freq < 32)); + } + } + if (SUCCESSOR(s)) + break; + #ifdef PPMD8_FREEZE_SUPPORT + ps[numPs++] = s; + #endif + SetSuccessor(s, upBranch); + p->OrderFall++; + } + + #ifdef PPMD8_FREEZE_SUPPORT + if (p->RestoreMethod > PPMD8_RESTORE_METHOD_FREEZE) + { + c = CTX(SUCCESSOR(s)); + do { SetSuccessor(ps[--numPs], REF(c)); } while (numPs); + RESET_TEXT(1); + p->OrderFall = 1; + return c; + } + else + #endif + if (SUCCESSOR(s) <= upBranch) + { + CTX_PTR successor; + CPpmd_State *s2 = p->FoundState; + p->FoundState = s; + + successor = CreateSuccessors(p, False, NULL, c); + if (successor == NULL) + SetSuccessor(s, 0); + else + SetSuccessor(s, REF(successor)); + p->FoundState = s2; + } + + if (p->OrderFall == 1 && c1 == p->MaxContext) + { + SetSuccessor(p->FoundState, SUCCESSOR(s)); + p->Text--; + } + if (SUCCESSOR(s) == 0) + return NULL; + return CTX(SUCCESSOR(s)); +} + +static void UpdateModel(CPpmd8 *p) +{ + CPpmd_Void_Ref successor, fSuccessor = SUCCESSOR(p->FoundState); + CTX_PTR c; + unsigned s0, ns, fFreq = p->FoundState->Freq; + Byte flag, fSymbol = p->FoundState->Symbol; + CPpmd_State *s = NULL; + + if (p->FoundState->Freq < MAX_FREQ / 4 && p->MinContext->Suffix != 0) + { + c = SUFFIX(p->MinContext); + + if (c->NumStats == 0) + { + s = ONE_STATE(c); + if (s->Freq < 32) + s->Freq++; + } + else + { + s = STATS(c); + if (s->Symbol != p->FoundState->Symbol) + { + do { s++; } while (s->Symbol != p->FoundState->Symbol); + if (s[0].Freq >= s[-1].Freq) + { + SwapStates(&s[0], &s[-1]); + s--; + } + } + if (s->Freq < MAX_FREQ - 9) + { + s->Freq += 2; + c->SummFreq += 2; + } + } + } + + c = p->MaxContext; + if (p->OrderFall == 0 && fSuccessor) + { + CTX_PTR cs = CreateSuccessors(p, True, s, p->MinContext); + if (cs == 0) + { + SetSuccessor(p->FoundState, 0); + RESTORE_MODEL(c, CTX(fSuccessor)); + } + else + { + SetSuccessor(p->FoundState, REF(cs)); + p->MaxContext = cs; + } + return; + } + + *p->Text++ = p->FoundState->Symbol; + successor = REF(p->Text); + if (p->Text >= p->UnitsStart) + { + RESTORE_MODEL(c, CTX(fSuccessor)); /* check it */ + return; + } + + if (!fSuccessor) + { + CTX_PTR cs = ReduceOrder(p, s, p->MinContext); + if (cs == NULL) + { + RESTORE_MODEL(c, 0); + return; + } + fSuccessor = REF(cs); + } + else if ((Byte *)Ppmd8_GetPtr(p, fSuccessor) < p->UnitsStart) + { + CTX_PTR cs = CreateSuccessors(p, False, s, p->MinContext); + if (cs == NULL) + { + RESTORE_MODEL(c, 0); + return; + } + fSuccessor = REF(cs); + } + + if (--p->OrderFall == 0) + { + successor = fSuccessor; + p->Text -= (p->MaxContext != p->MinContext); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Feb 12 23:33:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 796CB14D730C; Tue, 12 Feb 2019 23:33:17 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 19D2489612; Tue, 12 Feb 2019 23:33:17 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 078181F042; Tue, 12 Feb 2019 23:33:17 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CNXGfv065164; Tue, 12 Feb 2019 23:33:16 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CNXGpF065163; Tue, 12 Feb 2019 23:33:16 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902122333.x1CNXGpF065163@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 23:33:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344066 - head/share/man/man8 X-SVN-Group: head X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: head/share/man/man8 X-SVN-Commit-Revision: 344066 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 19D2489612 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:33:17 -0000 Author: ngie Date: Tue Feb 12 23:33:16 2019 New Revision: 344066 URL: https://svnweb.freebsd.org/changeset/base/344066 Log: Add rc.resume(8) alias for rc(8) to fix the manpage cross references This issue was noticed when running `make manlint` as part of MFCing r342597 to ^/stable/11: ``` $ make -C share/man/man8 rc.8lint mandoc -Tascii -Tlint rc.8 mandoc: rc.8:548:6: STYLE: referenced manual not found: Xr rc.resume 8 $ ``` This is a followup commit to r339818. Reviewed by: eugen Approved by: jtl (mentor) MFC after: 1 week MFC to: ^/stable/12 Differential Revision: https://reviews.freebsd.org/D19158 Modified: head/share/man/man8/Makefile Modified: head/share/man/man8/Makefile ============================================================================== --- head/share/man/man8/Makefile Tue Feb 12 23:24:45 2019 (r344065) +++ head/share/man/man8/Makefile Tue Feb 12 23:33:16 2019 (r344066) @@ -26,6 +26,7 @@ MLINKS= \ rc.8 rc.local.8 \ rc.8 rc.network.8 \ rc.8 rc.pccard.8 \ + rc.8 rc.resume.8 \ rc.8 rc.serial.8 \ rc.8 rc.shutdown.8 From owner-svn-src-all@freebsd.org Tue Feb 12 23:35:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C0A8914D73C2; Tue, 12 Feb 2019 23:35:47 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 64A3E897C0; Tue, 12 Feb 2019 23:35:47 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 554451F057; Tue, 12 Feb 2019 23:35:47 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CNZlAa065321; Tue, 12 Feb 2019 23:35:47 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CNZlff065320; Tue, 12 Feb 2019 23:35:47 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902122335.x1CNZlff065320@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 23:35:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344067 - head/sbin/bectl/tests X-SVN-Group: head X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: head/sbin/bectl/tests X-SVN-Commit-Revision: 344067 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 64A3E897C0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:35:48 -0000 Author: ngie Date: Tue Feb 12 23:35:46 2019 New Revision: 344067 URL: https://svnweb.freebsd.org/changeset/base/344067 Log: Fix up concurrent test zpool setup and teardown Set up zpools with a more unique name, stash the zpool name away in a file pointed to by `$ZPOOL_NAME_FILE` (which is relative to a per-testcase generated temporary directory), then remove the file based on `$ZPOOL_NAME_FILE` in the cleanup routines. This is a more concurrency-safe solution and will allow the testcases to be safely executed in parallel. Reviewed by: kevans, jtl Approved by: jtl (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D19024 Modified: head/sbin/bectl/tests/bectl_test.sh Modified: head/sbin/bectl/tests/bectl_test.sh ============================================================================== --- head/sbin/bectl/tests/bectl_test.sh Tue Feb 12 23:33:16 2019 (r344066) +++ head/sbin/bectl/tests/bectl_test.sh Tue Feb 12 23:35:46 2019 (r344067) @@ -26,6 +26,17 @@ # # $FreeBSD$ +ZPOOL_NAME_FILE=zpool_name +get_zpool_name() +{ + cat $ZPOOL_NAME_FILE +} +make_zpool_name() +{ + mktemp -u bectl_test_XXXXXX > $ZPOOL_NAME_FILE + get_zpool_name +} + # Establishes a bectl_create zpool that can be used for some light testing; contains # a 'default' BE and not much else. bectl_create_setup() @@ -34,6 +45,9 @@ bectl_create_setup() disk=$2 mnt=$3 + # Sanity check to make sure `make_zpool_name` succeeded + atf_check test -n "$zpool" + kldload -n -q zfs || atf_skip "ZFS module not loaded on the current system" atf_check mkdir -p ${mnt} atf_check truncate -s 1G ${disk} @@ -48,6 +62,9 @@ bectl_create_deep_setup() disk=$2 mnt=$3 + # Sanity check to make sure `make_zpool_name` succeeded + atf_check test -n "$zpool" + bectl_create_setup ${zpool} ${disk} ${mnt} atf_check mkdir -p ${root} atf_check -o ignore bectl -r ${zpool}/ROOT mount default ${root} @@ -60,8 +77,9 @@ bectl_create_deep_setup() bectl_cleanup() { zpool=$1 - - if zpool get health ${zpool} >/dev/null 2>&1; then + if [ -z "$zpool" ]; then + echo "Skipping cleanup; zpool not set up" + elif zpool get health ${zpool} >/dev/null 2>&1; then zpool destroy -f ${zpool} fi } @@ -76,7 +94,7 @@ bectl_create_head() bectl_create_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt @@ -89,8 +107,7 @@ bectl_create_body() } bectl_create_cleanup() { - - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_test_case bectl_destroy cleanup @@ -103,7 +120,7 @@ bectl_destroy_head() bectl_destroy_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt @@ -116,7 +133,7 @@ bectl_destroy_body() bectl_destroy_cleanup() { - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_test_case bectl_export_import cleanup @@ -129,7 +146,7 @@ bectl_export_import_head() bectl_export_import_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt @@ -144,7 +161,7 @@ bectl_export_import_body() bectl_export_import_cleanup() { - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_test_case bectl_list cleanup @@ -157,7 +174,7 @@ bectl_list_head() bectl_list_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt @@ -179,7 +196,7 @@ bectl_list_body() bectl_list_cleanup() { - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_test_case bectl_mount cleanup @@ -192,7 +209,7 @@ bectl_mount_head() bectl_mount_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt root=${mount}/root @@ -213,7 +230,7 @@ bectl_mount_body() bectl_mount_cleanup() { - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_test_case bectl_rename cleanup @@ -226,7 +243,7 @@ bectl_rename_head() bectl_rename_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt @@ -239,7 +256,7 @@ bectl_rename_body() bectl_rename_cleanup() { - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_test_case bectl_jail cleanup @@ -252,7 +269,7 @@ bectl_jail_head() bectl_jail_body() { cwd=$(realpath .) - zpool=bectl_test + zpool=$(make_zpool_name) disk=${cwd}/disk.img mount=${cwd}/mnt root=${mount}/root @@ -327,7 +344,7 @@ bectl_jail_cleanup() jail -r ${jailid} done; - bectl_cleanup bectl_test + bectl_cleanup $(get_zpool_name) } atf_init_test_cases() From owner-svn-src-all@freebsd.org Tue Feb 12 23:37:21 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AB48414D74A1; Tue, 12 Feb 2019 23:37:21 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4A04B89950; Tue, 12 Feb 2019 23:37:21 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3568D1F060; Tue, 12 Feb 2019 23:37:21 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CNbLDZ065441; Tue, 12 Feb 2019 23:37:21 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CNbLQY065440; Tue, 12 Feb 2019 23:37:21 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902122337.x1CNbLQY065440@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Tue, 12 Feb 2019 23:37:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344068 - stable/11/share/man/man8 X-SVN-Group: stable-11 X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: stable/11/share/man/man8 X-SVN-Commit-Revision: 344068 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4A04B89950 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:37:21 -0000 Author: ngie Date: Tue Feb 12 23:37:20 2019 New Revision: 344068 URL: https://svnweb.freebsd.org/changeset/base/344068 Log: MFC r342598: Remove legacy rc.d infrastructure references from rc(8) Legacy rc.d scripts (.sh extension) have not been supported since r193118. Remove the outdated references to the legacy format, as they are no longer valid. PR: 193936 Approved by: jtl (mentor) Differential Revision: https://reviews.freebsd.org/D19157 Modified: stable/11/share/man/man8/rc.8 Directory Properties: stable/11/ (props changed) Modified: stable/11/share/man/man8/rc.8 ============================================================================== --- stable/11/share/man/man8/rc.8 Tue Feb 12 23:35:46 2019 (r344067) +++ stable/11/share/man/man8/rc.8 Tue Feb 12 23:37:20 2019 (r344068) @@ -31,7 +31,7 @@ .\" @(#)rc.8 8.2 (Berkeley) 12/11/93 .\" $FreeBSD$ .\" -.Dd April 23, 2016 +.Dd December 29, 2018 .Dt RC 8 .Os .Sh NAME @@ -156,9 +156,6 @@ which sets to .Dq Li start , and sources the script in a subshell. -If the script has a -.Pa .sh -suffix then it is sourced directly into the current shell. Stop processing when the script that is the value of the .Va $early_late_divider has been run. @@ -219,9 +216,6 @@ which sets to .Dq Li stop , and sources the script in a subshell. -If the script has a -.Pa .sh -suffix then it is sourced directly into the current shell. .El .Ss Contents of Nm rc.d/ .Nm rc.d/ @@ -261,13 +255,6 @@ as well as services which might run commands as users and .Pa sendmail ) . .El -.It Pa foo.sh -Scripts that are to be sourced into the current shell rather than a subshell -have a -.Pa .sh -suffix. -Extreme care must be taken in using this, as the startup sequence will -terminate if the script does. .It Pa bar Scripts that are sourced in a subshell. The boot does not stop if such a script terminates with a non-zero status, From owner-svn-src-all@freebsd.org Tue Feb 12 23:39:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3683514D75E2; Tue, 12 Feb 2019 23:39:19 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CAF9989B42; Tue, 12 Feb 2019 23:39:18 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BC2181F074; Tue, 12 Feb 2019 23:39:18 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1CNdISC065593; Tue, 12 Feb 2019 23:39:18 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1CNdIjB065592; Tue, 12 Feb 2019 23:39:18 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902122339.x1CNdIjB065592@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Tue, 12 Feb 2019 23:39:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344069 - head/sys/modules/hwpmc X-SVN-Group: head X-SVN-Commit-Author: marius X-SVN-Commit-Paths: head/sys/modules/hwpmc X-SVN-Commit-Revision: 344069 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: CAF9989B42 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:39:19 -0000 Author: marius Date: Tue Feb 12 23:39:18 2019 New Revision: 344069 URL: https://svnweb.freebsd.org/changeset/base/344069 Log: With r344062 in place, hwpmc_mod.c generally needs bus_if.h and device_if.h. Modified: head/sys/modules/hwpmc/Makefile Modified: head/sys/modules/hwpmc/Makefile ============================================================================== --- head/sys/modules/hwpmc/Makefile Tue Feb 12 23:37:20 2019 (r344068) +++ head/sys/modules/hwpmc/Makefile Tue Feb 12 23:39:18 2019 (r344069) @@ -6,7 +6,8 @@ KMOD= hwpmc -SRCS= hwpmc_mod.c hwpmc_logging.c hwpmc_soft.c vnode_if.h +SRCS= bus_if.h device_if.h hwpmc_mod.c hwpmc_logging.c hwpmc_soft.c +SRCS+= vnode_if.h .if ${MACHINE_CPUARCH} == "aarch64" SRCS+= hwpmc_arm64.c hwpmc_arm64_md.c @@ -15,7 +16,6 @@ SRCS+= hwpmc_arm64.c hwpmc_arm64_md.c .if ${MACHINE_CPUARCH} == "amd64" SRCS+= hwpmc_amd.c hwpmc_core.c hwpmc_intel.c hwpmc_tsc.c SRCS+= hwpmc_x86.c hwpmc_uncore.c -SRCS+= device_if.h bus_if.h .endif .if ${MACHINE_CPUARCH} == "arm" @@ -25,7 +25,6 @@ SRCS+= hwpmc_arm.c .if ${MACHINE_CPUARCH} == "i386" SRCS+= hwpmc_amd.c hwpmc_core.c hwpmc_intel.c SRCS+= hwpmc_tsc.c hwpmc_x86.c hwpmc_uncore.c -SRCS+= device_if.h bus_if.h .endif .if ${MACHINE_CPUARCH} == "powerpc" From owner-svn-src-all@freebsd.org Tue Feb 12 23:44:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 24B9F14D78C7; Tue, 12 Feb 2019 23:44:43 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 993D789FF5; Tue, 12 Feb 2019 23:44:42 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf1-x435.google.com with SMTP id h1so223152pfo.7; Tue, 12 Feb 2019 15:44:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=Mab9O+K5mZJZERDadPHIHtYHWBzDpFJME8oJ+dwD6+w=; b=a5waMyvhMl+2cbgGVqiS0YFr/ppfcLaEsc7q98rEleKceHvvJbEOiQQqgpneCS73r1 ecdIzOP2RTHs3mkpqLzy3dYKjpdJLvBxwxNwR1FMjT6oUjtAUi99F8V12cpDFTdsOt4i xLT1jgpm/vAbVsn5qO1AtCmgx6MNKDb6t/lc0PQ4057kfgCa2Nr2M9oW1MIMEwFZUuEj /TgW4x8FwSzMXyGsUB0j3ZRgG+/SpZgLqQtl1Z6OUqRzZAMWZdFXTioQ1cHz8/Gmbi02 +2PMLDF6PP1apKRHLaG0L+62nY2Nn06cLLuKwj1JKW3LAhnz5hVUoIw4lG9CmsqM8Ur+ I3ew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=Mab9O+K5mZJZERDadPHIHtYHWBzDpFJME8oJ+dwD6+w=; b=CsN0uSTXvFp7dPT6BeZUERRw4DZZiaxF7jDYRT6h8Mqox7Lpmaaf4llrTgr7LJBZr4 2BCQKHt+aZJTSQGGNa6XqgPG8NqZJEu+Yunzjffw8V2PNhMRXLwflCyqdTltDPVgCYe7 VdmuAUdSn9EHcEL3MhNDSH2bxzVQGjWmViD6/H1b4UEITikGilVBRiK71wVTw4CR6GKX 8qX8UBOyl/+uDS8vuaBFTdTknTnvELLG9RsNcO7/9ASHYs/tw76aJ8HCttjd4BYs+0Nq JhBiLtGkovlEGWAq5vDQEmp6FV7d8zcgqJEQWITRXe003/Q2m8+L1vUB2xF5TJucvzfg e1YA== X-Gm-Message-State: AHQUAuaiYe99y9fEb8e+B33rs8rnvKPzgPpY/i7sMLj73l44dw9tplyn f53lJp9iTtuCecvNYsBBp8lf8CWo X-Google-Smtp-Source: AHgI3IYzXS44IKmj3oUc0lCGnMBpaLFVMlgt4UKS17LRS8QqlACknWn+6hJLuiV7H2EeXKQbN4naJA== X-Received: by 2002:a63:100c:: with SMTP id f12mr6066811pgl.324.1550015080658; Tue, 12 Feb 2019 15:44:40 -0800 (PST) Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id s79sm19843209pgs.50.2019.02.12.15.44.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 12 Feb 2019 15:44:40 -0800 (PST) From: Enji Cooper Message-Id: Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r344065 - in head: contrib/libarchive/cpio/test contrib/libarchive/libarchive contrib/libarchive/libarchive/test contrib/libarchive/test_utils lib/libarchive lib/libarchive/tests Date: Tue, 12 Feb 2019 15:44:38 -0800 In-Reply-To: <201902122324.x1CNOkki059446@repo.freebsd.org> Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org To: Martin Matuska References: <201902122324.x1CNOkki059446@repo.freebsd.org> X-Mailer: Apple Mail (2.3445.102.3) X-Rspamd-Queue-Id: 993D789FF5 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:44:43 -0000 > On Feb 12, 2019, at 3:24 PM, Martin Matuska wrote: >=20 > Author: mm > Date: Tue Feb 12 23:24:45 2019 > New Revision: 344065 > URL: https://svnweb.freebsd.org/changeset/base/344065 >=20 > Log: > MFV r344063: > Sync libarchive with vendor. >=20 > Relevant vendor changes: > PR #1085: Fix a null pointer dereference bug in zip writer > PR #1110: ZIP reader added support for XZ, LZMA, PPMD8 and BZIP2 > decopmpression > PR #1116: Add support for 64-bit ar format > PR #1120: Fix a 7zip crash [1] and a ISO9660 infinite loop [2] > PR #1125: RAR5 reader - fix an invalid read and a memory leak > PR #1131: POSIX reader - do not fail when tree_current_lstat() = fails > due to ENOENT [3] > PR #1134: Delete unnecessary null pointer checks before calls of = free() > OSS-Fuzz 10843: Force intermediate to uint64_t to make UBSAN happy. > OSS-Fuzz 11011: Avoid buffer overflow in rar5 reader >=20 > PR: 233006 [3] > Security: CVE-2019-1000019 [1], CVE-2019-1000020 [2] > MFC after: 2 weeks Hi Martin, This change broke the build. =46rom = https://ci.freebsd.org/job/FreeBSD-head-riscv64-build/12672/ = : /usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c: In = function '_archive_read_next_header2': /usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:859: = warning: 'delayed_errno' may be used uninitialized in this function /usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:859: = note: 'delayed_errno' was declared here Cheers, -Enji= From owner-svn-src-all@freebsd.org Tue Feb 12 23:54:44 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 191F014D7BCD; Tue, 12 Feb 2019 23:54:44 +0000 (UTC) (envelope-from marius@alchemy.franken.de) Received: from alchemy.franken.de (alchemy.franken.de [194.94.249.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "alchemy.franken.de", Issuer "alchemy.franken.de" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 9C8758A7FC; Tue, 12 Feb 2019 23:54:43 +0000 (UTC) (envelope-from marius@alchemy.franken.de) Received: from alchemy.franken.de (localhost [127.0.0.1]) by alchemy.franken.de (8.15.2/8.15.2/ALCHEMY.FRANKEN.DE) with ESMTPS id x1CNsaiL056215 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 13 Feb 2019 00:54:36 +0100 (CET) (envelope-from marius@alchemy.franken.de) Received: (from marius@localhost) by alchemy.franken.de (8.15.2/8.15.2/Submit) id x1CNsa8R056214; Wed, 13 Feb 2019 00:54:36 +0100 (CET) (envelope-from marius) Date: Wed, 13 Feb 2019 00:54:35 +0100 From: Marius Strobl To: rgrimes@FreeBSD.org Cc: John Baldwin , src-committers@FreeBSD.org, Patrick Kelsey , svn-src-stable@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-stable-12@FreeBSD.org Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net Message-ID: <20190212235435.GB92760@alchemy.franken.de> References: <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> <201902120124.x1C1OI5b073609@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201902120124.x1C1OI5b073609@pdx.rh.CN85.dnsmgr.net> User-Agent: Mutt/1.9.2 (2017-12-15) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.2 (alchemy.franken.de [0.0.0.0]); Wed, 13 Feb 2019 00:54:36 +0100 (CET) X-Rspamd-Queue-Id: 9C8758A7FC X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.96)[-0.960,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2019 23:54:44 -0000 On Mon, Feb 11, 2019 at 05:24:18PM -0800, Rodney W. Grimes wrote: > > On 2/11/19 4:26 PM, Rodney W. Grimes wrote: > > >> Author: pkelsey > > >> Date: Mon Feb 11 23:24:39 2019 > > >> New Revision: 344027 > > >> URL: https://svnweb.freebsd.org/changeset/base/344027 > > >> > > >> Log: > > >> MFC r343291: > > >> Convert vmx(4) to being an iflib driver. > > > > > > I strongly object to this MFC, given the current number > > > of 12.0 RELEASE related iflib problems we have it is > > > foolish of us to iflib any more drivers in 12.0 > > > > This isn't the release branch though and presumably we have some time before > > 12.1 ships. If there are reports of vmx(4) breakage on stable before 12.1 > > we could always revert this commit then? > > At this point the status if iflib in stable/12 is not certain, but > what is certain is this merge to 12 is probably going to break > someones system and at best is an unknown if working. > > People DO run stable/12, breaking it is a no no. > > Has the committer even booted this code in a stable/12 system > and run a serious amount of testing on it? > > > > > I've heard of some EN's for 12.0 for iflib fixes. Are those fixes in stable/12 > > yet or are we still waiting for them to land in HEAD and/or be merged? > > I sent a ping out earlier today trying to find that out. I belive that > some of them are merged to stable/12, some are waiting to be merged, I > do believe most if not all are commited to head. As for the iflib(4)-converted Intel Ethernet MAC drivers, it's hard to imagine how these drivers could have a chance of properly working on arm64 without r344060 and r344062 (which just hit head, with the latter breaking KBI) but also some previous iflib(4) fixes that were already MFCed to stable/12 (but aren't part of 12.0) in place. However, despite em(4) and ix(4) being in its GENERIC, I don't know what relevance these drivers actually have for arm64. So far, r343934 isn't in stable/12 either (I'll probably merge it tomorrow), fixing the problem with non-working 82583V a bunch of people ran into judging PRs. Last time I checked, there also were some other iflib(4)-related changes, e. g. to converted drivers, not done by me still missing in stable/12. As for the iflib(4) status in head, I'm aware of two remaining user-visible regressions I ran myself into when trying to use em(4) in production. 1) TX UDP performance is abysmal even when using multiple queues and, thus, MSI-X. In a quick test with netperf I see ~690 Mbits/s with 9216 bytes and 282 Mbits/s with 42080 bytes on a Xeon E3-1245V2 and 82574 with GigE connection (stable/11 e1000 drivers forward-ported to 12+ achieve 957 Mbit/s in both cases). 2) TX TCP performance is abysmal when using MSI or INTx (that's likely also PR 235031). I have an upcoming iflib(4) fix for 2) but don't have an idea what's causing 1) so far. I've identified two bugs in iflib(4) that likely have a minimal (probably more so with ixl(4), though) impact on UDP performance but don't explain the huge drop. Moreover, I have no idea so far how these relate to PR 234550. Regarding the latter, one obvious difference is that prior to the iflib(4)-conversions, the Intel Ethernet MAC drivers didn't engage software LRO when a VLAN ID is set. The actual reason why they didn't do that isn't obvious to me, though, and I found no other in-tree driver which behaves the same way, i. e. all employ software LRO now even when a VLAN ID is set. Personally, I don't see much point in issuing an iflib(4) EN for 12.0 before the above regressions have been fixed. Judging some PRs, people started using net/intel-em-kmod instead of the in-tree drivers, which IMO is the better option for now. Marius From owner-svn-src-all@freebsd.org Wed Feb 13 00:10:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4F8E414D884E; Wed, 13 Feb 2019 00:10:13 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DBC7D8B443; Wed, 13 Feb 2019 00:10:12 +0000 (UTC) (envelope-from imp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B78491F5AB; Wed, 13 Feb 2019 00:10:12 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0ACLW080766; Wed, 13 Feb 2019 00:10:12 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0AC3s080765; Wed, 13 Feb 2019 00:10:12 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201902130010.x1D0AC3s080765@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Wed, 13 Feb 2019 00:10:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344070 - head/sys/cam X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sys/cam X-SVN-Commit-Revision: 344070 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DBC7D8B443 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:10:13 -0000 Author: imp Date: Wed Feb 13 00:10:12 2019 New Revision: 344070 URL: https://svnweb.freebsd.org/changeset/base/344070 Log: Fix panic message. The panic message lead people to believe some userland CAM request had caused a problem when in reallity it was for a kernel request (eg the USER bit was cleared). Reword message. Also, improve a couple of comments to reflect that the periph shouldn't be completely torn down before we get here (so the path and sim pointers should be valid, but aren't and the code is designed to be robust enough in the face of that to give a specific panic message). Modified: head/sys/cam/cam_xpt.c Modified: head/sys/cam/cam_xpt.c ============================================================================== --- head/sys/cam/cam_xpt.c Tue Feb 12 23:39:18 2019 (r344069) +++ head/sys/cam/cam_xpt.c Wed Feb 13 00:10:12 2019 (r344070) @@ -5411,8 +5411,9 @@ xpt_done_process(struct ccb_hdr *ccb_h) } /* - * Insulate against a race where the periph is destroyed - * but CCBs are still not all processed. + * Insulate against a race where the periph is destroyed but CCBs are + * still not all processed. This shouldn't happen, but allows us better + * bug diagnostic when it does. */ if (ccb_h->path->bus) sim = ccb_h->path->bus->sim; @@ -5434,7 +5435,7 @@ xpt_done_process(struct ccb_hdr *ccb_h) if (sim) devq = sim->devq; - KASSERT(devq, ("sim missing for XPT_FC_USER_CCB request")); + KASSERT(devq, ("Periph disappeared with request pending.")); mtx_lock(&devq->send_mtx); devq->send_active--; From owner-svn-src-all@freebsd.org Wed Feb 13 00:33:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 96BF814DAB01; Wed, 13 Feb 2019 00:33:02 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3A1998C414; Wed, 13 Feb 2019 00:33:02 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2BBC91FAB2; Wed, 13 Feb 2019 00:33:02 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0X2NG096151; Wed, 13 Feb 2019 00:33:02 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0X21W096150; Wed, 13 Feb 2019 00:33:02 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902130033.x1D0X21W096150@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 13 Feb 2019 00:33:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344071 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 344071 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3A1998C414 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:33:02 -0000 Author: mav Date: Wed Feb 13 00:33:01 2019 New Revision: 344071 URL: https://svnweb.freebsd.org/changeset/base/344071 Log: MFC r343585: Only sort requests of types that have concept of offset. Other types, such as BIO_FLUSH or BIO_ZONE, or especially new/unknown ones, may imply some degree of ordering even if strict ordering is not requested explicitly. Modified: stable/12/sys/kern/subr_disk.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/subr_disk.c ============================================================================== --- stable/12/sys/kern/subr_disk.c Wed Feb 13 00:10:12 2019 (r344070) +++ stable/12/sys/kern/subr_disk.c Wed Feb 13 00:33:01 2019 (r344071) @@ -259,6 +259,17 @@ bioq_disksort(struct bio_queue_head *head, struct bio return; } + /* + * We should only sort requests of types that have concept of offset. + * Other types, such as BIO_FLUSH or BIO_ZONE, may imply some degree + * of ordering even if strict ordering is not requested explicitly. + */ + if (bp->bio_cmd != BIO_READ && bp->bio_cmd != BIO_WRITE && + bp->bio_cmd != BIO_DELETE) { + bioq_insert_tail(head, bp); + return; + } + if (bioq_batchsize > 0 && head->batched > bioq_batchsize) { bioq_insert_tail(head, bp); return; From owner-svn-src-all@freebsd.org Wed Feb 13 00:35:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1809214DB3C7; Wed, 13 Feb 2019 00:35:10 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AEBCF8C83C; Wed, 13 Feb 2019 00:35:09 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A0C121FAB5; Wed, 13 Feb 2019 00:35:09 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0Z9EU096303; Wed, 13 Feb 2019 00:35:09 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0Z9Xs096302; Wed, 13 Feb 2019 00:35:09 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902130035.x1D0Z9Xs096302@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 13 Feb 2019 00:35:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344072 - stable/11/sys/kern X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/kern X-SVN-Commit-Revision: 344072 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AEBCF8C83C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:35:10 -0000 Author: mav Date: Wed Feb 13 00:35:09 2019 New Revision: 344072 URL: https://svnweb.freebsd.org/changeset/base/344072 Log: MFC r343585: Only sort requests of types that have concept of offset. Other types, such as BIO_FLUSH or BIO_ZONE, or especially new/unknown ones, may imply some degree of ordering even if strict ordering is not requested explicitly. Modified: stable/11/sys/kern/subr_disk.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/kern/subr_disk.c ============================================================================== --- stable/11/sys/kern/subr_disk.c Wed Feb 13 00:33:01 2019 (r344071) +++ stable/11/sys/kern/subr_disk.c Wed Feb 13 00:35:09 2019 (r344072) @@ -246,6 +246,17 @@ bioq_disksort(struct bio_queue_head *head, struct bio return; } + /* + * We should only sort requests of types that have concept of offset. + * Other types, such as BIO_FLUSH or BIO_ZONE, may imply some degree + * of ordering even if strict ordering is not requested explicitly. + */ + if (bp->bio_cmd != BIO_READ && bp->bio_cmd != BIO_WRITE && + bp->bio_cmd != BIO_DELETE) { + bioq_insert_tail(head, bp); + return; + } + prev = NULL; key = bioq_bio_key(head, bp); cur = TAILQ_FIRST(&head->queue); From owner-svn-src-all@freebsd.org Wed Feb 13 00:37:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CDF3B14DB59B; Wed, 13 Feb 2019 00:37:17 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 719BC8C9F2; Wed, 13 Feb 2019 00:37:17 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 61F961FABE; Wed, 13 Feb 2019 00:37:17 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0bHew096452; Wed, 13 Feb 2019 00:37:17 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0bHPu096451; Wed, 13 Feb 2019 00:37:17 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902130037.x1D0bHPu096451@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 13 Feb 2019 00:37:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344073 - stable/12/sys/cam/scsi X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/cam/scsi X-SVN-Commit-Revision: 344073 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 719BC8C9F2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:37:18 -0000 Author: mav Date: Wed Feb 13 00:37:16 2019 New Revision: 344073 URL: https://svnweb.freebsd.org/changeset/base/344073 Log: MFC r343582,r343588:Relax BIO_FLUSH ordering in da(4), respecting BIO_ORDERED. r212160 tightened this from always using MSG_SIMPLE_Q_TAG to always MSG_ORDERED_Q_TAG. Since it also marked all BIO_FLUSH requests with BIO_ORDERED, this commit changes nothing immediately, but it returns BIO_FLUSH callers ability to actually specify ordering they really need, alike to other request types. Modified: stable/12/sys/cam/scsi/scsi_da.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cam/scsi/scsi_da.c ============================================================================== --- stable/12/sys/cam/scsi/scsi_da.c Wed Feb 13 00:35:09 2019 (r344072) +++ stable/12/sys/cam/scsi/scsi_da.c Wed Feb 13 00:37:16 2019 (r344073) @@ -3258,14 +3258,12 @@ more: /* * BIO_FLUSH doesn't currently communicate * range data, so we synchronize the cache - * over the whole disk. We also force - * ordered tag semantics the flush applies - * to all previously queued I/O. + * over the whole disk. */ scsi_synchronize_cache(&start_ccb->csio, /*retries*/1, /*cbfcnp*/dadone, - MSG_ORDERED_Q_TAG, + /*tag_action*/tag_code, /*begin_lba*/0, /*lb_count*/0, SSD_FULL_SIZE, From owner-svn-src-all@freebsd.org Wed Feb 13 00:38:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2206714DB67C; Wed, 13 Feb 2019 00:38:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B96F48CB72; Wed, 13 Feb 2019 00:38:28 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AAC901FAC2; Wed, 13 Feb 2019 00:38:28 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0cSgF096569; Wed, 13 Feb 2019 00:38:28 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0cSgI096568; Wed, 13 Feb 2019 00:38:28 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902130038.x1D0cSgI096568@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 13 Feb 2019 00:38:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344074 - stable/11/sys/cam/scsi X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/cam/scsi X-SVN-Commit-Revision: 344074 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B96F48CB72 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:38:29 -0000 Author: mav Date: Wed Feb 13 00:38:28 2019 New Revision: 344074 URL: https://svnweb.freebsd.org/changeset/base/344074 Log: MFC r343582,r343588:Relax BIO_FLUSH ordering in da(4), respecting BIO_ORDERED. r212160 tightened this from always using MSG_SIMPLE_Q_TAG to always MSG_ORDERED_Q_TAG. Since it also marked all BIO_FLUSH requests with BIO_ORDERED, this commit changes nothing immediately, but it returns BIO_FLUSH callers ability to actually specify ordering they really need, alike to other request types. Modified: stable/11/sys/cam/scsi/scsi_da.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/scsi/scsi_da.c ============================================================================== --- stable/11/sys/cam/scsi/scsi_da.c Wed Feb 13 00:37:16 2019 (r344073) +++ stable/11/sys/cam/scsi/scsi_da.c Wed Feb 13 00:38:28 2019 (r344074) @@ -3054,14 +3054,12 @@ more: /* * BIO_FLUSH doesn't currently communicate * range data, so we synchronize the cache - * over the whole disk. We also force - * ordered tag semantics the flush applies - * to all previously queued I/O. + * over the whole disk. */ scsi_synchronize_cache(&start_ccb->csio, /*retries*/1, /*cbfcnp*/dadone, - MSG_ORDERED_Q_TAG, + /*tag_action*/tag_code, /*begin_lba*/0, /*lb_count*/0, SSD_FULL_SIZE, From owner-svn-src-all@freebsd.org Wed Feb 13 00:39:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F1EBE14DB6E4; Wed, 13 Feb 2019 00:39:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 94BF88CCA3; Wed, 13 Feb 2019 00:39:03 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8642F1FAC4; Wed, 13 Feb 2019 00:39:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0d3Zg096640; Wed, 13 Feb 2019 00:39:03 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0d34p096639; Wed, 13 Feb 2019 00:39:03 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902130039.x1D0d34p096639@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 13 Feb 2019 00:39:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344075 - stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 344075 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 94BF88CCA3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:39:04 -0000 Author: mav Date: Wed Feb 13 00:39:03 2019 New Revision: 344075 URL: https://svnweb.freebsd.org/changeset/base/344075 Log: MFC r343586: Remove BIO_ORDERED flag from BIO_FLUSH sent by ZFS. In all cases where ZFS sends BIO_FLUSH, it first waits for all related writes to complete, so its BIO_FLUSH does not care about strict ordering. Removal of one makes life much easier at least for NVMe driver, which hardware has no concept of request ordering, relying completely on software. Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Wed Feb 13 00:38:28 2019 (r344074) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Wed Feb 13 00:39:03 2019 (r344075) @@ -1097,7 +1097,6 @@ sendreq: break; case ZIO_TYPE_IOCTL: bp->bio_cmd = BIO_FLUSH; - bp->bio_flags |= BIO_ORDERED; bp->bio_data = NULL; bp->bio_offset = cp->provider->mediasize; bp->bio_length = 0; From owner-svn-src-all@freebsd.org Wed Feb 13 00:39:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9631614DB771; Wed, 13 Feb 2019 00:39:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 349798CDE2; Wed, 13 Feb 2019 00:39:29 +0000 (UTC) (envelope-from mav@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 25EF31FAC8; Wed, 13 Feb 2019 00:39:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D0dT7E096714; Wed, 13 Feb 2019 00:39:29 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D0dTBr096713; Wed, 13 Feb 2019 00:39:29 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201902130039.x1D0dTBr096713@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Wed, 13 Feb 2019 00:39:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344076 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 344076 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 349798CDE2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 00:39:29 -0000 Author: mav Date: Wed Feb 13 00:39:28 2019 New Revision: 344076 URL: https://svnweb.freebsd.org/changeset/base/344076 Log: MFC r343586: Remove BIO_ORDERED flag from BIO_FLUSH sent by ZFS. In all cases where ZFS sends BIO_FLUSH, it first waits for all related writes to complete, so its BIO_FLUSH does not care about strict ordering. Removal of one makes life much easier at least for NVMe driver, which hardware has no concept of request ordering, relying completely on software. Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Wed Feb 13 00:39:03 2019 (r344075) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Wed Feb 13 00:39:28 2019 (r344076) @@ -1097,7 +1097,6 @@ sendreq: break; case ZIO_TYPE_IOCTL: bp->bio_cmd = BIO_FLUSH; - bp->bio_flags |= BIO_ORDERED; bp->bio_data = NULL; bp->bio_offset = cp->provider->mediasize; bp->bio_length = 0; From owner-svn-src-all@freebsd.org Wed Feb 13 02:16:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3E0E414DFE7C; Wed, 13 Feb 2019 02:16:01 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D95A16B2CA; Wed, 13 Feb 2019 02:16:00 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C63BF20BE6; Wed, 13 Feb 2019 02:16:00 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D2G0OZ049308; Wed, 13 Feb 2019 02:16:00 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D2G04E049307; Wed, 13 Feb 2019 02:16:00 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902130216.x1D2G04E049307@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Wed, 13 Feb 2019 02:16:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r344077 - svnadmin/conf X-SVN-Group: svnadmin X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: svnadmin/conf X-SVN-Commit-Revision: 344077 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D95A16B2CA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.94)[-0.936,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 02:16:01 -0000 Author: ngie Date: Wed Feb 13 02:16:00 2019 New Revision: 344077 URL: https://svnweb.freebsd.org/changeset/base/344077 Log: Remove my size limit in order to import https://reviews.freebsd.org/D18622 Approved by: emaste (mentor, implicit) Modified: svnadmin/conf/sizelimit.conf Modified: svnadmin/conf/sizelimit.conf ============================================================================== --- svnadmin/conf/sizelimit.conf Wed Feb 13 00:39:28 2019 (r344076) +++ svnadmin/conf/sizelimit.conf Wed Feb 13 02:16:00 2019 (r344077) @@ -23,6 +23,7 @@ jb jeff jkim mm +ngie np obrien peter From owner-svn-src-all@freebsd.org Wed Feb 13 02:16:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DF7C414DFF82; Wed, 13 Feb 2019 02:16:55 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 733DB6B495; Wed, 13 Feb 2019 02:16:55 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 63D8D20BE7; Wed, 13 Feb 2019 02:16:55 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D2Gtge049399; Wed, 13 Feb 2019 02:16:55 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D2Gq1e049384; Wed, 13 Feb 2019 02:16:52 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902130216.x1D2Gq1e049384@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Wed, 13 Feb 2019 02:16:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344078 - in vendor/google: . googletest googletest/dist googletest/dist/ci googletest/dist/googlemock googletest/dist/googlemock/build-aux googletest/dist/googlemock/cmake googletest/d... X-SVN-Group: vendor X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: in vendor/google: . googletest googletest/dist googletest/dist/ci googletest/dist/googlemock googletest/dist/googlemock/build-aux googletest/dist/googlemock/cmake googletest/dist/googlemock/docs googl... X-SVN-Commit-Revision: 344078 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 733DB6B495 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.95)[-0.945,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 02:16:56 -0000 Author: ngie Date: Wed Feb 13 02:16:52 2019 New Revision: 344078 URL: https://svnweb.freebsd.org/changeset/base/344078 Log: Import GoogleTest 1.8.1 into the vendor tree under `^/google/googletest/dist` GoogleTest is a widely used opensource C++ test framework, licensed under a BSD 3-clause license. It fits best in the realm of doing functional/whitebox testing, similar to ATF's C++ library. However, it has additional functionality such as per-testcase setup fixtures, class level setup and teardown fixtures, and a lot more functional/syntactic goodness. In addition to large corporations adopting GoogleTest as their defacto C++ test library (Facebook, Google, etc), many opensource projects have adopted GoogleTest, e.g., the Capsicum project, Chrome, etc. The goal for importing this is to enable testing with zfsd and integrate googletest into kyua. This is the final version that will support a pre-C++-11 compiler. As such, this test framework will not be available to gcc 4.2.1, similar to ATF's C++ library. A subsequent set of commits will: 1. Tag ^/google/googletest/dist as ^/google/googletest/1.8.1 using `svn cp ^/google/googletest/dist ^/google/googletest/1.8.1`. 2. Import this code into ^/head and integrate it into the build for all applicable platforms and C++ compile toolchains. The import was done via the following command pipeline on OSX: ``` curl -L https://github.com/google/googletest/archive/release-1.8.1.tar.gz | tar --strip-components=1 -xvzf - -C dist/ ``` Approved by: emaste (mentor) Discussed with: brooks, jtl Differential Revision: https://reviews.freebsd.org/D18622 Added: vendor/google/ vendor/google/googletest/ vendor/google/googletest/dist/ vendor/google/googletest/dist/.gitignore vendor/google/googletest/dist/.travis.yml vendor/google/googletest/dist/BUILD.bazel vendor/google/googletest/dist/CMakeLists.txt (contents, props changed) vendor/google/googletest/dist/CONTRIBUTING.md vendor/google/googletest/dist/LICENSE vendor/google/googletest/dist/Makefile.am (contents, props changed) vendor/google/googletest/dist/README.md vendor/google/googletest/dist/WORKSPACE vendor/google/googletest/dist/appveyor.yml vendor/google/googletest/dist/ci/ vendor/google/googletest/dist/ci/build-linux-autotools.sh (contents, props changed) vendor/google/googletest/dist/ci/build-linux-bazel.sh (contents, props changed) vendor/google/googletest/dist/ci/env-linux.sh (contents, props changed) vendor/google/googletest/dist/ci/env-osx.sh (contents, props changed) vendor/google/googletest/dist/ci/get-nprocessors.sh (contents, props changed) vendor/google/googletest/dist/ci/install-linux.sh (contents, props changed) vendor/google/googletest/dist/ci/install-osx.sh (contents, props changed) vendor/google/googletest/dist/ci/log-config.sh (contents, props changed) vendor/google/googletest/dist/ci/travis.sh (contents, props changed) vendor/google/googletest/dist/configure.ac vendor/google/googletest/dist/googlemock/ vendor/google/googletest/dist/googlemock/CHANGES vendor/google/googletest/dist/googlemock/CMakeLists.txt (contents, props changed) vendor/google/googletest/dist/googlemock/CONTRIBUTORS vendor/google/googletest/dist/googlemock/LICENSE vendor/google/googletest/dist/googlemock/Makefile.am (contents, props changed) vendor/google/googletest/dist/googlemock/README.md vendor/google/googletest/dist/googlemock/build-aux/ vendor/google/googletest/dist/googlemock/build-aux/.keep vendor/google/googletest/dist/googlemock/cmake/ vendor/google/googletest/dist/googlemock/cmake/gmock.pc.in (contents, props changed) vendor/google/googletest/dist/googlemock/cmake/gmock_main.pc.in (contents, props changed) vendor/google/googletest/dist/googlemock/configure.ac vendor/google/googletest/dist/googlemock/docs/ vendor/google/googletest/dist/googlemock/docs/CheatSheet.md vendor/google/googletest/dist/googlemock/docs/CookBook.md vendor/google/googletest/dist/googlemock/docs/DesignDoc.md vendor/google/googletest/dist/googlemock/docs/Documentation.md vendor/google/googletest/dist/googlemock/docs/ForDummies.md vendor/google/googletest/dist/googlemock/docs/FrequentlyAskedQuestions.md vendor/google/googletest/dist/googlemock/docs/KnownIssues.md vendor/google/googletest/dist/googlemock/include/ vendor/google/googletest/dist/googlemock/include/gmock/ vendor/google/googletest/dist/googlemock/include/gmock/gmock-actions.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-cardinalities.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-actions.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-actions.h.pump vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-function-mockers.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-function-mockers.h.pump vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-matchers.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-matchers.h.pump vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-nice-strict.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-generated-nice-strict.h.pump vendor/google/googletest/dist/googlemock/include/gmock/gmock-matchers.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-more-actions.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-more-matchers.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock-spec-builders.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/gmock.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/internal/ vendor/google/googletest/dist/googlemock/include/gmock/internal/custom/ vendor/google/googletest/dist/googlemock/include/gmock/internal/custom/README.md vendor/google/googletest/dist/googlemock/include/gmock/internal/custom/gmock-generated-actions.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump vendor/google/googletest/dist/googlemock/include/gmock/internal/custom/gmock-matchers.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/internal/custom/gmock-port.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/internal/gmock-generated-internal-utils.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/internal/gmock-generated-internal-utils.h.pump vendor/google/googletest/dist/googlemock/include/gmock/internal/gmock-internal-utils.h (contents, props changed) vendor/google/googletest/dist/googlemock/include/gmock/internal/gmock-port.h (contents, props changed) vendor/google/googletest/dist/googlemock/make/ vendor/google/googletest/dist/googlemock/make/Makefile (contents, props changed) vendor/google/googletest/dist/googlemock/msvc/ vendor/google/googletest/dist/googlemock/msvc/2005/ vendor/google/googletest/dist/googlemock/msvc/2005/gmock.sln vendor/google/googletest/dist/googlemock/msvc/2005/gmock.vcproj vendor/google/googletest/dist/googlemock/msvc/2005/gmock_config.vsprops vendor/google/googletest/dist/googlemock/msvc/2005/gmock_main.vcproj vendor/google/googletest/dist/googlemock/msvc/2005/gmock_test.vcproj vendor/google/googletest/dist/googlemock/msvc/2010/ vendor/google/googletest/dist/googlemock/msvc/2010/gmock.sln vendor/google/googletest/dist/googlemock/msvc/2010/gmock.vcxproj vendor/google/googletest/dist/googlemock/msvc/2010/gmock_config.props vendor/google/googletest/dist/googlemock/msvc/2010/gmock_main.vcxproj vendor/google/googletest/dist/googlemock/msvc/2010/gmock_test.vcxproj vendor/google/googletest/dist/googlemock/msvc/2015/ vendor/google/googletest/dist/googlemock/msvc/2015/gmock.sln vendor/google/googletest/dist/googlemock/msvc/2015/gmock.vcxproj vendor/google/googletest/dist/googlemock/msvc/2015/gmock_config.props vendor/google/googletest/dist/googlemock/msvc/2015/gmock_main.vcxproj vendor/google/googletest/dist/googlemock/msvc/2015/gmock_test.vcxproj vendor/google/googletest/dist/googlemock/scripts/ vendor/google/googletest/dist/googlemock/scripts/fuse_gmock_files.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/ vendor/google/googletest/dist/googlemock/scripts/generator/LICENSE vendor/google/googletest/dist/googlemock/scripts/generator/README vendor/google/googletest/dist/googlemock/scripts/generator/README.cppclean vendor/google/googletest/dist/googlemock/scripts/generator/cpp/ vendor/google/googletest/dist/googlemock/scripts/generator/cpp/__init__.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/cpp/ast.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/cpp/gmock_class.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/cpp/gmock_class_test.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/cpp/keywords.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/cpp/tokenize.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/cpp/utils.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/generator/gmock_gen.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/gmock-config.in (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/gmock_doctor.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/upload.py (contents, props changed) vendor/google/googletest/dist/googlemock/scripts/upload_gmock.py (contents, props changed) vendor/google/googletest/dist/googlemock/src/ vendor/google/googletest/dist/googlemock/src/gmock-all.cc (contents, props changed) vendor/google/googletest/dist/googlemock/src/gmock-cardinalities.cc (contents, props changed) vendor/google/googletest/dist/googlemock/src/gmock-internal-utils.cc (contents, props changed) vendor/google/googletest/dist/googlemock/src/gmock-matchers.cc (contents, props changed) vendor/google/googletest/dist/googlemock/src/gmock-spec-builders.cc (contents, props changed) vendor/google/googletest/dist/googlemock/src/gmock.cc (contents, props changed) vendor/google/googletest/dist/googlemock/src/gmock_main.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/ vendor/google/googletest/dist/googlemock/test/BUILD.bazel vendor/google/googletest/dist/googlemock/test/gmock-actions_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-cardinalities_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-generated-actions_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-generated-function-mockers_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-generated-internal-utils_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-generated-matchers_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-internal-utils_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-matchers_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-more-actions_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-nice-strict_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-port_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock-spec-builders_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_all_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_ex_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_leak_test.py (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_leak_test_.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_link2_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_link_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_link_test.h (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_output_test.py (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_output_test_.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_output_test_golden.txt (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_stress_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_test.cc (contents, props changed) vendor/google/googletest/dist/googlemock/test/gmock_test_utils.py (contents, props changed) vendor/google/googletest/dist/googletest/ vendor/google/googletest/dist/googletest/CHANGES vendor/google/googletest/dist/googletest/CMakeLists.txt (contents, props changed) vendor/google/googletest/dist/googletest/CONTRIBUTORS vendor/google/googletest/dist/googletest/LICENSE vendor/google/googletest/dist/googletest/Makefile.am (contents, props changed) vendor/google/googletest/dist/googletest/README.md vendor/google/googletest/dist/googletest/cmake/ vendor/google/googletest/dist/googletest/cmake/Config.cmake.in (contents, props changed) vendor/google/googletest/dist/googletest/cmake/gtest.pc.in (contents, props changed) vendor/google/googletest/dist/googletest/cmake/gtest_main.pc.in (contents, props changed) vendor/google/googletest/dist/googletest/cmake/internal_utils.cmake vendor/google/googletest/dist/googletest/codegear/ vendor/google/googletest/dist/googletest/codegear/gtest.cbproj vendor/google/googletest/dist/googletest/codegear/gtest.groupproj vendor/google/googletest/dist/googletest/codegear/gtest_all.cc (contents, props changed) vendor/google/googletest/dist/googletest/codegear/gtest_link.cc (contents, props changed) vendor/google/googletest/dist/googletest/codegear/gtest_main.cbproj vendor/google/googletest/dist/googletest/codegear/gtest_unittest.cbproj vendor/google/googletest/dist/googletest/configure.ac vendor/google/googletest/dist/googletest/docs/ vendor/google/googletest/dist/googletest/docs/Pkgconfig.md vendor/google/googletest/dist/googletest/docs/PumpManual.md vendor/google/googletest/dist/googletest/docs/XcodeGuide.md vendor/google/googletest/dist/googletest/docs/advanced.md vendor/google/googletest/dist/googletest/docs/faq.md vendor/google/googletest/dist/googletest/docs/primer.md vendor/google/googletest/dist/googletest/docs/samples.md vendor/google/googletest/dist/googletest/include/ vendor/google/googletest/dist/googletest/include/gtest/ vendor/google/googletest/dist/googletest/include/gtest/gtest-death-test.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest-message.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest-param-test.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest-param-test.h.pump vendor/google/googletest/dist/googletest/include/gtest/gtest-printers.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest-spi.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest-test-part.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest-typed-test.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest_pred_impl.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/gtest_prod.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/ vendor/google/googletest/dist/googletest/include/gtest/internal/custom/ vendor/google/googletest/dist/googletest/include/gtest/internal/custom/README.md vendor/google/googletest/dist/googletest/include/gtest/internal/custom/gtest-port.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/custom/gtest-printers.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/custom/gtest.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-death-test-internal.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-filepath.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-internal.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-linked_ptr.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-param-util-generated.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-param-util-generated.h.pump vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-param-util.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-port-arch.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-port.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-string.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-tuple.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-tuple.h.pump vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-type-util.h (contents, props changed) vendor/google/googletest/dist/googletest/include/gtest/internal/gtest-type-util.h.pump vendor/google/googletest/dist/googletest/m4/ vendor/google/googletest/dist/googletest/m4/acx_pthread.m4 vendor/google/googletest/dist/googletest/m4/gtest.m4 vendor/google/googletest/dist/googletest/make/ vendor/google/googletest/dist/googletest/make/Makefile (contents, props changed) vendor/google/googletest/dist/googletest/msvc/ vendor/google/googletest/dist/googletest/msvc/2010/ vendor/google/googletest/dist/googletest/msvc/2010/gtest-md.sln vendor/google/googletest/dist/googletest/msvc/2010/gtest-md.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest-md.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest.sln vendor/google/googletest/dist/googletest/msvc/2010/gtest.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest_main-md.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest_main-md.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest_main.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest_main.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest_prod_test-md.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest_prod_test-md.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest_prod_test.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest_prod_test.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest_unittest-md.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest_unittest-md.vcxproj.filters vendor/google/googletest/dist/googletest/msvc/2010/gtest_unittest.vcxproj vendor/google/googletest/dist/googletest/msvc/2010/gtest_unittest.vcxproj.filters vendor/google/googletest/dist/googletest/samples/ vendor/google/googletest/dist/googletest/samples/prime_tables.h (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample1.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample1.h (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample10_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample1_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample2.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample2.h (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample2_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample3-inl.h (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample3_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample4.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample4.h (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample4_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample5_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample6_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample7_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample8_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/samples/sample9_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/scripts/ vendor/google/googletest/dist/googletest/scripts/common.py (contents, props changed) vendor/google/googletest/dist/googletest/scripts/fuse_gtest_files.py (contents, props changed) vendor/google/googletest/dist/googletest/scripts/gen_gtest_pred_impl.py (contents, props changed) vendor/google/googletest/dist/googletest/scripts/gtest-config.in (contents, props changed) vendor/google/googletest/dist/googletest/scripts/pump.py (contents, props changed) vendor/google/googletest/dist/googletest/scripts/release_docs.py (contents, props changed) vendor/google/googletest/dist/googletest/scripts/test/ vendor/google/googletest/dist/googletest/scripts/test/Makefile (contents, props changed) vendor/google/googletest/dist/googletest/scripts/upload.py (contents, props changed) vendor/google/googletest/dist/googletest/scripts/upload_gtest.py (contents, props changed) vendor/google/googletest/dist/googletest/src/ vendor/google/googletest/dist/googletest/src/gtest-all.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-death-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-filepath.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-internal-inl.h (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-port.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-printers.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-test-part.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest-typed-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest.cc (contents, props changed) vendor/google/googletest/dist/googletest/src/gtest_main.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/ vendor/google/googletest/dist/googletest/test/BUILD.bazel vendor/google/googletest/dist/googletest/test/googletest-break-on-failure-unittest.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-break-on-failure-unittest_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-catch-exceptions-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-catch-exceptions-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-color-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-color-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-death-test-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-death-test_ex_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-env-var-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-env-var-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-filepath-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-filter-unittest.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-filter-unittest_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-json-outfiles-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-json-output-unittest.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-linked-ptr-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-list-tests-unittest.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-list-tests-unittest_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-listener-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-message-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-options-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-output-test-golden-lin.txt (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-output-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-output-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test-invalid-name1-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test-invalid-name1-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test-invalid-name2-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test-invalid-name2-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test-test.h (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-param-test2-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-port-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-printers-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-shuffle-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-shuffle-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-test-part-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-test2_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-throw-on-failure-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-throw-on-failure-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-tuple-test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-uninitialized-test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/googletest-uninitialized-test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest-typed-test2_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest-typed-test_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest-typed-test_test.h (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest-unittest-api_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_all_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_assert_by_exception_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_environment_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_help_test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_help_test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_json_test_utils.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_list_output_unittest.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_list_output_unittest_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_main_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_no_test_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_pred_impl_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_premature_exit_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_prod_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_repeat_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_sole_header_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_stress_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_test_macro_stack_footprint_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_test_utils.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_testbridge_test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_testbridge_test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_throw_on_failure_ex_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_unittest.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_xml_outfile1_test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_xml_outfile2_test_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_xml_outfiles_test.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_xml_output_unittest.py (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_xml_output_unittest_.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/gtest_xml_test_utils.py (contents, props changed) vendor/google/googletest/dist/googletest/test/production.cc (contents, props changed) vendor/google/googletest/dist/googletest/test/production.h (contents, props changed) vendor/google/googletest/dist/googletest/xcode/ vendor/google/googletest/dist/googletest/xcode/Config/ vendor/google/googletest/dist/googletest/xcode/Config/DebugProject.xcconfig vendor/google/googletest/dist/googletest/xcode/Config/FrameworkTarget.xcconfig vendor/google/googletest/dist/googletest/xcode/Config/General.xcconfig vendor/google/googletest/dist/googletest/xcode/Config/ReleaseProject.xcconfig vendor/google/googletest/dist/googletest/xcode/Config/StaticLibraryTarget.xcconfig vendor/google/googletest/dist/googletest/xcode/Config/TestTarget.xcconfig vendor/google/googletest/dist/googletest/xcode/Resources/ vendor/google/googletest/dist/googletest/xcode/Resources/Info.plist vendor/google/googletest/dist/googletest/xcode/Samples/ vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/ vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/Info.plist vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/ vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/runtests.sh (contents, props changed) vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/widget.cc (contents, props changed) vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/widget.h (contents, props changed) vendor/google/googletest/dist/googletest/xcode/Samples/FrameworkSample/widget_test.cc (contents, props changed) vendor/google/googletest/dist/googletest/xcode/Scripts/ vendor/google/googletest/dist/googletest/xcode/Scripts/runtests.sh (contents, props changed) vendor/google/googletest/dist/googletest/xcode/Scripts/versiongenerate.py (contents, props changed) vendor/google/googletest/dist/googletest/xcode/gtest.xcodeproj/ vendor/google/googletest/dist/googletest/xcode/gtest.xcodeproj/project.pbxproj Added: vendor/google/googletest/dist/.gitignore ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/.gitignore Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,54 @@ +# Ignore CI build directory +build/ +xcuserdata +cmake-build-debug/ +.idea/ +bazel-bin +bazel-genfiles +bazel-googletest +bazel-out +bazel-testlogs +# python +*.pyc + +# Visual Studio files +*.sdf +*.opensdf +*.VC.opendb +*.suo +*.user +_ReSharper.Caches/ +Win32-Debug/ +Win32-Release/ +x64-Debug/ +x64-Release/ + +# Ignore autoconf / automake files +Makefile.in +aclocal.m4 +configure +build-aux/ +autom4te.cache/ +googletest/m4/libtool.m4 +googletest/m4/ltoptions.m4 +googletest/m4/ltsugar.m4 +googletest/m4/ltversion.m4 +googletest/m4/lt~obsolete.m4 + +# Ignore generated directories. +googlemock/fused-src/ +googletest/fused-src/ + +# macOS files +.DS_Store + +# Ignore cmake generated directories and files. +CMakeFiles +CTestTestfile.cmake +Makefile +cmake_install.cmake +googlemock/CMakeFiles +googlemock/CTestTestfile.cmake +googlemock/Makefile +googlemock/cmake_install.cmake +googlemock/gtest Added: vendor/google/googletest/dist/.travis.yml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/.travis.yml Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,81 @@ +# Build matrix / environment variable are explained on: +# https://docs.travis-ci.com/user/customizing-the-build/ +# This file can be validated on: +# http://lint.travis-ci.org/ + +sudo: false +language: cpp + +# Define the matrix explicitly, manually expanding the combinations of (os, compiler, env). +# It is more tedious, but grants us far more flexibility. +matrix: + include: + - os: linux + compiler: gcc + sudo : true + install: ./ci/install-linux.sh && ./ci/log-config.sh + script: ./ci/build-linux-bazel.sh + - os: linux + compiler: clang + sudo : true + install: ./ci/install-linux.sh && ./ci/log-config.sh + script: ./ci/build-linux-bazel.sh + - os: linux + group: deprecated-2017Q4 + compiler: gcc + install: ./ci/install-linux.sh && ./ci/log-config.sh + script: ./ci/build-linux-autotools.sh + - os: linux + group: deprecated-2017Q4 + compiler: gcc + env: BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11 + - os: linux + group: deprecated-2017Q4 + compiler: clang + env: BUILD_TYPE=Debug VERBOSE=1 + - os: linux + group: deprecated-2017Q4 + compiler: clang + env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11 + - os: linux + compiler: clang + env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11 NO_EXCEPTION=ON NO_RTTI=ON COMPILER_IS_GNUCXX=ON + - os: osx + compiler: gcc + env: BUILD_TYPE=Debug VERBOSE=1 + - os: osx + compiler: gcc + env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11 + - os: osx + compiler: clang + env: BUILD_TYPE=Debug VERBOSE=1 + if: type != pull_request + - os: osx + env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11 + if: type != pull_request + +# These are the install and build (script) phases for the most common entries in the matrix. They could be included +# in each entry in the matrix, but that is just repetitive. +install: + - ./ci/install-${TRAVIS_OS_NAME}.sh + - . ./ci/env-${TRAVIS_OS_NAME}.sh + - ./ci/log-config.sh + +script: ./ci/travis.sh + +# For sudo=false builds this section installs the necessary dependencies. +addons: + apt: + # List of whitelisted in travis packages for ubuntu-precise can be found here: + # https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise + # List of whitelisted in travis apt-sources: + # https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-precise-3.9 + packages: + - g++-4.9 + - clang-3.9 + +notifications: + email: false Added: vendor/google/googletest/dist/BUILD.bazel ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/BUILD.bazel Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,180 @@ +# Copyright 2017 Google Inc. +# All Rights Reserved. +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * 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. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# Author: misterg@google.com (Gennadiy Civil) +# +# Bazel Build for Google C++ Testing Framework(Google Test) + +package(default_visibility = ["//visibility:public"]) + +licenses(["notice"]) + +config_setting( + name = "windows", + values = {"cpu": "x64_windows"}, +) + +config_setting( + name = "windows_msvc", + values = {"cpu": "x64_windows_msvc"}, +) + +config_setting( + name = "has_absl", + values = {"define": "absl=1"}, +) + +# Google Test including Google Mock +cc_library( + name = "gtest", + srcs = glob( + include = [ + "googletest/src/*.cc", + "googletest/src/*.h", + "googletest/include/gtest/**/*.h", + "googlemock/src/*.cc", + "googlemock/include/gmock/**/*.h", + ], + exclude = [ + "googletest/src/gtest-all.cc", + "googletest/src/gtest_main.cc", + "googlemock/src/gmock-all.cc", + "googlemock/src/gmock_main.cc", + ], + ), + hdrs = glob([ + "googletest/include/gtest/*.h", + "googlemock/include/gmock/*.h", + ]), + copts = select( + { + ":windows": [], + ":windows_msvc": [], + "//conditions:default": ["-pthread"], + }, + ), + defines = select( + { + ":has_absl": [ + "GTEST_HAS_ABSL=1", + ], + "//conditions:default": [], + }, + ), + includes = [ + "googlemock", + "googlemock/include", + "googletest", + "googletest/include", + ], + linkopts = select({ + ":windows": [], + ":windows_msvc": [], + "//conditions:default": [ + "-pthread", + ], + }), + deps = select( + { + ":has_absl": [ + "@com_google_absl//absl/debugging:failure_signal_handler", + "@com_google_absl//absl/debugging:stacktrace", + "@com_google_absl//absl/debugging:symbolize", + "@com_google_absl//absl/strings", + "@com_google_absl//absl/types:optional", + "@com_google_absl//absl/types:variant", + ], + "//conditions:default": [], + }, + ), +) + +cc_library( + name = "gtest_main", + srcs = [ + "googlemock/src/gmock_main.cc", + ], + deps = [":gtest"], +) + +# The following rules build samples of how to use gTest. +cc_library( + name = "gtest_sample_lib", + srcs = [ + "googletest/samples/sample1.cc", + "googletest/samples/sample2.cc", + "googletest/samples/sample4.cc", + ], + hdrs = [ + "googletest/samples/prime_tables.h", + "googletest/samples/sample1.h", + "googletest/samples/sample2.h", + "googletest/samples/sample3-inl.h", + "googletest/samples/sample4.h", + ], +) + +cc_test( + name = "gtest_samples", + size = "small", + #All Samples except: + #sample9 ( main ) + #sample10 (main and takes a command line option and needs to be separate) + srcs = [ + "googletest/samples/sample1_unittest.cc", + "googletest/samples/sample2_unittest.cc", + "googletest/samples/sample3_unittest.cc", + "googletest/samples/sample4_unittest.cc", + "googletest/samples/sample5_unittest.cc", + "googletest/samples/sample6_unittest.cc", + "googletest/samples/sample7_unittest.cc", + "googletest/samples/sample8_unittest.cc", + ], + deps = [ + "gtest_sample_lib", + ":gtest_main", + ], +) + +cc_test( + name = "sample9_unittest", + size = "small", + srcs = ["googletest/samples/sample9_unittest.cc"], + deps = [":gtest"], +) + +cc_test( + name = "sample10_unittest", + size = "small", + srcs = ["googletest/samples/sample10_unittest.cc"], + deps = [ + ":gtest", + ], +) Added: vendor/google/googletest/dist/CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/CMakeLists.txt Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,23 @@ +cmake_minimum_required(VERSION 2.8.8) + +if (POLICY CMP0048) + cmake_policy(SET CMP0048 NEW) +endif (POLICY CMP0048) + +project(googletest-distribution) +set(GOOGLETEST_VERSION 1.9.0) + +enable_testing() + +include(CMakeDependentOption) +include(GNUInstallDirs) + +#Note that googlemock target already builds googletest +option(BUILD_GMOCK "Builds the googlemock subproject" ON) +option(INSTALL_GTEST "Enable installation of googletest. (Projects embedding googletest may want to turn this OFF.)" ON) + +if(BUILD_GMOCK) + add_subdirectory( googlemock ) +else() + add_subdirectory( googletest ) +endif() Added: vendor/google/googletest/dist/CONTRIBUTING.md ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/CONTRIBUTING.md Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,160 @@ +# How to become a contributor and submit your own code + +## Contributor License Agreements + +We'd love to accept your patches! Before we can take them, we +have to jump a couple of legal hurdles. + +Please fill out either the individual or corporate Contributor License Agreement +(CLA). + + * If you are an individual writing original source code and you're sure you + own the intellectual property, then you'll need to sign an + [individual CLA](https://developers.google.com/open-source/cla/individual). + * If you work for a company that wants to allow you to contribute your work, + then you'll need to sign a + [corporate CLA](https://developers.google.com/open-source/cla/corporate). + +Follow either of the two links above to access the appropriate CLA and +instructions for how to sign and return it. Once we receive it, we'll be able to +accept your pull requests. + +## Are you a Googler? +If you are a Googler, you can either create an internal change or work on GitHub directly. + + +## Contributing A Patch + +1. Submit an issue describing your proposed change to the + [issue tracker](https://github.com/google/googletest). +1. Please don't mix more than one logical change per submittal, + because it makes the history hard to follow. If you want to make a + change that doesn't have a corresponding issue in the issue + tracker, please create one. +1. Also, coordinate with team members that are listed on the issue in + question. This ensures that work isn't being duplicated and + communicating your plan early also generally leads to better + patches. +1. If your proposed change is accepted, and you haven't already done so, sign a + Contributor License Agreement (see details above). +1. Fork the desired repo, develop and test your code changes. +1. Ensure that your code adheres to the existing style in the sample to which + you are contributing. +1. Ensure that your code has an appropriate set of unit tests which all pass. +1. Submit a pull request. + +## The Google Test and Google Mock Communities ## + +The Google Test community exists primarily through the +[discussion group](http://groups.google.com/group/googletestframework) +and the GitHub repository. +Likewise, the Google Mock community exists primarily through their own +[discussion group](http://groups.google.com/group/googlemock). +You are definitely encouraged to contribute to the +discussion and you can also help us to keep the effectiveness of the +group high by following and promoting the guidelines listed here. + +### Please Be Friendly ### + +Showing courtesy and respect to others is a vital part of the Google +culture, and we strongly encourage everyone participating in Google +Test development to join us in accepting nothing less. Of course, +being courteous is not the same as failing to constructively disagree +with each other, but it does mean that we should be respectful of each +other when enumerating the 42 technical reasons that a particular +proposal may not be the best choice. There's never a reason to be +antagonistic or dismissive toward anyone who is sincerely trying to +contribute to a discussion. + +Sure, C++ testing is serious business and all that, but it's also +a lot of fun. Let's keep it that way. Let's strive to be one of the +friendliest communities in all of open source. + +As always, discuss Google Test in the official GoogleTest discussion group. +You don't have to actually submit code in order to sign up. Your participation +itself is a valuable contribution. + +## Style + +To keep the source consistent, readable, diffable and easy to merge, +we use a fairly rigid coding style, as defined by the [google-styleguide](https://github.com/google/styleguide) project. All patches will be expected +to conform to the style outlined [here](https://google.github.io/styleguide/cppguide.html). + +## Requirements for Contributors ### + +If you plan to contribute a patch, you need to build Google Test, +Google Mock, and their own tests from a git checkout, which has +further requirements: + + * [Python](https://www.python.org/) v2.3 or newer (for running some of + the tests and re-generating certain source files from templates) + * [CMake](https://cmake.org/) v2.6.4 or newer + * [GNU Build System](https://en.wikipedia.org/wiki/GNU_Build_System) + including automake (>= 1.9), autoconf (>= 2.59), and + libtool / libtoolize. + +## Developing Google Test ## + +This section discusses how to make your own changes to Google Test. + +### Testing Google Test Itself ### + +To make sure your changes work as intended and don't break existing +functionality, you'll want to compile and run Google Test's own tests. +For that you can use CMake: + + mkdir mybuild + cd mybuild + cmake -Dgtest_build_tests=ON ${GTEST_DIR} + +Make sure you have Python installed, as some of Google Test's tests +are written in Python. If the cmake command complains about not being +able to find Python (`Could NOT find PythonInterp (missing: +PYTHON_EXECUTABLE)`), try telling it explicitly where your Python +executable can be found: + + cmake -DPYTHON_EXECUTABLE=path/to/python -Dgtest_build_tests=ON ${GTEST_DIR} + +Next, you can build Google Test and all of its own tests. On \*nix, +this is usually done by 'make'. To run the tests, do + + make test + +All tests should pass. + +### Regenerating Source Files ## + +Some of Google Test's source files are generated from templates (not +in the C++ sense) using a script. +For example, the +file include/gtest/internal/gtest-type-util.h.pump is used to generate +gtest-type-util.h in the same directory. + +You don't need to worry about regenerating the source files +unless you need to modify them. You would then modify the +corresponding `.pump` files and run the '[pump.py](googletest/scripts/pump.py)' +generator script. See the [Pump Manual](googletest/docs/PumpManual.md). + +## Developing Google Mock ### + +This section discusses how to make your own changes to Google Mock. + +#### Testing Google Mock Itself #### + +To make sure your changes work as intended and don't break existing +functionality, you'll want to compile and run Google Test's own tests. +For that you'll need Autotools. First, make sure you have followed +the instructions above to configure Google Mock. +Then, create a build output directory and enter it. Next, + + ${GMOCK_DIR}/configure # try --help for more info + +Once you have successfully configured Google Mock, the build steps are +standard for GNU-style OSS packages. + + make # Standard makefile following GNU conventions + make check # Builds and runs all tests - all should pass. + +Note that when building your project against Google Mock, you are building +against Google Test as well. There is no need to configure Google Test +separately. Added: vendor/google/googletest/dist/LICENSE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/LICENSE Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,28 @@ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * 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. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Added: vendor/google/googletest/dist/Makefile.am ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/Makefile.am Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,14 @@ +## Process this file with automake to produce Makefile.in +ACLOCAL_AMFLAGS = -I m4 + +AUTOMAKE_OPTIONS = foreign + +# Build . before src so that our all-local and clean-local hooks kicks in at +# the right time. +SUBDIRS = googletest googlemock + +EXTRA_DIST = \ + BUILD.bazel \ + CMakeLists.txt \ + README.md \ + WORKSPACE Added: vendor/google/googletest/dist/README.md ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/README.md Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,130 @@ + +# Google Test # + +[![Build Status](https://travis-ci.org/google/googletest.svg?branch=master)](https://travis-ci.org/google/googletest) +[![Build status](https://ci.appveyor.com/api/projects/status/4o38plt0xbo1ubc8/branch/master?svg=true)](https://ci.appveyor.com/project/GoogleTestAppVeyor/googletest/branch/master) + +**Future Plans**: +* 1.8.x Release - the 1.8.x will be the last release that works with pre-C++11 compilers. The 1.8.x will not accept any requests for any new features and any bugfix requests will only be accepted if proven "critical" +* Post 1.8.x - work to improve/cleanup/pay technical debt. When this work is completed there will be a 1.9.x tagged release +* Post 1.9.x googletest will follow [Abseil Live at Head philosophy](https://abseil.io/about/philosophy) + + +Welcome to **Google Test**, Google's C++ test framework! + +This repository is a merger of the formerly separate GoogleTest and +GoogleMock projects. These were so closely related that it makes sense to +maintain and release them together. + +Please see the project page above for more information as well as the +mailing list for questions, discussions, and development. There is +also an IRC channel on [OFTC](https://webchat.oftc.net/) (irc.oftc.net) #gtest available. Please +join us! + +Getting started information for **Google Test** is available in the +[Google Test Primer](googletest/docs/primer.md) documentation. + +**Google Mock** is an extension to Google Test for writing and using C++ mock +classes. See the separate [Google Mock documentation](googlemock/README.md). + +More detailed documentation for googletest (including build instructions) are +in its interior [googletest/README.md](googletest/README.md) file. + +## Features ## + + * An [xUnit](https://en.wikipedia.org/wiki/XUnit) test framework. + * Test discovery. + * A rich set of assertions. + * User-defined assertions. + * Death tests. + * Fatal and non-fatal failures. + * Value-parameterized tests. + * Type-parameterized tests. + * Various options for running the tests. + * XML test report generation. + +## Platforms ## + +Google test has been used on a variety of platforms: + + * Linux + * Mac OS X + * Windows + * Cygwin + * MinGW + * Windows Mobile + * Symbian + +## Who Is Using Google Test? ## + +In addition to many internal projects at Google, Google Test is also used by +the following notable projects: + + * The [Chromium projects](http://www.chromium.org/) (behind the Chrome + browser and Chrome OS). + * The [LLVM](http://llvm.org/) compiler. + * [Protocol Buffers](https://github.com/google/protobuf), Google's data + interchange format. + * The [OpenCV](http://opencv.org/) computer vision library. + * [tiny-dnn](https://github.com/tiny-dnn/tiny-dnn): header only, dependency-free deep learning framework in C++11. + +## Related Open Source Projects ## + +[GTest Runner](https://github.com/nholthaus/gtest-runner) is a Qt5 based automated test-runner and Graphical User Interface with powerful features for Windows and Linux platforms. + +[Google Test UI](https://github.com/ospector/gtest-gbar) is test runner that runs +your test binary, allows you to track its progress via a progress bar, and +displays a list of test failures. Clicking on one shows failure text. Google +Test UI is written in C#. + +[GTest TAP Listener](https://github.com/kinow/gtest-tap-listener) is an event +listener for Google Test that implements the +[TAP protocol](https://en.wikipedia.org/wiki/Test_Anything_Protocol) for test +result output. If your test runner understands TAP, you may find it useful. + +[gtest-parallel](https://github.com/google/gtest-parallel) is a test runner that +runs tests from your binary in parallel to provide significant speed-up. + +[GoogleTest Adapter](https://marketplace.visualstudio.com/items?itemName=DavidSchuldenfrei.gtest-adapter) is a VS Code extension allowing to view Google Tests in a tree view, and run/debug your tests. + +## Requirements ## + +Google Test is designed to have fairly minimal requirements to build +and use with your projects, but there are some. Currently, we support +Linux, Windows, Mac OS X, and Cygwin. We will also make our best +effort to support other platforms (e.g. Solaris, AIX, and z/OS). +However, since core members of the Google Test project have no access +to these platforms, Google Test may have outstanding issues there. If +you notice any problems on your platform, please notify +[googletestframework@googlegroups.com](https://groups.google.com/forum/#!forum/googletestframework). Patches for fixing them are +even more welcome! + +### Linux Requirements ### + +These are the base requirements to build and use Google Test from a source +package (as described below): + + * GNU-compatible Make or gmake + * POSIX-standard shell + * POSIX(-2) Regular Expressions (regex.h) + * A C++98-standard-compliant compiler + +### Windows Requirements ### + + * Microsoft Visual C++ 2015 or newer + +### Cygwin Requirements ### + + * Cygwin v1.5.25-14 or newer + +### Mac OS X Requirements ### + + * Mac OS X v10.4 Tiger or newer + * Xcode Developer Tools + +## Contributing change + +Please read the [`CONTRIBUTING.md`](CONTRIBUTING.md) for details on +how to contribute to this project. + +Happy testing! Added: vendor/google/googletest/dist/WORKSPACE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/WORKSPACE Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,8 @@ +workspace(name = "com_google_googletest") + +# Abseil +http_archive( + name = "com_google_absl", + urls = ["https://github.com/abseil/abseil-cpp/archive/master.zip"], + strip_prefix = "abseil-cpp-master", +) Added: vendor/google/googletest/dist/appveyor.yml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/appveyor.yml Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,104 @@ +version: '{build}' + +os: Visual Studio 2015 + +environment: + matrix: + - compiler: msvc-15-seh + generator: "Visual Studio 15 2017" + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + + - compiler: msvc-15-seh + generator: "Visual Studio 15 2017 Win64" + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + enabled_on_pr: yes + + - compiler: msvc-14-seh + generator: "Visual Studio 14 2015" + enabled_on_pr: yes + + - compiler: msvc-14-seh + generator: "Visual Studio 14 2015 Win64" + + - compiler: gcc-5.3.0-posix + generator: "MinGW Makefiles" + cxx_path: 'C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin' + + - compiler: gcc-6.3.0-posix + generator: "MinGW Makefiles" + cxx_path: 'C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin' + +configuration: + - Debug + +build: + verbosity: minimal + +install: +- ps: | + Write-Output "Compiler: $env:compiler" + Write-Output "Generator: $env:generator" + if (-not (Test-Path env:APPVEYOR_PULL_REQUEST_NUMBER)) { + Write-Output "This is *NOT* a pull request build" + } else { + Write-Output "This is a pull request build" + if (-not (Test-Path env:enabled_on_pr) -or $env:enabled_on_pr -ne "yes") { + Write-Output "PR builds are *NOT* explicitly enabled" + } + } + + # git bash conflicts with MinGW makefiles + if ($env:generator -eq "MinGW Makefiles") { + $env:path = $env:path.replace("C:\Program Files\Git\usr\bin;", "") + if ($env:cxx_path -ne "") { + $env:path += ";$env:cxx_path" + } + } + +build_script: +- ps: | + # Only enable some builds for pull requests, the AppVeyor queue is too long. + if ((Test-Path env:APPVEYOR_PULL_REQUEST_NUMBER) -And (-not (Test-Path env:enabled_on_pr) -or $env:enabled_on_pr -ne "yes")) { + return + } + md _build -Force | Out-Null + cd _build + + $conf = if ($env:generator -eq "MinGW Makefiles") {"-DCMAKE_BUILD_TYPE=$env:configuration"} else {"-DCMAKE_CONFIGURATION_TYPES=Debug;Release"} + # Disable test for MinGW (gtest tests fail, gmock tests can not build) + $gtest_build_tests = if ($env:generator -eq "MinGW Makefiles") {"-Dgtest_build_tests=OFF"} else {"-Dgtest_build_tests=ON"} + $gmock_build_tests = if ($env:generator -eq "MinGW Makefiles") {"-Dgmock_build_tests=OFF"} else {"-Dgmock_build_tests=ON"} + & cmake -G "$env:generator" $conf -Dgtest_build_samples=ON $gtest_build_tests $gmock_build_tests .. + if ($LastExitCode -ne 0) { + throw "Exec: $ErrorMessage" + } + $cmake_parallel = if ($env:generator -eq "MinGW Makefiles") {"-j2"} else {"/m"} + & cmake --build . --config $env:configuration -- $cmake_parallel + if ($LastExitCode -ne 0) { + throw "Exec: $ErrorMessage" + } + + +skip_commits: + files: + - '**/*.md' + +test_script: +- ps: | + # Only enable some builds for pull requests, the AppVeyor queue is too long. + if ((Test-Path env:APPVEYOR_PULL_REQUEST_NUMBER) -And (-not (Test-Path env:enabled_on_pr) -or $env:enabled_on_pr -ne "yes")) { + return + } + if ($env:generator -eq "MinGW Makefiles") { + return # No test available for MinGW + } + & ctest -C $env:configuration --timeout 600 --output-on-failure + if ($LastExitCode -ne 0) { + throw "Exec: $ErrorMessage" + } + +artifacts: + - path: '_build/CMakeFiles/*.log' + name: logs + - path: '_build/Testing/**/*.xml' + name: test_results Added: vendor/google/googletest/dist/ci/build-linux-autotools.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/ci/build-linux-autotools.sh Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,44 @@ +#!/usr/bin/env bash +# Copyright 2017 Google Inc. +# All Rights Reserved. +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * 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. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +set -e + +. ci/get-nprocessors.sh + +# Create the configuration script +autoreconf -i + +# Run in a subdirectory to keep the sources clean +mkdir build || true +cd build +../configure + +make -j ${NPROCESSORS:-2} Added: vendor/google/googletest/dist/ci/build-linux-bazel.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/ci/build-linux-bazel.sh Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,36 @@ +#!/usr/bin/env bash +# Copyright 2017 Google Inc. +# All Rights Reserved. +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * 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. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +set -e + +bazel build --curses=no //...:all +bazel test --curses=no //...:all +bazel test --curses=no //...:all --define absl=1 Added: vendor/google/googletest/dist/ci/env-linux.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/ci/env-linux.sh Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,41 @@ +#!/usr/bin/env bash +# Copyright 2017 Google Inc. +# All Rights Reserved. +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * 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. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# +# This file should be sourced, and not executed as a standalone script. +# + +# TODO() - we can check if this is being sourced using $BASH_VERSION and $BASH_SOURCE[0] != ${0}. + +if [ "${TRAVIS_OS_NAME}" = "linux" ]; then + if [ "$CXX" = "g++" ]; then export CXX="g++-4.9" CC="gcc-4.9"; fi + if [ "$CXX" = "clang++" ]; then export CXX="clang++-3.9" CC="clang-3.9"; fi +fi Added: vendor/google/googletest/dist/ci/env-osx.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/ci/env-osx.sh Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# Copyright 2017 Google Inc. +# All Rights Reserved. +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * 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. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# +# This file should be sourced, and not executed as a standalone script. +# + +# TODO() - we can check if this is being sourced using $BASH_VERSION and $BASH_SOURCE[0] != ${0}. + +if [ "${TRAVIS_OS_NAME}" = "linux" ]; then + if [ "$CXX" = "clang++" ]; then export CXX="clang++-3.9" CC="clang-3.9"; fi +fi Added: vendor/google/googletest/dist/ci/get-nprocessors.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/google/googletest/dist/ci/get-nprocessors.sh Wed Feb 13 02:16:52 2019 (r344078) @@ -0,0 +1,48 @@ +#!/usr/bin/env bash +# Copyright 2017 Google Inc. +# All Rights Reserved. +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Wed Feb 13 02:21:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DA5E414E0585; Wed, 13 Feb 2019 02:21:46 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 74EC66BA90; Wed, 13 Feb 2019 02:21:46 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4995020C4F; Wed, 13 Feb 2019 02:21:46 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D2LkXj050457; Wed, 13 Feb 2019 02:21:46 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D2Lkw4050456; Wed, 13 Feb 2019 02:21:46 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902130221.x1D2Lkw4050456@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Wed, 13 Feb 2019 02:21:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344079 - vendor/google/googletest/1.8.1 X-SVN-Group: vendor X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: vendor/google/googletest/1.8.1 X-SVN-Commit-Revision: 344079 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 74EC66BA90 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.94)[-0.936,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 02:21:47 -0000 Author: ngie Date: Wed Feb 13 02:21:45 2019 New Revision: 344079 URL: https://svnweb.freebsd.org/changeset/base/344079 Log: Copy ^/vendor/google/googletest/dist to ^/vendor/google/googletest/1.8.1 Approved by: emaste (mentor, implicit) Added: vendor/google/googletest/1.8.1/ - copied from r344078, vendor/google/googletest/dist/ From owner-svn-src-all@freebsd.org Wed Feb 13 02:24:31 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 37E6F14E072B; Wed, 13 Feb 2019 02:24:31 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CE39D6BD56; Wed, 13 Feb 2019 02:24:30 +0000 (UTC) (envelope-from ngie@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B541920DA3; Wed, 13 Feb 2019 02:24:30 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D2OUNO054325; Wed, 13 Feb 2019 02:24:30 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D2OUpL054324; Wed, 13 Feb 2019 02:24:30 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201902130224.x1D2OUpL054324@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Wed, 13 Feb 2019 02:24:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r344080 - svnadmin/conf X-SVN-Group: svnadmin X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: svnadmin/conf X-SVN-Commit-Revision: 344080 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: CE39D6BD56 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.94)[-0.936,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 02:24:31 -0000 Author: ngie Date: Wed Feb 13 02:24:30 2019 New Revision: 344080 URL: https://svnweb.freebsd.org/changeset/base/344080 Log: Reinforce my size limit again post-r34407[89] Approved by: emaste (mentor, implicit) Modified: svnadmin/conf/sizelimit.conf Modified: svnadmin/conf/sizelimit.conf ============================================================================== --- svnadmin/conf/sizelimit.conf Wed Feb 13 02:21:45 2019 (r344079) +++ svnadmin/conf/sizelimit.conf Wed Feb 13 02:24:30 2019 (r344080) @@ -23,7 +23,6 @@ jb jeff jkim mm -ngie np obrien peter From owner-svn-src-all@freebsd.org Wed Feb 13 03:11:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ACB4D14E1969; Wed, 13 Feb 2019 03:11:13 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 54A306E09A; Wed, 13 Feb 2019 03:11:13 +0000 (UTC) (envelope-from jhibbits@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4673B214FD; Wed, 13 Feb 2019 03:11:13 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D3BDI5076598; Wed, 13 Feb 2019 03:11:13 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D3BDNr076593; Wed, 13 Feb 2019 03:11:13 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201902130311.x1D3BDNr076593@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Wed, 13 Feb 2019 03:11:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344083 - head/sys/powerpc/booke X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/powerpc/booke X-SVN-Commit-Revision: 344083 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 54A306E09A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 03:11:13 -0000 Author: jhibbits Date: Wed Feb 13 03:11:12 2019 New Revision: 344083 URL: https://svnweb.freebsd.org/changeset/base/344083 Log: powerpc/booke: Use the 'tlbilx' instruction on newer cores Newer cores have the 'tlbilx' instruction, which doesn't broadcast over CoreNet. This is significantly faster than walking the TLB to invalidate the PID mappings. tlbilx with the arguments given takes 131 clock cycles to complete, as opposed to 512 iterations through the loop plus tlbre/tlbwe at each iteration. MFC after: 3 weeks Modified: head/sys/powerpc/booke/pmap.c Modified: head/sys/powerpc/booke/pmap.c ============================================================================== --- head/sys/powerpc/booke/pmap.c Wed Feb 13 02:46:46 2019 (r344082) +++ head/sys/powerpc/booke/pmap.c Wed Feb 13 03:11:12 2019 (r344083) @@ -4325,6 +4325,21 @@ tid_flush(tlbtid_t tid) msr = mfmsr(); __asm __volatile("wrteei 0"); + /* + * Newer (e500mc and later) have tlbilx, which doesn't broadcast, so use + * it for PID invalidation. + */ + switch ((mfpvr() >> 16) & 0xffff) { + case FSL_E500mc: + case FSL_E5500: + case FSL_E6500: + mtspr(SPR_MAS6, tid << MAS6_SPID0_SHIFT); + /* tlbilxpid */ + __asm __volatile("isync; .long 0x7c000024; isync; msync"); + mtmsr(msr); + return; + } + for (way = 0; way < TLB0_WAYS; way++) for (entry = 0; entry < TLB0_ENTRIES_PER_WAY; entry++) { From owner-svn-src-all@freebsd.org Wed Feb 13 04:19:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5928314E2E0C; Wed, 13 Feb 2019 04:19:10 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E49546FA5E; Wed, 13 Feb 2019 04:19:09 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CF448220B8; Wed, 13 Feb 2019 04:19:09 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D4J9tX012815; Wed, 13 Feb 2019 04:19:09 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D4J9VA012812; Wed, 13 Feb 2019 04:19:09 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902130419.x1D4J9VA012812@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Wed, 13 Feb 2019 04:19:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344084 - head/lib/libbe X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/lib/libbe X-SVN-Commit-Revision: 344084 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E49546FA5E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 04:19:10 -0000 Author: kevans Date: Wed Feb 13 04:19:08 2019 New Revision: 344084 URL: https://svnweb.freebsd.org/changeset/base/344084 Log: libbe(3): Fix be_destroy behavior w.r.t. deep BE snapshots and -o be_destroy is documented to recursively destroy a boot environment. In the case of snapshots, one would take this to mean that these are also recursively destroyed. However, this was previously not the case. be_destroy would descend into the be_destroy callback and attempt to zfs_iter_children on the top-level snapshot, which is bogus. Our alternative approach is to take note of the snapshot name and iterate through all of fs children of the BE to try destruction in the children. The -o option is also fixed to work properly with deep BEs. If the BE was created with `bectl create -e otherDeepBE newDeepBE`, for instance, then a recursive snapshot of otherDeepBE would have been taken for construction of newDeepBE but a subsequent destroy with BE_DESTROY_ORIGIN set would only clean up the snapshot at the root of otherDeepBE: ${BEROOT}/otherDeepBE@... The most recent iteration instead pretends not to know how these things work, verifies that the origin is another BE and then passes that back through be_destroy to DTRT when snapshots and deep BEs may be in play. MFC after: 1 week Modified: head/lib/libbe/be.c head/lib/libbe/be.h head/lib/libbe/be_error.c head/lib/libbe/libbe.3 Modified: head/lib/libbe/be.c ============================================================================== --- head/lib/libbe/be.c Wed Feb 13 03:11:12 2019 (r344083) +++ head/lib/libbe/be.c Wed Feb 13 04:19:08 2019 (r344084) @@ -45,6 +45,11 @@ __FBSDID("$FreeBSD$"); #include "be.h" #include "be_impl.h" +struct be_destroy_data { + libbe_handle_t *lbh; + char *snapname; +}; + #if SOON static int be_create_child_noent(libbe_handle_t *lbh, const char *active, const char *child_path); @@ -186,12 +191,38 @@ be_nicenum(uint64_t num, char *buf, size_t buflen) static int be_destroy_cb(zfs_handle_t *zfs_hdl, void *data) { + char path[BE_MAXPATHLEN]; + struct be_destroy_data *bdd; + zfs_handle_t *snap; int err; - if ((err = zfs_iter_children(zfs_hdl, be_destroy_cb, data)) != 0) + bdd = (struct be_destroy_data *)data; + if (bdd->snapname == NULL) { + err = zfs_iter_children(zfs_hdl, be_destroy_cb, data); + if (err != 0) + return (err); + return (zfs_destroy(zfs_hdl, false)); + } + /* If we're dealing with snapshots instead, delete that one alone */ + err = zfs_iter_filesystems(zfs_hdl, be_destroy_cb, data); + if (err != 0) return (err); - if ((err = zfs_destroy(zfs_hdl, false)) != 0) - return (err); + /* + * This part is intentionally glossing over any potential errors, + * because there's a lot less potential for errors when we're cleaning + * up snapshots rather than a full deep BE. The primary error case + * here being if the snapshot doesn't exist in the first place, which + * the caller will likely deem insignificant as long as it doesn't + * exist after the call. Thus, such a missing snapshot shouldn't jam + * up the destruction. + */ + snprintf(path, sizeof(path), "%s@%s", zfs_get_name(zfs_hdl), + bdd->snapname); + if (!zfs_dataset_exists(bdd->lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) + return (0); + snap = zfs_open(bdd->lbh->lzh, path, ZFS_TYPE_SNAPSHOT); + if (snap != NULL) + zfs_destroy(snap, false); return (0); } @@ -199,22 +230,26 @@ be_destroy_cb(zfs_handle_t *zfs_hdl, void *data) * Destroy the boot environment or snapshot specified by the name * parameter. Options are or'd together with the possible values: * BE_DESTROY_FORCE : forces operation on mounted datasets + * BE_DESTROY_ORIGIN: destroy the origin snapshot as well */ int be_destroy(libbe_handle_t *lbh, const char *name, int options) { + struct be_destroy_data bdd; char origin[BE_MAXPATHLEN], path[BE_MAXPATHLEN]; zfs_handle_t *fs; - char *p; + char *snapdelim; int err, force, mounted; + size_t rootlen; - p = path; + bdd.lbh = lbh; + bdd.snapname = NULL; force = options & BE_DESTROY_FORCE; *origin = '\0'; be_root_concat(lbh, name, path); - if (strchr(name, '@') == NULL) { + if ((snapdelim = strchr(path, '@')) == NULL) { if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_FILESYSTEM)) return (set_error(lbh, BE_ERR_NOENT)); @@ -222,9 +257,10 @@ be_destroy(libbe_handle_t *lbh, const char *name, int strcmp(path, lbh->bootfs) == 0) return (set_error(lbh, BE_ERR_DESTROYACT)); - fs = zfs_open(lbh->lzh, p, ZFS_TYPE_FILESYSTEM); + fs = zfs_open(lbh->lzh, path, ZFS_TYPE_FILESYSTEM); if (fs == NULL) return (set_error(lbh, BE_ERR_ZFSOPEN)); + if ((options & BE_DESTROY_ORIGIN) != 0 && zfs_prop_get(fs, ZFS_PROP_ORIGIN, origin, sizeof(origin), NULL, NULL, 0, 1) != 0) @@ -233,40 +269,56 @@ be_destroy(libbe_handle_t *lbh, const char *name, int if (!zfs_dataset_exists(lbh->lzh, path, ZFS_TYPE_SNAPSHOT)) return (set_error(lbh, BE_ERR_NOENT)); - fs = zfs_open(lbh->lzh, p, ZFS_TYPE_SNAPSHOT); - if (fs == NULL) + bdd.snapname = strdup(snapdelim + 1); + if (bdd.snapname == NULL) + return (set_error(lbh, BE_ERR_NOMEM)); + *snapdelim = '\0'; + fs = zfs_open(lbh->lzh, path, ZFS_TYPE_DATASET); + if (fs == NULL) { + free(bdd.snapname); return (set_error(lbh, BE_ERR_ZFSOPEN)); + } } /* Check if mounted, unmount if force is specified */ if ((mounted = zfs_is_mounted(fs, NULL)) != 0) { - if (force) + if (force) { zfs_unmount(fs, NULL, 0); - else + } else { + free(bdd.snapname); return (set_error(lbh, BE_ERR_DESTROYMNT)); + } } - if ((err = be_destroy_cb(fs, NULL)) != 0) { + err = be_destroy_cb(fs, &bdd); + zfs_close(fs); + free(bdd.snapname); + if (err != 0) { /* Children are still present or the mount is referenced */ if (err == EBUSY) return (set_error(lbh, BE_ERR_DESTROYMNT)); return (set_error(lbh, BE_ERR_UNKNOWN)); } - if (*origin != '\0') { - fs = zfs_open(lbh->lzh, origin, ZFS_TYPE_SNAPSHOT); - if (fs == NULL) - return (set_error(lbh, BE_ERR_ZFSOPEN)); - err = zfs_destroy(fs, false); - if (err == EBUSY) - return (set_error(lbh, BE_ERR_DESTROYMNT)); - else if (err != 0) - return (set_error(lbh, BE_ERR_UNKNOWN)); - } + if ((options & BE_DESTROY_ORIGIN) == 0) + return (0); - return (0); -} + /* The origin can't possibly be shorter than the BE root */ + rootlen = strlen(lbh->root); + if (*origin == '\0' || strlen(origin) <= rootlen + 1) + return (set_error(lbh, BE_ERR_INVORIGIN)); + /* + * We'll be chopping off the BE root and running this back through + * be_destroy, so that we properly handle the origin snapshot whether + * it be that of a deep BE or not. + */ + if (strncmp(origin, lbh->root, rootlen) != 0 || origin[rootlen] != '/') + return (0); + + return (be_destroy(lbh, origin + rootlen + 1, + options & ~BE_DESTROY_ORIGIN)); +} int be_snapshot(libbe_handle_t *lbh, const char *source, const char *snap_name, Modified: head/lib/libbe/be.h ============================================================================== --- head/lib/libbe/be.h Wed Feb 13 03:11:12 2019 (r344083) +++ head/lib/libbe/be.h Wed Feb 13 04:19:08 2019 (r344084) @@ -59,6 +59,7 @@ typedef enum be_error { BE_ERR_NOPOOL, /* operation not supported on this pool */ BE_ERR_NOMEM, /* insufficient memory */ BE_ERR_UNKNOWN, /* unknown error */ + BE_ERR_INVORIGIN, /* invalid origin */ } be_error_t; Modified: head/lib/libbe/be_error.c ============================================================================== --- head/lib/libbe/be_error.c Wed Feb 13 03:11:12 2019 (r344083) +++ head/lib/libbe/be_error.c Wed Feb 13 04:19:08 2019 (r344084) @@ -105,6 +105,9 @@ libbe_error_description(libbe_handle_t *lbh) case BE_ERR_UNKNOWN: return ("unknown error"); + case BE_ERR_INVORIGIN: + return ("invalid origin"); + default: assert(lbh->error == BE_ERR_SUCCESS); return ("no error"); Modified: head/lib/libbe/libbe.3 ============================================================================== --- head/lib/libbe/libbe.3 Wed Feb 13 03:11:12 2019 (r344083) +++ head/lib/libbe/libbe.3 Wed Feb 13 04:19:08 2019 (r344084) @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 11, 2019 +.Dd February 12, 2019 .Dt LIBBE 3 .Os .Sh NAME @@ -489,6 +489,8 @@ BE_ERR_NOPOOL BE_ERR_NOMEM .It BE_ERR_UNKNOWN +.It +BE_ERR_INVORIGIN .El .Sh SEE ALSO .Xr bectl 8 From owner-svn-src-all@freebsd.org Wed Feb 13 04:52:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8DA2B14E3903; Wed, 13 Feb 2019 04:52:02 +0000 (UTC) (envelope-from obrien@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 559E370781; Wed, 13 Feb 2019 04:52:02 +0000 (UTC) (envelope-from obrien@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 467F822735; Wed, 13 Feb 2019 04:52:02 +0000 (UTC) (envelope-from obrien@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D4q2UP033204; Wed, 13 Feb 2019 04:52:02 GMT (envelope-from obrien@FreeBSD.org) Received: (from obrien@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D4q2YN033203; Wed, 13 Feb 2019 04:52:02 GMT (envelope-from obrien@FreeBSD.org) Message-Id: <201902130452.x1D4q2YN033203@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: obrien set sender to obrien@FreeBSD.org using -f From: "David E. O'Brien" Date: Wed, 13 Feb 2019 04:52:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344085 - head/lib/libc/gen X-SVN-Group: head X-SVN-Commit-Author: obrien X-SVN-Commit-Paths: head/lib/libc/gen X-SVN-Commit-Revision: 344085 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 559E370781 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 04:52:02 -0000 Author: obrien Date: Wed Feb 13 04:52:01 2019 New Revision: 344085 URL: https://svnweb.freebsd.org/changeset/base/344085 Log: Note that readpassphrase() came into FreeBSD's libc at 4.6. Modified: head/lib/libc/gen/readpassphrase.3 Modified: head/lib/libc/gen/readpassphrase.3 ============================================================================== --- head/lib/libc/gen/readpassphrase.3 Wed Feb 13 04:19:08 2019 (r344084) +++ head/lib/libc/gen/readpassphrase.3 Wed Feb 13 04:52:01 2019 (r344085) @@ -178,4 +178,6 @@ extension and should not be used if portability is des The .Fn readpassphrase function first appeared in +.Fx 4.6 +and .Ox 2.9 . From owner-svn-src-all@freebsd.org Wed Feb 13 07:35:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4610C14E6C10; Wed, 13 Feb 2019 07:35:19 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DFFB4757CA; Wed, 13 Feb 2019 07:35:18 +0000 (UTC) (envelope-from mm@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CFD7F24222; Wed, 13 Feb 2019 07:35:18 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D7ZI9Z017845; Wed, 13 Feb 2019 07:35:18 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D7ZItR017844; Wed, 13 Feb 2019 07:35:18 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201902130735.x1D7ZItR017844@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Wed, 13 Feb 2019 07:35:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344088 - vendor/libarchive/dist/libarchive X-SVN-Group: vendor X-SVN-Commit-Author: mm X-SVN-Commit-Paths: vendor/libarchive/dist/libarchive X-SVN-Commit-Revision: 344088 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DFFB4757CA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 07:35:19 -0000 Author: mm Date: Wed Feb 13 07:35:18 2019 New Revision: 344088 URL: https://svnweb.freebsd.org/changeset/base/344088 Log: Update vendor/libarchive/dist to git 3532bc32819b14bfd8a3a5e3d3554ce14d939940 archive_read_disk_posix.c: initialize delayed_errno Modified: vendor/libarchive/dist/libarchive/archive_read_disk_posix.c Modified: vendor/libarchive/dist/libarchive/archive_read_disk_posix.c ============================================================================== --- vendor/libarchive/dist/libarchive/archive_read_disk_posix.c Wed Feb 13 05:41:04 2019 (r344087) +++ vendor/libarchive/dist/libarchive/archive_read_disk_posix.c Wed Feb 13 07:35:18 2019 (r344088) @@ -860,6 +860,7 @@ next_entry(struct archive_read_disk *a, struct tree *t struct archive_string delayed_str; delayed = ARCHIVE_OK; + delayed_errno = 0; archive_string_init(&delayed_str); st = NULL; From owner-svn-src-all@freebsd.org Wed Feb 13 07:37:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 99F1614E6CDB; Wed, 13 Feb 2019 07:37:34 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3AA0E75945; Wed, 13 Feb 2019 07:37:34 +0000 (UTC) (envelope-from mm@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2F15624226; Wed, 13 Feb 2019 07:37:34 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D7bY8R018005; Wed, 13 Feb 2019 07:37:34 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D7bYS1018004; Wed, 13 Feb 2019 07:37:34 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201902130737.x1D7bYS1018004@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Wed, 13 Feb 2019 07:37:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344089 - head/contrib/libarchive/libarchive X-SVN-Group: head X-SVN-Commit-Author: mm X-SVN-Commit-Paths: head/contrib/libarchive/libarchive X-SVN-Commit-Revision: 344089 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3AA0E75945 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 07:37:34 -0000 Author: mm Date: Wed Feb 13 07:37:33 2019 New Revision: 344089 URL: https://svnweb.freebsd.org/changeset/base/344089 Log: MFV r344088 (libarchive): archive_read_disk_posix.c: initialize delayed_errno MFC after: 2 weeks Modified: head/contrib/libarchive/libarchive/archive_read_disk_posix.c Directory Properties: head/contrib/libarchive/ (props changed) Modified: head/contrib/libarchive/libarchive/archive_read_disk_posix.c ============================================================================== --- head/contrib/libarchive/libarchive/archive_read_disk_posix.c Wed Feb 13 07:35:18 2019 (r344088) +++ head/contrib/libarchive/libarchive/archive_read_disk_posix.c Wed Feb 13 07:37:33 2019 (r344089) @@ -860,6 +860,7 @@ next_entry(struct archive_read_disk *a, struct tree *t struct archive_string delayed_str; delayed = ARCHIVE_OK; + delayed_errno = 0; archive_string_init(&delayed_str); st = NULL; From owner-svn-src-all@freebsd.org Wed Feb 13 09:03:25 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C1BF614E88F5; Wed, 13 Feb 2019 09:03:25 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6171B800C2; Wed, 13 Feb 2019 09:03:25 +0000 (UTC) (envelope-from vmaffione@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BA3322512C; Wed, 13 Feb 2019 09:03:24 +0000 (UTC) (envelope-from vmaffione@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D93O0I064568; Wed, 13 Feb 2019 09:03:24 GMT (envelope-from vmaffione@FreeBSD.org) Received: (from vmaffione@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D93Oia064565; Wed, 13 Feb 2019 09:03:24 GMT (envelope-from vmaffione@FreeBSD.org) Message-Id: <201902130903.x1D93Oia064565@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: vmaffione set sender to vmaffione@FreeBSD.org using -f From: Vincenzo Maffione Date: Wed, 13 Feb 2019 09:03:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344090 - stable/12/sys/dev/netmap X-SVN-Group: stable-12 X-SVN-Commit-Author: vmaffione X-SVN-Commit-Paths: stable/12/sys/dev/netmap X-SVN-Commit-Revision: 344090 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6171B800C2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.94)[-0.936,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 09:03:26 -0000 Author: vmaffione Date: Wed Feb 13 09:03:23 2019 New Revision: 344090 URL: https://svnweb.freebsd.org/changeset/base/344090 Log: MFC r343579 netmap: fix lock order reversal related to kqueue usage When using poll(), select() or kevent() on netmap file descriptors, netmap executes the equivalent of NIOCTXSYNC and NIOCRXSYNC commands, before collecting the events that are ready. In other words, the poll/kevent callback has side effects. This is done to avoid the overhead of two system call per iteration (e.g., poll() + ioctl(NIOC*XSYNC)). When the kqueue subsystem invokes the kqueue(9) f_event callback (netmap_knrw), it holds the lock of the struct knlist object associated to the netmap port (the lock is provided at initialization, by calling knlist_init_mtx). However, netmap_knrw() may need to wake up another netmap port (or even the same one), which means that it may need to call knote(). Since knote() needs the lock of the struct knlist object associated to the to-be-wake-up netmap port, it is possible to have a lock order reversal problem (AB/BA deadlock). This change prevents the deadlock by executing the knote() call in a per-selinfo taskqueue, where it is possible to hold a mutex. Reviewed by: aleksandr.fedorov_itglobal.com Differential Revision: https://reviews.freebsd.org/D18956 Modified: stable/12/sys/dev/netmap/netmap.c stable/12/sys/dev/netmap/netmap_freebsd.c stable/12/sys/dev/netmap/netmap_kern.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/netmap/netmap.c ============================================================================== --- stable/12/sys/dev/netmap/netmap.c Wed Feb 13 07:37:33 2019 (r344089) +++ stable/12/sys/dev/netmap/netmap.c Wed Feb 13 09:03:23 2019 (r344090) @@ -830,6 +830,7 @@ netmap_krings_create(struct netmap_adapter *na, u_int struct netmap_kring *kring; u_int n[NR_TXRX]; enum txrx t; + int err = 0; if (na->tx_rings != NULL) { if (netmap_debug & NM_DEBUG_ON) @@ -869,7 +870,6 @@ netmap_krings_create(struct netmap_adapter *na, u_int for (i = 0; i < n[t]; i++) { kring = NMR(na, t)[i]; bzero(kring, sizeof(*kring)); - kring->na = na; kring->notify_na = na; kring->ring_id = i; kring->tx = t; @@ -895,13 +895,21 @@ netmap_krings_create(struct netmap_adapter *na, u_int nm_txrx2str(t), i); nm_prdis("ktx %s h %d c %d t %d", kring->name, kring->rhead, kring->rcur, kring->rtail); + err = nm_os_selinfo_init(&kring->si, kring->name); + if (err) { + netmap_krings_delete(na); + return err; + } mtx_init(&kring->q_lock, (t == NR_TX ? "nm_txq_lock" : "nm_rxq_lock"), NULL, MTX_DEF); - nm_os_selinfo_init(&kring->si); + kring->na = na; /* setting this field marks the mutex as initialized */ } - nm_os_selinfo_init(&na->si[t]); + err = nm_os_selinfo_init(&na->si[t], na->name); + if (err) { + netmap_krings_delete(na); + return err; + } } - return 0; } @@ -925,7 +933,8 @@ netmap_krings_delete(struct netmap_adapter *na) /* we rely on the krings layout described above */ for ( ; kring != na->tailroom; kring++) { - mtx_destroy(&(*kring)->q_lock); + if ((*kring)->na != NULL) + mtx_destroy(&(*kring)->q_lock); nm_os_selinfo_uninit(&(*kring)->si); } nm_os_free(na->tx_rings); Modified: stable/12/sys/dev/netmap/netmap_freebsd.c ============================================================================== --- stable/12/sys/dev/netmap/netmap_freebsd.c Wed Feb 13 07:37:33 2019 (r344089) +++ stable/12/sys/dev/netmap/netmap_freebsd.c Wed Feb 13 09:03:23 2019 (r344090) @@ -58,6 +58,7 @@ #include /* RFNOWAIT */ #include /* sched_bind() */ #include /* mp_maxid */ +#include /* taskqueue_enqueue(), taskqueue_create(), ... */ #include #include #include /* IFT_ETHER */ @@ -75,16 +76,48 @@ /* ======================== FREEBSD-SPECIFIC ROUTINES ================== */ -void nm_os_selinfo_init(NM_SELINFO_T *si) { - struct mtx *m = &si->m; - mtx_init(m, "nm_kn_lock", NULL, MTX_DEF); - knlist_init_mtx(&si->si.si_note, m); +static void +nm_kqueue_notify(void *opaque, int pending) +{ + struct nm_selinfo *si = opaque; + + /* We use a non-zero hint to distinguish this notification call + * from the call done in kqueue_scan(), which uses hint=0. + */ + KNOTE_UNLOCKED(&si->si.si_note, /*hint=*/0x100); } +int nm_os_selinfo_init(NM_SELINFO_T *si, const char *name) { + int err; + + TASK_INIT(&si->ntfytask, 0, nm_kqueue_notify, si); + si->ntfytq = taskqueue_create(name, M_NOWAIT, + taskqueue_thread_enqueue, &si->ntfytq); + if (si->ntfytq == NULL) + return -ENOMEM; + err = taskqueue_start_threads(&si->ntfytq, 1, PI_NET, "tq %s", name); + if (err) { + taskqueue_free(si->ntfytq); + si->ntfytq = NULL; + return err; + } + + snprintf(si->mtxname, sizeof(si->mtxname), "nmkl%s", name); + mtx_init(&si->m, si->mtxname, NULL, MTX_DEF); + knlist_init_mtx(&si->si.si_note, &si->m); + + return (0); +} + void nm_os_selinfo_uninit(NM_SELINFO_T *si) { - /* XXX kqueue(9) needed; these will mirror knlist_init. */ + if (si->ntfytq == NULL) { + return; /* si was not initialized */ + } + taskqueue_drain(si->ntfytq, &si->ntfytask); + taskqueue_free(si->ntfytq); + si->ntfytq = NULL; knlist_delete(&si->si.si_note, curthread, /*islocked=*/0); knlist_destroy(&si->si.si_note); /* now we don't need the mutex anymore */ @@ -1292,13 +1325,18 @@ nm_os_kctx_destroy(struct nm_kctx *nmk) /* * In addition to calling selwakeuppri(), nm_os_selwakeup() also - * needs to call KNOTE to wake up kqueue listeners. - * We use a non-zero 'hint' argument to inform the netmap_knrw() - * function that it is being called from 'nm_os_selwakeup'; this - * is necessary because when netmap_knrw() is called by the kevent - * subsystem (i.e. kevent_scan()) we also need to call netmap_poll(). - * The knote uses a private mutex associated to the 'si' (see struct - * selinfo, struct nm_selinfo, and nm_os_selinfo_init). + * needs to call knote() to wake up kqueue listeners. + * This operation is deferred to a taskqueue in order to avoid possible + * lock order reversals; these may happen because knote() grabs a + * private lock associated to the 'si' (see struct selinfo, + * struct nm_selinfo, and nm_os_selinfo_init), and nm_os_selwakeup() + * can be called while holding the lock associated to a different + * 'si'. + * When calling knote() we use a non-zero 'hint' argument to inform + * the netmap_knrw() function that it is being called from + * 'nm_os_selwakeup'; this is necessary because when netmap_knrw() is + * called by the kevent subsystem (i.e. kevent_scan()) we also need to + * call netmap_poll(). * * The netmap_kqfilter() function registers one or another f_event * depending on read or write mode. A pointer to the struct @@ -1313,11 +1351,7 @@ void nm_os_selwakeup(struct nm_selinfo *si) { selwakeuppri(&si->si, PI_NET); - /* We use a non-zero hint to distinguish this notification call - * from the call done in kqueue_scan(), which uses hint=0. - */ - KNOTE(&si->si.si_note, /*hint=*/0x100, - mtx_owned(&si->m) ? KNF_LISTLOCKED : 0); + taskqueue_enqueue(si->ntfytq, &si->ntfytask); } void Modified: stable/12/sys/dev/netmap/netmap_kern.h ============================================================================== --- stable/12/sys/dev/netmap/netmap_kern.h Wed Feb 13 07:37:33 2019 (r344089) +++ stable/12/sys/dev/netmap/netmap_kern.h Wed Feb 13 09:03:23 2019 (r344090) @@ -133,7 +133,10 @@ struct netmap_adapter *netmap_getna(if_t ifp); struct nm_selinfo { struct selinfo si; + struct taskqueue *ntfytq; + struct task ntfytask; struct mtx m; + char mtxname[32]; }; @@ -290,7 +293,7 @@ struct netmap_priv_d; struct nm_bdg_args; /* os-specific NM_SELINFO_T initialzation/destruction functions */ -void nm_os_selinfo_init(NM_SELINFO_T *); +int nm_os_selinfo_init(NM_SELINFO_T *, const char *name); void nm_os_selinfo_uninit(NM_SELINFO_T *); const char *nm_dump_buf(char *p, int len, int lim, char *dst); From owner-svn-src-all@freebsd.org Wed Feb 13 09:28:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BAAC114E92A2; Wed, 13 Feb 2019 09:28:49 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5ACE280E96; Wed, 13 Feb 2019 09:28:49 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4612F25495; Wed, 13 Feb 2019 09:28:49 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D9Snwv075571; Wed, 13 Feb 2019 09:28:49 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D9SnUf075570; Wed, 13 Feb 2019 09:28:49 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902130928.x1D9SnUf075570@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Wed, 13 Feb 2019 09:28:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344091 - in stable: 10/sbin/recoverdisk 11/sbin/recoverdisk 12/sbin/recoverdisk X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/recoverdisk 11/sbin/recoverdisk 12/sbin/recoverdisk X-SVN-Commit-Revision: 344091 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5ACE280E96 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.93)[-0.934,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 09:28:49 -0000 Author: avos Date: Wed Feb 13 09:28:48 2019 New Revision: 344091 URL: https://svnweb.freebsd.org/changeset/base/344091 Log: MFC r343871: recoverdisk(1): fclose() file supplied via '-r readlist' parameter when it's no longer needed PR: 204952 Reported by: David Binderman Modified: stable/11/sbin/recoverdisk/recoverdisk.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sbin/recoverdisk/recoverdisk.c stable/12/sbin/recoverdisk/recoverdisk.c Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/sbin/recoverdisk/recoverdisk.c ============================================================================== --- stable/11/sbin/recoverdisk/recoverdisk.c Wed Feb 13 09:03:23 2019 (r344090) +++ stable/11/sbin/recoverdisk/recoverdisk.c Wed Feb 13 09:28:48 2019 (r344091) @@ -123,6 +123,7 @@ read_worklist(off_t t) new_lump(s, l, state); d -= l; } + fclose(file); (void)fprintf(stderr, " done.\n"); /* * Return the number of bytes already read From owner-svn-src-all@freebsd.org Wed Feb 13 09:28:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0549E14E92A6; Wed, 13 Feb 2019 09:28:50 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 97F0880E97; Wed, 13 Feb 2019 09:28:49 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 88EE225496; Wed, 13 Feb 2019 09:28:49 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D9Sne9075577; Wed, 13 Feb 2019 09:28:49 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D9Snsr075576; Wed, 13 Feb 2019 09:28:49 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902130928.x1D9Snsr075576@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Wed, 13 Feb 2019 09:28:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r344091 - in stable: 10/sbin/recoverdisk 11/sbin/recoverdisk 12/sbin/recoverdisk X-SVN-Group: stable-10 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/recoverdisk 11/sbin/recoverdisk 12/sbin/recoverdisk X-SVN-Commit-Revision: 344091 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 97F0880E97 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.93)[-0.934,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 09:28:50 -0000 Author: avos Date: Wed Feb 13 09:28:48 2019 New Revision: 344091 URL: https://svnweb.freebsd.org/changeset/base/344091 Log: MFC r343871: recoverdisk(1): fclose() file supplied via '-r readlist' parameter when it's no longer needed PR: 204952 Reported by: David Binderman Modified: stable/10/sbin/recoverdisk/recoverdisk.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sbin/recoverdisk/recoverdisk.c stable/12/sbin/recoverdisk/recoverdisk.c Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/sbin/recoverdisk/recoverdisk.c ============================================================================== --- stable/10/sbin/recoverdisk/recoverdisk.c Wed Feb 13 09:03:23 2019 (r344090) +++ stable/10/sbin/recoverdisk/recoverdisk.c Wed Feb 13 09:28:48 2019 (r344091) @@ -123,6 +123,7 @@ read_worklist(off_t t) new_lump(s, l, state); d -= l; } + fclose(file); (void)fprintf(stderr, " done.\n"); /* * Return the number of bytes already read From owner-svn-src-all@freebsd.org Wed Feb 13 09:28:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6B2E614E92AC; Wed, 13 Feb 2019 09:28:50 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0D03B80E98; Wed, 13 Feb 2019 09:28:50 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F1C4425497; Wed, 13 Feb 2019 09:28:49 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1D9SnQx075583; Wed, 13 Feb 2019 09:28:49 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1D9SnQ2075582; Wed, 13 Feb 2019 09:28:49 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902130928.x1D9SnQ2075582@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Wed, 13 Feb 2019 09:28:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344091 - in stable: 10/sbin/recoverdisk 11/sbin/recoverdisk 12/sbin/recoverdisk X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/recoverdisk 11/sbin/recoverdisk 12/sbin/recoverdisk X-SVN-Commit-Revision: 344091 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0D03B80E98 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.93)[-0.934,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 09:28:50 -0000 Author: avos Date: Wed Feb 13 09:28:48 2019 New Revision: 344091 URL: https://svnweb.freebsd.org/changeset/base/344091 Log: MFC r343871: recoverdisk(1): fclose() file supplied via '-r readlist' parameter when it's no longer needed PR: 204952 Reported by: David Binderman Modified: stable/12/sbin/recoverdisk/recoverdisk.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sbin/recoverdisk/recoverdisk.c stable/11/sbin/recoverdisk/recoverdisk.c Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/sbin/recoverdisk/recoverdisk.c ============================================================================== --- stable/12/sbin/recoverdisk/recoverdisk.c Wed Feb 13 09:03:23 2019 (r344090) +++ stable/12/sbin/recoverdisk/recoverdisk.c Wed Feb 13 09:28:48 2019 (r344091) @@ -125,6 +125,7 @@ read_worklist(off_t t) new_lump(s, l, state); d -= l; } + fclose(file); (void)fprintf(stderr, " done.\n"); /* * Return the number of bytes already read From owner-svn-src-all@freebsd.org Wed Feb 13 09:52:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4FB9014E9EF1; Wed, 13 Feb 2019 09:52:33 +0000 (UTC) (envelope-from Michael.Tuexen@macmic.franken.de) Received: from drew.franken.de (drew.ipv6.franken.de [IPv6:2001:638:a02:a001:20e:cff:fe4a:feaa]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.franken.de", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 91D648263A; Wed, 13 Feb 2019 09:52:32 +0000 (UTC) (envelope-from Michael.Tuexen@macmic.franken.de) Received: from [IPv6:2a02:c6a0:4015:12:454c:7dc4:bff5:6228] (unknown [IPv6:2a02:c6a0:4015:12:454c:7dc4:bff5:6228]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTPSA id 2B9827213B000; Wed, 13 Feb 2019 10:52:28 +0100 (CET) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net From: Michael Tuexen In-Reply-To: <20190212235435.GB92760@alchemy.franken.de> Date: Wed, 13 Feb 2019 10:52:27 +0100 Cc: "rgrimes@freebsd.org" , John Baldwin , "src-committers@freebsd.org" , Patrick Kelsey , "svn-src-stable@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable-12@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <19EE100C-4E78-40CB-BDAF-4833263A48D2@macmic.franken.de> References: <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> <201902120124.x1C1OI5b073609@pdx.rh.CN85.dnsmgr.net> <20190212235435.GB92760@alchemy.franken.de> To: Marius Strobl X-Mailer: Apple Mail (2.3445.102.3) X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=disabled version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on mail-n.franken.de X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 09:52:33 -0000 > On 13. Feb 2019, at 00:54, Marius Strobl wrote: >=20 > On Mon, Feb 11, 2019 at 05:24:18PM -0800, Rodney W. Grimes wrote: >>> On 2/11/19 4:26 PM, Rodney W. Grimes wrote: >>>>> Author: pkelsey >>>>> Date: Mon Feb 11 23:24:39 2019 >>>>> New Revision: 344027 >>>>> URL: https://svnweb.freebsd.org/changeset/base/344027 >>>>>=20 >>>>> Log: >>>>> MFC r343291: >>>>> Convert vmx(4) to being an iflib driver. >>>>=20 >>>> I strongly object to this MFC, given the current number >>>> of 12.0 RELEASE related iflib problems we have it is >>>> foolish of us to iflib any more drivers in 12.0 >>>=20 >>> This isn't the release branch though and presumably we have some = time before >>> 12.1 ships. If there are reports of vmx(4) breakage on stable = before 12.1 >>> we could always revert this commit then? >>=20 >> At this point the status if iflib in stable/12 is not certain, but >> what is certain is this merge to 12 is probably going to break >> someones system and at best is an unknown if working. >>=20 >> People DO run stable/12, breaking it is a no no. >>=20 >> Has the committer even booted this code in a stable/12 system >> and run a serious amount of testing on it? >>=20 >>>=20 >>> I've heard of some EN's for 12.0 for iflib fixes. Are those fixes = in stable/12 >>> yet or are we still waiting for them to land in HEAD and/or be = merged? >>=20 >> I sent a ping out earlier today trying to find that out. I belive = that >> some of them are merged to stable/12, some are waiting to be merged, = I >> do believe most if not all are commited to head. >=20 > As for the iflib(4)-converted Intel Ethernet MAC drivers, it's > hard to imagine how these drivers could have a chance of properly > working on arm64 without r344060 and r344062 (which just hit head, > with the latter breaking KBI) but also some previous iflib(4) > fixes that were already MFCed to stable/12 (but aren't part of > 12.0) in place. However, despite em(4) and ix(4) being in its > GENERIC, I don't know what relevance these drivers actually have > for arm64. Hi Marius, would love to use an ix(4) card on an Overdrive 3000 system. However, this doesn't really work, since there is a PCI related problem when booting. Sometimes the box works for a while, sometimes it doesn't come up: pci0: on pcib0 pcib1: at device 2.1 on pci0 pcib0: pci_host_generic_core_alloc_resource FAIL: type=3D4, rid=3D28, = start=3D0000000000000000, end=3D0000000000000fff, = count=3D0000000000001000, flags=3D0 pcib1: failed to allocate initial I/O port window: 0-0xfff pci1: on pcib1 pcib0: pci_host_generic_core_alloc_resource FAIL: type=3D4, rid=3D28, = start=3D0000000000000000, end=3D0000000000000fff, = count=3D0000000000001000, flags=3D3000 ix0: port 0x1000-0x101f = mem 0x7fffe80000-0x7fffefffff,0x7ffff04000-0x7ffff07fff at device 0.0 on = pci1 ix0: Using 2048 tx descriptors and 2048 rx descriptors ix0: Using 8 rx queues 8 tx queues ix0: Using MSI-X interrupts with 9 vectors ix0: allocated for 8 queues ix0: allocated for 8 rx queues ix0: Ethernet address: 90:e2:ba:f7:48:74 ix0: PCI Express Bus: Speed 5.0GT/s Width x8 ix1: mem = 0x7fffe00000-0x7fffe7ffff,0x7ffff00000-0x7ffff03fff at device 0.1 on = pci1 ix1: Using 2048 tx descriptors and 2048 rx descriptors ix1: Using 8 rx queues 8 tx queues ix1: Using MSI-X interrupts with 9 vectors ix1: allocated for 8 queues ix1: allocated for 8 rx queues ix1: Ethernet address: 90:e2:ba:f7:48:75 ix1: PCI Express Bus: Speed 5.0GT/s Width x8 jhb@ said that this is related to some PCI memory allocation limitation = on arm64, if I remember it correctly. I think that ref12-aarch64.freebsd.org uses an igb card. But I can't = login to verify... Best regards Michael > So far, r343934 isn't in stable/12 either (I'll probably merge it > tomorrow), fixing the problem with non-working 82583V a bunch of > people ran into judging PRs. Last time I checked, there also were > some other iflib(4)-related changes, e. g. to converted drivers, > not done by me still missing in stable/12. >=20 > As for the iflib(4) status in head, I'm aware of two remaining > user-visible regressions I ran myself into when trying to use > em(4) in production. 1) TX UDP performance is abysmal even when > using multiple queues and, thus, MSI-X. In a quick test with > netperf I see ~690 Mbits/s with 9216 bytes and 282 Mbits/s with > 42080 bytes on a Xeon E3-1245V2 and 82574 with GigE connection > (stable/11 e1000 drivers forward-ported to 12+ achieve 957 Mbit/s > in both cases). 2) TX TCP performance is abysmal when using MSI > or INTx (that's likely also PR 235031). > I have an upcoming iflib(4) fix for 2) but don't have an idea > what's causing 1) so far. I've identified two bugs in iflib(4) > that likely have a minimal (probably more so with ixl(4), though) > impact on UDP performance but don't explain the huge drop. >=20 > Moreover, I have no idea so far how these relate to PR 234550. > Regarding the latter, one obvious difference is that prior to > the iflib(4)-conversions, the Intel Ethernet MAC drivers didn't > engage software LRO when a VLAN ID is set. The actual reason > why they didn't do that isn't obvious to me, though, and I > found no other in-tree driver which behaves the same way, i. e. > all employ software LRO now even when a VLAN ID is set. >=20 > Personally, I don't see much point in issuing an iflib(4) EN > for 12.0 before the above regressions have been fixed. Judging > some PRs, people started using net/intel-em-kmod instead of the > in-tree drivers, which IMO is the better option for now. >=20 > Marius >=20 >=20 From owner-svn-src-all@freebsd.org Wed Feb 13 13:09:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C41B514EF111; Wed, 13 Feb 2019 13:09:17 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3355E8937C; Wed, 13 Feb 2019 13:09:17 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 05B45279D9; Wed, 13 Feb 2019 13:09:17 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DD9GEr094035; Wed, 13 Feb 2019 13:09:16 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DD9GDf094033; Wed, 13 Feb 2019 13:09:16 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131309.x1DD9GDf094033@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 13:09:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344092 - stable/12/sys/net X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/net X-SVN-Commit-Revision: 344092 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3355E8937C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 13:09:18 -0000 Author: marius Date: Wed Feb 13 13:09:16 2019 New Revision: 344092 URL: https://svnweb.freebsd.org/changeset/base/344092 Log: MFC: r342749 mp_ring: avoid items offset difference between iflib and mp_ring on architectures without 64-bit atomics Reported by: Augustin Cavalier Modified: stable/12/sys/net/mp_ring.c stable/12/sys/net/mp_ring.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/net/mp_ring.c ============================================================================== --- stable/12/sys/net/mp_ring.c Wed Feb 13 09:28:48 2019 (r344091) +++ stable/12/sys/net/mp_ring.c Wed Feb 13 13:09:16 2019 (r344092) @@ -37,10 +37,6 @@ __FBSDID("$FreeBSD$"); #include #include -#if defined(__powerpc__) || defined(__mips__) || defined(__i386__) -#define NO_64BIT_ATOMICS -#endif - #if defined(__i386__) #define atomic_cmpset_acq_64 atomic_cmpset_64 #define atomic_cmpset_rel_64 atomic_cmpset_64 @@ -101,7 +97,7 @@ state_to_flags(union ring_state s, int abdicate) return (BUSY); } -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS static void drain_ring_locked(struct ifmp_ring *r, union ring_state os, uint16_t prev, int budget) { @@ -291,7 +287,7 @@ ifmp_ring_alloc(struct ifmp_ring **pr, int size, void } *pr = r; -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS mtx_init(&r->lock, "mp_ring lock", NULL, MTX_DEF); #endif return (0); @@ -325,7 +321,7 @@ ifmp_ring_free(struct ifmp_ring *r) * * Returns an errno. */ -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS int ifmp_ring_enqueue(struct ifmp_ring *r, void **items, int n, int budget, int abdicate) { @@ -503,7 +499,7 @@ ifmp_ring_check_drainage(struct ifmp_ring *r, int budg ns.flags = BUSY; -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS mtx_lock(&r->lock); if (r->state != os.state) { mtx_unlock(&r->lock); Modified: stable/12/sys/net/mp_ring.h ============================================================================== --- stable/12/sys/net/mp_ring.h Wed Feb 13 09:28:48 2019 (r344091) +++ stable/12/sys/net/mp_ring.h Wed Feb 13 13:09:16 2019 (r344092) @@ -40,6 +40,10 @@ typedef u_int (*mp_ring_drain_t)(struct ifmp_ring *, u typedef u_int (*mp_ring_can_drain_t)(struct ifmp_ring *); typedef void (*mp_ring_serial_t)(struct ifmp_ring *); +#if defined(__powerpc__) || defined(__mips__) || defined(__i386__) +#define MP_RING_NO_64BIT_ATOMICS +#endif + struct ifmp_ring { volatile uint64_t state __aligned(CACHE_LINE_SIZE); @@ -54,7 +58,7 @@ struct ifmp_ring { counter_u64_t stalls; counter_u64_t restarts; /* recovered after stalling */ counter_u64_t abdications; -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS struct mtx lock; #endif void * volatile items[] __aligned(CACHE_LINE_SIZE); From owner-svn-src-all@freebsd.org Wed Feb 13 14:25:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6F7DD14F0D1D; Wed, 13 Feb 2019 14:25:17 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8A2E98BD6A; Wed, 13 Feb 2019 14:25:11 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2EF332873A; Wed, 13 Feb 2019 14:25:06 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DEP5Q6035496; Wed, 13 Feb 2019 14:25:05 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DEP5p2035494; Wed, 13 Feb 2019 14:25:05 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131425.x1DEP5p2035494@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 14:25:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344093 - stable/11/sys/net X-SVN-Group: stable-11 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/11/sys/net X-SVN-Commit-Revision: 344093 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8A2E98BD6A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:25:17 -0000 Author: marius Date: Wed Feb 13 14:25:05 2019 New Revision: 344093 URL: https://svnweb.freebsd.org/changeset/base/344093 Log: MFC: r333879, r342749 - Even though 64-bit atomics are supported on i386 there are panics indicating that the code does not work correctly there. Switch to mutex based variant (and fix that while we're here). Reported by: pho, kib - mp_ring: avoid items offset difference between iflib and mp_ring on architectures without 64-bit atomics Reported by: Augustin Cavalier Modified: stable/11/sys/net/mp_ring.c stable/11/sys/net/mp_ring.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/net/mp_ring.c ============================================================================== --- stable/11/sys/net/mp_ring.c Wed Feb 13 13:09:16 2019 (r344092) +++ stable/11/sys/net/mp_ring.c Wed Feb 13 14:25:05 2019 (r344093) @@ -37,10 +37,6 @@ __FBSDID("$FreeBSD$"); #include #include -#if defined(__powerpc__) || defined(__mips__) -#define NO_64BIT_ATOMICS -#endif - #if defined(__i386__) #define atomic_cmpset_acq_64 atomic_cmpset_64 #define atomic_cmpset_rel_64 atomic_cmpset_64 @@ -101,7 +97,7 @@ state_to_flags(union ring_state s, int abdicate) return (BUSY); } -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS static void drain_ring_locked(struct ifmp_ring *r, union ring_state os, uint16_t prev, int budget) { @@ -291,7 +287,7 @@ ifmp_ring_alloc(struct ifmp_ring **pr, int size, void } *pr = r; -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS mtx_init(&r->lock, "mp_ring lock", NULL, MTX_DEF); #endif return (0); @@ -325,7 +321,7 @@ ifmp_ring_free(struct ifmp_ring *r) * * Returns an errno. */ -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS int ifmp_ring_enqueue(struct ifmp_ring *r, void **items, int n, int budget) { @@ -345,6 +341,7 @@ ifmp_ring_enqueue(struct ifmp_ring *r, void **items, i if (n >= space_available(r, os)) { counter_u64_add(r->drops, n); MPASS(os.flags != IDLE); + mtx_unlock(&r->lock); if (os.flags == STALLED) ifmp_ring_check_drainage(r, 0); return (ENOBUFS); @@ -480,7 +477,7 @@ ifmp_ring_check_drainage(struct ifmp_ring *r, int budg ns.flags = BUSY; -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS mtx_lock(&r->lock); if (r->state != os.state) { mtx_unlock(&r->lock); Modified: stable/11/sys/net/mp_ring.h ============================================================================== --- stable/11/sys/net/mp_ring.h Wed Feb 13 13:09:16 2019 (r344092) +++ stable/11/sys/net/mp_ring.h Wed Feb 13 14:25:05 2019 (r344093) @@ -40,6 +40,10 @@ typedef u_int (*mp_ring_drain_t)(struct ifmp_ring *, u typedef u_int (*mp_ring_can_drain_t)(struct ifmp_ring *); typedef void (*mp_ring_serial_t)(struct ifmp_ring *); +#if defined(__powerpc__) || defined(__mips__) || defined(__i386__) +#define MP_RING_NO_64BIT_ATOMICS +#endif + struct ifmp_ring { volatile uint64_t state __aligned(CACHE_LINE_SIZE); @@ -54,7 +58,7 @@ struct ifmp_ring { counter_u64_t stalls; counter_u64_t restarts; /* recovered after stalling */ counter_u64_t abdications; -#ifdef NO_64BIT_ATOMICS +#ifdef MP_RING_NO_64BIT_ATOMICS struct mtx lock; #endif void * volatile items[] __aligned(CACHE_LINE_SIZE); From owner-svn-src-all@freebsd.org Wed Feb 13 14:28:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 61FAE14F0E0A; Wed, 13 Feb 2019 14:28:03 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 082C78C05A; Wed, 13 Feb 2019 14:28:03 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EF7442873C; Wed, 13 Feb 2019 14:28:02 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DES2Og035720; Wed, 13 Feb 2019 14:28:02 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DES2XK035718; Wed, 13 Feb 2019 14:28:02 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131428.x1DES2XK035718@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 14:28:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344095 - stable/11/sys/dev/ixgbe X-SVN-Group: stable-11 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/11/sys/dev/ixgbe X-SVN-Commit-Revision: 344095 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 082C78C05A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:28:03 -0000 Author: marius Date: Wed Feb 13 14:28:02 2019 New Revision: 344095 URL: https://svnweb.freebsd.org/changeset/base/344095 Log: MFC: r343203 ixgbe: this statement may fall through warnings with gcc The recent gcc versions (7 and 8 at least) can check for switch case statements for fall through (implicit-fallthrough). When fall through is intentional, the default method for warning suppression is to place comment /* FALLTHROUGH */ exactly before next case statement. Differential Revision: https://reviews.freebsd.org/D18577 Modified: stable/11/sys/dev/ixgbe/ixgbe_82599.c stable/11/sys/dev/ixgbe/ixgbe_common.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/ixgbe/ixgbe_82599.c ============================================================================== --- stable/11/sys/dev/ixgbe/ixgbe_82599.c Wed Feb 13 14:27:59 2019 (r344094) +++ stable/11/sys/dev/ixgbe/ixgbe_82599.c Wed Feb 13 14:28:02 2019 (r344095) @@ -1746,7 +1746,7 @@ s32 ixgbe_fdir_set_input_mask_82599(struct ixgbe_hw *h case 0x0000: /* mask VLAN ID */ fdirm |= IXGBE_FDIRM_VLANID; - /* fall through */ + /* FALLTHROUGH */ case 0x0FFF: /* mask VLAN priority */ fdirm |= IXGBE_FDIRM_VLANP; @@ -2032,7 +2032,7 @@ s32 ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_h DEBUGOUT(" Error on src/dst port\n"); return IXGBE_ERR_CONFIG; } - /* fall through */ + /* FALLTHROUGH */ case IXGBE_ATR_FLOW_TYPE_TCPV4: case IXGBE_ATR_FLOW_TYPE_TUNNELED_TCPV4: case IXGBE_ATR_FLOW_TYPE_UDPV4: Modified: stable/11/sys/dev/ixgbe/ixgbe_common.c ============================================================================== --- stable/11/sys/dev/ixgbe/ixgbe_common.c Wed Feb 13 14:27:59 2019 (r344094) +++ stable/11/sys/dev/ixgbe/ixgbe_common.c Wed Feb 13 14:28:02 2019 (r344095) @@ -267,7 +267,8 @@ s32 ixgbe_setup_fc_generic(struct ixgbe_hw *hw) if (ret_val != IXGBE_SUCCESS) goto out; - /* fall through - only backplane uses autoc */ + /* only backplane uses autoc */ + /* FALLTHROUGH */ case ixgbe_media_type_fiber_fixed: case ixgbe_media_type_fiber_qsfp: case ixgbe_media_type_fiber: @@ -4732,7 +4733,8 @@ void ixgbe_set_rxpba_generic(struct ixgbe_hw *hw, int rxpktsize <<= IXGBE_RXPBSIZE_SHIFT; for (; i < (num_pb / 2); i++) IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(i), rxpktsize); - /* fall through - configure remaining packet buffers */ + /* configure remaining packet buffers */ + /* FALLTHROUGH */ case PBA_STRATEGY_EQUAL: rxpktsize = (pbsize / (num_pb - i)) << IXGBE_RXPBSIZE_SHIFT; for (; i < num_pb; i++) From owner-svn-src-all@freebsd.org Wed Feb 13 14:28:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A3A914F0DFF; Wed, 13 Feb 2019 14:28:00 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2E6ED8C059; Wed, 13 Feb 2019 14:28:00 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 085192873B; Wed, 13 Feb 2019 14:28:00 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DERxJT035665; Wed, 13 Feb 2019 14:27:59 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DERx9K035664; Wed, 13 Feb 2019 14:27:59 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131427.x1DERx9K035664@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 14:27:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344094 - stable/12/sys/dev/ixgbe X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/dev/ixgbe X-SVN-Commit-Revision: 344094 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2E6ED8C059 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:28:00 -0000 Author: marius Date: Wed Feb 13 14:27:59 2019 New Revision: 344094 URL: https://svnweb.freebsd.org/changeset/base/344094 Log: MFC: r343203 ixgbe: this statement may fall through warnings with gcc The recent gcc versions (7 and 8 at least) can check for switch case statements for fall through (implicit-fallthrough). When fall through is intentional, the default method for warning suppression is to place comment /* FALLTHROUGH */ exactly before next case statement. Differential Revision: https://reviews.freebsd.org/D18577 Modified: stable/12/sys/dev/ixgbe/ixgbe_82599.c stable/12/sys/dev/ixgbe/ixgbe_common.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ixgbe/ixgbe_82599.c ============================================================================== --- stable/12/sys/dev/ixgbe/ixgbe_82599.c Wed Feb 13 14:25:05 2019 (r344093) +++ stable/12/sys/dev/ixgbe/ixgbe_82599.c Wed Feb 13 14:27:59 2019 (r344094) @@ -1750,7 +1750,7 @@ s32 ixgbe_fdir_set_input_mask_82599(struct ixgbe_hw *h case 0x0000: /* mask VLAN ID */ fdirm |= IXGBE_FDIRM_VLANID; - /* fall through */ + /* FALLTHROUGH */ case 0x0FFF: /* mask VLAN priority */ fdirm |= IXGBE_FDIRM_VLANP; @@ -2039,7 +2039,7 @@ s32 ixgbe_fdir_add_perfect_filter_82599(struct ixgbe_h DEBUGOUT(" Error on src/dst port\n"); return IXGBE_ERR_CONFIG; } - /* fall through */ + /* FALLTHROUGH */ case IXGBE_ATR_FLOW_TYPE_TCPV4: case IXGBE_ATR_FLOW_TYPE_TUNNELED_TCPV4: case IXGBE_ATR_FLOW_TYPE_UDPV4: Modified: stable/12/sys/dev/ixgbe/ixgbe_common.c ============================================================================== --- stable/12/sys/dev/ixgbe/ixgbe_common.c Wed Feb 13 14:25:05 2019 (r344093) +++ stable/12/sys/dev/ixgbe/ixgbe_common.c Wed Feb 13 14:27:59 2019 (r344094) @@ -269,7 +269,8 @@ s32 ixgbe_setup_fc_generic(struct ixgbe_hw *hw) if (ret_val != IXGBE_SUCCESS) goto out; - /* fall through - only backplane uses autoc */ + /* only backplane uses autoc */ + /* FALLTHROUGH */ case ixgbe_media_type_fiber_fixed: case ixgbe_media_type_fiber_qsfp: case ixgbe_media_type_fiber: @@ -4756,7 +4757,8 @@ void ixgbe_set_rxpba_generic(struct ixgbe_hw *hw, int rxpktsize <<= IXGBE_RXPBSIZE_SHIFT; for (; i < (num_pb / 2); i++) IXGBE_WRITE_REG(hw, IXGBE_RXPBSIZE(i), rxpktsize); - /* fall through - configure remaining packet buffers */ + /* configure remaining packet buffers */ + /* FALLTHROUGH */ case PBA_STRATEGY_EQUAL: rxpktsize = (pbsize / (num_pb - i)) << IXGBE_RXPBSIZE_SHIFT; for (; i < num_pb; i++) From owner-svn-src-all@freebsd.org Wed Feb 13 14:32:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6693814F0F1B; Wed, 13 Feb 2019 14:32:16 +0000 (UTC) (envelope-from lme@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 12AB08C560; Wed, 13 Feb 2019 14:32:16 +0000 (UTC) (envelope-from lme@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DF4A1288C6; Wed, 13 Feb 2019 14:32:15 +0000 (UTC) (envelope-from lme@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DEWFK5040460; Wed, 13 Feb 2019 14:32:15 GMT (envelope-from lme@FreeBSD.org) Received: (from lme@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DEWFTJ039930; Wed, 13 Feb 2019 14:32:15 GMT (envelope-from lme@FreeBSD.org) Message-Id: <201902131432.x1DEWFTJ039930@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: lme set sender to lme@FreeBSD.org using -f From: Lars Engels Date: Wed, 13 Feb 2019 14:32:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344096 - in stable/12: tools/build/mk usr.sbin/bluetooth usr.sbin/bluetooth/bluetooth-config X-SVN-Group: stable-12 X-SVN-Commit-Author: lme X-SVN-Commit-Paths: in stable/12: tools/build/mk usr.sbin/bluetooth usr.sbin/bluetooth/bluetooth-config X-SVN-Commit-Revision: 344096 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 12AB08C560 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:32:16 -0000 Author: lme (ports committer) Date: Wed Feb 13 14:32:14 2019 New Revision: 344096 URL: https://svnweb.freebsd.org/changeset/base/344096 Log: MFC r342945, r342947, r343020 Add `bluetooth-config` script to simplify setting up bluetooth connections to devices like mice, keyboards, bt-audio, ... This script currently allows scanning for nearby devices, adds one to /etc/bluetooth/hosts, adds an entry to hcsecd's conf and if it is a HID, add an entry to bthidd's configs, as well. Submitted by: erdgeist Approved by: bapt MFC after: 2 weeks Differential Revision: D3778 Reviewers: bapt, emax Added: stable/12/usr.sbin/bluetooth/bluetooth-config/ - copied from r342945, head/usr.sbin/bluetooth/bluetooth-config/ Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc stable/12/usr.sbin/bluetooth/Makefile stable/12/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.8 stable/12/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.sh Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/12/tools/build/mk/OptionalObsoleteFiles.inc Wed Feb 13 14:28:02 2019 (r344095) +++ stable/12/tools/build/mk/OptionalObsoleteFiles.inc Wed Feb 13 14:32:14 2019 (r344096) @@ -486,6 +486,7 @@ OLD_FILES+=usr/lib32/libsdp_p.a .endif OLD_FILES+=usr/sbin/ath3kfw OLD_FILES+=usr/sbin/bcmfw +OLD_FILES+=usr/sbin/bluetooth-config OLD_FILES+=usr/sbin/bt3cfw OLD_FILES+=usr/sbin/bthidcontrol OLD_FILES+=usr/sbin/bthidd @@ -562,6 +563,7 @@ OLD_FILES+=usr/share/man/man5/bluetooth.protocols.5.gz OLD_FILES+=usr/share/man/man5/hcsecd.conf.5.gz OLD_FILES+=usr/share/man/man8/ath3kfw.8.gz OLD_FILES+=usr/share/man/man8/bcmfw.8.gz +OLD_FILES+=usr/share/man/man8/bluetooth-config.8.gz OLD_FILES+=usr/share/man/man8/bt3cfw.8.gz OLD_FILES+=usr/share/man/man8/bthidcontrol.8.gz OLD_FILES+=usr/share/man/man8/bthidd.8.gz Modified: stable/12/usr.sbin/bluetooth/Makefile ============================================================================== --- stable/12/usr.sbin/bluetooth/Makefile Wed Feb 13 14:28:02 2019 (r344095) +++ stable/12/usr.sbin/bluetooth/Makefile Wed Feb 13 14:32:14 2019 (r344096) @@ -4,6 +4,7 @@ .include SUBDIR= \ + bluetooth-config \ bt3cfw \ btpand \ hccontrol \ Modified: stable/12/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.8 ============================================================================== --- head/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.8 Fri Jan 11 15:52:09 2019 (r342945) +++ stable/12/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.8 Wed Feb 13 14:32:14 2019 (r344096) @@ -109,114 +109,3 @@ utility first appeared in .An Dirk Engling Aq Mt erdgeist@erdgeist.org .Sh THANKS TO Lars Engels and Warren Block for suggestions, help, and testing. -.\" Copyright (c) 2019 Dirk Engling -.\" 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$ -.\" -.Dd January 7, 2019 -.Dt BLUETOOTH-CONFIG 8 -.Os -.Sh NAME -.Nm bluetooth-config -.Nd a script to manage config files for the bluetooth sub system -.Sh SYNOPSIS -.Nm -.Ar scan -.Op Fl d Ar device -.Op Fl n Ar node -.Sh DESCRIPTION -The -.Nm -utility is an interactive script to provide a frontend to the complex bluetooth sub system daemons. -.Pp -The following options are available: -.Bl -tag -width indent+ -.It Fl d -Scan for a specific bluetooth device address. -.It Fl n -Limit scan to a specific host controller. Hint: List all netgraph nodes with -.Ql /usr/sbin/ngctl list . -.El -.Pp -.Nm -will help finding and setting up bluetooth controllers, scan for nearby bluetooth devices in -pairing mode, lookup their names, allow mapping to friendly names in -.Pa /etc/bluetooth/hosts , -ask for the paring PIN, instrument -.Xr hcsecd 8 -to securely pair with new devices and, if the device offers HID endpoints such as mice or -keyboards, configure and restart -.Xr bthidd 8 . -.Pp -.Nm -can bring up any interface and daemon necessary for operation and, if a node is provided on -command line, will do so automatically for that interface. -.Sh CAVEATS -.Nm -can not parse entries in -.Xr hcsecd 8 -config file and thus will ask the user to manually modify existing pairing PIN entries. -.Sh FILES -.Bl -tag -width ".Pa /etc/bluetooth/hosts" -compact -.It Pa /etc/bluetooth/hosts -.It Pa sysrc -n bthidd_config -.It Pa sysrc -n hcsecd_config -.El -.Sh EXAMPLES -.Nm -scan -n ubt0 -a 00:26:bb:7a:58:95 -.Bd -ragged -offset indent -This will scan the bluetooth controller ubt0hci for a bluetooth device with the address -00:26:bb:7a:58:95, set up ubt0 if necessary and enter an interactive dialog to pair the -new device. Since in this example a mouse is paired, -.Nm -will interact with -.Xr bthidd 8 , -enabling it if necessary and then write an HID descriptor to its config. -.Ed -.Pp -.Nm -scan -.Bd -ragged -offset indent -This will scan all bluetooth controllers on the systems for bluetooth devices, prompting -to bring up controllers or daemons along the way. -.Ed -.Sh SEE ALSO -.Xr bthidcontrol 8 , -.Xr bthidd 8 , -.Xr bthost 1 , -.Xr hccontrol 8 , -.Xr hcsecd 8 , -.Xr sdpcontrol 8 , -.Xr sysrc 8 -.Sh HISTORY -A -.Nm -utility first appeared in -.Fx 12.1 . -.Sh AUTHORS -.An Dirk Engling Aq Mt erdgeist@erdgeist.org -.Sh THANKS TO -Lars Engels and Warren Block for suggestions, help, and testing. Modified: stable/12/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.sh ============================================================================== --- head/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.sh Fri Jan 11 15:52:09 2019 (r342945) +++ stable/12/usr.sbin/bluetooth/bluetooth-config/bluetooth-config.sh Wed Feb 13 14:32:14 2019 (r344096) @@ -1,9 +1,12 @@ #!/bin/sh #- -# Copyleft 2019 Dirk Engling +# ---------------------------------------------------------------------------- +# "THE BEER-WARE LICENSE" (Revision 42): +# wrote this file. As long as you retain this notice you +# can do whatever you want with this stuff. If we meet some day, and you think +# this stuff is worth it, you can buy me a beer in return Poul-Henning Kamp +# ---------------------------------------------------------------------------- # -# This script is released under the beerware license. -# # $FreeBSD$ # @@ -11,8 +14,6 @@ exerr () { echo -e "Error: $*" >&2 ; exit 1; } print_syntax () { echo -e "Syntax: $0 scan [-d device] [-n node]"; exit 1; } -# Assuming we are called to do the pair-new-device subcommand first - main() { unset node device started bdaddresses retry @@ -22,132 +23,140 @@ shift # Get command line options while getopts :d:n: arg; do - case ${arg} in - d) device="$OPTARG";; - n) node="$OPTARG";; - ?) print_syntax;; - esac + case ${arg} in + d) device="$OPTARG";; + n) node="$OPTARG";; + ?) print_syntax;; + esac done # No use running without super user rights -[ $( id -u ) -eq 0 ] || exerr "$0 must modify files that belong to root. Re-run as root." +if [ $( id -u ) -ne 0 ]; then + exerr "$0 must modify files that belong to root. Re-run as root." +fi -known_nodes=$(/usr/sbin/hccontrol read_node_list 2>/dev/null | \ - /usr/bin/tail -n +2 | /usr/bin/cut -d ' ' -f 1) +known_nodes=$( /usr/sbin/hccontrol read_node_list 2>/dev/null |\ + /usr/bin/tail -n +2 | /usr/bin/cut -d ' ' -f 1 ) # Check if netgraph knows about any HCI nodes if ! [ "${known_nodes}" ]; then - ng_nodes=$(/usr/sbin/ngctl list 2>/dev/null | \ - /usr/bin/grep -o "Name: .* Type: ubt" | /usr/bin/cut -d ' ' -f 2) + ng_nodes=$( /usr/sbin/ngctl list 2>/dev/null | \ + /usr/bin/grep -o "Name: .* Type: ubt" |/usr/bin/cut -d' ' -f2 ) - [ "${ng_nodes}" ] || exerr "No Bluetooth host controllers found." + [ "${ng_nodes}" ] || exerr "No Bluetooth host controllers found." - unset found - for n in ${ng_nodes}; do - if [ "${n}" = "${node%hci}" ]; then - # If we found the node but its stack is not set up, do it now - /usr/sbin/service bluetooth start ${node%hci} || exit 1 - found="YES" - fi - done + unset found + for n in ${ng_nodes}; do + if [ "${n}" = "${node%hci}" ]; then + # Found the node but its stack is not set up? Do it now. + /usr/sbin/service bluetooth start ${node%hci} || exit 1 + found="YES" + fi + done - # If we have Bluetooth controller nodes without a set up stack, - # ask the user if we shall start it up - if ! [ "${found}" ]; then - printf "No usable Bluetooth host controllers were found.\n" - printf "These host controllers exist in the system:\n %s" " ${ng_nodes}" - read -p "Choose a host controller to set up: [${ng_nodes%% *}]" node - : ${node:="${ng_nodes%% *}"} - /usr/sbin/service bluetooth start ${node} || exit 1 - fi + # If we have Bluetooth controller nodes without a set up stack, + # ask the user if we shall start it up + if ! [ "${found}" ]; then + printf "No usable Bluetooth host controllers were found.\n" + printf "These host controllers exist in the system:\n" + printf " %s\n" "${ng_nodes}" + prompt="Choose a host controller to set up: [${ng_nodes%% *}]" + read -p "${prompt}" node + : ${node:="${ng_nodes%% *}"} + /usr/sbin/service bluetooth start ${node} || exit 1 + fi - # Re-read known nodes - known_nodes=$(/usr/sbin/hccontrol read_node_list 2>/dev/null | \ - /usr/bin/tail -n +2 | /usr/bin/cut -d ' ' -f 1) - # check if we succeeded in bringing it up - [ "${known_nodes}" ] || exerr "Failed to set up Bluetooth stack" + # Re-read known nodes + known_nodes=$(/usr/sbin/hccontrol read_node_list 2>/dev/null | + /usr/bin/tail -n +2 | /usr/bin/cut -d ' ' -f 1 ) + + # check if we succeeded in bringing it up + [ "${known_nodes}" ] || exerr "Failed to set up Bluetooth stack" fi # if a node was requested on command line, check if it is there if [ "${node}" ]; then - unset found - for n in ${known_nodes}; do - [ "${n}" = "${node}" ] && found="YES" - [ "${n}" = "${node}hci" ] && node="${node}hci" && found="YES" - done - [ "${found}" ] || exerr "Node ${node} not found" + unset found + for n in ${known_nodes}; do + [ "${n}" = "${node}" ] && found="YES" + [ "${n}" = "${node}hci" ] && node="${node}hci" && found="YES" + done + [ "${found}" ] || exerr "Node ${node} not found" fi [ "${node}" ] && node="-n ${node}" while ! [ "${bdaddresses}" ]; do - retry=X${retry} - printf "Scanning for new Bluetooth devices (Attempt %d of 5) ... " ${#retry} - bdaddresses=$( /usr/sbin/hccontrol -N ${node} inquiry 2>/dev/null | \ - /usr/bin/grep -o "BD_ADDR: .*" | /usr/bin/cut -d ' ' -f 2 ) + retry=X${retry} + printf "Scanning for new Bluetooth devices (Attempt %d of 5) ... " \ + ${#retry} + bdaddresses=$( /usr/sbin/hccontrol -N ${node} inquiry 2>/dev/null | + /usr/bin/grep -o "BD_ADDR: .*" | /usr/bin/cut -d ' ' -f 2 ) - # Count entries and, if a device was requested on command line, - # try to find it - unset found count - for bdaddress in ${bdaddresses}; do - count=X${count} - if [ "${bdaddress}" = "${device}" ]; then - found=YES - bdaddresses="${device}" - count=X - break - fi - done + # Count entries and, if a device was requested on command line, + # try to find it + unset found count + for bdaddress in ${bdaddresses}; do + count=X${count} + if [ "${bdaddress}" = "${device}" ]; then + found=YES + bdaddresses="${device}" + count=X + break + fi + done - # If device was requested on command line but is not found, - # or no devices found at all, rescan until retry is exhausted - if ! [ "${found}" -o "${count}" -a -z "${device}" ]; then - printf "failed.\n" - if [ "${#retry}" -eq 5 ]; then - [ "${device}" ] && exerr "Device ${device} not found" - exerr "No new Bluetooth devices found" - fi - unset bdaddresses - sleep 2 - continue - fi + # If device was requested on command line but is not found, + # or no devices found at all, rescan until retry is exhausted + if ! [ "${found}" -o "${count}" -a -z "${device}" ]; then + printf "failed.\n" + if [ "${#retry}" -eq 5 ]; then + [ "${device}" ] && exerr "Device ${device} not found" + exerr "No new Bluetooth devices found" + fi + unset bdaddresses + sleep 2 + continue + fi - [ ${#count} -gt 1 ] && plural=s || plural='' - printf "done.\nFound %d new bluetooth device%s (scanning for names):\n" ${#count} ${plural} + [ ${#count} -gt 1 ] && plural=s || plural='' + printf "done.\nFound %d new bluetooth device%s " ${#count} ${plural} + printf "(now scanning for names):\n" - # Looping again for the faster feedback - unset count - for bdaddress in ${bdaddresses}; do - count=X${count} - bdname=$( /usr/bin/bthost -b "${bdaddress}" 2>/dev/null ) - friendlyname=$( /usr/sbin/hccontrol Remote_Name_Request ${bdaddress} 2> /dev/null | \ - /usr/bin/grep -o "Name: .*" | /usr/bin/cut -d ' ' -f 2- ) + # Looping again for the faster feedback + unset count + for bdaddress in ${bdaddresses}; do + count=X${count} + bdname=$( /usr/bin/bthost -b "${bdaddress}" 2>/dev/null ) + friendlyname=$( /usr/sbin/hccontrol Remote_Name_Request \ + ${bdaddress} 2> /dev/null | + /usr/bin/grep -o "Name: .*" |/usr/bin/cut -d ' ' -f 2- ) - # sdpcontrol should be able to pull vendor and product id via sdp - printf "[%2d] %s\t\"%s\" (%s)\n" ${#count} "${bdaddress}" "${friendlyname}" "${bdname}" + # sdpcontrol should be able to pull vendor + product id via sdp + printf "[%2d] %s\t\"%s\" (%s)\n" ${#count} "${bdaddress}" \ + "${friendlyname}" "${bdname}" - eval bdaddress_${#count}=\${bdaddress} - eval bdname_${#count}=\${bdname} - eval friendlyname_${#count}=\${friendlyname} - done + eval bdaddress_${#count}=\${bdaddress} + eval bdname_${#count}=\${bdname} + eval friendlyname_${#count}=\${friendlyname} + done - # If a device was pre-selected, do not query the user - [ "${device}" ] && topair=1 || unset topair + # If a device was pre-selected, do not query the user + [ "${device}" ] && topair=1 || unset topair - # Even if only one device was found, user may chose 0 to rescan - while ! [ "${topair}" ]; do - if [ ${#count} -eq 1 ]; then - read -p "Select device to pair with [1, or 0 to rescan]: " topair - else - read -p "Select device to pair with [1-${#count}, or 0 to rescan]: " topair - fi - if ! [ "${topair}" -ge 0 -a "${topair}" -le "${#count}" ] 2>/dev/null ; then - printf "Value out of range: %s.\n" {topair} - unset topair - fi - done + # Even if only one device was found, user may chose 0 to rescan + while ! [ "${topair}" ]; do + prompt="Select device to pair with [1" + [ ${#count} -gt 1 ] && prompt="${prompt}-${#count}" + read -p "${prompt}, or 0 to rescan]: " topair + if ! [ "${topair}" -ge 0 -a "${topair}" -le "${#count}" ] \ + 2>/dev/null ; then + printf "Value out of range: %s.\n" {topair} + unset topair + fi + done - [ "${topair}" -eq "0" ] && unset bdaddresses retry + [ "${topair}" -eq "0" ] && unset bdaddresses retry done eval bdaddress=\${bdaddress_${topair}} @@ -156,20 +165,24 @@ eval friendlyname=\${friendlyname_${topair}} # Do we need to add an entry to /etc/bluetooth/hosts? if ! [ "${bdname}" ]; then - printf "\nAdding device ${bdaddress} to /etc/bluetooth/hosts.\n" + printf "\nAdding device ${bdaddress} to /etc/bluetooth/hosts.\n" - while ! [ "${bdname}" ]; do - read -p "Enter friendly name. [${friendlyname}]: " REPLY - : ${REPLY:="${friendlyname}"} + while ! [ "${bdname}" ]; do + read -p "Enter friendly name. [${friendlyname}]: " _r + : ${_r:="${friendlyname}"} - if [ "${REPLY}" ]; then - # Remove white space and non-friendly characters - bdname=$( printf "%s" "${REPLY}" | tr -c '[:alnum:]-,.' _ ) - [ "${REPLY}" != "${bdname}" ] && printf "Notice: Using sanitized name \"%s\" in /etc/bluetooth/hosts.\n" "${bdname}" - fi - done + if [ "${_r}" ]; then + # Remove white space and non-friendly characters + bdname=$( printf "%s" "${_r}" | tr -c '[:alnum:]-,.' _ ) + if [ "${_r}" != "${bdname}" ]; then + printf "Notice: Using sanitized name" + printf "\"%s\" in /etc/bluetooth/hosts.\n" \ + "${bdname}" + fi + fi + done - printf "%s\t%s\n" "${bdaddress}" "${bdname}" >> /etc/bluetooth/hosts + printf "%s\t%s\n" "${bdaddress}" "${bdname}" >> /etc/bluetooth/hosts fi # If scanning for the name did not succeed, resort to bdname @@ -183,86 +196,109 @@ fi # Also we cannot really modify the PIN in an existing entry. So we # need to prompt the user to manually do it and restart this script if ! /usr/sbin/service hcsecd enabled; then - printf "\nWarning: hcsecd is not enabled.\nThis daemon manages pairing requests.\n" - read -p "Enable hcsecd? [yes]: " REPLY - case "${REPLY}" in no|n|NO|N|No|nO) ;; *) /usr/sbin/sysrc hcsecd_enable="YES";; esac + printf "\nWarning: hcsecd is not enabled.\n" + printf "This daemon manages pairing requests.\n" + read -p "Enable hcsecd? [yes]: " _r + case "${_r}" in + no|n|NO|N|No|nO) ;; + *) /usr/sbin/service hcsecd enable;; + esac fi + secd_config=$( /usr/sbin/sysrc -n hcsecd_config ) -secd_entries=$( /usr/bin/grep -Eo "bdaddr[[:space:]]+(${bdaddress}|${bdname})" ${secd_config} | awk '{ print $2; }' ) +secd_entries=$( /usr/bin/grep -Eo "bdaddr[[:space:]]+(${bdaddress}|${bdname})" \ + ${secd_config} | awk '{ print $2; }' ) if [ "${secd_entries}" ]; then - printf "\nWarning: An entry for device %s is already present in %s.\n" ${secd_entries} ${secd_config} - printf "To modify pairing information, edit this file and run\n service hcsecd restart\n" - read -p "Continue? [yes]: " REPLY - case "${REPLY}" in no|n|NO|N|No|nO) exit;; esac + printf "\nWarning: An entry for device %s is already present in %s.\n" \ + ${secd_entries} ${secd_config} + printf "To modify pairing information, edit this file and run\n" + printf " service hcsecd restart\n" + read -p "Continue? [yes]: " _r + case "${_r}" in no|n|NO|N|No|nO) exit;; esac else - printf "\nWriting pairing information description block to %s.\n" ${secd_config} - printf "(To get PIN, put device in pairing mode first.)\n" - read -p "Enter PIN [nopin]: " pin - [ "${pin}" ] && pin=\""${pin}"\" || pin="nopin" + printf "\nWriting pairing information description block to %s.\n" \ + ${secd_config} + printf "(To get PIN, put device in pairing mode first.)\n" + read -p "Enter PIN [nopin]: " pin + [ "${pin}" ] && pin=\""${pin}"\" || pin="nopin" - # Write out new hcsecd config block - printf "\ndevice {\n\tbdaddr\t%s;\n\tname\t\"%s\";\n\tkey\tnokey\;\n\tpin\t%s\;\n}\n" \ - "${bdaddress}" "${friendlyname}" "${pin}" >> ${secd_config} + # Write out new hcsecd config block + printf "\ndevice {\n\tbdaddr\t%s;\n\tname\t\"%s\";\n\tkey\tnokey\;\n\tpin\t%s\;\n}\n" \ + "${bdaddress}" "${friendlyname}" "${pin}" >> ${secd_config} - # ... and make daemon reload config, TODO: hcsecd should provide a reload hook - /usr/sbin/service hcsecd restart + # ... and make daemon reload config + # TODO: hcsecd should provide a reload hook + /usr/sbin/service hcsecd onerestart - # TODO: we should check if hcsecd succeeded pairing and revert to an old version - # of hcsecd.conf so we can undo adding the block above and retry with a new PIN - # also, if there's a way to force devices to re-pair, try this + # TODO: we should check if hcsecd succeeded pairing and revert to an + # old version of hcsecd.conf so we can undo adding the block above and + # retry with a new PIN + # also, if there's a way to force devices to re-pair, try this fi # now check for specific services to be provided by the device # first up: HID -if /usr/sbin/sdpcontrol -a "${bdaddress}" search HID | \ - /usr/bin/grep -q "^Record Handle: "; then +/usr/sbin/sdpcontrol -a "${bdaddress}" search HID | \ + /usr/bin/grep -q "^Record Handle: " || exit 0 - printf "\nThis device provides human interface device services.\n" - read -p "Set it up? [yes]: " REPLY - case "${REPLY}" in no|n|NO|N|No|nO) ;; - *) - if ! /usr/sbin/service bthidd enabled; then - printf "\nWarning: bthidd is not enabled." - printf "\nThis daemon manages Bluetooth HID devices.\n" - read -p "Enable bthidd? [yes]: " REPLY - case "${REPLY}" in no|n|NO|N|No|nO) ;; *) /usr/sbin/sysrc bthidd_enable="YES";; esac - fi +printf "\nThis device provides human interface device services.\n" +read -p "Set it up? [yes]: " _r +case "${_r}" in + no|n|NO|N|No|nO) exit 0;; + *);; +esac - # Check if bthidd already knows about this device - bthidd_known=$( /usr/sbin/bthidcontrol -a "${bdaddress}" known | \ - /usr/bin/grep "${bdaddress}" ) - if [ "${bthidd_known}" ]; then - printf "Notice: Device %s already known to bthidd.\n" "${bdaddress}" - else - bthidd_config=$( /usr/sbin/sysrc -n bthidd_config ) - printf "Writing HID descriptor block to %s ... " "${bthidd_config}" - /usr/sbin/bthidcontrol -a "${bdaddress}" query >> "${bthidd_config}" +# Here we have found an HID and were asked to set it up +# NOTE: look out for the two exit 0 above if you extend this script - # Re-read config to see if we succeeded adding the device - bthidd_known=$( /usr/sbin/bthidcontrol -a "${bdaddress}" known | \ - grep "${bdaddress}" ) - if ! [ "${bthidd_known}" ]; then - printf "failed.\n" - else - printf "success.\nTo re-read its config, bthidd must be restarted.\n" - printf "Warning: If a Bluetooth keyboard is being used, the connection might be lost.\n" - printf "It can be manually restarted later with\n service bthidd restart\n" - read -p "Restart bthidd now? [yes]: " REPLY - case "${REPLY}" in no|n|NO|N|No|nO) ;; *) /usr/sbin/service bthidd restart;; esac - fi - fi - ;; - esac +if ! /usr/sbin/service bthidd enabled; then + printf "\nWarning: bthidd is not enabled." + printf "\nThis daemon manages Bluetooth HID devices.\n" + read -p "Enable bthidd? [yes]: " _r + case "${_r}" in + no|n|NO|N|No|nO) ;; + *) /usr/sbin/service bthidd enable;; + esac fi +# Check if bthidd already knows about this device +bthidd_known=$( /usr/sbin/bthidcontrol -a "${bdaddress}" known | \ + /usr/bin/grep "${bdaddress}" ) + +if [ "${bthidd_known}" ]; then + printf "Notice: Device %s already known to bthidd.\n" "${bdaddress}" + return 0 +fi + +bthidd_config=$( /usr/sbin/sysrc -n bthidd_config ) +printf "Writing HID descriptor block to %s ... " "${bthidd_config}" +/usr/sbin/bthidcontrol -a "${bdaddress}" query >> "${bthidd_config}" + +# Re-read config to see if we succeeded adding the device +bthidd_known=$( /usr/sbin/bthidcontrol -a "${bdaddress}" known | \ + grep "${bdaddress}" ) +if ! [ "${bthidd_known}" ]; then + printf "failed.\n" +else + printf "success.\nTo re-read its config, bthidd must be restarted.\n" + printf "Warning: If a Bluetooth keyboard is being used, the connection" + printf "might be lost.\n" + printf "It can be manually restarted later with\n" + printf " service bthidd restart\n" + read -p "Restart bthidd now? [yes]: " _r + case "${_r}" in + no|n|NO|N|No|nO) ;; + *) /usr/sbin/service bthidd onerestart;; + esac +fi + } # After function definitions, main() can use them main "$@" - -exit +exit 0 # TODO # * If device is a keyboard, offer a text entry test field and if it does From owner-svn-src-all@freebsd.org Wed Feb 13 14:36:28 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 46A7D14F113B; Wed, 13 Feb 2019 14:36:28 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E252C8C80C; Wed, 13 Feb 2019 14:36:27 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 393F9288DE; Wed, 13 Feb 2019 14:36:26 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DEaQAT040716; Wed, 13 Feb 2019 14:36:26 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DEaOM7040710; Wed, 13 Feb 2019 14:36:24 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131436.x1DEaOM7040710@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 14:36:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344097 - in stable/12/sys/dev: e1000 ixgbe ixl X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: in stable/12/sys/dev: e1000 ixgbe ixl X-SVN-Commit-Revision: 344097 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E252C8C80C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:36:28 -0000 Author: marius Date: Wed Feb 13 14:36:24 2019 New Revision: 344097 URL: https://svnweb.freebsd.org/changeset/base/344097 Log: MFC: r343369 intel iflib drivers: correct initialization of tx_cidx_processed From Jake: In r341156 ("Fix first-packet completion", 2018-11-28) a hack to work around a delta calculation determining how many descriptors were used was added to ixl_isc_tx_credits_update_dwb. The same fix was also applied to the em and igb drivers in r340310, and to ix in r341156. The hack checked the case where prev and cur were equal, and then added one. This works, because by the time we do the delta check, we already know there is at least one packet available, so the delta should be at least one. However, it's not a complete fix, and as indicated by the comment is really a hack to work around the real bug. The real problem is that the first time that we transmit a packet, tx_cidx_processed will be set to point to the start of the ring. Ultimately, the credits_update function expects it to point to the *last* descriptor that was processed. Since we haven't yet processed any descriptors, pointing it to 0 results in this incorrect calculation. Fix the initialization code to have it point to the end of the ring instead. One way to think about this, is that we are setting the value to be one prior to the first available descriptor. Doing so, corrects the delta calculation in all cases. The original fix only works if the first packet has exactly one descriptor. Otherwise, we will report 1 less than the correct value. As part of this fix, also update the MPASS assertions to match the real expectations. First, ensure that prev is not equal to cur, since this should never happen. Second, remove the assertion about prev==0 || delta != 0. It looks like that originated from when the em driver was converted to iflib. It seems like it was supposed to ensure that delta was non-zero. However, because we originally returned 0 delta for the first calculation, the "prev == 0" was tacked on. Instead, replace this with a check that delta is greater than zero, after the correction necessary when the ring pointers wrap around. This new solution should fix the same bug as r341156 did, but in a more robust way. Submitted by: Jacob Keller Reviewed by: shurd@ Differential Revision: https://reviews.freebsd.org/D18545 Modified: stable/12/sys/dev/e1000/em_txrx.c stable/12/sys/dev/e1000/if_em.c stable/12/sys/dev/e1000/igb_txrx.c stable/12/sys/dev/ixgbe/if_ix.c stable/12/sys/dev/ixgbe/if_ixv.c stable/12/sys/dev/ixgbe/ix_txrx.c stable/12/sys/dev/ixl/ixl_txrx.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/e1000/em_txrx.c ============================================================================== --- stable/12/sys/dev/e1000/em_txrx.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/e1000/em_txrx.c Wed Feb 13 14:36:24 2019 (r344097) @@ -457,16 +457,11 @@ em_isc_txd_credits_update(void *arg, uint16_t txqid, b prev = txr->tx_cidx_processed; ntxd = scctx->isc_ntxd[0]; do { + MPASS(prev != cur); delta = (int32_t)cur - (int32_t)prev; - /* - * XXX This appears to be a hack for first-packet. - * A correct fix would prevent prev == cur in the first place. - */ - MPASS(prev == 0 || delta != 0); - if (prev == 0 && cur == 0) - delta += 1; if (delta < 0) delta += ntxd; + MPASS(delta > 0); DPRINTF(iflib_get_dev(adapter->ctx), "%s: cidx_processed=%u cur=%u clear=%d delta=%d\n", __FUNCTION__, prev, cur, clear, delta); Modified: stable/12/sys/dev/e1000/if_em.c ============================================================================== --- stable/12/sys/dev/e1000/if_em.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/e1000/if_em.c Wed Feb 13 14:36:24 2019 (r344097) @@ -1210,6 +1210,7 @@ static void em_if_init(if_ctx_t ctx) { struct adapter *adapter = iflib_get_softc(ctx); + if_softc_ctx_t scctx = adapter->shared; struct ifnet *ifp = iflib_get_ifp(ctx); struct em_tx_queue *tx_que; int i; @@ -1242,7 +1243,14 @@ em_if_init(if_ctx_t ctx) for (i = 0, tx_que = adapter->tx_queues; i < adapter->tx_num_queues; i++, tx_que++) { struct tx_ring *txr = &tx_que->txr; - txr->tx_rs_cidx = txr->tx_rs_pidx = txr->tx_cidx_processed = 0; + txr->tx_rs_cidx = txr->tx_rs_pidx; + + /* Initialize the last processed descriptor to be the end of + * the ring, rather than the start, so that we avoid an + * off-by-one error when calculating how many descriptors are + * done in the credits_update function. + */ + txr->tx_cidx_processed = scctx->isc_ntxd[0] - 1; } /* Setup VLAN support, basic and offload if available */ Modified: stable/12/sys/dev/e1000/igb_txrx.c ============================================================================== --- stable/12/sys/dev/e1000/igb_txrx.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/e1000/igb_txrx.c Wed Feb 13 14:36:24 2019 (r344097) @@ -332,16 +332,11 @@ igb_isc_txd_credits_update(void *arg, uint16_t txqid, prev = txr->tx_cidx_processed; ntxd = scctx->isc_ntxd[0]; do { + MPASS(prev != cur); delta = (int32_t)cur - (int32_t)prev; - /* - * XXX This appears to be a hack for first-packet. - * A correct fix would prevent prev == cur in the first place. - */ - MPASS(prev == 0 || delta != 0); - if (prev == 0 && cur == 0) - delta += 1; if (delta < 0) delta += ntxd; + MPASS(delta > 0); processed += delta; prev = cur; Modified: stable/12/sys/dev/ixgbe/if_ix.c ============================================================================== --- stable/12/sys/dev/ixgbe/if_ix.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/ixgbe/if_ix.c Wed Feb 13 14:36:24 2019 (r344097) @@ -806,7 +806,8 @@ ixgbe_initialize_transmit_units(if_ctx_t ctx) IXGBE_WRITE_REG(hw, IXGBE_TDT(j), 0); /* Cache the tail address */ - txr->tx_rs_cidx = txr->tx_rs_pidx = txr->tx_cidx_processed = 0; + txr->tx_rs_cidx = txr->tx_rs_pidx; + txr->tx_cidx_processed = scctx->isc_ntxd[0] - 1; for (int k = 0; k < scctx->isc_ntxd[0]; k++) txr->tx_rsq[k] = QIDX_INVALID; Modified: stable/12/sys/dev/ixgbe/if_ixv.c ============================================================================== --- stable/12/sys/dev/ixgbe/if_ixv.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/ixgbe/if_ixv.c Wed Feb 13 14:36:24 2019 (r344097) @@ -1227,7 +1227,13 @@ ixv_initialize_transmit_units(if_ctx_t ctx) /* Set Tx Tail register */ txr->tail = IXGBE_VFTDT(j); - txr->tx_rs_cidx = txr->tx_rs_pidx = txr->tx_cidx_processed = 0; + txr->tx_rs_cidx = txr->tx_rs_pidx; + /* Initialize the last processed descriptor to be the end of + * the ring, rather than the start, so that we avoid an + * off-by-one error when calculating how many descriptors are + * done in the credits_update function. + */ + txr->tx_cidx_processed = scctx->isc_ntxd[0] - 1; for (int k = 0; k < scctx->isc_ntxd[0]; k++) txr->tx_rsq[k] = QIDX_INVALID; Modified: stable/12/sys/dev/ixgbe/ix_txrx.c ============================================================================== --- stable/12/sys/dev/ixgbe/ix_txrx.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/ixgbe/ix_txrx.c Wed Feb 13 14:36:24 2019 (r344097) @@ -296,11 +296,11 @@ ixgbe_isc_txd_credits_update(void *arg, uint16_t txqid prev = txr->tx_cidx_processed; ntxd = scctx->isc_ntxd[0]; do { + MPASS(prev != cur); delta = (int32_t)cur - (int32_t)prev; - if (prev == 0 && cur == 0) - delta += 1; if (delta < 0) delta += ntxd; + MPASS(delta > 0); processed += delta; prev = cur; Modified: stable/12/sys/dev/ixl/ixl_txrx.c ============================================================================== --- stable/12/sys/dev/ixl/ixl_txrx.c Wed Feb 13 14:32:14 2019 (r344096) +++ stable/12/sys/dev/ixl/ixl_txrx.c Wed Feb 13 14:36:24 2019 (r344097) @@ -515,16 +515,11 @@ ixl_isc_txd_credits_update_dwb(void *arg, uint16_t txq prev = txr->tx_cidx_processed; ntxd = scctx->isc_ntxd[0]; do { + MPASS(prev != cur); delta = (int32_t)cur - (int32_t)prev; - /* - * XXX This appears to be a hack for first-packet. - * A correct fix would prevent prev == cur in the first place. - */ - MPASS(prev == 0 || delta != 0); - if (prev == 0 && cur == 0) - delta += 1; if (delta < 0) delta += ntxd; + MPASS(delta > 0); #if 0 device_printf(iflib_get_dev(vsi->ctx), "%s: (q%d) cidx_processed=%u cur=%u clear=%d delta=%d\n", @@ -793,8 +788,15 @@ ixl_init_tx_rsqs(struct ixl_vsi *vsi) for (i = 0, tx_que = vsi->tx_queues; i < vsi->num_tx_queues; i++, tx_que++) { struct tx_ring *txr = &tx_que->txr; - txr->tx_rs_cidx = txr->tx_rs_pidx = txr->tx_cidx_processed = 0; + txr->tx_rs_cidx = txr->tx_rs_pidx; + /* Initialize the last processed descriptor to be the end of + * the ring, rather than the start, so that we avoid an + * off-by-one error when calculating how many descriptors are + * done in the credits_update function. + */ + txr->tx_cidx_processed = scctx->isc_ntxd[0] - 1; + for (j = 0; j < scctx->isc_ntxd[0]; j++) txr->tx_rsq[j] = QIDX_INVALID; } @@ -803,13 +805,14 @@ ixl_init_tx_rsqs(struct ixl_vsi *vsi) void ixl_init_tx_cidx(struct ixl_vsi *vsi) { + if_softc_ctx_t scctx = vsi->shared; struct ixl_tx_queue *tx_que; int i; for (i = 0, tx_que = vsi->tx_queues; i < vsi->num_tx_queues; i++, tx_que++) { struct tx_ring *txr = &tx_que->txr; - txr->tx_cidx_processed = 0; + txr->tx_cidx_processed = scctx->isc_ntxd[0] - 1; } } From owner-svn-src-all@freebsd.org Wed Feb 13 14:39:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E822914F11FD; Wed, 13 Feb 2019 14:39:17 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 97D148C9C1; Wed, 13 Feb 2019 14:39:17 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6B375288DF; Wed, 13 Feb 2019 14:39:17 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DEdHm6040880; Wed, 13 Feb 2019 14:39:17 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DEdHW0040878; Wed, 13 Feb 2019 14:39:17 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131439.x1DEdHW0040878@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 14:39:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344098 - stable/12/sys/dev/e1000 X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/dev/e1000 X-SVN-Commit-Revision: 344098 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 97D148C9C1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:39:18 -0000 Author: marius Date: Wed Feb 13 14:39:16 2019 New Revision: 344098 URL: https://svnweb.freebsd.org/changeset/base/344098 Log: MFC: r343934 - Remove the redundant device disabled hint handling; ever since r241119 that's performed globally by device_attach(9). - As for the EM-class of devices, em(4) supports multiple queues and MSI-X respectively only with 82574 devices. However, since the conversion to iflib(4), em(4) relies on the interrupt type fallback mechanism, i. e. MSI-X -> MSI -> INTx, of iflib(4) to figure out the interrupt type to use for the EM-class (as well as the IGB-class) of MACs. Moreover, despite the datasheet for 82583V not mentioning any support of MSI-X, there actually are 82583V devices out there that report a varying number of MSI-X messages as supported. The interrupt type fallback of iflib(4) is causing two failure modes depending on the actual number of MSI-X messages supported for such instances of 82583V: 1) With only one MSI-X message supported, none is left for the RX/TX queues as that one message gets assigned to the admin interrupt. Worse, later on - which will be addressed with a separate fix - iflib(4) interprets that one messages as MSI or INTx to be set up, but fails to actually do so as it has previously called pci_alloc_msix(9). [1, 2] 2) With more message supported, their distribution is okay but then em_if_msix_intr_assign() doesn't work for 82583V, with the interface being left in a non-working state, too. [3] Thus, let em_if_attach_pre() indicate to iflib(4) to try MSI-X with 82574 only, and at most MSI for the remainder of EM-class devices. While at it, remove "try_second_bar" as it's polarity inverted and not actually needed. - Remove code from em_if_timer() that effectively is a NOP since the conversion to iflib(4) ("trigger" is no longer read). While at it, let the comment for em_if_timer() reflect reality after said conversion. - Implement an ifdi_watchdog_reset method which only updates the em(4) "watchdog_events" counter but doesn't perform any reset, so that the em(4) "watchdog_timeouts" SYSCTL (iflib(4) doesn't provide a counterpart) reflects reality and these timeouts add to IFCOUNTER_OERRORS again after the iflib(4) conversion. - Remove the "mbuf_defrag_fail" and "tx_dma_fail" SYSCTLS; since the iflib(4) conversion, associated counters are disconnected, but iflib(4) provides "mbuf_defrag_failed" and "tx_map_failed" respectively as equivalents. - Move the description preceding lem_smartspeed() to the correct spot before em_reset() and bring back appropriate comments for {igb,em}_initialize_rss_mapping() and lem_smartspeed() lost in the iflib(4) conversion. - Adapt some other function descriptions and INIT_DEBUGOUT() use to match reality after the iflib(4) conversion. - Put the debugging message of em_enable_vectors_82574() (missed in r343578) under bootverbose, too. PR: 219428 [1], 235246 [2], 235147 [3] Reviewed by: erj (previous version) Differential Revision: https://reviews.freebsd.org/D19108 Modified: stable/12/sys/dev/e1000/if_em.c stable/12/sys/dev/e1000/if_em.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/e1000/if_em.c ============================================================================== --- stable/12/sys/dev/e1000/if_em.c Wed Feb 13 14:36:24 2019 (r344097) +++ stable/12/sys/dev/e1000/if_em.c Wed Feb 13 14:39:16 2019 (r344098) @@ -249,6 +249,7 @@ static int em_if_mtu_set(if_ctx_t ctx, uint32_t mtu); static void em_if_timer(if_ctx_t ctx, uint16_t qid); static void em_if_vlan_register(if_ctx_t ctx, u16 vtag); static void em_if_vlan_unregister(if_ctx_t ctx, u16 vtag); +static void em_if_watchdog_reset(if_ctx_t ctx); static void em_identify_hardware(if_ctx_t ctx); static int em_allocate_pci_resources(if_ctx_t ctx); @@ -386,6 +387,7 @@ static device_method_t em_if_methods[] = { DEVMETHOD(ifdi_mtu_set, em_if_mtu_set), DEVMETHOD(ifdi_promisc_set, em_if_set_promisc), DEVMETHOD(ifdi_timer, em_if_timer), + DEVMETHOD(ifdi_watchdog_reset, em_if_watchdog_reset), DEVMETHOD(ifdi_vlan_register, em_if_vlan_register), DEVMETHOD(ifdi_vlan_unregister, em_if_vlan_unregister), DEVMETHOD(ifdi_get_counter, em_if_get_counter), @@ -721,7 +723,6 @@ em_set_num_queues(if_ctx_t ctx) * * return 0 on success, positive on failure *********************************************************************/ - static int em_if_attach_pre(if_ctx_t ctx) { @@ -731,15 +732,10 @@ em_if_attach_pre(if_ctx_t ctx) struct e1000_hw *hw; int error = 0; - INIT_DEBUGOUT("em_if_attach_pre begin"); + INIT_DEBUGOUT("em_if_attach_pre: begin"); dev = iflib_get_dev(ctx); adapter = iflib_get_softc(ctx); - if (resource_disabled("em", device_get_unit(dev))) { - device_printf(dev, "Disabled by device hint\n"); - return (ENXIO); - } - adapter->ctx = adapter->osdep.ctx = ctx; adapter->dev = adapter->osdep.dev = dev; scctx = adapter->shared = iflib_get_softc_ctx(ctx); @@ -777,7 +773,6 @@ em_if_attach_pre(if_ctx_t ctx) /* Determine hardware and mac info */ em_identify_hardware(ctx); - scctx->isc_msix_bar = PCIR_BAR(EM_MSIX_BAR); scctx->isc_tx_nsegments = EM_MAX_SCATTER; scctx->isc_nrxqsets_max = scctx->isc_ntxqsets_max = em_set_num_queues(ctx); if (bootverbose) @@ -785,8 +780,6 @@ em_if_attach_pre(if_ctx_t ctx) scctx->isc_ntxqsets_max); if (adapter->hw.mac.type >= igb_mac_min) { - int try_second_bar; - scctx->isc_txqsizes[0] = roundup2(scctx->isc_ntxd[0] * sizeof(union e1000_adv_tx_desc), EM_DBA_ALIGN); scctx->isc_rxqsizes[0] = roundup2(scctx->isc_nrxd[0] * sizeof(union e1000_adv_rx_desc), EM_DBA_ALIGN); scctx->isc_txd_size[0] = sizeof(union e1000_adv_tx_desc); @@ -800,14 +793,13 @@ em_if_attach_pre(if_ctx_t ctx) CSUM_IP6_TCP | CSUM_IP6_UDP; if (adapter->hw.mac.type != e1000_82575) scctx->isc_tx_csum_flags |= CSUM_SCTP | CSUM_IP6_SCTP; - /* ** Some new devices, as with ixgbe, now may ** use a different BAR, so we need to keep ** track of which is used. */ - try_second_bar = pci_read_config(dev, scctx->isc_msix_bar, 4); - if (try_second_bar == 0) + scctx->isc_msix_bar = PCIR_BAR(EM_MSIX_BAR); + if (pci_read_config(dev, scctx->isc_msix_bar, 4) == 0) scctx->isc_msix_bar += 4; } else if (adapter->hw.mac.type >= em_mac_min) { scctx->isc_txqsizes[0] = roundup2(scctx->isc_ntxd[0]* sizeof(struct e1000_tx_desc), EM_DBA_ALIGN); @@ -837,6 +829,16 @@ em_if_attach_pre(if_ctx_t ctx) */ scctx->isc_capenable &= ~(IFCAP_TSO4 | IFCAP_VLAN_HWTSO); scctx->isc_tx_csum_flags = CSUM_TCP | CSUM_UDP | CSUM_IP_TSO; + /* + * We support MSI-X with 82574 only, but indicate to iflib(4) + * that it shall give MSI at least a try with other devices. + */ + if (adapter->hw.mac.type == e1000_82574) { + scctx->isc_msix_bar = PCIR_BAR(EM_MSIX_BAR); + } else { + scctx->isc_msix_bar = -1; + scctx->isc_disable_msix = 1; + } } else { scctx->isc_txqsizes[0] = roundup2((scctx->isc_ntxd[0] + 1) * sizeof(struct e1000_tx_desc), EM_DBA_ALIGN); scctx->isc_rxqsizes[0] = roundup2((scctx->isc_nrxd[0] + 1) * sizeof(struct e1000_rx_desc), EM_DBA_ALIGN); @@ -847,6 +849,7 @@ em_if_attach_pre(if_ctx_t ctx) scctx->isc_capabilities = scctx->isc_capenable = LEM_CAPS; if (adapter->hw.mac.type < e1000_82543) scctx->isc_capenable &= ~(IFCAP_HWCSUM|IFCAP_VLAN_HWCSUM); + /* INTx only */ scctx->isc_msix_bar = 0; } @@ -1092,13 +1095,12 @@ err_late: * * return 0 on success, positive on failure *********************************************************************/ - static int em_if_detach(if_ctx_t ctx) { struct adapter *adapter = iflib_get_softc(ctx); - INIT_DEBUGOUT("em_detach: begin"); + INIT_DEBUGOUT("em_if_detach: begin"); e1000_phy_hw_reset(&adapter->hw); @@ -1203,9 +1205,7 @@ em_if_mtu_set(if_ctx_t ctx, uint32_t mtu) * by the driver as a hw/sw initialization routine to get to a * consistent state. * - * return 0 on success, positive on failure **********************************************************************/ - static void em_if_init(if_ctx_t ctx) { @@ -1214,6 +1214,7 @@ em_if_init(if_ctx_t ctx) struct ifnet *ifp = iflib_get_ifp(ctx); struct em_tx_queue *tx_que; int i; + INIT_DEBUGOUT("em_if_init: begin"); /* Get the latest mac address, User can use a LAA */ @@ -1697,37 +1698,24 @@ em_if_multi_set(if_ctx_t ctx) } } - /********************************************************************* * Timer routine * - * This routine checks for link status and updates statistics. + * This routine schedules em_if_update_admin_status() to check for + * link status and to gather statistics as well as to perform some + * controller-specific hardware patting. * **********************************************************************/ - static void em_if_timer(if_ctx_t ctx, uint16_t qid) { - struct adapter *adapter = iflib_get_softc(ctx); - struct em_rx_queue *que; - int i; - int trigger = 0; if (qid != 0) return; iflib_admin_intr_deferred(ctx); - - /* Mask to use in the irq trigger */ - if (adapter->intr_type == IFLIB_INTR_MSIX) { - for (i = 0, que = adapter->rx_queues; i < adapter->rx_num_queues; i++, que++) - trigger |= que->eims; - } else { - trigger = E1000_ICS_RXDMT0; - } } - static void em_if_update_admin_status(if_ctx_t ctx) { @@ -1833,21 +1821,30 @@ em_if_update_admin_status(if_ctx_t ctx) E1000_WRITE_REG(&adapter->hw, E1000_IMS, EM_MSIX_LINK | E1000_IMS_LSC); } +static void +em_if_watchdog_reset(if_ctx_t ctx) +{ + struct adapter *adapter = iflib_get_softc(ctx); + + /* + * Just count the event; iflib(4) will already trigger a + * sufficient reset of the controller. + */ + adapter->watchdog_events++; +} + /********************************************************************* * * This routine disables all traffic on the adapter by issuing a - * global reset on the MAC and deallocates TX/RX buffers. + * global reset on the MAC. * - * This routine should always be called with BOTH the CORE - * and TX locks. **********************************************************************/ - static void em_if_stop(if_ctx_t ctx) { struct adapter *adapter = iflib_get_softc(ctx); - INIT_DEBUGOUT("em_stop: begin"); + INIT_DEBUGOUT("em_if_stop: begin"); e1000_reset_hw(&adapter->hw); if (adapter->hw.mac.type >= e1000_82544) @@ -1857,7 +1854,6 @@ em_if_stop(if_ctx_t ctx) e1000_cleanup_led(&adapter->hw); } - /********************************************************************* * * Determine hardware revision. @@ -2226,11 +2222,9 @@ em_setup_msix(if_ctx_t ctx) /********************************************************************* * - * Initialize the hardware to a configuration - * as specified by the adapter structure. + * Workaround for SmartSpeed on 82541 and 82547 controllers * **********************************************************************/ - static void lem_smartspeed(struct adapter *adapter) { @@ -2395,6 +2389,12 @@ igb_init_dmac(struct adapter *adapter, u32 pba) } } +/********************************************************************* + * + * Initialize the hardware to a configuration as specified by the + * adapter structure. + * + **********************************************************************/ static void em_reset(if_ctx_t ctx) { @@ -2629,6 +2629,11 @@ em_reset(if_ctx_t ctx) e1000_check_for_link(hw); } +/* + * Initialise the RSS mapping for NICs that support multiple transmit/ + * receive rings. + */ + #define RSSKEYLEN 10 static void em_initialize_rss_mapping(struct adapter *adapter) @@ -2669,7 +2674,6 @@ em_initialize_rss_mapping(struct adapter *adapter) E1000_MRQC_RSS_FIELD_IPV6_TCP_EX | E1000_MRQC_RSS_FIELD_IPV6_EX | E1000_MRQC_RSS_FIELD_IPV6); - } static void @@ -2769,7 +2773,7 @@ igb_initialize_rss_mapping(struct adapter *adapter) /********************************************************************* * - * Setup networking device structure and register an interface. + * Setup networking device structure and register interface media. * **********************************************************************/ static int @@ -4015,12 +4019,6 @@ em_add_hw_stats(struct adapter *adapter) SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "link_irq", CTLFLAG_RD, &adapter->link_irq, "Link MSI-X IRQ Handled"); - SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "mbuf_defrag_fail", - CTLFLAG_RD, &adapter->mbuf_defrag_failed, - "Defragmenting mbuf chain failed"); - SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "tx_dma_fail", - CTLFLAG_RD, &adapter->no_tx_dma_setup, - "Driver tx dma failure in xmit"); SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "rx_overruns", CTLFLAG_RD, &adapter->rx_overruns, "RX overruns"); @@ -4543,7 +4541,8 @@ em_enable_vectors_82574(if_ctx_t ctx) u16 edata; e1000_read_nvm(hw, EM_NVM_PCIE_CTRL, 1, &edata); - printf("Current cap: %#06x\n", edata); + if (bootverbose) + device_printf(dev, "EM_NVM_PCIE_CTRL = %#06x\n", edata); if (((edata & EM_NVM_MSIX_N_MASK) >> EM_NVM_MSIX_N_SHIFT) != 4) { device_printf(dev, "Writing to eeprom: increasing " "reported MSI-X vectors from 3 to 5...\n"); Modified: stable/12/sys/dev/e1000/if_em.h ============================================================================== --- stable/12/sys/dev/e1000/if_em.h Wed Feb 13 14:36:24 2019 (r344097) +++ stable/12/sys/dev/e1000/if_em.h Wed Feb 13 14:39:16 2019 (r344098) @@ -519,7 +519,6 @@ struct adapter { u64 que_mask; - struct em_int_delay_info tx_int_delay; struct em_int_delay_info tx_abs_int_delay; struct em_int_delay_info rx_int_delay; @@ -529,9 +528,6 @@ struct adapter { /* Misc stats maintained by the driver */ unsigned long dropped_pkts; unsigned long link_irq; - unsigned long mbuf_defrag_failed; - unsigned long no_tx_dma_setup; - unsigned long no_tx_map_avail; unsigned long rx_overruns; unsigned long watchdog_events; From owner-svn-src-all@freebsd.org Wed Feb 13 14:58:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B4F2D14F1CD2; Wed, 13 Feb 2019 14:58:00 +0000 (UTC) (envelope-from rrs@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5178A8DBE8; Wed, 13 Feb 2019 14:58:00 +0000 (UTC) (envelope-from rrs@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2740528C3C; Wed, 13 Feb 2019 14:58:00 +0000 (UTC) (envelope-from rrs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DEvx3j051535; Wed, 13 Feb 2019 14:57:59 GMT (envelope-from rrs@FreeBSD.org) Received: (from rrs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DEvx9V051533; Wed, 13 Feb 2019 14:57:59 GMT (envelope-from rrs@FreeBSD.org) Message-Id: <201902131457.x1DEvx9V051533@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rrs set sender to rrs@FreeBSD.org using -f From: Randall Stewart Date: Wed, 13 Feb 2019 14:57:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344099 - head/sys/net X-SVN-Group: head X-SVN-Commit-Author: rrs X-SVN-Commit-Paths: head/sys/net X-SVN-Commit-Revision: 344099 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5178A8DBE8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 14:58:00 -0000 Author: rrs Date: Wed Feb 13 14:57:59 2019 New Revision: 344099 URL: https://svnweb.freebsd.org/changeset/base/344099 Log: This commit adds the missing release mechanism for the ratelimiting code. The two modules (lagg and vlan) did have allocation routines, and even though they are indirect (and vector down to the underlying interfaces) they both need to have a free routine (that also vectors down to the actual interface). Sponsored by: Netflix Inc. Differential Revision: https://reviews.freebsd.org/D19032 Modified: head/sys/net/if_lagg.c head/sys/net/if_vlan.c Modified: head/sys/net/if_lagg.c ============================================================================== --- head/sys/net/if_lagg.c Wed Feb 13 14:39:16 2019 (r344098) +++ head/sys/net/if_lagg.c Wed Feb 13 14:57:59 2019 (r344099) @@ -133,6 +133,7 @@ static int lagg_ioctl(struct ifnet *, u_long, caddr_t) static int lagg_snd_tag_alloc(struct ifnet *, union if_snd_tag_alloc_params *, struct m_snd_tag **); +static void lagg_snd_tag_free(struct m_snd_tag *); #endif static int lagg_setmulti(struct lagg_port *); static int lagg_clrmulti(struct lagg_port *); @@ -514,6 +515,7 @@ lagg_clone_create(struct if_clone *ifc, int unit, cadd ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST | IFF_MULTICAST; #ifdef RATELIMIT ifp->if_snd_tag_alloc = lagg_snd_tag_alloc; + ifp->if_snd_tag_free = lagg_snd_tag_free; #endif ifp->if_capenable = ifp->if_capabilities = IFCAP_HWSTATS; @@ -1568,6 +1570,13 @@ lagg_snd_tag_alloc(struct ifnet *ifp, /* forward allocation request */ return (ifp->if_snd_tag_alloc(ifp, params, ppmt)); } + +static void +lagg_snd_tag_free(struct m_snd_tag *tag) +{ + tag->ifp->if_snd_tag_free(tag); +} + #endif static int Modified: head/sys/net/if_vlan.c ============================================================================== --- head/sys/net/if_vlan.c Wed Feb 13 14:39:16 2019 (r344098) +++ head/sys/net/if_vlan.c Wed Feb 13 14:57:59 2019 (r344099) @@ -267,6 +267,7 @@ static int vlan_ioctl(struct ifnet *ifp, u_long cmd, c #ifdef RATELIMIT static int vlan_snd_tag_alloc(struct ifnet *, union if_snd_tag_alloc_params *, struct m_snd_tag **); +static void vlan_snd_tag_free(struct m_snd_tag *); #endif static void vlan_qflush(struct ifnet *ifp); static int vlan_setflag(struct ifnet *ifp, int flag, int status, @@ -1047,6 +1048,7 @@ vlan_clone_create(struct if_clone *ifc, char *name, si ifp->if_ioctl = vlan_ioctl; #ifdef RATELIMIT ifp->if_snd_tag_alloc = vlan_snd_tag_alloc; + ifp->if_snd_tag_free = vlan_snd_tag_free; #endif ifp->if_flags = VLAN_IFFLAGS; ether_ifattach(ifp, eaddr); @@ -1933,5 +1935,11 @@ vlan_snd_tag_alloc(struct ifnet *ifp, return (EOPNOTSUPP); /* forward allocation request */ return (ifp->if_snd_tag_alloc(ifp, params, ppmt)); +} + +static void +vlan_snd_tag_free(struct m_snd_tag *tag) +{ + tag->ifp->if_snd_tag_free(tag); } #endif From owner-svn-src-all@freebsd.org Wed Feb 13 15:19:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5036214CE594; Wed, 13 Feb 2019 15:19:33 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E2F408ECDB; Wed, 13 Feb 2019 15:19:32 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B796128F8B; Wed, 13 Feb 2019 15:19:32 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DFJWJ9061601; Wed, 13 Feb 2019 15:19:32 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DFJWtr061598; Wed, 13 Feb 2019 15:19:32 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131519.x1DFJWtr061598@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 15:19:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344100 - stable/12/sys/dev/ixgbe X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/dev/ixgbe X-SVN-Commit-Revision: 344100 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E2F408ECDB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 15:19:33 -0000 Author: marius Date: Wed Feb 13 15:19:31 2019 New Revision: 344100 URL: https://svnweb.freebsd.org/changeset/base/344100 Log: MFC: r343621 ix(4): Run {mod,msf,mbx,fdir,phy}_task in if_update_admin_status From Piotr: This patch introduces adapter->task_requests register responsible for recording requests for mod_task, msf_task, mbx_task, fdir_task and phy_task calls. Instead of enqueueing these tasks with GROUPTASK_ENQUEUE, handlers will be called directly from ixgbe_if_update_admin_status() while holding ctx lock. SIOCGIFXMEDIA ioctl() call reads adapter->media list. The list is deleted and rewritten in ixgbe_handle_msf() task without holding ctx lock. This change is needed to maintain data coherency when sharing adapter info via ioctl() calls. Patch co-authored by Krzysztof Galazka . PR: 221317 Submitted by: Piotr Pietruszewski Reviewed by: sbruno@, IntelNetworking Differential Revision: https://reviews.freebsd.org/D18468 Modified: stable/12/sys/dev/ixgbe/if_ix.c stable/12/sys/dev/ixgbe/ixgbe.h stable/12/sys/dev/ixgbe/ixgbe_type.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ixgbe/if_ix.c ============================================================================== --- stable/12/sys/dev/ixgbe/if_ix.c Wed Feb 13 14:57:59 2019 (r344099) +++ stable/12/sys/dev/ixgbe/if_ix.c Wed Feb 13 15:19:31 2019 (r344100) @@ -120,6 +120,7 @@ static int ixgbe_if_resume(if_ctx_t ctx); static void ixgbe_if_stop(if_ctx_t ctx); void ixgbe_if_enable_intr(if_ctx_t ctx); static void ixgbe_if_disable_intr(if_ctx_t ctx); +static void ixgbe_link_intr_enable(if_ctx_t ctx); static int ixgbe_if_rx_queue_intr_enable(if_ctx_t ctx, uint16_t qid); static void ixgbe_if_media_status(if_ctx_t ctx, struct ifmediareq * ifmr); static int ixgbe_if_media_change(if_ctx_t ctx); @@ -173,7 +174,7 @@ static void ixgbe_init_device_features(struct adapter static void ixgbe_check_fan_failure(struct adapter *, u32, bool); static void ixgbe_add_media_types(if_ctx_t ctx); static void ixgbe_update_stats_counters(struct adapter *adapter); -static void ixgbe_config_link(struct adapter *adapter); +static void ixgbe_config_link(if_ctx_t ctx); static void ixgbe_get_slot_info(struct adapter *); static void ixgbe_check_wol_support(struct adapter *adapter); static void ixgbe_enable_rx_drop(struct adapter *); @@ -254,6 +255,7 @@ static device_method_t ixgbe_if_methods[] = { DEVMETHOD(ifdi_msix_intr_assign, ixgbe_if_msix_intr_assign), DEVMETHOD(ifdi_intr_enable, ixgbe_if_enable_intr), DEVMETHOD(ifdi_intr_disable, ixgbe_if_disable_intr), + DEVMETHOD(ifdi_link_intr_enable, ixgbe_link_intr_enable), DEVMETHOD(ifdi_tx_queue_intr_enable, ixgbe_if_rx_queue_intr_enable), DEVMETHOD(ifdi_rx_queue_intr_enable, ixgbe_if_rx_queue_intr_enable), DEVMETHOD(ifdi_tx_queues_alloc, ixgbe_if_tx_queues_alloc), @@ -446,19 +448,6 @@ ixgbe_if_tx_queues_alloc(if_ctx_t ctx, caddr_t *vaddrs } - iflib_config_gtask_init(ctx, &adapter->mod_task, ixgbe_handle_mod, - "mod_task"); - iflib_config_gtask_init(ctx, &adapter->msf_task, ixgbe_handle_msf, - "msf_task"); - iflib_config_gtask_init(ctx, &adapter->phy_task, ixgbe_handle_phy, - "phy_task"); - if (adapter->feat_cap & IXGBE_FEATURE_SRIOV) - iflib_config_gtask_init(ctx, &adapter->mbx_task, - ixgbe_handle_mbx, "mbx_task"); - if (adapter->feat_en & IXGBE_FEATURE_FDIR) - iflib_config_gtask_init(ctx, &adapter->fdir_task, - ixgbe_reinit_fdir, "fdir_task"); - device_printf(iflib_get_dev(ctx), "allocated for %d queues\n", adapter->num_tx_queues); @@ -1362,8 +1351,9 @@ ixgbe_is_sfp(struct ixgbe_hw *hw) * ixgbe_config_link ************************************************************************/ static void -ixgbe_config_link(struct adapter *adapter) +ixgbe_config_link(if_ctx_t ctx) { + struct adapter *adapter = iflib_get_softc(ctx); struct ixgbe_hw *hw = &adapter->hw; u32 autoneg, err = 0; bool sfp, negotiate; @@ -1371,7 +1361,8 @@ ixgbe_config_link(struct adapter *adapter) sfp = ixgbe_is_sfp(hw); if (sfp) { - GROUPTASK_ENQUEUE(&adapter->mod_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MOD; + iflib_admin_intr_deferred(ctx); } else { if (hw->mac.ops.check_link) err = ixgbe_check_link(hw, &adapter->link_speed, @@ -1388,7 +1379,6 @@ ixgbe_config_link(struct adapter *adapter) err = hw->mac.ops.setup_link(hw, autoneg, adapter->link_up); } - } /* ixgbe_config_link */ /************************************************************************ @@ -2096,8 +2086,6 @@ ixgbe_if_media_status(if_ctx_t ctx, struct ifmediareq INIT_DEBUGOUT("ixgbe_if_media_status: begin"); - iflib_admin_intr_deferred(ctx); - ifmr->ifm_status = IFM_AVALID; ifmr->ifm_active = IFM_ETHER; @@ -2386,7 +2374,7 @@ ixgbe_msix_link(void *arg) /* Link status change */ if (eicr & IXGBE_EICR_LSC) { IXGBE_WRITE_REG(hw, IXGBE_EIMC, IXGBE_EIMC_LSC); - iflib_admin_intr_deferred(adapter->ctx); + adapter->task_requests |= IXGBE_REQUEST_TASK_LSC; } if (adapter->hw.mac.type != ixgbe_mac_82598EB) { @@ -2397,7 +2385,7 @@ ixgbe_msix_link(void *arg) return (FILTER_HANDLED); /* Disable the interrupt */ IXGBE_WRITE_REG(hw, IXGBE_EIMC, IXGBE_EICR_FLOW_DIR); - GROUPTASK_ENQUEUE(&adapter->fdir_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_FDIR; } else if (eicr & IXGBE_EICR_ECC) { device_printf(iflib_get_dev(adapter->ctx), @@ -2441,7 +2429,7 @@ ixgbe_msix_link(void *arg) /* Check for VF message */ if ((adapter->feat_en & IXGBE_FEATURE_SRIOV) && (eicr & IXGBE_EICR_MAILBOX)) - GROUPTASK_ENQUEUE(&adapter->mbx_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MBX; } if (ixgbe_is_sfp(hw)) { @@ -2453,16 +2441,14 @@ ixgbe_msix_link(void *arg) if (eicr & eicr_mask) { IXGBE_WRITE_REG(hw, IXGBE_EICR, eicr_mask); - if (atomic_cmpset_acq_int(&adapter->sfp_reinit, 0, 1)) - GROUPTASK_ENQUEUE(&adapter->mod_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MOD; } if ((hw->mac.type == ixgbe_mac_82599EB) && (eicr & IXGBE_EICR_GPI_SDP1_BY_MAC(hw))) { IXGBE_WRITE_REG(hw, IXGBE_EICR, IXGBE_EICR_GPI_SDP1_BY_MAC(hw)); - if (atomic_cmpset_acq_int(&adapter->sfp_reinit, 0, 1)) - GROUPTASK_ENQUEUE(&adapter->msf_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MSF; } } @@ -2476,13 +2462,10 @@ ixgbe_msix_link(void *arg) if ((hw->phy.type == ixgbe_phy_x550em_ext_t) && (eicr & IXGBE_EICR_GPI_SDP0_X540)) { IXGBE_WRITE_REG(hw, IXGBE_EICR, IXGBE_EICR_GPI_SDP0_X540); - GROUPTASK_ENQUEUE(&adapter->phy_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_PHY; } - /* Re-enable other interrupts */ - IXGBE_WRITE_REG(hw, IXGBE_EIMS, IXGBE_EIMS_OTHER); - - return (FILTER_HANDLED); + return (adapter->task_requests != 0) ? FILTER_SCHEDULE_THREAD : FILTER_HANDLED; } /* ixgbe_msix_link */ /************************************************************************ @@ -2646,12 +2629,6 @@ ixgbe_if_detach(if_ctx_t ctx) return (EBUSY); } - iflib_config_gtask_deinit(&adapter->mod_task); - iflib_config_gtask_deinit(&adapter->msf_task); - iflib_config_gtask_deinit(&adapter->phy_task); - if (adapter->feat_cap & IXGBE_FEATURE_SRIOV) - iflib_config_gtask_deinit(&adapter->mbx_task); - ixgbe_setup_low_power_mode(ctx); /* let hardware know driver is unloading */ @@ -2910,6 +2887,12 @@ ixgbe_if_init(if_ctx_t ctx) /* Configure RX settings */ ixgbe_initialize_receive_units(ctx); + /* + * Initialize variable holding task enqueue requests + * from MSI-X interrupts + */ + adapter->task_requests = 0; + /* Enable SDP & MSI-X interrupts based on adapter */ ixgbe_config_gpie(adapter); @@ -3011,7 +2994,7 @@ ixgbe_if_init(if_ctx_t ctx) ixgbe_set_phy_power(hw, TRUE); /* Config/Enable Link */ - ixgbe_config_link(adapter); + ixgbe_config_link(ctx); /* Hardware Packet Buffer & Flow Control setup */ ixgbe_config_delay_values(adapter); @@ -3374,7 +3357,6 @@ ixgbe_handle_mod(void *context) device_t dev = iflib_get_dev(ctx); u32 err, cage_full = 0; - adapter->sfp_reinit = 1; if (adapter->hw.need_crosstalk_fix) { switch (hw->mac.type) { case ixgbe_mac_82599EB: @@ -3411,11 +3393,11 @@ ixgbe_handle_mod(void *context) "Setup failure - unsupported SFP+ module type.\n"); goto handle_mod_out; } - GROUPTASK_ENQUEUE(&adapter->msf_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MSF; return; handle_mod_out: - adapter->sfp_reinit = 0; + adapter->task_requests &= ~(IXGBE_REQUEST_TASK_MSF); } /* ixgbe_handle_mod */ @@ -3431,9 +3413,6 @@ ixgbe_handle_msf(void *context) u32 autoneg; bool negotiate; - if (adapter->sfp_reinit != 1) - return; - /* get_supported_phy_layer will call hw->phy.ops.identify_sfp() */ adapter->phy_layer = ixgbe_get_supported_physical_layer(hw); @@ -3447,8 +3426,6 @@ ixgbe_handle_msf(void *context) ifmedia_removeall(adapter->media); ixgbe_add_media_types(adapter->ctx); ifmedia_set(adapter->media, IFM_ETHER | IFM_AUTO); - - adapter->sfp_reinit = 0; } /* ixgbe_handle_msf */ /************************************************************************ @@ -3543,10 +3520,20 @@ ixgbe_if_update_admin_status(if_ctx_t ctx) } } - ixgbe_update_stats_counters(adapter); + /* Handle task requests from msix_link() */ + if (adapter->task_requests & IXGBE_REQUEST_TASK_MOD) + ixgbe_handle_mod(ctx); + if (adapter->task_requests & IXGBE_REQUEST_TASK_MSF) + ixgbe_handle_msf(ctx); + if (adapter->task_requests & IXGBE_REQUEST_TASK_MBX) + ixgbe_handle_mbx(ctx); + if (adapter->task_requests & IXGBE_REQUEST_TASK_FDIR) + ixgbe_reinit_fdir(ctx); + if (adapter->task_requests & IXGBE_REQUEST_TASK_PHY) + ixgbe_handle_phy(ctx); + adapter->task_requests = 0; - /* Re-enable link interrupts */ - IXGBE_WRITE_REG(&adapter->hw, IXGBE_EIMS, IXGBE_EIMS_LSC); + ixgbe_update_stats_counters(adapter); } /* ixgbe_if_update_admin_status */ /************************************************************************ @@ -3682,6 +3669,18 @@ ixgbe_if_disable_intr(if_ctx_t ctx) } /* ixgbe_if_disable_intr */ /************************************************************************ + * ixgbe_link_intr_enable + ************************************************************************/ +static void +ixgbe_link_intr_enable(if_ctx_t ctx) +{ + struct ixgbe_hw *hw = &((struct adapter *)iflib_get_softc(ctx))->hw; + + /* Re-enable other interrupts */ + IXGBE_WRITE_REG(hw, IXGBE_EIMS, IXGBE_EIMS_OTHER | IXGBE_EIMS_LSC); +} /* ixgbe_link_intr_enable */ + +/************************************************************************ * ixgbe_if_rx_queue_intr_enable ************************************************************************/ static int @@ -3784,22 +3783,21 @@ ixgbe_intr(void *arg) if (eicr & eicr_mask) { IXGBE_WRITE_REG(hw, IXGBE_EICR, eicr_mask); - GROUPTASK_ENQUEUE(&adapter->mod_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MOD; } if ((hw->mac.type == ixgbe_mac_82599EB) && (eicr & IXGBE_EICR_GPI_SDP1_BY_MAC(hw))) { IXGBE_WRITE_REG(hw, IXGBE_EICR, IXGBE_EICR_GPI_SDP1_BY_MAC(hw)); - if (atomic_cmpset_acq_int(&adapter->sfp_reinit, 0, 1)) - GROUPTASK_ENQUEUE(&adapter->msf_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_MSF; } } /* External PHY interrupt */ if ((hw->phy.type == ixgbe_phy_x550em_ext_t) && (eicr & IXGBE_EICR_GPI_SDP0_X540)) - GROUPTASK_ENQUEUE(&adapter->phy_task); + adapter->task_requests |= IXGBE_REQUEST_TASK_PHY; return (FILTER_SCHEDULE_THREAD); } /* ixgbe_intr */ Modified: stable/12/sys/dev/ixgbe/ixgbe.h ============================================================================== --- stable/12/sys/dev/ixgbe/ixgbe.h Wed Feb 13 14:57:59 2019 (r344099) +++ stable/12/sys/dev/ixgbe/ixgbe.h Wed Feb 13 15:19:31 2019 (r344100) @@ -428,16 +428,11 @@ struct adapter { /* Support for pluggable optics */ bool sfp_probe; - struct grouptask mod_task; /* SFP tasklet */ - struct grouptask msf_task; /* Multispeed Fiber */ - struct grouptask mbx_task; /* VF -> PF mailbox interrupt */ - int sfp_reinit; /* Flow Director */ int fdir_reinit; - struct grouptask fdir_task; - struct grouptask phy_task; /* PHY intr tasklet */ + u32 task_requests; /* * Queues: Modified: stable/12/sys/dev/ixgbe/ixgbe_type.h ============================================================================== --- stable/12/sys/dev/ixgbe/ixgbe_type.h Wed Feb 13 14:57:59 2019 (r344099) +++ stable/12/sys/dev/ixgbe/ixgbe_type.h Wed Feb 13 15:19:31 2019 (r344100) @@ -4427,4 +4427,11 @@ struct ixgbe_bypass_eeprom { #define IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD \ (0x1F << IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD_SHIFT) +#define IXGBE_REQUEST_TASK_MOD 0x01 +#define IXGBE_REQUEST_TASK_MSF 0x02 +#define IXGBE_REQUEST_TASK_MBX 0x04 +#define IXGBE_REQUEST_TASK_FDIR 0x08 +#define IXGBE_REQUEST_TASK_PHY 0x10 +#define IXGBE_REQUEST_TASK_LSC 0x20 + #endif /* _IXGBE_TYPE_H_ */ From owner-svn-src-all@freebsd.org Wed Feb 13 15:27:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D291014CEF01; Wed, 13 Feb 2019 15:27:18 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 71E5A8F569; Wed, 13 Feb 2019 15:27:18 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5E64F29144; Wed, 13 Feb 2019 15:27:18 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DFRIan066935; Wed, 13 Feb 2019 15:27:18 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DFRHuO066933; Wed, 13 Feb 2019 15:27:17 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131527.x1DFRHuO066933@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 15:27:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344101 - stable/12/sys/dev/ixgbe X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/dev/ixgbe X-SVN-Commit-Revision: 344101 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 71E5A8F569 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 15:27:19 -0000 Author: marius Date: Wed Feb 13 15:27:17 2019 New Revision: 344101 URL: https://svnweb.freebsd.org/changeset/base/344101 Log: MFC: r343622 ix(4),ixv(4): Fix TSO offloads when TXCSUM is disabled This patch and commit message are based on r340256 created by Jacob Keller: The iflib stack does not disable TSO automatically when TXCSUM is disabled, instead assuming that the driver will correctly handle TSOs even when CSUM_IP is not set. This results in iflib calling ixgbe_isc_txd_encap with packets which have CSUM_IP_TSO, but do not have CSUM_IP or CSUM_IP_TCP set. Because of this, ixgbe_tx_ctx_setup will not setup the IPv4 checksum offloading. This results in bad TSO packets being sent if a user disables TXCSUM without disabling TSO. Fix this by updating the ixgbe_tx_ctx_setup function to check both CSUM_IP and CSUM_IP_TSO when deciding whether to enable checksums. Once this is corrected, another issue for TSO packets is revealed. The driver sets IFLIB_NEED_ZERO_CSUM in order to enable a work around that causes the ip->sum field to be zero'd. This is necessary for ix hardware to correctly perform TSOs. However, if TXCSUM is disabled, then the work around is not enabled, as CSUM_IP will not be set when the iflib stack checks to see if it should clear the sum field. Fix this by adding IFLIB_TSO_INIT_IP to the iflib flags for the ix and ixv interface files. Once both of these changes are made, the ix and ixv drivers should correctly offload TSO packets when TSO offload is enabled, regardless of whether TXCSUM is enabled or disabled. Submitted by: Piotr Pietruszewski Reviewed by: IntelNetworking Differential Revision: https://reviews.freebsd.org/D18470 Modified: stable/12/sys/dev/ixgbe/if_ix.c stable/12/sys/dev/ixgbe/if_ixv.c stable/12/sys/dev/ixgbe/ix_txrx.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ixgbe/if_ix.c ============================================================================== --- stable/12/sys/dev/ixgbe/if_ix.c Wed Feb 13 15:19:31 2019 (r344100) +++ stable/12/sys/dev/ixgbe/if_ix.c Wed Feb 13 15:27:17 2019 (r344101) @@ -379,6 +379,7 @@ static struct if_shared_ctx ixgbe_sctx_init = { .isc_vendor_info = ixgbe_vendor_info_array, .isc_driver_version = ixgbe_driver_version, .isc_driver = &ixgbe_if_driver, + .isc_flags = IFLIB_TSO_INIT_IP, .isc_nrxd_min = {MIN_RXD}, .isc_ntxd_min = {MIN_TXD}, Modified: stable/12/sys/dev/ixgbe/if_ixv.c ============================================================================== --- stable/12/sys/dev/ixgbe/if_ixv.c Wed Feb 13 15:19:31 2019 (r344100) +++ stable/12/sys/dev/ixgbe/if_ixv.c Wed Feb 13 15:27:17 2019 (r344101) @@ -222,6 +222,7 @@ static struct if_shared_ctx ixv_sctx_init = { .isc_vendor_info = ixv_vendor_info_array, .isc_driver_version = ixv_driver_version, .isc_driver = &ixv_if_driver, + .isc_flags = IFLIB_TSO_INIT_IP, .isc_nrxd_min = {MIN_RXD}, .isc_ntxd_min = {MIN_TXD}, Modified: stable/12/sys/dev/ixgbe/ix_txrx.c ============================================================================== --- stable/12/sys/dev/ixgbe/ix_txrx.c Wed Feb 13 15:19:31 2019 (r344100) +++ stable/12/sys/dev/ixgbe/ix_txrx.c Wed Feb 13 15:27:17 2019 (r344101) @@ -131,7 +131,7 @@ ixgbe_tx_ctx_setup(struct ixgbe_adv_tx_context_desc *T switch (pi->ipi_ipproto) { case IPPROTO_TCP: - if (pi->ipi_csum_flags & (CSUM_IP_TCP | CSUM_IP6_TCP)) + if (pi->ipi_csum_flags & (CSUM_IP_TCP | CSUM_IP6_TCP | CSUM_TSO)) type_tucmd_mlhl |= IXGBE_ADVTXD_TUCMD_L4T_TCP; else offload = FALSE; From owner-svn-src-all@freebsd.org Wed Feb 13 15:30:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5514414CEFF4; Wed, 13 Feb 2019 15:30:07 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EF4258F6E6; Wed, 13 Feb 2019 15:30:06 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D4A412914A; Wed, 13 Feb 2019 15:30:06 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DFU6Vw067156; Wed, 13 Feb 2019 15:30:06 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DFU6PA067155; Wed, 13 Feb 2019 15:30:06 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131530.x1DFU6PA067155@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 15:30:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344102 - stable/12/sys/dev/ixl X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/dev/ixl X-SVN-Commit-Revision: 344102 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EF4258F6E6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 15:30:07 -0000 Author: marius Date: Wed Feb 13 15:30:06 2019 New Revision: 344102 URL: https://svnweb.freebsd.org/changeset/base/344102 Log: MFC: r339459 ixl/iavf(4): Fix GCC 6.4.0 build Don't define redundant prototypes. Modified: stable/12/sys/dev/ixl/if_iavf.c stable/12/sys/dev/ixl/ixl_pf.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ixl/if_iavf.c ============================================================================== --- stable/12/sys/dev/ixl/if_iavf.c Wed Feb 13 15:27:17 2019 (r344101) +++ stable/12/sys/dev/ixl/if_iavf.c Wed Feb 13 15:30:06 2019 (r344102) @@ -126,7 +126,6 @@ static int iavf_sysctl_queue_interrupt_table(SYSCTL_HA static int iavf_sysctl_vf_reset(SYSCTL_HANDLER_ARGS); static int iavf_sysctl_vflr_reset(SYSCTL_HANDLER_ARGS); -char *iavf_vc_speed_to_string(enum virtchnl_link_speed link_speed); static void iavf_save_tunables(struct iavf_sc *); static enum i40e_status_code iavf_process_adminq(struct iavf_sc *, u16 *); Modified: stable/12/sys/dev/ixl/ixl_pf.h ============================================================================== --- stable/12/sys/dev/ixl/ixl_pf.h Wed Feb 13 15:27:17 2019 (r344101) +++ stable/12/sys/dev/ixl/ixl_pf.h Wed Feb 13 15:30:06 2019 (r344102) @@ -267,9 +267,6 @@ char * ixl_switch_element_string(struct sbuf *, struct i40e_aqc_switch_config_element_resp *); void ixl_add_sysctls_mac_stats(struct sysctl_ctx_list *, struct sysctl_oid_list *, struct i40e_hw_port_stats *); -void ixl_add_sysctls_eth_stats(struct sysctl_ctx_list *, - struct sysctl_oid_list *, - struct i40e_eth_stats *); void ixl_media_status(struct ifnet *, struct ifmediareq *); int ixl_media_change(struct ifnet *); From owner-svn-src-all@freebsd.org Wed Feb 13 15:46:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EFD7914CF6F7; Wed, 13 Feb 2019 15:46:05 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8E041680FD; Wed, 13 Feb 2019 15:46:05 +0000 (UTC) (envelope-from ae@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7C3A629486; Wed, 13 Feb 2019 15:46:05 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DFk5iM077958; Wed, 13 Feb 2019 15:46:05 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DFk5gZ077957; Wed, 13 Feb 2019 15:46:05 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201902131546.x1DFk5gZ077957@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Wed, 13 Feb 2019 15:46:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344103 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: ae X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 344103 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8E041680FD X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.967,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 15:46:06 -0000 Author: ae Date: Wed Feb 13 15:46:05 2019 New Revision: 344103 URL: https://svnweb.freebsd.org/changeset/base/344103 Log: In r335015 PCB destroing was made deferred using epoch_call(). But ipsec_delete_pcbpolicy() uses some VNET-virtualized variables, and thus it needs VNET context, that is missing during gtaskqueue executing. Use inp_vnet context to set curvnet in in_pcbfree_deferred(). PR: 235684 MFC after: 1 week Modified: head/sys/netinet/in_pcb.c Modified: head/sys/netinet/in_pcb.c ============================================================================== --- head/sys/netinet/in_pcb.c Wed Feb 13 15:30:06 2019 (r344102) +++ head/sys/netinet/in_pcb.c Wed Feb 13 15:46:05 2019 (r344103) @@ -1565,6 +1565,7 @@ in_pcbfree_deferred(epoch_context_t ctx) inp = __containerof(ctx, struct inpcb, inp_epoch_ctx); INP_WLOCK(inp); + CURVNET_SET(inp->inp_vnet); #ifdef INET struct ip_moptions *imo = inp->inp_moptions; inp->inp_moptions = NULL; @@ -1597,6 +1598,7 @@ in_pcbfree_deferred(epoch_context_t ctx) #ifdef INET inp_freemoptions(imo); #endif + CURVNET_RESTORE(); } /* From owner-svn-src-all@freebsd.org Wed Feb 13 16:02:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3F67614CFEB4; Wed, 13 Feb 2019 16:02:53 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D063669EB8; Wed, 13 Feb 2019 16:02:52 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BC90E297E3; Wed, 13 Feb 2019 16:02:52 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DG2qc7088555; Wed, 13 Feb 2019 16:02:52 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DG2qo0088554; Wed, 13 Feb 2019 16:02:52 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131602.x1DG2qo0088554@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 16:02:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344104 - stable/12/sys/dev/ixl X-SVN-Group: stable-12 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/12/sys/dev/ixl X-SVN-Commit-Revision: 344104 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D063669EB8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 16:02:53 -0000 Author: marius Date: Wed Feb 13 16:02:52 2019 New Revision: 344104 URL: https://svnweb.freebsd.org/changeset/base/344104 Log: MFC: r343372 ixl(4): Fix handling data passed with ioctl from NVM update tool From Krzysztof: Ensure that the entire data buffer passed from the NVM update tool is copied in to kernel space and copied back out to user space using copyin() and copyout(). PR: 234104 Submitted by: Krzysztof Galazka Reported by: Finn Differential Revision: https://reviews.freebsd.org/D18817 Modified: stable/12/sys/dev/ixl/ixl_pf_main.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ixl/ixl_pf_main.c ============================================================================== --- stable/12/sys/dev/ixl/ixl_pf_main.c Wed Feb 13 15:46:05 2019 (r344103) +++ stable/12/sys/dev/ixl/ixl_pf_main.c Wed Feb 13 16:02:52 2019 (r344104) @@ -3664,23 +3664,34 @@ ixl_handle_nvmupd_cmd(struct ixl_pf *pf, struct ifdrv struct i40e_nvm_access *nvma; device_t dev = pf->dev; enum i40e_status_code status = 0; - int perrno; + size_t nvma_size, ifd_len, exp_len; + int err, perrno; DEBUGFUNC("ixl_handle_nvmupd_cmd"); /* Sanity checks */ - if (ifd->ifd_len < sizeof(struct i40e_nvm_access) || + nvma_size = sizeof(struct i40e_nvm_access); + ifd_len = ifd->ifd_len; + + if (ifd_len < nvma_size || ifd->ifd_data == NULL) { device_printf(dev, "%s: incorrect ifdrv length or data pointer\n", __func__); device_printf(dev, "%s: ifdrv length: %zu, sizeof(struct i40e_nvm_access): %zu\n", - __func__, ifd->ifd_len, sizeof(struct i40e_nvm_access)); + __func__, ifd_len, nvma_size); device_printf(dev, "%s: data pointer: %p\n", __func__, ifd->ifd_data); return (EINVAL); } - nvma = (struct i40e_nvm_access *)ifd->ifd_data; + nvma = malloc(ifd_len, M_DEVBUF, M_WAITOK); + err = copyin(ifd->ifd_data, nvma, ifd_len); + if (err) { + device_printf(dev, "%s: Cannot get request from user space\n", + __func__); + free(nvma, M_DEVBUF); + return (err); + } if (pf->dbg_mask & IXL_DBG_NVMUPD) ixl_print_nvm_cmd(dev, nvma); @@ -3694,13 +3705,49 @@ ixl_handle_nvmupd_cmd(struct ixl_pf *pf, struct ifdrv } } - if (!(pf->state & IXL_PF_STATE_ADAPTER_RESETTING)) { - // TODO: Might need a different lock here - // IXL_PF_LOCK(pf); - status = i40e_nvmupd_command(hw, nvma, nvma->data, &perrno); - // IXL_PF_UNLOCK(pf); - } else { - perrno = -EBUSY; + if (pf->state & IXL_PF_STATE_ADAPTER_RESETTING) { + free(nvma, M_DEVBUF); + return (-EBUSY); + } + + if (nvma->data_size < 1 || nvma->data_size > 4096) { + device_printf(dev, "%s: invalid request, data size not in supported range\n", + __func__); + free(nvma, M_DEVBUF); + return (EINVAL); + } + + /* + * Older versions of the NVM update tool don't set ifd_len to the size + * of the entire buffer passed to the ioctl. Check the data_size field + * in the contained i40e_nvm_access struct and ensure everything is + * copied in from userspace. + */ + exp_len = nvma_size + nvma->data_size - 1; /* One byte is kept in struct */ + + if (ifd_len < exp_len) { + ifd_len = exp_len; + nvma = realloc(nvma, ifd_len, M_DEVBUF, M_WAITOK); + err = copyin(ifd->ifd_data, nvma, ifd_len); + if (err) { + device_printf(dev, "%s: Cannot get request from user space\n", + __func__); + free(nvma, M_DEVBUF); + return (err); + } + } + + // TODO: Might need a different lock here + // IXL_PF_LOCK(pf); + status = i40e_nvmupd_command(hw, nvma, nvma->data, &perrno); + // IXL_PF_UNLOCK(pf); + + err = copyout(nvma, ifd->ifd_data, ifd_len); + free(nvma, M_DEVBUF); + if (err) { + device_printf(dev, "%s: Cannot return data to user space\n", + __func__); + return (err); } /* Let the nvmupdate report errors, show them only when debug is enabled */ From owner-svn-src-all@freebsd.org Wed Feb 13 16:02:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EBB2314CFEE5; Wed, 13 Feb 2019 16:02:56 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 874C369ECC; Wed, 13 Feb 2019 16:02:56 +0000 (UTC) (envelope-from marius@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 306CF297E5; Wed, 13 Feb 2019 16:02:56 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DG2tkC088615; Wed, 13 Feb 2019 16:02:55 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DG2tcI088614; Wed, 13 Feb 2019 16:02:55 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201902131602.x1DG2tcI088614@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 13 Feb 2019 16:02:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344105 - stable/11/sys/dev/ixl X-SVN-Group: stable-11 X-SVN-Commit-Author: marius X-SVN-Commit-Paths: stable/11/sys/dev/ixl X-SVN-Commit-Revision: 344105 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 874C369ECC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.965,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 16:02:57 -0000 Author: marius Date: Wed Feb 13 16:02:55 2019 New Revision: 344105 URL: https://svnweb.freebsd.org/changeset/base/344105 Log: MFC: r343372 ixl(4): Fix handling data passed with ioctl from NVM update tool From Krzysztof: Ensure that the entire data buffer passed from the NVM update tool is copied in to kernel space and copied back out to user space using copyin() and copyout(). PR: 234104 Submitted by: Krzysztof Galazka Reported by: Finn Differential Revision: https://reviews.freebsd.org/D18817 Modified: stable/11/sys/dev/ixl/ixl_pf_main.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/ixl/ixl_pf_main.c ============================================================================== --- stable/11/sys/dev/ixl/ixl_pf_main.c Wed Feb 13 16:02:52 2019 (r344104) +++ stable/11/sys/dev/ixl/ixl_pf_main.c Wed Feb 13 16:02:55 2019 (r344105) @@ -4989,23 +4989,34 @@ ixl_handle_nvmupd_cmd(struct ixl_pf *pf, struct ifdrv struct i40e_nvm_access *nvma; device_t dev = pf->dev; enum i40e_status_code status = 0; - int perrno; + size_t nvma_size, ifd_len, exp_len; + int err, perrno; DEBUGFUNC("ixl_handle_nvmupd_cmd"); /* Sanity checks */ - if (ifd->ifd_len < sizeof(struct i40e_nvm_access) || + nvma_size = sizeof(struct i40e_nvm_access); + ifd_len = ifd->ifd_len; + + if (ifd_len < nvma_size || ifd->ifd_data == NULL) { device_printf(dev, "%s: incorrect ifdrv length or data pointer\n", __func__); device_printf(dev, "%s: ifdrv length: %zu, sizeof(struct i40e_nvm_access): %zu\n", - __func__, ifd->ifd_len, sizeof(struct i40e_nvm_access)); + __func__, ifd_len, nvma_size); device_printf(dev, "%s: data pointer: %p\n", __func__, ifd->ifd_data); return (EINVAL); } - nvma = (struct i40e_nvm_access *)ifd->ifd_data; + nvma = malloc(ifd_len, M_DEVBUF, M_WAITOK); + err = copyin(ifd->ifd_data, nvma, ifd_len); + if (err) { + device_printf(dev, "%s: Cannot get request from user space\n", + __func__); + free(nvma, M_DEVBUF); + return (err); + } if (pf->dbg_mask & IXL_DBG_NVMUPD) ixl_print_nvm_cmd(dev, nvma); @@ -5019,12 +5030,48 @@ ixl_handle_nvmupd_cmd(struct ixl_pf *pf, struct ifdrv } } - if (!(pf->state & IXL_PF_STATE_EMPR_RESETTING)) { - IXL_PF_LOCK(pf); - status = i40e_nvmupd_command(hw, nvma, nvma->data, &perrno); - IXL_PF_UNLOCK(pf); - } else { - perrno = -EBUSY; + if (pf->state & IXL_PF_STATE_EMPR_RESETTING) { + free(nvma, M_DEVBUF); + return (-EBUSY); + } + + if (nvma->data_size < 1 || nvma->data_size > 4096) { + device_printf(dev, "%s: invalid request, data size not in supported range\n", + __func__); + free(nvma, M_DEVBUF); + return (EINVAL); + } + + /* + * Older versions of the NVM update tool don't set ifd_len to the size + * of the entire buffer passed to the ioctl. Check the data_size field + * in the contained i40e_nvm_access struct and ensure everything is + * copied in from userspace. + */ + exp_len = nvma_size + nvma->data_size - 1; /* One byte is kept in struct */ + + if (ifd_len < exp_len) { + ifd_len = exp_len; + nvma = realloc(nvma, ifd_len, M_DEVBUF, M_WAITOK); + err = copyin(ifd->ifd_data, nvma, ifd_len); + if (err) { + device_printf(dev, "%s: Cannot get request from user space\n", + __func__); + free(nvma, M_DEVBUF); + return (err); + } + } + + IXL_PF_LOCK(pf); + status = i40e_nvmupd_command(hw, nvma, nvma->data, &perrno); + IXL_PF_UNLOCK(pf); + + err = copyout(nvma, ifd->ifd_data, ifd_len); + free(nvma, M_DEVBUF); + if (err) { + device_printf(dev, "%s: Cannot return data to user space\n", + __func__); + return (err); } /* Let the nvmupdate report errors, show them only when debug is enabled */ From owner-svn-src-all@freebsd.org Wed Feb 13 17:10:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 961C014D17AB; Wed, 13 Feb 2019 17:10:01 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 392DD6C027; Wed, 13 Feb 2019 17:10:01 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id AD1CE1CDEF; Wed, 13 Feb 2019 17:10:00 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r344099 - head/sys/net To: Randall Stewart , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201902131457.x1DEvx9V051533@repo.freebsd.org> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <99453977-0f52-6050-3f40-e0fd7ea43d7f@FreeBSD.org> Date: Wed, 13 Feb 2019 09:09:36 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: <201902131457.x1DEvx9V051533@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 392DD6C027 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 17:10:01 -0000 On 2/13/19 6:57 AM, Randall Stewart wrote: > Author: rrs > Date: Wed Feb 13 14:57:59 2019 > New Revision: 344099 > URL: https://svnweb.freebsd.org/changeset/base/344099 > > Log: > This commit adds the missing release mechanism for the > ratelimiting code. The two modules (lagg and vlan) did have > allocation routines, and even though they are indirect (and > vector down to the underlying interfaces) they both need to > have a free routine (that also vectors down to the actual interface). > > Sponsored by: Netflix Inc. > Differential Revision: https://reviews.freebsd.org/D19032 Hmm, I don't understand why you'd ever invoke if_snd_tag_free from anything but 'tag->ifp' rather than some other ifp. What if the route for a connection moves so that a tag allocated on cc0 is now on a route that goes over em0? You can't expect em0 to have an if_snd_tag_free routine that will know to go invoke cxgbe's snd_tag_free. I think you should always be using 'tag->ifp->if_snd_tag_free' to free tags and never using any other ifp. That is, I think this should be reverted and that instead you need to fix the code invoking if_snd_tag_free to invoke it on the tag's ifp instead of some random other ifp. -- John Baldwin                                                                              From owner-svn-src-all@freebsd.org Wed Feb 13 17:19:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 30E9114D1D67; Wed, 13 Feb 2019 17:19:39 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D1CE16C6B3; Wed, 13 Feb 2019 17:19: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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C3EC12A3CE; Wed, 13 Feb 2019 17:19: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 x1DHJcFV025082; Wed, 13 Feb 2019 17:19:38 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DHJbv3025077; Wed, 13 Feb 2019 17:19:37 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201902131719.x1DHJbv3025077@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Wed, 13 Feb 2019 17:19:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344106 - in head/sys: riscv/include riscv/riscv vm X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in head/sys: riscv/include riscv/riscv vm X-SVN-Commit-Revision: 344106 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D1CE16C6B3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.995,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 17:19:39 -0000 Author: markj Date: Wed Feb 13 17:19:37 2019 New Revision: 344106 URL: https://svnweb.freebsd.org/changeset/base/344106 Log: Implement transparent 2MB superpage promotion for RISC-V. This includes support for pmap_enter(..., psind=1) as described in the commit log message for r321378. The changes are largely modelled after amd64. arm64 has more stringent requirements around superpage creation to avoid the possibility of TLB conflict aborts, and these requirements do not apply to RISC-V, which like amd64 permits simultaneous caching of 4KB and 2MB translations for a given page. RISC-V's PTE format includes only two software bits, and as these are already consumed we do not have an analogue for amd64's PG_PROMOTED. Instead, pmap_remove_l2() always invalidates the entire 2MB address range. pmap_ts_referenced() is modified to clear PTE_A, now that we support both hardware- and software-managed reference and dirty bits. Also fix pmap_fault_fixup() so that it does not set PTE_A or PTE_D on kernel mappings. Reviewed by: kib (earlier version) Discussed with: jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18863 Differential Revision: https://reviews.freebsd.org/D18864 Differential Revision: https://reviews.freebsd.org/D18865 Differential Revision: https://reviews.freebsd.org/D18866 Differential Revision: https://reviews.freebsd.org/D18867 Differential Revision: https://reviews.freebsd.org/D18868 Modified: head/sys/riscv/include/param.h head/sys/riscv/include/pmap.h head/sys/riscv/include/pte.h head/sys/riscv/include/vmparam.h head/sys/riscv/riscv/pmap.c head/sys/vm/vm_fault.c Modified: head/sys/riscv/include/param.h ============================================================================== --- head/sys/riscv/include/param.h Wed Feb 13 16:02:55 2019 (r344105) +++ head/sys/riscv/include/param.h Wed Feb 13 17:19:37 2019 (r344106) @@ -82,7 +82,7 @@ #define PAGE_SIZE (1 << PAGE_SHIFT) /* Page size */ #define PAGE_MASK (PAGE_SIZE - 1) -#define MAXPAGESIZES 1 /* maximum number of supported page sizes */ +#define MAXPAGESIZES 3 /* maximum number of supported page sizes */ #ifndef KSTACK_PAGES #define KSTACK_PAGES 4 /* pages of kernel stack (with pcb) */ Modified: head/sys/riscv/include/pmap.h ============================================================================== --- head/sys/riscv/include/pmap.h Wed Feb 13 16:02:55 2019 (r344105) +++ head/sys/riscv/include/pmap.h Wed Feb 13 17:19:37 2019 (r344106) @@ -44,6 +44,8 @@ #include #include +#include + #ifdef _KERNEL #define vtophys(va) pmap_kextract((vm_offset_t)(va)) @@ -80,6 +82,7 @@ struct pmap { pd_entry_t *pm_l1; TAILQ_HEAD(,pv_chunk) pm_pvchunk; /* list of mappings in pmap */ LIST_ENTRY(pmap) pm_list; /* List of all pmaps */ + struct vm_radix pm_root; }; typedef struct pv_entry { @@ -139,6 +142,7 @@ void pmap_kenter_device(vm_offset_t, vm_size_t, vm_pad vm_paddr_t pmap_kextract(vm_offset_t va); void pmap_kremove(vm_offset_t); void pmap_kremove_device(vm_offset_t, vm_size_t); +bool pmap_ps_enabled(pmap_t); void *pmap_mapdev(vm_offset_t, vm_size_t); void *pmap_mapbios(vm_paddr_t, vm_size_t); Modified: head/sys/riscv/include/pte.h ============================================================================== --- head/sys/riscv/include/pte.h Wed Feb 13 16:02:55 2019 (r344105) +++ head/sys/riscv/include/pte.h Wed Feb 13 17:19:37 2019 (r344106) @@ -62,7 +62,8 @@ typedef uint64_t pn_t; /* page number */ #define L3_SIZE (1 << L3_SHIFT) #define L3_OFFSET (L3_SIZE - 1) -#define Ln_ENTRIES (1 << 9) +#define Ln_ENTRIES_SHIFT 9 +#define Ln_ENTRIES (1 << Ln_ENTRIES_SHIFT) #define Ln_ADDR_MASK (Ln_ENTRIES - 1) /* Bits 9:8 are reserved for software */ @@ -79,6 +80,8 @@ typedef uint64_t pn_t; /* page number */ #define PTE_RWX (PTE_R | PTE_W | PTE_X) #define PTE_RX (PTE_R | PTE_X) #define PTE_KERN (PTE_V | PTE_R | PTE_W | PTE_A | PTE_D) +#define PTE_PROMOTE (PTE_V | PTE_RWX | PTE_D | PTE_A | PTE_G | PTE_U | \ + PTE_SW_MANAGED | PTE_SW_WIRED) #define PTE_PPN0_S 10 #define PTE_PPN1_S 19 Modified: head/sys/riscv/include/vmparam.h ============================================================================== --- head/sys/riscv/include/vmparam.h Wed Feb 13 16:02:55 2019 (r344105) +++ head/sys/riscv/include/vmparam.h Wed Feb 13 17:19:37 2019 (r344106) @@ -99,10 +99,10 @@ #define VM_NFREEORDER 12 /* - * Disable superpage reservations. + * Enable superpage reservations: 1 level. */ #ifndef VM_NRESERVLEVEL -#define VM_NRESERVLEVEL 0 +#define VM_NRESERVLEVEL 1 #endif /* Modified: head/sys/riscv/riscv/pmap.c ============================================================================== --- head/sys/riscv/riscv/pmap.c Wed Feb 13 16:02:55 2019 (r344105) +++ head/sys/riscv/riscv/pmap.c Wed Feb 13 17:19:37 2019 (r344106) @@ -118,6 +118,7 @@ __FBSDID("$FreeBSD$"); */ #include +#include #include #include #include @@ -145,6 +146,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -154,9 +156,8 @@ __FBSDID("$FreeBSD$"); #include #include -#define NPDEPG (PAGE_SIZE/(sizeof (pd_entry_t))) -#define NUPDE (NPDEPG * NPDEPG) -#define NUSERPGTBLS (NUPDE + NPDEPG) +#define NUL1E (Ln_ENTRIES * Ln_ENTRIES) +#define NUL2E (Ln_ENTRIES * NUL1E) #if !defined(DIAGNOSTIC) #ifdef __GNUC_GNU_INLINE__ @@ -175,11 +176,12 @@ __FBSDID("$FreeBSD$"); #endif #define pmap_l2_pindex(v) ((v) >> L2_SHIFT) +#define pa_to_pvh(pa) (&pv_table[pa_index(pa)]) #define NPV_LIST_LOCKS MAXCPU #define PHYS_TO_PV_LIST_LOCK(pa) \ - (&pv_list_locks[pa_index(pa) % NPV_LIST_LOCKS]) + (&pv_list_locks[pmap_l2_pindex(pa) % NPV_LIST_LOCKS]) #define CHANGE_PV_LIST_LOCK_TO_PHYS(lockp, pa) do { \ struct rwlock **_lockp = (lockp); \ @@ -230,13 +232,52 @@ CTASSERT((DMAP_MAX_ADDRESS & ~L1_OFFSET) == DMAP_MAX_ static struct rwlock_padalign pvh_global_lock; static struct mtx_padalign allpmaps_lock; +static SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD, 0, + "VM/pmap parameters"); + +static int superpages_enabled = 1; +SYSCTL_INT(_vm_pmap, OID_AUTO, superpages_enabled, + CTLFLAG_RDTUN, &superpages_enabled, 0, + "Enable support for transparent superpages"); + +static SYSCTL_NODE(_vm_pmap, OID_AUTO, l2, CTLFLAG_RD, 0, + "2MB page mapping counters"); + +static u_long pmap_l2_demotions; +SYSCTL_ULONG(_vm_pmap_l2, OID_AUTO, demotions, CTLFLAG_RD, + &pmap_l2_demotions, 0, + "2MB page demotions"); + +static u_long pmap_l2_mappings; +SYSCTL_ULONG(_vm_pmap_l2, OID_AUTO, mappings, CTLFLAG_RD, + &pmap_l2_mappings, 0, + "2MB page mappings"); + +static u_long pmap_l2_p_failures; +SYSCTL_ULONG(_vm_pmap_l2, OID_AUTO, p_failures, CTLFLAG_RD, + &pmap_l2_p_failures, 0, + "2MB page promotion failures"); + +static u_long pmap_l2_promotions; +SYSCTL_ULONG(_vm_pmap_l2, OID_AUTO, promotions, CTLFLAG_RD, + &pmap_l2_promotions, 0, + "2MB page promotions"); + /* * Data for the pv entry allocation mechanism */ static TAILQ_HEAD(pch, pv_chunk) pv_chunks = TAILQ_HEAD_INITIALIZER(pv_chunks); static struct mtx pv_chunks_mutex; static struct rwlock pv_list_locks[NPV_LIST_LOCKS]; +static struct md_page *pv_table; +static struct md_page pv_dummy; +/* + * Internal flags for pmap_enter()'s helper functions. + */ +#define PMAP_ENTER_NORECLAIM 0x1000000 /* Don't reclaim PV entries. */ +#define PMAP_ENTER_NOREPLACE 0x2000000 /* Don't replace mappings. */ + static void free_pv_chunk(struct pv_chunk *pc); static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t pmap, struct rwlock **lockp); @@ -244,6 +285,11 @@ static vm_page_t reclaim_pv_chunk(pmap_t locked_pmap, static void pmap_pvh_free(struct md_page *pvh, pmap_t pmap, vm_offset_t va); static pv_entry_t pmap_pvh_remove(struct md_page *pvh, pmap_t pmap, vm_offset_t va); +static bool pmap_demote_l2(pmap_t pmap, pd_entry_t *l2, vm_offset_t va); +static bool pmap_demote_l2_locked(pmap_t pmap, pd_entry_t *l2, + vm_offset_t va, struct rwlock **lockp); +static int pmap_enter_l2(pmap_t pmap, vm_offset_t va, pd_entry_t new_l2, + u_int flags, vm_page_t m, struct rwlock **lockp); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte, struct rwlock **lockp); static int pmap_remove_l3(pmap_t pmap, pt_entry_t *l3, vm_offset_t sva, @@ -254,9 +300,9 @@ static boolean_t pmap_try_insert_pv_entry(pmap_t pmap, static vm_page_t _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, struct rwlock **lockp); -static void _pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t m, +static void _pmap_unwire_ptp(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free); -static int pmap_unuse_l3(pmap_t, vm_offset_t, pd_entry_t, struct spglist *); +static int pmap_unuse_pt(pmap_t, vm_offset_t, pd_entry_t, struct spglist *); #define pmap_clear(pte) pmap_store(pte, 0) #define pmap_clear_bits(pte, bits) atomic_clear_64(pte, bits) @@ -636,7 +682,8 @@ pmap_page_init(vm_page_t m) void pmap_init(void) { - int i; + vm_size_t s; + int i, pv_npg; /* * Initialize the pv chunk and pmap list mutexes. @@ -649,6 +696,24 @@ pmap_init(void) */ for (i = 0; i < NPV_LIST_LOCKS; i++) rw_init(&pv_list_locks[i], "pmap pv list"); + + /* + * Calculate the size of the pv head table for superpages. + */ + pv_npg = howmany(vm_phys_segs[vm_phys_nsegs - 1].end, L2_SIZE); + + /* + * Allocate memory for the pv head table for superpages. + */ + s = (vm_size_t)(pv_npg * sizeof(struct md_page)); + s = round_page(s); + pv_table = (struct md_page *)kmem_malloc(s, M_WAITOK | M_ZERO); + for (i = 0; i < pv_npg; i++) + TAILQ_INIT(&pv_table[i].pv_list); + TAILQ_INIT(&pv_dummy.pv_list); + + if (superpages_enabled) + pagesizes[1] = L2_SIZE; } #ifdef SMP @@ -999,6 +1064,13 @@ pmap_qremove(vm_offset_t sva, int count) pmap_invalidate_range(kernel_pmap, sva, va); } +bool +pmap_ps_enabled(pmap_t pmap __unused) +{ + + return (superpages_enabled); +} + /*************************************************** * Page table page management routines..... ***************************************************/ @@ -1018,6 +1090,34 @@ pmap_add_delayed_free_list(vm_page_t m, struct spglist m->flags &= ~PG_ZERO; SLIST_INSERT_HEAD(free, m, plinks.s.ss); } + +/* + * Inserts the specified page table page into the specified pmap's collection + * of idle page table pages. Each of a pmap's page table pages is responsible + * for mapping a distinct range of virtual addresses. The pmap's collection is + * ordered by this virtual address range. + */ +static __inline int +pmap_insert_pt_page(pmap_t pmap, vm_page_t ml3) +{ + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + return (vm_radix_insert(&pmap->pm_root, ml3)); +} + +/* + * Removes the page table page mapping the specified virtual address from the + * specified pmap's collection of idle page table pages, and returns it. + * Otherwise, returns NULL if there is no page table page corresponding to the + * specified virtual address. + */ +static __inline vm_page_t +pmap_remove_pt_page(pmap_t pmap, vm_offset_t va) +{ + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + return (vm_radix_remove(&pmap->pm_root, pmap_l2_pindex(va))); +} /* * Decrements a page table page's wire count, which is used to record the @@ -1026,12 +1126,12 @@ pmap_add_delayed_free_list(vm_page_t m, struct spglist * page table page was unmapped and FALSE otherwise. */ static inline boolean_t -pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) +pmap_unwire_ptp(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) { --m->wire_count; if (m->wire_count == 0) { - _pmap_unwire_l3(pmap, va, m, free); + _pmap_unwire_ptp(pmap, va, m, free); return (TRUE); } else { return (FALSE); @@ -1039,36 +1139,30 @@ pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t } static void -_pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) +_pmap_unwire_ptp(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) { vm_paddr_t phys; PMAP_LOCK_ASSERT(pmap, MA_OWNED); - /* - * unmap the page table page - */ - if (m->pindex >= NUPDE) { - /* PD page */ + if (m->pindex >= NUL1E) { pd_entry_t *l1; l1 = pmap_l1(pmap, va); pmap_clear(l1); pmap_distribute_l1(pmap, pmap_l1_index(va), 0); } else { - /* PTE page */ pd_entry_t *l2; l2 = pmap_l2(pmap, va); pmap_clear(l2); } pmap_resident_count_dec(pmap, 1); - if (m->pindex < NUPDE) { + if (m->pindex < NUL1E) { pd_entry_t *l1; - /* We just released a PT, unhold the matching PD */ vm_page_t pdpg; l1 = pmap_l1(pmap, va); phys = PTE_TO_PHYS(pmap_load(l1)); pdpg = PHYS_TO_VM_PAGE(phys); - pmap_unwire_l3(pmap, va, pdpg, free); + pmap_unwire_ptp(pmap, va, pdpg, free); } pmap_invalidate_page(pmap, va); @@ -1082,24 +1176,20 @@ _pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t } /* - * After removing an l3 entry, this routine is used to + * After removing a page table entry, this routine is used to * conditionally free the page, and manage the hold/wire counts. */ static int -pmap_unuse_l3(pmap_t pmap, vm_offset_t va, pd_entry_t ptepde, +pmap_unuse_pt(pmap_t pmap, vm_offset_t va, pd_entry_t ptepde, struct spglist *free) { - vm_paddr_t phys; vm_page_t mpte; if (va >= VM_MAXUSER_ADDRESS) return (0); KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0")); - - phys = PTE_TO_PHYS(ptepde); - - mpte = PHYS_TO_VM_PAGE(phys); - return (pmap_unwire_l3(pmap, va, mpte, free)); + mpte = PHYS_TO_VM_PAGE(PTE_TO_PHYS(ptepde)); + return (pmap_unwire_ptp(pmap, va, mpte, free)); } void @@ -1140,6 +1230,8 @@ pmap_pinit(pmap_t pmap) LIST_INSERT_HEAD(&allpmaps, pmap, pm_list); mtx_unlock(&allpmaps_lock); + vm_radix_init(&pmap->pm_root); + return (1); } @@ -1193,11 +1285,11 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, str * it isn't already there. */ - if (ptepindex >= NUPDE) { + if (ptepindex >= NUL1E) { pd_entry_t *l1; vm_pindex_t l1index; - l1index = ptepindex - NUPDE; + l1index = ptepindex - NUL1E; l1 = &pmap->pm_l1[l1index]; pn = (VM_PAGE_TO_PHYS(m) / PAGE_SIZE); @@ -1213,7 +1305,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, str l1 = &pmap->pm_l1[l1index]; if (pmap_load(l1) == 0) { /* recurse for allocating page dir */ - if (_pmap_alloc_l3(pmap, NUPDE + l1index, + if (_pmap_alloc_l3(pmap, NUL1E + l1index, lockp) == NULL) { vm_page_unwire_noq(m); vm_page_free_zero(m); @@ -1241,6 +1333,29 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, str } static vm_page_t +pmap_alloc_l2(pmap_t pmap, vm_offset_t va, struct rwlock **lockp) +{ + pd_entry_t *l1; + vm_page_t l2pg; + vm_pindex_t l2pindex; + +retry: + l1 = pmap_l1(pmap, va); + if (l1 != NULL && (pmap_load(l1) & PTE_RWX) == 0) { + /* Add a reference to the L2 page. */ + l2pg = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(l1))); + l2pg->wire_count++; + } else { + /* Allocate a L2 page. */ + l2pindex = pmap_l2_pindex(va) >> Ln_ENTRIES_SHIFT; + l2pg = _pmap_alloc_l3(pmap, NUL2E + l2pindex, lockp); + if (l2pg == NULL && lockp != NULL) + goto retry; + } + return (l2pg); +} + +static vm_page_t pmap_alloc_l3(pmap_t pmap, vm_offset_t va, struct rwlock **lockp) { vm_pindex_t ptepindex; @@ -1599,6 +1714,79 @@ retry: } /* + * Ensure that the number of spare PV entries in the specified pmap meets or + * exceeds the given count, "needed". + * + * The given PV list lock may be released. + */ +static void +reserve_pv_entries(pmap_t pmap, int needed, struct rwlock **lockp) +{ + struct pch new_tail; + struct pv_chunk *pc; + vm_page_t m; + int avail, free; + bool reclaimed; + + rw_assert(&pvh_global_lock, RA_LOCKED); + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + KASSERT(lockp != NULL, ("reserve_pv_entries: lockp is NULL")); + + /* + * Newly allocated PV chunks must be stored in a private list until + * the required number of PV chunks have been allocated. Otherwise, + * reclaim_pv_chunk() could recycle one of these chunks. In + * contrast, these chunks must be added to the pmap upon allocation. + */ + TAILQ_INIT(&new_tail); +retry: + avail = 0; + TAILQ_FOREACH(pc, &pmap->pm_pvchunk, pc_list) { + bit_count((bitstr_t *)pc->pc_map, 0, + sizeof(pc->pc_map) * NBBY, &free); + if (free == 0) + break; + avail += free; + if (avail >= needed) + break; + } + for (reclaimed = false; avail < needed; avail += _NPCPV) { + m = vm_page_alloc(NULL, 0, VM_ALLOC_NORMAL | VM_ALLOC_NOOBJ | + VM_ALLOC_WIRED); + if (m == NULL) { + m = reclaim_pv_chunk(pmap, lockp); + if (m == NULL) + goto retry; + reclaimed = true; + } + /* XXX PV STATS */ +#if 0 + dump_add_page(m->phys_addr); +#endif + pc = (void *)PHYS_TO_DMAP(m->phys_addr); + pc->pc_pmap = pmap; + pc->pc_map[0] = PC_FREE0; + pc->pc_map[1] = PC_FREE1; + pc->pc_map[2] = PC_FREE2; + TAILQ_INSERT_HEAD(&pmap->pm_pvchunk, pc, pc_list); + TAILQ_INSERT_TAIL(&new_tail, pc, pc_lru); + + /* + * The reclaim might have freed a chunk from the current pmap. + * If that chunk contained available entries, we need to + * re-count the number of available entries. + */ + if (reclaimed) + goto retry; + } + if (!TAILQ_EMPTY(&new_tail)) { + mtx_lock(&pv_chunks_mutex); + TAILQ_CONCAT(&pv_chunks, &new_tail, pc_lru); + mtx_unlock(&pv_chunks_mutex); + } +} + +/* * First find and then remove the pv entry for the specified pmap and virtual * address from the specified pv list. Returns the pv entry if found and NULL * otherwise. This operation can be performed on pv lists for either 4KB or @@ -1632,7 +1820,7 @@ pmap_pvh_free(struct md_page *pvh, pmap_t pmap, vm_off pv = pmap_pvh_remove(pvh, pmap, va); - KASSERT(pv != NULL, ("pmap_pvh_free: pv not found")); + KASSERT(pv != NULL, ("pmap_pvh_free: pv not found for %#lx", va)); free_pv_entry(pmap, pv); } @@ -1660,6 +1848,222 @@ pmap_try_insert_pv_entry(pmap_t pmap, vm_offset_t va, } /* + * After demotion from a 2MB page mapping to 512 4KB page mappings, + * destroy the pv entry for the 2MB page mapping and reinstantiate the pv + * entries for each of the 4KB page mappings. + */ +static void __unused +pmap_pv_demote_l2(pmap_t pmap, vm_offset_t va, vm_paddr_t pa, + struct rwlock **lockp) +{ + struct md_page *pvh; + struct pv_chunk *pc; + pv_entry_t pv; + vm_page_t m; + vm_offset_t va_last; + int bit, field; + + rw_assert(&pvh_global_lock, RA_LOCKED); + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + CHANGE_PV_LIST_LOCK_TO_PHYS(lockp, pa); + + /* + * Transfer the 2mpage's pv entry for this mapping to the first + * page's pv list. Once this transfer begins, the pv list lock + * must not be released until the last pv entry is reinstantiated. + */ + pvh = pa_to_pvh(pa); + va &= ~L2_OFFSET; + pv = pmap_pvh_remove(pvh, pmap, va); + KASSERT(pv != NULL, ("pmap_pv_demote_l2: pv not found")); + m = PHYS_TO_VM_PAGE(pa); + TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_next); + m->md.pv_gen++; + /* Instantiate the remaining 511 pv entries. */ + va_last = va + L2_SIZE - PAGE_SIZE; + for (;;) { + pc = TAILQ_FIRST(&pmap->pm_pvchunk); + KASSERT(pc->pc_map[0] != 0 || pc->pc_map[1] != 0 || + pc->pc_map[2] != 0, ("pmap_pv_demote_l2: missing spare")); + for (field = 0; field < _NPCM; field++) { + while (pc->pc_map[field] != 0) { + bit = ffsl(pc->pc_map[field]) - 1; + pc->pc_map[field] &= ~(1ul << bit); + pv = &pc->pc_pventry[field * 64 + bit]; + va += PAGE_SIZE; + pv->pv_va = va; + m++; + KASSERT((m->oflags & VPO_UNMANAGED) == 0, + ("pmap_pv_demote_l2: page %p is not managed", m)); + TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_next); + m->md.pv_gen++; + if (va == va_last) + goto out; + } + } + TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); + TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc, pc_list); + } +out: + if (pc->pc_map[0] == 0 && pc->pc_map[1] == 0 && pc->pc_map[2] == 0) { + TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); + TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc, pc_list); + } + /* XXX PV stats */ +} + +#if VM_NRESERVLEVEL > 0 +static void +pmap_pv_promote_l2(pmap_t pmap, vm_offset_t va, vm_paddr_t pa, + struct rwlock **lockp) +{ + struct md_page *pvh; + pv_entry_t pv; + vm_page_t m; + vm_offset_t va_last; + + rw_assert(&pvh_global_lock, RA_LOCKED); + KASSERT((va & L2_OFFSET) == 0, + ("pmap_pv_promote_l2: misaligned va %#lx", va)); + + CHANGE_PV_LIST_LOCK_TO_PHYS(lockp, pa); + + m = PHYS_TO_VM_PAGE(pa); + pv = pmap_pvh_remove(&m->md, pmap, va); + KASSERT(pv != NULL, ("pmap_pv_promote_l2: pv for %#lx not found", va)); + pvh = pa_to_pvh(pa); + TAILQ_INSERT_TAIL(&pvh->pv_list, pv, pv_next); + pvh->pv_gen++; + + va_last = va + L2_SIZE - PAGE_SIZE; + do { + m++; + va += PAGE_SIZE; + pmap_pvh_free(&m->md, pmap, va); + } while (va < va_last); +} +#endif /* VM_NRESERVLEVEL > 0 */ + +/* + * Create the PV entry for a 2MB page mapping. Always returns true unless the + * flag PMAP_ENTER_NORECLAIM is specified. If that flag is specified, returns + * false if the PV entry cannot be allocated without resorting to reclamation. + */ +static bool +pmap_pv_insert_l2(pmap_t pmap, vm_offset_t va, pd_entry_t l2e, u_int flags, + struct rwlock **lockp) +{ + struct md_page *pvh; + pv_entry_t pv; + vm_paddr_t pa; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + /* Pass NULL instead of the lock pointer to disable reclamation. */ + if ((pv = get_pv_entry(pmap, (flags & PMAP_ENTER_NORECLAIM) != 0 ? + NULL : lockp)) == NULL) + return (false); + pv->pv_va = va; + pa = PTE_TO_PHYS(l2e); + CHANGE_PV_LIST_LOCK_TO_PHYS(lockp, pa); + pvh = pa_to_pvh(pa); + TAILQ_INSERT_TAIL(&pvh->pv_list, pv, pv_next); + pvh->pv_gen++; + return (true); +} + +static void +pmap_remove_kernel_l2(pmap_t pmap, pt_entry_t *l2, vm_offset_t va) +{ + pt_entry_t newl2, oldl2; + vm_page_t ml3; + vm_paddr_t ml3pa; + + KASSERT(!VIRT_IN_DMAP(va), ("removing direct mapping of %#lx", va)); + KASSERT(pmap == kernel_pmap, ("pmap %p is not kernel_pmap", pmap)); + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + + ml3 = pmap_remove_pt_page(pmap, va); + if (ml3 == NULL) + panic("pmap_remove_kernel_l2: Missing pt page"); + + ml3pa = VM_PAGE_TO_PHYS(ml3); + newl2 = ml3pa | PTE_V; + + /* + * Initialize the page table page. + */ + pagezero((void *)PHYS_TO_DMAP(ml3pa)); + + /* + * Demote the mapping. + */ + oldl2 = pmap_load_store(l2, newl2); + KASSERT(oldl2 == 0, ("%s: found existing mapping at %p: %#lx", + __func__, l2, oldl2)); +} + +/* + * pmap_remove_l2: Do the things to unmap a level 2 superpage. + */ +static int +pmap_remove_l2(pmap_t pmap, pt_entry_t *l2, vm_offset_t sva, + pd_entry_t l1e, struct spglist *free, struct rwlock **lockp) +{ + struct md_page *pvh; + pt_entry_t oldl2; + vm_offset_t eva, va; + vm_page_t m, ml3; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + KASSERT((sva & L2_OFFSET) == 0, ("pmap_remove_l2: sva is not aligned")); + oldl2 = pmap_load_clear(l2); + KASSERT((oldl2 & PTE_RWX) != 0, + ("pmap_remove_l2: L2e %lx is not a superpage mapping", oldl2)); + + /* + * The sfence.vma documentation states that it is sufficient to specify + * a single address within a superpage mapping. However, since we do + * not perform any invalidation upon promotion, TLBs may still be + * caching 4KB mappings within the superpage, so we must invalidate the + * entire range. + */ + pmap_invalidate_range(pmap, sva, sva + L2_SIZE); + if ((oldl2 & PTE_SW_WIRED) != 0) + pmap->pm_stats.wired_count -= L2_SIZE / PAGE_SIZE; + pmap_resident_count_dec(pmap, L2_SIZE / PAGE_SIZE); + if ((oldl2 & PTE_SW_MANAGED) != 0) { + CHANGE_PV_LIST_LOCK_TO_PHYS(lockp, PTE_TO_PHYS(oldl2)); + pvh = pa_to_pvh(PTE_TO_PHYS(oldl2)); + pmap_pvh_free(pvh, pmap, sva); + eva = sva + L2_SIZE; + for (va = sva, m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(oldl2)); + va < eva; va += PAGE_SIZE, m++) { + if ((oldl2 & PTE_D) != 0) + vm_page_dirty(m); + if ((oldl2 & PTE_A) != 0) + vm_page_aflag_set(m, PGA_REFERENCED); + if (TAILQ_EMPTY(&m->md.pv_list) && + TAILQ_EMPTY(&pvh->pv_list)) + vm_page_aflag_clear(m, PGA_WRITEABLE); + } + } + if (pmap == kernel_pmap) { + pmap_remove_kernel_l2(pmap, l2, sva); + } else { + ml3 = pmap_remove_pt_page(pmap, sva); + if (ml3 != NULL) { + pmap_resident_count_dec(pmap, 1); + KASSERT(ml3->wire_count == Ln_ENTRIES, + ("pmap_remove_l2: l3 page wire count error")); + ml3->wire_count = 1; + vm_page_unwire_noq(ml3); + pmap_add_delayed_free_list(ml3, free, FALSE); + } + } + return (pmap_unuse_pt(pmap, sva, l1e, free)); +} + +/* * pmap_remove_l3: do the things to unmap a page in a process */ static int @@ -1687,7 +2091,7 @@ pmap_remove_l3(pmap_t pmap, pt_entry_t *l3, vm_offset_ pmap_pvh_free(&m->md, pmap, va); } - return (pmap_unuse_l3(pmap, va, l2e, free)); + return (pmap_unuse_pt(pmap, va, l2e, free)); } /* @@ -1699,11 +2103,11 @@ pmap_remove_l3(pmap_t pmap, pt_entry_t *l3, vm_offset_ void pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { + struct spglist free; struct rwlock *lock; vm_offset_t va, va_next; - pd_entry_t *l1, *l2; - pt_entry_t l3_pte, *l3; - struct spglist free; + pd_entry_t *l1, *l2, l2e; + pt_entry_t *l3; /* * Perform an unsynchronized read. This is, however, safe. @@ -1739,16 +2143,22 @@ pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t l2 = pmap_l1_to_l2(l1, sva); if (l2 == NULL) continue; - - l3_pte = pmap_load(l2); - - /* - * Weed out invalid mappings. - */ - if (l3_pte == 0) + if ((l2e = pmap_load(l2)) == 0) continue; - if ((pmap_load(l2) & PTE_RX) != 0) - continue; + if ((l2e & PTE_RWX) != 0) { + if (sva + L2_SIZE == va_next && eva >= va_next) { + (void)pmap_remove_l2(pmap, l2, sva, + pmap_load(l1), &free, &lock); + continue; + } else if (!pmap_demote_l2_locked(pmap, l2, sva, + &lock)) { + /* + * The large page mapping was destroyed. + */ + continue; + } + l2e = pmap_load(l2); + } /* * Limit our scan to either the end of the va represented @@ -1761,8 +2171,6 @@ pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t va = va_next; for (l3 = pmap_l2_to_l3(l2, sva); sva != va_next; l3++, sva += L3_SIZE) { - if (l3 == NULL) - panic("l3 == NULL"); if (pmap_load(l3) == 0) { if (va != va_next) { pmap_invalidate_range(pmap, va, sva); @@ -1772,8 +2180,7 @@ pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t } if (va == va_next) va = sva; - if (pmap_remove_l3(pmap, l3, sva, l3_pte, &free, - &lock)) { + if (pmap_remove_l3(pmap, l3, sva, l2e, &free, &lock)) { sva += L3_SIZE; break; } @@ -1783,7 +2190,7 @@ pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t } if (lock != NULL) rw_wunlock(lock); - rw_runlock(&pvh_global_lock); + rw_runlock(&pvh_global_lock); PMAP_UNLOCK(pmap); vm_page_free_pages_toq(&free, false); } @@ -1804,42 +2211,54 @@ pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t void pmap_remove_all(vm_page_t m) { - pv_entry_t pv; - pmap_t pmap; - pt_entry_t *l3, tl3; - pd_entry_t *l2, tl2; struct spglist free; + struct md_page *pvh; + pmap_t pmap; + pt_entry_t *l3, l3e; + pd_entry_t *l2, l2e; + pv_entry_t pv; + vm_offset_t va; KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_remove_all: page %p is not managed", m)); SLIST_INIT(&free); + pvh = (m->flags & PG_FICTITIOUS) != 0 ? &pv_dummy : + pa_to_pvh(VM_PAGE_TO_PHYS(m)); + rw_wlock(&pvh_global_lock); + while ((pv = TAILQ_FIRST(&pvh->pv_list)) != NULL) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + va = pv->pv_va; + l2 = pmap_l2(pmap, va); + (void)pmap_demote_l2(pmap, l2, va); + PMAP_UNLOCK(pmap); + } while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pmap_resident_count_dec(pmap, 1); l2 = pmap_l2(pmap, pv->pv_va); KASSERT(l2 != NULL, ("pmap_remove_all: no l2 table found")); - tl2 = pmap_load(l2); + l2e = pmap_load(l2); - KASSERT((tl2 & PTE_RX) == 0, - ("pmap_remove_all: found a table when expecting " - "a block in %p's pv list", m)); + KASSERT((l2e & PTE_RX) == 0, + ("pmap_remove_all: found a superpage in %p's pv list", m)); l3 = pmap_l2_to_l3(l2, pv->pv_va); - tl3 = pmap_load_clear(l3); + l3e = pmap_load_clear(l3); pmap_invalidate_page(pmap, pv->pv_va); - if (tl3 & PTE_SW_WIRED) + if (l3e & PTE_SW_WIRED) pmap->pm_stats.wired_count--; - if ((tl3 & PTE_A) != 0) + if ((l3e & PTE_A) != 0) vm_page_aflag_set(m, PGA_REFERENCED); /* * Update the vm_page_t clean and reference bits. */ - if ((tl3 & PTE_D) != 0) + if ((l3e & PTE_D) != 0) vm_page_dirty(m); - pmap_unuse_l3(pmap, pv->pv_va, pmap_load(l2), &free); + pmap_unuse_pt(pmap, pv->pv_va, pmap_load(l2), &free); TAILQ_REMOVE(&m->md.pv_list, pv, pv_next); m->md.pv_gen++; free_pv_entry(pmap, pv); @@ -1857,10 +2276,12 @@ pmap_remove_all(vm_page_t m) void pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot) { - pd_entry_t *l1, *l2; + pd_entry_t *l1, *l2, l2e; pt_entry_t *l3, l3e, mask; vm_page_t m; - vm_offset_t va_next; + vm_paddr_t pa; + vm_offset_t va, va_next; + bool anychanged, pv_lists_locked; if ((prot & VM_PROT_READ) == VM_PROT_NONE) { pmap_remove(pmap, sva, eva); @@ -1871,12 +2292,14 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t (VM_PROT_WRITE | VM_PROT_EXECUTE)) return; + anychanged = false; + pv_lists_locked = false; mask = 0; if ((prot & VM_PROT_WRITE) == 0) mask |= PTE_W | PTE_D; if ((prot & VM_PROT_EXECUTE) == 0) mask |= PTE_X; - +resume: PMAP_LOCK(pmap); for (; sva < eva; sva = va_next) { l1 = pmap_l1(pmap, sva); @@ -1892,10 +2315,41 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t va_next = eva; l2 = pmap_l1_to_l2(l1, sva); - if (l2 == NULL || pmap_load(l2) == 0) + if (l2 == NULL || (l2e = pmap_load(l2)) == 0) continue; - if ((pmap_load(l2) & PTE_RX) != 0) - continue; + if ((l2e & PTE_RWX) != 0) { + if (sva + L2_SIZE == va_next && eva >= va_next) { +retryl2: + if ((l2e & (PTE_SW_MANAGED | PTE_D)) == + (PTE_SW_MANAGED | PTE_D)) { + pa = PTE_TO_PHYS(l2e); + for (va = sva, m = PHYS_TO_VM_PAGE(pa); + va < va_next; m++, va += PAGE_SIZE) + vm_page_dirty(m); + } + if (!atomic_fcmpset_long(l2, &l2e, l2e & ~mask)) + goto retryl2; + anychanged = true; + } else { + if (!pv_lists_locked) { + pv_lists_locked = true; + if (!rw_try_rlock(&pvh_global_lock)) { + if (anychanged) + pmap_invalidate_all( + pmap); + PMAP_UNLOCK(pmap); + rw_rlock(&pvh_global_lock); + goto resume; + } + } + if (!pmap_demote_l2(pmap, l2, sva)) { + /* + * The large page mapping was destroyed. + */ + continue; + } + } + } if (va_next > eva) va_next = eva; @@ -1903,7 +2357,7 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t for (l3 = pmap_l2_to_l3(l2, sva); sva != va_next; l3++, sva += L3_SIZE) { l3e = pmap_load(l3); -retry: +retryl3: if ((l3e & PTE_V) == 0) continue; if ((prot & VM_PROT_WRITE) == 0 && @@ -1913,60 +2367,236 @@ retry: vm_page_dirty(m); } if (!atomic_fcmpset_long(l3, &l3e, l3e & ~mask)) - goto retry; - /* XXX: Use pmap_invalidate_range */ - pmap_invalidate_page(pmap, sva); + goto retryl3; + anychanged = true; } } + if (anychanged) + pmap_invalidate_all(pmap); + if (pv_lists_locked) + rw_runlock(&pvh_global_lock); PMAP_UNLOCK(pmap); } int pmap_fault_fixup(pmap_t pmap, vm_offset_t va, vm_prot_t ftype) { - pt_entry_t orig_l3; - pt_entry_t new_l3; - pt_entry_t *l3; + pd_entry_t *l2, l2e; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Wed Feb 13 17:38:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CDDEA14D3377; Wed, 13 Feb 2019 17:38:48 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6C3896D161; Wed, 13 Feb 2019 17:38:48 +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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 41C612A725; Wed, 13 Feb 2019 17:38:48 +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 x1DHcmbG035211; Wed, 13 Feb 2019 17:38:48 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DHcmBu035210; Wed, 13 Feb 2019 17:38:48 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201902131738.x1DHcmBu035210@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Wed, 13 Feb 2019 17:38:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344107 - head/sys/riscv/riscv X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: head/sys/riscv/riscv X-SVN-Commit-Revision: 344107 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6C3896D161 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 17:38:49 -0000 Author: markj Date: Wed Feb 13 17:38:47 2019 New Revision: 344107 URL: https://svnweb.freebsd.org/changeset/base/344107 Log: Implement pmap_clear_modify() for RISC-V. Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18875 Modified: head/sys/riscv/riscv/pmap.c Modified: head/sys/riscv/riscv/pmap.c ============================================================================== --- head/sys/riscv/riscv/pmap.c Wed Feb 13 17:19:37 2019 (r344106) +++ head/sys/riscv/riscv/pmap.c Wed Feb 13 17:38:47 2019 (r344107) @@ -4074,6 +4074,14 @@ pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t void pmap_clear_modify(vm_page_t m) { + struct md_page *pvh; + struct rwlock *lock; + pmap_t pmap; + pv_entry_t next_pv, pv; + pd_entry_t *l2, oldl2; + pt_entry_t *l3, oldl3; + vm_offset_t va; + int md_gen, pvh_gen; KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); @@ -4088,8 +4096,78 @@ pmap_clear_modify(vm_page_t m) */ if ((m->aflags & PGA_WRITEABLE) == 0) return; - - /* RISCVTODO: We lack support for tracking if a page is modified */ + pvh = (m->flags & PG_FICTITIOUS) != 0 ? &pv_dummy : + pa_to_pvh(VM_PAGE_TO_PHYS(m)); + lock = VM_PAGE_TO_PV_LIST_LOCK(m); + rw_rlock(&pvh_global_lock); + rw_wlock(lock); +restart: + TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_next, next_pv) { + pmap = PV_PMAP(pv); + if (!PMAP_TRYLOCK(pmap)) { + pvh_gen = pvh->pv_gen; + rw_wunlock(lock); + PMAP_LOCK(pmap); + rw_wlock(lock); + if (pvh_gen != pvh->pv_gen) { + PMAP_UNLOCK(pmap); + goto restart; + } + } + va = pv->pv_va; + l2 = pmap_l2(pmap, va); + oldl2 = pmap_load(l2); + if ((oldl2 & PTE_W) != 0) { + if (pmap_demote_l2_locked(pmap, l2, va, &lock)) { + if ((oldl2 & PTE_SW_WIRED) == 0) { + /* + * Write protect the mapping to a + * single page so that a subsequent + * write access may repromote. + */ + va += VM_PAGE_TO_PHYS(m) - + PTE_TO_PHYS(oldl2); + l3 = pmap_l2_to_l3(l2, va); + oldl3 = pmap_load(l3); + if ((oldl3 & PTE_V) != 0) { + while (!atomic_fcmpset_long(l3, + &oldl3, oldl3 & ~(PTE_D | + PTE_W))) + cpu_spinwait(); + vm_page_dirty(m); + pmap_invalidate_page(pmap, va); + } + } + } + } + PMAP_UNLOCK(pmap); + } + TAILQ_FOREACH(pv, &m->md.pv_list, pv_next) { + pmap = PV_PMAP(pv); + if (!PMAP_TRYLOCK(pmap)) { + md_gen = m->md.pv_gen; + pvh_gen = pvh->pv_gen; + rw_wunlock(lock); + PMAP_LOCK(pmap); + rw_wlock(lock); + if (pvh_gen != pvh->pv_gen || md_gen != m->md.pv_gen) { + PMAP_UNLOCK(pmap); + goto restart; + } + } + l2 = pmap_l2(pmap, pv->pv_va); + KASSERT((pmap_load(l2) & PTE_RWX) == 0, + ("pmap_clear_modify: found a 2mpage in page %p's pv list", + m)); + l3 = pmap_l2_to_l3(l2, pv->pv_va); + if ((pmap_load(l3) & (PTE_D | PTE_W)) == (PTE_D | PTE_W)) { + pmap_clear_bits(l3, PTE_D); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } + rw_wunlock(lock); + rw_runlock(&pvh_global_lock); } void * From owner-svn-src-all@freebsd.org Wed Feb 13 17:50:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2219F14D3975; Wed, 13 Feb 2019 17:50:04 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B4B066D80F; Wed, 13 Feb 2019 17:50:03 +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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8AD192A8D2; Wed, 13 Feb 2019 17:50:03 +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 x1DHo36f040526; Wed, 13 Feb 2019 17:50:03 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DHo1Vk040518; Wed, 13 Feb 2019 17:50:01 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201902131750.x1DHo1Vk040518@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Wed, 13 Feb 2019 17:50:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344108 - in head/sys/riscv: include riscv X-SVN-Group: head X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in head/sys/riscv: include riscv X-SVN-Commit-Revision: 344108 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B4B066D80F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 17:50:04 -0000 Author: markj Date: Wed Feb 13 17:50:01 2019 New Revision: 344108 URL: https://svnweb.freebsd.org/changeset/base/344108 Log: Implement per-CPU pmap activation tracking for RISC-V. This reduces the overhead of TLB invalidations by ensuring that we only interrupt CPUs which are using the given pmap. Tracking is performed in pmap_activate(), which gets called during context switches: from cpu_throw(), if a thread is exiting or an AP is starting, or cpu_switch() for a regular context switch. For now, pmap_sync_icache() still must interrupt all CPUs. Reviewed by: kib (earlier version), jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18874 Modified: head/sys/riscv/include/pcb.h head/sys/riscv/include/pcpu.h head/sys/riscv/include/pmap.h head/sys/riscv/riscv/genassym.c head/sys/riscv/riscv/machdep.c head/sys/riscv/riscv/mp_machdep.c head/sys/riscv/riscv/pmap.c head/sys/riscv/riscv/swtch.S head/sys/riscv/riscv/vm_machdep.c Modified: head/sys/riscv/include/pcb.h ============================================================================== --- head/sys/riscv/include/pcb.h Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/include/pcb.h Wed Feb 13 17:50:01 2019 (r344108) @@ -55,7 +55,6 @@ struct pcb { #define PCB_FP_STARTED 0x1 #define PCB_FP_USERMASK 0x1 uint64_t pcb_sepc; /* Supervisor exception pc */ - vm_offset_t pcb_l1addr; /* L1 page tables base address */ vm_offset_t pcb_onfault; /* Copyinout fault handler */ }; Modified: head/sys/riscv/include/pcpu.h ============================================================================== --- head/sys/riscv/include/pcpu.h Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/include/pcpu.h Wed Feb 13 17:50:01 2019 (r344108) @@ -45,6 +45,7 @@ #define ALT_STACK_SIZE 128 #define PCPU_MD_FIELDS \ + struct pmap *pc_curpmap; /* Currently active pmap */ \ uint32_t pc_pending_ipis; /* IPIs pending to this CPU */ \ char __pad[61] Modified: head/sys/riscv/include/pmap.h ============================================================================== --- head/sys/riscv/include/pmap.h Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/include/pmap.h Wed Feb 13 17:50:01 2019 (r344108) @@ -41,6 +41,7 @@ #ifndef LOCORE #include +#include #include #include @@ -80,6 +81,8 @@ struct pmap { struct mtx pm_mtx; struct pmap_statistics pm_stats; /* pmap statictics */ pd_entry_t *pm_l1; + u_long pm_satp; /* value for SATP register */ + cpuset_t pm_active; /* active on cpus */ TAILQ_HEAD(,pv_chunk) pm_pvchunk; /* list of mappings in pmap */ LIST_ENTRY(pmap) pm_list; /* List of all pmaps */ struct vm_radix pm_root; @@ -137,6 +140,10 @@ extern vm_offset_t virtual_end; #define L1_MAPPABLE_P(va, pa, size) \ ((((va) | (pa)) & L1_OFFSET) == 0 && (size) >= L1_SIZE) +struct thread; + +void pmap_activate_boot(pmap_t); +void pmap_activate_sw(struct thread *); void pmap_bootstrap(vm_offset_t, vm_paddr_t, vm_size_t); void pmap_kenter_device(vm_offset_t, vm_size_t, vm_paddr_t); vm_paddr_t pmap_kextract(vm_offset_t va); Modified: head/sys/riscv/riscv/genassym.c ============================================================================== --- head/sys/riscv/riscv/genassym.c Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/riscv/genassym.c Wed Feb 13 17:50:01 2019 (r344108) @@ -63,7 +63,6 @@ ASSYM(TDF_ASTPENDING, TDF_ASTPENDING); ASSYM(TDF_NEEDRESCHED, TDF_NEEDRESCHED); ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); -ASSYM(PCB_L1ADDR, offsetof(struct pcb, pcb_l1addr)); ASSYM(PCB_SIZE, sizeof(struct pcb)); ASSYM(PCB_RA, offsetof(struct pcb, pcb_ra)); ASSYM(PCB_SP, offsetof(struct pcb, pcb_sp)); Modified: head/sys/riscv/riscv/machdep.c ============================================================================== --- head/sys/riscv/riscv/machdep.c Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/riscv/machdep.c Wed Feb 13 17:50:01 2019 (r344108) @@ -871,10 +871,6 @@ initriscv(struct riscv_bootparams *rvbp) init_proc0(rvbp->kern_stack); - /* set page table base register for thread0 */ - thread0.td_pcb->pcb_l1addr = \ - (rvbp->kern_l1pt - KERNBASE + rvbp->kern_phys); - msgbufinit(msgbufp, msgbufsize); mutex_init(); init_param2(physmem); Modified: head/sys/riscv/riscv/mp_machdep.c ============================================================================== --- head/sys/riscv/riscv/mp_machdep.c Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/riscv/mp_machdep.c Wed Feb 13 17:50:01 2019 (r344108) @@ -58,6 +58,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -254,6 +255,9 @@ init_secondary(uint64_t cpu) /* Enable external (PLIC) interrupts */ csr_set(sie, SIE_SEIE); + + /* Activate process 0's pmap. */ + pmap_activate_boot(vmspace_pmap(proc0.p_vmspace)); mtx_lock_spin(&ap_boot_mtx); Modified: head/sys/riscv/riscv/pmap.c ============================================================================== --- head/sys/riscv/riscv/pmap.c Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/riscv/pmap.c Wed Feb 13 17:50:01 2019 (r344108) @@ -118,9 +118,10 @@ __FBSDID("$FreeBSD$"); */ #include +#include #include #include -#include +#include #include #include #include @@ -566,6 +567,8 @@ pmap_bootstrap(vm_offset_t l1pt, vm_paddr_t kernstart, rw_init(&pvh_global_lock, "pmap pv global"); + CPU_FILL(&kernel_pmap->pm_active); + /* Assume the address we were loaded to is a valid physical address. */ min_pa = max_pa = kernstart; @@ -723,9 +726,6 @@ pmap_init(void) * In general, the calling thread uses a plain fence to order the * writes to the page tables before invoking an SBI callback to invoke * sfence_vma() on remote CPUs. - * - * Since the riscv pmap does not yet have a pm_active field, IPIs are - * sent to all CPUs in the system. */ static void pmap_invalidate_page(pmap_t pmap, vm_offset_t va) @@ -733,10 +733,11 @@ pmap_invalidate_page(pmap_t pmap, vm_offset_t va) cpuset_t mask; sched_pin(); - mask = all_cpus; + mask = pmap->pm_active; CPU_CLR(PCPU_GET(cpuid), &mask); fence(); - sbi_remote_sfence_vma(mask.__bits, va, 1); + if (!CPU_EMPTY(&mask) && smp_started) + sbi_remote_sfence_vma(mask.__bits, va, 1); sfence_vma_page(va); sched_unpin(); } @@ -747,10 +748,11 @@ pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm cpuset_t mask; sched_pin(); - mask = all_cpus; + mask = pmap->pm_active; CPU_CLR(PCPU_GET(cpuid), &mask); fence(); - sbi_remote_sfence_vma(mask.__bits, sva, eva - sva + 1); + if (!CPU_EMPTY(&mask) && smp_started) + sbi_remote_sfence_vma(mask.__bits, sva, eva - sva + 1); /* * Might consider a loop of sfence_vma_page() for a small @@ -766,16 +768,17 @@ pmap_invalidate_all(pmap_t pmap) cpuset_t mask; sched_pin(); - mask = all_cpus; + mask = pmap->pm_active; CPU_CLR(PCPU_GET(cpuid), &mask); - fence(); /* * XXX: The SBI doc doesn't detail how to specify x0 as the * address to perform a global fence. BBL currently treats * all sfence_vma requests as global however. */ - sbi_remote_sfence_vma(mask.__bits, 0, 0); + fence(); + if (!CPU_EMPTY(&mask) && smp_started) + sbi_remote_sfence_vma(mask.__bits, 0, 0); sfence_vma(); sched_unpin(); } @@ -1199,6 +1202,9 @@ pmap_pinit0(pmap_t pmap) PMAP_LOCK_INIT(pmap); bzero(&pmap->pm_stats, sizeof(pmap->pm_stats)); pmap->pm_l1 = kernel_pmap->pm_l1; + pmap->pm_satp = SATP_MODE_SV39 | (vtophys(pmap->pm_l1) >> PAGE_SHIFT); + CPU_ZERO(&pmap->pm_active); + pmap_activate_boot(pmap); } int @@ -1216,12 +1222,15 @@ pmap_pinit(pmap_t pmap) l1phys = VM_PAGE_TO_PHYS(l1pt); pmap->pm_l1 = (pd_entry_t *)PHYS_TO_DMAP(l1phys); + pmap->pm_satp = SATP_MODE_SV39 | (l1phys >> PAGE_SHIFT); if ((l1pt->flags & PG_ZERO) == 0) pagezero(pmap->pm_l1); bzero(&pmap->pm_stats, sizeof(pmap->pm_stats)); + CPU_ZERO(&pmap->pm_active); + /* Install kernel pagetables */ memcpy(pmap->pm_l1, kernel_pmap->pm_l1, PAGE_SIZE); @@ -1411,6 +1420,8 @@ pmap_release(pmap_t pmap) KASSERT(pmap->pm_stats.resident_count == 0, ("pmap_release: pmap resident count %ld != 0", pmap->pm_stats.resident_count)); + KASSERT(CPU_EMPTY(&pmap->pm_active), + ("releasing active pmap %p", pmap)); mtx_lock(&allpmaps_lock); LIST_REMOVE(pmap, pm_list); @@ -4252,26 +4263,56 @@ done: } void -pmap_activate(struct thread *td) +pmap_activate_sw(struct thread *td) { - pmap_t pmap; - uint64_t reg; + pmap_t oldpmap, pmap; + u_int cpu; - critical_enter(); + oldpmap = PCPU_GET(curpmap); pmap = vmspace_pmap(td->td_proc->p_vmspace); - td->td_pcb->pcb_l1addr = vtophys(pmap->pm_l1); + if (pmap == oldpmap) + return; + load_satp(pmap->pm_satp); - reg = SATP_MODE_SV39; - reg |= (td->td_pcb->pcb_l1addr >> PAGE_SHIFT); - load_satp(reg); + cpu = PCPU_GET(cpuid); +#ifdef SMP + CPU_SET_ATOMIC(cpu, &pmap->pm_active); + CPU_CLR_ATOMIC(cpu, &oldpmap->pm_active); +#else + CPU_SET(cpu, &pmap->pm_active); + CPU_CLR(cpu, &oldpmap->pm_active); +#endif + PCPU_SET(curpmap, pmap); - pmap_invalidate_all(pmap); + sfence_vma(); +} + +void +pmap_activate(struct thread *td) +{ + + critical_enter(); + pmap_activate_sw(td); critical_exit(); } void -pmap_sync_icache(pmap_t pm, vm_offset_t va, vm_size_t sz) +pmap_activate_boot(pmap_t pmap) { + u_int cpu; + + cpu = PCPU_GET(cpuid); +#ifdef SMP + CPU_SET_ATOMIC(cpu, &pmap->pm_active); +#else + CPU_SET(cpu, &pmap->pm_active); +#endif + PCPU_SET(curpmap, pmap); +} + +void +pmap_sync_icache(pmap_t pmap, vm_offset_t va, vm_size_t sz) +{ cpuset_t mask; /* @@ -4286,7 +4327,8 @@ pmap_sync_icache(pmap_t pm, vm_offset_t va, vm_size_t mask = all_cpus; CPU_CLR(PCPU_GET(cpuid), &mask); fence(); - sbi_remote_fence_i(mask.__bits); + if (!CPU_EMPTY(&mask) && smp_started) + sbi_remote_fence_i(mask.__bits); sched_unpin(); } Modified: head/sys/riscv/riscv/swtch.S ============================================================================== --- head/sys/riscv/riscv/swtch.S Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/riscv/swtch.S Wed Feb 13 17:50:01 2019 (r344108) @@ -207,28 +207,21 @@ ENTRY(fpe_state_clear) END(fpe_state_clear) /* - * void cpu_throw(struct thread *old, struct thread *new) + * void cpu_throw(struct thread *old __unused, struct thread *new) */ ENTRY(cpu_throw) + /* Activate the new thread's pmap. */ + mv s0, a1 + mv a0, a1 + call _C_LABEL(pmap_activate_sw) + mv a0, s0 + /* Store the new curthread */ - sd a1, PC_CURTHREAD(gp) + sd a0, PC_CURTHREAD(gp) /* And the new pcb */ - ld x13, TD_PCB(a1) + ld x13, TD_PCB(a0) sd x13, PC_CURPCB(gp) - sfence.vma - - /* Switch to the new pmap */ - ld t0, PCB_L1ADDR(x13) - srli t0, t0, PAGE_SHIFT - li t1, SATP_MODE_SV39 - or t0, t0, t1 - csrw satp, t0 - - /* TODO: Invalidate the TLB */ - - sfence.vma - /* Load registers */ ld ra, (PCB_RA)(x13) ld sp, (PCB_SP)(x13) @@ -250,7 +243,7 @@ ENTRY(cpu_throw) #ifdef FPE /* Is FPE enabled for new thread? */ - ld t0, TD_FRAME(a1) + ld t0, TD_FRAME(a0) ld t1, (TF_SSTATUS)(t0) li t2, SSTATUS_FS_MASK and t3, t1, t2 @@ -324,38 +317,27 @@ ENTRY(cpu_switch) 1: #endif - /* - * Restore the saved context. - */ - ld x13, TD_PCB(a1) + /* Activate the new thread's pmap */ + mv s0, a0 + mv s1, a1 + mv s2, a2 + mv a0, a1 + call _C_LABEL(pmap_activate_sw) + mv a1, s1 - /* - * TODO: We may need to flush the cache here if switching - * to a user process. - */ - - sfence.vma - - /* Switch to the new pmap */ - ld t0, PCB_L1ADDR(x13) - srli t0, t0, PAGE_SHIFT - li t1, SATP_MODE_SV39 - or t0, t0, t1 - csrw satp, t0 - - /* TODO: Invalidate the TLB */ - - sfence.vma - /* Release the old thread */ - sd a2, TD_LOCK(a0) + sd s2, TD_LOCK(s0) #if defined(SCHED_ULE) && defined(SMP) /* Spin if TD_LOCK points to a blocked_lock */ - la a2, _C_LABEL(blocked_lock) + la s2, _C_LABEL(blocked_lock) 1: ld t0, TD_LOCK(a1) - beq t0, a2, 1b + beq t0, s2, 1b #endif + /* + * Restore the saved context. + */ + ld x13, TD_PCB(a1) /* Restore the registers */ ld tp, (PCB_TP)(x13) Modified: head/sys/riscv/riscv/vm_machdep.c ============================================================================== --- head/sys/riscv/riscv/vm_machdep.c Wed Feb 13 17:38:47 2019 (r344107) +++ head/sys/riscv/riscv/vm_machdep.c Wed Feb 13 17:50:01 2019 (r344108) @@ -92,9 +92,6 @@ cpu_fork(struct thread *td1, struct proc *p2, struct t td2->td_pcb = pcb2; bcopy(td1->td_pcb, pcb2, sizeof(*pcb2)); - td2->td_pcb->pcb_l1addr = - vtophys(vmspace_pmap(td2->td_proc->p_vmspace)->pm_l1); - tf = (struct trapframe *)STACKALIGN((struct trapframe *)pcb2 - 1); bcopy(td1->td_frame, tf, sizeof(*tf)); From owner-svn-src-all@freebsd.org Wed Feb 13 18:02:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 85C8814D3EC2 for ; Wed, 13 Feb 2019 18:02:42 +0000 (UTC) (envelope-from rrs@netflix.com) Received: from mail-qt1-x842.google.com (mail-qt1-x842.google.com [IPv6:2607:f8b0:4864:20::842]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 188776E0D2 for ; Wed, 13 Feb 2019 18:02:42 +0000 (UTC) (envelope-from rrs@netflix.com) Received: by mail-qt1-x842.google.com with SMTP id b8so3624567qtr.9 for ; Wed, 13 Feb 2019 10:02:42 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=uiKX2qMENUw/ulv0QYq9Wzkap5tYQ63VQnMsYxqp9L0=; b=J9NhHJFWQu7RbRo/RunR3wp1WmXCZP6mRiZXiwxySELqykeiVXPS8UfvoZKq3Sc/d+ zgCQGWLHypIGsyejDM8jb9FjjwEU+3AWc7lIw7fUr25DmUAS1t0RN10dbBsBlJBPA7bv 6xnL2LAUNEouv7I75XZtSKVpNfyGLS4MuuMxcvZca8VGN0CGPGXfeOa4JdYrH0VqQ+Mn 1BGqzuogI0KPJutiEtgMLkYJ6OQcVjRZxvhtiFgBpsopmNqy/mqKrpJDj5faWd7R/ovA LTSqG0i8/tMxp16SbLRYsm2Di/O9cZRD5c6NLD52+v505qrCR68jk6uBtIudNVX0ujWy A1RQ== X-Gm-Message-State: AHQUAuZogTMzcsEwEMaFH4a/4e1isUJHSEwfaoz5rfuCP2+5r1on8IO+ LS+/pdcwMAqqCPEYnozsIiC7kg== X-Google-Smtp-Source: AHgI3IbgV+C3+XTNrA2Egu4racrOL/NsNce5DDLJF1ZD4Y5A7ggE3z8wT4sLFGU5lmPX5Vv4Osv5PQ== X-Received: by 2002:ac8:346c:: with SMTP id v41mr1426530qtb.231.1550080960160; Wed, 13 Feb 2019 10:02:40 -0800 (PST) Received: from ?IPv6:2607:fb10:7061:7fd::8524? ([2607:fb10:7061:7fd::8524]) by smtp.gmail.com with ESMTPSA id f19sm23251744qtf.1.2019.02.13.10.02.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Feb 2019 10:02:39 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Subject: Re: svn commit: r344099 - head/sys/net From: Randall Stewart In-Reply-To: <99453977-0f52-6050-3f40-e0fd7ea43d7f@FreeBSD.org> Date: Wed, 13 Feb 2019 13:02:37 -0500 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <80314D46-6FEC-462D-8EC5-FCE1ECFF81EF@netflix.com> References: <201902131457.x1DEvx9V051533@repo.freebsd.org> <99453977-0f52-6050-3f40-e0fd7ea43d7f@FreeBSD.org> To: John Baldwin X-Mailer: Apple Mail (2.3445.9.1) X-Rspamd-Queue-Id: 188776E0D2 X-Spamd-Bar: ------ X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.99)[-0.992,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 18:02:42 -0000 I disagree. If you define an alloc it is only reciprocal that you should define a free. The code in question that hit this was changed (its in a version of rack that has the rate-limit and TLS code).. but I think these things *should* be balanced.. if you provide an Allocate, you should also provide a Free=E2=80=A6=20 R > On Feb 13, 2019, at 12:09 PM, John Baldwin wrote: >=20 > On 2/13/19 6:57 AM, Randall Stewart wrote: >> Author: rrs >> Date: Wed Feb 13 14:57:59 2019 >> New Revision: 344099 >> URL: https://svnweb.freebsd.org/changeset/base/344099 >>=20 >> Log: >> This commit adds the missing release mechanism for the >> ratelimiting code. The two modules (lagg and vlan) did have >> allocation routines, and even though they are indirect (and >> vector down to the underlying interfaces) they both need to >> have a free routine (that also vectors down to the actual = interface). >>=20 >> Sponsored by: Netflix Inc. >> Differential Revision: https://reviews.freebsd.org/D19032 >=20 > Hmm, I don't understand why you'd ever invoke if_snd_tag_free from = anything > but 'tag->ifp' rather than some other ifp. What if the route for a = connection > moves so that a tag allocated on cc0 is now on a route that goes over = em0? > You can't expect em0 to have an if_snd_tag_free routine that will know = to > go invoke cxgbe's snd_tag_free. I think you should always be using > 'tag->ifp->if_snd_tag_free' to free tags and never using any other = ifp. >=20 > That is, I think this should be reverted and that instead you need to = fix > the code invoking if_snd_tag_free to invoke it on the tag's ifp = instead of > some random other ifp. >=20 > --=20 > John Baldwin >=20 > = =20 ------ Randall Stewart rrs@netflix.com From owner-svn-src-all@freebsd.org Wed Feb 13 18:03:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 95AD114D3FCB for ; Wed, 13 Feb 2019 18:03:54 +0000 (UTC) (envelope-from rrs@netflix.com) Received: from mail-qt1-x829.google.com (mail-qt1-x829.google.com [IPv6:2607:f8b0:4864:20::829]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 261026E2B4 for ; Wed, 13 Feb 2019 18:03:54 +0000 (UTC) (envelope-from rrs@netflix.com) Received: by mail-qt1-x829.google.com with SMTP id y4so3632161qtc.10 for ; Wed, 13 Feb 2019 10:03:54 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=+2Dmb8VuC0haHrG2oJmgAciQReky7ifvu6tznJvfKD0=; b=OvyN9Oin44SiRlmjscTVmg2HIe52WtDgK4wB5IBv4/a1fNfjoz7GOClzDvli6iphzp 162JPpEefHvl+hb4iJzVrzlmHX1+jxt6W9R/H/cRxopGMgvzEOuXzdz8jOAFqWuWnWPl uYAmMoM793AHOYWmoKSPhEuOkWUHymdBsdQRwbBNNobuyG49f+CfBWbWlXYqvflskIkH eduOita2lIN9RDqp1onnjbleV1TMYbxgIwRo3LP0OhT03MgoGWuYYVz7HfEtq+Le7/WE H0E/abx8dp/EWD+jTtadEHhyyN3eTjDq+cNiybd3vaeMjvWcXxA1KmOegWp9EIeETzzv 8Kfw== X-Gm-Message-State: AHQUAubzOfMo9E/2b8UI17GEbKn+8cIx3TtLnabggXx5g4No+hCazTF8 /mFe3hrf8tIKGgRE1FACHxIItA== X-Google-Smtp-Source: AHgI3IarW43BhaHRuhKt1pX8vAnot29SX16uqAAXewSXWqAwJgzjh/zsMxqq8hYcZIwY1W2Uxa+Piw== X-Received: by 2002:a0c:8ecc:: with SMTP id y12mr1383551qvb.41.1550081032927; Wed, 13 Feb 2019 10:03:52 -0800 (PST) Received: from ?IPv6:2607:fb10:7061:7fd::8524? ([2607:fb10:7061:7fd::8524]) by smtp.gmail.com with ESMTPSA id c10sm8858436qtm.64.2019.02.13.10.03.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Feb 2019 10:03:52 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Subject: Re: svn commit: r344099 - head/sys/net From: Randall Stewart In-Reply-To: <80314D46-6FEC-462D-8EC5-FCE1ECFF81EF@netflix.com> Date: Wed, 13 Feb 2019 13:03:51 -0500 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <201902131457.x1DEvx9V051533@repo.freebsd.org> <99453977-0f52-6050-3f40-e0fd7ea43d7f@FreeBSD.org> <80314D46-6FEC-462D-8EC5-FCE1ECFF81EF@netflix.com> To: John Baldwin X-Mailer: Apple Mail (2.3445.9.1) X-Rspamd-Queue-Id: 261026E2B4 X-Spamd-Bar: ------ X-Spamd-Result: default: False [-7.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-1.00)[-0.997,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 18:03:54 -0000 oh and one other thing.. It was *not* a random IFP.. it was the IFP to the lagg. I.e. an alloc() was done to the lagg.. and the free was done back to the same IFP (that provided the allocate). R > On Feb 13, 2019, at 1:02 PM, Randall Stewart wrote: >=20 > I disagree. If you define an alloc it is only > reciprocal that you should define a free. >=20 > The code in question that hit this was changed (its in a version > of rack that has the rate-limit and TLS code).. but I think these > things *should* be balanced.. if you provide an Allocate, you > should also provide a Free=E2=80=A6=20 >=20 > R >=20 >=20 >> On Feb 13, 2019, at 12:09 PM, John Baldwin wrote: >>=20 >> On 2/13/19 6:57 AM, Randall Stewart wrote: >>> Author: rrs >>> Date: Wed Feb 13 14:57:59 2019 >>> New Revision: 344099 >>> URL: https://svnweb.freebsd.org/changeset/base/344099 >>>=20 >>> Log: >>> This commit adds the missing release mechanism for the >>> ratelimiting code. The two modules (lagg and vlan) did have >>> allocation routines, and even though they are indirect (and >>> vector down to the underlying interfaces) they both need to >>> have a free routine (that also vectors down to the actual = interface). >>>=20 >>> Sponsored by: Netflix Inc. >>> Differential Revision: https://reviews.freebsd.org/D19032 >>=20 >> Hmm, I don't understand why you'd ever invoke if_snd_tag_free from = anything >> but 'tag->ifp' rather than some other ifp. What if the route for a = connection >> moves so that a tag allocated on cc0 is now on a route that goes over = em0? >> You can't expect em0 to have an if_snd_tag_free routine that will = know to >> go invoke cxgbe's snd_tag_free. I think you should always be using >> 'tag->ifp->if_snd_tag_free' to free tags and never using any other = ifp. >>=20 >> That is, I think this should be reverted and that instead you need to = fix >> the code invoking if_snd_tag_free to invoke it on the tag's ifp = instead of >> some random other ifp. >>=20 >> --=20 >> John Baldwin >>=20 >>=20 >=20 > ------ > Randall Stewart > rrs@netflix.com >=20 >=20 >=20 ------ Randall Stewart rrs@netflix.com From owner-svn-src-all@freebsd.org Wed Feb 13 18:11:21 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CF50214D4367; Wed, 13 Feb 2019 18:11:20 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6E3AE6E59F; Wed, 13 Feb 2019 18:11:20 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id C56D31D47B; Wed, 13 Feb 2019 18:11:19 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r344099 - head/sys/net To: Randall Stewart Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201902131457.x1DEvx9V051533@repo.freebsd.org> <99453977-0f52-6050-3f40-e0fd7ea43d7f@FreeBSD.org> <80314D46-6FEC-462D-8EC5-FCE1ECFF81EF@netflix.com> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <89d15ffe-1bc9-adaf-9307-4bf6541cc5e1@FreeBSD.org> Date: Wed, 13 Feb 2019 10:10:54 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6E3AE6E59F X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.982,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 18:11:21 -0000 On 2/13/19 10:03 AM, Randall Stewart wrote: > oh and one other thing.. > > It was *not* a random IFP.. it was the IFP to the lagg. > > I.e. an alloc() was done to the lagg.. and the free was > done back to the same IFP (that provided the allocate). Yes, that's wrong. Suppose the route changes so that my traffic is now over em0 instead of lagg0 (where em0 isn't a member of the lagg), how do you expect if_lagg_free to invoke em0's free routine? In your case it does, but only by accident. It doesn't work in the other case I described which is if you have non-lagg interfaces and a route moves from cc0 to em0. In that case your existing code that is using the wrong ifp will just panic. These aren't real alloc routines as the lagg and vlan ones don't allocate anything, they pass along the request to the child and the child allocates the tag. Only ifnet's that actually allocate tags should need to free them, and you should be using tag->ifp to as the ifp whose if_snd_tag_free works. > R > >> On Feb 13, 2019, at 1:02 PM, Randall Stewart wrote: >> >> I disagree. If you define an alloc it is only >> reciprocal that you should define a free. >> >> The code in question that hit this was changed (its in a version >> of rack that has the rate-limit and TLS code).. but I think these >> things *should* be balanced.. if you provide an Allocate, you >> should also provide a Free… >> >> R >> >> >>> On Feb 13, 2019, at 12:09 PM, John Baldwin wrote: >>> >>> On 2/13/19 6:57 AM, Randall Stewart wrote: >>>> Author: rrs >>>> Date: Wed Feb 13 14:57:59 2019 >>>> New Revision: 344099 >>>> URL: https://svnweb.freebsd.org/changeset/base/344099 >>>> >>>> Log: >>>> This commit adds the missing release mechanism for the >>>> ratelimiting code. The two modules (lagg and vlan) did have >>>> allocation routines, and even though they are indirect (and >>>> vector down to the underlying interfaces) they both need to >>>> have a free routine (that also vectors down to the actual interface). >>>> >>>> Sponsored by: Netflix Inc. >>>> Differential Revision: https://reviews.freebsd.org/D19032 >>> >>> Hmm, I don't understand why you'd ever invoke if_snd_tag_free from anything >>> but 'tag->ifp' rather than some other ifp. What if the route for a connection >>> moves so that a tag allocated on cc0 is now on a route that goes over em0? >>> You can't expect em0 to have an if_snd_tag_free routine that will know to >>> go invoke cxgbe's snd_tag_free. I think you should always be using >>> 'tag->ifp->if_snd_tag_free' to free tags and never using any other ifp. >>> >>> That is, I think this should be reverted and that instead you need to fix >>> the code invoking if_snd_tag_free to invoke it on the tag's ifp instead of >>> some random other ifp. >>> >>> -- >>> John Baldwin >>> >>> >> >> ------ >> Randall Stewart >> rrs@netflix.com >> >> >> > > ------ > Randall Stewart > rrs@netflix.com > > > -- John Baldwin                                                                              From owner-svn-src-all@freebsd.org Wed Feb 13 18:28:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 414C714D491A; Wed, 13 Feb 2019 18:28:55 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 495696EE44; Wed, 13 Feb 2019 18:28:54 +0000 (UTC) (envelope-from luporl@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 39C412AFE7; Wed, 13 Feb 2019 18:28:54 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DISsDi061055; Wed, 13 Feb 2019 18:28:54 GMT (envelope-from luporl@FreeBSD.org) Received: (from luporl@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DISsMk061054; Wed, 13 Feb 2019 18:28:54 GMT (envelope-from luporl@FreeBSD.org) Message-Id: <201902131828.x1DISsMk061054@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: luporl set sender to luporl@FreeBSD.org using -f From: Leandro Lupori Date: Wed, 13 Feb 2019 18:28:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344109 - head/lib/libthr/arch/powerpc/include X-SVN-Group: head X-SVN-Commit-Author: luporl X-SVN-Commit-Paths: head/lib/libthr/arch/powerpc/include X-SVN-Commit-Revision: 344109 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 495696EE44 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 18:28:55 -0000 Author: luporl Date: Wed Feb 13 18:28:53 2019 New Revision: 344109 URL: https://svnweb.freebsd.org/changeset/base/344109 Log: silence cast-align warnings from clang on powerpc64 silence the following warning when compiling libthr with clang 8 for powerpc64 architecture: usr/src/lib/libthr/arch/powerpc/include/pthread_md.h:82:10: error: cast from 'uint8_t *' (aka 'unsigned char *') to 'struct tcb *' increases required alignment from 1 to 8 [-Werror,-Wcast-align] 82: return ((struct tcb *)(_tp - TP_OFFSET)); Submitted by: alfredo.junior_eldorado.org.br Reviewed by: git_bdragon.rtk0.net, emaste, kib, jhibbits, luporl Differential Revision: https://reviews.freebsd.org/D18807 Modified: head/lib/libthr/arch/powerpc/include/pthread_md.h Modified: head/lib/libthr/arch/powerpc/include/pthread_md.h ============================================================================== --- head/lib/libthr/arch/powerpc/include/pthread_md.h Wed Feb 13 17:50:01 2019 (r344108) +++ head/lib/libthr/arch/powerpc/include/pthread_md.h Wed Feb 13 18:28:53 2019 (r344109) @@ -72,14 +72,15 @@ _tcb_set(struct tcb *tcb) static __inline struct tcb * _tcb_get(void) { - register uint8_t *_tp; + register struct tcb *tcb; + #ifdef __powerpc64__ - __asm __volatile("mr %0,13" : "=r"(_tp)); + __asm __volatile("addi %0,13,%1" : "=r"(tcb) : "i"(-TP_OFFSET)); #else - __asm __volatile("mr %0,2" : "=r"(_tp)); + __asm __volatile("addi %0,2,%1" : "=r"(tcb) : "i"(-TP_OFFSET)); #endif - return ((struct tcb *)(_tp - TP_OFFSET)); + return (tcb); } static __inline struct pthread * From owner-svn-src-all@freebsd.org Wed Feb 13 18:55:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5DA2C14D52DB; Wed, 13 Feb 2019 18:55:48 +0000 (UTC) (envelope-from bwidawsk@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D9CBE700DB; Wed, 13 Feb 2019 18:55:47 +0000 (UTC) (envelope-from bwidawsk@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C7D4B2B4D8; Wed, 13 Feb 2019 18:55:47 +0000 (UTC) (envelope-from bwidawsk@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DItl2P076424; Wed, 13 Feb 2019 18:55:47 GMT (envelope-from bwidawsk@FreeBSD.org) Received: (from bwidawsk@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DItldn076423; Wed, 13 Feb 2019 18:55:47 GMT (envelope-from bwidawsk@FreeBSD.org) Message-Id: <201902131855.x1DItldn076423@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bwidawsk set sender to bwidawsk@FreeBSD.org using -f From: Ben Widawsky Date: Wed, 13 Feb 2019 18:55:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344110 - stable/12/sys/compat/linuxkpi/common/include/linux X-SVN-Group: stable-12 X-SVN-Commit-Author: bwidawsk X-SVN-Commit-Paths: stable/12/sys/compat/linuxkpi/common/include/linux X-SVN-Commit-Revision: 344110 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D9CBE700DB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 18:55:48 -0000 Author: bwidawsk Date: Wed Feb 13 18:55:47 2019 New Revision: 344110 URL: https://svnweb.freebsd.org/changeset/base/344110 Log: MFC r340000: linuxkpi: Add GFP flags needed for ttm drivers Submitted by: Johannes Lundberg Requested by: bwidawsk Approved by: emaste (mentor) Modified: stable/12/sys/compat/linuxkpi/common/include/linux/gfp.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/compat/linuxkpi/common/include/linux/gfp.h ============================================================================== --- stable/12/sys/compat/linuxkpi/common/include/linux/gfp.h Wed Feb 13 18:28:53 2019 (r344109) +++ stable/12/sys/compat/linuxkpi/common/include/linux/gfp.h Wed Feb 13 18:55:47 2019 (r344110) @@ -52,6 +52,7 @@ #define __GFP_RETRY_MAYFAIL 0 #define __GFP_MOVABLE 0 #define __GFP_COMP 0 +#define __GFP_KSWAPD_RECLAIM 0 #define __GFP_IO 0 #define __GFP_NO_KSWAPD 0 @@ -73,6 +74,7 @@ #define GFP_TEMPORARY M_NOWAIT #define GFP_NATIVE_MASK (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_ZERO) #define GFP_TRANSHUGE 0 +#define GFP_TRANSHUGE_LIGHT 0 CTASSERT((__GFP_DMA32 & GFP_NATIVE_MASK) == 0); CTASSERT((__GFP_BITS_MASK & GFP_NATIVE_MASK) == GFP_NATIVE_MASK); From owner-svn-src-all@freebsd.org Wed Feb 13 19:00:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A207014D53FF; Wed, 13 Feb 2019 19:00:07 +0000 (UTC) (envelope-from bwidawsk@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46A59702CB; Wed, 13 Feb 2019 19:00:07 +0000 (UTC) (envelope-from bwidawsk@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 350702B4DD; Wed, 13 Feb 2019 19:00:07 +0000 (UTC) (envelope-from bwidawsk@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DJ07j0076687; Wed, 13 Feb 2019 19:00:07 GMT (envelope-from bwidawsk@FreeBSD.org) Received: (from bwidawsk@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DJ06BD076686; Wed, 13 Feb 2019 19:00:06 GMT (envelope-from bwidawsk@FreeBSD.org) Message-Id: <201902131900.x1DJ06BD076686@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bwidawsk set sender to bwidawsk@FreeBSD.org using -f From: Ben Widawsky Date: Wed, 13 Feb 2019 19:00:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344111 - stable/12/sys/dev/acpica X-SVN-Group: stable-12 X-SVN-Commit-Author: bwidawsk X-SVN-Commit-Paths: stable/12/sys/dev/acpica X-SVN-Commit-Revision: 344111 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 46A59702CB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.979,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 19:00:07 -0000 Author: bwidawsk Date: Wed Feb 13 19:00:06 2019 New Revision: 344111 URL: https://svnweb.freebsd.org/changeset/base/344111 Log: MFC r339577: acpi: Add an interface to obtain DSM information The Device Specific Method (_DSM) is on optional object that defines device specific controls. This will be useful for our power management controller in upcoming patches. More information can be found in ACPI spec 6.2 section 9.1.1 https://www.uefi.org/sites/default/files/resources/ACPI_6_2.pdf This patch had a minor modification changing ENOMEM to AE_NO_MEMORY after it got review and approval but before committing. Test Plan: Tested in my s0ix branch Reviewed by: kib Approved by: emaste (mentor) Differential Revision: https://reviews.freebsd.org/D17121 Modified: stable/12/sys/dev/acpica/acpi.c stable/12/sys/dev/acpica/acpivar.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/acpica/acpi.c ============================================================================== --- stable/12/sys/dev/acpica/acpi.c Wed Feb 13 18:55:47 2019 (r344110) +++ stable/12/sys/dev/acpica/acpi.c Wed Feb 13 19:00:06 2019 (r344111) @@ -2576,6 +2576,98 @@ acpi_AppendBufferResource(ACPI_BUFFER *buf, ACPI_RESOU return (AE_OK); } +UINT8 +acpi_DSMQuery(ACPI_HANDLE h, uint8_t *uuid, int revision) +{ + /* + * ACPI spec 9.1.1 defines this. + * + * "Arg2: Function Index Represents a specific function whose meaning is + * specific to the UUID and Revision ID. Function indices should start + * with 1. Function number zero is a query function (see the special + * return code defined below)." + */ + ACPI_BUFFER buf; + ACPI_OBJECT *obj; + UINT8 ret = 0; + + if (!ACPI_SUCCESS(acpi_EvaluateDSM(h, uuid, revision, 0, NULL, &buf))) { + ACPI_INFO(("Failed to enumerate DSM functions\n")); + return (0); + } + + obj = (ACPI_OBJECT *)buf.Pointer; + KASSERT(obj, ("Object not allowed to be NULL\n")); + + /* + * From ACPI 6.2 spec 9.1.1: + * If Function Index = 0, a Buffer containing a function index bitfield. + * Otherwise, the return value and type depends on the UUID and revision + * ID (see below). + */ + switch (obj->Type) { + case ACPI_TYPE_BUFFER: + ret = *(uint8_t *)obj->Buffer.Pointer; + break; + case ACPI_TYPE_INTEGER: + ACPI_BIOS_WARNING((AE_INFO, + "Possibly buggy BIOS with ACPI_TYPE_INTEGER for function enumeration\n")); + ret = obj->Integer.Value & 0xFF; + break; + default: + ACPI_WARNING((AE_INFO, "Unexpected return type %u\n", obj->Type)); + }; + + AcpiOsFree(obj); + return ret; +} + +/* + * DSM may return multiple types depending on the function. It is therefore + * unsafe to use the typed evaluation. It is highly recommended that the caller + * check the type of the returned object. + */ +ACPI_STATUS +acpi_EvaluateDSM(ACPI_HANDLE handle, uint8_t *uuid, int revision, + uint64_t function, union acpi_object *package, ACPI_BUFFER *out_buf) +{ + ACPI_OBJECT arg[4]; + ACPI_OBJECT_LIST arglist; + ACPI_BUFFER buf; + ACPI_STATUS status; + + if (out_buf == NULL) + return (AE_NO_MEMORY); + + arg[0].Type = ACPI_TYPE_BUFFER; + arg[0].Buffer.Length = ACPI_UUID_LENGTH; + arg[0].Buffer.Pointer = uuid; + arg[1].Type = ACPI_TYPE_INTEGER; + arg[1].Integer.Value = revision; + arg[2].Type = ACPI_TYPE_INTEGER; + arg[2].Integer.Value = function; + if (package) { + arg[3] = *package; + } else { + arg[3].Type = ACPI_TYPE_PACKAGE; + arg[3].Package.Count = 0; + arg[3].Package.Elements = NULL; + } + + arglist.Pointer = arg; + arglist.Count = 4; + buf.Pointer = NULL; + buf.Length = ACPI_ALLOCATE_BUFFER; + status = AcpiEvaluateObject(handle, "_DSM", &arglist, &buf); + if (ACPI_FAILURE(status)) + return (status); + + KASSERT(ACPI_SUCCESS(status), ("Unexpected status")); + + *out_buf = buf; + return (status); +} + ACPI_STATUS acpi_EvaluateOSC(ACPI_HANDLE handle, uint8_t *uuid, int revision, int count, uint32_t *caps_in, uint32_t *caps_out, bool query) Modified: stable/12/sys/dev/acpica/acpivar.h ============================================================================== --- stable/12/sys/dev/acpica/acpivar.h Wed Feb 13 18:55:47 2019 (r344110) +++ stable/12/sys/dev/acpica/acpivar.h Wed Feb 13 19:00:06 2019 (r344111) @@ -349,6 +349,10 @@ ACPI_STATUS acpi_FindIndexedResource(ACPI_BUFFER *buf, ACPI_RESOURCE **resp); ACPI_STATUS acpi_AppendBufferResource(ACPI_BUFFER *buf, ACPI_RESOURCE *res); +UINT8 acpi_DSMQuery(ACPI_HANDLE h, uint8_t *uuid, int revision); +ACPI_STATUS acpi_EvaluateDSM(ACPI_HANDLE handle, uint8_t *uuid, + int revision, uint64_t function, union acpi_object *package, + ACPI_BUFFER *out_buf); ACPI_STATUS acpi_EvaluateOSC(ACPI_HANDLE handle, uint8_t *uuid, int revision, int count, uint32_t *caps_in, uint32_t *caps_out, bool query); From owner-svn-src-all@freebsd.org Wed Feb 13 20:13:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 121EA14D69BA; Wed, 13 Feb 2019 20:13:41 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9EE4A72418; Wed, 13 Feb 2019 20:13:40 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 915FF2C240; Wed, 13 Feb 2019 20:13:40 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1DKDesg017538; Wed, 13 Feb 2019 20:13:40 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1DKDe6N017537; Wed, 13 Feb 2019 20:13:40 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902132013.x1DKDe6N017537@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 13 Feb 2019 20:13:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344112 - head/contrib/llvm/lib/MC X-SVN-Group: head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: head/contrib/llvm/lib/MC X-SVN-Commit-Revision: 344112 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9EE4A72418 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Feb 2019 20:13:41 -0000 Author: dim Date: Wed Feb 13 20:13:40 2019 New Revision: 344112 URL: https://svnweb.freebsd.org/changeset/base/344112 Log: Pull in r353907 from upstream llvm trunk (by Reid Kleckner): [MC] Make symbol version errors non-fatal We stil don't have a source location, which is pretty lame, but at least we won't tell the user to file a clang bug report anymore. Fixes PR40712 This will make errors for symbols with @@ versions that are not defined non-fatal. For example: void f(void) { __asm__(".symver foo,bar@@baz"); } will now result in: error: versioned symbol bar@@baz must be defined instead of clang crashing with a diagnostic report. PR: 234671 Upstream PR: https://bugs.llvm.org/show_bug.cgi?id=40712 MFC after: 3 days Modified: head/contrib/llvm/lib/MC/ELFObjectWriter.cpp Modified: head/contrib/llvm/lib/MC/ELFObjectWriter.cpp ============================================================================== --- head/contrib/llvm/lib/MC/ELFObjectWriter.cpp Wed Feb 13 19:00:06 2019 (r344111) +++ head/contrib/llvm/lib/MC/ELFObjectWriter.cpp Wed Feb 13 20:13:40 2019 (r344112) @@ -1258,14 +1258,20 @@ void ELFObjectWriter::executePostLayoutBinding(MCAssem if (!Symbol.isUndefined() && !Rest.startswith("@@@")) continue; - // FIXME: produce a better error message. + // FIXME: Get source locations for these errors or diagnose them earlier. if (Symbol.isUndefined() && Rest.startswith("@@") && - !Rest.startswith("@@@")) - report_fatal_error("A @@ version cannot be undefined"); + !Rest.startswith("@@@")) { + Asm.getContext().reportError(SMLoc(), "versioned symbol " + AliasName + + " must be defined"); + continue; + } - if (Renames.count(&Symbol) && Renames[&Symbol] != Alias) - report_fatal_error(llvm::Twine("Multiple symbol versions defined for ") + - Symbol.getName()); + if (Renames.count(&Symbol) && Renames[&Symbol] != Alias) { + Asm.getContext().reportError( + SMLoc(), llvm::Twine("multiple symbol versions defined for ") + + Symbol.getName()); + continue; + } Renames.insert(std::make_pair(&Symbol, Alias)); } From owner-svn-src-all@freebsd.org Thu Feb 14 00:52:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E260E14DD81E; Thu, 14 Feb 2019 00:52:03 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8A1E784C83; Thu, 14 Feb 2019 00:52:03 +0000 (UTC) (envelope-from cy@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7B6B42F108; Thu, 14 Feb 2019 00:52:03 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E0q3gd066823; Thu, 14 Feb 2019 00:52:03 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E0q3OH066822; Thu, 14 Feb 2019 00:52:03 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201902140052.x1E0q3OH066822@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 14 Feb 2019 00:52:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344113 - in stable: 10/sys/contrib/ipfilter/netinet 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet X-SVN-Group: stable-11 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 10/sys/contrib/ipfilter/netinet 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet X-SVN-Commit-Revision: 344113 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8A1E784C83 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.94)[-0.942,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 00:52:04 -0000 Author: cy Date: Thu Feb 14 00:52:03 2019 New Revision: 344113 URL: https://svnweb.freebsd.org/changeset/base/344113 Log: MFC r343591: Do not obtain an already held read lock. This causes a witness panic when ipfs is invoked. This is the second of two panics resolving PR 235110. PR: 235110 Reported by: David.Boyd49@twc.com Modified: stable/11/sys/contrib/ipfilter/netinet/ip_nat.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sys/contrib/ipfilter/netinet/ip_nat.c stable/12/sys/contrib/ipfilter/netinet/ip_nat.c Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/sys/contrib/ipfilter/netinet/ip_nat.c ============================================================================== --- stable/11/sys/contrib/ipfilter/netinet/ip_nat.c Wed Feb 13 20:13:40 2019 (r344112) +++ stable/11/sys/contrib/ipfilter/netinet/ip_nat.c Thu Feb 14 00:52:03 2019 (r344113) @@ -1904,20 +1904,16 @@ ipf_nat_getent(softc, data, getlock) } } if (error == 0) { - if (getlock) { - READ_ENTER(&softc->ipf_nat); - getlock = 0; - } error = ipf_outobjsz(softc, data, ipn, IPFOBJ_NATSAVE, ipns.ipn_dsize); } finished: - if (getlock) { - READ_ENTER(&softc->ipf_nat); - } if (ipn != NULL) { KFREES(ipn, ipns.ipn_dsize); + } + if (getlock) { + RWLOCK_EXIT(&softc->ipf_nat); } return error; } From owner-svn-src-all@freebsd.org Thu Feb 14 00:52:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FF3A14DD835; Thu, 14 Feb 2019 00:52:04 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D4B6084C86; Thu, 14 Feb 2019 00:52:03 +0000 (UTC) (envelope-from cy@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C8FFD2F10A; Thu, 14 Feb 2019 00:52:03 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E0q35H066829; Thu, 14 Feb 2019 00:52:03 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E0q3cg066828; Thu, 14 Feb 2019 00:52:03 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201902140052.x1E0q3cg066828@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 14 Feb 2019 00:52:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344113 - in stable: 10/sys/contrib/ipfilter/netinet 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet X-SVN-Group: stable-12 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 10/sys/contrib/ipfilter/netinet 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet X-SVN-Commit-Revision: 344113 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D4B6084C86 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.94)[-0.942,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 00:52:04 -0000 Author: cy Date: Thu Feb 14 00:52:03 2019 New Revision: 344113 URL: https://svnweb.freebsd.org/changeset/base/344113 Log: MFC r343591: Do not obtain an already held read lock. This causes a witness panic when ipfs is invoked. This is the second of two panics resolving PR 235110. PR: 235110 Reported by: David.Boyd49@twc.com Modified: stable/12/sys/contrib/ipfilter/netinet/ip_nat.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sys/contrib/ipfilter/netinet/ip_nat.c stable/11/sys/contrib/ipfilter/netinet/ip_nat.c Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/sys/contrib/ipfilter/netinet/ip_nat.c ============================================================================== --- stable/12/sys/contrib/ipfilter/netinet/ip_nat.c Wed Feb 13 20:13:40 2019 (r344112) +++ stable/12/sys/contrib/ipfilter/netinet/ip_nat.c Thu Feb 14 00:52:03 2019 (r344113) @@ -1904,20 +1904,16 @@ ipf_nat_getent(softc, data, getlock) } } if (error == 0) { - if (getlock) { - READ_ENTER(&softc->ipf_nat); - getlock = 0; - } error = ipf_outobjsz(softc, data, ipn, IPFOBJ_NATSAVE, ipns.ipn_dsize); } finished: - if (getlock) { - READ_ENTER(&softc->ipf_nat); - } if (ipn != NULL) { KFREES(ipn, ipns.ipn_dsize); + } + if (getlock) { + RWLOCK_EXIT(&softc->ipf_nat); } return error; } From owner-svn-src-all@freebsd.org Thu Feb 14 00:52:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 90C3B14DD83F; Thu, 14 Feb 2019 00:52:04 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 30AD084C89; Thu, 14 Feb 2019 00:52:04 +0000 (UTC) (envelope-from cy@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 24BA62F10D; Thu, 14 Feb 2019 00:52:04 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E0q4Il066835; Thu, 14 Feb 2019 00:52:04 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E0q4vT066834; Thu, 14 Feb 2019 00:52:04 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201902140052.x1E0q4vT066834@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 14 Feb 2019 00:52:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r344113 - in stable: 10/sys/contrib/ipfilter/netinet 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet X-SVN-Group: stable-10 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 10/sys/contrib/ipfilter/netinet 11/sys/contrib/ipfilter/netinet 12/sys/contrib/ipfilter/netinet X-SVN-Commit-Revision: 344113 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 30AD084C89 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.995,0]; NEURAL_HAM_SHORT(-0.94)[-0.942,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 00:52:04 -0000 Author: cy Date: Thu Feb 14 00:52:03 2019 New Revision: 344113 URL: https://svnweb.freebsd.org/changeset/base/344113 Log: MFC r343591: Do not obtain an already held read lock. This causes a witness panic when ipfs is invoked. This is the second of two panics resolving PR 235110. PR: 235110 Reported by: David.Boyd49@twc.com Modified: stable/10/sys/contrib/ipfilter/netinet/ip_nat.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sys/contrib/ipfilter/netinet/ip_nat.c stable/12/sys/contrib/ipfilter/netinet/ip_nat.c Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/sys/contrib/ipfilter/netinet/ip_nat.c ============================================================================== --- stable/10/sys/contrib/ipfilter/netinet/ip_nat.c Wed Feb 13 20:13:40 2019 (r344112) +++ stable/10/sys/contrib/ipfilter/netinet/ip_nat.c Thu Feb 14 00:52:03 2019 (r344113) @@ -1909,20 +1909,16 @@ ipf_nat_getent(softc, data, getlock) } } if (error == 0) { - if (getlock) { - READ_ENTER(&softc->ipf_nat); - getlock = 0; - } error = ipf_outobjsz(softc, data, ipn, IPFOBJ_NATSAVE, ipns.ipn_dsize); } finished: - if (getlock) { - READ_ENTER(&softc->ipf_nat); - } if (ipn != NULL) { KFREES(ipn, ipns.ipn_dsize); + } + if (getlock) { + RWLOCK_EXIT(&softc->ipf_nat); } return error; } From owner-svn-src-all@freebsd.org Thu Feb 14 01:24:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E278614DF814; Thu, 14 Feb 2019 01:24:58 +0000 (UTC) (envelope-from chmeeedalf@gmail.com) Received: from mail-it1-x133.google.com (mail-it1-x133.google.com [IPv6:2607:f8b0:4864:20::133]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B894B868CB; Thu, 14 Feb 2019 01:24:57 +0000 (UTC) (envelope-from chmeeedalf@gmail.com) Received: by mail-it1-x133.google.com with SMTP id y184so10957162itc.1; Wed, 13 Feb 2019 17:24:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=WOjbXo39TpT/vI4ShRySZaUd1wXtI+HsVXjQZ9S9W4s=; b=KirxsFDWQRaGhyyM8eBhOwsoxPV6v8boHKXQtkC7PsMC18GVlJWaQT6XRjJQd6Bcxw sZQ0rgzy9g3+awLNzgLz+HwB1a02YWJb9jThV7fHewwtlzL6YKcx6LrMp87sMcs3dd76 tKHicVZUI9Y26GxjJpbi27yx6B6U8unv9GYUBUmVUrK8P+EZW/2XRvyaAR0Xy/UXCwhP +v+WbnhtZdBoFae51Y3ngC3NDke6IOcb4wdGk1W+1lxboT+cotFNaKsuWtkFcS6KkGf4 gXKP+MMRVWZJKsmVMvBKMgH7jWm9h0cNZVGOGiaWzsowlCl+6FX4d7rR9J0uuf56QcqY fkiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=WOjbXo39TpT/vI4ShRySZaUd1wXtI+HsVXjQZ9S9W4s=; b=a8L4nll9iFbLdsYfhjhNnFeGywIdLQ3xDhDU5Ey13q5mE35XPso0WE5W65mWCEOW/Q fAOcbE2XJbjm3LsdcO5d6g9WuYBvUCVgqStbqpOJusV5d3E3muz+kYNDj6tjvJXZUSHB 3bcvRDSdaQ73+JG5xbbxf9z2JyX0qZ9SsaBrQPFhK3U+jY2B9w3oKlGU3bAqEBTnaTGG 2HSrwSfXyvSGkmgkMu7SeCu/4qfyDFhLKvWs2KF0UtOVpAzQVHk0p8R6qzz4lLBmvcX8 Fp/pp91ccqDtrZO021+cbaACScQLMd44/GSBHrFUaAANlf6RfxMnOOpEf2WywNfvbtDv yFww== X-Gm-Message-State: AHQUAubtHjF2syppL5XoWQffylWh5RVv3rg8xRjdAb0PTQnLCNyfcylJ 2ounadHZScf28mlvyNJUR90wFuH5 X-Google-Smtp-Source: AHgI3IaVTeOXsqiLrBXLkBrS8xMT9jvhhL8Lmd3+2A60eUOgVz7U0TsjcrT0C2i/PnlKF6Gz7ZNMUQ== X-Received: by 2002:a02:9f86:: with SMTP id a6mr655957jam.87.1550107496538; Wed, 13 Feb 2019 17:24:56 -0800 (PST) Received: from ralga.knownspace (173-25-245-129.client.mchsi.com. [173.25.245.129]) by smtp.gmail.com with ESMTPSA id u18sm424974ioc.64.2019.02.13.17.24.55 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 13 Feb 2019 17:24:56 -0800 (PST) Date: Wed, 13 Feb 2019 19:24:50 -0600 From: Justin Hibbits To: Gleb Smirnoff Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm Message-ID: <20190213192450.32343d6a@ralga.knownspace> In-Reply-To: <201901150102.x0F12Hlt025856@repo.freebsd.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; powerpc64-portbld-freebsd13.0) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: B894B868CB X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=KirxsFDW; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of chmeeedalf@gmail.com designates 2607:f8b0:4864:20::133 as permitted sender) smtp.mailfrom=chmeeedalf@gmail.com X-Spamd-Result: default: False [-6.67 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; MIME_GOOD(-0.10)[text/plain]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; TO_DN_SOME(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; IP_SCORE(-2.70)[ip: (-8.90), ipnet: 2607:f8b0::/32(-2.54), asn: 15169(-1.98), country: US(-0.07)]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; RCVD_IN_DNSWL_NONE(0.00)[3.3.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_TLS_LAST(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 01:24:59 -0000 On Tue, 15 Jan 2019 01:02:17 +0000 (UTC) Gleb Smirnoff wrote: > Author: glebius > Date: Tue Jan 15 01:02:16 2019 > New Revision: 343030 > URL: https://svnweb.freebsd.org/changeset/base/343030 > > Log: > Allocate pager bufs from UMA instead of 80-ish mutex protected > linked list. > o In vm_pager_bufferinit() create pbuf_zone and start accounting on > how many pbufs are we going to have set. > In various subsystems that are going to utilize pbufs create > private zones via call to pbuf_zsecond_create(). The latter calls > uma_zsecond_create(), and sets a limit on created zone. After startup > preallocate pbufs according to requirements of all pbuf zones. > > Subsystems that used to have a private limit with old allocator > now have private pbuf zones: md(4), fusefs, NFS client, smbfs, VFS > cluster, FFS, swap, vnode pager. > > The following subsystems use shared pbuf zone: cam(4), nvme(4), > physio(9), aio(4). They should have their private limits, but > changing that is out of scope of this commit. > > o Fetch tunable value of kern.nswbuf from init_param2() and while > here move NSWBUF_MIN to opt_param.h and eliminate opt_swap.h, that > was holding only this option. > Default values aren't touched by this commit, but they probably > should be reviewed wrt to modern hardware. > > This change removes a tight bottleneck from sendfile(2) operation, > that uses pbufs in vnode pager. Other pagers also would benefit from > faster allocation. > > Together with: gallatin > Tested by: pho > > Modified: > head/sys/cam/cam_periph.c > head/sys/conf/options > head/sys/dev/md/md.c > head/sys/dev/nvme/nvme_ctrlr.c > head/sys/fs/fuse/fuse_main.c > head/sys/fs/fuse/fuse_vnops.c > head/sys/fs/nfsclient/nfs_clbio.c > head/sys/fs/nfsclient/nfs_clport.c > head/sys/fs/smbfs/smbfs_io.c > head/sys/fs/smbfs/smbfs_vfsops.c > head/sys/kern/kern_physio.c > head/sys/kern/subr_param.c > head/sys/kern/vfs_aio.c > head/sys/kern/vfs_bio.c > head/sys/kern/vfs_cluster.c > head/sys/sys/buf.h > head/sys/ufs/ffs/ffs_rawread.c > head/sys/vm/swap_pager.c > head/sys/vm/vm_pager.c > head/sys/vm/vnode_pager.c > Hi Gleb, This seems to break 32-bit platforms, or at least 32-bit book-e powerpc, which has a limited KVA space (~500MB). It preallocates I've seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, leaving very little left for the rest of runtime. I spent a couple hours earlier today debugging with Mark Johnston, and his consensus is that the vnode_pbuf_zone is too big on 32-bit platforms. Unfortunately I know very little about this area, so can't provide much extra insight, but can readily reproduce the issues I see triggered by this change, so am willing to help where I can. - Justin From owner-svn-src-all@freebsd.org Thu Feb 14 04:32:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A261A14E8CDB; Thu, 14 Feb 2019 04:32:35 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id 7C5FB8E5CD; Thu, 14 Feb 2019 04:32:32 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id D5FC1436A84; Thu, 14 Feb 2019 15:32:19 +1100 (AEDT) Date: Thu, 14 Feb 2019 15:32:18 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Marius Strobl cc: rgrimes@freebsd.org, John Baldwin , src-committers@freebsd.org, Patrick Kelsey , svn-src-stable@freebsd.org, svn-src-all@freebsd.org, svn-src-stable-12@freebsd.org Subject: Re: svn commit: r344027 - in stable/12/sys: dev/vmware/vmxnet3 modules/vmware/vmxnet3 net In-Reply-To: <20190212235435.GB92760@alchemy.franken.de> Message-ID: <20190214130307.T991@besplex.bde.org> References: <62d2dcc1-5bde-1eda-6d9f-82138932cb36@FreeBSD.org> <201902120124.x1C1OI5b073609@pdx.rh.CN85.dnsmgr.net> <20190212235435.GB92760@alchemy.franken.de> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=P6RKvmIu c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=dvcefDqHsCUFnUdRA5oA:9 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 7C5FB8E5CD X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; spf=pass (mx1.freebsd.org: domain of brde@optusnet.com.au designates 211.29.132.246 as permitted sender) smtp.mailfrom=brde@optusnet.com.au X-Spamd-Result: default: False [-5.89 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; RCVD_IN_DNSWL_LOW(-0.10)[246.132.29.211.list.dnswl.org : 127.0.5.1]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:211.29.132.0/23]; FREEMAIL_FROM(0.00)[optusnet.com.au]; MIME_GOOD(-0.10)[text/plain]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DMARC_NA(0.00)[optusnet.com.au]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; IP_SCORE(-2.95)[ip: (-7.30), ipnet: 211.28.0.0/14(-4.13), asn: 4804(-3.28), country: AU(-0.04)]; MX_GOOD(-0.01)[extmail.optusnet.com.au]; NEURAL_HAM_SHORT(-0.63)[-0.632,0]; RCPT_COUNT_SEVEN(0.00)[8]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[optusnet.com.au]; ASN(0.00)[asn:4804, ipnet:211.28.0.0/14, country:AU]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 04:32:36 -0000 On Wed, 13 Feb 2019, Marius Strobl wrote: > As for the iflib(4) status in head, I'm aware of two remaining > user-visible regressions I ran myself into when trying to use > em(4) in production. I am aware of a few more: - tx throughput loss for minimal packets of about 10% on my low end/1 queue NICs (I218-V, older I2*, and 82541PI). This hasn't changed much in the 2+ years since em(4) was converted to iflib , except some versions were another 10-20% slower and some of the slowness can be recovered using the tx_abdicate sysctl - average ping latency loss of about 13% on I218V. This has only been there for 6-12 months. Of course this is with tuning for latency by turning off interrupt moderation as much as possible - errors on rx are recovered from badly in [l]em_isc_rxd_pkt_get() by incrementing the dropped packet count and returning EBADMSG. This leaves the hardware queues in a bad state which is recovered from after a long time by resetting. Many more packets are dropped, but the dropped packet count is only incremented by 1. The pre-iflib driver handled this by dropping just 1 packet and continuing. This is now hard to do, since iflib wants to build a list of packets and seems to have no way of handling bad packets in the list. I use the quick fix of printing a message and putting the bad packet in the list. I have only seen this problem on 82541PI. I haven't checked that the EBADMSG return is still mishandled by resetting. - the NIC is not stopped for media changes. This causes the same lockups as not stopping it for resume, but is less often a problem since you usually don't change the media for an active NIC. > 1) TX UDP performance is abysmal even when > using multiple queues and, thus, MSI-X. In a quick test with > netperf I see ~690 Mbits/s with 9216 bytes and 282 Mbits/s with > 42080 bytes on a Xeon E3-1245V2 and 82574 with GigE connection > (stable/11 e1000 drivers forward-ported to 12+ achieve 957 Mbit/s > in both cases). 2) TX TCP performance is abysmal when using MSI > or INTx (that's likely also PR 235031). > I have an upcoming iflib(4) fix for 2) but don't have an idea > what's causing 1) so far. I've identified two bugs in iflib(4) > that likely have a minimal (probably more so with ixl(4), though) > impact on UDP performance but don't explain the huge drop. I don't see bad performance for large packets (except for the 82541PI -- it is PCI and can't get near saturating the network at any size). Other problems: I mostly use i386, and its performance is now abysmal due to its slow syscalls. Its slowdowns also makes comparison with old benchmark results more difficult. Typical numbers for netblast tests for I218-V on i386 on Haswell i4790K 4.08GHz are: 1500 kpps (line rate) for tuned FreeBSD-11 using 1.5 CPUs 1400+ kpps for untuned FreeBSD-11 using 1 CPU 1400- kpps for -current-before-iflib using 1 CPU 1300- kpps for -current-after-iflib using 1.5 CPUs The tuning for FreeBSD-11 is just EM_MULTIQUEUE. The NIC has only 1 CPU, but using another CPU to manage the queue seems to work right. For iflib, the corresponding tuning seems to be to set the tx_abdicate sysctl to 1. This doesn't work so well. It causes iflib to mostly waste CPU by trying to do 2 context switches per packet (mostly from an idle thread to an iflib thread). The Haswell CPU can only do about 1 context switch per microsecond, so the context switches are worse than useless for achieving packet rates above 1000 kpps. In old versions of iflib, tx_abdicate is not a sysctl and is always enabled. This is why iflib takes an extra 0.5 CPUs in the above benchmark. Then for -current after both iflib and 4+4 address space changes: 533 kpps worst ever observed in -current (config unknown) 800 kkps typical result before pae_mode changes Then for -current now (after iflib, 4+4 and pae changes) 500 kkps pae_mode=1 (default) tx_abdicate=0 (default) 1 CPU 780 kpps pae_mode=0 tx_abdicate=0 (default) 1 CPU 591 kpps pae_mode=0 tx_abdicate=1 1.5 CPUs On amd64, the speed of syscalls hasn't changed much, so it still gets about 1200 kpps in untuned configurations, and tx_abdicate works better so it can almost reach line rate using a bit more CPU than tuned FreeBSD-11. The extra context switches can also be avoided by not using SMP or by binding the netblast thread to the same CPU as the main iflib thread. This only helps when tx_adbicate=1: 975 kpps pae_mode=0 tx_abdicate=1 cpuset -l5 1 CPU I.e., cpusetting improves the speed from 591 to 995 kpps! I now seem to remember that amd64 needed that too to get near line rate. The context switch counts for some cases are: - tx_abdicate=1, no cpuset: 1100+ k/sec (1 to and 1 from iflib thread per pkt) - tx_abdicate=0, no cpuset: 8 k/sec (this is from the corrected itr=125) - tx_abdicate=1, cpuset: 6 k/sec The iflib thread does one switch to and 1 switch from per packet, so the packet rate is half of its switch rate. But the switch rate of 1M shown by systat -v is wrong. It apparently doesn't include context switch for the cpu-idle threads. top -m i/o shows these. Context switches to and from the idle thread are cheaper than most, especially for i386 with 4+4 and pae, but they are still heavyweight so should be counted normally. Binding of of iflib threads to CPUs is another problem. It gets in the way of the scheduler choosing the best CPU dynamically, so is only obviously right if you have CPUs to spare. The 4BSD scheduler handles bound CPUs especially badly. This is fixed in my version, but I forgot to enable the fix for these test, and anyway, the fix and scheduling in general only makes much difference on moderately loaded systems. (For the light load of running only netblast and some daemons, there is CPU to spare. For heavy loads when there is no CPU to spare, the scheduler can't do much. My fixes with the Haswell 4x2 CPU topology reduce to trying to use only 1 CPU out of each HTT pair. So when iflib binds to CPU 6, if CPU 6 is running another thread, this thread has to be kicked off CPU 6 and should not be moved to CPU 7 while iflib is running on CPU 6. Even when there is another inactive HTT pair, moving it is slow.) iflib has some ifdefs for SCHED_ULE only. I doubt that static scheduling like it does can work well. It seems to do the opposite of what is right -- preferring threads on the same core make these threads run slower when they run concurrently, by competing for resources. The slowdown on Haswell for competing CPUs in an HTT pair is about 2/3 (each CPU runs about 1/3 slower so the speed of 2 CPUs is at best 4/3 times as much as 1 CPU). Anyway, iflib obviously doesn't understand scheduling, since its manual scheduling runs 975/591 times slower than my manual scheduling, without even any HTT contention or kicking netblast or another user thread off iflib's CPU. The slowness is just from kicking an idle thread off iflib's CPU. If there are really CPUs to spare, then the iflib thread should not yield to even the idle thread. Then it would work a bit like DEVICE_POLLING. I don't like polling, and would want to do this with something like halt waiting for an interrupt or better monitor waiting for a network event. cpu_idle() already does suitable things. DEVICE_POLLING somehow reduced ping latency by a lot (from 60+ usec to 30 usec) on older systems and NICs, at the cost of a lot of power for spinning in idle and not actually helping if the system is not idle. I don't see how it can do this. The interrupt latency with interrupt moderation turned off should be only about 1 usec. Summary: using unobvious tuning and small fixes, I can get ifllib'ed em to work almost as well as FreeBSD-11 em. Bruce From owner-svn-src-all@freebsd.org Thu Feb 14 07:56:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6387B14ECDEF; Thu, 14 Feb 2019 07:56:49 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id ADA47937BD; Thu, 14 Feb 2019 07:56:48 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id DD7AA436B8A; Thu, 14 Feb 2019 18:56:44 +1100 (AEDT) Date: Thu, 14 Feb 2019 18:56:42 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Justin Hibbits cc: Gleb Smirnoff , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm In-Reply-To: <20190213192450.32343d6a@ralga.knownspace> Message-ID: <20190214153345.C1404@besplex.bde.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=P6RKvmIu c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=6I5d2MoRAAAA:8 a=Wz2sYcN-yK6-1nRnajMA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 X-Rspamd-Queue-Id: ADA47937BD X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.99)[-0.990,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 07:56:49 -0000 On Wed, 13 Feb 2019, Justin Hibbits wrote: > On Tue, 15 Jan 2019 01:02:17 +0000 (UTC) > Gleb Smirnoff wrote: > >> Author: glebius >> Date: Tue Jan 15 01:02:16 2019 >> New Revision: 343030 >> URL: https://svnweb.freebsd.org/changeset/base/343030 >> >> Log: >> Allocate pager bufs from UMA instead of 80-ish mutex protected >> linked list. > ... > > This seems to break 32-bit platforms, or at least 32-bit book-e > powerpc, which has a limited KVA space (~500MB). It preallocates I've > seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, > leaving very little left for the rest of runtime. Hrmph. I complained other things in this commit this when it was committed, but not this largest bug since preallocation was broken then so I thought that it wasn't done, so that problems are smaller unless the excessive limits are actually reached. Now i386 does it: XX ITEM SIZE LIMIT USED FREE REQ FAIL SLEEP XX XX swrbuf: 336, 128, 0, 0, 0, 0, 0 XX swwbuf: 336, 64, 0, 0, 0, 0, 0 XX nfspbuf: 336, 128, 0, 0, 0, 0, 0 XX mdpbuf: 336, 25, 0, 0, 0, 0, 0 XX clpbuf: 336, 128, 0, 5, 4, 0, 0 XX vnpbuf: 336, 2048, 0, 0, 0, 0, 0 XX pbuf: 336, 16, 0, 2535, 0, 0, 0 but i386 now has 4GB of KVA, with almost 3GB to waste, so the bug is not noticed there. The preallocation wasn't there in my last mail to the author about nearby bugs, on 24 Jan 2019: YY vnpbuf: 568, 2048, 0, 0, 0, 0, 0 YY clpbuf: 568, 128, 0, 128, 8750, 0, 1 YY pbuf: 568, 16, 0, 4, 0, 0, 0 This output is on amd64 where the SIZE is larger and everything else was the same as on i386. Now amd64 shows the large preallocation too. There seems to be another bug for the especially small LIMIT of 16 to turn into a preallocation of 2535 and not cause immediate reduction to the limit. I happen to have kernels from 24 and 25 Jan handy. The first one is amd64 r343346M built on Jan 23, and it doesn't do the large preallocation. The second one is i386 r343388:343418M built on Jan 25, and it does the large preallocation. Both call uma_prealloc() to ask for nswbuf_max = 0x9e9 buffers, but the old version only allocates 4 buffers while later version allocate 0x9e9 buffers. The only relevant commit between the good and bad versions seems to be r343453. This fixes uma_prealloc() to actually work. But it is a feature for it to not work when its caller asks for too much. 0x9e9 is the sum of the LIMITs of all pbuf pools. The main bug in r343030 is that it expands nswbuf, which is supposed to give the combined limit, from its normal value of 256 to 0x9e9. (r343030 actually used nswbuf before it was properly initialized, so used its maximum value of 256 even on small systems with nswbuf = 16. Only this has been fixed.) On i386, nbuf is excessively limited so as to give a maxbufspace of about 100MB so as to fit in 1GB of kva even with infinite RAM and -current's actual 4GB of kva. nbuf is correctly limited to give a much smaller maxbufspace when RAM is small (kva scaling for this is not done so well). nswbuf is restricted if nbuf is restricted, but not enough (except in my version). It is normally 256, so the pbuf allocation used to be 32MB, and this is already a bit large compared with 100MB for maxbufspace. Expanding pbufs by a factor of 0x9e9/0x100 gives the silly combination of 100MB for maxbufspace and 317MB for pbufs. If kva is only 512MB instead of 1GB, then maxbufspace should be only 50MB and nswbuf should be smaller too. Similarly for PAE on i386 back when it was configured with 1GB kva by default. Only about 512MB are left after allocating space for page table metadata. I have fixes that scale most of this better. Large subsystems starting with kmem get a hard-coded fraction of the usable kva. E.g., kmem gets about 60% of usable kva instead of about 40% of nominal kva. Most other large subsystems including the buffer cache get about 1/8 of the remaining 40% of usable kva. Scaling for other subsystems is mostly worse than for kmem. pbufs are part of the buffer cache allocation. The expansion factor of 0x9e9/0x100 breaks this. I don't understand how pbuf_preallocate() allocates for the other pbuf pools. When I debugged this for clpbufs, the preallocation was not used. pbuf types other than clpbufs seem to be unused in my configurations. I thought that pbufs were used during initialization, since they end up with a nonzero FREE count, but their only use seems to be to preallocate them. Bruce From owner-svn-src-all@freebsd.org Thu Feb 14 08:45:27 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B60F914EE6D2; Thu, 14 Feb 2019 08:45:27 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 F3FDA951AE; Thu, 14 Feb 2019 08:45:26 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x1E8jJxp073483 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Thu, 14 Feb 2019 10:45:22 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x1E8jJxp073483 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x1E8jJNF073482; Thu, 14 Feb 2019 10:45:19 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Thu, 14 Feb 2019 10:45:19 +0200 From: Konstantin Belousov To: Bruce Evans Cc: Justin Hibbits , Gleb Smirnoff , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm Message-ID: <20190214084518.GG24863@kib.kiev.ua> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214153345.C1404@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190214153345.C1404@besplex.bde.org> User-Agent: Mutt/1.11.2 (2019-01-07) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 08:45:27 -0000 On Thu, Feb 14, 2019 at 06:56:42PM +1100, Bruce Evans wrote: > I don't understand how pbuf_preallocate() allocates for the other > pbuf pools. When I debugged this for clpbufs, the preallocation was > not used. pbuf types other than clpbufs seem to be unused in my > configurations. I thought that pbufs were used during initialization, > since they end up with a nonzero FREE count, but their only use seems > to be to preallocate them. vnode_pager_generic_getpages() typically not used for UFS on modern systems. Instead the buffer pager is active which does not need pbufs, it uses real buffers coherent with the UFS buffer cache. To get to the actual use of pbufs now you can: - perform clustered buffer io; - use vnode-backed md(4) (this case is still broken if md(4) is loaded as a module); - cause system swapping; - use sendfile(2). From owner-svn-src-all@freebsd.org Thu Feb 14 09:12:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A856E14EFF2C; Thu, 14 Feb 2019 09:12:20 +0000 (UTC) (envelope-from ygy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4E92F96928; Thu, 14 Feb 2019 09:12:20 +0000 (UTC) (envelope-from ygy@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0546B4E2D; Thu, 14 Feb 2019 09:12:20 +0000 (UTC) (envelope-from ygy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E9CJdG029384; Thu, 14 Feb 2019 09:12:19 GMT (envelope-from ygy@FreeBSD.org) Received: (from ygy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E9CJDs029383; Thu, 14 Feb 2019 09:12:19 GMT (envelope-from ygy@FreeBSD.org) Message-Id: <201902140912.x1E9CJDs029383@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ygy set sender to ygy@FreeBSD.org using -f From: Guangyuan Yang Date: Thu, 14 Feb 2019 09:12:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344114 - stable/12/sbin/sysctl X-SVN-Group: stable-12 X-SVN-Commit-Author: ygy X-SVN-Commit-Paths: stable/12/sbin/sysctl X-SVN-Commit-Revision: 344114 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4E92F96928 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.956,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 09:12:20 -0000 Author: ygy (doc committer) Date: Thu Feb 14 09:12:19 2019 New Revision: 344114 URL: https://svnweb.freebsd.org/changeset/base/344114 Log: MFC r343930: Remove -R option which was added to sysctl(8) man page per r244106, but it is not implemented. Submitted by: Alfonso Siciliano Reviewed by: 0mp, imp Differential Revision: https://reviews.freebsd.org/D19012 Modified: stable/12/sbin/sysctl/sysctl.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/sysctl/sysctl.8 ============================================================================== --- stable/12/sbin/sysctl/sysctl.8 Thu Feb 14 00:52:03 2019 (r344113) +++ stable/12/sbin/sysctl/sysctl.8 Thu Feb 14 09:12:19 2019 (r344114) @@ -28,7 +28,7 @@ .\" From: @(#)sysctl.8 8.1 (Berkeley) 6/6/93 .\" $FreeBSD$ .\" -.Dd September 24, 2018 +.Dd February 8, 2019 .Dt SYSCTL 8 .Os .Sh NAME @@ -36,13 +36,13 @@ .Nd get or set kernel state .Sh SYNOPSIS .Nm -.Op Fl bdehiNnoRTtqx +.Op Fl bdehiNnoTtqWx .Op Fl B Ar bufsize .Op Fl f Ar filename .Ar name Ns Op = Ns Ar value Ns Op , Ns Ar value .Ar ... .Nm -.Op Fl bdehNnoRTtqx +.Op Fl bdehNnoTtqWx .Op Fl B Ar bufsize .Fl a .Sh DESCRIPTION From owner-svn-src-all@freebsd.org Thu Feb 14 09:21:20 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 25E8E14F0561; Thu, 14 Feb 2019 09:21:20 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B968496EFA; Thu, 14 Feb 2019 09:21:19 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ACCCB4EC2; Thu, 14 Feb 2019 09:21:19 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E9LJLF032788; Thu, 14 Feb 2019 09:21:19 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E9LJUe032787; Thu, 14 Feb 2019 09:21:19 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902140921.x1E9LJUe032787@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Thu, 14 Feb 2019 09:21:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344115 - head X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 344115 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B968496EFA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 09:21:20 -0000 Author: avos Date: Thu Feb 14 09:21:19 2019 New Revision: 344115 URL: https://svnweb.freebsd.org/changeset/base/344115 Log: Add UPDATING entry for IEEE80211_AMPDU_AGE and AH_SUPPORT_AR5416 options removal Notified by: ian Modified: head/UPDATING Modified: head/UPDATING ============================================================================== --- head/UPDATING Thu Feb 14 09:12:19 2019 (r344114) +++ head/UPDATING Thu Feb 14 09:21:19 2019 (r344115) @@ -38,6 +38,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: modules on kernels not having 'device iflib', the iflib.ko module is loaded automatically. +20190125: + The IEEE80211_AMPDU_AGE and AH_SUPPORT_AR5416 kernel configuration + options no longer exist since r343219 and r343427 respectively; + nothing uses them, so they should be just removed from custom + kernel config files. + 20181230: r342635 changes the way efibootmgr(8) works by requiring users to add the -b (bootnum) parameter for commands where the bootnum was previously From owner-svn-src-all@freebsd.org Thu Feb 14 09:48:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD9F614F1123; Thu, 14 Feb 2019 09:48:14 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 74AA997E9C; Thu, 14 Feb 2019 09:48:14 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6509453C0; Thu, 14 Feb 2019 09:48:14 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E9mE3A045187; Thu, 14 Feb 2019 09:48:14 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E9mEkv045186; Thu, 14 Feb 2019 09:48:14 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902140948.x1E9mEkv045186@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Thu, 14 Feb 2019 09:48:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344116 - stable/12/tools/build/mk X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: stable/12/tools/build/mk X-SVN-Commit-Revision: 344116 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 74AA997E9C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 09:48:15 -0000 Author: avos Date: Thu Feb 14 09:48:13 2019 New Revision: 344116 URL: https://svnweb.freebsd.org/changeset/base/344116 Log: MFC r343868: Correct ypldap(8) install path in OptionalObsoleteFiles.inc It's installed to /usr/sbin, not to /usr/bin. While here, add missing manpages and /var/yp directory to the list. Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/12/ (props changed) Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 09:21:19 2019 (r344115) +++ stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 09:48:13 2019 (r344116) @@ -6485,7 +6485,6 @@ OLD_FILES+=usr/bin/ypcat OLD_FILES+=usr/bin/ypchfn OLD_FILES+=usr/bin/ypchpass OLD_FILES+=usr/bin/ypchsh -OLD_FILES+=usr/bin/ypldap OLD_FILES+=usr/bin/ypmatch OLD_FILES+=usr/bin/yppasswd OLD_FILES+=usr/bin/ypwhich @@ -6509,6 +6508,7 @@ OLD_FILES+=usr/sbin/rpc.ypxfrd OLD_FILES+=usr/sbin/yp_mkdb OLD_FILES+=usr/sbin/ypbind OLD_FILES+=usr/sbin/ypinit +OLD_FILES+=usr/sbin/ypldap OLD_FILES+=usr/sbin/yppoll OLD_FILES+=usr/sbin/yppush OLD_FILES+=usr/sbin/ypserv @@ -6521,6 +6521,7 @@ OLD_FILES+=usr/share/man/man1/ypmatch.1.gz OLD_FILES+=usr/share/man/man1/yppasswd.1.gz OLD_FILES+=usr/share/man/man1/ypwhich.1.gz OLD_FILES+=usr/share/man/man5/netid.5.gz +OLD_FILES+=usr/share/man/man5/ypldap.conf.5.gz OLD_FILES+=usr/share/man/man8/mknetid.8.gz OLD_FILES+=usr/share/man/man8/rpc.yppasswdd.8.gz OLD_FILES+=usr/share/man/man8/rpc.ypxfrd.8.gz @@ -6531,6 +6532,7 @@ OLD_FILES+=usr/share/man/man8/nis.8.gz OLD_FILES+=usr/share/man/man8/yp_mkdb.8.gz OLD_FILES+=usr/share/man/man8/ypbind.8.gz OLD_FILES+=usr/share/man/man8/ypinit.8.gz +OLD_FILES+=usr/share/man/man8/ypldap.8.gz OLD_FILES+=usr/share/man/man8/yppoll.8.gz OLD_FILES+=usr/share/man/man8/yppush.8.gz OLD_FILES+=usr/share/man/man8/ypserv.8.gz @@ -6538,6 +6540,7 @@ OLD_FILES+=usr/share/man/man8/ypset.8.gz OLD_FILES+=usr/share/man/man8/ypxfr.8.gz OLD_FILES+=var/yp/Makefile OLD_FILES+=var/yp/Makefile.dist +OLD_DIRS+=var/yp .endif .if ${MK_NLS} == no From owner-svn-src-all@freebsd.org Thu Feb 14 09:51:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C66F14F11D1; Thu, 14 Feb 2019 09:51:00 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C02EC681BA; Thu, 14 Feb 2019 09:50:59 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B67F353DE; Thu, 14 Feb 2019 09:50:59 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1E9oxsp045384; Thu, 14 Feb 2019 09:50:59 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1E9oxJj045383; Thu, 14 Feb 2019 09:50:59 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902140950.x1E9oxJj045383@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Thu, 14 Feb 2019 09:50:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344117 - stable/11/tools/build/mk X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: stable/11/tools/build/mk X-SVN-Commit-Revision: 344117 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C02EC681BA X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 09:51:00 -0000 Author: avos Date: Thu Feb 14 09:50:59 2019 New Revision: 344117 URL: https://svnweb.freebsd.org/changeset/base/344117 Log: MFC r343868: Add ypldap(8)-related files and /var/yp directory to the OptionalObsoleteFiles.inc. Modified: stable/11/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/11/ (props changed) Modified: stable/11/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/11/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 09:48:13 2019 (r344116) +++ stable/11/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 09:50:59 2019 (r344117) @@ -6537,6 +6537,7 @@ OLD_FILES+=usr/sbin/rpc.ypxfrd OLD_FILES+=usr/sbin/yp_mkdb OLD_FILES+=usr/sbin/ypbind OLD_FILES+=usr/sbin/ypinit +OLD_FILES+=usr/sbin/ypldap OLD_FILES+=usr/sbin/yppoll OLD_FILES+=usr/sbin/yppush OLD_FILES+=usr/sbin/ypserv @@ -6549,6 +6550,7 @@ OLD_FILES+=usr/share/man/man1/ypmatch.1.gz OLD_FILES+=usr/share/man/man1/yppasswd.1.gz OLD_FILES+=usr/share/man/man1/ypwhich.1.gz OLD_FILES+=usr/share/man/man5/netid.5.gz +OLD_FILES+=usr/share/man/man5/ypldap.conf.5.gz OLD_FILES+=usr/share/man/man8/mknetid.8.gz OLD_FILES+=usr/share/man/man8/rpc.yppasswdd.8.gz OLD_FILES+=usr/share/man/man8/rpc.ypxfrd.8.gz @@ -6559,6 +6561,7 @@ OLD_FILES+=usr/share/man/man8/nis.8.gz OLD_FILES+=usr/share/man/man8/yp_mkdb.8.gz OLD_FILES+=usr/share/man/man8/ypbind.8.gz OLD_FILES+=usr/share/man/man8/ypinit.8.gz +OLD_FILES+=usr/share/man/man8/ypldap.8.gz OLD_FILES+=usr/share/man/man8/yppoll.8.gz OLD_FILES+=usr/share/man/man8/yppush.8.gz OLD_FILES+=usr/share/man/man8/ypserv.8.gz @@ -6566,6 +6569,7 @@ OLD_FILES+=usr/share/man/man8/ypset.8.gz OLD_FILES+=usr/share/man/man8/ypxfr.8.gz OLD_FILES+=var/yp/Makefile OLD_FILES+=var/yp/Makefile.dist +OLD_DIRS+=var/yp .endif .if ${MK_NLS} == no From owner-svn-src-all@freebsd.org Thu Feb 14 13:53:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6725514D530A; Thu, 14 Feb 2019 13:53:12 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 09E39720BC; Thu, 14 Feb 2019 13:53:12 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EFCDB7EE0; Thu, 14 Feb 2019 13:53:11 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EDrBB8076224; Thu, 14 Feb 2019 13:53:11 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EDrB0Z076223; Thu, 14 Feb 2019 13:53:11 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902141353.x1EDrB0Z076223@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 14 Feb 2019 13:53:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344118 - head/sys/i386/include X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/i386/include X-SVN-Commit-Revision: 344118 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 09E39720BC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 13:53:12 -0000 Author: kib Date: Thu Feb 14 13:53:11 2019 New Revision: 344118 URL: https://svnweb.freebsd.org/changeset/base/344118 Log: Provide userspace versions of do_cpuid() and cpuid_count() on i386. Some older compilers, when generating PIC code, cannot handle inline asm that clobbers %ebx (because %ebx is used as the GOT offset register). Userspace versions avoid clobbering %ebx by saving it to stack before executing the CPUID instruction. Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/i386/include/cpufunc.h Modified: head/sys/i386/include/cpufunc.h ============================================================================== --- head/sys/i386/include/cpufunc.h Thu Feb 14 09:50:59 2019 (r344117) +++ head/sys/i386/include/cpufunc.h Thu Feb 14 13:53:11 2019 (r344118) @@ -108,21 +108,47 @@ disable_intr(void) __asm __volatile("cli" : : : "memory"); } +#ifdef _KERNEL static __inline void do_cpuid(u_int ax, u_int *p) { __asm __volatile("cpuid" - : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) - : "0" (ax)); + : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) + : "0" (ax)); } static __inline void cpuid_count(u_int ax, u_int cx, u_int *p) { __asm __volatile("cpuid" - : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) - : "0" (ax), "c" (cx)); + : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) + : "0" (ax), "c" (cx)); } +#else +static __inline void +do_cpuid(u_int ax, u_int *p) +{ + __asm __volatile( + "pushl\t%%ebx\n\t" + "cpuid\n\t" + "movl\t%%ebx,%1\n\t" + "popl\t%%ebx" + : "=a" (p[0]), "=DS" (p[1]), "=c" (p[2]), "=d" (p[3]) + : "0" (ax)); +} + +static __inline void +cpuid_count(u_int ax, u_int cx, u_int *p) +{ + __asm __volatile( + "pushl\t%%ebx\n\t" + "cpuid\n\t" + "movl\t%%ebx,%1\n\t" + "popl\t%%ebx" + : "=a" (p[0]), "=DS" (p[1]), "=c" (p[2]), "=d" (p[3]) + : "0" (ax), "c" (cx)); +} +#endif static __inline void enable_intr(void) From owner-svn-src-all@freebsd.org Thu Feb 14 13:59:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 02A0614D5520; Thu, 14 Feb 2019 13:59:01 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9B29072351; Thu, 14 Feb 2019 13:59:00 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8F43F7EF2; Thu, 14 Feb 2019 13:59:00 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EDx07R076545; Thu, 14 Feb 2019 13:59:00 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EDx0hW076544; Thu, 14 Feb 2019 13:59:00 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902141359.x1EDx0hW076544@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 14 Feb 2019 13:59:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344119 - head/lib/libc/x86/sys X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/lib/libc/x86/sys X-SVN-Commit-Revision: 344119 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9B29072351 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 13:59:01 -0000 Author: kib Date: Thu Feb 14 13:59:00 2019 New Revision: 344119 URL: https://svnweb.freebsd.org/changeset/base/344119 Log: x86 __vdso_gettc(): use machine/cpufunc.h function for CPUID. Based on the discussion with: jkim Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/lib/libc/x86/sys/__vdso_gettc.c Modified: head/lib/libc/x86/sys/__vdso_gettc.c ============================================================================== --- head/lib/libc/x86/sys/__vdso_gettc.c Thu Feb 14 13:53:11 2019 (r344118) +++ head/lib/libc/x86/sys/__vdso_gettc.c Thu Feb 14 13:59:00 2019 (r344119) @@ -54,31 +54,6 @@ __FBSDID("$FreeBSD$"); #include "libc_private.h" static void -cpuidp(u_int leaf, u_int p[4]) -{ - - __asm __volatile( -#if defined(__i386__) - " pushl %%ebx\n" -#endif - " cpuid\n" -#if defined(__i386__) - " movl %%ebx,%1\n" - " popl %%ebx" -#endif - : "=a" (p[0]), -#if defined(__i386__) - "=r" (p[1]), -#elif defined(__amd64__) - "=b" (p[1]), -#else -#error "Arch" -#endif - "=c" (p[2]), "=d" (p[3]) - : "0" (leaf)); -} - -static void rdtsc_mb_lfence(void) { @@ -100,12 +75,12 @@ rdtsc_mb_none(void) DEFINE_UIFUNC(static, void, rdtsc_mb, (void), static) { u_int p[4]; - /* Not a typo, string matches our cpuidp() registers use. */ + /* Not a typo, string matches our do_cpuid() registers use. */ static const char intel_id[] = "GenuntelineI"; if ((cpu_feature & CPUID_SSE2) == 0) return (rdtsc_mb_none); - cpuidp(0, p); + do_cpuid(0, p); return (memcmp(p + 1, intel_id, sizeof(intel_id) - 1) == 0 ? rdtsc_mb_lfence : rdtsc_mb_mfence); } From owner-svn-src-all@freebsd.org Thu Feb 14 14:02:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C116814D5774; Thu, 14 Feb 2019 14:02:35 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 603E4727EC; Thu, 14 Feb 2019 14:02:35 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 543E180AF; Thu, 14 Feb 2019 14:02:35 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EE2Zvj081289; Thu, 14 Feb 2019 14:02:35 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EE2Ydo081284; Thu, 14 Feb 2019 14:02:34 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902141402.x1EE2Ydo081284@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 14 Feb 2019 14:02:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344120 - in head/lib/libc: . amd64/gen i386/gen x86/gen X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/lib/libc: . amd64/gen i386/gen x86/gen X-SVN-Commit-Revision: 344120 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 603E4727EC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 14:02:36 -0000 Author: kib Date: Thu Feb 14 14:02:33 2019 New Revision: 344120 URL: https://svnweb.freebsd.org/changeset/base/344120 Log: Unify i386 and amd64 getcontextx.c, and use ifuncs while there. In particular, use ifuncs for __getcontextx_size(), also calculate the size of the extended save area in resolver. Same for __fillcontextx2(). Sponsored by: The FreeBSD Foundation MFC after: 1 week Added: head/lib/libc/x86/gen/ head/lib/libc/x86/gen/Makefile.inc (contents, props changed) head/lib/libc/x86/gen/getcontextx.c - copied, changed from r344117, head/lib/libc/amd64/gen/getcontextx.c Deleted: head/lib/libc/amd64/gen/getcontextx.c head/lib/libc/i386/gen/getcontextx.c Modified: head/lib/libc/Makefile head/lib/libc/amd64/gen/Makefile.inc head/lib/libc/i386/gen/Makefile.inc Modified: head/lib/libc/Makefile ============================================================================== --- head/lib/libc/Makefile Thu Feb 14 13:59:00 2019 (r344119) +++ head/lib/libc/Makefile Thu Feb 14 14:02:33 2019 (r344120) @@ -122,6 +122,7 @@ NOASM= .endif .if ${LIBC_ARCH} == "i386" || ${LIBC_ARCH} == "amd64" .include "${LIBC_SRCTOP}/x86/sys/Makefile.inc" +.include "${LIBC_SRCTOP}/x86/gen/Makefile.inc" .endif .if ${MK_NIS} != "no" CFLAGS+= -DYP Modified: head/lib/libc/amd64/gen/Makefile.inc ============================================================================== --- head/lib/libc/amd64/gen/Makefile.inc Thu Feb 14 13:59:00 2019 (r344119) +++ head/lib/libc/amd64/gen/Makefile.inc Thu Feb 14 14:02:33 2019 (r344120) @@ -2,7 +2,7 @@ # $FreeBSD$ SRCS+= _setjmp.S _set_tp.c rfork_thread.S setjmp.S sigsetjmp.S \ - fabs.S getcontextx.c \ + fabs.S \ infinity.c ldexp.c makecontext.c signalcontext.c \ flt_rounds.c fpgetmask.c fpsetmask.c fpgetprec.c fpsetprec.c \ fpgetround.c fpsetround.c fpgetsticky.c Modified: head/lib/libc/i386/gen/Makefile.inc ============================================================================== --- head/lib/libc/i386/gen/Makefile.inc Thu Feb 14 13:59:00 2019 (r344119) +++ head/lib/libc/i386/gen/Makefile.inc Thu Feb 14 14:02:33 2019 (r344120) @@ -2,5 +2,5 @@ # $FreeBSD$ SRCS+= _ctx_start.S _setjmp.S _set_tp.c fabs.S \ - flt_rounds.c getcontextx.c infinity.c ldexp.c makecontext.c \ + flt_rounds.c infinity.c ldexp.c makecontext.c \ rfork_thread.S setjmp.S signalcontext.c sigsetjmp.S Added: head/lib/libc/x86/gen/Makefile.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libc/x86/gen/Makefile.inc Thu Feb 14 14:02:33 2019 (r344120) @@ -0,0 +1,6 @@ +# $FreeBSD$ + +.PATH: ${LIBC_SRCTOP}/x86/gen + +SRCS+= \ + getcontextx.c Copied and modified: head/lib/libc/x86/gen/getcontextx.c (from r344117, head/lib/libc/amd64/gen/getcontextx.c) ============================================================================== --- head/lib/libc/amd64/gen/getcontextx.c Thu Feb 14 09:50:59 2019 (r344117, copy source) +++ head/lib/libc/x86/gen/getcontextx.c Thu Feb 14 14:02:33 2019 (r344120) @@ -35,49 +35,76 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include +#include +#include -static int xstate_sz = -1; +#if defined __i386__ +#define X86_GET_XFPUSTATE I386_GET_XFPUSTATE +typedef struct savexmm savex86_t ; +typedef struct i386_get_xfpustate x86_get_xfpustate_t; +#elif defined __amd64__ +#define X86_GET_XFPUSTATE AMD64_GET_XFPUSTATE +typedef struct savefpu savex86_t; +typedef struct amd64_get_xfpustate x86_get_xfpustate_t; +#else +#error "Wrong arch" +#endif -int -__getcontextx_size(void) +static int xstate_sz = 0; + +static int +__getcontextx_size_xfpu(void) { + + return (sizeof(ucontext_t) + xstate_sz); +} + +DEFINE_UIFUNC(, int, __getcontextx_size, (void), static) +{ u_int p[4]; - if (xstate_sz == -1) { - do_cpuid(1, p); - if ((p[2] & CPUID2_OSXSAVE) != 0) { - cpuid_count(0xd, 0x0, p); - xstate_sz = p[1] - sizeof(struct savefpu); - } else - xstate_sz = 0; + if ((cpu_feature2 & CPUID2_OSXSAVE) != 0) { + cpuid_count(0xd, 0x0, p); + xstate_sz = p[1] - sizeof(savex86_t); } + return (__getcontextx_size_xfpu); +} - return (sizeof(ucontext_t) + xstate_sz); +static int +__fillcontextx2_xfpu(char *ctx) +{ + x86_get_xfpustate_t xfpu; + ucontext_t *ucp; + + ucp = (ucontext_t *)ctx; + xfpu.addr = (char *)(ucp + 1); + xfpu.len = xstate_sz; + if (sysarch(X86_GET_XFPUSTATE, &xfpu) == -1) + return (-1); + ucp->uc_mcontext.mc_xfpustate = (__register_t)xfpu.addr; + ucp->uc_mcontext.mc_xfpustate_len = xstate_sz; + ucp->uc_mcontext.mc_flags |= _MC_HASFPXSTATE; + return (0); } -int -__fillcontextx2(char *ctx) +static int +__fillcontextx2_noxfpu(char *ctx) { - struct amd64_get_xfpustate xfpu; ucontext_t *ucp; ucp = (ucontext_t *)ctx; - if (xstate_sz != 0) { - xfpu.addr = (char *)(ucp + 1); - xfpu.len = xstate_sz; - if (sysarch(AMD64_GET_XFPUSTATE, &xfpu) == -1) - return (-1); - ucp->uc_mcontext.mc_xfpustate = (__register_t)xfpu.addr; - ucp->uc_mcontext.mc_xfpustate_len = xstate_sz; - ucp->uc_mcontext.mc_flags |= _MC_HASFPXSTATE; - } else { - ucp->uc_mcontext.mc_xfpustate = 0; - ucp->uc_mcontext.mc_xfpustate_len = 0; - } + ucp->uc_mcontext.mc_xfpustate = 0; + ucp->uc_mcontext.mc_xfpustate_len = 0; return (0); +} + +DEFINE_UIFUNC(, int, __fillcontextx2, (char *), static) +{ + + return ((cpu_feature2 & CPUID2_OSXSAVE) != 0 ? __fillcontextx2_xfpu : + __fillcontextx2_noxfpu); } int From owner-svn-src-all@freebsd.org Thu Feb 14 14:44:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2D46714D676F; Thu, 14 Feb 2019 14:44:56 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C5C4A7422E; Thu, 14 Feb 2019 14:44:55 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BB08D8774; Thu, 14 Feb 2019 14:44:55 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EEitEX002097; Thu, 14 Feb 2019 14:44:55 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EEis1o002090; Thu, 14 Feb 2019 14:44:54 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902141444.x1EEis1o002090@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 14 Feb 2019 14:44:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344121 - in head/sys: arm/arm arm64/arm64 mips/mips powerpc/powerpc riscv/riscv sparc64/sparc64 X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in head/sys: arm/arm arm64/arm64 mips/mips powerpc/powerpc riscv/riscv sparc64/sparc64 X-SVN-Commit-Revision: 344121 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C5C4A7422E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 14:44:56 -0000 Author: kib Date: Thu Feb 14 14:44:53 2019 New Revision: 344121 URL: https://svnweb.freebsd.org/changeset/base/344121 Log: Enable enabling ASLR on non-x86 architectures. Discussed with: emaste Sponsored by: The FreeBSD Foundation Modified: head/sys/arm/arm/elf_machdep.c head/sys/arm64/arm64/elf_machdep.c head/sys/mips/mips/elf_machdep.c head/sys/powerpc/powerpc/elf32_machdep.c head/sys/powerpc/powerpc/elf64_machdep.c head/sys/riscv/riscv/elf_machdep.c head/sys/sparc64/sparc64/elf_machdep.c Modified: head/sys/arm/arm/elf_machdep.c ============================================================================== --- head/sys/arm/arm/elf_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/arm/arm/elf_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -84,7 +84,7 @@ struct sysentvec elf32_freebsd_sysvec = { #if __ARM_ARCH >= 6 SV_ASLR | SV_SHP | SV_TIMEKEEP | #endif - SV_ABI_FREEBSD | SV_ILP32, + SV_ABI_FREEBSD | SV_ILP32 | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/arm64/arm64/elf_machdep.c ============================================================================== --- head/sys/arm64/arm64/elf_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/arm64/arm64/elf_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -79,7 +79,8 @@ static struct sysentvec elf64_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_SHP | SV_TIMEKEEP | SV_ABI_FREEBSD | SV_LP64, + .sv_flags = SV_SHP | SV_TIMEKEEP | SV_ABI_FREEBSD | SV_LP64 | + SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/mips/mips/elf_machdep.c ============================================================================== --- head/sys/mips/mips/elf_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/mips/mips/elf_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -76,7 +76,7 @@ struct sysentvec elf64_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_LP64, + .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -131,7 +131,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_ILP32, + .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/powerpc/powerpc/elf32_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf32_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/powerpc/powerpc/elf32_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -115,7 +115,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_fixlimit = NULL, #endif .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_SHP, + .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_SHP | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_shared_page_base = FREEBSD32_SHAREDPAGE, Modified: head/sys/powerpc/powerpc/elf64_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf64_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/powerpc/powerpc/elf64_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -79,7 +79,7 @@ struct sysentvec elf64_freebsd_sysvec_v1 = { .sv_setregs = exec_setregs_funcdesc, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP, + .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/riscv/riscv/elf_machdep.c ============================================================================== --- head/sys/riscv/riscv/elf_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/riscv/riscv/elf_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -82,7 +82,7 @@ struct sysentvec elf64_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP, + .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, Modified: head/sys/sparc64/sparc64/elf_machdep.c ============================================================================== --- head/sys/sparc64/sparc64/elf_machdep.c Thu Feb 14 14:02:33 2019 (r344120) +++ head/sys/sparc64/sparc64/elf_machdep.c Thu Feb 14 14:44:53 2019 (r344121) @@ -80,7 +80,7 @@ static struct sysentvec elf64_freebsd_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_LP64, + .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_ASLR, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, From owner-svn-src-all@freebsd.org Thu Feb 14 14:50:48 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2278814D6D40; Thu, 14 Feb 2019 14:50:48 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BBE5F7488F; Thu, 14 Feb 2019 14:50:47 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B16FF879A; Thu, 14 Feb 2019 14:50:47 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EEolbd003213; Thu, 14 Feb 2019 14:50:47 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EEolfm003203; Thu, 14 Feb 2019 14:50:47 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902141450.x1EEolfm003203@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 14 Feb 2019 14:50:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344122 - stable/12/sys/vm X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/vm X-SVN-Commit-Revision: 344122 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BBE5F7488F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 14:50:48 -0000 Author: kib Date: Thu Feb 14 14:50:47 2019 New Revision: 344122 URL: https://svnweb.freebsd.org/changeset/base/344122 Log: MFC r343850: contigmalloc: handle M_EXEC. Modified: stable/12/sys/vm/vm_kern.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/vm/vm_kern.c ============================================================================== --- stable/12/sys/vm/vm_kern.c Thu Feb 14 14:44:53 2019 (r344121) +++ stable/12/sys/vm/vm_kern.c Thu Feb 14 14:50:47 2019 (r344122) @@ -184,6 +184,7 @@ kmem_alloc_attr_domain(int domain, vm_size_t size, int vm_offset_t addr, i, offset; vm_page_t m; int pflags, tries; + vm_prot_t prot; size = round_page(size); vmem = vm_dom[domain].vmd_kernel_arena; @@ -193,6 +194,7 @@ kmem_alloc_attr_domain(int domain, vm_size_t size, int pflags = malloc2vm_flags(flags) | VM_ALLOC_NOBUSY | VM_ALLOC_WIRED; pflags &= ~(VM_ALLOC_NOWAIT | VM_ALLOC_WAITOK | VM_ALLOC_WAITFAIL); pflags |= VM_ALLOC_NOWAIT; + prot = (flags & M_EXEC) != 0 ? VM_PROT_ALL : VM_PROT_RW; VM_OBJECT_WLOCK(object); for (i = 0; i < size; i += PAGE_SIZE) { tries = 0; @@ -220,8 +222,8 @@ retry: if ((flags & M_ZERO) && (m->flags & PG_ZERO) == 0) pmap_zero_page(m); m->valid = VM_PAGE_BITS_ALL; - pmap_enter(kernel_pmap, addr + i, m, VM_PROT_RW, - VM_PROT_RW | PMAP_ENTER_WIRED, 0); + pmap_enter(kernel_pmap, addr + i, m, prot, + prot | PMAP_ENTER_WIRED, 0); } VM_OBJECT_WUNLOCK(object); return (addr); From owner-svn-src-all@freebsd.org Thu Feb 14 15:00:31 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1A70414D7376; Thu, 14 Feb 2019 15:00:31 +0000 (UTC) (envelope-from linimon@lonesome.com) Received: from mail.soaustin.net (mail.soaustin.net [18.222.6.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.soaustin.net", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 363897518F; Thu, 14 Feb 2019 15:00:30 +0000 (UTC) (envelope-from linimon@lonesome.com) Received: from lonesome.com (unknown [18.188.142.31]) by mail.soaustin.net (Postfix) with ESMTPSA id EFB6A16FCA; Thu, 14 Feb 2019 15:00:28 +0000 (UTC) Date: Thu, 14 Feb 2019 15:00:27 +0000 From: Mark Linimon To: rgrimes@freebsd.org Cc: Warner Losh , src-committers , svn-src-stable@freebsd.org, svn-src-all@freebsd.org, svn-src-stable-12@freebsd.org, Dmitry Morozovsky , Cy Schubert Subject: Re: svn commit: r344051 - in stable/12/sbin: newfs tunefs Message-ID: <20190214150027.GB10138@lonesome.com> References: <201902121631.x1CGVqWE076720@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201902121631.x1CGVqWE076720@pdx.rh.CN85.dnsmgr.net> User-Agent: Mutt/1.5.21 (2010-09-15) X-Rspamd-Queue-Id: 363897518F X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-0.15 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; NEURAL_HAM_MEDIUM(-0.29)[-0.294,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; NEURAL_SPAM_SHORT(0.64)[0.642,0]; IP_SCORE(-0.27)[ipnet: 18.220.0.0/14(0.06), asn: 16509(-1.33), country: US(-0.07)]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[lonesome.com]; AUTH_NA(1.00)[]; NEURAL_HAM_LONG(-0.92)[-0.924,0]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_MED(-0.20)[11.6.222.18.list.dnswl.org : 127.0.5.2]; MX_GOOD(-0.01)[cached: mail.soaustin.net]; RCPT_COUNT_SEVEN(0.00)[8]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:16509, ipnet:18.220.0.0/14, country:US]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:00:31 -0000 On Tue, Feb 12, 2019 at 08:31:52AM -0800, Rodney W. Grimes wrote: > If all of our process was better documented and laid down > we would have less of this type of discussion on a much less > frequent basis. And much more discussion about how the process is over-specified, onerous, doesn't take care of every edge case, and so forth. I speak from personal knowledge of trying to deal with this during my several years on portmgr@. IMVVHO rules-lawyering is toxic to a volunteer project. It was enough to cause me to walk away from what I had taken on. mcl From owner-svn-src-all@freebsd.org Thu Feb 14 15:15:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E1C0514D79E3; Thu, 14 Feb 2019 15:15:32 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7FCAA759F8; Thu, 14 Feb 2019 15:15:32 +0000 (UTC) (envelope-from luporl@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 73F728CA6; Thu, 14 Feb 2019 15:15:32 +0000 (UTC) (envelope-from luporl@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EFFWDU017953; Thu, 14 Feb 2019 15:15:32 GMT (envelope-from luporl@FreeBSD.org) Received: (from luporl@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EFFWQR017952; Thu, 14 Feb 2019 15:15:32 GMT (envelope-from luporl@FreeBSD.org) Message-Id: <201902141515.x1EFFWQR017952@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: luporl set sender to luporl@FreeBSD.org using -f From: Leandro Lupori Date: Thu, 14 Feb 2019 15:15:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344123 - head/sys/powerpc/powerpc X-SVN-Group: head X-SVN-Commit-Author: luporl X-SVN-Commit-Paths: head/sys/powerpc/powerpc X-SVN-Commit-Revision: 344123 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7FCAA759F8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:15:33 -0000 Author: luporl Date: Thu Feb 14 15:15:32 2019 New Revision: 344123 URL: https://svnweb.freebsd.org/changeset/base/344123 Log: [PPC64] Fix mismatch between thread flags and MSR When sigreturn() restored a thread's context, SRR1 was being restored to its previous value, but pcb_flags was not being touched. This could cause a mismatch between the thread's MSR and its pcb_flags. For instance, when the thread used the FPU for the first time inside the signal handler, sigreturn() would clear SRR1, but not pcb_flags. Then, the thread would return with the FPU bit cleared in MSR and, the next time it tried to use the FPU, it would fail on a KASSERT that checked if the FPU was disabled. This change clears the FPU bit in both pcb_flags and frame->srr1, as the code that restores the context expects to use the FPU trap to re-enable it. PR: 234539 Reported by: sbruno Reviewed by: jhibbits, sbruno Differential Revision: https://reviews.freebsd.org/D19166 Modified: head/sys/powerpc/powerpc/exec_machdep.c Modified: head/sys/powerpc/powerpc/exec_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/exec_machdep.c Thu Feb 14 14:50:47 2019 (r344122) +++ head/sys/powerpc/powerpc/exec_machdep.c Thu Feb 14 15:15:32 2019 (r344123) @@ -474,6 +474,10 @@ set_mcontext(struct thread *td, mcontext_t *mcp) else tf->fixreg[2] = tls; + /* Disable FPU */ + tf->srr1 &= ~PSL_FP; + pcb->pcb_flags &= ~PCB_FPU; + if (mcp->mc_flags & _MC_FP_VALID) { /* enable_fpu() will happen lazily on a fault */ pcb->pcb_flags |= PCB_FPREGS; From owner-svn-src-all@freebsd.org Thu Feb 14 15:33:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 992CF14D83E6; Thu, 14 Feb 2019 15:33:05 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3F77276856; Thu, 14 Feb 2019 15:33:05 +0000 (UTC) (envelope-from se@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2863A9010; Thu, 14 Feb 2019 15:33:05 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EFX5ec028533; Thu, 14 Feb 2019 15:33:05 GMT (envelope-from se@FreeBSD.org) Received: (from se@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EFX5Dx028532; Thu, 14 Feb 2019 15:33:05 GMT (envelope-from se@FreeBSD.org) Message-Id: <201902141533.x1EFX5Dx028532@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: se set sender to se@FreeBSD.org using -f From: Stefan Esser Date: Thu, 14 Feb 2019 15:33:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344124 - stable/11/usr.sbin/kbdcontrol X-SVN-Group: stable-11 X-SVN-Commit-Author: se X-SVN-Commit-Paths: stable/11/usr.sbin/kbdcontrol X-SVN-Commit-Revision: 344124 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3F77276856 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:33:05 -0000 Author: se Date: Thu Feb 14 15:33:04 2019 New Revision: 344124 URL: https://svnweb.freebsd.org/changeset/base/344124 Log: MFC r343339: Silence Clang Scan warning about use of unitialized variable. The logic is changed to depend on actual "beep" parameters instead of on a flag that may be set for invalid parameters. An embedded literal escape character has been replaced by "\e", since it could confuse terminals when displaying the affected line. Modified: stable/11/usr.sbin/kbdcontrol/kbdcontrol.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/kbdcontrol/kbdcontrol.c ============================================================================== --- stable/11/usr.sbin/kbdcontrol/kbdcontrol.c Thu Feb 14 15:15:32 2019 (r344123) +++ stable/11/usr.sbin/kbdcontrol/kbdcontrol.c Thu Feb 14 15:33:04 2019 (r344124) @@ -961,6 +961,8 @@ set_bell_values(char *opt) int bell, duration, pitch; bell = 0; + duration = 0; + pitch = 0; if (!strncmp(opt, "quiet.", 6)) { bell = CONS_QUIET_BELL; opt += 6; @@ -991,8 +993,8 @@ badopt: } ioctl(0, CONS_BELLTYPE, &bell); - if (!(bell & CONS_VISUAL_BELL)) - fprintf(stderr, "[=%d;%dB", pitch, duration); + if (duration > 0 && pitch > 0) + fprintf(stderr, "\e[=%d;%dB", pitch, duration); } static void From owner-svn-src-all@freebsd.org Thu Feb 14 15:39:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7D5AB14D8571; Thu, 14 Feb 2019 15:39:18 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1F7AA76AA1; Thu, 14 Feb 2019 15:39:18 +0000 (UTC) (envelope-from se@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 125289019; Thu, 14 Feb 2019 15:39:18 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EFdHd4028829; Thu, 14 Feb 2019 15:39:17 GMT (envelope-from se@FreeBSD.org) Received: (from se@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EFdHv0028828; Thu, 14 Feb 2019 15:39:17 GMT (envelope-from se@FreeBSD.org) Message-Id: <201902141539.x1EFdHv0028828@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: se set sender to se@FreeBSD.org using -f From: Stefan Esser Date: Thu, 14 Feb 2019 15:39:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344125 - stable/11/usr.bin/whereis X-SVN-Group: stable-11 X-SVN-Commit-Author: se X-SVN-Commit-Paths: stable/11/usr.bin/whereis X-SVN-Commit-Revision: 344125 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1F7AA76AA1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:39:18 -0000 Author: se Date: Thu Feb 14 15:39:17 2019 New Revision: 344125 URL: https://svnweb.freebsd.org/changeset/base/344125 Log: MFC r343408: Silence Clang Scan warnings regarding unsafe use of strcp(). While these warnings are false positives, the use of strdup() instead of malloc() and strcpy() simplifies and clarifies the code. A bogus assignment to a variable (whose previous value may be required in a later block) has also been removed. Modified: stable/11/usr.bin/whereis/whereis.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.bin/whereis/whereis.c ============================================================================== --- stable/11/usr.bin/whereis/whereis.c Thu Feb 14 15:33:04 2019 (r344124) +++ stable/11/usr.bin/whereis/whereis.c Thu Feb 14 15:39:17 2019 (r344125) @@ -285,9 +285,9 @@ defaults(void) bindirs[nele] = NULL; if ((cp = getenv("PATH")) != NULL) { /* don't destroy the original environment... */ - if ((b = malloc(strlen(cp) + 1)) == NULL) + b = strdup(cp); + if (b == NULL) abort(); - strcpy(b, cp); decolonify(b, &bindirs, &nele); } } @@ -301,18 +301,18 @@ defaults(void) err(EX_OSERR, "error processing manpath results"); if ((b = strchr(buf, '\n')) != NULL) *b = '\0'; - if ((b = malloc(strlen(buf) + 1)) == NULL) + b = strdup(buf); + if (b == NULL) abort(); - strcpy(b, buf); nele = 0; decolonify(b, &mandirs, &nele); } /* -s defaults to precompiled list, plus subdirs of /usr/ports */ if (!sourcedirs) { - if ((b = malloc(strlen(sourcepath) + 1)) == NULL) + b = strdup(sourcepath); + if (b == NULL) abort(); - strcpy(b, sourcepath); nele = 0; decolonify(b, &sourcedirs, &nele); @@ -523,11 +523,9 @@ main(int argc, char **argv) * man -w found plain source * page, use it. */ - s = strlen(buf); - cp2 = malloc(s + 1); + cp2 = strdup(buf); if (cp2 == NULL) abort(); - strcpy(cp2, buf); } if (man == NULL) { From owner-svn-src-all@freebsd.org Thu Feb 14 15:41:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97C6914D8777; Thu, 14 Feb 2019 15:41:06 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 39B1876C80; Thu, 14 Feb 2019 15:41:06 +0000 (UTC) (envelope-from se@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2E2D19155; Thu, 14 Feb 2019 15:41:06 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EFf6DN029695; Thu, 14 Feb 2019 15:41:06 GMT (envelope-from se@FreeBSD.org) Received: (from se@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EFf6Ig029694; Thu, 14 Feb 2019 15:41:06 GMT (envelope-from se@FreeBSD.org) Message-Id: <201902141541.x1EFf6Ig029694@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: se set sender to se@FreeBSD.org using -f From: Stefan Esser Date: Thu, 14 Feb 2019 15:41:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344126 - stable/11/libexec/getty X-SVN-Group: stable-11 X-SVN-Commit-Author: se X-SVN-Commit-Paths: stable/11/libexec/getty X-SVN-Commit-Revision: 344126 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 39B1876C80 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:41:06 -0000 Author: se Date: Thu Feb 14 15:41:05 2019 New Revision: 344126 URL: https://svnweb.freebsd.org/changeset/base/344126 Log: MFC r343479: Fix potential buffer overflow and undefined behavior. The buffer allocated in read_chat() could be 1 element too short, if the chatstr parameter passed in is 1 or 3 charachters long (e.g. "a" or "a b"). The allocation of the pointer array does not account for the terminating NULL pointer in that case. Overlapping source and destination strings are undefined in strcpy(). Instead of moving a string to the left by one character just increment the char pointer before it is assigned to the results array. Modified: stable/11/libexec/getty/chat.c Directory Properties: stable/11/ (props changed) Modified: stable/11/libexec/getty/chat.c ============================================================================== --- stable/11/libexec/getty/chat.c Thu Feb 14 15:39:17 2019 (r344125) +++ stable/11/libexec/getty/chat.c Thu Feb 14 15:41:05 2019 (r344126) @@ -141,7 +141,7 @@ read_chat(char **chatstr) int l; if ((l=strlen(str)) > 0 && (tmp=malloc(l + 1)) != NULL && - (res=malloc((l / 2 + 1) * sizeof(char *))) != NULL) { + (res=malloc(((l + 1) / 2 + 1) * sizeof(char *))) != NULL) { static char ws[] = " \t"; char * p; @@ -216,7 +216,7 @@ read_chat(char **chatstr) q = strrchr(p+1, *p); if (q != NULL && *q == *p && q[1] == '\0') { *q = '\0'; - strcpy(p, p+1); + p++; } } From owner-svn-src-all@freebsd.org Thu Feb 14 15:42:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6F8014D87F0; Thu, 14 Feb 2019 15:42:30 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 66DA576FE3; Thu, 14 Feb 2019 15:42:30 +0000 (UTC) (envelope-from se@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5C14291CA; Thu, 14 Feb 2019 15:42:30 +0000 (UTC) (envelope-from se@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EFgUGs033785; Thu, 14 Feb 2019 15:42:30 GMT (envelope-from se@FreeBSD.org) Received: (from se@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EFgUgc033784; Thu, 14 Feb 2019 15:42:30 GMT (envelope-from se@FreeBSD.org) Message-Id: <201902141542.x1EFgUgc033784@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: se set sender to se@FreeBSD.org using -f From: Stefan Esser Date: Thu, 14 Feb 2019 15:42:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344127 - stable/11/lib/libfigpar X-SVN-Group: stable-11 X-SVN-Commit-Author: se X-SVN-Commit-Paths: stable/11/lib/libfigpar X-SVN-Commit-Revision: 344127 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 66DA576FE3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:42:31 -0000 Author: se Date: Thu Feb 14 15:42:29 2019 New Revision: 344127 URL: https://svnweb.freebsd.org/changeset/base/344127 Log: MFC r343480,343482: Silence Clang Scan warning about unsafe use of strcpy. Replace strcpy() by memcpy to the previously allocated range of known size. Modified: stable/11/lib/libfigpar/string_m.c Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libfigpar/string_m.c ============================================================================== --- stable/11/lib/libfigpar/string_m.c Thu Feb 14 15:41:05 2019 (r344126) +++ stable/11/lib/libfigpar/string_m.c Thu Feb 14 15:42:29 2019 (r344127) @@ -120,9 +120,9 @@ replaceall(char *source, const char *find, const char /* If replace is longer than find, we'll need to create a temp copy */ if (rlen > flen) { temp = malloc(slen + 1); - if (errno != 0) /* could not allocate memory */ + if (temp == NULL) /* could not allocate memory */ return (-1); - strcpy(temp, source); + memcpy(temp, source, slen + 1); } else temp = source; From owner-svn-src-all@freebsd.org Thu Feb 14 15:45:54 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6399E14D88EE; Thu, 14 Feb 2019 15:45:54 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0827877197; Thu, 14 Feb 2019 15:45:54 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F11B491D3; Thu, 14 Feb 2019 15:45:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EFjrfZ033990; Thu, 14 Feb 2019 15:45:53 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EFjrm2033989; Thu, 14 Feb 2019 15:45:53 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902141545.x1EFjrm2033989@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Thu, 14 Feb 2019 15:45:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344128 - head/sys/vm X-SVN-Group: head X-SVN-Commit-Author: kib X-SVN-Commit-Paths: head/sys/vm X-SVN-Commit-Revision: 344128 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0827877197 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 15:45:54 -0000 Author: kib Date: Thu Feb 14 15:45:53 2019 New Revision: 344128 URL: https://svnweb.freebsd.org/changeset/base/344128 Log: Make anon clustering more compatible. Make the clustering enabling knob more fine-grained by providing a setting where the allocation with hint is not clustered. This is aimed to be somewhat more compatible with e.g. go 1.4 which expects that hinted mmap without MAP_FIXED does not change the allocation address. Now the vm.cluster_anon can be set to 1 to only cluster when no hints, and to 2 to always cluster. Default value is 1. Requested by: peter Reviewed by: emaste, markj Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential revision: https://reviews.freebsd.org/D19194 Modified: head/sys/vm/vm_map.c Modified: head/sys/vm/vm_map.c ============================================================================== --- head/sys/vm/vm_map.c Thu Feb 14 15:42:29 2019 (r344127) +++ head/sys/vm/vm_map.c Thu Feb 14 15:45:53 2019 (r344128) @@ -1487,8 +1487,23 @@ static const int aslr_pages_rnd_32[2] = {0x100, 0x4}; static int cluster_anon = 1; SYSCTL_INT(_vm, OID_AUTO, cluster_anon, CTLFLAG_RW, &cluster_anon, 0, - "Cluster anonymous mappings"); + "Cluster anonymous mappings: 0 = no, 1 = yes if no hint, 2 = always"); +static bool +clustering_anon_allowed(vm_offset_t addr) +{ + + switch (cluster_anon) { + case 0: + return (false); + case 1: + return (addr == 0); + case 2: + default: + return (true); + } +} + static long aslr_restarts; SYSCTL_LONG(_vm, OID_AUTO, aslr_restarts, CTLFLAG_RD, &aslr_restarts, 0, @@ -1593,7 +1608,7 @@ vm_map_find(vm_map_t map, vm_object_t object, vm_ooffs } else alignment = 0; en_aslr = (map->flags & MAP_ASLR) != 0; - update_anon = cluster = cluster_anon != 0 && + update_anon = cluster = clustering_anon_allowed(*addr) && (map->flags & MAP_IS_SUB_MAP) == 0 && max_addr == 0 && find_space != VMFS_NO_SPACE && object == NULL && (cow & (MAP_INHERIT_SHARE | MAP_STACK_GROWS_UP | From owner-svn-src-all@freebsd.org Thu Feb 14 16:12:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9DCD414D978F; Thu, 14 Feb 2019 16:12:00 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-it1-x141.google.com (mail-it1-x141.google.com [IPv6:2607:f8b0:4864:20::141]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2F2E28045A; Thu, 14 Feb 2019 16:12:00 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: by mail-it1-x141.google.com with SMTP id z131so5886750itf.5; Thu, 14 Feb 2019 08:12:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=oDUBXTQq2hhb9smSO59E15kYl7cF+8gn4GeNW8TgrVU=; b=lBkISu6JiFoA0ZV4zMtu8eiRMjGGBz5KyaJpzbUokpkLODGyrwUDIguNhhx4/ihrhj +xsXSv+6B9DMvouVU5veYsFMRh2ybp5WMtoRaFaY2fCzpPAGQDDcydfqIVsHvZ0J65X6 fTyJPqwKt5SeBtkShEwdabkC7pZgQeCjJ2MiA0Gzm6MUKLWv8/lhJdN1pmxP/bm+mcue Nyoys+SSepVphFoAZZngDV6Azvb+Hh44th7SuV1ud8zS7PngL0WG5v3Y9vRlsdrgrXE1 M1K64F/23+2NIuI2yeT3AstmALS/QLpTd2CL0tr3NGl0eh1N0fbll+BOw1qkzpgFwJP1 eprQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=oDUBXTQq2hhb9smSO59E15kYl7cF+8gn4GeNW8TgrVU=; b=PFu3RGYE9zMUyNW+3YOnPr64YNO0mdQ+Ln2Fo56OAo8jGH6H51EATWpAGWwd/nzuO3 Tf9mEf3CZBYqkcVcJ+FkAy8e9IOij1293BNiWHXJ2MV2yeMNfLQnqL3q/RCyOAfahWP7 gE4y3KlJuZbmAtthtOtB8thR6XAhbtBJpSpGbHDMLMFeB59vvobPS10NMR/jPJsqi5UW F0mtmB3F1abPEKOuDbfxiJ1UmBGgK4Jvh2Ll8WgRe+JwBOKLWo37ziAyqnxg9gRpMh63 QNXECl00vH1ytSztF1GiEvsZrjf8FOv/CLB8bNq++jzbfEPkAzKHAPuSoGvJhuvEDjgO RhQA== X-Gm-Message-State: AHQUAuahXwoWDquD/gLxRFzd+F/g053i5UkFthWcM76/k3qMSA8etb4e D7EJvhM1sDxNfPCYoX5tliE= X-Google-Smtp-Source: AHgI3IZ+SpwkkbgHWnKQEQrLWtscb8Js+hXDM2tuvtswzmylCB22InWA9caz6soxvZZA/Jbfeb1AiQ== X-Received: by 2002:a02:8303:: with SMTP id v3mr2002659jag.51.1550160718950; Thu, 14 Feb 2019 08:11:58 -0800 (PST) Received: from raichu (toroon0560w-lp140-01-69-159-36-102.dsl.bell.ca. [69.159.36.102]) by smtp.gmail.com with ESMTPSA id b192sm1338926itb.12.2019.02.14.08.11.57 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 14 Feb 2019 08:11:58 -0800 (PST) Sender: Mark Johnston Date: Thu, 14 Feb 2019 11:11:53 -0500 From: Mark Johnston To: Bruce Evans Cc: Justin Hibbits , Gleb Smirnoff , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm Message-ID: <20190214161153.GA50900@raichu> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214153345.C1404@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190214153345.C1404@besplex.bde.org> User-Agent: Mutt/1.11.2 (2019-01-07) X-Rspamd-Queue-Id: 2F2E28045A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 16:12:00 -0000 On Thu, Feb 14, 2019 at 06:56:42PM +1100, Bruce Evans wrote: > On Wed, 13 Feb 2019, Justin Hibbits wrote: > > > On Tue, 15 Jan 2019 01:02:17 +0000 (UTC) > > Gleb Smirnoff wrote: > > > >> Author: glebius > >> Date: Tue Jan 15 01:02:16 2019 > >> New Revision: 343030 > >> URL: https://svnweb.freebsd.org/changeset/base/343030 > >> > >> Log: > >> Allocate pager bufs from UMA instead of 80-ish mutex protected > >> linked list. > > ... > > > > This seems to break 32-bit platforms, or at least 32-bit book-e > > powerpc, which has a limited KVA space (~500MB). It preallocates I've > > seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, > > leaving very little left for the rest of runtime. > > Hrmph. I complained other things in this commit this when it was > committed, but not this largest bug since preallocation was broken then > so I thought that it wasn't done, so that problems are smaller unless the > excessive limits are actually reached. > > Now i386 does it: > > XX ITEM SIZE LIMIT USED FREE REQ FAIL SLEEP > XX > XX swrbuf: 336, 128, 0, 0, 0, 0, 0 > XX swwbuf: 336, 64, 0, 0, 0, 0, 0 > XX nfspbuf: 336, 128, 0, 0, 0, 0, 0 > XX mdpbuf: 336, 25, 0, 0, 0, 0, 0 > XX clpbuf: 336, 128, 0, 5, 4, 0, 0 > XX vnpbuf: 336, 2048, 0, 0, 0, 0, 0 > XX pbuf: 336, 16, 0, 2535, 0, 0, 0 > > but i386 now has 4GB of KVA, with almost 3GB to waste, so the bug is not > noticed there. > > The preallocation wasn't there in my last mail to the author about nearby > bugs, on 24 Jan 2019: > > YY vnpbuf: 568, 2048, 0, 0, 0, 0, 0 > YY clpbuf: 568, 128, 0, 128, 8750, 0, 1 > YY pbuf: 568, 16, 0, 4, 0, 0, 0 > > This output is on amd64 where the SIZE is larger and everything else was > the same as on i386. Now amd64 shows the large preallocation too. > > There seems to be another bug for the especially small LIMIT of 16 to > turn into a preallocation of 2535 and not cause immediate reduction to > the limit. > > I happen to have kernels from 24 and 25 Jan handy. The first one is > amd64 r343346M built on Jan 23, and it doesn't do the large > preallocation. The second one is i386 r343388:343418M built on Jan > 25, and it does the large preallocation. Both call uma_prealloc() to > ask for nswbuf_max = 0x9e9 buffers, but the old version only allocates > 4 buffers while later version allocate 0x9e9 buffers. > > The only relevant commit between the good and bad versions seems to be > r343453. This fixes uma_prealloc() to actually work. But it is a feature > for it to not work when its caller asks for too much. I guess you meant r343353. In any case, the pbuf keg is _NOFREE, so even without preallocation the large pbuf zone limits may become problematic if there are bursts of allocation requests. > 0x9e9 is the sum of the LIMITs of all pbuf pools. The main bug in > r343030 is that it expands nswbuf, which is supposed to give the > combined limit, from its normal value of 256 to 0x9e9. (r343030 > actually used nswbuf before it was properly initialized, so used its > maximum value of 256 even on small systems with nswbuf = 16. Only > this has been fixed.) > > On i386, nbuf is excessively limited so as to give a maxbufspace of > about 100MB so as to fit in 1GB of kva even with infinite RAM and > -current's actual 4GB of kva. nbuf is correctly limited to give a > much smaller maxbufspace when RAM is small (kva scaling for this is > not done so well). nswbuf is restricted if nbuf is restricted, but > not enough (except in my version). It is normally 256, so the pbuf > allocation used to be 32MB, and this is already a bit large compared > with 100MB for maxbufspace. Expanding pbufs by a factor of 0x9e9/0x100 > gives the silly combination of 100MB for maxbufspace and 317MB for > pbufs. > > If kva is only 512MB instead of 1GB, then maxbufspace should be only > 50MB and nswbuf should be smaller too. Similarly for PAE on i386 back > when it was configured with 1GB kva by default. Only about 512MB are > left after allocating space for page table metadata. I have fixes > that scale most of this better. Large subsystems starting with kmem > get a hard-coded fraction of the usable kva. E.g., kmem gets about > 60% of usable kva instead of about 40% of nominal kva. Most other > large subsystems including the buffer cache get about 1/8 of the > remaining 40% of usable kva. Scaling for other subsystems is mostly > worse than for kmem. pbufs are part of the buffer cache allocation. > The expansion factor of 0x9e9/0x100 breaks this. > > I don't understand how pbuf_preallocate() allocates for the other > pbuf pools. When I debugged this for clpbufs, the preallocation was > not used. pbuf types other than clpbufs seem to be unused in my > configurations. I thought that pbufs were used during initialization, > since they end up with a nonzero FREE count, but their only use seems > to be to preallocate them. All of the pbuf zones share a common slab allocator. The zones have individual limits but can tap in to the shared preallocation. From owner-svn-src-all@freebsd.org Thu Feb 14 16:20:02 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B54AE14D9951; Thu, 14 Feb 2019 16:20:02 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 339AC80865; Thu, 14 Feb 2019 16:20:01 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1EGJxbE086683; Thu, 14 Feb 2019 08:19:59 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1EGJxxY086682; Thu, 14 Feb 2019 08:19:59 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902141619.x1EGJxxY086682@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344114 - stable/12/sbin/sysctl In-Reply-To: <201902140912.x1E9CJDs029383@repo.freebsd.org> To: Guangyuan Yang Date: Thu, 14 Feb 2019 08:19:59 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 339AC80865 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.974,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 16:20:02 -0000 [ Charset UTF-8 unsupported, converting... ] > Author: ygy (doc committer) > Date: Thu Feb 14 09:12:19 2019 > New Revision: 344114 > URL: https://svnweb.freebsd.org/changeset/base/344114 > > Log: > MFC r343930: > > Remove -R option which was added to sysctl(8) man page per r244106, but it is not implemented. > > Submitted by: Alfonso Siciliano > Reviewed by: 0mp, imp > Differential Revision: https://reviews.freebsd.org/D19012 > > Modified: > stable/12/sbin/sysctl/sysctl.8 > Directory Properties: > stable/12/ (props changed) > > Modified: stable/12/sbin/sysctl/sysctl.8 > ============================================================================== > --- stable/12/sbin/sysctl/sysctl.8 Thu Feb 14 00:52:03 2019 (r344113) > +++ stable/12/sbin/sysctl/sysctl.8 Thu Feb 14 09:12:19 2019 (r344114) > @@ -28,7 +28,7 @@ > .\" From: @(#)sysctl.8 8.1 (Berkeley) 6/6/93 > .\" $FreeBSD$ > .\" > -.Dd September 24, 2018 > +.Dd February 8, 2019 > .Dt SYSCTL 8 > .Os > .Sh NAME > @@ -36,13 +36,13 @@ > .Nd get or set kernel state > .Sh SYNOPSIS > .Nm > -.Op Fl bdehiNnoRTtqx > +.Op Fl bdehiNnoTtqWx The commit message does not mention adding any flags, yet I see a new W flag here? This is a commit message error, as -W is in the man page and usage() of the program. > .Op Fl B Ar bufsize > .Op Fl f Ar filename > .Ar name Ns Op = Ns Ar value Ns Op , Ns Ar value > .Ar ... > .Nm > -.Op Fl bdehNnoRTtqx > +.Op Fl bdehNnoTtqWx And here as well. > .Op Fl B Ar bufsize > .Fl a > .Sh DESCRIPTION > > -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Thu Feb 14 17:04:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E463F14DA9CC; Thu, 14 Feb 2019 17:04:04 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 831E582504; Thu, 14 Feb 2019 17:04:04 +0000 (UTC) (envelope-from imp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 73E989F91; Thu, 14 Feb 2019 17:04:04 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EH44EX075449; Thu, 14 Feb 2019 17:04:04 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EH44XG075448; Thu, 14 Feb 2019 17:04:04 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201902141704.x1EH44XG075448@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Thu, 14 Feb 2019 17:04:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344129 - head X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head X-SVN-Commit-Revision: 344129 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 831E582504 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 17:04:05 -0000 Author: imp Date: Thu Feb 14 17:04:04 2019 New Revision: 344129 URL: https://svnweb.freebsd.org/changeset/base/344129 Log: Fix small typo. Differential Review: https://reviews.freebsd.org/D19193 Modified: head/UPDATING Modified: head/UPDATING ============================================================================== --- head/UPDATING Thu Feb 14 15:45:53 2019 (r344128) +++ head/UPDATING Thu Feb 14 17:04:04 2019 (r344129) @@ -237,7 +237,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: 20180719: ARM64 now have efifb support, if you want to have serial console on your arm64 board when an screen is connected and the bootloader - setup a frambuffer for us to use, just add : + setup a framebuffer for us to use, just add : boot_serial=YES boot_multicons=YES in /boot/loader.conf From owner-svn-src-all@freebsd.org Thu Feb 14 17:40:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1028A14DB7FC; Thu, 14 Feb 2019 17:40:39 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AB3C183646; Thu, 14 Feb 2019 17:40:38 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A15C4A4C2; Thu, 14 Feb 2019 17:40:38 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EHecHP092139; Thu, 14 Feb 2019 17:40:38 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EHecOX092138; Thu, 14 Feb 2019 17:40:38 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902141740.x1EHecOX092138@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 17:40:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344130 - stable/12 X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: stable/12 X-SVN-Commit-Revision: 344130 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AB3C183646 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 17:40:39 -0000 Author: asomers Date: Thu Feb 14 17:40:38 2019 New Revision: 344130 URL: https://svnweb.freebsd.org/changeset/base/344130 Log: MFC r340525 again Apparently I didn't commit the SVN merge tracking info the first time I MFCed this commit. This commit is merge tracking info only. mount_fusefs.8: expand HISTORY section Note that fuse was available from ports long before joining the base system. Also, update the upstream URL. Modified: Directory Properties: stable/12/ (props changed) From owner-svn-src-all@freebsd.org Thu Feb 14 18:01:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 144CA14DC193; Thu, 14 Feb 2019 18:01:07 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A7ED48432E; Thu, 14 Feb 2019 18:01:06 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9A893A837; Thu, 14 Feb 2019 18:01:06 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EI16Qu006137; Thu, 14 Feb 2019 18:01:06 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EI16rN006136; Thu, 14 Feb 2019 18:01:06 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902141801.x1EI16rN006136@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 18:01:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344131 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 344131 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A7ED48432E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 18:01:07 -0000 Author: asomers Date: Thu Feb 14 18:01:06 2019 New Revision: 344131 URL: https://svnweb.freebsd.org/changeset/base/344131 Log: MFC r340988: vfs_aio.c: rename "physio" symbols to "bio". aio has two paths: an asynchronous "physio" path and a synchronous path. Confusingly, physio(9) isn't actually used by the "physio" path, and never has been. In fact, it may even be called by the synchronous path! Rename the "physio" path to the "bio" path to reflect what it actually does: directly compose BIOs and send them to character devices. Modified: stable/12/sys/kern/vfs_aio.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/vfs_aio.c ============================================================================== --- stable/12/sys/kern/vfs_aio.c Thu Feb 14 17:40:38 2019 (r344130) +++ stable/12/sys/kern/vfs_aio.c Thu Feb 14 18:01:06 2019 (r344131) @@ -212,7 +212,7 @@ typedef struct oaiocb { /* * If the routine that services an AIO request blocks while running in an * AIO kernel process it can starve other I/O requests. BIO requests - * queued via aio_qphysio() complete in GEOM and do not use AIO kernel + * queued via aio_qbio() complete asynchronously and do not use AIO kernel * processes at all. Socket I/O requests use a separate pool of * kprocs and also force non-blocking I/O. Other file I/O requests * use the generic fo_read/fo_write operations which can block. The @@ -268,7 +268,7 @@ struct kaioinfo { int kaio_flags; /* (a) per process kaio flags */ int kaio_active_count; /* (c) number of currently used AIOs */ int kaio_count; /* (a) size of AIO queue */ - int kaio_buffer_count; /* (a) number of physio buffers */ + int kaio_buffer_count; /* (a) number of bio buffers */ TAILQ_HEAD(,kaiocb) kaio_all; /* (a) all AIOs in a process */ TAILQ_HEAD(,kaiocb) kaio_done; /* (a) done queue for process */ TAILQ_HEAD(,aioliojob) kaio_liojoblist; /* (a) list of lio jobs */ @@ -318,11 +318,11 @@ static int aio_newproc(int *); int aio_aqueue(struct thread *td, struct aiocb *ujob, struct aioliojob *lio, int type, struct aiocb_ops *ops); static int aio_queue_file(struct file *fp, struct kaiocb *job); -static void aio_physwakeup(struct bio *bp); +static void aio_biowakeup(struct bio *bp); static void aio_proc_rundown(void *arg, struct proc *p); static void aio_proc_rundown_exec(void *arg, struct proc *p, struct image_params *imgp); -static int aio_qphysio(struct proc *p, struct kaiocb *job); +static int aio_qbio(struct proc *p, struct kaiocb *job); static void aio_daemon(void *param); static void aio_bio_done_notify(struct proc *userp, struct kaiocb *job); static bool aio_clear_cancel_function_locked(struct kaiocb *job); @@ -741,9 +741,9 @@ drop: /* * The AIO processing activity for LIO_READ/LIO_WRITE. This is the code that - * does the I/O request for the non-physio version of the operations. The - * normal vn operations are used, and this code should work in all instances - * for every type of file, including pipes, sockets, fifos, and regular files. + * does the I/O request for the non-bio version of the operations. The normal + * vn operations are used, and this code should work in all instances for every + * type of file, including pipes, sockets, fifos, and regular files. * * XXX I don't think it works well for socket, pipe, and fifo. */ @@ -1195,7 +1195,7 @@ aio_newproc(int *start) } /* - * Try the high-performance, low-overhead physio method for eligible + * Try the high-performance, low-overhead bio method for eligible * VCHR devices. This method doesn't use an aio helper thread, and * thus has very low overhead. * @@ -1204,7 +1204,7 @@ aio_newproc(int *start) * duration of this call. */ static int -aio_qphysio(struct proc *p, struct kaiocb *job) +aio_qbio(struct proc *p, struct kaiocb *job) { struct aiocb *cb; struct file *fp; @@ -1277,7 +1277,7 @@ aio_qphysio(struct proc *p, struct kaiocb *job) bp->bio_length = cb->aio_nbytes; bp->bio_bcount = cb->aio_nbytes; - bp->bio_done = aio_physwakeup; + bp->bio_done = aio_biowakeup; bp->bio_data = (void *)(uintptr_t)cb->aio_buf; bp->bio_offset = cb->aio_offset; bp->bio_cmd = cb->aio_lio_opcode == LIO_WRITE ? BIO_WRITE : BIO_READ; @@ -1442,7 +1442,7 @@ static struct aiocb_ops aiocb_ops_osigevent = { #endif /* - * Queue a new AIO request. Choosing either the threaded or direct physio VCHR + * Queue a new AIO request. Choosing either the threaded or direct bio VCHR * technique is done in this code. */ int @@ -1697,7 +1697,7 @@ aio_queue_file(struct file *fp, struct kaiocb *job) bool safe; ki = job->userproc->p_aioinfo; - error = aio_qphysio(job->userproc, job); + error = aio_qbio(job->userproc, job); if (error >= 0) return (error); safe = false; @@ -1947,8 +1947,7 @@ sys_aio_suspend(struct thread *td, struct aio_suspend_ } /* - * aio_cancel cancels any non-physio aio operations not currently in - * progress. + * aio_cancel cancels any non-bio aio operations not currently in progress. */ int sys_aio_cancel(struct thread *td, struct aio_cancel_args *uap) @@ -2332,7 +2331,7 @@ sys_lio_listio(struct thread *td, struct lio_listio_ar } static void -aio_physwakeup(struct bio *bp) +aio_biowakeup(struct bio *bp) { struct kaiocb *job = (struct kaiocb *)bp->bio_caller1; struct proc *userp; From owner-svn-src-all@freebsd.org Thu Feb 14 18:02:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2BB5014DC253; Thu, 14 Feb 2019 18:02:38 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C417F84731; Thu, 14 Feb 2019 18:02:37 +0000 (UTC) (envelope-from erj@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A9456A9B5; Thu, 14 Feb 2019 18:02:37 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EI2bBo006984; Thu, 14 Feb 2019 18:02:37 GMT (envelope-from erj@FreeBSD.org) Received: (from erj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EI2bHA006982; Thu, 14 Feb 2019 18:02:37 GMT (envelope-from erj@FreeBSD.org) Message-Id: <201902141802.x1EI2bHA006982@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: erj set sender to erj@FreeBSD.org using -f From: Eric Joyner Date: Thu, 14 Feb 2019 18:02:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344132 - head/sys/dev/ixl X-SVN-Group: head X-SVN-Commit-Author: erj X-SVN-Commit-Paths: head/sys/dev/ixl X-SVN-Commit-Revision: 344132 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C417F84731 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 18:02:38 -0000 Author: erj Date: Thu Feb 14 18:02:37 2019 New Revision: 344132 URL: https://svnweb.freebsd.org/changeset/base/344132 Log: ixl: Fix panic caused by bug exposed by r344062 Don't use a struct if_irq for IFLIB_INTR_IOV type interrupts since that results in get_core_offset() being called on them, and get_core_offset() doesn't handle IFLIB_INTR_IOV type interrupts, which results in an assert() being triggered in iflib_irq_set_affinity(). PR: 235730 Reported by: Jeffrey Pieper MFC after: 1 day Sponsored by: Intel Corporation Modified: head/sys/dev/ixl/if_ixl.c head/sys/dev/ixl/ixl_pf.h Modified: head/sys/dev/ixl/if_ixl.c ============================================================================== --- head/sys/dev/ixl/if_ixl.c Thu Feb 14 18:01:06 2019 (r344131) +++ head/sys/dev/ixl/if_ixl.c Thu Feb 14 18:02:37 2019 (r344132) @@ -932,7 +932,7 @@ ixl_if_msix_intr_assign(if_ctx_t ctx, int msix) return (err); } /* Create soft IRQ for handling VFLRs */ - iflib_softirq_alloc_generic(ctx, &pf->iov_irq, IFLIB_INTR_IOV, pf, 0, "iov"); + iflib_softirq_alloc_generic(ctx, NULL, IFLIB_INTR_IOV, pf, 0, "iov"); /* Now set up the stations */ for (i = 0, vector = 1; i < vsi->shared->isc_nrxqsets; i++, vector++, rx_que++) { Modified: head/sys/dev/ixl/ixl_pf.h ============================================================================== --- head/sys/dev/ixl/ixl_pf.h Thu Feb 14 18:01:06 2019 (r344131) +++ head/sys/dev/ixl/ixl_pf.h Thu Feb 14 18:02:37 2019 (r344132) @@ -138,7 +138,6 @@ struct ixl_pf { struct ixl_vf *vfs; int num_vfs; uint16_t veb_seid; - struct if_irq iov_irq; }; /* From owner-svn-src-all@freebsd.org Thu Feb 14 18:22:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0C83814DCDF7; Thu, 14 Feb 2019 18:22:50 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6150D85520; Thu, 14 Feb 2019 18:22:48 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1EIMjGW087176; Thu, 14 Feb 2019 10:22:45 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1EIMjPk087175; Thu, 14 Feb 2019 10:22:45 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902141822.x1EIMjPk087175@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344132 - head/sys/dev/ixl In-Reply-To: <201902141802.x1EI2bHA006982@repo.freebsd.org> To: Eric Joyner Date: Thu, 14 Feb 2019 10:22:45 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 6150D85520 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 18:22:50 -0000 > Author: erj > Date: Thu Feb 14 18:02:37 2019 > New Revision: 344132 > URL: https://svnweb.freebsd.org/changeset/base/344132 > > Log: > ixl: Fix panic caused by bug exposed by r344062 > > Don't use a struct if_irq for IFLIB_INTR_IOV type interrupts since that results > in get_core_offset() being called on them, and get_core_offset() doesn't > handle IFLIB_INTR_IOV type interrupts, which results in an assert() being triggered > in iflib_irq_set_affinity(). > > PR: 235730 > Reported by: Jeffrey Pieper > MFC after: 1 day Normally you would request an RE@ approval for a fast track to stable, consider this message such an approval. > Sponsored by: Intel Corporation > > Modified: > head/sys/dev/ixl/if_ixl.c > head/sys/dev/ixl/ixl_pf.h > > Modified: head/sys/dev/ixl/if_ixl.c > ============================================================================== > --- head/sys/dev/ixl/if_ixl.c Thu Feb 14 18:01:06 2019 (r344131) > +++ head/sys/dev/ixl/if_ixl.c Thu Feb 14 18:02:37 2019 (r344132) > @@ -932,7 +932,7 @@ ixl_if_msix_intr_assign(if_ctx_t ctx, int msix) > return (err); > } > /* Create soft IRQ for handling VFLRs */ > - iflib_softirq_alloc_generic(ctx, &pf->iov_irq, IFLIB_INTR_IOV, pf, 0, "iov"); > + iflib_softirq_alloc_generic(ctx, NULL, IFLIB_INTR_IOV, pf, 0, "iov"); > > /* Now set up the stations */ > for (i = 0, vector = 1; i < vsi->shared->isc_nrxqsets; i++, vector++, rx_que++) { > > Modified: head/sys/dev/ixl/ixl_pf.h > ============================================================================== > --- head/sys/dev/ixl/ixl_pf.h Thu Feb 14 18:01:06 2019 (r344131) > +++ head/sys/dev/ixl/ixl_pf.h Thu Feb 14 18:02:37 2019 (r344132) > @@ -138,7 +138,6 @@ struct ixl_pf { > struct ixl_vf *vfs; > int num_vfs; > uint16_t veb_seid; > - struct if_irq iov_irq; > }; > > /* -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Thu Feb 14 18:29:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BAF7E14DD1D7; Thu, 14 Feb 2019 18:29:18 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 40FCB85A66; Thu, 14 Feb 2019 18:29:18 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1EIGDPg087145; Thu, 14 Feb 2019 10:16:13 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1EIGDER087144; Thu, 14 Feb 2019 10:16:13 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902141816.x1EIGDER087144@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344129 - head In-Reply-To: <201902141704.x1EH44XG075448@repo.freebsd.org> To: Warner Losh Date: Thu, 14 Feb 2019 10:16:13 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 40FCB85A66 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 18:29:18 -0000 > Author: imp > Date: Thu Feb 14 17:04:04 2019 > New Revision: 344129 > URL: https://svnweb.freebsd.org/changeset/base/344129 > > Log: > Fix small typo. A small request, when we fix a typo could we do: fix typo: frambuffer -> framebuffer Thanks, Rod > > Differential Review: https://reviews.freebsd.org/D19193 You sited a differential, but not give any attribution to the external source :-( > Modified: > head/UPDATING > > Modified: head/UPDATING > ============================================================================== > --- head/UPDATING Thu Feb 14 15:45:53 2019 (r344128) > +++ head/UPDATING Thu Feb 14 17:04:04 2019 (r344129) > @@ -237,7 +237,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: > 20180719: > ARM64 now have efifb support, if you want to have serial console > on your arm64 board when an screen is connected and the bootloader > - setup a frambuffer for us to use, just add : > + setup a framebuffer for us to use, just add : > boot_serial=YES > boot_multicons=YES > in /boot/loader.conf -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Thu Feb 14 19:00:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C844614DDDB2 for ; Thu, 14 Feb 2019 19:00:33 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x830.google.com (mail-qt1-x830.google.com [IPv6:2607:f8b0:4864:20::830]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5996086ADE for ; Thu, 14 Feb 2019 19:00:33 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x830.google.com with SMTP id p25so7832150qtb.3 for ; Thu, 14 Feb 2019 11:00:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=vIaYiLgxTglJwyWo9mnSkYqTgPr0UpfMGCEdOT+65is=; b=EoEMXjH9312bBHLrIGLYrVXHaTxZPIG0EVr2FuWZMrAcT+y0bdHWi0T8v+atTtBSmS dGr47vxWkbkr/HIxKNy82EijHImx+RA4p25XCLckpOWd+JpfXIh4zh7KMuhg25BXa4F5 /HZnx1PX1S64LeSHtmGpYLuTUhBBQ+dbJn/V8CHOfTmAKqJ/mI83bL7AzpiUtoQ5qn9e 18VVwneZaR9CPAZEWJVDM9VNITbHXwaN2rg75e7VhozcmeQRnudKrppqyL/zld1pLmVD 07aRL4dJNr+s8kQAHYWx9/JnCrddI0mM368LwTkDQxriXpRAbJNjIWpR+NtLnuetMlCk uAmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=vIaYiLgxTglJwyWo9mnSkYqTgPr0UpfMGCEdOT+65is=; b=rbCIk4fY9KiqNgaTM74ITEKSS0kG3BT4otd23GcQpSP8zJRvHGPupMISXVFe3wNiFJ yJxwVxntIuys9jqVUXl4rJ5eAppJW/nCapfJI1VbbwW05fLUVntcJrVclxC8YDYkuNvN dfG9bZcvsKRJqwICYa8yKY1gBt92iWNuicnVqW1Gi/j+W61ZUJo27xMV9fBkGAxhtZHT nw3fsdZAI503ofv+gLNYxe1nhKtSIpwt5Bo2Ds6WPA5C3r1WnGmK8zkeb+34PJ1FZa65 GmIJX1qAYTH8Sy9loCuRA8Zrb/4I9ii2ZmxhaOATJQ0yNC/sMpPDZBOSLT7/006snDQy YPNg== X-Gm-Message-State: AHQUAua+g2F6vaJ9n0Mj6xgB3klnoXfmTdYhV8wrJGECOKCcMQm0rLaG UkQk5OiItah+S4FSO5hrbdm1BVAubFTcRDm84EJu2sp0 X-Google-Smtp-Source: AHgI3Ibc8YrF0pLCJ04a10IsuPT8x1+/HuC05K4CyueurJtvtz9ipcMStpcyOQ1K15zCPVCrj8LL9w6NZJn0fIM9iBk= X-Received: by 2002:ac8:16d0:: with SMTP id y16mr4241943qtk.345.1550170832845; Thu, 14 Feb 2019 11:00:32 -0800 (PST) MIME-Version: 1.0 References: <201902141704.x1EH44XG075448@repo.freebsd.org> <201902141816.x1EIGDER087144@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201902141816.x1EIGDER087144@pdx.rh.CN85.dnsmgr.net> From: Warner Losh Date: Thu, 14 Feb 2019 12:00:22 -0700 Message-ID: Subject: Re: svn commit: r344129 - head To: "Rodney W. Grimes" Cc: Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 5996086ADE X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 19:00:34 -0000 On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > Author: imp > > Date: Thu Feb 14 17:04:04 2019 > > New Revision: 344129 > > URL: https://svnweb.freebsd.org/changeset/base/344129 > > > > Log: > > Fix small typo. > > A small request, when we fix a typo could we > do: > fix typo: frambuffer -> framebuffer > No. Diff tells you that. > Thanks, > Rod > > > > Differential Review: https://reviews.freebsd.org/D19193 > > You sited a differential, but not give any attribution > to the external source :-( > The differential review has that information. Warner > > Modified: > > head/UPDATING > > > > Modified: head/UPDATING > > > ============================================================================== > > --- head/UPDATING Thu Feb 14 15:45:53 2019 (r344128) > > +++ head/UPDATING Thu Feb 14 17:04:04 2019 (r344129) > > @@ -237,7 +237,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: > > 20180719: > > ARM64 now have efifb support, if you want to have serial console > > on your arm64 board when an screen is connected and the bootloader > > - setup a frambuffer for us to use, just add : > > + setup a framebuffer for us to use, just add : > > boot_serial=YES > > boot_multicons=YES > > in /boot/loader.conf > > -- > Rod Grimes > rgrimes@freebsd.org > From owner-svn-src-all@freebsd.org Thu Feb 14 19:07:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A2B414DE1C8; Thu, 14 Feb 2019 19:07:09 +0000 (UTC) (envelope-from bde@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2E292871F5; Thu, 14 Feb 2019 19:07:09 +0000 (UTC) (envelope-from bde@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 16073B3CA; Thu, 14 Feb 2019 19:07:09 +0000 (UTC) (envelope-from bde@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EJ78me038728; Thu, 14 Feb 2019 19:07:08 GMT (envelope-from bde@FreeBSD.org) Received: (from bde@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EJ78m2038727; Thu, 14 Feb 2019 19:07:08 GMT (envelope-from bde@FreeBSD.org) Message-Id: <201902141907.x1EJ78m2038727@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bde set sender to bde@FreeBSD.org using -f From: Bruce Evans Date: Thu, 14 Feb 2019 19:07:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344133 - head/sys/kern X-SVN-Group: head X-SVN-Commit-Author: bde X-SVN-Commit-Paths: head/sys/kern X-SVN-Commit-Revision: 344133 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2E292871F5 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 19:07:09 -0000 Author: bde Date: Thu Feb 14 19:07:08 2019 New Revision: 344133 URL: https://svnweb.freebsd.org/changeset/base/344133 Log: Finish the fix for overflow in calcru1(). The previous fix was unnecessarily very slow up to 105 hours where the simple formula used previously worked, and unnecessarily slow by a factor of about 5/3 up to 388 days, and didn't work above 388 days. 388 days is not a long time, since it is a reasonable uptime, and for processes the times being calculated are aggregated over all threads, so with N CPUs running the same thread a runtime of 388 days is reachable after only 388 / N physical days. The PRs document overflow at 388 days, but don't try to fix it. Use the simple formula up to 76 hours. Then use a complicated general method that reduces to the simple formula up to a bit less than 105 hours, then reduces to the previous method without its extra work up to almost 388 days, then does more complicated reductions, usually many bits at a time so that this is not slow. This works up to half of maximum representable time (292271 years), with accumulated rounding errors of at most 32 usec. amd64 can do all this with no avoidable rounding errors in an inline asm with 2 instructions, but this is too special to use. __uint128_t can do the same with 100's of instructions on 64-bit arches. Long doubles with at least 64 bits of precision are the easiest method to use on i386 userland, but are hard to use in the kernel. PR: 76972 and duplicates Reviewed by: kib Modified: head/sys/kern/kern_resource.c Modified: head/sys/kern/kern_resource.c ============================================================================== --- head/sys/kern/kern_resource.c Thu Feb 14 18:02:37 2019 (r344132) +++ head/sys/kern/kern_resource.c Thu Feb 14 19:07:08 2019 (r344133) @@ -863,13 +863,88 @@ rufetchtd(struct thread *td, struct rusage *ru) calcru1(p, &td->td_rux, &ru->ru_utime, &ru->ru_stime); } +/* XXX: the MI version is too slow to use: */ +#ifndef __HAVE_INLINE_FLSLL +#define flsll(x) (fls((x) >> 32) != 0 ? fls((x) >> 32) + 32 : fls(x)) +#endif + static uint64_t mul64_by_fraction(uint64_t a, uint64_t b, uint64_t c) { + uint64_t acc, bh, bl; + int i, s, sa, sb; + /* - * Compute floor(a * (b / c)) without overflowing, (b / c) <= 1.0. + * Calculate (a * b) / c accurately enough without overflowing. c + * must be nonzero, and its top bit must be 0. a or b must be + * <= c, and the implementation is tuned for b <= c. + * + * The comments about times are for use in calcru1() with units of + * microseconds for 'a' and stathz ticks at 128 Hz for b and c. + * + * Let n be the number of top zero bits in c. Each iteration + * either returns, or reduces b by right shifting it by at least n. + * The number of iterations is at most 1 + 64 / n, and the error is + * at most the number of iterations. + * + * It is very unusual to need even 2 iterations. Previous + * implementations overflowed essentially by returning early in the + * first iteration, with n = 38 giving overflow at 105+ hours and + * n = 32 giving overlow at at 388+ days despite a more careful + * calculation. 388 days is a reasonable uptime, and the calculation + * needs to work for the uptime times the number of CPUs since 'a' + * is per-process. */ - return ((a / c) * b + (a % c) * (b / c) + (a % c) * (b % c) / c); + if (a >= (uint64_t)1 << 63) + return (0); /* Unsupported arg -- can't happen. */ + acc = 0; + for (i = 0; i < 128; i++) { + sa = flsll(a); + sb = flsll(b); + if (sa + sb <= 64) + /* Up to 105 hours on first iteration. */ + return (acc + (a * b) / c); + if (a >= c) { + /* + * This reduction is based on a = q * c + r, with the + * remainder r < c. 'a' may be large to start, and + * moving bits from b into 'a' at the end of the loop + * sets the top bit of 'a', so the reduction makes + * significant progress. + */ + acc += (a / c) * b; + a %= c; + sa = flsll(a); + if (sa + sb <= 64) + /* Up to 388 days on first iteration. */ + return (acc + (a * b) / c); + } + + /* + * This step writes a * b as a * ((bh << s) + bl) = + * a * (bh << s) + a * bl = (a << s) * bh + a * bl. The 2 + * additive terms are handled separately. Splitting in + * this way is linear except for rounding errors. + * + * s = 64 - sa is the maximum such that a << s fits in 64 + * bits. Since a < c and c has at least 1 zero top bit, + * sa < 64 and s > 0. Thus this step makes progress by + * reducing b (it increases 'a', but taking remainders on + * the next iteration completes the reduction). + * + * Finally, the choice for s is just what is needed to keep + * a * bl from overflowing, so we don't need complications + * like a recursive call mul64_by_fraction(a, bl, c) to + * handle the second additive term. + */ + s = 64 - sa; + bh = b >> s; + bl = b - (bh << s); + acc += (a * bl) / c; + a <<= s; + b = bh; + } + return (0); /* Algorithm failure -- can't happen. */ } static void @@ -896,15 +971,23 @@ calcru1(struct proc *p, struct rusage_ext *ruxp, struc tu = ruxp->rux_tu; } + /* Subdivide tu. Avoid overflow in the multiplications. */ + if (__predict_true(tu <= ((uint64_t)1 << 38) && tt <= (1 << 26))) { + /* Up to 76 hours when stathz is 128. */ + uu = (tu * ut) / tt; + su = (tu * st) / tt; + } else { + uu = mul64_by_fraction(tu, ut, tt); + su = mul64_by_fraction(tu, ut, st); + } + if (tu >= ruxp->rux_tu) { /* * The normal case, time increased. * Enforce monotonicity of bucketed numbers. */ - uu = mul64_by_fraction(tu, ut, tt); if (uu < ruxp->rux_uu) uu = ruxp->rux_uu; - su = mul64_by_fraction(tu, st, tt); if (su < ruxp->rux_su) su = ruxp->rux_su; } else if (tu + 3 > ruxp->rux_tu || 101 * tu > 100 * ruxp->rux_tu) { @@ -933,8 +1016,6 @@ calcru1(struct proc *p, struct rusage_ext *ruxp, struc "to %ju usec for pid %d (%s)\n", (uintmax_t)ruxp->rux_tu, (uintmax_t)tu, p->p_pid, p->p_comm); - uu = mul64_by_fraction(tu, ut, tt); - su = mul64_by_fraction(tu, st, tt); } ruxp->rux_uu = uu; From owner-svn-src-all@freebsd.org Thu Feb 14 19:13:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D2E8E14DE443; Thu, 14 Feb 2019 19:13:34 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-it1-x132.google.com (mail-it1-x132.google.com [IPv6:2607:f8b0:4864:20::132]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 414508769A; Thu, 14 Feb 2019 19:13:34 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: by mail-it1-x132.google.com with SMTP id g137so5598356ita.0; Thu, 14 Feb 2019 11:13:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=annRzXGp5gMCoxAP83Mzi/8U/s4hM3GBxjvkbuHBl20=; b=POkHDuYJ9ffONpbjW6jfbUtzyP92wF3DHtWLoeDfCeTRV1bJ6mFpn83qXVRJhsPqAe j6ukixtXGL+ohOIGOtSrf1U/1EHpPT8glqeW74YvbM+GHEqNgscKs2g1nYoTjscwSA86 krrPMiKWbZpOxyD44ivWCqRJhELn8lPmuLZzsdDrERaXxADjMtLlFOM00F08zF4N44em ILn+0lyi74FA9nbB6HvKLef5v5KXFomqgpG4mlFCkPWFEekIhyDzS9kz34voyw1i1vvq P6tt4qSHEOxsFs1Aazd8cDjQpvDSUshwUn78s55S9TXnk6E4lrbpFD+9yESDjEK64pdg jG3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=annRzXGp5gMCoxAP83Mzi/8U/s4hM3GBxjvkbuHBl20=; b=Dbv10xawtQpFxhsw75Vta913iMpXj/QmNnQrA3mXbSJp/fLj483q/1HZJsrNDId88B lCkmXaa9eDYcGh3iT1Vzk36DmqxX31vw7n2cdK6Ut/5HJygD8T4fs1I2L5QcysrhoHdr eVOLxMxTSvp7yZu6jQydyCW0onznMoXgFx1u6o2+jLkiEziwqchYWlndgt3ZIjoPFkJp fthYnbDXX+y65GIncLiPKMSdsZvGmr+eMKXS9HyKisvjKy3b7YmtKqdgNDQWHzDaFEd9 PbAMadQ+x7nqboERhVu+O+9WMQDv3SCRssv5MiJ+iVvaNSLTXKOEMTZMNjGP+Fgg5XiS dA2w== X-Gm-Message-State: AHQUAuY621NIyxmDuqHPQ3ip+fGJjpEPVhRTrSo7ObDx2B+qQRK7UM1i x/v164VZ1c1mv/t9nAmVypQBWf3j X-Google-Smtp-Source: AHgI3Ib5I0TeQgJZWykXrsFRfYkh12pqSwfeE4qyTmJWEY73lzwzeE+qyr3rhC5LkMXrVTvAC5ROgQ== X-Received: by 2002:a5d:96cc:: with SMTP id r12mr3529050iol.80.1550171612897; Thu, 14 Feb 2019 11:13:32 -0800 (PST) Received: from raichu (toroon0560w-lp140-01-69-159-36-102.dsl.bell.ca. [69.159.36.102]) by smtp.gmail.com with ESMTPSA id f26sm1229633ioh.1.2019.02.14.11.13.31 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 14 Feb 2019 11:13:32 -0800 (PST) Sender: Mark Johnston Date: Thu, 14 Feb 2019 14:13:29 -0500 From: Mark Johnston To: Warner Losh Cc: "Rodney W. Grimes" , Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344129 - head Message-ID: <20190214191329.GB50900@raichu> References: <201902141704.x1EH44XG075448@repo.freebsd.org> <201902141816.x1EIGDER087144@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.11.2 (2019-01-07) X-Rspamd-Queue-Id: 414508769A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.981,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 19:13:35 -0000 On Thu, Feb 14, 2019 at 12:00:22PM -0700, Warner Losh wrote: > On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < > > > Differential Review: https://reviews.freebsd.org/D19193 > > > > You sited a differential, but not give any attribution > > to the external source :-( > > > > The differential review has that information. External contributors should be recognized by having their names appear in the commit logs. From owner-svn-src-all@freebsd.org Thu Feb 14 19:28:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D30AB14DECEB; Thu, 14 Feb 2019 19:28:48 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7612788137; Thu, 14 Feb 2019 19:28:48 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx [66.234.199.215]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id A02BD7EEB; Thu, 14 Feb 2019 19:28:47 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Subject: Re: svn commit: r344132 - head/sys/dev/ixl To: rgrimes@freebsd.org, Eric Joyner Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201902141822.x1EIMjPk087175@pdx.rh.CN85.dnsmgr.net> From: John Baldwin Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <9b32ae9a-3cca-3529-fb65-96026a14dbbd@FreeBSD.org> Date: Thu, 14 Feb 2019 11:28:44 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: <201902141822.x1EIMjPk087175@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7612788137 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 19:28:49 -0000 On 2/14/19 10:22 AM, Rodney W. Grimes wrote: >> Author: erj >> Date: Thu Feb 14 18:02:37 2019 >> New Revision: 344132 >> URL: https://svnweb.freebsd.org/changeset/base/344132 >> >> Log: >> ixl: Fix panic caused by bug exposed by r344062 >> >> Don't use a struct if_irq for IFLIB_INTR_IOV type interrupts since that results >> in get_core_offset() being called on them, and get_core_offset() doesn't >> handle IFLIB_INTR_IOV type interrupts, which results in an assert() being triggered >> in iflib_irq_set_affinity(). >> >> PR: 235730 >> Reported by: Jeffrey Pieper >> MFC after: 1 day > > Normally you would request an RE@ approval for a fast track to stable, > consider this message such an approval. That does not match our historical practice over the past 20 years. If we want to change that practice, that's a topic we can debate, but re@ has only required oversight on MFC's during slushes/freezes with the additional caveat of perhaps watching out for ABI breakage at any time (and requiring approvals for a known ABI breakage on a branch). -- John Baldwin                                                                              From owner-svn-src-all@freebsd.org Thu Feb 14 20:24:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1342614E02CD; Thu, 14 Feb 2019 20:24:34 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ABBCD89E84; Thu, 14 Feb 2019 20:24:33 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A0CB7C3B0; Thu, 14 Feb 2019 20:24:33 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EKOXwK080080; Thu, 14 Feb 2019 20:24:33 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EKOXaJ080079; Thu, 14 Feb 2019 20:24:33 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902142024.x1EKOXaJ080079@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 20:24:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344134 - stable/12/lib/libc/sys X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: stable/12/lib/libc/sys X-SVN-Commit-Revision: 344134 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: ABBCD89E84 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:24:34 -0000 Author: asomers Date: Thu Feb 14 20:24:33 2019 New Revision: 344134 URL: https://svnweb.freebsd.org/changeset/base/344134 Log: MFC r341598: stat(2): clarify which syscalls modify file timestamps The list of syscalls that modify st_atim, st_mtim, and st_ctim was quite out of date and probably not accurate to begin with. Update it, and make it clear that the list is open-ended. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D18410 Modified: stable/12/lib/libc/sys/stat.2 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/sys/stat.2 ============================================================================== --- stable/12/lib/libc/sys/stat.2 Thu Feb 14 19:07:08 2019 (r344133) +++ stable/12/lib/libc/sys/stat.2 Thu Feb 14 20:24:33 2019 (r344134) @@ -28,7 +28,7 @@ .\" @(#)stat.2 8.4 (Berkeley) 5/1/95 .\" $FreeBSD$ .\" -.Dd December 1, 2017 +.Dd December 5, 2018 .Dt STAT 2 .Os .Sh NAME @@ -156,45 +156,53 @@ are: .Bl -tag -width ".Va st_birthtim" .It Va st_atim Time when file data was last accessed. -Changed by the -.Xr mknod 2 , -.Xr utimes 2 , +Changed implicitly by syscalls such as .Xr read 2 and -.Xr readv 2 -system calls. +.Xr readv 2 , +and explicitly by +.Xr utimes 2 . .It Va st_mtim Time when file data was last modified. -Changed by the +Changed implicitly by syscalls such as +.Xr truncate 2 , +.Xr write 2 , +and +.Xr writev 2 , +and explicitly by +.Xr utimes 2 . +Also, any syscall which modifies directory content changes the +.Va st_mtim +for the affected directory. +For instance, +.Xr creat 2 , .Xr mkdir 2 , -.Xr mkfifo 2 , -.Xr mknod 2 , -.Xr utimes 2 , -.Xr write 2 +.Xr rename 2 , +.Xr link 2 , and -.Xr writev 2 -system calls. +.Xr unlink 2 . .It Va st_ctim Time when file status was last changed (inode data modification). -Changed by the +Changed implicitly by any syscall that affects file metadata, including +.Va st_mtim , +such as .Xr chflags 2 , .Xr chmod 2 , .Xr chown 2 , +.Xr truncate 2 , +.Xr utimes 2 , +and +.Xr write 2 . +Also, any syscall which modifies directory content changes the +.Va st_ctim +for the affected directory. +For instance, .Xr creat 2 , -.Xr link 2 , .Xr mkdir 2 , -.Xr mkfifo 2 , -.Xr mknod 2 , .Xr rename 2 , -.Xr rmdir 2 , -.Xr symlink 2 , -.Xr truncate 2 , -.Xr unlink 2 , -.Xr utimes 2 , -.Xr write 2 +.Xr link 2 , and -.Xr writev 2 -system calls. +.Xr unlink 2 . .It Va st_birthtim Time when the inode was created. .El From owner-svn-src-all@freebsd.org Thu Feb 14 20:27:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0D50814E03CD; Thu, 14 Feb 2019 20:27:03 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B50188A0B8; Thu, 14 Feb 2019 20:27:02 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AAD45C3B4; Thu, 14 Feb 2019 20:27:02 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EKR2O7080253; Thu, 14 Feb 2019 20:27:02 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EKQxXj080233; Thu, 14 Feb 2019 20:26:59 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902142026.x1EKQxXj080233@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 20:26:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344135 - in stable/12/tests/sys/geom/class: . eli mirror X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: in stable/12/tests/sys/geom/class: . eli mirror X-SVN-Commit-Revision: 344135 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B50188A0B8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:27:03 -0000 Author: asomers Date: Thu Feb 14 20:26:59 2019 New Revision: 344135 URL: https://svnweb.freebsd.org/changeset/base/344135 Log: MFC r341390, r341392, r341667 r341390: Remove some dead code from the geli tests This is detritus in the Makefile, leftover from 327662. r341392: Unbreak geli/gmirror testcases if their geom classes cannot be loaded The problem with the logic prior to this commit was twofold: 1. The wrong set of idioms (TAP-compatible) were being applied to the ATF testcases when run, resulting in confusing ATF failure results on setup. 2. The cleanup subroutines were broken when the geom classes could not be loaded as they exited with 0 unexpectedly. This commit changes the test code to source the class-specific configuration (conf.sh) once globally, instead of sourcing it per testcase and per cleanup subroutine, and to call the ATF-specific setup subroutine(s) inline in the testcases. The refactoring done is effectively a no-op for the TAP testcases, modulo any refactoring done to create common code between the ATF and TAP testcases. This unbreaks the geli testcases converted to ATF in r327662 and r327683, and the gmirror testcases added in r327780, respectively, when the geom class could not be loaded. tests/sys/geom/class/mirror/... While here, ignore errors when turning debug failpoint sysctl off, which could occur if the gmirror class was not loaded. Submitted by: ngie Pull Request: https://github.com/freebsd/freebsd/pull/241 r341667: geom tests: Fix cleanup of ATF tests since r341392 r341392 changed common test cleanup routines in a way that allowed them to be used by TAP tests as well as ATF tests. However, a late change made during code review resulted in cleanup being broken for ATF tests, which source geom_subr.sh separately during the body and cleanup phases of the test. The result was that md(4) devices wouldn't get cleaned up. X-MFC-With: 341392 Modified: stable/12/tests/sys/geom/class/eli/Makefile stable/12/tests/sys/geom/class/eli/attach_test.sh stable/12/tests/sys/geom/class/eli/conf.sh stable/12/tests/sys/geom/class/eli/configure_test.sh stable/12/tests/sys/geom/class/eli/delkey_test.sh stable/12/tests/sys/geom/class/eli/detach_test.sh stable/12/tests/sys/geom/class/eli/init_test.sh stable/12/tests/sys/geom/class/eli/integrity_test.sh stable/12/tests/sys/geom/class/eli/kill_test.sh stable/12/tests/sys/geom/class/eli/misc_test.sh stable/12/tests/sys/geom/class/eli/onetime_test.sh stable/12/tests/sys/geom/class/eli/resize_test.sh stable/12/tests/sys/geom/class/eli/setkey_test.sh stable/12/tests/sys/geom/class/geom_subr.sh stable/12/tests/sys/geom/class/mirror/sync_error.sh Directory Properties: stable/12/ (props changed) Modified: stable/12/tests/sys/geom/class/eli/Makefile ============================================================================== --- stable/12/tests/sys/geom/class/eli/Makefile Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/Makefile Thu Feb 14 20:26:59 2019 (r344135) @@ -21,10 +21,6 @@ ATF_TESTS_SH+= setkey_test ${PACKAGE}FILES+= conf.sh -.for t in ${TAP_TESTS_SH} -TEST_METADATA.$t+= required_user="root" -.endfor - CFLAGS.pbkdf2_test= -I${SRCTOP}/sys SRCS.pbkdf2_test= \ Modified: stable/12/tests/sys/geom/class/eli/attach_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/attach_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/attach_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,7 @@ # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case attach_d cleanup attach_d_head() { @@ -8,7 +10,7 @@ attach_d_head() } attach_d_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -35,7 +37,6 @@ attach_d_body() } attach_d_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -47,7 +48,7 @@ attach_r_head() } attach_r_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -64,7 +65,6 @@ attach_r_body() } attach_r_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -76,7 +76,7 @@ nokey_head() } nokey_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -88,7 +88,6 @@ nokey_body() } nokey_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/conf.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/conf.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/conf.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -4,7 +4,6 @@ class="eli" base=$(atf_get ident) MAX_SECSIZE=8192 -TEST_MDS_FILE=md.devs attach_md() { @@ -82,7 +81,6 @@ for_each_geli_config_nointegrity() { done } - geli_test_cleanup() { if [ -f "$TEST_MDS_FILE" ]; then @@ -95,4 +93,10 @@ geli_test_cleanup() true } +geli_test_setup() +{ + geom_atf_test_setup +} + +ATF_TEST=true . `dirname $0`/../geom_subr.sh Modified: stable/12/tests/sys/geom/class/eli/configure_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/configure_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/configure_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,7 @@ # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case configure_b_B cleanup configure_b_B_head() { @@ -8,7 +10,7 @@ configure_b_B_head() } configure_b_B_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -49,7 +51,6 @@ configure_b_B_body() } configure_b_B_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/delkey_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/delkey_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/delkey_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,6 +1,8 @@ #!/bin/sh # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case delkey cleanup delkey_head() { @@ -9,7 +11,7 @@ delkey_head() } delkey_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -76,7 +78,6 @@ delkey_body() } delkey_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -88,7 +89,7 @@ delkey_readonly_head() } delkey_readonly_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -103,7 +104,6 @@ delkey_readonly_body() } delkey_readonly_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/detach_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/detach_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/detach_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,7 @@ # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case detach_l cleanup detach_l_head() { @@ -8,7 +10,7 @@ detach_l_head() } detach_l_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -36,7 +38,6 @@ detach_l_body() } detach_l_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/init_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/init_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/init_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,6 +1,8 @@ #!/bin/sh # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + init_test() { cipher=$1 @@ -39,7 +41,7 @@ init_head() } init_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=32 @@ -50,7 +52,6 @@ init_body() } init_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -62,7 +63,7 @@ init_B_head() } init_B_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 @@ -104,7 +105,6 @@ init_B_body() } init_B_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -116,7 +116,7 @@ init_J_head() } init_J_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -223,7 +223,6 @@ init_J_body() } init_J_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -260,7 +259,7 @@ init_a_head() } init_a_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 @@ -272,7 +271,6 @@ init_a_body() } init_a_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -304,7 +302,7 @@ init_alias_head() } init_alias_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup md=$(attach_md -t malloc -s 1024k) atf_check dd if=/dev/random of=keyfile bs=512 count=16 status=none @@ -330,7 +328,6 @@ init_alias_body() } init_alias_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -342,7 +339,7 @@ init_i_P_head() } init_i_P_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -354,7 +351,6 @@ init_i_P_body() } init_i_P_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -366,7 +362,7 @@ nokey_head() } nokey_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -376,7 +372,6 @@ nokey_body() } nokey_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/integrity_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/integrity_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/integrity_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,7 @@ # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + copy_test() { cipher=$1 aalgo=$2 @@ -51,18 +53,17 @@ copy_head() } copy_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=2 atf_check dd if=/dev/random of=keyfile bs=512 count=16 status=none dd if=/dev/random of=rnd bs=${MAX_SECSIZE} count=${sectors} status=none - + for_each_geli_config copy_test backing_file } copy_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -98,7 +99,7 @@ data_head() } data_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=2 @@ -108,7 +109,6 @@ data_body() } data_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -143,7 +143,7 @@ hmac_head() } hmac_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=2 @@ -153,7 +153,6 @@ hmac_body() } hmac_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/kill_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/kill_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/kill_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,7 @@ # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case kill cleanup kill_head() { @@ -8,7 +10,7 @@ kill_head() } kill_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -61,7 +63,6 @@ kill_body() } kill_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -73,7 +74,7 @@ kill_readonly_head() } kill_readonly_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -91,7 +92,6 @@ kill_readonly_body() } kill_readonly_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/misc_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/misc_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/misc_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -24,6 +24,8 @@ # # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case preserve_props cleanup preserve_props_head() { @@ -33,7 +35,8 @@ preserve_props_head() } preserve_props_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup + md=$(attach_md -s1m) atf_check geli onetime /dev/${md} md_secsize=$(diskinfo ${md} | cut -wf 2) @@ -45,7 +48,6 @@ preserve_props_body() } preserve_props_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -59,7 +61,8 @@ preserve_disk_props_head() } preserve_disk_props_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup + disks=`atf_config_get disks` disk=${disks%% *} if [ -z "$disk" ]; then @@ -82,7 +85,6 @@ preserve_disk_props_body() } preserve_disk_props_cleanup() { - . $(atf_get_srcdir)/conf.sh disk_cleanup geli_test_cleanup } @@ -96,8 +98,10 @@ physpath_head() } physpath_body() { - . $(atf_get_srcdir)/conf.sh - load_gnop + geli_test_setup + if ! error_message=$(geom_load_class_if_needed nop); then + atf_skip "$error_message" + fi md=$(attach_md -s1m) # If the underlying device has no physical path, then geli should not @@ -116,8 +120,6 @@ physpath_body() } physpath_cleanup() { - . $(atf_get_srcdir)/conf.sh - if [ -f "$TEST_MDS_FILE" ]; then while read md; do [ -c /dev/${md}.nop.eli ] && \ @@ -166,12 +168,5 @@ disk_cleanup() disk=${disks%% *} if [ -n "$disk" ]; then geli kill ${disk} 2>/dev/null - fi -} - -load_gnop() -{ - if ! kldstat -q -m g_nop; then - geom nop load || atf_skip "could not load module for geom nop" fi } Modified: stable/12/tests/sys/geom/class/eli/onetime_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/onetime_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/onetime_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,7 @@ # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + onetime_test() { cipher=$1 @@ -35,7 +37,8 @@ onetime_head() } onetime_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup + sectors=100 dd if=/dev/random of=rnd bs=${MAX_SECSIZE} count=${sectors} status=none @@ -43,7 +46,6 @@ onetime_body() } onetime_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -78,7 +80,8 @@ onetime_a_head() } onetime_a_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup + sectors=8 atf_check dd if=/dev/random of=rnd bs=$MAX_SECSIZE count=$sectors \ @@ -87,7 +90,6 @@ onetime_a_body() } onetime_a_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -99,7 +101,7 @@ onetime_d_head() } onetime_d_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s $sectors) @@ -125,7 +127,6 @@ onetime_d_body() } onetime_d_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/eli/resize_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/resize_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/resize_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,6 +1,8 @@ #!/bin/sh # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case resize cleanup resize_head() { @@ -9,7 +11,8 @@ resize_head() } resize_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup + BLK=512 BLKS_PER_MB=2048 @@ -67,8 +70,6 @@ resize_body() } resize_cleanup() { - . $(atf_get_srcdir)/conf.sh - if [ -f "$TEST_MDS_FILE" ]; then while read md; do [ -c /dev/${md}a.eli ] && \ Modified: stable/12/tests/sys/geom/class/eli/setkey_test.sh ============================================================================== --- stable/12/tests/sys/geom/class/eli/setkey_test.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/eli/setkey_test.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,6 +1,8 @@ #!/bin/sh # $FreeBSD$ +. $(atf_get_srcdir)/conf.sh + atf_test_case setkey cleanup setkey_head() { @@ -9,7 +11,7 @@ setkey_head() } setkey_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -88,7 +90,6 @@ setkey_body() } setkey_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -100,7 +101,7 @@ setkey_readonly_head() } setkey_readonly_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -114,7 +115,6 @@ setkey_readonly_body() } setkey_readonly_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } @@ -126,7 +126,7 @@ nokey_head() } nokey_body() { - . $(atf_get_srcdir)/conf.sh + geli_test_setup sectors=100 md=$(attach_md -t malloc -s `expr $sectors + 1`) @@ -152,7 +152,6 @@ nokey_body() } nokey_cleanup() { - . $(atf_get_srcdir)/conf.sh geli_test_cleanup } Modified: stable/12/tests/sys/geom/class/geom_subr.sh ============================================================================== --- stable/12/tests/sys/geom/class/geom_subr.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/geom_subr.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,6 +1,8 @@ #!/bin/sh # $FreeBSD$ +TEST_MDS_FILE="${TMPDIR}/test_mds.$(basename $0)" + devwait() { while :; do @@ -40,30 +42,40 @@ geom_test_cleanup() echo "# Removing test memory disk: $test_md" mdconfig -d -u $test_md done < $TEST_MDS_FILE + rm -f "$TEST_MDS_FILE" fi - rm -f "$TEST_MDS_FILE" } -if [ $(id -u) -ne 0 ]; then - echo '1..0 # SKIP tests must be run as root' - exit 0 -fi +geom_load_class_if_needed() +{ + local class=$1 -# If the geom class isn't already loaded, try loading it. -if ! kldstat -q -m g_${class}; then - if ! geom ${class} load; then - echo "1..0 # SKIP could not load module for geom class=${class}" + # If the geom class isn't already loaded, try loading it. + if ! kldstat -q -m g_${class}; then + if ! geom ${class} load; then + echo "could not load module for geom class=${class}" + return 1 + fi + fi + return 0 +} + +geom_atf_test_setup() +{ + if ! error_message=$(geom_load_class_if_needed $class); then + atf_skip "$error_message" + fi +} + +geom_tap_test_setup() +{ + if ! error_message=$(geom_load_class_if_needed $class); then + echo "1..0 # SKIP $error_message" exit 0 fi -fi +} -# Need to keep track of the test md devices to avoid the scenario where a test -# failing will cause the other tests to bomb out, or a test failing will leave -# a large number of md(4) devices lingering around -: ${TMPDIR=/tmp} -export TMPDIR -if ! TEST_MDS_FILE=$(mktemp ${TMPDIR}/test_mds.XXXXXX); then - echo 'Failed to create temporary file for tracking the test md(4) devices' - echo 'Bail out!' - exit 1 +: ${ATF_TEST=false} +if ! $ATF_TEST; then + geom_tap_test_setup fi Modified: stable/12/tests/sys/geom/class/mirror/sync_error.sh ============================================================================== --- stable/12/tests/sys/geom/class/mirror/sync_error.sh Thu Feb 14 20:24:33 2019 (r344134) +++ stable/12/tests/sys/geom/class/mirror/sync_error.sh Thu Feb 14 20:26:59 2019 (r344135) @@ -1,5 +1,8 @@ # $FreeBSD$ +ATF_TEST=true +. $(atf_get_srcdir)/conf.sh + REG_READ_FP=debug.fail_point.g_mirror_regular_request_read atf_test_case sync_read_error_2_disks cleanup @@ -11,7 +14,7 @@ sync_read_error_2_disks_head() } sync_read_error_2_disks_body() { - . $(atf_get_srcdir)/conf.sh + geom_atf_test_setup f1=$(mktemp ${base}.XXXXXX) f2=$(mktemp ${base}.XXXXXX) @@ -25,7 +28,7 @@ sync_read_error_2_disks_body() atf_check gmirror label $name $md1 devwait - atf_check -s exit:0 -e empty -o not-empty sysctl ${REG_READ_FP}='1*return(5)' + atf_check -s ignore -e empty -o not-empty sysctl ${REG_READ_FP}='1*return(5)' # If a read error occurs while synchronizing and the mirror contains # a single active disk, gmirror has no choice but to fail the @@ -39,9 +42,7 @@ sync_read_error_2_disks_body() } sync_read_error_2_disks_cleanup() { - . $(atf_get_srcdir)/conf.sh - - atf_check -s exit:0 -e empty -o not-empty sysctl ${REG_READ_FP}='off' + atf_check -s ignore -e ignore -o ignore sysctl ${REG_READ_FP}='off' gmirror_test_cleanup } @@ -54,7 +55,7 @@ sync_read_error_3_disks_head() } sync_read_error_3_disks_body() { - . $(atf_get_srcdir)/conf.sh + geom_atf_test_setup f1=$(mktemp ${base}.XXXXXX) f2=$(mktemp ${base}.XXXXXX) @@ -97,9 +98,7 @@ sync_read_error_3_disks_body() } sync_read_error_3_disks_cleanup() { - . $(atf_get_srcdir)/conf.sh - - atf_check -s exit:0 -e empty -o not-empty sysctl ${REG_READ_FP}='off' + atf_check -s ignore -e ignore -o ignore sysctl ${REG_READ_FP}='off' gmirror_test_cleanup } From owner-svn-src-all@freebsd.org Thu Feb 14 20:29:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CAE4C14E0541; Thu, 14 Feb 2019 20:29:34 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BBCE8A2C1; Thu, 14 Feb 2019 20:29:34 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 41E86C3B7; Thu, 14 Feb 2019 20:29:34 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EKTYr0080424; Thu, 14 Feb 2019 20:29:34 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EKTX1U080420; Thu, 14 Feb 2019 20:29:33 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902142029.x1EKTX1U080420@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 20:29:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344136 - in stable/12: libexec/rc/rc.d tests/sys tests/sys/audit tools/build/mk X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: in stable/12: libexec/rc/rc.d tests/sys tests/sys/audit tools/build/mk X-SVN-Commit-Revision: 344136 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4BBCE8A2C1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.959,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:29:35 -0000 Author: asomers Date: Thu Feb 14 20:29:33 2019 New Revision: 344136 URL: https://svnweb.freebsd.org/changeset/base/344136 Log: MFC r342153, r342172-r342173 r342153: Conditionally install /etc/rc.d/audit* based on ${MK_AUDIT} /usr/sbin/audit(dist)?d are only installed if ${MK_AUDIT} == yes. Their supporting scripts should only be installed in those instances as well. Submitted by: ngie Reviewed by: emaste Pull Request: https://github.com/freebsd/freebsd/pull/242 r342172: audit(4) tests: require /etc/rc.d/auditd These tests should be skipped if /etc/rc.d/auditd is missing, which could be the case if world was built with WITHOUT_AUDIT set. Also, one test case requires /etc/rc.d/accounting. Submitted by: ngie Pull Request: https://github.com/freebsd/freebsd/pull/240 r342173: Conditionalize installtion audit(4) tests on MK_AUDIT MK_AUDIT already controls auditd(8), praudit(1), etc. It should also control the audit test suite. Submitted by: ngie Pull Request: https://github.com/freebsd/freebsd/pull/240 Modified: stable/12/libexec/rc/rc.d/Makefile stable/12/tests/sys/Makefile stable/12/tests/sys/audit/Makefile stable/12/tests/sys/audit/administrative.c stable/12/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/12/ (props changed) Modified: stable/12/libexec/rc/rc.d/Makefile ============================================================================== --- stable/12/libexec/rc/rc.d/Makefile Thu Feb 14 20:26:59 2019 (r344135) +++ stable/12/libexec/rc/rc.d/Makefile Thu Feb 14 20:29:33 2019 (r344136) @@ -15,8 +15,6 @@ CONFS= DAEMON \ addswap \ adjkerntz \ archdep \ - auditd \ - auditdistd \ bgfsck \ ${_blacklistd} \ ${_bluetooth} \ @@ -162,6 +160,12 @@ APM+= apm APM+= apmd .endif APMPACKAGE= apm +.endif + +.if ${MK_AUDIT} != "no" +CONFGROUPS+= AUDIT +AUDIT+= auditd +AUDIT+= auditdistd .endif .if ${MK_AUTOFS} != "no" Modified: stable/12/tests/sys/Makefile ============================================================================== --- stable/12/tests/sys/Makefile Thu Feb 14 20:26:59 2019 (r344135) +++ stable/12/tests/sys/Makefile Thu Feb 14 20:29:33 2019 (r344136) @@ -6,7 +6,7 @@ TESTSDIR= ${TESTSBASE}/sys TESTS_SUBDIRS+= acl TESTS_SUBDIRS+= aio -TESTS_SUBDIRS+= audit +TESTS_SUBDIRS+= ${_audit} TESTS_SUBDIRS+= auditpipe TESTS_SUBDIRS+= capsicum TESTS_SUBDIRS+= ${_cddl} @@ -27,6 +27,10 @@ TESTS_SUBDIRS+= posixshm TESTS_SUBDIRS+= sys TESTS_SUBDIRS+= vfs TESTS_SUBDIRS+= vm + +.if ${MK_AUDIT} != "no" +_audit= audit +.endif .if ${MK_CDDL} != "no" _cddl= cddl Modified: stable/12/tests/sys/audit/Makefile ============================================================================== --- stable/12/tests/sys/audit/Makefile Thu Feb 14 20:26:59 2019 (r344135) +++ stable/12/tests/sys/audit/Makefile Thu Feb 14 20:29:33 2019 (r344136) @@ -49,6 +49,7 @@ SRCS.miscellaneous+= utils.c TEST_METADATA+= timeout="30" TEST_METADATA+= required_user="root" TEST_METADATA+= is_exclusive="true" +TEST_METADATA+= required_files="/etc/rc.d/auditd" WARNS?= 6 Modified: stable/12/tests/sys/audit/administrative.c ============================================================================== --- stable/12/tests/sys/audit/administrative.c Thu Feb 14 20:26:59 2019 (r344135) +++ stable/12/tests/sys/audit/administrative.c Thu Feb 14 20:29:33 2019 (r344136) @@ -377,6 +377,8 @@ ATF_TC_HEAD(acct_success, tc) { atf_tc_set_md_var(tc, "descr", "Tests the audit of a successful " "acct(2) call"); + atf_tc_set_md_var(tc, "require.files", + "/etc/rc.d/accounting /etc/rc.d/auditd"); } ATF_TC_BODY(acct_success, tc) Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 20:26:59 2019 (r344135) +++ stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 20:29:33 2019 (r344136) @@ -147,6 +147,8 @@ OLD_FILES+=usr/share/man/man3/unistruct.3.gz .endif .if ${MK_AUDIT} == no +OLD_FILES+=etc/rc.d/auditd +OLD_FILES+=etc/rc.d/auditdistd OLD_FILES+=usr/sbin/audit OLD_FILES+=usr/sbin/auditd OLD_FILES+=usr/sbin/auditdistd @@ -158,6 +160,22 @@ OLD_FILES+=usr/share/man/man5/auditdistd.conf.5.gz OLD_FILES+=usr/share/man/man8/audit.8.gz OLD_FILES+=usr/share/man/man8/auditd.8.gz OLD_FILES+=usr/share/man/man8/auditdistd.8.gz +OLD_FILES+=usr/tests/sys/audit/process-control +OLD_FILES+=usr/tests/sys/audit/open +OLD_FILES+=usr/tests/sys/audit/network +OLD_FILES+=usr/tests/sys/audit/miscellaneous +OLD_FILES+=usr/tests/sys/audit/Kyuafile +OLD_FILES+=usr/tests/sys/audit/ioctl +OLD_FILES+=usr/tests/sys/audit/inter-process +OLD_FILES+=usr/tests/sys/audit/file-write +OLD_FILES+=usr/tests/sys/audit/file-read +OLD_FILES+=usr/tests/sys/audit/file-delete +OLD_FILES+=usr/tests/sys/audit/file-create +OLD_FILES+=usr/tests/sys/audit/file-close +OLD_FILES+=usr/tests/sys/audit/file-attribute-modify +OLD_FILES+=usr/tests/sys/audit/file-attribute-access +OLD_FILES+=usr/tests/sys/audit/administrative +OLD_DIRS+=usr/tests/sys/audit .endif .if ${MK_AUTHPF} == no From owner-svn-src-all@freebsd.org Thu Feb 14 20:31:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97ACC14E06B2; Thu, 14 Feb 2019 20:31:06 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 36A428A4E2; Thu, 14 Feb 2019 20:31:06 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2B1F9C3E5; Thu, 14 Feb 2019 20:31:06 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EKV6ka080569; Thu, 14 Feb 2019 20:31:06 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EKV6LD080568; Thu, 14 Feb 2019 20:31:06 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902142031.x1EKV6LD080568@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 20:31:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344137 - stable/12/tools/build/mk X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: stable/12/tools/build/mk X-SVN-Commit-Revision: 344137 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 36A428A4E2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:31:06 -0000 Author: asomers Date: Thu Feb 14 20:31:05 2019 New Revision: 344137 URL: https://svnweb.freebsd.org/changeset/base/344137 Log: MFC r300938, r342154 r300938 by ngie: Remove the sa(8) tests if MK_ACCT == no when "make delete-old" is run sa(8) is conditionally installed based on MK_ACCT != no today Sponsored by: EMC / Isilon Storage Division r342154: OptionalObsoleteFiles: Fix deleting usr/tests/usr.sbin/sa It's a directory, not a file. Reported by: ngie X-MFC-With: 300938 Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/12/ (props changed) Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 20:29:33 2019 (r344136) +++ stable/12/tools/build/mk/OptionalObsoleteFiles.inc Thu Feb 14 20:31:05 2019 (r344137) @@ -38,7 +38,7 @@ OLD_FILES+=usr/tests/usr.sbin/sa/v2-i386-usr.in OLD_FILES+=usr/tests/usr.sbin/sa/v2-sparc64-sav.in OLD_FILES+=usr/tests/usr.sbin/sa/v2-sparc64-u.out OLD_FILES+=usr/tests/usr.sbin/sa/v2-sparc64-usr.in -OLD_FILES+=usr/tests/usr.sbin/sa +OLD_DIRS+=usr/tests/usr.sbin/sa .endif .if ${MK_ACPI} == no From owner-svn-src-all@freebsd.org Thu Feb 14 20:33:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7572F14E09B9; Thu, 14 Feb 2019 20:33:36 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 143E38A8D4; Thu, 14 Feb 2019 20:33:36 +0000 (UTC) (envelope-from asomers@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 09A07C573; Thu, 14 Feb 2019 20:33:36 +0000 (UTC) (envelope-from asomers@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1EKXZmU085483; Thu, 14 Feb 2019 20:33:35 GMT (envelope-from asomers@FreeBSD.org) Received: (from asomers@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1EKXZqw085482; Thu, 14 Feb 2019 20:33:35 GMT (envelope-from asomers@FreeBSD.org) Message-Id: <201902142033.x1EKXZqw085482@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: asomers set sender to asomers@FreeBSD.org using -f From: Alan Somers Date: Thu, 14 Feb 2019 20:33:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344138 - stable/12/sbin/ifconfig X-SVN-Group: stable-12 X-SVN-Commit-Author: asomers X-SVN-Commit-Paths: stable/12/sbin/ifconfig X-SVN-Commit-Revision: 344138 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 143E38A8D4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:33:36 -0000 Author: asomers Date: Thu Feb 14 20:33:35 2019 New Revision: 344138 URL: https://svnweb.freebsd.org/changeset/base/344138 Log: MFC r343530: ifconfig: fix endianness bug displaying pfsync interfaces Reviewed by: kp Differential Revision: https://reviews.freebsd.org/D19005 Modified: stable/12/sbin/ifconfig/ifpfsync.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/ifconfig/ifpfsync.c ============================================================================== --- stable/12/sbin/ifconfig/ifpfsync.c Thu Feb 14 20:31:05 2019 (r344137) +++ stable/12/sbin/ifconfig/ifpfsync.c Thu Feb 14 20:33:35 2019 (r344138) @@ -195,16 +195,16 @@ pfsync_status(int s) return; if (preq.pfsyncr_syncdev[0] != '\0' || - preq.pfsyncr_syncpeer.s_addr != INADDR_PFSYNC_GROUP) + preq.pfsyncr_syncpeer.s_addr != htonl(INADDR_PFSYNC_GROUP)) printf("\t"); if (preq.pfsyncr_syncdev[0] != '\0') printf("pfsync: syncdev: %s ", preq.pfsyncr_syncdev); - if (preq.pfsyncr_syncpeer.s_addr != INADDR_PFSYNC_GROUP) + if (preq.pfsyncr_syncpeer.s_addr != htonl(INADDR_PFSYNC_GROUP)) printf("syncpeer: %s ", inet_ntoa(preq.pfsyncr_syncpeer)); if (preq.pfsyncr_syncdev[0] != '\0' || - preq.pfsyncr_syncpeer.s_addr != INADDR_PFSYNC_GROUP) { + preq.pfsyncr_syncpeer.s_addr != htonl(INADDR_PFSYNC_GROUP)) { printf("maxupd: %d ", preq.pfsyncr_maxupdates); printf("defer: %s\n", preq.pfsyncr_defer ? "on" : "off"); } From owner-svn-src-all@freebsd.org Thu Feb 14 20:42:31 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1E55F14E103F; Thu, 14 Feb 2019 20:42:31 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 891C58B024; Thu, 14 Feb 2019 20:42:30 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x1EKgSxZ087718; Thu, 14 Feb 2019 12:42:28 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id x1EKgSwf087717; Thu, 14 Feb 2019 12:42:28 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r344129 - head In-Reply-To: <20190214191329.GB50900@raichu> To: Mark Johnston Date: Thu, 14 Feb 2019 12:42:28 -0800 (PST) CC: Warner Losh , "Rodney W. Grimes" , Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 891C58B024 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:42:31 -0000 > On Thu, Feb 14, 2019 at 12:00:22PM -0700, Warner Losh wrote: > > On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < > > > > Differential Review: https://reviews.freebsd.org/D19193 > > > > > > You sited a differential, but not give any attribution > > > to the external source :-( > > > > > > > The differential review has that information. > > External contributors should be recognized by having their names appear > in the commit logs. We even bother to put a special line in the commit template for this. Further it has been standard operating procedure for at least as long as I have been back that submitters are infact recognized in commit messages. You have, again, summarily dismissed valid feedback. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Thu Feb 14 20:48:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4483114E1217 for ; Thu, 14 Feb 2019 20:48:39 +0000 (UTC) (envelope-from juli@northcloak.com) Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [IPv6:2607:f8b0:4864:20::733]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D467D8B357 for ; Thu, 14 Feb 2019 20:48:38 +0000 (UTC) (envelope-from juli@northcloak.com) Received: by mail-qk1-x733.google.com with SMTP id x6so4447802qki.6 for ; Thu, 14 Feb 2019 12:48:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=northcloak-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Z3yFFCL2bzat69pupRRj35uxuSKPpPsY7KSM/gIQoKM=; b=EO9j5cbW4GoXG5DC9jocSsZHAJ3bVy77mRSBcu80bQIyFpVvsO1Ljv4SUXkkkt+Zpa gZMCeJR7vc4kUzrou87Nzw2+6DMX87VKgosC2VfQZySPqzCVaDmo3kZRYFym3+ORVhBv eCIEvKWgj9r/j0PvBjfiiUO25BpWNS5UnDye9Bk3cvFy1ypvxg06kSbX3rxmTjHM82BS nBsV7MLk7+fXQO4rqTxh44VoUPvmsC63cmDBDUEES1Nq48xyN99QnSqQxf/M21OC01uz 5TOl2FBnte03LCehWvIxb4+i7G/wQxD7SvoIWQX8OGyerwKHqhGNzF57zYGlYfYQ/dX/ tzIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Z3yFFCL2bzat69pupRRj35uxuSKPpPsY7KSM/gIQoKM=; b=nooOkWfEqSHCvjvdVY3dMeq1PNT4N85clp+ipWPL/QKDMfAI1v5lupMmr98Qp46UuV 0D47u82FmAVCQFi+fupU3V9kXhTV1SOHDWvwi4Z6MWTC9Iifh0G9sVsiwuBni4fo0/st h3gdh1YX4hNhs4bOj+A2Ioi1/4sgPKHj/u3Xzi6rX0DkYGo1kqBiIyK6+oY+df3B6Fj/ jik6M1nLwaiNuWOlXNt+OO/ADNKAB+Q0vMmOgzT6SH87TzcousSFM3Z1ZaviyoOOuSEA 659/h4xNOASlWbPXEw1s+OBoL1VdjaBtbEcrDENvia0HvZDUZzP2YAYpUF2jWs8TJ2PV 84WQ== X-Gm-Message-State: AHQUAuaEKOspXptmQMmUolRH4OEAx5TMpFn7voQNnqIxKMjmmny/ljqp J7OR7NzJ2uCpuL6DO14SYXX+Jj8nsFnilhK0Qo4XtA== X-Google-Smtp-Source: AHgI3IaMwbqtsgGcNtDIDBSH+bK6wbIe+QNdnACoxeCG6ZHsnbg7tcoM5NPMQZEu+/N8wEgoMFWlP3TGVrG8y1yQREo= X-Received: by 2002:a37:59c4:: with SMTP id n187mr4564233qkb.156.1550177318323; Thu, 14 Feb 2019 12:48:38 -0800 (PST) MIME-Version: 1.0 References: <20190214191329.GB50900@raichu> <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> From: Juli Mallett Date: Thu, 14 Feb 2019 12:48:02 -0800 Message-ID: Subject: Re: svn commit: r344129 - head To: rgrimes@freebsd.org Cc: Mark Johnston , Warner Losh , Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: D467D8B357 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 20:48:39 -0000 On Thu, 14 Feb 2019 at 12:42, Rodney W. Grimes < freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > On Thu, Feb 14, 2019 at 12:00:22PM -0700, Warner Losh wrote: > > > On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < > > > > > Differential Review: https://reviews.freebsd.org/D19193 > > > > > > > > You sited a differential, but not give any attribution > > > > to the external source :-( > > > > > > > > > > The differential review has that information. > > > > External contributors should be recognized by having their names appear > > in the commit logs. > > We even bother to put a special line in the commit template > for this. Further it has been standard operating procedure > for at least as long as I have been back that submitters > are infact recognized in commit messages. > Yeah, Phabricator must not become a second source of truth for who actually did the work, which we had at least one case of recently. That's no good. In this case, the difference between a patch and a bug report is indistinguishable ("word X is misspelt at offset Y in file Z" is probably not really Phabricator fodder at the scale of a single instance), but it should plainly either be a Reported byline if not a Submitted one in the commit message itself. Juli. From owner-svn-src-all@freebsd.org Thu Feb 14 21:01:01 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 00FDD14E18CD for ; Thu, 14 Feb 2019 21:01:01 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x844.google.com (mail-qt1-x844.google.com [IPv6:2607:f8b0:4864:20::844]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8C0C38BB90 for ; Thu, 14 Feb 2019 21:01:00 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x844.google.com with SMTP id 2so8552259qtb.5 for ; Thu, 14 Feb 2019 13:01:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=oZSzITwCy3GT/bRj3X3FHRVturaUaN2xL5GnOLwdDPg=; b=pTmNC7JoVjL9vejov6F6IEe/MpO6uWnzpXV7JBmvVEjfW9q7cmqAKgmwMC5Xqz5J70 Qy3UpSyW0xmlxn8B154wNdiTFP3tHuApixHjhuX3L80+532f06Pqbe8YtjSHsOn6hFy3 MoMW3dSSR0uZjkgkIkd14Zedx1LLTLSQz4NBfoiyoZ9HuVlPQriVBU9VsoSffGE3Up4q 8Lbiul/WGgqHHJoO4H5m/MgGYRTATaeR3Ah3rJbuyjDkRgyS1oSi3U1bPVX7G/mbYK27 AExM4tnbibQVReLH+8Kb9l4yoKczclZ14YsHX4BlT/SdLdPwMGp8OQglwadqmA97d1pY annA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=oZSzITwCy3GT/bRj3X3FHRVturaUaN2xL5GnOLwdDPg=; b=GQBci9Z9seEZB66p0Qs75SU/geziW6HeWpdBnZZL6KzVxCSrR0cZFrfTUdKvUHG1bQ blHTRFje8sndog0AZAG51k07g7Rby5tumf1HQ6WBucInntPetENjKbuf1dgl/1O65AtT kWZcDIZu0Zm9YLWFQYPmRWZ8W751LekIRGiTbJ54XB3dcMII0BnVIHOesImkRxmV4kpZ 8pd+Gr+oDr38q2n3Z9Sgi2MxNIiCih3RAK06sGVn0RLzRpUKmX2c+EAaiPQqHfYWi0oJ nsfouYJjjh0ws1l4qgyQBNIuDAIxjdmZIMSUltMzlyMf5kRvrXBQtnlOUWWWutdDqxZH yOrA== X-Gm-Message-State: AHQUAuboTgHWk/B1NsDkV5udDPhKm1raqNseLBo6+oJO1QW6io6OJVOZ VGqKVQCuSAfYBFvRxNQxQYdRHUdp6wf/2jB2aKoncA== X-Google-Smtp-Source: AHgI3IYcLUIEyD6T65sZtv9U4Ul+sW6DUYxxXsdC/KrOscdA21aXy1e8WgbT3hNgY1+FhMpeYfx4GFqsGWdTImGUiuo= X-Received: by 2002:ac8:1806:: with SMTP id q6mr4696018qtj.242.1550178059913; Thu, 14 Feb 2019 13:00:59 -0800 (PST) MIME-Version: 1.0 References: <20190214191329.GB50900@raichu> <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> In-Reply-To: From: Warner Losh Date: Thu, 14 Feb 2019 14:00:48 -0700 Message-ID: Subject: Re: svn commit: r344129 - head To: Juli Mallett Cc: "Rodney W. Grimes" , Mark Johnston , Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 8C0C38BB90 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.978,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 21:01:01 -0000 On Thu, Feb 14, 2019, 1:48 PM Juli Mallett On Thu, 14 Feb 2019 at 12:42, Rodney W. Grimes < > freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > >> > On Thu, Feb 14, 2019 at 12:00:22PM -0700, Warner Losh wrote: >> > > On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < >> > > > > Differential Review: https://reviews.freebsd.org/D19193 >> > > > >> > > > You sited a differential, but not give any attribution >> > > > to the external source :-( >> > > > >> > > >> > > The differential review has that information. >> > >> > External contributors should be recognized by having their names appear >> > in the commit logs. >> >> We even bother to put a special line in the commit template >> for this. Further it has been standard operating procedure >> for at least as long as I have been back that submitters >> are infact recognized in commit messages. >> > > Yeah, Phabricator must not become a second source of truth for who > actually did the work, which we had at least one case of recently. That's > no good. In this case, the difference between a patch and a bug report is > indistinguishable ("word X is misspelt at offset Y in file Z" is probably > not really Phabricator fodder at the scale of a single instance), but it > should plainly either be a Reported byline if not a Submitted one in the > commit message itself. > This is the most pointless waste of time of the year. It was a one letter typo. Yes, maybe I should have included the submitter's name, but I didn't. It doesn't deserve a long thread and a snarky response. Geeze people, get some perspective. Warner > From owner-svn-src-all@freebsd.org Thu Feb 14 23:34:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E648214E6701; Thu, 14 Feb 2019 23:34:18 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from cell.glebi.us (glebi.us [198.45.61.253]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "cell.glebi.us", Issuer "cell.glebi.us" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 73D536B903; Thu, 14 Feb 2019 23:34:18 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from cell.glebi.us (localhost [127.0.0.1]) by cell.glebi.us (8.15.2/8.15.2) with ESMTPS id x1ENYA2E045189 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Thu, 14 Feb 2019 15:34:10 -0800 (PST) (envelope-from glebius@freebsd.org) Received: (from glebius@localhost) by cell.glebi.us (8.15.2/8.15.2/Submit) id x1ENYA42045188; Thu, 14 Feb 2019 15:34:10 -0800 (PST) (envelope-from glebius@freebsd.org) X-Authentication-Warning: cell.glebi.us: glebius set sender to glebius@freebsd.org using -f Date: Thu, 14 Feb 2019 15:34:10 -0800 From: Gleb Smirnoff To: Justin Hibbits Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm Message-ID: <20190214233410.GJ83215@FreeBSD.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="LpQ9ahxlCli8rRTG" Content-Disposition: inline In-Reply-To: <20190213192450.32343d6a@ralga.knownspace> User-Agent: Mutt/1.10.1 (2018-07-13) X-Rspamd-Queue-Id: 73D536B903 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.975,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Feb 2019 23:34:19 -0000 --LpQ9ahxlCli8rRTG Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Justin, On Wed, Feb 13, 2019 at 07:24:50PM -0600, Justin Hibbits wrote: J> This seems to break 32-bit platforms, or at least 32-bit book-e J> powerpc, which has a limited KVA space (~500MB). It preallocates I've J> seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, J> leaving very little left for the rest of runtime. J> J> I spent a couple hours earlier today debugging with Mark Johnston, and J> his consensus is that the vnode_pbuf_zone is too big on 32-bit J> platforms. Unfortunately I know very little about this area, so can't J> provide much extra insight, but can readily reproduce the issues I see J> triggered by this change, so am willing to help where I can. Ok, let's roll back to old default on 32-bit platforms and somewhat reduce the default on 64-bits. Can you please confirm that the patch attached works for you? -- Gleb Smirnoff --LpQ9ahxlCli8rRTG Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="nvnpbufs.diff" diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index 3e71ab4436cc..ded9e65e4e4c 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c @@ -115,13 +115,23 @@ SYSCTL_PROC(_debug, OID_AUTO, vnode_domainset, CTLTYPE_STRING | CTLFLAG_RW, &vnode_domainset, 0, sysctl_handle_domainset, "A", "Default vnode NUMA policy"); +static int nvnpbufs; +SYSCTL_INT(_vm, OID_AUTO, vnode_pbufs, CTLFLAG_RDTUN | CTLFLAG_NOFETCH, + &nvnpbufs, 0, "number of physical buffers allocated for vnode pager"); + static uma_zone_t vnode_pbuf_zone; static void vnode_pager_init(void *dummy) { - vnode_pbuf_zone = pbuf_zsecond_create("vnpbuf", nswbuf * 8); +#ifdef __LP64__ + nvnpbufs = nswbuf * 2; +#else + nvnpbufs = nswbuf / 2; +#endif + TUNABLE_INT_FETCH("vm.vnode_pbufs", &nvnpbufs); + vnode_pbuf_zone = pbuf_zsecond_create("vnpbuf", nvnpbufs); } SYSINIT(vnode_pager, SI_SUB_CPU, SI_ORDER_ANY, vnode_pager_init, NULL); --LpQ9ahxlCli8rRTG-- From owner-svn-src-all@freebsd.org Fri Feb 15 00:29:46 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD6B114E830B; Fri, 15 Feb 2019 00:29:45 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 80FA16D4B1; Fri, 15 Feb 2019 00:29:45 +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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 58A8BED63; Fri, 15 Feb 2019 00:29:45 +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 x1F0TjDA009098; Fri, 15 Feb 2019 00:29:45 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F0TiPL009096; Fri, 15 Feb 2019 00:29:44 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201902150029.x1F0TiPL009096@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Fri, 15 Feb 2019 00:29:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344139 - in stable/12: share/man/man4 sys/netgraph X-SVN-Group: stable-12 X-SVN-Commit-Author: glebius X-SVN-Commit-Paths: in stable/12: share/man/man4 sys/netgraph X-SVN-Commit-Revision: 344139 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 80FA16D4B1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.963,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 00:29:46 -0000 Author: glebius Date: Fri Feb 15 00:29:44 2019 New Revision: 344139 URL: https://svnweb.freebsd.org/changeset/base/344139 Log: Merge r343895: Allow some nesting of ng_iface(4) interfaces and add a configuration knob. PR: 235500 Modified: stable/12/share/man/man4/ng_iface.4 stable/12/sys/netgraph/ng_iface.c Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man4/ng_iface.4 ============================================================================== --- stable/12/share/man/man4/ng_iface.4 Thu Feb 14 20:33:35 2019 (r344138) +++ stable/12/share/man/man4/ng_iface.4 Fri Feb 15 00:29:44 2019 (r344139) @@ -35,7 +35,7 @@ .\" $FreeBSD$ .\" $Whistle: ng_iface.8,v 1.5 1999/01/25 23:46:26 archie Exp $ .\" -.Dd January 12, 2015 +.Dd February 6, 2019 .Dt NG_IFACE 4 .Os .Sh NAME @@ -144,6 +144,17 @@ In case when your graph ends up with some kind of seri synchronous or modem, the .Nm is the right place to turn ALTQ on. +.Sh Nesting +.Nm +supports nesting, a configuration when traffic of one +.Nm +interface flows through the other. +The default maximum allowed nesting level is 2. +It can be changed at runtime setting +.Xr sysctl 8 +variable +.Va net.graph.iface.max_nesting +to the desired level of nesting. .Sh SEE ALSO .Xr altq 4 , .Xr bpf 4 , @@ -151,6 +162,7 @@ is the right place to turn ALTQ on. .Xr ng_cisco 4 , .Xr ifconfig 8 , .Xr ngctl 8 +.Xr sysctl .Sh HISTORY The .Nm iface Modified: stable/12/sys/netgraph/ng_iface.c ============================================================================== --- stable/12/sys/netgraph/ng_iface.c Thu Feb 14 20:33:35 2019 (r344138) +++ stable/12/sys/netgraph/ng_iface.c Fri Feb 15 00:29:44 2019 (r344139) @@ -68,6 +68,7 @@ #include #include #include +#include #include #include @@ -92,6 +93,13 @@ static MALLOC_DEFINE(M_NETGRAPH_IFACE, "netgraph_iface #define M_NETGRAPH_IFACE M_NETGRAPH #endif +static SYSCTL_NODE(_net_graph, OID_AUTO, iface, CTLFLAG_RW, 0, + "Point to point netgraph interface"); +VNET_DEFINE_STATIC(int, ng_iface_max_nest) = 2; +#define V_ng_iface_max_nest VNET(ng_iface_max_nest) +SYSCTL_INT(_net_graph_iface, OID_AUTO, max_nesting, CTLFLAG_VNET | CTLFLAG_RW, + &VNET_NAME(ng_iface_max_nest), 0, "Max nested tunnels"); + /* This struct describes one address family */ struct iffam { sa_family_t family; /* Address family */ @@ -355,7 +363,8 @@ ng_iface_output(struct ifnet *ifp, struct mbuf *m, } /* Protect from deadly infinite recursion. */ - error = if_tunnel_check_nesting(ifp, m, NGM_IFACE_COOKIE, 1); + error = if_tunnel_check_nesting(ifp, m, NGM_IFACE_COOKIE, + V_ng_iface_max_nest); if (error) { m_freem(m); return (error); From owner-svn-src-all@freebsd.org Fri Feb 15 01:12:25 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7625514E94DF; Fri, 15 Feb 2019 01:12:25 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pl1-x62a.google.com (mail-pl1-x62a.google.com [IPv6:2607:f8b0:4864:20::62a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E6A796EA3A; Fri, 15 Feb 2019 01:12:24 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pl1-x62a.google.com with SMTP id p4so4071165plq.11; Thu, 14 Feb 2019 17:12:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=DunghJBHSTP5HVNFEH0LDRSKAjI3MO2bD50i51qBt/0=; b=KS0WAmJ6VPsfDHBK3+WU/A0N8Z5ucGIhWqVJC9GMV7AQPXsF5oZ90lZQshUceir/EQ 8/tnf5lNbCSGMENlxDcyksfqynSlg4UuWGB0DlFxxbVwM72a5vnqjjBf5a38seHDFHdb XIOh5fJwbMuHpKGu4uK0VL9NogiYZOQ5UPkNVh4AM81v7/dk8o44o27DlXzMZ5dyqykj VGHYaMNFD9cebGG1QwAfOjGNDjJO/fkfuR/mXeqs1Eswnspdeje/dEvqoskrLC1za2xB +7bPoCiuoyYpOZuNaOW0B5Z+Ues9kJUkPFeLarV1GmMYmyhYOGTpwCsk4LpSbB2DbMFs 1uoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=DunghJBHSTP5HVNFEH0LDRSKAjI3MO2bD50i51qBt/0=; b=nAoMW/hFIjHeIalO6mkhcuZalt4biS/s26tCuPj7XeGZJZOQ3Vu87jell6s9j4Wq9x HD/XNNLBmW3w8Y49WAjnuLT8H7OEqXhpQ5YQjQhEc0eKCM58LefbVaucL13beY1su6EC bRuqnazu4yyjQyBdII63MTJJS6zWlbBBZ68eKrI534TpwbthqDAdQPF9vOzcTGSPsFAP 36Li7oC8rdRAs0/Qj0Y5uIO6Xt6uioD4lPdBqUKyfw46nB1ZGdlRK4SnTUn2q52ynL5N KqyfV2Qum5Yo4nINw3sq0XBU39f0ht7j1KICXN+EhJyXlCH6z7x6Iy7e0yetjvqs8rqg dAUg== X-Gm-Message-State: AHQUAuYGslVRS+3S4uadgzFTLuDwUiRhFNgC84XxG+AXZfUWt05JywrL mMFGKUG40aBbZlJwiNT7LlV8Cg7n X-Google-Smtp-Source: AHgI3IZc6eQIdW5YHRfeS6ytgj0O8VYIoD+d0WibhOjFPPRZBkCPMN64C2/l//kie4rJZfqPVWIuqg== X-Received: by 2002:a17:902:2ac3:: with SMTP id j61mr7308551plb.185.1550193143554; Thu, 14 Feb 2019 17:12:23 -0800 (PST) Received: from ?IPv6:2607:fb90:a695:22c1:896a:3453:1d2e:6f84? ([2607:fb90:a695:22c1:896a:3453:1d2e:6f84]) by smtp.gmail.com with ESMTPSA id t3sm6869276pfa.50.2019.02.14.17.12.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 14 Feb 2019 17:12:22 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm From: Enji Cooper X-Mailer: iPhone Mail (16C104) In-Reply-To: <20190214233410.GJ83215@FreeBSD.org> Date: Thu, 14 Feb 2019 17:12:21 -0800 Cc: Justin Hibbits , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <416504EF-13F3-4CEF-89EC-60FBBFF5D29E@gmail.com> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214233410.GJ83215@FreeBSD.org> To: Gleb Smirnoff X-Rspamd-Queue-Id: E6A796EA3A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 01:12:25 -0000 > On Feb 14, 2019, at 15:34, Gleb Smirnoff wrote: >=20 > Hi Justin, >=20 > On Wed, Feb 13, 2019 at 07:24:50PM -0600, Justin Hibbits wrote: > J> This seems to break 32-bit platforms, or at least 32-bit book-e > J> powerpc, which has a limited KVA space (~500MB). It preallocates I've > J> seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, > J> leaving very little left for the rest of runtime. > J>=20 > J> I spent a couple hours earlier today debugging with Mark Johnston, and > J> his consensus is that the vnode_pbuf_zone is too big on 32-bit > J> platforms. Unfortunately I know very little about this area, so can't > J> provide much extra insight, but can readily reproduce the issues I see > J> triggered by this change, so am willing to help where I can. >=20 > Ok, let's roll back to old default on 32-bit platforms and somewhat > reduce the default on 64-bits. >=20 > Can you please confirm that the patch attached works for you? Quick question: why was the value reduced by a factor of 4 on 64-bit pla= tforms? Thanks so much! -Enji= From owner-svn-src-all@freebsd.org Fri Feb 15 03:09:07 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0EA5B14EC91F for ; Fri, 15 Feb 2019 03:09:07 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x82d.google.com (mail-qt1-x82d.google.com [IPv6:2607:f8b0:4864:20::82d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 99C4E72A65 for ; Fri, 15 Feb 2019 03:09:06 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x82d.google.com with SMTP id y4so9377803qtc.10 for ; Thu, 14 Feb 2019 19:09:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=w/Tmz/QJpfg6fAACm4QLFtGuOColTFMtPSlihxUx7cU=; b=nu9SP9zVniDPn6zrozIvKWqJT3APm7XgrGdAo0rt32ndCzCIVJDqQmwYDSGZgHOeFZ AU3IgZBOmYgGFxlYh5HCO76Gz7gD5f0pTMUq+JaJhUsR8M5qDtMv7YmXRI/X1FCAfeUz +BbvUYyDQvpQ6LPPLDAtb8p3TjBS3HErh4ww8KZwlPZRSJm5nRW3FbNOV5N5/KoQQVkY +/lEN1GTRiz5SYjq8thTeBtxQk+yKSg/OYBd1EkRd3Zk4ExORsODnod41/WcN+4eT4xq MGqIrpj2Qpbj81GU8oR1BCXp7xs/u7ROIk2zeQ+JhkO7fenkIVktV4bPUtG/zLGnv9mH H7vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=w/Tmz/QJpfg6fAACm4QLFtGuOColTFMtPSlihxUx7cU=; b=CjEFlEw6ykUzni5fOhcOuAX8+AM+qy5UTomx/uh9zYIfbRO9ftzFW/NZXc+dKIX64/ zEEIzy5obRV8WTMiT0ILsE1WPL2dfQt3rap7ZRA6Ak+LNtbHK2n4LsGy7cOZTJqExWPD DHwKOlqRDba4Nb8V0FdyIbClnzHMjL++6YhSta+ztnahCotTzjrvTZBEWGpTJApM13jG 8vckjoV+K4k3GCl3gdzvx/M2Kmyg97VDKIT0ULPzbAeM2Lf9Nra/SVjH2d2Vm95EAJop 4mUO0BK4bhck2zI9fCG0scr79si457+7zSR9wffpZAU+bKm40tESmsK8nv+7M6h6pkjG /Npw== X-Gm-Message-State: AHQUAuZY14Yl48a094S7B6TY2rEYaCh9hduy5IiafydAhwbwvRoBFo64 8XcV1YVA8VNSX2O0Sca6CRjnYP8E1F+sHXce2K4ziA== X-Google-Smtp-Source: AHgI3IaUL1D47xTEAgGrXjv6dcWROpK3F9iDbkbdek/vUJKuq1RiVgTUapmo20HAwWUSqD5dF2n2ikUzl89CcFwUBgs= X-Received: by 2002:aed:3964:: with SMTP id l91mr5837204qte.33.1550200145932; Thu, 14 Feb 2019 19:09:05 -0800 (PST) MIME-Version: 1.0 References: <20190214191329.GB50900@raichu> <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> From: Warner Losh Date: Thu, 14 Feb 2019 20:08:53 -0700 Message-ID: Subject: Re: svn commit: r344129 - head To: "Rodney W. Grimes" Cc: Mark Johnston , Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 99C4E72A65 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.99)[-0.987,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 03:09:07 -0000 On Thu, Feb 14, 2019, 1:42 PM Rodney W. Grimes < freebsd@pdx.rh.cn85.dnsmgr.net wrote: > > On Thu, Feb 14, 2019 at 12:00:22PM -0700, Warner Losh wrote: > > > On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < > > > > > Differential Review: https://reviews.freebsd.org/D19193 > > > > > > > > You sited a differential, but not give any attribution > > > > to the external source :-( > > > > > > > > > > The differential review has that information. > > > > External contributors should be recognized by having their names appear > > in the commit logs. > > We even bother to put a special line in the commit template > for this. Further it has been standard operating procedure > for at least as long as I have been back that submitters > are infact recognized in commit messages. > > You have, again, summarily dismissed valid feedback. > The problem is that was a trivial commit. And you offered not one, but two complaints about adding an 'e' to the updating file. That's what pissed me off. It's advice that might be correct, but was so far over the top, in public, for such a trivial commit. That's why I got mad: it added no value and seemed nit picky and pretty. So I lost it. I shouldn't have, but I did. I'm sorry for my cool. Warner > From owner-svn-src-all@freebsd.org Fri Feb 15 03:46:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6143F14ED67F; Fri, 15 Feb 2019 03:46:41 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 082B074544; Fri, 15 Feb 2019 03:46:41 +0000 (UTC) (envelope-from sef@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C2FF518FFD; Fri, 15 Feb 2019 03:46:40 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F3kesL013333; Fri, 15 Feb 2019 03:46:40 GMT (envelope-from sef@FreeBSD.org) Received: (from sef@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F3kdkE013327; Fri, 15 Feb 2019 03:46:39 GMT (envelope-from sef@FreeBSD.org) Message-Id: <201902150346.x1F3kdkE013327@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sef set sender to sef@FreeBSD.org using -f From: Sean Eric Fagan Date: Fri, 15 Feb 2019 03:46:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344140 - in head/sys: conf modules/crypto opencrypto X-SVN-Group: head X-SVN-Commit-Author: sef X-SVN-Commit-Paths: in head/sys: conf modules/crypto opencrypto X-SVN-Commit-Revision: 344140 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 082B074544 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.974,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 03:46:41 -0000 Author: sef Date: Fri Feb 15 03:46:39 2019 New Revision: 344140 URL: https://svnweb.freebsd.org/changeset/base/344140 Log: Add CBC-MAC authentication. This adds the CBC-MAC code to the kernel, but does not hook it up to anything (that comes in the next commit). https://tools.ietf.org/html/rfc3610 describes the algorithm. Note that this is a software-only implementation, which means it is fairly slow. Sponsored by: iXsystems Inc Differential Revision: https://reviews.freebsd.org/D18592 Added: head/sys/opencrypto/cbc_mac.c (contents, props changed) head/sys/opencrypto/cbc_mac.h (contents, props changed) head/sys/opencrypto/xform_cbc_mac.c (contents, props changed) Modified: head/sys/conf/files head/sys/modules/crypto/Makefile head/sys/opencrypto/cryptodev.h Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Fri Feb 15 00:29:44 2019 (r344139) +++ head/sys/conf/files Fri Feb 15 03:46:39 2019 (r344140) @@ -4847,6 +4847,8 @@ crypto/libsodium/randombytes.c optional crypto \ compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include -I$S/crypto/libsodium" crypto/libsodium/utils.c optional crypto \ compile-with "${NORMAL_C} -I$S/contrib/libsodium/src/libsodium/include -I$S/crypto/libsodium" +opencrypto/cbc_mac.c optional crypto +opencrypto/xform_cbc_mac.c optional crypto rpc/auth_none.c optional krpc | nfslockd | nfscl | nfsd rpc/auth_unix.c optional krpc | nfslockd | nfscl | nfsd rpc/authunix_prot.c optional krpc | nfslockd | nfscl | nfsd Modified: head/sys/modules/crypto/Makefile ============================================================================== --- head/sys/modules/crypto/Makefile Fri Feb 15 00:29:44 2019 (r344139) +++ head/sys/modules/crypto/Makefile Fri Feb 15 03:46:39 2019 (r344140) @@ -68,5 +68,7 @@ CFLAGS.utils.c += -I${LIBSODIUM_INC} -I${LIBSODIUM_C SRCS += opt_param.h cryptodev_if.h bus_if.h device_if.h SRCS += opt_ddb.h +SRCS += cbc_mac.c +SRCS += xform_cbc_mac.c .include Added: head/sys/opencrypto/cbc_mac.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/opencrypto/cbc_mac.c Fri Feb 15 03:46:39 2019 (r344140) @@ -0,0 +1,252 @@ +/* + * Copyright (c) 2018-2019 iXsystems Inc. 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 ``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 BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$); + +#include +#include +#include +#include +#include +#include + +/* + * Given two CCM_CBC_BLOCK_LEN blocks, xor + * them into dst, and then encrypt dst. + */ +static void +xor_and_encrypt(struct aes_cbc_mac_ctx *ctx, + const uint8_t *src, uint8_t *dst) +{ + const uint64_t *b1; + uint64_t *b2; + uint64_t temp_block[CCM_CBC_BLOCK_LEN/sizeof(uint64_t)]; + + b1 = (const uint64_t*)src; + b2 = (uint64_t*)dst; + + for (size_t count = 0; + count < CCM_CBC_BLOCK_LEN/sizeof(uint64_t); + count++) { + temp_block[count] = b1[count] ^ b2[count]; + } + rijndaelEncrypt(ctx->keysched, ctx->rounds, (void*)temp_block, dst); +} + +void +AES_CBC_MAC_Init(struct aes_cbc_mac_ctx *ctx) +{ + bzero(ctx, sizeof(*ctx)); +} + +void +AES_CBC_MAC_Setkey(struct aes_cbc_mac_ctx *ctx, const uint8_t *key, uint16_t klen) +{ + ctx->rounds = rijndaelKeySetupEnc(ctx->keysched, key, klen * 8); +} + +/* + * This is called to set the nonce, aka IV. + * Before this call, the authDataLength and cryptDataLength fields + * MUST have been set. Sadly, there's no way to return an error. + * + * The CBC-MAC algorithm requires that the first block contain the + * nonce, as well as information about the sizes and lengths involved. + */ +void +AES_CBC_MAC_Reinit(struct aes_cbc_mac_ctx *ctx, const uint8_t *nonce, uint16_t nonceLen) +{ + uint8_t b0[CCM_CBC_BLOCK_LEN]; + uint8_t *bp = b0, flags = 0; + uint8_t L = 0; + uint64_t dataLength = ctx->cryptDataLength; + + KASSERT(ctx->authDataLength != 0 || ctx->cryptDataLength != 0, + ("Auth Data and Data lengths cannot both be 0")); + + KASSERT(nonceLen >= 7 && nonceLen <= 13, + ("nonceLen must be between 7 and 13 bytes")); + + ctx->nonce = nonce; + ctx->nonceLength = nonceLen; + + ctx->authDataCount = 0; + ctx->blockIndex = 0; + explicit_bzero(ctx->staging_block, sizeof(ctx->staging_block)); + + /* + * Need to determine the L field value. This is the number of + * bytes needed to specify the length of the message; the length + * is whatever is left in the 16 bytes after specifying flags and + * the nonce. + */ + L = 15 - nonceLen; + + flags = ((ctx->authDataLength > 0) << 6) + + (((AES_CBC_MAC_HASH_LEN - 2) / 2) << 3) + + L - 1; + /* + * Now we need to set up the first block, which has flags, nonce, + * and the message length. + */ + b0[0] = flags; + bcopy(nonce, b0 + 1, nonceLen); + bp = b0 + 1 + nonceLen; + + /* Need to copy L' [aka L-1] bytes of cryptDataLength */ + for (uint8_t *dst = b0 + sizeof(b0) - 1; dst >= bp; dst--) { + *dst = dataLength; + dataLength >>= 8; + } + /* Now need to encrypt b0 */ + rijndaelEncrypt(ctx->keysched, ctx->rounds, b0, ctx->block); + /* If there is auth data, we need to set up the staging block */ + if (ctx->authDataLength) { + if (ctx->authDataLength < ((1<<16) - (1<<8))) { + uint16_t sizeVal = htobe16(ctx->authDataLength); + bcopy(&sizeVal, ctx->staging_block, sizeof(sizeVal)); + ctx->blockIndex = sizeof(sizeVal); + } else if (ctx->authDataLength < (1UL<<32)) { + uint32_t sizeVal = htobe32(ctx->authDataLength); + ctx->staging_block[0] = 0xff; + ctx->staging_block[1] = 0xfe; + bcopy(&sizeVal, ctx->staging_block+2, sizeof(sizeVal)); + ctx->blockIndex = 2 + sizeof(sizeVal); + } else { + uint64_t sizeVal = htobe64(ctx->authDataLength); + ctx->staging_block[0] = 0xff; + ctx->staging_block[1] = 0xff; + bcopy(&sizeVal, ctx->staging_block+2, sizeof(sizeVal)); + ctx->blockIndex = 2 + sizeof(sizeVal); + } + } +} + +int +AES_CBC_MAC_Update(struct aes_cbc_mac_ctx *ctx, const uint8_t *data, + uint16_t length) +{ + size_t copy_amt; + + /* + * This will be called in one of two phases: + * (1) Applying authentication data, or + * (2) Applying the payload data. + * + * Because CBC-MAC puts the authentication data size before the + * data, subsequent calls won't be block-size-aligned. Which + * complicates things a fair bit. + * + * The payload data doesn't have that problem. + */ + + if (ctx->authDataCount < ctx->authDataLength) { + /* + * We need to process data as authentication data. + * Since we may be out of sync, we may also need + * to pad out the staging block. + */ + const uint8_t *ptr = data; + while (length > 0) { + + copy_amt = MIN(length, + sizeof(ctx->staging_block) - ctx->blockIndex); + + bcopy(ptr, ctx->staging_block + ctx->blockIndex, + copy_amt); + ptr += copy_amt; + length -= copy_amt; + ctx->authDataCount += copy_amt; + ctx->blockIndex += copy_amt; + ctx->blockIndex %= sizeof(ctx->staging_block); + if (ctx->authDataCount == ctx->authDataLength) + length = 0; + if (ctx->blockIndex == 0 || + ctx->authDataCount >= ctx->authDataLength) { + /* + * We're done with this block, so we + * xor staging_block with block, and then + * encrypt it. + */ + xor_and_encrypt(ctx, ctx->staging_block, ctx->block); + bzero(ctx->staging_block, sizeof(ctx->staging_block)); + ctx->blockIndex = 0; + } + } + return (0); + } + /* + * If we're here, then we're encoding payload data. + * This is marginally easier, except that _Update can + * be called with non-aligned update lengths. As a result, + * we still need to use the staging block. + */ + KASSERT((length + ctx->cryptDataCount) <= ctx->cryptDataLength, + ("More encryption data than allowed")); + + while (length) { + uint8_t *ptr; + + copy_amt = MIN(sizeof(ctx->staging_block) - ctx->blockIndex, + length); + ptr = ctx->staging_block + ctx->blockIndex; + bcopy(data, ptr, copy_amt); + data += copy_amt; + ctx->blockIndex += copy_amt; + ctx->cryptDataCount += copy_amt; + length -= copy_amt; + if (ctx->blockIndex == sizeof(ctx->staging_block)) { + /* We've got a full block */ + xor_and_encrypt(ctx, ctx->staging_block, ctx->block); + ctx->blockIndex = 0; + bzero(ctx->staging_block, sizeof(ctx->staging_block)); + } + } + return (0); +} + +void +AES_CBC_MAC_Final(uint8_t *buf, struct aes_cbc_mac_ctx *ctx) +{ + uint8_t s0[CCM_CBC_BLOCK_LEN]; + + /* + * We first need to check to see if we've got any data + * left over to encrypt. + */ + if (ctx->blockIndex != 0) { + xor_and_encrypt(ctx, ctx->staging_block, ctx->block); + ctx->cryptDataCount += ctx->blockIndex; + ctx->blockIndex = 0; + explicit_bzero(ctx->staging_block, sizeof(ctx->staging_block)); + } + bzero(s0, sizeof(s0)); + s0[0] = (15 - ctx->nonceLength) - 1; + bcopy(ctx->nonce, s0 + 1, ctx->nonceLength); + rijndaelEncrypt(ctx->keysched, ctx->rounds, s0, s0); + for (size_t indx = 0; indx < AES_CBC_MAC_HASH_LEN; indx++) + buf[indx] = ctx->block[indx] ^ s0[indx]; + explicit_bzero(s0, sizeof(s0)); +} Added: head/sys/opencrypto/cbc_mac.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/opencrypto/cbc_mac.h Fri Feb 15 03:46:39 2019 (r344140) @@ -0,0 +1,67 @@ +/* + * Copyright (c) 2014 The FreeBSD Foundation + * Copyright (c) 2018, iXsystems Inc. + * All rights reserved. + * + * This software was developed by Sean Eric Fagan, with lots of references + * to existing AES-CCM (gmac) code. + * + * 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$ + * + */ + +#ifndef _CBC_CCM_H +# define _CBC_CCM_H + +# include +# include + +# define CCM_CBC_BLOCK_LEN 16 /* 128 bits */ +# define CCM_CBC_MAX_DIGEST_LEN 16 +# define CCM_CBC_MIN_DIGEST_LEN 4 + +/* + * This is the authentication context structure; + * the encryption one is similar. + */ +struct aes_cbc_mac_ctx { + uint64_t authDataLength, authDataCount; + uint64_t cryptDataLength, cryptDataCount; + int blockIndex; + uint8_t staging_block[CCM_CBC_BLOCK_LEN]; + uint8_t block[CCM_CBC_BLOCK_LEN]; + const uint8_t *nonce; + int nonceLength; /* This one is in bytes, not bits! */ + /* AES state data */ + int rounds; + uint32_t keysched[4*(RIJNDAEL_MAXNR+1)]; +}; + +void AES_CBC_MAC_Init(struct aes_cbc_mac_ctx *); +void AES_CBC_MAC_Setkey(struct aes_cbc_mac_ctx *, const uint8_t *, uint16_t); +void AES_CBC_MAC_Reinit(struct aes_cbc_mac_ctx *, const uint8_t *, uint16_t); +int AES_CBC_MAC_Update(struct aes_cbc_mac_ctx *, const uint8_t *, uint16_t); +void AES_CBC_MAC_Final(uint8_t *, struct aes_cbc_mac_ctx *); + +#endif /* _CBC_CCM_H */ Modified: head/sys/opencrypto/cryptodev.h ============================================================================== --- head/sys/opencrypto/cryptodev.h Fri Feb 15 00:29:44 2019 (r344139) +++ head/sys/opencrypto/cryptodev.h Fri Feb 15 03:46:39 2019 (r344140) @@ -86,6 +86,7 @@ #define SHA1_KPDK_HASH_LEN 20 #define AES_GMAC_HASH_LEN 16 #define POLY1305_HASH_LEN 16 +#define AES_CBC_MAC_HASH_LEN 16 /* Maximum hash algorithm result length */ #define HASH_MAX_LEN SHA2_512_HASH_LEN /* Keep this updated */ @@ -107,6 +108,9 @@ #define AES_128_GMAC_KEY_LEN 16 #define AES_192_GMAC_KEY_LEN 24 #define AES_256_GMAC_KEY_LEN 32 +#define AES_128_CBC_MAC_KEY_LEN 16 +#define AES_192_CBC_MAC_KEY_LEN 24 +#define AES_256_CBC_MAC_KEY_LEN 32 #define POLY1305_KEY_LEN 32 @@ -199,7 +203,8 @@ #define CRYPTO_SHA2_384 36 #define CRYPTO_SHA2_512 37 #define CRYPTO_POLY1305 38 -#define CRYPTO_ALGORITHM_MAX 38 /* Keep updated - see below */ +#define CRYPTO_AES_CCM_CBC_MAC 39 /* auth side */ +#define CRYPTO_ALGORITHM_MAX 39 /* Keep updated - see below */ #define CRYPTO_ALGO_VALID(x) ((x) >= CRYPTO_ALGORITHM_MIN && \ (x) <= CRYPTO_ALGORITHM_MAX) Added: head/sys/opencrypto/xform_cbc_mac.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/opencrypto/xform_cbc_mac.c Fri Feb 15 03:46:39 2019 (r344140) @@ -0,0 +1,55 @@ +#include +__FBSDID("$FreeBSD$"); + +#include +#include + +/* Authentication instances */ +struct auth_hash auth_hash_ccm_cbc_mac_128 = { + .type = CRYPTO_AES_CCM_CBC_MAC, + .name = "CBC-CCM-AES-128", + .keysize = AES_128_CBC_MAC_KEY_LEN, + .hashsize = AES_CBC_MAC_HASH_LEN, + .ctxsize = sizeof(struct aes_cbc_mac_ctx), + .blocksize = CCM_CBC_BLOCK_LEN, + .Init = (void (*)(void *)) AES_CBC_MAC_Init, + .Setkey = + (void (*)(void *, const u_int8_t *, u_int16_t))AES_CBC_MAC_Setkey, + .Reinit = + (void (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Reinit, + .Update = + (int (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Update, + .Final = (void (*)(u_int8_t *, void *)) AES_CBC_MAC_Final, +}; +struct auth_hash auth_hash_ccm_cbc_mac_192 = { + .type = CRYPTO_AES_CCM_CBC_MAC, + .name = "CBC-CCM-AES-192", + .keysize = AES_192_CBC_MAC_KEY_LEN, + .hashsize = AES_CBC_MAC_HASH_LEN, + .ctxsize = sizeof(struct aes_cbc_mac_ctx), + .blocksize = CCM_CBC_BLOCK_LEN, + .Init = (void (*)(void *)) AES_CBC_MAC_Init, + .Setkey = + (void (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Setkey, + .Reinit = + (void (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Reinit, + .Update = + (int (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Update, + .Final = (void (*)(u_int8_t *, void *)) AES_CBC_MAC_Final, +}; +struct auth_hash auth_hash_ccm_cbc_mac_256 = { + .type = CRYPTO_AES_CCM_CBC_MAC, + .name = "CBC-CCM-AES-256", + .keysize = AES_256_CBC_MAC_KEY_LEN, + .hashsize = AES_CBC_MAC_HASH_LEN, + .ctxsize = sizeof(struct aes_cbc_mac_ctx), + .blocksize = CCM_CBC_BLOCK_LEN, + .Init = (void (*)(void *)) AES_CBC_MAC_Init, + .Setkey = + (void (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Setkey, + .Reinit = + (void (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Reinit, + .Update = + (int (*)(void *, const u_int8_t *, u_int16_t)) AES_CBC_MAC_Update, + .Final = (void (*)(u_int8_t *, void *)) AES_CBC_MAC_Final, +}; From owner-svn-src-all@freebsd.org Fri Feb 15 03:53:06 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3C3E14ED9B7; Fri, 15 Feb 2019 03:53:05 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6A00C74A02; Fri, 15 Feb 2019 03:53:05 +0000 (UTC) (envelope-from sef@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 59AF7191B3; Fri, 15 Feb 2019 03:53:05 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F3r50J018359; Fri, 15 Feb 2019 03:53:05 GMT (envelope-from sef@FreeBSD.org) Received: (from sef@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F3r4KO018353; Fri, 15 Feb 2019 03:53:04 GMT (envelope-from sef@FreeBSD.org) Message-Id: <201902150353.x1F3r4KO018353@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sef set sender to sef@FreeBSD.org using -f From: Sean Eric Fagan Date: Fri, 15 Feb 2019 03:53:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344141 - in head: sys/opencrypto tools/tools/crypto X-SVN-Group: head X-SVN-Commit-Author: sef X-SVN-Commit-Paths: in head: sys/opencrypto tools/tools/crypto X-SVN-Commit-Revision: 344141 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6A00C74A02 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.98)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 03:53:06 -0000 Author: sef Date: Fri Feb 15 03:53:03 2019 New Revision: 344141 URL: https://svnweb.freebsd.org/changeset/base/344141 Log: Add AES-CCM encryption, and plumb into OCF. This commit essentially has three parts: * Add the AES-CCM encryption hooks. This is in and of itself fairly small, as there is only a small difference between CCM and the other ICM-based algorithms. * Hook the code into the OpenCrypto framework. This is the bulk of the changes, as the algorithm type has to be checked for, and the differences between it and GCM dealt with. * Update the cryptocheck tool to be aware of it. This is invaluable for confirming that the code works. This is a software-only implementation, meaning that the performance is very low. Sponsored by: iXsystems Inc. Differential Revision: https://reviews.freebsd.org/D19090 Modified: head/sys/opencrypto/cryptodev.c head/sys/opencrypto/cryptodev.h head/sys/opencrypto/cryptosoft.c head/sys/opencrypto/xform_aes_icm.c head/sys/opencrypto/xform_auth.h head/sys/opencrypto/xform_enc.h head/tools/tools/crypto/cryptocheck.c Modified: head/sys/opencrypto/cryptodev.c ============================================================================== --- head/sys/opencrypto/cryptodev.c Fri Feb 15 03:46:39 2019 (r344140) +++ head/sys/opencrypto/cryptodev.c Fri Feb 15 03:53:03 2019 (r344141) @@ -444,6 +444,9 @@ cryptof_ioctl( case CRYPTO_CHACHA20: txform = &enc_xform_chacha20; break; + case CRYPTO_AES_CCM_16: + txform = &enc_xform_ccm; + break; default: CRYPTDEB("invalid cipher"); @@ -488,6 +491,25 @@ cryptof_ioctl( thash = &auth_hash_nist_gmac_aes_256; break; + case CRYPTO_AES_CCM_CBC_MAC: + switch (sop->keylen) { + case 16: + thash = &auth_hash_ccm_cbc_mac_128; + break; + case 24: + thash = &auth_hash_ccm_cbc_mac_192; + break; + case 32: + thash = &auth_hash_ccm_cbc_mac_256; + break; + default: + CRYPTDEB("Invalid CBC MAC key size %d", + sop->keylen); + SDT_PROBE1(opencrypto, dev, ioctl, + error, __LINE__); + return (EINVAL); + } + break; #ifdef notdef case CRYPTO_MD5: thash = &auth_hash_md5; @@ -1003,12 +1025,13 @@ cryptodev_aead( } /* - * For GCM, crd_len covers only the AAD. For other ciphers + * For GCM/CCM, crd_len covers only the AAD. For other ciphers * chained with an HMAC, crd_len covers both the AAD and the * cipher text. */ crda->crd_skip = 0; - if (cse->cipher == CRYPTO_AES_NIST_GCM_16) + if (cse->cipher == CRYPTO_AES_NIST_GCM_16 || + cse->cipher == CRYPTO_AES_CCM_16) crda->crd_len = caead->aadlen; else crda->crd_len = caead->aadlen + caead->len; Modified: head/sys/opencrypto/cryptodev.h ============================================================================== --- head/sys/opencrypto/cryptodev.h Fri Feb 15 03:46:39 2019 (r344140) +++ head/sys/opencrypto/cryptodev.h Fri Feb 15 03:53:03 2019 (r344141) @@ -133,6 +133,7 @@ #define ARC4_IV_LEN 1 #define AES_GCM_IV_LEN 12 +#define AES_CCM_IV_LEN 12 #define AES_XTS_IV_LEN 8 #define AES_XTS_ALPHA 0x87 /* GF(2^128) generator polynomial */ @@ -204,7 +205,8 @@ #define CRYPTO_SHA2_512 37 #define CRYPTO_POLY1305 38 #define CRYPTO_AES_CCM_CBC_MAC 39 /* auth side */ -#define CRYPTO_ALGORITHM_MAX 39 /* Keep updated - see below */ +#define CRYPTO_AES_CCM_16 40 /* cipher side */ +#define CRYPTO_ALGORITHM_MAX 40 /* Keep updated - see below */ #define CRYPTO_ALGO_VALID(x) ((x) >= CRYPTO_ALGORITHM_MIN && \ (x) <= CRYPTO_ALGORITHM_MAX) Modified: head/sys/opencrypto/cryptosoft.c ============================================================================== --- head/sys/opencrypto/cryptosoft.c Fri Feb 15 03:46:39 2019 (r344140) +++ head/sys/opencrypto/cryptosoft.c Fri Feb 15 03:53:03 2019 (r344141) @@ -62,6 +62,9 @@ __FBSDID("$FreeBSD$"); #include #include "cryptodev_if.h" +_Static_assert(AES_CCM_IV_LEN == AES_GCM_IV_LEN, + "AES_GCM_IV_LEN must currently be the same as AES_CCM_IV_LEN"); + static int32_t swcr_id; u_int8_t hmac_ipad_buffer[HMAC_MAX_BLOCK_LEN]; @@ -506,6 +509,7 @@ swcr_authenc(struct cryptop *crp) caddr_t buf = (caddr_t)crp->crp_buf; uint32_t *blkp; int aadlen, blksz, i, ivlen, len, iskip, oskip, r; + int isccm = 0; ivlen = blksz = iskip = oskip = 0; @@ -520,13 +524,18 @@ swcr_authenc(struct cryptop *crp) sw = &ses->swcr_algorithms[i]; switch (sw->sw_alg) { + case CRYPTO_AES_CCM_16: case CRYPTO_AES_NIST_GCM_16: case CRYPTO_AES_NIST_GMAC: swe = sw; crde = crd; exf = swe->sw_exf; - ivlen = 12; + /* AES_CCM_IV_LEN and AES_GCM_IV_LEN are both 12 */ + ivlen = AES_CCM_IV_LEN; break; + case CRYPTO_AES_CCM_CBC_MAC: + isccm = 1; + /* FALLTHROUGH */ case CRYPTO_AES_128_NIST_GMAC: case CRYPTO_AES_192_NIST_GMAC: case CRYPTO_AES_256_NIST_GMAC: @@ -544,8 +553,26 @@ swcr_authenc(struct cryptop *crp) } if (crde == NULL || crda == NULL) return (EINVAL); + /* + * We need to make sure that the auth algorithm matches the + * encr algorithm. Specifically, for AES-GCM must go with + * AES NIST GMAC, and AES-CCM must go with CBC-MAC. + */ + if (crde->crd_alg == CRYPTO_AES_NIST_GCM_16) { + switch (crda->crd_alg) { + case CRYPTO_AES_128_NIST_GMAC: + case CRYPTO_AES_192_NIST_GMAC: + case CRYPTO_AES_256_NIST_GMAC: + break; /* Good! */ + default: + return (EINVAL); /* Not good! */ + } + } else if (crde->crd_alg == CRYPTO_AES_CCM_16 && + crda->crd_alg != CRYPTO_AES_CCM_CBC_MAC) + return (EINVAL); - if (crde->crd_alg == CRYPTO_AES_NIST_GCM_16 && + if ((crde->crd_alg == CRYPTO_AES_NIST_GCM_16 || + crde->crd_alg == CRYPTO_AES_CCM_16) && (crde->crd_flags & CRD_F_IV_EXPLICIT) == 0) return (EINVAL); @@ -576,6 +603,15 @@ swcr_authenc(struct cryptop *crp) } } + if (swa->sw_alg == CRYPTO_AES_CCM_CBC_MAC) { + /* + * AES CCM-CBC needs to know the length of + * both the auth data, and payload data, before + * doing the auth computation. + */ + ctx.aes_cbc_mac_ctx.authDataLength = crda->crd_len; + ctx.aes_cbc_mac_ctx.cryptDataLength = crde->crd_len; + } /* Supply MAC with IV */ if (axf->Reinit) axf->Reinit(&ctx, iv, ivlen); @@ -610,16 +646,30 @@ swcr_authenc(struct cryptop *crp) bzero(blk, blksz); crypto_copydata(crp->crp_flags, buf, crde->crd_skip + i, len, blk); + /* + * One of the problems with CCM+CBC is that the authentication + * is done on the unecncrypted data. As a result, we have + * to do the authentication update at different times, + * depending on whether it's CCM or not. + */ if (crde->crd_flags & CRD_F_ENCRYPT) { + if (isccm) + axf->Update(&ctx, blk, len); if (exf->encrypt_multi != NULL) exf->encrypt_multi(swe->sw_kschedule, blk, len); else exf->encrypt(swe->sw_kschedule, blk); - axf->Update(&ctx, blk, len); + if (!isccm) + axf->Update(&ctx, blk, len); crypto_copyback(crp->crp_flags, buf, crde->crd_skip + i, len, blk); } else { + if (isccm) { + KASSERT(exf->encrypt_multi == NULL, + ("assume CCM is single-block only")); + exf->decrypt(swe->sw_kschedule, blk); + } axf->Update(&ctx, blk, len); } } @@ -650,6 +700,11 @@ swcr_authenc(struct cryptop *crp) r = timingsafe_bcmp(aalg, uaalg, axf->hashsize); if (r == 0) { /* tag matches, decrypt data */ + if (isccm) { + KASSERT(exf->reinit != NULL, + ("AES-CCM reinit function must be set")); + exf->reinit(swe->sw_kschedule, iv); + } for (i = 0; i < crde->crd_len; i += blksz) { len = MIN(crde->crd_len - i, blksz); if (len < blksz) @@ -799,6 +854,9 @@ swcr_newsession(device_t dev, crypto_session_t cses, s case CRYPTO_AES_NIST_GCM_16: txf = &enc_xform_aes_nist_gcm; goto enccommon; + case CRYPTO_AES_CCM_16: + txf = &enc_xform_ccm; + goto enccommon; case CRYPTO_AES_NIST_GMAC: txf = &enc_xform_aes_nist_gmac; swd->sw_exf = txf; @@ -943,6 +1001,22 @@ swcr_newsession(device_t dev, crypto_session_t cses, s swd->sw_axf = axf; break; + case CRYPTO_AES_CCM_CBC_MAC: + switch (cri->cri_klen) { + case 128: + axf = &auth_hash_ccm_cbc_mac_128; + break; + case 192: + axf = &auth_hash_ccm_cbc_mac_192; + break; + case 256: + axf = &auth_hash_ccm_cbc_mac_256; + break; + default: + swcr_freesession(dev, cses); + return EINVAL; + } + goto auth4common; case CRYPTO_AES_128_NIST_GMAC: axf = &auth_hash_nist_gmac_aes_128; goto auth4common; @@ -1042,6 +1116,7 @@ swcr_freesession(device_t dev, crypto_session_t cses) case CRYPTO_CAMELLIA_CBC: case CRYPTO_NULL_CBC: case CRYPTO_CHACHA20: + case CRYPTO_AES_CCM_16: txf = swd->sw_exf; if (swd->sw_kschedule) @@ -1056,6 +1131,7 @@ swcr_freesession(device_t dev, crypto_session_t cses) case CRYPTO_SHA2_512_HMAC: case CRYPTO_RIPEMD160_HMAC: case CRYPTO_NULL_HMAC: + case CRYPTO_AES_CCM_CBC_MAC: axf = swd->sw_axf; if (swd->sw_ictx) { @@ -1201,6 +1277,8 @@ swcr_process(device_t dev, struct cryptop *crp, int hi case CRYPTO_AES_128_NIST_GMAC: case CRYPTO_AES_192_NIST_GMAC: case CRYPTO_AES_256_NIST_GMAC: + case CRYPTO_AES_CCM_16: + case CRYPTO_AES_CCM_CBC_MAC: crp->crp_etype = swcr_authenc(crp); goto done; @@ -1291,6 +1369,8 @@ swcr_attach(device_t dev) REGISTER(CRYPTO_BLAKE2B); REGISTER(CRYPTO_BLAKE2S); REGISTER(CRYPTO_CHACHA20); + REGISTER(CRYPTO_AES_CCM_16); + REGISTER(CRYPTO_AES_CCM_CBC_MAC); REGISTER(CRYPTO_POLY1305); #undef REGISTER Modified: head/sys/opencrypto/xform_aes_icm.c ============================================================================== --- head/sys/opencrypto/xform_aes_icm.c Fri Feb 15 03:46:39 2019 (r344140) +++ head/sys/opencrypto/xform_aes_icm.c Fri Feb 15 03:53:03 2019 (r344141) @@ -57,6 +57,7 @@ static void aes_icm_crypt(caddr_t, u_int8_t *); static void aes_icm_zerokey(u_int8_t **); static void aes_icm_reinit(caddr_t, u_int8_t *); static void aes_gcm_reinit(caddr_t, u_int8_t *); +static void aes_ccm_reinit(caddr_t, u_int8_t *); /* Encryption instances */ struct enc_xform enc_xform_aes_icm = { @@ -79,6 +80,18 @@ struct enc_xform enc_xform_aes_nist_gcm = { aes_gcm_reinit, }; +struct enc_xform enc_xform_ccm = { + .type = CRYPTO_AES_CCM_16, + .name = "AES-CCM", + .blocksize = AES_ICM_BLOCK_LEN, .ivsize = AES_CCM_IV_LEN, + .minkey = AES_MIN_KEY, .maxkey = AES_MAX_KEY, + .encrypt = aes_icm_crypt, + .decrypt = aes_icm_crypt, + .setkey = aes_icm_setkey, + .zerokey = aes_icm_zerokey, + .reinit = aes_ccm_reinit, +}; + /* * Encryption wrapper routines. */ @@ -102,6 +115,21 @@ aes_gcm_reinit(caddr_t key, u_int8_t *iv) /* GCM starts with 2 as counter 1 is used for final xor of tag. */ bzero(&ctx->ac_block[AESICM_BLOCKSIZE - 4], 4); ctx->ac_block[AESICM_BLOCKSIZE - 1] = 2; +} + +static void +aes_ccm_reinit(caddr_t key, u_int8_t *iv) +{ + struct aes_icm_ctx *ctx; + + ctx = (struct aes_icm_ctx*)key; + + /* CCM has flags, then the IV, then the counter, which starts at 1 */ + bzero(ctx->ac_block, sizeof(ctx->ac_block)); + /* 3 bytes for length field; this gives a nonce of 12 bytes */ + ctx->ac_block[0] = (15 - AES_CCM_IV_LEN) - 1; + bcopy(iv, ctx->ac_block+1, AES_CCM_IV_LEN); + ctx->ac_block[AESICM_BLOCKSIZE - 1] = 1; } static void Modified: head/sys/opencrypto/xform_auth.h ============================================================================== --- head/sys/opencrypto/xform_auth.h Fri Feb 15 03:46:39 2019 (r344140) +++ head/sys/opencrypto/xform_auth.h Fri Feb 15 03:53:03 2019 (r344141) @@ -42,6 +42,7 @@ #include #include #include +#include #include #include @@ -85,6 +86,9 @@ extern struct auth_hash auth_hash_nist_gmac_aes_256; extern struct auth_hash auth_hash_blake2b; extern struct auth_hash auth_hash_blake2s; extern struct auth_hash auth_hash_poly1305; +extern struct auth_hash auth_hash_ccm_cbc_mac_128; +extern struct auth_hash auth_hash_ccm_cbc_mac_192; +extern struct auth_hash auth_hash_ccm_cbc_mac_256; union authctx { MD5_CTX md5ctx; @@ -95,6 +99,7 @@ union authctx { SHA384_CTX sha384ctx; SHA512_CTX sha512ctx; struct aes_gmac_ctx aes_gmac_ctx; + struct aes_cbc_mac_ctx aes_cbc_mac_ctx; }; #endif /* _CRYPTO_XFORM_AUTH_H_ */ Modified: head/sys/opencrypto/xform_enc.h ============================================================================== --- head/sys/opencrypto/xform_enc.h Fri Feb 15 03:46:39 2019 (r344140) +++ head/sys/opencrypto/xform_enc.h Fri Feb 15 03:53:03 2019 (r344141) @@ -84,6 +84,7 @@ extern struct enc_xform enc_xform_aes_xts; extern struct enc_xform enc_xform_arc4; extern struct enc_xform enc_xform_camellia; extern struct enc_xform enc_xform_chacha20; +extern struct enc_xform enc_xform_ccm; struct aes_icm_ctx { u_int32_t ac_ek[4*(RIJNDAEL_MAXNR + 1)]; Modified: head/tools/tools/crypto/cryptocheck.c ============================================================================== --- head/tools/tools/crypto/cryptocheck.c Fri Feb 15 03:46:39 2019 (r344140) +++ head/tools/tools/crypto/cryptocheck.c Fri Feb 15 03:53:03 2019 (r344141) @@ -105,6 +105,9 @@ * aes-gcm 128-bit aes gcm * aes-gcm192 192-bit aes gcm * aes-gcm256 256-bit aes gcm + * aes-ccm 128-bit aes ccm + * aes-ccm192 192-bit aes ccm + * aes-ccm256 256-bit aes ccm */ #include @@ -131,7 +134,7 @@ struct alg { const char *name; int cipher; int mac; - enum { T_HASH, T_HMAC, T_BLKCIPHER, T_AUTHENC, T_GCM } type; + enum { T_HASH, T_HMAC, T_BLKCIPHER, T_AUTHENC, T_GCM, T_CCM } type; const EVP_CIPHER *(*evp_cipher)(void); const EVP_MD *(*evp_md)(void); } algs[] = { @@ -186,6 +189,15 @@ struct alg { { .name = "aes-gcm256", .cipher = CRYPTO_AES_NIST_GCM_16, .mac = CRYPTO_AES_256_NIST_GMAC, .type = T_GCM, .evp_cipher = EVP_aes_256_gcm }, + { .name = "aes-ccm", .cipher = CRYPTO_AES_CCM_16, + .mac = CRYPTO_AES_CCM_CBC_MAC, .type = T_CCM, + .evp_cipher = EVP_aes_128_ccm }, + { .name = "aes-ccm192", .cipher = CRYPTO_AES_CCM_16, + .mac = CRYPTO_AES_CCM_CBC_MAC, .type = T_CCM, + .evp_cipher = EVP_aes_192_ccm }, + { .name = "aes-ccm256", .cipher = CRYPTO_AES_CCM_16, + .mac = CRYPTO_AES_CCM_CBC_MAC, .type = T_CCM, + .evp_cipher = EVP_aes_256_ccm }, }; static bool verbose; @@ -1159,6 +1171,214 @@ out: } static void +openssl_ccm_encrypt(struct alg *alg, const EVP_CIPHER *cipher, const char *key, + const char *iv, size_t iv_len, const char *aad, size_t aad_len, + const char *input, char *output, size_t size, char *tag) +{ + EVP_CIPHER_CTX *ctx; + int outl, total; + + ctx = EVP_CIPHER_CTX_new(); + if (ctx == NULL) + errx(1, "OpenSSL %s (%zu) ctx new failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + if (EVP_EncryptInit_ex(ctx, cipher, NULL, NULL, NULL) != 1) + errx(1, "OpenSSL %s (%zu) ctx init failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + if (EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_CCM_SET_TAG, AES_CBC_MAC_HASH_LEN, NULL) != 1) + errx(1, "OpenSSL %s (%zu) setting tag length failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + if (EVP_EncryptInit_ex(ctx, NULL, NULL, (const u_char *)key, + (const u_char *)iv) != 1) + errx(1, "OpenSSL %s (%zu) ctx init failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + if (EVP_EncryptUpdate(ctx, NULL, &outl, NULL, size) != 1) + errx(1, "OpenSSL %s (%zu) unable to set data length: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + + if (aad != NULL) { + if (EVP_EncryptUpdate(ctx, NULL, &outl, (const u_char *)aad, + aad_len) != 1) + errx(1, "OpenSSL %s (%zu) aad update failed: %s", + alg->name, size, + ERR_error_string(ERR_get_error(), NULL)); + } + if (EVP_EncryptUpdate(ctx, (u_char *)output, &outl, + (const u_char *)input, size) != 1) + errx(1, "OpenSSL %s (%zu) encrypt update failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + total = outl; + if (EVP_EncryptFinal_ex(ctx, (u_char *)output + outl, &outl) != 1) + errx(1, "OpenSSL %s (%zu) encrypt final failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + total += outl; + if (total != size) + errx(1, "OpenSSL %s (%zu) encrypt size mismatch: %d", alg->name, + size, total); + if (EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_CCM_GET_TAG, AES_CBC_MAC_HASH_LEN, + tag) != 1) + errx(1, "OpenSSL %s (%zu) get tag failed: %s", alg->name, + size, ERR_error_string(ERR_get_error(), NULL)); + EVP_CIPHER_CTX_free(ctx); +} + +static bool +ocf_ccm(struct alg *alg, const char *key, size_t key_len, const char *iv, + size_t iv_len, const char *aad, size_t aad_len, const char *input, + char *output, size_t size, char *tag, int enc, int *cridp) +{ + struct session2_op sop; + struct crypt_aead caead; + int fd; + bool rv; + + memset(&sop, 0, sizeof(sop)); + memset(&caead, 0, sizeof(caead)); + sop.crid = crid; + sop.keylen = key_len; + sop.key = (char *)key; + sop.cipher = alg->cipher; + sop.mackeylen = key_len; + sop.mackey = (char *)key; + sop.mac = alg->mac; + fd = crget(); + if (ioctl(fd, CIOCGSESSION2, &sop) < 0) { + warn("cryptodev %s not supported for device %s", + alg->name, crfind(crid)); + close(fd); + return (false); + } + + caead.ses = sop.ses; + caead.op = enc ? COP_ENCRYPT : COP_DECRYPT; + caead.len = size; + caead.aadlen = aad_len; + caead.ivlen = iv_len; + caead.src = (char *)input; + caead.dst = output; + caead.aad = (char *)aad; + caead.tag = tag; + caead.iv = (char *)iv; + + if (ioctl(fd, CIOCCRYPTAEAD, &caead) < 0) { + warn("cryptodev %s (%zu) failed for device %s", + alg->name, size, crfind(crid)); + rv = false; + } else + rv = true; + + if (ioctl(fd, CIOCFSESSION, &sop.ses) < 0) + warn("ioctl(CIOCFSESSION)"); + + close(fd); + *cridp = sop.crid; + return (rv); +} + +static void +run_ccm_test(struct alg *alg, size_t size) +{ + const EVP_CIPHER *cipher; + char *aad, *buffer, *cleartext, *ciphertext; + char *iv, *key; + u_int iv_len, key_len; + int crid; + char control_tag[AES_CBC_MAC_HASH_LEN], test_tag[AES_CBC_MAC_HASH_LEN]; + + cipher = alg->evp_cipher(); + if (size % EVP_CIPHER_block_size(cipher) != 0) { + if (verbose) + printf( + "%s (%zu): invalid buffer size (block size %d)\n", + alg->name, size, EVP_CIPHER_block_size(cipher)); + return; + } + + memset(control_tag, 0x3c, sizeof(control_tag)); + memset(test_tag, 0x3c, sizeof(test_tag)); + + /* + * We only have one algorithm constant for CBC-MAC; however, the + * alg structure uses the different openssl types, which gives us + * the key length. We need that for the OCF code. + */ + key_len = EVP_CIPHER_key_length(cipher); + + /* + * AES-CCM can have varying IV lengths; however, for the moment + * we only support AES_CCM_IV_LEN (12). So if the sizes are + * different, we'll fail. + */ + iv_len = EVP_CIPHER_iv_length(cipher); + if (iv_len != AES_CCM_IV_LEN) { + if (verbose) + printf("OpenSSL CCM IV length (%d) != AES_CCM_IV_LEN", + iv_len); + return; + } + + key = alloc_buffer(key_len); + iv = generate_iv(iv_len, alg); + cleartext = alloc_buffer(size); + buffer = malloc(size); + ciphertext = malloc(size); + if (aad_len != 0) + aad = alloc_buffer(aad_len); + else + aad = NULL; + + /* OpenSSL encrypt */ + openssl_ccm_encrypt(alg, cipher, key, iv, iv_len, aad, aad_len, cleartext, + ciphertext, size, control_tag); + + /* OCF encrypt */ + if (!ocf_ccm(alg, key, key_len, iv, iv_len, aad, aad_len, cleartext, + buffer, size, test_tag, 1, &crid)) + goto out; + if (memcmp(ciphertext, buffer, size) != 0) { + printf("%s (%zu) encryption mismatch:\n", alg->name, size); + printf("control:\n"); + hexdump(ciphertext, size, NULL, 0); + printf("test (cryptodev device %s):\n", crfind(crid)); + hexdump(buffer, size, NULL, 0); + goto out; + } + if (memcmp(control_tag, test_tag, sizeof(control_tag)) != 0) { + printf("%s (%zu) enc tag mismatch:\n", alg->name, size); + printf("control:\n"); + hexdump(control_tag, sizeof(control_tag), NULL, 0); + printf("test (cryptodev device %s):\n", crfind(crid)); + hexdump(test_tag, sizeof(test_tag), NULL, 0); + goto out; + } + + /* OCF decrypt */ + if (!ocf_ccm(alg, key, key_len, iv, iv_len, aad, aad_len, ciphertext, + buffer, size, control_tag, 0, &crid)) + goto out; + if (memcmp(cleartext, buffer, size) != 0) { + printf("%s (%zu) decryption mismatch:\n", alg->name, size); + printf("control:\n"); + hexdump(cleartext, size, NULL, 0); + printf("test (cryptodev device %s):\n", crfind(crid)); + hexdump(buffer, size, NULL, 0); + goto out; + } + + if (verbose) + printf("%s (%zu) matched (cryptodev device %s)\n", + alg->name, size, crfind(crid)); + +out: + free(aad); + free(ciphertext); + free(buffer); + free(cleartext); + free(iv); + free(key); +} + +static void run_test(struct alg *alg, size_t size) { @@ -1178,6 +1398,9 @@ run_test(struct alg *alg, size_t size) case T_GCM: run_gcm_test(alg, size); break; + case T_CCM: + run_ccm_test(alg, size); + break; } } @@ -1247,7 +1470,8 @@ run_aead_tests(size_t *sizes, u_int nsizes) u_int i; for (i = 0; i < nitems(algs); i++) - if (algs[i].type == T_GCM) + if (algs[i].type == T_GCM || + algs[i].type == T_CCM) run_test_sizes(&algs[i], sizes, nsizes); } From owner-svn-src-all@freebsd.org Fri Feb 15 04:02:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8C86C14EDE3A; Fri, 15 Feb 2019 04:02:00 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 30476750EC; Fri, 15 Feb 2019 04:02:00 +0000 (UTC) (envelope-from sef@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 24C771933F; Fri, 15 Feb 2019 04:02:00 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F4207d019767; Fri, 15 Feb 2019 04:02:00 GMT (envelope-from sef@FreeBSD.org) Received: (from sef@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F420a9019762; Fri, 15 Feb 2019 04:02:00 GMT (envelope-from sef@FreeBSD.org) Message-Id: <201902150402.x1F420a9019762@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sef set sender to sef@FreeBSD.org using -f From: Sean Eric Fagan Date: Fri, 15 Feb 2019 04:02:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344142 - head/sys/opencrypto X-SVN-Group: head X-SVN-Commit-Author: sef X-SVN-Commit-Paths: head/sys/opencrypto X-SVN-Commit-Revision: 344142 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 30476750EC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 04:02:00 -0000 Author: sef Date: Fri Feb 15 04:01:59 2019 New Revision: 344142 URL: https://svnweb.freebsd.org/changeset/base/344142 Log: Pasting in a source control line missed the last quote. Fixed. Modified: head/sys/opencrypto/cbc_mac.c Modified: head/sys/opencrypto/cbc_mac.c ============================================================================== --- head/sys/opencrypto/cbc_mac.c Fri Feb 15 03:53:03 2019 (r344141) +++ head/sys/opencrypto/cbc_mac.c Fri Feb 15 04:01:59 2019 (r344142) @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD$); +__FBSDID("$FreeBSD$"); #include #include From owner-svn-src-all@freebsd.org Fri Feb 15 04:15:44 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 666E814EE4B2; Fri, 15 Feb 2019 04:15:44 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 04566757CB; Fri, 15 Feb 2019 04:15:44 +0000 (UTC) (envelope-from sef@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ECA391952F; Fri, 15 Feb 2019 04:15:43 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F4FhA7028975; Fri, 15 Feb 2019 04:15:43 GMT (envelope-from sef@FreeBSD.org) Received: (from sef@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F4FhPx028974; Fri, 15 Feb 2019 04:15:43 GMT (envelope-from sef@FreeBSD.org) Message-Id: <201902150415.x1F4FhPx028974@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sef set sender to sef@FreeBSD.org using -f From: Sean Eric Fagan Date: Fri, 15 Feb 2019 04:15:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344143 - head/sys/opencrypto X-SVN-Group: head X-SVN-Commit-Author: sef X-SVN-Commit-Paths: head/sys/opencrypto X-SVN-Commit-Revision: 344143 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 04566757CB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 04:15:44 -0000 Author: sef Date: Fri Feb 15 04:15:43 2019 New Revision: 344143 URL: https://svnweb.freebsd.org/changeset/base/344143 Log: Fix another issue from r344141, having to do with size of a shift amount. This did not show up in my testing. Differential Revision: https://reviews.freebsd.org/D18592 Modified: head/sys/opencrypto/cbc_mac.c Modified: head/sys/opencrypto/cbc_mac.c ============================================================================== --- head/sys/opencrypto/cbc_mac.c Fri Feb 15 04:01:59 2019 (r344142) +++ head/sys/opencrypto/cbc_mac.c Fri Feb 15 04:15:43 2019 (r344143) @@ -128,7 +128,7 @@ AES_CBC_MAC_Reinit(struct aes_cbc_mac_ctx *ctx, const uint16_t sizeVal = htobe16(ctx->authDataLength); bcopy(&sizeVal, ctx->staging_block, sizeof(sizeVal)); ctx->blockIndex = sizeof(sizeVal); - } else if (ctx->authDataLength < (1UL<<32)) { + } else if (ctx->authDataLength < (1ULL<<32)) { uint32_t sizeVal = htobe32(ctx->authDataLength); ctx->staging_block[0] = 0xff; ctx->staging_block[1] = 0xfe; From owner-svn-src-all@freebsd.org Fri Feb 15 07:13:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8D24914F1F45; Fri, 15 Feb 2019 07:13:36 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id D8F77821B5; Fri, 15 Feb 2019 07:13:35 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id 75AB710550F7; Fri, 15 Feb 2019 18:13:26 +1100 (AEDT) Date: Fri, 15 Feb 2019 18:13:24 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Gleb Smirnoff cc: Justin Hibbits , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm In-Reply-To: <20190214233410.GJ83215@FreeBSD.org> Message-ID: <20190215162826.Q1105@besplex.bde.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214233410.GJ83215@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=FNpr/6gs c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=nqnIfDeU5hiArQiILCYA:9 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: D8F77821B5 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 07:13:36 -0000 On Thu, 14 Feb 2019, Gleb Smirnoff wrote: > On Wed, Feb 13, 2019 at 07:24:50PM -0600, Justin Hibbits wrote: > J> This seems to break 32-bit platforms, or at least 32-bit book-e > J> powerpc, which has a limited KVA space (~500MB). It preallocates I've > J> seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, > J> leaving very little left for the rest of runtime. > J> > J> I spent a couple hours earlier today debugging with Mark Johnston, and > J> his consensus is that the vnode_pbuf_zone is too big on 32-bit > J> platforms. Unfortunately I know very little about this area, so can't > J> provide much extra insight, but can readily reproduce the issues I see > J> triggered by this change, so am willing to help where I can. > > Ok, let's roll back to old default on 32-bit platforms and somewhat > reduce the default on 64-bits. This reduces the largest allocation by a factor of 16 on 32-bit arches, (back to where it was), but it leves the other allocations unchanged, so the total allocation is still almost 5 times larger than before (down from 20 times larger). E.g., with the usual limit of 256 on nswbuf, the total allocation was 32MB with overcommit by a factor of about 5/2 on all systems, but it is now almost 80MB with no overcommit on 32-bit systems. Approximately 0MB of the extras are available on systems with 1GB kva, and less on systems with 512MB kva. > Can you please confirm that the patch attached works for you? I don't have any systems affected by the bug, except when I boot with small hw.physmem or large kmem to test things. hw.physmem=72m leaves about 2MB afailable to map into buffers, and doesn't properly reduce nswbuf, so almost 80MB of kva is still used for pbufs. Allocating these must fail due to the RAM shortage. The old value of 32MB gives much the same failures (in practice, a larger operation like fork or exec tends to fail first). Limiting available kva is more interesting, and I haven't tested reducing it intentionally, except once I expanded kmem a lot to put a maximal md malloc()-backed disk in it). Expanding kmem steals from residual kva, and residual kva is not properly scaled except in my version. Large allocations then to cause panics at boot time, except for ones that crash because they don't check for errors. Here is debugging output for large allocations (1MB or more) at boot time on i386: XX pae_mode=0 with ~2.7 GB mapped RAM: XX kva_alloc: large allocation: 7490 pages: 0x5800000[0x1d42000] vm radix XX kva_alloc: large allocation: 6164 pages: 0x8400000[0x1814000] pmap init XX kva_alloc: large allocation: 28876 pages: 0xa000000[0x70cc000] buf XX kmem_suballoc: large allocation: 1364 pages: 0x11400000[0x554000] exec XX kmem_suballoc: large allocation: 10986 pages: 0x11954000[0x2aea000] pipe XX kva_alloc: large allocation: 6656 pages: 0x14800000[0x1a00000] sfbuf It went far above the old size of 1GB to nearly 1.5GB, but there is plenty to spare out of 4GB. Versions that fitted in 1GB started these allocations about 256MB lower and were otherwise similar. XX pae_mode=1 with 16 GB mapped RAM: XX kva_alloc: large allocation: 43832 pages: 0x14e00000[0xab38000] vm radix XX kva_alloc: large allocation: 15668 pages: 0x20000000[0x3d34000] pmap init XX kva_alloc: large allocation: 28876 pages: 0x23e00000[0x70cc000] buf XX kmem_suballoc: large allocation: 1364 pages: 0x2b000000[0x554000] exec XX kmem_suballoc: large allocation: 16320 pages: 0x2b554000[0x3fc0000] pipe XX kva_alloc: large allocation: 6656 pages: 0x2f600000[0x1a00000] sfbuf Only the vm radix and pmap init allocations are different, and they start much higher. The allocations now go over 3GB without any useful expansion except for the page tables. PAE was didn't work with 16 GB RAM and 1 GB kva, except in my version. PAE needed to be configured with 2 GB of kva to work with 16 GB RAM, but that was not the default or clearly documented. XX old PAE fixed fit work with 16GB RAM in 1GB KVA: XX kva_alloc: large allocation: 15691 pages: 0xd2c00000[0x3d4b000] pmap init XX kva_alloc: large allocation: 43917 pages: 0xd6a00000[0xab8d000] vm radix XX kva_alloc: large allocation: 27300 pages: 0xe1600000[0x6aa4000] buf XX kmem_suballoc: large allocation: 1364 pages: 0xe8200000[0x554000] exec XX kmem_suballoc: large allocation: 2291 pages: 0xe8754000[0x8f3000] pipe XX kva_alloc: large allocation: 6336 pages: 0xe9200000[0x18c0000] sfbuf PAE uses much more kva (almost 256MB extra) before the pmap and radix initializations here too. This is page table metadata before kva allocations are available. The fixes start by keeping track of this amout. It is about 1/16 of the address space for PAE in 1GB, so all later scaling was off by a factor of 16/15 (too high), and since there was less than 1/16 of 1GB to spare, PAE didn't fit. Only 'pipe' is reduced significantly to fit. swzone is reduced to 1 page in all cases, so it doesn't show here. It is about the same as sfbuf IIRC. The fixes were developed before reducing swzone and needed to squeeze harder to fit. Otherwise, panics tended to occur in the swzone allocation. sfbuf is the most mis-scaled and must be reduced significantly when RAM is small, and could be reduced under kva pressure too. It was the hardest to debug since it doesn't check for allocation failures. The above leaves more than 256MB at the end. This is mostly reserved for kmem. kmem ends up at about 200MB (down from 341MB). XX old non-PAE with fixes needed for old PAE, ~2.7 GB RAM in 1GB KVA: XX kva_alloc: large allocation: 7517 pages: 0xc4c00000[0x1d5d000] pmap init XX kva_alloc: large allocation: 6164 pages: 0xc7000000[0x1814000] vm radix XX kva_alloc: large allocation: 42848 pages: 0xc8c00000[0xa760000] buf XX kmem_suballoc: large allocation: 1364 pages: 0xd3400000[0x554000] exec XX kmem_suballoc: large allocation: 4120 pages: 0xd3954000[0x1018000] pipe XX kva_alloc: large allocation: 6656 pages: 0xd5000000[0x1a00000] sfbuf Since pmap starts almost 256MB lower and the pmap radix allocations are naturally much smaller, and I still shrink 'pipe', there is plenty of space for useful expansion. I only expand 'buf' back to a value that gives the historical maxufspace, and kmem a lot, and vnode space in kmem a lot. The space at the end is about 700MB. kmem is 527MB (up from 341MB). Back to -current. The 128KB allocations go somewhere in gaps between the reported allocations (left by smaller aligned uma allocations?), then at the end. dmesg is not spammed by printing such small allocations, but combined they are 279MB without this patch. pbuf_prealloc() is called towards the end of the boot, long after all the allocations reported above. It uses space that is supposed to be reserved for kmem when kva is small. It allocates many buffers (perhaps 100) in gaps before starting a contiguous range of allocations at the end. Using the gaps is good for minimizing fragmentation provided these buffers are never freed. Bruce From owner-svn-src-all@freebsd.org Fri Feb 15 07:16:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0216A14F1FF8; Fri, 15 Feb 2019 07:16:05 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9D08382330; Fri, 15 Feb 2019 07:16:04 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1033) id 6B5511A4B6; Fri, 15 Feb 2019 07:16:04 +0000 (UTC) Date: Fri, 15 Feb 2019 07:16:04 +0000 From: Alexey Dokuchaev To: Konstantin Belousov Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344118 - head/sys/i386/include Message-ID: <20190215071604.GA89653@FreeBSD.org> References: <201902141353.x1EDrB0Z076223@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201902141353.x1EDrB0Z076223@repo.freebsd.org> User-Agent: Mutt/1.10.1 (2018-07-13) X-Rspamd-Queue-Id: 9D08382330 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.93 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.93)[-0.934,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 07:16:05 -0000 On Thu, Feb 14, 2019 at 01:53:11PM +0000, Konstantin Belousov wrote: > New Revision: 344118 > URL: https://svnweb.freebsd.org/changeset/base/344118 > > Log: > Provide userspace versions of do_cpuid() and cpuid_count() on i386. > > Some older compilers, when generating PIC code, cannot handle inline > asm that clobbers %ebx (because %ebx is used as the GOT offset > register). Userspace versions avoid clobbering %ebx by saving it to > stack before executing the CPUID instruction. > > ... > +static __inline void > +do_cpuid(u_int ax, u_int *p) > +{ > + __asm __volatile( > + "pushl\t%%ebx\n\t" > + "cpuid\n\t" > + "movl\t%%ebx,%1\n\t" > + "popl\t%%ebx" Is there a reason to prefer pushl+movl+popl instead of movl+xchgl? "movl %%ebx, %1\n\t" "cpuid\n\t" "xchgl %%ebx, %1" ./danfe From owner-svn-src-all@freebsd.org Fri Feb 15 07:53:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EC46C14F33CC; Fri, 15 Feb 2019 07:53:56 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail106.syd.optusnet.com.au (mail106.syd.optusnet.com.au [211.29.132.42]) by mx1.freebsd.org (Postfix) with ESMTP id 45607839B8; Fri, 15 Feb 2019 07:53:55 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail106.syd.optusnet.com.au (Postfix) with ESMTPS id 532643D4313; Fri, 15 Feb 2019 18:53:53 +1100 (AEDT) Date: Fri, 15 Feb 2019 18:53:52 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Mark Johnston cc: Justin Hibbits , Gleb Smirnoff , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm In-Reply-To: <20190214161153.GA50900@raichu> Message-ID: <20190215182303.A1446@besplex.bde.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214153345.C1404@besplex.bde.org> <20190214161153.GA50900@raichu> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=P6RKvmIu c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=iUrt-v8bpbI0hJeD-q4A:9 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 45607839B8 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 07:53:57 -0000 On Thu, 14 Feb 2019, Mark Johnston wrote: > On Thu, Feb 14, 2019 at 06:56:42PM +1100, Bruce Evans wrote: >* ... >> The only relevant commit between the good and bad versions seems to be >> r343453. This fixes uma_prealloc() to actually work. But it is a feature >> for it to not work when its caller asks for too much. > > I guess you meant r343353. In any case, the pbuf keg is _NOFREE, so > even without preallocation the large pbuf zone limits may become > problematic if there are bursts of allocation requests. Oops. >* ... >> I don't understand how pbuf_preallocate() allocates for the other >> pbuf pools. When I debugged this for clpbufs, the preallocation was >> not used. pbuf types other than clpbufs seem to be unused in my >> configurations. I thought that pbufs were used during initialization, >> since they end up with a nonzero FREE count, but their only use seems >> to be to preallocate them. > > All of the pbuf zones share a common slab allocator. The zones have > individual limits but can tap in to the shared preallocation. It seems to be working as intended now (except the allocation count is 3 higher than expected): XX ITEM SIZE LIMIT USED FREE REQ FAIL SLEEP XX XX swrbuf: 336, 128, 0, 0, 0, 0, 0 XX swwbuf: 336, 64, 0, 0, 0, 0, 0 XX nfspbuf: 336, 128, 0, 0, 0, 0, 0 XX mdpbuf: 336, 25, 0, 0, 0, 0, 0 XX clpbuf: 336, 128, 0, 35, 2918, 0, 0 XX vnpbuf: 336, 2048, 0, 0, 0, 0, 0 XX pbuf: 336, 16, 0, 2505, 0, 0, 0 pbuf should har 2537 preallocated and FREE initially, but seems to actually have 2540. pbufs were only used for clustering, and 35 of them were moved from pbuf to clpbuf. In the buggy version, the preallocations stopped after 4. Then clustering presumably moved these 4 to clpbuf. After that, clustering presumably used non-preallocated buffers until it reached its limit, and then recycled its own buffers. What should happen to recover the old overcommit behaviour with better debugging is 256 preallocated buffers (a few more for large systems) in pbuf and moving these to other pools, but never allocating from other pools (keep buffers in other pools only as an optimization and release them to the main pool under pressure). Also allow dynamic tuning of the pool[s] size[s]. The vnode cache does essentially this by using 1 overcommitted pool with unlimited size in uma and external management of the size. The separate pools correspond to separate file systems. These are too hard to manage, so the vnode cache throws everything into the main pool and depends on locality for the overcommit to not be too large. Bruce From owner-svn-src-all@freebsd.org Fri Feb 15 09:20:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 224B914D144E; Fri, 15 Feb 2019 09:20:11 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B4C4987067; Fri, 15 Feb 2019 09:20:10 +0000 (UTC) (envelope-from hselasky@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A79DA1C852; Fri, 15 Feb 2019 09:20:10 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F9KAQZ086674; Fri, 15 Feb 2019 09:20:10 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F9KA9V086673; Fri, 15 Feb 2019 09:20:10 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201902150920.x1F9KA9V086673@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 15 Feb 2019 09:20:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344144 - stable/12/usr.sbin/bluetooth/sdpd X-SVN-Group: stable-12 X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: stable/12/usr.sbin/bluetooth/sdpd X-SVN-Commit-Revision: 344144 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: B4C4987067 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 09:20:11 -0000 Author: hselasky Date: Fri Feb 15 09:20:10 2019 New Revision: 344144 URL: https://svnweb.freebsd.org/changeset/base/344144 Log: MFC r343905: Improve Bluetooth device discovery support for Android and Microsoft devices. Tested using the virtual_bt_speaker(8) tool from the virtual_oss(8) project at github.com. PR: 210089 Sponsored by: Mellanox Technologies Modified: stable/12/usr.sbin/bluetooth/sdpd/ssar.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/bluetooth/sdpd/ssar.c ============================================================================== --- stable/12/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 04:15:43 2019 (r344143) +++ stable/12/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:20:10 2019 (r344144) @@ -47,6 +47,131 @@ int32_t server_prepare_attr_list(provider_p const prov uint8_t *rsp, uint8_t const * const rsp_end); /* + * Scan an attribute for matching UUID. + */ +static int +server_search_uuid_sub(uint8_t *buf, uint8_t const * const eob, const uint128_t *uuid) +{ + int128_t duuid; + uint32_t value; + uint8_t type; + + while (buf < eob) { + + SDP_GET8(type, buf); + + switch (type) { + case SDP_DATA_UUID16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[0] = value >> 24 & 0xff; + duuid.b[1] = value >> 16 & 0xff; + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID128: + if (buf + 16 > eob) + continue; + SDP_GET_UUID128(&duuid, buf); + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UINT8: + case SDP_DATA_INT8: + case SDP_DATA_SEQ8: + buf++; + break; + case SDP_DATA_UINT16: + case SDP_DATA_INT16: + case SDP_DATA_SEQ16: + buf += 2; + break; + case SDP_DATA_UINT32: + case SDP_DATA_INT32: + case SDP_DATA_SEQ32: + buf += 4; + break; + case SDP_DATA_UINT64: + case SDP_DATA_INT64: + buf += 8; + break; + case SDP_DATA_UINT128: + case SDP_DATA_INT128: + buf += 16; + break; + case SDP_DATA_STR8: + if (buf + 1 > eob) + continue; + SDP_GET8(value, buf); + buf += value; + break; + case SDP_DATA_STR16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_STR32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_BOOL: + buf += 1; + break; + default: + return (1); + } + } + return (1); +} + +/* + * Search a provider for matching UUID in its attributes. + */ +static int +server_search_uuid(provider_p const provider, const uint128_t *uuid) +{ + uint8_t buffer[256]; + const attr_t *attr; + int len; + + for (attr = provider->profile->attrs; attr->create != NULL; attr++) { + + len = attr->create(buffer, buffer + sizeof(buffer), + (const uint8_t *)provider->profile, sizeof(*provider->profile)); + if (len < 0) + continue; + if (server_search_uuid_sub(buffer, buffer + len, uuid) == 0) + return (0); + } + return (1); +} + +/* * Prepare SDP Service Search Attribute Response */ @@ -225,7 +350,8 @@ server_prepare_service_search_attribute_response(serve puuid.b[3] = provider->profile->uuid; if (memcmp(&uuid, &puuid, sizeof(uuid)) != 0 && - memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0) + memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0 && + server_search_uuid(provider, &uuid) != 0) continue; cs = server_prepare_attr_list(provider, From owner-svn-src-all@freebsd.org Fri Feb 15 09:21:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7B0414D1500; Fri, 15 Feb 2019 09:21:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5E60887235; Fri, 15 Feb 2019 09:21:17 +0000 (UTC) (envelope-from hselasky@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 525F51C88B; Fri, 15 Feb 2019 09:21:17 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F9LHCs089832; Fri, 15 Feb 2019 09:21:17 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F9LHq4089831; Fri, 15 Feb 2019 09:21:17 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201902150921.x1F9LHq4089831@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 15 Feb 2019 09:21:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344145 - stable/11/usr.sbin/bluetooth/sdpd X-SVN-Group: stable-11 X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: stable/11/usr.sbin/bluetooth/sdpd X-SVN-Commit-Revision: 344145 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5E60887235 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 09:21:18 -0000 Author: hselasky Date: Fri Feb 15 09:21:16 2019 New Revision: 344145 URL: https://svnweb.freebsd.org/changeset/base/344145 Log: MFC r343905: Improve Bluetooth device discovery support for Android and Microsoft devices. Tested using the virtual_bt_speaker(8) tool from the virtual_oss(8) project at github.com. PR: 210089 Sponsored by: Mellanox Technologies Modified: stable/11/usr.sbin/bluetooth/sdpd/ssar.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/bluetooth/sdpd/ssar.c ============================================================================== --- stable/11/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:20:10 2019 (r344144) +++ stable/11/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:21:16 2019 (r344145) @@ -47,6 +47,131 @@ int32_t server_prepare_attr_list(provider_p const prov uint8_t *rsp, uint8_t const * const rsp_end); /* + * Scan an attribute for matching UUID. + */ +static int +server_search_uuid_sub(uint8_t *buf, uint8_t const * const eob, const uint128_t *uuid) +{ + int128_t duuid; + uint32_t value; + uint8_t type; + + while (buf < eob) { + + SDP_GET8(type, buf); + + switch (type) { + case SDP_DATA_UUID16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[0] = value >> 24 & 0xff; + duuid.b[1] = value >> 16 & 0xff; + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID128: + if (buf + 16 > eob) + continue; + SDP_GET_UUID128(&duuid, buf); + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UINT8: + case SDP_DATA_INT8: + case SDP_DATA_SEQ8: + buf++; + break; + case SDP_DATA_UINT16: + case SDP_DATA_INT16: + case SDP_DATA_SEQ16: + buf += 2; + break; + case SDP_DATA_UINT32: + case SDP_DATA_INT32: + case SDP_DATA_SEQ32: + buf += 4; + break; + case SDP_DATA_UINT64: + case SDP_DATA_INT64: + buf += 8; + break; + case SDP_DATA_UINT128: + case SDP_DATA_INT128: + buf += 16; + break; + case SDP_DATA_STR8: + if (buf + 1 > eob) + continue; + SDP_GET8(value, buf); + buf += value; + break; + case SDP_DATA_STR16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_STR32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_BOOL: + buf += 1; + break; + default: + return (1); + } + } + return (1); +} + +/* + * Search a provider for matching UUID in its attributes. + */ +static int +server_search_uuid(provider_p const provider, const uint128_t *uuid) +{ + uint8_t buffer[256]; + const attr_t *attr; + int len; + + for (attr = provider->profile->attrs; attr->create != NULL; attr++) { + + len = attr->create(buffer, buffer + sizeof(buffer), + (const uint8_t *)provider->profile, sizeof(*provider->profile)); + if (len < 0) + continue; + if (server_search_uuid_sub(buffer, buffer + len, uuid) == 0) + return (0); + } + return (1); +} + +/* * Prepare SDP Service Search Attribute Response */ @@ -225,7 +350,8 @@ server_prepare_service_search_attribute_response(serve puuid.b[3] = provider->profile->uuid; if (memcmp(&uuid, &puuid, sizeof(uuid)) != 0 && - memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0) + memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0 && + server_search_uuid(provider, &uuid) != 0) continue; cs = server_prepare_attr_list(provider, From owner-svn-src-all@freebsd.org Fri Feb 15 09:22:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B45614D1752; Fri, 15 Feb 2019 09:22:24 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3E93A8757E; Fri, 15 Feb 2019 09:22:24 +0000 (UTC) (envelope-from hselasky@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 32F801CA1D; Fri, 15 Feb 2019 09:22:24 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F9MOIO091646; Fri, 15 Feb 2019 09:22:24 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F9MO9g091645; Fri, 15 Feb 2019 09:22:24 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201902150922.x1F9MO9g091645@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 15 Feb 2019 09:22:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r344146 - stable/10/usr.sbin/bluetooth/sdpd X-SVN-Group: stable-10 X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: stable/10/usr.sbin/bluetooth/sdpd X-SVN-Commit-Revision: 344146 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3E93A8757E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 09:22:24 -0000 Author: hselasky Date: Fri Feb 15 09:22:23 2019 New Revision: 344146 URL: https://svnweb.freebsd.org/changeset/base/344146 Log: MFC r343905: Improve Bluetooth device discovery support for Android and Microsoft devices. Tested using the virtual_bt_speaker(8) tool from the virtual_oss(8) project at github.com. PR: 210089 Sponsored by: Mellanox Technologies Modified: stable/10/usr.sbin/bluetooth/sdpd/ssar.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/bluetooth/sdpd/ssar.c ============================================================================== --- stable/10/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:21:16 2019 (r344145) +++ stable/10/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:22:23 2019 (r344146) @@ -44,6 +44,131 @@ int32_t server_prepare_attr_list(provider_p const prov uint8_t *rsp, uint8_t const * const rsp_end); /* + * Scan an attribute for matching UUID. + */ +static int +server_search_uuid_sub(uint8_t *buf, uint8_t const * const eob, const uint128_t *uuid) +{ + int128_t duuid; + uint32_t value; + uint8_t type; + + while (buf < eob) { + + SDP_GET8(type, buf); + + switch (type) { + case SDP_DATA_UUID16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[0] = value >> 24 & 0xff; + duuid.b[1] = value >> 16 & 0xff; + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID128: + if (buf + 16 > eob) + continue; + SDP_GET_UUID128(&duuid, buf); + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UINT8: + case SDP_DATA_INT8: + case SDP_DATA_SEQ8: + buf++; + break; + case SDP_DATA_UINT16: + case SDP_DATA_INT16: + case SDP_DATA_SEQ16: + buf += 2; + break; + case SDP_DATA_UINT32: + case SDP_DATA_INT32: + case SDP_DATA_SEQ32: + buf += 4; + break; + case SDP_DATA_UINT64: + case SDP_DATA_INT64: + buf += 8; + break; + case SDP_DATA_UINT128: + case SDP_DATA_INT128: + buf += 16; + break; + case SDP_DATA_STR8: + if (buf + 1 > eob) + continue; + SDP_GET8(value, buf); + buf += value; + break; + case SDP_DATA_STR16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_STR32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_BOOL: + buf += 1; + break; + default: + return (1); + } + } + return (1); +} + +/* + * Search a provider for matching UUID in its attributes. + */ +static int +server_search_uuid(provider_p const provider, const uint128_t *uuid) +{ + uint8_t buffer[256]; + const attr_t *attr; + int len; + + for (attr = provider->profile->attrs; attr->create != NULL; attr++) { + + len = attr->create(buffer, buffer + sizeof(buffer), + (const uint8_t *)provider->profile, sizeof(*provider->profile)); + if (len < 0) + continue; + if (server_search_uuid_sub(buffer, buffer + len, uuid) == 0) + return (0); + } + return (1); +} + +/* * Prepare SDP Service Search Attribute Response */ @@ -222,7 +347,8 @@ server_prepare_service_search_attribute_response(serve puuid.b[3] = provider->profile->uuid; if (memcmp(&uuid, &puuid, sizeof(uuid)) != 0 && - memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0) + memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0 && + server_search_uuid(provider, &uuid) != 0) continue; cs = server_prepare_attr_list(provider, From owner-svn-src-all@freebsd.org Fri Feb 15 09:25:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 71EE914D18C5; Fri, 15 Feb 2019 09:25:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0DD2D877CF; Fri, 15 Feb 2019 09:25:53 +0000 (UTC) (envelope-from hselasky@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D6B371CA32; Fri, 15 Feb 2019 09:25:52 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F9PqgS091850; Fri, 15 Feb 2019 09:25:52 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F9Pqbr091849; Fri, 15 Feb 2019 09:25:52 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201902150925.x1F9Pqbr091849@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 15 Feb 2019 09:25:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r344147 - stable/9/usr.sbin/bluetooth/sdpd X-SVN-Group: stable-9 X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: stable/9/usr.sbin/bluetooth/sdpd X-SVN-Commit-Revision: 344147 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0DD2D877CF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 09:25:53 -0000 Author: hselasky Date: Fri Feb 15 09:25:52 2019 New Revision: 344147 URL: https://svnweb.freebsd.org/changeset/base/344147 Log: MFC r343905: Improve Bluetooth device discovery support for Android and Microsoft devices. Tested using the virtual_bt_speaker(8) tool from the virtual_oss(8) project at github.com. PR: 210089 Sponsored by: Mellanox Technologies Modified: stable/9/usr.sbin/bluetooth/sdpd/ssar.c Directory Properties: stable/9/usr.sbin/ (props changed) stable/9/usr.sbin/bluetooth/sdpd/ (props changed) Modified: stable/9/usr.sbin/bluetooth/sdpd/ssar.c ============================================================================== --- stable/9/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:22:23 2019 (r344146) +++ stable/9/usr.sbin/bluetooth/sdpd/ssar.c Fri Feb 15 09:25:52 2019 (r344147) @@ -44,6 +44,131 @@ int32_t server_prepare_attr_list(provider_p const prov uint8_t *rsp, uint8_t const * const rsp_end); /* + * Scan an attribute for matching UUID. + */ +static int +server_search_uuid_sub(uint8_t *buf, uint8_t const * const eob, const uint128_t *uuid) +{ + int128_t duuid; + uint32_t value; + uint8_t type; + + while (buf < eob) { + + SDP_GET8(type, buf); + + switch (type) { + case SDP_DATA_UUID16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + memcpy(&duuid, &uuid_base, sizeof(duuid)); + duuid.b[0] = value >> 24 & 0xff; + duuid.b[1] = value >> 16 & 0xff; + duuid.b[2] = value >> 8 & 0xff; + duuid.b[3] = value & 0xff; + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UUID128: + if (buf + 16 > eob) + continue; + SDP_GET_UUID128(&duuid, buf); + + if (memcmp(&duuid, uuid, sizeof(duuid)) == 0) + return (0); + break; + case SDP_DATA_UINT8: + case SDP_DATA_INT8: + case SDP_DATA_SEQ8: + buf++; + break; + case SDP_DATA_UINT16: + case SDP_DATA_INT16: + case SDP_DATA_SEQ16: + buf += 2; + break; + case SDP_DATA_UINT32: + case SDP_DATA_INT32: + case SDP_DATA_SEQ32: + buf += 4; + break; + case SDP_DATA_UINT64: + case SDP_DATA_INT64: + buf += 8; + break; + case SDP_DATA_UINT128: + case SDP_DATA_INT128: + buf += 16; + break; + case SDP_DATA_STR8: + if (buf + 1 > eob) + continue; + SDP_GET8(value, buf); + buf += value; + break; + case SDP_DATA_STR16: + if (buf + 2 > eob) + continue; + SDP_GET16(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_STR32: + if (buf + 4 > eob) + continue; + SDP_GET32(value, buf); + if (value > (eob - buf)) + return (1); + buf += value; + break; + case SDP_DATA_BOOL: + buf += 1; + break; + default: + return (1); + } + } + return (1); +} + +/* + * Search a provider for matching UUID in its attributes. + */ +static int +server_search_uuid(provider_p const provider, const uint128_t *uuid) +{ + uint8_t buffer[256]; + const attr_t *attr; + int len; + + for (attr = provider->profile->attrs; attr->create != NULL; attr++) { + + len = attr->create(buffer, buffer + sizeof(buffer), + (const uint8_t *)provider->profile, sizeof(*provider->profile)); + if (len < 0) + continue; + if (server_search_uuid_sub(buffer, buffer + len, uuid) == 0) + return (0); + } + return (1); +} + +/* * Prepare SDP Service Search Attribute Response */ @@ -222,7 +347,8 @@ server_prepare_service_search_attribute_response(serve puuid.b[3] = provider->profile->uuid; if (memcmp(&uuid, &puuid, sizeof(uuid)) != 0 && - memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0) + memcmp(&uuid, &uuid_public_browse_group, sizeof(uuid)) != 0 && + server_search_uuid(provider, &uuid) != 0) continue; cs = server_prepare_attr_list(provider, From owner-svn-src-all@freebsd.org Fri Feb 15 09:45:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7FEAC14D3228; Fri, 15 Feb 2019 09:45:18 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 26174884F8; Fri, 15 Feb 2019 09:45:18 +0000 (UTC) (envelope-from tuexen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1B7CE1CD95; Fri, 15 Feb 2019 09:45:18 +0000 (UTC) (envelope-from tuexen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F9jHSZ002278; Fri, 15 Feb 2019 09:45:17 GMT (envelope-from tuexen@FreeBSD.org) Received: (from tuexen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F9jHY4002277; Fri, 15 Feb 2019 09:45:17 GMT (envelope-from tuexen@FreeBSD.org) Message-Id: <201902150945.x1F9jHY4002277@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tuexen set sender to tuexen@FreeBSD.org using -f From: Michael Tuexen Date: Fri, 15 Feb 2019 09:45:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344148 - head/sys/netinet X-SVN-Group: head X-SVN-Commit-Author: tuexen X-SVN-Commit-Paths: head/sys/netinet X-SVN-Commit-Revision: 344148 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 26174884F8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 09:45:18 -0000 Author: tuexen Date: Fri Feb 15 09:45:17 2019 New Revision: 344148 URL: https://svnweb.freebsd.org/changeset/base/344148 Log: Fix a byte ordering issue for the advertised receiver window in ACK segments sent in TIMEWAIT state, which I introduced in r336937. MFC after: 3 days Sponsored by: Netflix, Inc. Modified: head/sys/netinet/tcp_timewait.c Modified: head/sys/netinet/tcp_timewait.c ============================================================================== --- head/sys/netinet/tcp_timewait.c Fri Feb 15 09:25:52 2019 (r344147) +++ head/sys/netinet/tcp_timewait.c Fri Feb 15 09:45:17 2019 (r344148) @@ -302,7 +302,7 @@ tcp_twstart(struct tcpcb *tp) if (SEQ_GT(tp->rcv_adv, tp->rcv_nxt) && recwin < (tp->rcv_adv - tp->rcv_nxt)) recwin = (tp->rcv_adv - tp->rcv_nxt); - tw->last_win = htons((u_short)(recwin >> tp->rcv_scale)); + tw->last_win = (u_short)(recwin >> tp->rcv_scale); /* * Set t_recent if timestamps are used on the connection. From owner-svn-src-all@freebsd.org Fri Feb 15 09:49:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9D5F114D3369; Fri, 15 Feb 2019 09:49:14 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46F86886D1; Fri, 15 Feb 2019 09:49:14 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 227051CD98; Fri, 15 Feb 2019 09:49:14 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1F9nEJf002502; Fri, 15 Feb 2019 09:49:14 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1F9n9RX002478; Fri, 15 Feb 2019 09:49:09 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902150949.x1F9n9RX002478@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 09:49:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344149 - in stable/12: . share/man/man4 sys/amd64/conf sys/arm64/conf sys/conf sys/dev/ixgbe sys/i386/conf sys/mips/conf sys/modules sys/modules/iflib sys/powerpc/conf sys/powerpc/conf... X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in stable/12: . share/man/man4 sys/amd64/conf sys/arm64/conf sys/conf sys/dev/ixgbe sys/i386/conf sys/mips/conf sys/modules sys/modules/iflib sys/powerpc/conf sys/powerpc/conf/dpaa sys/sparc64/conf X-SVN-Commit-Revision: 344149 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 46F86886D1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 09:49:15 -0000 Author: kib Date: Fri Feb 15 09:49:09 2019 New Revision: 344149 URL: https://svnweb.freebsd.org/changeset/base/344149 Log: MFC r343617, r343618: Make iflib a loadable module. Added: stable/12/sys/modules/iflib/ - copied from r343617, head/sys/modules/iflib/ Modified: stable/12/UPDATING stable/12/share/man/man4/bnxt.4 stable/12/share/man/man4/em.4 stable/12/share/man/man4/iavf.4 stable/12/share/man/man4/ixgbe.4 stable/12/share/man/man4/ixl.4 stable/12/share/man/man4/vmx.4 stable/12/sys/amd64/conf/GENERIC stable/12/sys/arm64/conf/GENERIC stable/12/sys/conf/NOTES stable/12/sys/conf/files stable/12/sys/dev/ixgbe/if_ixv.c stable/12/sys/i386/conf/GENERIC stable/12/sys/mips/conf/OCTEON1 stable/12/sys/mips/conf/std.XLP stable/12/sys/modules/Makefile stable/12/sys/modules/iflib/Makefile stable/12/sys/powerpc/conf/GENERIC64 stable/12/sys/powerpc/conf/MPC85XX stable/12/sys/powerpc/conf/MPC85XXSPE stable/12/sys/powerpc/conf/QORIQ64 stable/12/sys/powerpc/conf/dpaa/DPAA stable/12/sys/sparc64/conf/GENERIC Directory Properties: stable/12/ (props changed) Modified: stable/12/UPDATING ============================================================================== --- stable/12/UPDATING Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/UPDATING Fri Feb 15 09:49:09 2019 (r344149) @@ -16,6 +16,13 @@ from older versions of FreeBSD, try WITHOUT_CLANG and the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. +20190214: + Iflib is no longer unconditionally compiled into the kernel. Drivers + using iflib and statically compiled into the kernel, now require + the 'device iflib' config option. For the same drivers loaded as + modules on kernels not having 'device iflib', the iflib.ko module + is loaded automatically. + 20181228: r342561 modifies the NFSv4 server so that it obeys vfs.nfsd.nfs_privport in the same as it is applied to NFSv2 and 3. This implies that NFSv4 Modified: stable/12/share/man/man4/bnxt.4 ============================================================================== --- stable/12/share/man/man4/bnxt.4 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/share/man/man4/bnxt.4 Fri Feb 15 09:49:09 2019 (r344149) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 20, 2018 +.Dd January 30, 2019 .Dt BNXT 4 .Os .Sh NAME @@ -36,6 +36,7 @@ To compile this driver into the kernel, place the following lines in your kernel configuration file: .Bd -ragged -offset indent +.Cd "device iflib" .Cd "device bnxt" .Ed .Pp Modified: stable/12/share/man/man4/em.4 ============================================================================== --- stable/12/share/man/man4/em.4 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/share/man/man4/em.4 Fri Feb 15 09:49:09 2019 (r344149) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 20, 2018 +.Dd January 30, 2019 .Dt EM 4 .Os .Sh NAME @@ -39,9 +39,10 @@ .Nd "Intel(R) PRO/1000 Gigabit Ethernet adapter driver" .Sh SYNOPSIS To compile this driver into the kernel, -place the following line in your +place the following lines in your kernel configuration file: .Bd -ragged -offset indent +.Cd "device iflib" .Cd "device em" .Ed .Pp Modified: stable/12/share/man/man4/iavf.4 ============================================================================== --- stable/12/share/man/man4/iavf.4 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/share/man/man4/iavf.4 Fri Feb 15 09:49:09 2019 (r344149) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 5, 2018 +.Dd January 30, 2019 .Dt IAVF 4 .Os .Sh NAME @@ -41,6 +41,7 @@ To compile this driver into the kernel, place the following lines in your kernel configuration file: .Bd -ragged -offset indent +.Cd "device iflib" .Cd "device iavf" .Ed .Pp Modified: stable/12/share/man/man4/ixgbe.4 ============================================================================== --- stable/12/share/man/man4/ixgbe.4 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/share/man/man4/ixgbe.4 Fri Feb 15 09:49:09 2019 (r344149) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 19, 2010 +.Dd January 30, 2019 .Dt IXGBE 4 .Os .Sh NAME @@ -39,9 +39,10 @@ .Nd "Intel(R) 10Gb Ethernet driver for the FreeBSD operating system" .Sh SYNOPSIS To compile this driver into the kernel, -place the following line in your +place the following lines in your kernel configuration file: .Bd -ragged -offset indent +.Cd "device iflib" .Cd "device ixgbe" .Ed .Pp Modified: stable/12/share/man/man4/ixl.4 ============================================================================== --- stable/12/share/man/man4/ixl.4 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/share/man/man4/ixl.4 Fri Feb 15 09:49:09 2019 (r344149) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 5, 2018 +.Dd January 30, 2019 .Dt IXL 4 .Os .Sh NAME @@ -41,6 +41,7 @@ To compile this driver into the kernel, place the following lines in your kernel configuration file: .Bd -ragged -offset indent +.Cd "device iflib" .Cd "device ixl" .Ed .Pp Modified: stable/12/share/man/man4/vmx.4 ============================================================================== --- stable/12/share/man/man4/vmx.4 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/share/man/man4/vmx.4 Fri Feb 15 09:49:09 2019 (r344149) @@ -17,7 +17,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 17, 2014 +.Dd January 30, 2019 .Dt VMX 4 .Os .Sh NAME @@ -25,9 +25,10 @@ .Nd VMware VMXNET3 Virtual Interface Controller device .Sh SYNOPSIS To compile this driver into the kernel, -place the following line in your +place the following lines in your kernel configuration file: .Bd -ragged -offset indent +.Cd "device iflib" .Cd "device vmx" .Ed .Pp Modified: stable/12/sys/amd64/conf/GENERIC ============================================================================== --- stable/12/sys/amd64/conf/GENERIC Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/amd64/conf/GENERIC Fri Feb 15 09:49:09 2019 (r344149) @@ -218,14 +218,18 @@ device ppi # Parallel port interface device device puc # Multi I/O cards and multi-channel UARTs -# PCI Ethernet NICs. -device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE -device de # DEC/Intel DC21x4x (``Tulip'') +# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure +device iflib device em # Intel PRO/1000 Gigabit Ethernet Family device ix # Intel PRO/10GbE PCIE PF Ethernet device ixv # Intel PRO/10GbE PCIE VF Ethernet device ixl # Intel 700 Series Physical Function device iavf # Intel Adaptive Virtual Function +device vmx # VMware VMXNET3 Ethernet + +# PCI Ethernet NICs. +device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE +device de # DEC/Intel DC21x4x (``Tulip'') device le # AMD Am7900 LANCE and Am79C9xx PCnet device ti # Alteon Networks Tigon I/II gigabit Ethernet device txp # 3Com 3cR990 (``Typhoon'') @@ -354,9 +358,6 @@ device hyperv # HyperV drivers # NOTE: XENHVM depends on xenpci. They must be added or removed together. options XENHVM # Xen HVM kernel infrastructure device xenpci # Xen HVM Hypervisor services driver - -# VMware support -device vmx # VMware VMXNET3 Ethernet # Netmap provides direct access to TX/RX rings on supported NICs device netmap # netmap(4) support Modified: stable/12/sys/arm64/conf/GENERIC ============================================================================== --- stable/12/sys/arm64/conf/GENERIC Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/arm64/conf/GENERIC Fri Feb 15 09:49:09 2019 (r344149) @@ -125,14 +125,17 @@ device al_pci # Annapurna Alpine PCI-E options PCI_HP # PCI-Express native HotPlug options PCI_IOV # PCI SR-IOV support +# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure +device iflib +device em # Intel PRO/1000 Gigabit Ethernet Family +device ix # Intel 10Gb Ethernet Family + # Ethernet NICs device mdio device mii device miibus # MII bus support device awg # Allwinner EMAC Gigabit Ethernet device axgbe # AMD Opteron A1100 integrated NIC -device em # Intel PRO/1000 Gigabit Ethernet Family -device ix # Intel 10Gb Ethernet Family device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet device neta # Marvell Armada 370/38x/XP/3700 NIC device smc # SMSC LAN91C111 Modified: stable/12/sys/conf/NOTES ============================================================================== --- stable/12/sys/conf/NOTES Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/conf/NOTES Fri Feb 15 09:49:09 2019 (r344149) @@ -2145,15 +2145,18 @@ device vte # DM&P Vortex86 RDC R6040 Fast Ethernet device wb # Winbond W89C840F device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'') +# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure +device iflib +device em # Intel Pro/1000 Gigabit Ethernet +device ix # Intel Pro/10Gbe PCIE Ethernet +device ixv # Intel Pro/10Gbe PCIE Ethernet VF + # PCI Ethernet NICs. device cxgb # Chelsio T3 10 Gigabit Ethernet device cxgb_t3fw # Chelsio T3 10 Gigabit Ethernet firmware device cxgbe # Chelsio T4-T6 1/10/25/40/100 Gigabit Ethernet device cxgbev # Chelsio T4-T6 Virtual Functions device de # DEC/Intel DC21x4x (``Tulip'') -device em # Intel Pro/1000 Gigabit Ethernet -device ix # Intel Pro/10Gbe PCIE Ethernet -device ixv # Intel Pro/10Gbe PCIE Ethernet VF device le # AMD Am7900 LANCE and Am79C9xx PCnet device mxge # Myricom Myri-10G 10GbE NIC device oce # Emulex 10 GbE (OneConnect Ethernet) Modified: stable/12/sys/conf/files ============================================================================== --- stable/12/sys/conf/files Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/conf/files Fri Feb 15 09:49:09 2019 (r344149) @@ -4140,10 +4140,10 @@ net/if_tun.c optional tun net/if_tap.c optional tap net/if_vlan.c optional vlan net/if_vxlan.c optional vxlan inet | vxlan inet6 -net/ifdi_if.m optional ether pci -net/iflib.c optional ether pci -net/iflib_clone.c optional ether pci -net/mp_ring.c optional ether +net/ifdi_if.m optional ether pci iflib +net/iflib.c optional ether pci iflib +net/iflib_clone.c optional ether pci iflib +net/mp_ring.c optional ether iflib net/mppcc.c optional netgraph_mppc_compression net/mppcd.c optional netgraph_mppc_compression net/netisr.c standard Modified: stable/12/sys/dev/ixgbe/if_ixv.c ============================================================================== --- stable/12/sys/dev/ixgbe/if_ixv.c Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/dev/ixgbe/if_ixv.c Fri Feb 15 09:49:09 2019 (r344149) @@ -144,11 +144,9 @@ static driver_t ixv_driver = { devclass_t ixv_devclass; DRIVER_MODULE(ixv, pci, ixv_driver, ixv_devclass, 0, 0); IFLIB_PNP_INFO(pci, ixv_driver, ixv_vendor_info_array); +MODULE_DEPEND(ixv, iflib, 1, 1, 1); MODULE_DEPEND(ixv, pci, 1, 1, 1); MODULE_DEPEND(ixv, ether, 1, 1, 1); -#ifdef DEV_NETMAP -MODULE_DEPEND(ixv, netmap, 1, 1, 1); -#endif /* DEV_NETMAP */ static device_method_t ixv_if_methods[] = { DEVMETHOD(ifdi_attach_pre, ixv_if_attach_pre), Modified: stable/12/sys/i386/conf/GENERIC ============================================================================== --- stable/12/sys/i386/conf/GENERIC Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/i386/conf/GENERIC Fri Feb 15 09:49:09 2019 (r344149) @@ -212,10 +212,14 @@ device ppi # Parallel port interface device device puc # Multi I/O cards and multi-channel UARTs +# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure +device iflib +device em # Intel PRO/1000 Gigabit Ethernet Family +device vmx # VMware VMXNET3 Ethernet + # PCI Ethernet NICs. device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE device de # DEC/Intel DC21x4x (``Tulip'') -device em # Intel PRO/1000 Gigabit Ethernet Family device le # AMD Am7900 LANCE and Am79C9xx PCnet device ti # Alteon Networks Tigon I/II gigabit Ethernet device txp # 3Com 3cR990 (``Typhoon'') @@ -355,9 +359,6 @@ device hyperv # HyperV drivers # NOTE: XENHVM depends on xenpci. They must be added or removed together. options XENHVM # Xen HVM kernel infrastructure device xenpci # Xen HVM Hypervisor services driver - -# VMware support -device vmx # VMware VMXNET3 Ethernet # evdev interface options EVDEV_SUPPORT # evdev support in legacy drivers Modified: stable/12/sys/mips/conf/OCTEON1 ============================================================================== --- stable/12/sys/mips/conf/OCTEON1 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/mips/conf/OCTEON1 Fri Feb 15 09:49:09 2019 (r344149) @@ -188,6 +188,8 @@ device octm # physical port, but may eventually provide support for DSA or similar instead. #device mv88e61xxphy # Marvell 88E61XX +device iflib + # PCI Ethernet NICs. device de # DEC/Intel DC21x4x (``Tulip'') device em # Intel PRO/1000 Gigabit Ethernet Family Modified: stable/12/sys/mips/conf/std.XLP ============================================================================== --- stable/12/sys/mips/conf/std.XLP Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/mips/conf/std.XLP Fri Feb 15 09:49:09 2019 (r344149) @@ -75,6 +75,7 @@ device ether device xlpge #device re device msk +device iflib device em # Disks Modified: stable/12/sys/modules/Makefile ============================================================================== --- stable/12/sys/modules/Makefile Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/modules/Makefile Fri Feb 15 09:49:09 2019 (r344149) @@ -174,6 +174,7 @@ SUBDIR= \ if_tun \ if_vlan \ if_vxlan \ + iflib \ ${_iir} \ imgact_binmisc \ ${_intelspi} \ Modified: stable/12/sys/modules/iflib/Makefile ============================================================================== --- head/sys/modules/iflib/Makefile Thu Jan 31 19:05:56 2019 (r343617) +++ stable/12/sys/modules/iflib/Makefile Fri Feb 15 09:49:09 2019 (r344149) @@ -8,6 +8,6 @@ SRCS= \ iflib_clone.c \ mp_ring.c SRCS+= ifdi_if.c -SRCS+= device_if.h bus_if.h pci_if.h ifdi_if.h +SRCS+= device_if.h bus_if.h pci_if.h pci_iov_if.h ifdi_if.h .include Modified: stable/12/sys/powerpc/conf/GENERIC64 ============================================================================== --- stable/12/sys/powerpc/conf/GENERIC64 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/powerpc/conf/GENERIC64 Fri Feb 15 09:49:09 2019 (r344149) @@ -141,6 +141,8 @@ device scc device uart device uart_z8530 +device iflib + # Ethernet hardware device em # Intel PRO/1000 Gigabit Ethernet Family device ix # Intel PRO/10GbE PCIE PF Ethernet Family Modified: stable/12/sys/powerpc/conf/MPC85XX ============================================================================== --- stable/12/sys/powerpc/conf/MPC85XX Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/powerpc/conf/MPC85XX Fri Feb 15 09:49:09 2019 (r344149) @@ -74,6 +74,7 @@ device cryptodev device da device ds1307 device ds1553 +device iflib device em device alc device ether Modified: stable/12/sys/powerpc/conf/MPC85XXSPE ============================================================================== --- stable/12/sys/powerpc/conf/MPC85XXSPE Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/powerpc/conf/MPC85XXSPE Fri Feb 15 09:49:09 2019 (r344149) @@ -74,6 +74,7 @@ device cryptodev device da device ds1307 device ds1553 +device iflib device em device alc device ether Modified: stable/12/sys/powerpc/conf/QORIQ64 ============================================================================== --- stable/12/sys/powerpc/conf/QORIQ64 Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/powerpc/conf/QORIQ64 Fri Feb 15 09:49:09 2019 (r344149) @@ -81,6 +81,7 @@ device cryptodev device da device ds1307 device ds1553 +device iflib device em device alc device dpaa Modified: stable/12/sys/powerpc/conf/dpaa/DPAA ============================================================================== --- stable/12/sys/powerpc/conf/dpaa/DPAA Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/powerpc/conf/dpaa/DPAA Fri Feb 15 09:49:09 2019 (r344149) @@ -74,6 +74,7 @@ device sdhci # Network devices device miibus # MII bus support +device iflib device em Modified: stable/12/sys/sparc64/conf/GENERIC ============================================================================== --- stable/12/sys/sparc64/conf/GENERIC Fri Feb 15 09:45:17 2019 (r344148) +++ stable/12/sys/sparc64/conf/GENERIC Fri Feb 15 09:49:09 2019 (r344149) @@ -171,6 +171,8 @@ device uart # Multi-uart driver #device ppi # Parallel port interface device #device vpo # Requires scbus and da +device iflib + # PCI Ethernet NICs. #device de # DEC/Intel DC21x4x (``Tulip'') device em # Intel PRO/1000 adapter Gigabit Ethernet Card From owner-svn-src-all@freebsd.org Fri Feb 15 10:34:28 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9030A14D5035; Fri, 15 Feb 2019 10:34:28 +0000 (UTC) (envelope-from mw@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 33F788A1B9; Fri, 15 Feb 2019 10:34:28 +0000 (UTC) (envelope-from mw@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 298661D612; Fri, 15 Feb 2019 10:34:28 +0000 (UTC) (envelope-from mw@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FAYSGF027991; Fri, 15 Feb 2019 10:34:28 GMT (envelope-from mw@FreeBSD.org) Received: (from mw@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FAYSVU027990; Fri, 15 Feb 2019 10:34:28 GMT (envelope-from mw@FreeBSD.org) Message-Id: <201902151034.x1FAYSVU027990@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mw set sender to mw@FreeBSD.org using -f From: Marcin Wojtas Date: Fri, 15 Feb 2019 10:34:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344150 - head/sys/dev/ena X-SVN-Group: head X-SVN-Commit-Author: mw X-SVN-Commit-Paths: head/sys/dev/ena X-SVN-Commit-Revision: 344150 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 33F788A1B9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 10:34:28 -0000 Author: mw Date: Fri Feb 15 10:34:27 2019 New Revision: 344150 URL: https://svnweb.freebsd.org/changeset/base/344150 Log: Fix validation of the Rx OOO completion in the ENA Requested ID should be validated when the packet is received and not when the driver is repopulating the mbufs. Submitted by: Michal Krawczyk Obtained from: Semihalf Sponsored by: Amazon, Inc. MFC after: 1 week Modified: head/sys/dev/ena/ena.c Modified: head/sys/dev/ena/ena.c ============================================================================== --- head/sys/dev/ena/ena.c Fri Feb 15 09:49:09 2019 (r344149) +++ head/sys/dev/ena/ena.c Fri Feb 15 10:34:27 2019 (r344150) @@ -1046,10 +1046,6 @@ ena_refill_rx_bufs(struct ena_ring *rx_ring, uint32_t "RX buffer - next to use: %d", next_to_use); req_id = rx_ring->free_rx_ids[next_to_use]; - rc = validate_rx_req_id(rx_ring, req_id); - if (unlikely(rc != 0)) - break; - rx_info = &rx_ring->rx_buffer_info[req_id]; rc = ena_alloc_rx_mbuf(adapter, rx_ring, rx_info); @@ -1472,6 +1468,7 @@ ena_rx_mbuf(struct ena_ring *rx_ring, struct ena_com_r struct ena_rx_buffer *rx_info; struct ena_adapter *adapter; unsigned int descs = ena_rx_ctx->descs; + int rc; uint16_t ntc, len, req_id, buf = 0; ntc = *next_to_clean; @@ -1485,6 +1482,10 @@ ena_rx_mbuf(struct ena_ring *rx_ring, struct ena_com_r len = ena_bufs[buf].len; req_id = ena_bufs[buf].req_id; + rc = validate_rx_req_id(rx_ring, req_id); + if (unlikely(rc != 0)) + return (NULL); + rx_info = &rx_ring->rx_buffer_info[req_id]; ena_trace(ENA_DBG | ENA_RXPTH, "rx_info %p, mbuf %p, paddr %jx", @@ -1517,6 +1518,16 @@ ena_rx_mbuf(struct ena_ring *rx_ring, struct ena_com_r ++buf; len = ena_bufs[buf].len; req_id = ena_bufs[buf].req_id; + rc = validate_rx_req_id(rx_ring, req_id); + if (unlikely(rc != 0)) { + /* + * If the req_id is invalid, then the device will be + * reset. In that case we must free all mbufs that + * were already gathered. + */ + m_freem(mbuf); + return (NULL); + } rx_info = &rx_ring->rx_buffer_info[req_id]; if (unlikely(rx_info->mbuf == NULL)) { From owner-svn-src-all@freebsd.org Fri Feb 15 10:37:15 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 45E0514D5194; Fri, 15 Feb 2019 10:37:15 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 41D538A506; Fri, 15 Feb 2019 10:37:14 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x1FAakZI035956 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 15 Feb 2019 12:36:49 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x1FAakZI035956 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x1FAaiUg035955; Fri, 15 Feb 2019 12:36:44 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 15 Feb 2019 12:36:44 +0200 From: Konstantin Belousov To: Alexey Dokuchaev Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344118 - head/sys/i386/include Message-ID: <20190215103644.GN24863@kib.kiev.ua> References: <201902141353.x1EDrB0Z076223@repo.freebsd.org> <20190215071604.GA89653@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190215071604.GA89653@FreeBSD.org> User-Agent: Mutt/1.11.2 (2019-01-07) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 10:37:15 -0000 On Fri, Feb 15, 2019 at 07:16:04AM +0000, Alexey Dokuchaev wrote: > On Thu, Feb 14, 2019 at 01:53:11PM +0000, Konstantin Belousov wrote: > > New Revision: 344118 > > URL: https://svnweb.freebsd.org/changeset/base/344118 > > > > Log: > > Provide userspace versions of do_cpuid() and cpuid_count() on i386. > > > > Some older compilers, when generating PIC code, cannot handle inline > > asm that clobbers %ebx (because %ebx is used as the GOT offset > > register). Userspace versions avoid clobbering %ebx by saving it to > > stack before executing the CPUID instruction. > > > > ... > > +static __inline void > > +do_cpuid(u_int ax, u_int *p) > > +{ > > + __asm __volatile( > > + "pushl\t%%ebx\n\t" > > + "cpuid\n\t" > > + "movl\t%%ebx,%1\n\t" > > + "popl\t%%ebx" > > Is there a reason to prefer pushl+movl+popl instead of movl+xchgl? > > "movl %%ebx, %1\n\t" > "cpuid\n\t" > "xchgl %%ebx, %1" xchgl seems to be slower even in registers format (where no implicit lock is used). If you can demonstrate that your fragment is better in some microbenchmark, I can change it. But also note that its use is not on the critical path. From owner-svn-src-all@freebsd.org Fri Feb 15 10:40:43 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0495614D5523; Fri, 15 Feb 2019 10:40:43 +0000 (UTC) (envelope-from mw@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 989788A86B; Fri, 15 Feb 2019 10:40:42 +0000 (UTC) (envelope-from mw@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8346B1D64A; Fri, 15 Feb 2019 10:40:42 +0000 (UTC) (envelope-from mw@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FAeg67028305; Fri, 15 Feb 2019 10:40:42 GMT (envelope-from mw@FreeBSD.org) Received: (from mw@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FAegKB028303; Fri, 15 Feb 2019 10:40:42 GMT (envelope-from mw@FreeBSD.org) Message-Id: <201902151040.x1FAegKB028303@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mw set sender to mw@FreeBSD.org using -f From: Marcin Wojtas Date: Fri, 15 Feb 2019 10:40:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344151 - head/sys/dev/ena X-SVN-Group: head X-SVN-Commit-Author: mw X-SVN-Commit-Paths: head/sys/dev/ena X-SVN-Commit-Revision: 344151 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 989788A86B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 10:40:43 -0000 Author: mw Date: Fri Feb 15 10:40:41 2019 New Revision: 344151 URL: https://svnweb.freebsd.org/changeset/base/344151 Log: Do not use ntc for obtaining buffer on Rx in the ENA In out of order mode Rx buffer are accesses by req_id. Accessing and validating mbuf using ntc is causing false error. Increase driver revision after latest RX OOO completion fixes. Submitted by: Rafal Kozik Obtained from: Semihalf Sponsored by: Amazon, Inc. MFC after: 1 week Modified: head/sys/dev/ena/ena.c head/sys/dev/ena/ena.h Modified: head/sys/dev/ena/ena.c ============================================================================== --- head/sys/dev/ena/ena.c Fri Feb 15 10:34:27 2019 (r344150) +++ head/sys/dev/ena/ena.c Fri Feb 15 10:40:41 2019 (r344151) @@ -1473,13 +1473,7 @@ ena_rx_mbuf(struct ena_ring *rx_ring, struct ena_com_r ntc = *next_to_clean; adapter = rx_ring->adapter; - rx_info = &rx_ring->rx_buffer_info[ntc]; - if (unlikely(rx_info->mbuf == NULL)) { - device_printf(adapter->pdev, "NULL mbuf in rx_info"); - return (NULL); - } - len = ena_bufs[buf].len; req_id = ena_bufs[buf].req_id; rc = validate_rx_req_id(rx_ring, req_id); @@ -1487,6 +1481,10 @@ ena_rx_mbuf(struct ena_ring *rx_ring, struct ena_com_r return (NULL); rx_info = &rx_ring->rx_buffer_info[req_id]; + if (unlikely(rx_info->mbuf == NULL)) { + device_printf(adapter->pdev, "NULL mbuf in rx_info"); + return (NULL); + } ena_trace(ENA_DBG | ENA_RXPTH, "rx_info %p, mbuf %p, paddr %jx", rx_info, rx_info->mbuf, (uintmax_t)rx_info->ena_buf.paddr); Modified: head/sys/dev/ena/ena.h ============================================================================== --- head/sys/dev/ena/ena.h Fri Feb 15 10:34:27 2019 (r344150) +++ head/sys/dev/ena/ena.h Fri Feb 15 10:40:41 2019 (r344151) @@ -41,7 +41,7 @@ #define DRV_MODULE_VER_MAJOR 0 #define DRV_MODULE_VER_MINOR 8 -#define DRV_MODULE_VER_SUBMINOR 2 +#define DRV_MODULE_VER_SUBMINOR 3 #define DRV_MODULE_NAME "ena" From owner-svn-src-all@freebsd.org Fri Feb 15 11:13:41 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1698014D68C2; Fri, 15 Feb 2019 11:13:41 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A8D0F8BBB3; Fri, 15 Feb 2019 11:13:40 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8C56D1DD05; Fri, 15 Feb 2019 11:13:40 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBDeHl049417; Fri, 15 Feb 2019 11:13:40 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBDdvt049414; Fri, 15 Feb 2019 11:13:39 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151113.x1FBDdvt049414@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:13:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344152 - in stable/12/sys: kern sys X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: in stable/12/sys: kern sys X-SVN-Commit-Revision: 344152 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A8D0F8BBB3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:13:41 -0000 Author: kib Date: Fri Feb 15 11:13:39 2019 New Revision: 344152 URL: https://svnweb.freebsd.org/changeset/base/344152 Log: MFC r343891: Fix renameat(2) for CAPABILITIES kernelsi. MFC Note: Layout of the struct nameidata is changed. I specifically decided to not move the new field to the end of the new structure since it would mostly make the corruption silent. __FreeBSD_version is bumped. Modified: stable/12/sys/kern/vfs_lookup.c stable/12/sys/kern/vfs_syscalls.c stable/12/sys/sys/namei.h stable/12/sys/sys/param.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/vfs_lookup.c ============================================================================== --- stable/12/sys/kern/vfs_lookup.c Fri Feb 15 10:40:41 2019 (r344151) +++ stable/12/sys/kern/vfs_lookup.c Fri Feb 15 11:13:39 2019 (r344152) @@ -388,6 +388,7 @@ namei(struct nameidata *ndp) dp = NULL; cnp->cn_nameptr = cnp->cn_pnbuf; if (cnp->cn_pnbuf[0] == '/') { + ndp->ni_resflags |= NIRES_ABS; error = namei_handle_root(ndp, &dp); } else { if (ndp->ni_startdir != NULL) { @@ -1252,6 +1253,7 @@ NDINIT_ALL(struct nameidata *ndp, u_long op, u_long fl ndp->ni_dirp = namep; ndp->ni_dirfd = dirfd; ndp->ni_startdir = startdir; + ndp->ni_resflags = 0; if (rightsp != NULL) ndp->ni_rightsneeded = *rightsp; else Modified: stable/12/sys/kern/vfs_syscalls.c ============================================================================== --- stable/12/sys/kern/vfs_syscalls.c Fri Feb 15 10:40:41 2019 (r344151) +++ stable/12/sys/kern/vfs_syscalls.c Fri Feb 15 11:13:39 2019 (r344152) @@ -3511,10 +3511,10 @@ again: goto out; } #ifdef CAPABILITIES - if (newfd != AT_FDCWD) { + if (newfd != AT_FDCWD && (tond.ni_resflags & NIRES_ABS) == 0) { /* * If the target already exists we require CAP_UNLINKAT - * from 'newfd'. + * from 'newfd', when newfd was used for the lookup. */ error = cap_check(&tond.ni_filecaps.fc_rights, &cap_unlinkat_rights); Modified: stable/12/sys/sys/namei.h ============================================================================== --- stable/12/sys/sys/namei.h Fri Feb 15 10:40:41 2019 (r344151) +++ stable/12/sys/sys/namei.h Fri Feb 15 11:13:39 2019 (r344152) @@ -88,6 +88,10 @@ struct nameidata { struct vnode *ni_vp; /* vnode of result */ struct vnode *ni_dvp; /* vnode of intermediate directory */ /* + * Results: flags returned from namei + */ + u_int ni_resflags; + /* * Shared between namei and lookup/commit routines. */ size_t ni_pathlen; /* remaining chars in path */ @@ -156,6 +160,11 @@ struct nameidata { #define TRAILINGSLASH 0x10000000 /* path ended in a slash */ #define NOCAPCHECK 0x20000000 /* do not perform capability checks */ #define PARAMASK 0x3ffffe00 /* mask of parameter descriptors */ + +/* + * Namei results flags + */ +#define NIRES_ABS 0x00000001 /* Path was absolute */ /* * Flags in ni_lcf, valid for the duration of the namei call. Modified: stable/12/sys/sys/param.h ============================================================================== --- stable/12/sys/sys/param.h Fri Feb 15 10:40:41 2019 (r344151) +++ stable/12/sys/sys/param.h Fri Feb 15 11:13:39 2019 (r344152) @@ -60,7 +60,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1200502 /* Master, propagated to newvers */ +#define __FreeBSD_version 1200503 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From owner-svn-src-all@freebsd.org Fri Feb 15 11:19:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6AA7D14D6A58; Fri, 15 Feb 2019 11:19:13 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 00CC28BDFC; Fri, 15 Feb 2019 11:19:13 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E7F131DD0B; Fri, 15 Feb 2019 11:19:12 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBJCZO049698; Fri, 15 Feb 2019 11:19:12 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBJCB8049697; Fri, 15 Feb 2019 11:19:12 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151119.x1FBJCB8049697@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:19:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344153 - stable/12/sys/fs/nullfs X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/fs/nullfs X-SVN-Commit-Revision: 344153 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 00CC28BDFC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:19:13 -0000 Author: kib Date: Fri Feb 15 11:19:12 2019 New Revision: 344153 URL: https://svnweb.freebsd.org/changeset/base/344153 Log: MFC r343897, r343898: Some style for nullfs_mount(). Before using VTONULL(), check that the covered vnode belongs to nullfs. Modified: stable/12/sys/fs/nullfs/null_vfsops.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/fs/nullfs/null_vfsops.c ============================================================================== --- stable/12/sys/fs/nullfs/null_vfsops.c Fri Feb 15 11:13:39 2019 (r344152) +++ stable/12/sys/fs/nullfs/null_vfsops.c Fri Feb 15 11:19:12 2019 (r344153) @@ -74,13 +74,14 @@ static vfs_extattrctl_t nullfs_extattrctl; static int nullfs_mount(struct mount *mp) { - int error = 0; struct vnode *lowerrootvp, *vp; struct vnode *nullm_rootvp; struct null_mount *xmp; + struct null_node *nn; + struct nameidata nd, *ndp; char *target; - int isvnunlocked = 0, len; - struct nameidata nd, *ndp = &nd; + int error, len; + bool isvnunlocked; NULLFSDEBUG("nullfs_mount(mp = %p)\n", (void *)mp); @@ -110,14 +111,18 @@ nullfs_mount(struct mount *mp) /* * Unlock lower node to avoid possible deadlock. */ - if ((mp->mnt_vnodecovered->v_op == &null_vnodeops) && + if (mp->mnt_vnodecovered->v_op == &null_vnodeops && VOP_ISLOCKED(mp->mnt_vnodecovered) == LK_EXCLUSIVE) { VOP_UNLOCK(mp->mnt_vnodecovered, 0); - isvnunlocked = 1; + isvnunlocked = true; + } else { + isvnunlocked = false; } + /* * Find lower node */ + ndp = &nd; NDINIT(ndp, LOOKUP, FOLLOW|LOCKLEAF, UIO_SYSSPACE, target, curthread); error = namei(ndp); @@ -140,10 +145,13 @@ nullfs_mount(struct mount *mp) /* * Check multi null mount to avoid `lock against myself' panic. */ - if (lowerrootvp == VTONULL(mp->mnt_vnodecovered)->null_lowervp) { - NULLFSDEBUG("nullfs_mount: multi null mount?\n"); - vput(lowerrootvp); - return (EDEADLK); + if (mp->mnt_vnodecovered->v_op == &null_vnodeops) { + nn = VTONULL(mp->mnt_vnodecovered); + if (nn == NULL || lowerrootvp == nn->null_lowervp) { + NULLFSDEBUG("nullfs_mount: multi null mount?\n"); + vput(lowerrootvp); + return (EDEADLK); + } } xmp = (struct null_mount *) malloc(sizeof(struct null_mount), From owner-svn-src-all@freebsd.org Fri Feb 15 11:20:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2942A14D6B2F; Fri, 15 Feb 2019 11:20:26 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C018F8BF6E; Fri, 15 Feb 2019 11:20:25 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B44931DD12; Fri, 15 Feb 2019 11:20:25 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBKPga049825; Fri, 15 Feb 2019 11:20:25 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBKPdh049824; Fri, 15 Feb 2019 11:20:25 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151120.x1FBKPdh049824@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:20:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344154 - stable/12/sys/fs/nullfs X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/fs/nullfs X-SVN-Commit-Revision: 344154 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C018F8BF6E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:20:26 -0000 Author: kib Date: Fri Feb 15 11:20:25 2019 New Revision: 344154 URL: https://svnweb.freebsd.org/changeset/base/344154 Log: MFC r343899: In null_vptocnp(), cache vp->v_mount and use it for null_nodeget() call. PR: 235549 Modified: stable/12/sys/fs/nullfs/null_vnops.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/fs/nullfs/null_vnops.c ============================================================================== --- stable/12/sys/fs/nullfs/null_vnops.c Fri Feb 15 11:19:12 2019 (r344153) +++ stable/12/sys/fs/nullfs/null_vnops.c Fri Feb 15 11:20:25 2019 (r344154) @@ -870,11 +870,14 @@ null_vptocnp(struct vop_vptocnp_args *ap) struct vnode **dvp = ap->a_vpp; struct vnode *lvp, *ldvp; struct ucred *cred = ap->a_cred; + struct mount *mp; int error, locked; locked = VOP_ISLOCKED(vp); lvp = NULLVPTOLOWERVP(vp); vhold(lvp); + mp = vp->v_mount; + vfs_ref(mp); VOP_UNLOCK(vp, 0); /* vp is held by vn_vptocnp_locked that called us */ ldvp = lvp; vref(lvp); @@ -882,6 +885,7 @@ null_vptocnp(struct vop_vptocnp_args *ap) vdrop(lvp); if (error != 0) { vn_lock(vp, locked | LK_RETRY); + vfs_rel(mp); return (ENOENT); } @@ -893,9 +897,10 @@ null_vptocnp(struct vop_vptocnp_args *ap) if (error != 0) { vrele(ldvp); vn_lock(vp, locked | LK_RETRY); + vfs_rel(mp); return (ENOENT); } - error = null_nodeget(vp->v_mount, ldvp, dvp); + error = null_nodeget(mp, ldvp, dvp); if (error == 0) { #ifdef DIAGNOSTIC NULLVPTOLOWERVP(*dvp); @@ -903,6 +908,7 @@ null_vptocnp(struct vop_vptocnp_args *ap) VOP_UNLOCK(*dvp, 0); /* keep reference on *dvp */ } vn_lock(vp, locked | LK_RETRY); + vfs_rel(mp); return (error); } From owner-svn-src-all@freebsd.org Fri Feb 15 11:27:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8879F14D7103; Fri, 15 Feb 2019 11:27:22 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2D5828C659; Fri, 15 Feb 2019 11:27:22 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1D1201DEBE; Fri, 15 Feb 2019 11:27:22 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBRLIx055447; Fri, 15 Feb 2019 11:27:21 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBRLet055446; Fri, 15 Feb 2019 11:27:21 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151127.x1FBRLet055446@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:27:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344155 - stable/11/sys/fs/nullfs X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/sys/fs/nullfs X-SVN-Commit-Revision: 344155 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2D5828C659 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:27:22 -0000 Author: kib Date: Fri Feb 15 11:27:21 2019 New Revision: 344155 URL: https://svnweb.freebsd.org/changeset/base/344155 Log: MFC r343897, r343898: Some style for nullfs_mount(). Before using VTONULL(), check that the covered vnode belongs to nullfs. Modified: stable/11/sys/fs/nullfs/null_vfsops.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/nullfs/null_vfsops.c ============================================================================== --- stable/11/sys/fs/nullfs/null_vfsops.c Fri Feb 15 11:20:25 2019 (r344154) +++ stable/11/sys/fs/nullfs/null_vfsops.c Fri Feb 15 11:27:21 2019 (r344155) @@ -72,14 +72,15 @@ static vfs_extattrctl_t nullfs_extattrctl; static int nullfs_mount(struct mount *mp) { - int error = 0; struct vnode *lowerrootvp, *vp; struct vnode *nullm_rootvp; struct null_mount *xmp; struct thread *td = curthread; + struct null_node *nn; + struct nameidata nd, *ndp; char *target; - int isvnunlocked = 0, len; - struct nameidata nd, *ndp = &nd; + int error, len; + bool isvnunlocked; NULLFSDEBUG("nullfs_mount(mp = %p)\n", (void *)mp); @@ -111,14 +112,18 @@ nullfs_mount(struct mount *mp) /* * Unlock lower node to avoid possible deadlock. */ - if ((mp->mnt_vnodecovered->v_op == &null_vnodeops) && + if (mp->mnt_vnodecovered->v_op == &null_vnodeops && VOP_ISLOCKED(mp->mnt_vnodecovered) == LK_EXCLUSIVE) { VOP_UNLOCK(mp->mnt_vnodecovered, 0); - isvnunlocked = 1; + isvnunlocked = true; + } else { + isvnunlocked = false; } + /* * Find lower node */ + ndp = &nd; NDINIT(ndp, LOOKUP, FOLLOW|LOCKLEAF, UIO_SYSSPACE, target, curthread); error = namei(ndp); @@ -141,10 +146,13 @@ nullfs_mount(struct mount *mp) /* * Check multi null mount to avoid `lock against myself' panic. */ - if (lowerrootvp == VTONULL(mp->mnt_vnodecovered)->null_lowervp) { - NULLFSDEBUG("nullfs_mount: multi null mount?\n"); - vput(lowerrootvp); - return (EDEADLK); + if (mp->mnt_vnodecovered->v_op == &null_vnodeops) { + nn = VTONULL(mp->mnt_vnodecovered); + if (nn == NULL || lowerrootvp == nn->null_lowervp) { + NULLFSDEBUG("nullfs_mount: multi null mount?\n"); + vput(lowerrootvp); + return (EDEADLK); + } } xmp = (struct null_mount *) malloc(sizeof(struct null_mount), From owner-svn-src-all@freebsd.org Fri Feb 15 11:28:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 92F0314D71B1; Fri, 15 Feb 2019 11:28:33 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3804A8C7EF; Fri, 15 Feb 2019 11:28:33 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1F5711DED5; Fri, 15 Feb 2019 11:28:33 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBSWlO055587; Fri, 15 Feb 2019 11:28:32 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBSW2Z055586; Fri, 15 Feb 2019 11:28:32 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151128.x1FBSW2Z055586@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:28:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344156 - stable/11/sys/fs/nullfs X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/sys/fs/nullfs X-SVN-Commit-Revision: 344156 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3804A8C7EF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:28:33 -0000 Author: kib Date: Fri Feb 15 11:28:32 2019 New Revision: 344156 URL: https://svnweb.freebsd.org/changeset/base/344156 Log: MFC r343899: In null_vptocnp(), cache vp->v_mount and use it for null_nodeget() call. PR: 235549 Modified: stable/11/sys/fs/nullfs/null_vnops.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/nullfs/null_vnops.c ============================================================================== --- stable/11/sys/fs/nullfs/null_vnops.c Fri Feb 15 11:27:21 2019 (r344155) +++ stable/11/sys/fs/nullfs/null_vnops.c Fri Feb 15 11:28:32 2019 (r344156) @@ -868,11 +868,14 @@ null_vptocnp(struct vop_vptocnp_args *ap) struct vnode **dvp = ap->a_vpp; struct vnode *lvp, *ldvp; struct ucred *cred = ap->a_cred; + struct mount *mp; int error, locked; locked = VOP_ISLOCKED(vp); lvp = NULLVPTOLOWERVP(vp); vhold(lvp); + mp = vp->v_mount; + vfs_ref(mp); VOP_UNLOCK(vp, 0); /* vp is held by vn_vptocnp_locked that called us */ ldvp = lvp; vref(lvp); @@ -880,6 +883,7 @@ null_vptocnp(struct vop_vptocnp_args *ap) vdrop(lvp); if (error != 0) { vn_lock(vp, locked | LK_RETRY); + vfs_rel(mp); return (ENOENT); } @@ -891,9 +895,10 @@ null_vptocnp(struct vop_vptocnp_args *ap) if (error != 0) { vrele(ldvp); vn_lock(vp, locked | LK_RETRY); + vfs_rel(mp); return (ENOENT); } - error = null_nodeget(vp->v_mount, ldvp, dvp); + error = null_nodeget(mp, ldvp, dvp); if (error == 0) { #ifdef DIAGNOSTIC NULLVPTOLOWERVP(*dvp); @@ -901,6 +906,7 @@ null_vptocnp(struct vop_vptocnp_args *ap) VOP_UNLOCK(*dvp, 0); /* keep reference on *dvp */ } vn_lock(vp, locked | LK_RETRY); + vfs_rel(mp); return (error); } From owner-svn-src-all@freebsd.org Fri Feb 15 11:33:49 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A3DA214D758B; Fri, 15 Feb 2019 11:33:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 432D48CD86; Fri, 15 Feb 2019 11:33:49 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1D2481E080; Fri, 15 Feb 2019 11:33:49 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBXmZN060956; Fri, 15 Feb 2019 11:33:48 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBXmHU060955; Fri, 15 Feb 2019 11:33:48 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151133.x1FBXmHU060955@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:33:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344157 - stable/12/lib/libc/x86/sys X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/lib/libc/x86/sys X-SVN-Commit-Revision: 344157 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 432D48CD86 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.966,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:33:49 -0000 Author: kib Date: Fri Feb 15 11:33:48 2019 New Revision: 344157 URL: https://svnweb.freebsd.org/changeset/base/344157 Log: MFC r343855, r343859: Use ifunc to select the barrier instruction for RDTSC. Modified: stable/12/lib/libc/x86/sys/__vdso_gettc.c Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/x86/sys/__vdso_gettc.c ============================================================================== --- stable/12/lib/libc/x86/sys/__vdso_gettc.c Fri Feb 15 11:28:32 2019 (r344156) +++ stable/12/lib/libc/x86/sys/__vdso_gettc.c Fri Feb 15 11:33:48 2019 (r344157) @@ -1,6 +1,6 @@ /*- * Copyright (c) 2012 Konstantin Belousov - * Copyright (c) 2016, 2017 The FreeBSD Foundation + * Copyright (c) 2016, 2017, 2019 The FreeBSD Foundation * All rights reserved. * * Portions of this software were developed by Konstantin Belousov @@ -50,15 +50,9 @@ __FBSDID("$FreeBSD$"); #ifdef WANT_HYPERV #include #endif +#include #include "libc_private.h" -static enum LMB { - LMB_UNKNOWN, - LMB_NONE, - LMB_MFENCE, - LMB_LFENCE -} lfence_works = LMB_UNKNOWN; - static void cpuidp(u_int leaf, u_int p[4]) { @@ -84,68 +78,36 @@ cpuidp(u_int leaf, u_int p[4]) : "0" (leaf)); } -static enum LMB -select_lmb(void) +static void +rdtsc_mb_lfence(void) { - u_int p[4]; - static const char intel_id[] = "GenuntelineI"; - cpuidp(0, p); - return (memcmp(p + 1, intel_id, sizeof(intel_id) - 1) == 0 ? - LMB_LFENCE : LMB_MFENCE); + lfence(); } static void -init_fence(void) +rdtsc_mb_mfence(void) { -#if defined(__i386__) - u_int cpuid_supported, p[4]; - lfence_works = LMB_NONE; - __asm __volatile( - " pushfl\n" - " popl %%eax\n" - " movl %%eax,%%ecx\n" - " xorl $0x200000,%%eax\n" - " pushl %%eax\n" - " popfl\n" - " pushfl\n" - " popl %%eax\n" - " xorl %%eax,%%ecx\n" - " je 1f\n" - " movl $1,%0\n" - " jmp 2f\n" - "1: movl $0,%0\n" - "2:\n" - : "=r" (cpuid_supported) : : "eax", "ecx", "cc"); - if (cpuid_supported) { - cpuidp(0x1, p); - if ((p[3] & CPUID_SSE2) != 0) - lfence_works = select_lmb(); - } -#elif defined(__amd64__) - lfence_works = select_lmb(); -#else -#error "Arch" -#endif + mfence(); } static void -rdtsc_mb(void) +rdtsc_mb_none(void) { +} -again: - if (__predict_true(lfence_works == LMB_LFENCE)) { - lfence(); - return; - } else if (lfence_works == LMB_MFENCE) { - mfence(); - return; - } else if (lfence_works == LMB_NONE) { - return; - } - init_fence(); - goto again; +DEFINE_UIFUNC(static, void, rdtsc_mb, (void), static) +{ + u_int p[4]; + /* Not a typo, string matches our cpuidp() registers use. */ + static const char intel_id[] = "GenuntelineI"; + + if ((cpu_feature & CPUID_SSE2) == 0) + return (rdtsc_mb_none); + cpuidp(0, p); + return (memcmp(p + 1, intel_id, sizeof(intel_id) - 1) == 0 ? + rdtsc_mb_lfence : rdtsc_mb_mfence); } static u_int From owner-svn-src-all@freebsd.org Fri Feb 15 11:36:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3698E14D7707; Fri, 15 Feb 2019 11:36:17 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C640F8CF07; Fri, 15 Feb 2019 11:36:16 +0000 (UTC) (envelope-from kib@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B585F1E082; Fri, 15 Feb 2019 11:36:16 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FBaGSE061293; Fri, 15 Feb 2019 11:36:16 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FBaGV8061292; Fri, 15 Feb 2019 11:36:16 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201902151136.x1FBaGV8061292@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 15 Feb 2019 11:36:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344158 - stable/11/lib/libc/x86/sys X-SVN-Group: stable-11 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/11/lib/libc/x86/sys X-SVN-Commit-Revision: 344158 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C640F8CF07 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 11:36:17 -0000 Author: kib Date: Fri Feb 15 11:36:16 2019 New Revision: 344158 URL: https://svnweb.freebsd.org/changeset/base/344158 Log: MFC r343859: Add comment noting that the strange spelling of GenuineIntel is for reason. Modified: stable/11/lib/libc/x86/sys/__vdso_gettc.c Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libc/x86/sys/__vdso_gettc.c ============================================================================== --- stable/11/lib/libc/x86/sys/__vdso_gettc.c Fri Feb 15 11:33:48 2019 (r344157) +++ stable/11/lib/libc/x86/sys/__vdso_gettc.c Fri Feb 15 11:36:16 2019 (r344158) @@ -88,6 +88,7 @@ static enum LMB select_lmb(void) { u_int p[4]; + /* Not a typo, string matches our cpuidp() registers use. */ static const char intel_id[] = "GenuntelineI"; cpuidp(0, p); From owner-svn-src-all@freebsd.org Fri Feb 15 13:27:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE01C14DB1AB; Fri, 15 Feb 2019 13:27:29 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id 2BE7069FC3; Fri, 15 Feb 2019 13:27:28 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id 6DAA2433538; Sat, 16 Feb 2019 00:27:18 +1100 (AEDT) Date: Sat, 16 Feb 2019 00:27:16 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Konstantin Belousov cc: Alexey Dokuchaev , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344118 - head/sys/i386/include In-Reply-To: <20190215103644.GN24863@kib.kiev.ua> Message-ID: <20190215233444.F2229@besplex.bde.org> References: <201902141353.x1EDrB0Z076223@repo.freebsd.org> <20190215071604.GA89653@FreeBSD.org> <20190215103644.GN24863@kib.kiev.ua> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=P6RKvmIu c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=6I5d2MoRAAAA:8 a=Qyq6Zs7ZMgCplSLokTAA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 X-Rspamd-Queue-Id: 2BE7069FC3 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.94)[-0.942,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 13:27:30 -0000 On Fri, 15 Feb 2019, Konstantin Belousov wrote: > On Fri, Feb 15, 2019 at 07:16:04AM +0000, Alexey Dokuchaev wrote: >> On Thu, Feb 14, 2019 at 01:53:11PM +0000, Konstantin Belousov wrote: >>> New Revision: 344118 >>> URL: https://svnweb.freebsd.org/changeset/base/344118 >>> >>> Log: >>> Provide userspace versions of do_cpuid() and cpuid_count() on i386. >>> >>> Some older compilers, when generating PIC code, cannot handle inline >>> asm that clobbers %ebx (because %ebx is used as the GOT offset >>> register). Userspace versions avoid clobbering %ebx by saving it to >>> stack before executing the CPUID instruction. >>> >>> ... >>> +static __inline void >>> +do_cpuid(u_int ax, u_int *p) >>> +{ >>> + __asm __volatile( >>> + "pushl\t%%ebx\n\t" >>> + "cpuid\n\t" >>> + "movl\t%%ebx,%1\n\t" >>> + "popl\t%%ebx" >> >> Is there a reason to prefer pushl+movl+popl instead of movl+xchgl? >> >> "movl %%ebx, %1\n\t" >> "cpuid\n\t" >> "xchgl %%ebx, %1" > > xchgl seems to be slower even in registers format (where no implicit > lock is used). If you can demonstrate that your fragment is better in > some microbenchmark, I can change it. But also note that its use is not > on the critical path. The should have the same speed on modern x86. xchgl %reg1,%reg2 is not slow, but it changes 2 visible registers and a needs somwhere to hold one of the registers while changing it, so on 14 year old AthlonXP where I know the times in cycles better, register xchgl was twice as slow as register move (2 cycles latency instead of 1, and throughput == latency (?)). On 2015 Haswell, register movl in a loop is in parallel with the loop overhead (1 cycle), while xchgl and pushl/popl take 0.5 cycles longer on average. Latency might be a problem for pushl/popl in critical paths. There aren't many of those. There is no reason to use the style with strings made unreadable using soft tabs and newlines. gcc supported hard newlines 20-30 years ago, but broke this because C90 or C99 made hard newlines in strings invalid. This broke lots of my asms. I now use hard tabs and backslash-hard_newlines after soft newlines: __asm __volatile(" \n\ pushl %%ebx \n\ cpuid \n\ movl %%ebx,%1 \n\ popl %%ebx" \n\ "); The Standard C lossage forces use \n\ before hard newline, and readability forces a hard-to-edit variable number of hard tabs before \n\, but otherwise the code looks the same as before (opcodes are outdented to column 8 in large asms, and labels are outdented to column 0, so that the code looks the same as non-inline asm too). Bruce From owner-svn-src-all@freebsd.org Fri Feb 15 13:55:52 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2244414DBFD6; Fri, 15 Feb 2019 13:55:52 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B1AE26B208; Fri, 15 Feb 2019 13:55:51 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1033) id 8CB38FA0; Fri, 15 Feb 2019 13:55:51 +0000 (UTC) Date: Fri, 15 Feb 2019 13:55:51 +0000 From: Alexey Dokuchaev To: Bruce Evans Cc: Konstantin Belousov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344118 - head/sys/i386/include Message-ID: <20190215135551.GA99583@FreeBSD.org> References: <201902141353.x1EDrB0Z076223@repo.freebsd.org> <20190215071604.GA89653@FreeBSD.org> <20190215103644.GN24863@kib.kiev.ua> <20190215233444.F2229@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190215233444.F2229@besplex.bde.org> User-Agent: Mutt/1.10.1 (2018-07-13) X-Rspamd-Queue-Id: B1AE26B208 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 13:55:52 -0000 On Sat, Feb 16, 2019 at 12:27:16AM +1100, Bruce Evans wrote: > On Fri, 15 Feb 2019, Konstantin Belousov wrote: > > On Fri, Feb 15, 2019 at 07:16:04AM +0000, Alexey Dokuchaev wrote: > >> On Thu, Feb 14, 2019 at 01:53:11PM +0000, Konstantin Belousov wrote: > >>> New Revision: 344118 > >>> URL: https://svnweb.freebsd.org/changeset/base/344118 > >>> > >>> Log: > >>> Provide userspace versions of do_cpuid() and cpuid_count() on i386. > >>> ... > >>> +static __inline void > >>> +do_cpuid(u_int ax, u_int *p) > >>> +{ > >>> + __asm __volatile( > >>> + "pushl\t%%ebx\n\t" > >>> + "cpuid\n\t" > >>> + "movl\t%%ebx,%1\n\t" > >>> + "popl\t%%ebx" > >> > >> Is there a reason to prefer pushl+movl+popl instead of movl+xchgl? > >> > >> "movl %%ebx, %1\n\t" > >> "cpuid\n\t" > >> "xchgl %%ebx, %1" > > > > xchgl seems to be slower even in registers format (where no implicit > > lock is used). If you can demonstrate that your fragment is better in > > some microbenchmark, I can change it. But also note that its use is not > > on the critical path. > > The should have the same speed on modern x86. xchgl %reg1,%reg2 is > not slow, but it changes 2 visible registers and a needs somwhere to > hold one of the registers while changing it, so on 14 year old AthlonXP > where I know the times in cycles better, register xchgl was twice as slow > as register move (2 cycles latency instead of 1, and throughput == > latency (?)). On 2015 Haswell, register movl in a loop is in parallel > with the loop overhead (1 cycle), while xchgl and pushl/popl take 0.5 > cycles longer on average. Latency might be a problem for pushl/popl > in critical paths. There aren't many of those. Thanks Bruce, I guess we can leave it as is then. ./danfe From owner-svn-src-all@freebsd.org Fri Feb 15 14:04:19 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3E9F514DC4DA; Fri, 15 Feb 2019 14:04:19 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 553F46BA7F; Fri, 15 Feb 2019 14:04:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x1FE49SL083824 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 15 Feb 2019 16:04:13 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x1FE49SL083824 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id x1FE49ZY083823; Fri, 15 Feb 2019 16:04:09 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 15 Feb 2019 16:04:09 +0200 From: Konstantin Belousov To: Bruce Evans Cc: Alexey Dokuchaev , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344118 - head/sys/i386/include Message-ID: <20190215140409.GQ24863@kib.kiev.ua> References: <201902141353.x1EDrB0Z076223@repo.freebsd.org> <20190215071604.GA89653@FreeBSD.org> <20190215103644.GN24863@kib.kiev.ua> <20190215233444.F2229@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190215233444.F2229@besplex.bde.org> User-Agent: Mutt/1.11.2 (2019-01-07) X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 14:04:19 -0000 On Sat, Feb 16, 2019 at 12:27:16AM +1100, Bruce Evans wrote: > On Fri, 15 Feb 2019, Konstantin Belousov wrote: > > > On Fri, Feb 15, 2019 at 07:16:04AM +0000, Alexey Dokuchaev wrote: > >> On Thu, Feb 14, 2019 at 01:53:11PM +0000, Konstantin Belousov wrote: > >>> New Revision: 344118 > >>> URL: https://svnweb.freebsd.org/changeset/base/344118 > >>> > >>> Log: > >>> Provide userspace versions of do_cpuid() and cpuid_count() on i386. > >>> > >>> Some older compilers, when generating PIC code, cannot handle inline > >>> asm that clobbers %ebx (because %ebx is used as the GOT offset > >>> register). Userspace versions avoid clobbering %ebx by saving it to > >>> stack before executing the CPUID instruction. > >>> > >>> ... > >>> +static __inline void > >>> +do_cpuid(u_int ax, u_int *p) > >>> +{ > >>> + __asm __volatile( > >>> + "pushl\t%%ebx\n\t" > >>> + "cpuid\n\t" > >>> + "movl\t%%ebx,%1\n\t" > >>> + "popl\t%%ebx" > >> > >> Is there a reason to prefer pushl+movl+popl instead of movl+xchgl? > >> > >> "movl %%ebx, %1\n\t" > >> "cpuid\n\t" > >> "xchgl %%ebx, %1" > > > > xchgl seems to be slower even in registers format (where no implicit > > lock is used). If you can demonstrate that your fragment is better in > > some microbenchmark, I can change it. But also note that its use is not > > on the critical path. > > The should have the same speed on modern x86. xchgl %reg1,%reg2 is > not slow, but it changes 2 visible registers and a needs somwhere to > hold one of the registers while changing it, so on 14 year old AthlonXP > where I know the times in cycles better, register xchgl was twice as slow > as register move (2 cycles latency instead of 1, and throughput == > latency (?)). On 2015 Haswell, register movl in a loop is in parallel > with the loop overhead (1 cycle), while xchgl and pushl/popl take 0.5 > cycles longer on average. Latency might be a problem for pushl/popl > in critical paths. There aren't many of those. I think on modern Intels xchgl is implemented by renaming. Still it is slower than typically highly optimized push/pops. That said, what is your preference ? My version or xchgl ? My own preference is to leave it as is, since it is slightly slower, and I do not want to spend several hours again, re-testing libc changes. From owner-svn-src-all@freebsd.org Fri Feb 15 15:27:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 248D614DE4EE; Fri, 15 Feb 2019 15:27:22 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id 8C8C96E78A; Fri, 15 Feb 2019 15:27:21 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id 08CFE10588B1; Sat, 16 Feb 2019 02:27:19 +1100 (AEDT) Date: Sat, 16 Feb 2019 02:27:17 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Konstantin Belousov cc: Bruce Evans , Alexey Dokuchaev , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344118 - head/sys/i386/include In-Reply-To: <20190215140409.GQ24863@kib.kiev.ua> Message-ID: <20190216022142.I2745@besplex.bde.org> References: <201902141353.x1EDrB0Z076223@repo.freebsd.org> <20190215071604.GA89653@FreeBSD.org> <20190215103644.GN24863@kib.kiev.ua> <20190215233444.F2229@besplex.bde.org> <20190215140409.GQ24863@kib.kiev.ua> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=UJetJGXy c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=FUjRFFY_C4EnPHvrLvMA:9 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 8C8C96E78A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.92 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.92)[-0.921,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 15:27:22 -0000 On Fri, 15 Feb 2019, Konstantin Belousov wrote: > On Sat, Feb 16, 2019 at 12:27:16AM +1100, Bruce Evans wrote: >> On Fri, 15 Feb 2019, Konstantin Belousov wrote: >> >>> On Fri, Feb 15, 2019 at 07:16:04AM +0000, Alexey Dokuchaev wrote: >>>> Is there a reason to prefer pushl+movl+popl instead of movl+xchgl? >>> ... >>> xchgl seems to be slower even in registers format (where no implicit >>> lock is used). If you can demonstrate that your fragment is better in >>> some microbenchmark, I can change it. But also note that its use is not >>> on the critical path. >> >> The should have the same speed on modern x86. xchgl %reg1,%reg2 is >> not slow, but it changes 2 visible registers and a needs somwhere to >> hold one of the registers while changing it, so on 14 year old AthlonXP >> ... > I think on modern Intels xchgl is implemented by renaming. Still it is slower > than typically highly optimized push/pops. > > That said, what is your preference ? My version or xchgl ? > My own preference is to leave it as is, since it is slightly slower, > and I do not want to spend several hours again, re-testing libc changes. I like the push/pop instructions, so like it like it is. Bruce From owner-svn-src-all@freebsd.org Fri Feb 15 16:20:22 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3794E14DFF0A; Fri, 15 Feb 2019 16:20:22 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D377B7068E; Fri, 15 Feb 2019 16:20:21 +0000 (UTC) (envelope-from rgrimes@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C926B210E5; Fri, 15 Feb 2019 16:20:21 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FGKLZn009363; Fri, 15 Feb 2019 16:20:21 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FGKLpI009362; Fri, 15 Feb 2019 16:20:21 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201902151620.x1FGKLpI009362@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Fri, 15 Feb 2019 16:20:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344159 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: rgrimes X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 344159 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D377B7068E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.971,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 16:20:22 -0000 Author: rgrimes Date: Fri Feb 15 16:20:21 2019 New Revision: 344159 URL: https://svnweb.freebsd.org/changeset/base/344159 Log: In r340042 an attempt to quiet coverity warning cid 1305412 was overdone. nopt is the only allocated space, xopt and cp are aliases into that allocated space. Remove the 2 unneeded free's Reported by: Patrick Mooney (@pmooney_pfmooney.com) Reviewed by: jhb (maintainer), Patrick Mooney (joyent/illumos) Approved by: bde (mentor) CID: 1305412 MFC after: 3 days MFC with: 340042 Differential Revision: https://reviews.freebsd.org/D19200 Modified: head/usr.sbin/bhyve/block_if.c Modified: head/usr.sbin/bhyve/block_if.c ============================================================================== --- head/usr.sbin/bhyve/block_if.c Fri Feb 15 11:36:16 2019 (r344158) +++ head/usr.sbin/bhyve/block_if.c Fri Feb 15 16:20:21 2019 (r344159) @@ -576,8 +576,6 @@ blockif_open(const char *optstr, const char *ident) err: if (fd >= 0) close(fd); - free(cp); - free(xopts); free(nopt); return (NULL); } From owner-svn-src-all@freebsd.org Fri Feb 15 16:48:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08C3A14E09EC; Fri, 15 Feb 2019 16:48:16 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9D33371919; Fri, 15 Feb 2019 16:48:15 +0000 (UTC) (envelope-from rgrimes@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8E5C8215E3; Fri, 15 Feb 2019 16:48:15 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FGmFMG024972; Fri, 15 Feb 2019 16:48:15 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FGmF41024971; Fri, 15 Feb 2019 16:48:15 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201902151648.x1FGmF41024971@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Fri, 15 Feb 2019 16:48:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344160 - head/usr.sbin/bhyve X-SVN-Group: head X-SVN-Commit-Author: rgrimes X-SVN-Commit-Paths: head/usr.sbin/bhyve X-SVN-Commit-Revision: 344160 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9D33371919 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 16:48:16 -0000 Author: rgrimes Date: Fri Feb 15 16:48:15 2019 New Revision: 344160 URL: https://svnweb.freebsd.org/changeset/base/344160 Log: In r340044 an attempt to quiet coverity warning cid 1357336 was incorrectly implemented leading to a possible double free. It is possible for both the conditional free, and the unconditional free added in r340044 to be done, fix that by initializing uopt to NULL, removing the conditional free, and only using the unconditional free at the end. Reported by: Patrick Mooney (patrick.mooney@joyent.com) Reviewed by: jhb (maintainer), Patrick Mooney (joyent/illumos) Approved by: bde (mentor) CID: 1357336 MFC after: 3 days MFC with: 340044 Differential Revision: https://reviews.freebsd.org/D19202 Modified: head/usr.sbin/bhyve/pci_xhci.c Modified: head/usr.sbin/bhyve/pci_xhci.c ============================================================================== --- head/usr.sbin/bhyve/pci_xhci.c Fri Feb 15 16:20:21 2019 (r344159) +++ head/usr.sbin/bhyve/pci_xhci.c Fri Feb 15 16:48:15 2019 (r344160) @@ -2626,6 +2626,7 @@ pci_xhci_parse_opts(struct pci_xhci_softc *sc, char *o char *uopt, *xopts, *config; int usb3_port, usb2_port, i; + uopt = NULL; usb3_port = sc->usb3_port_start - 1; usb2_port = sc->usb2_port_start - 1; devices = NULL; @@ -2700,8 +2701,6 @@ pci_xhci_parse_opts(struct pci_xhci_softc *sc, char *o sc->ndevices++; } - if (uopt != NULL) - free(uopt); portsfinal: sc->portregs = calloc(XHCI_MAX_DEVS, sizeof(struct pci_xhci_portregs)); From owner-svn-src-all@freebsd.org Fri Feb 15 17:22:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 34DC614E1A4E; Fri, 15 Feb 2019 17:22:32 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pl1-x643.google.com (mail-pl1-x643.google.com [IPv6:2607:f8b0:4864:20::643]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9F17372E1D; Fri, 15 Feb 2019 17:22:31 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pl1-x643.google.com with SMTP id bj4so5249885plb.7; Fri, 15 Feb 2019 09:22:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1Q+hkS+BTHvnWwbp8kTKpSj1mjo731kNpyVGcj2JmtU=; b=kdq5eBe7t9VhFcDp758n4qNudnoZU/fTwXyGeJ+uPBeAe6tssKc+vL2GfZmmKJj2LH Qugc5gG/AUxjPDC1Ag0Ul+p9FyRoSsYfJTJZ5qdDlzeDuATGv5shQRrzj3+w4QyYXS/E NhsRa79JVtUWEyJlXL9jAGZ+l4Mcbd+JMTI0thdXyfWfwI7E3GnsLU/VkMYZCbaj4ycN rJ7HunXQsvOognih3CaCzRUNaa7dlqaBzmgx6V1jhjFe7f5DZBu+rWEQ3675nwFG2fck PyMkYN/HyhLZiZFCI930DFf90Pg+HZ04iF4/zH0hxGVT1esYyC57oYHppft8tlvWdRLE YxuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1Q+hkS+BTHvnWwbp8kTKpSj1mjo731kNpyVGcj2JmtU=; b=UW1JMaRvsKZtkQa86ml/2/hWTSSUouJQUDIIMaEjy8BkypIUqhqszBr/bzshIqCD7X f/EIivQUCjur9p2+o0fNgo1XpAQRFjoLBMCTLabJ6H5Xc+0BjU4Np29sGR8Ch9I969X5 CCqeqEG0mZR44zkRi4LYrxpncaqWxXAw3c3LYenWmzDWPef6SesOp35oUbS3sp6418Ml hTU9/MH9mbhENij85SqgbIabIP2R7wUpUGT9efIntrB9cJW9/KLhxTICspnqQR+837FD 2P5wXZrNv/H1f0sJt271jji9qg+iJu66haeFLPb5IvnDDfi8VD8NWvWr9XChb1M5dieU UEmA== X-Gm-Message-State: AHQUAubpCr8XK8733JZuy5Bal+4eOB7ynwkEMMvfXuXiVzDx6fkNmY+x eZzNZfoQs4ypQtCWY73s/APBKrM1 X-Google-Smtp-Source: AHgI3IZophNrfz7jCKLJgFbC/5CCGwjBXWHDS1oVm479NGh7UQkIaeztmz6OzaSUQfSH5lTUdwypzQ== X-Received: by 2002:a17:902:8c8b:: with SMTP id t11mr11319344plo.163.1550251349784; Fri, 15 Feb 2019 09:22:29 -0800 (PST) Received: from ?IPv6:2607:fb90:fc2:1b9f:4026:a8e0:25e5:211b? ([2607:fb90:fc2:1b9f:4026:a8e0:25e5:211b]) by smtp.gmail.com with ESMTPSA id l2sm7278164pgn.52.2019.02.15.09.22.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Feb 2019 09:22:29 -0800 (PST) Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r344129 - head From: Enji Cooper X-Mailer: iPhone Mail (16C104) In-Reply-To: Date: Fri, 15 Feb 2019 09:22:27 -0800 Cc: "Rodney W. Grimes" , Mark Johnston , Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <3415ED8D-6831-4EAA-97DB-7E45185E8B82@gmail.com> References: <20190214191329.GB50900@raichu> <201902142042.x1EKgSwf087717@pdx.rh.CN85.dnsmgr.net> To: Warner Losh X-Rspamd-Queue-Id: 9F17372E1D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 17:22:32 -0000 > On Feb 14, 2019, at 19:08, Warner Losh wrote: >=20 >> On Thu, Feb 14, 2019, 1:42 PM Rodney W. Grimes > > On Thu, Feb 14, 2019 at 12:00:22PM -0700, Warner Losh wrote: >> > > On Thu, Feb 14, 2019 at 11:29 AM Rodney W. Grimes < >> > > > > Differential Review: https://reviews.freebsd.org/D19193 >> > > > >> > > > You sited a differential, but not give any attribution >> > > > to the external source :-( >> > > > >> > >=20 >> > > The differential review has that information. >> >=20 >> > External contributors should be recognized by having their names appear= >> > in the commit logs. >>=20 >> We even bother to put a special line in the commit template >> for this. Further it has been standard operating procedure >> for at least as long as I have been back that submitters >> are infact recognized in commit messages. >>=20 >> You have, again, summarily dismissed valid feedback. >=20 >=20 > The problem is that was a trivial commit. And you offered not one, but two= complaints about adding an 'e' to the updating file. That's what pissed me o= ff. It's advice that might be correct, but was so far over the top, in publi= c, for such a trivial commit. That's why I got mad: it added no value and se= emed nit picky and pretty. So I lost it. I shouldn't have, but I did.=20 >=20 > I'm sorry for my cool. Thank you both Rod and Warner for the reply. Thank you Rod for noting that src-committers was a public list; I thought it= was private to FreeBSD src committers. I replied to this thread because while I agree with what you said, I felt th= at the reaction and forum were not in proportion to what happened :/. More than a handful of threads lately have become heated to a point that con= cerns me about inter-developer relations and perception outside of the commu= nity. I have taken part in some of the discussions, potentially contributing= to the overall issue. I=E2=80=99m happy with the eventual outcome, but I hope that we, as a group,= can do better next time to avoid these situations and be kinder to one anot= her. Many of the recent issues (while important in aggregate) seem minor (in= disaggregate). All the best, -Enji= From owner-svn-src-all@freebsd.org Fri Feb 15 18:09:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8189B14E3451; Fri, 15 Feb 2019 18:09:00 +0000 (UTC) (envelope-from chmeeedalf@gmail.com) Received: from mail-it1-x129.google.com (mail-it1-x129.google.com [IPv6:2607:f8b0:4864:20::129]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 04DEE753CE; Fri, 15 Feb 2019 18:09:00 +0000 (UTC) (envelope-from chmeeedalf@gmail.com) Received: by mail-it1-x129.google.com with SMTP id y184so26246280itc.1; Fri, 15 Feb 2019 10:09:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=JUIhCBDCDBqvD++dv5eOjxWyfNTPf2M5AWSpuhSoU/I=; b=d96nC2tsqp8aUG75OMu3RkZy5wU1EazXHcgjgE4BbESGFWcSCdJhOwziYnwlg9dycP hNT/4/xxGRhbXkoUoLSbFHcg9ZMaEZiEIBpUnLQjF4UfmR0m7exivcsWhA5dacaBdBAH Q+jF/knFk1Q5BA9t3hdTtjCf6NXLempEdd8NZVdnmpN0GDCjTJ6fxtYRMq69t/ltJtqD wOxCDQFT1uKALaXIg6yf76cvciBkWqwGQprfnd2S8vksAOXiHgRKBehRSby06JY2oZ3h GNa5cf+Tuq/rSiLIATWnNu6cXgVilBUPf0xpbLwG/pfvEuzDhIckRF/gR9s8lI8AANTH COEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=JUIhCBDCDBqvD++dv5eOjxWyfNTPf2M5AWSpuhSoU/I=; b=kLncyNZACoM3Z2p7zjVAvlv0Od4OmvtItvE1ClGc9GNyr6kwDli5uvT538DrvW1UVs AZic3WbxUwSOq1bNQNI43AosY54lNrXTNTfE+3OjbfwOxIs0hf5E7sQEZB5eU/nErlpp ZgDYJVYkNFhJXOu2hnb6cUrX9nTNjvmreNzbLepLydXRICGgKj4tJdTpDbTZfNTmLuA7 E2bRwZijdDfRx+9kWIxvASnTOyFFDe8DfM2+iZvobHd8l8kA424pPSrRC5SmSbMNmIt9 nDLsTwb+k9WN0Al17W5IYbx77m1oXDaoyinsBQLK8HoPtmAK579kRQv2tU/jMT+OW3ww dOBA== X-Gm-Message-State: AHQUAuYy04QLfFhMAe7zUMNBWU+4LIDGKVjV+lQQVOSRddZpZ5YNnh9g 17pui1yWIk77+fKzyxB4YvLNIBil X-Google-Smtp-Source: AHgI3IYTBQiTnLq+WFTnKrWxy152WMvVXnWogAW7xwMWzX9hO6MXXnemV6BvxbwGupNFNwo8CGeoig== X-Received: by 2002:a6b:760d:: with SMTP id g13mr1255694iom.273.1550254138639; Fri, 15 Feb 2019 10:08:58 -0800 (PST) Received: from ralga.knownspace (173-25-245-129.client.mchsi.com. [173.25.245.129]) by smtp.gmail.com with ESMTPSA id n4sm2926246iog.36.2019.02.15.10.08.57 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 15 Feb 2019 10:08:58 -0800 (PST) Date: Fri, 15 Feb 2019 12:08:54 -0600 From: Justin Hibbits To: Gleb Smirnoff Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm Message-ID: <20190215120854.15545f1d@ralga.knownspace> In-Reply-To: <20190214233410.GJ83215@FreeBSD.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214233410.GJ83215@FreeBSD.org> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; powerpc64-portbld-freebsd13.0) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 04DEE753CE X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.97)[-0.969,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 18:09:00 -0000 On Thu, 14 Feb 2019 15:34:10 -0800 Gleb Smirnoff wrote: > Hi Justin, > > On Wed, Feb 13, 2019 at 07:24:50PM -0600, Justin Hibbits wrote: > J> This seems to break 32-bit platforms, or at least 32-bit book-e > J> powerpc, which has a limited KVA space (~500MB). It preallocates > J> I've seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, > J> leaving very little left for the rest of runtime. > J> > J> I spent a couple hours earlier today debugging with Mark Johnston, > J> and his consensus is that the vnode_pbuf_zone is too big on 32-bit > J> platforms. Unfortunately I know very little about this area, so > J> can't provide much extra insight, but can readily reproduce the > J> issues I see triggered by this change, so am willing to help where > J> I can. > > Ok, let's roll back to old default on 32-bit platforms and somewhat > reduce the default on 64-bits. > > Can you please confirm that the patch attached works for you? > Hi Gleb, Thanks for the patch. I've built and installed. My machine boots up fine, and I dropped to ddb to check vmem. Results are as follows: r343029: kernel arena domain: size: 67108864 inuse: 66482176 free: 62668 kernel arena: size: 624951296 inuse: 579207168 free: 45744128 r344123 with your patch: kernel arena domain: size: 71303168 inuse: 68153344 free: 3149824 kernel arena: 645922816 inuse: 632369152 free: 13553664 I've kicked off a buildworld+buildkernel to see how it survives. This machine has 8GB RAM and 4GB swap, if that has any impact. - Justin From owner-svn-src-all@freebsd.org Fri Feb 15 18:28:53 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EAAF514E4378; Fri, 15 Feb 2019 18:28:52 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 67E40766E6; Fri, 15 Feb 2019 18:28:52 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5B9E8226FD; Fri, 15 Feb 2019 18:28:52 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FISqpv076888; Fri, 15 Feb 2019 18:28:52 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FISqoG076887; Fri, 15 Feb 2019 18:28:52 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902151828.x1FISqoG076887@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Fri, 15 Feb 2019 18:28:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344161 - head/stand/common X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/stand/common X-SVN-Commit-Revision: 344161 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 67E40766E6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.962,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 18:28:53 -0000 Author: kevans Date: Fri Feb 15 18:28:51 2019 New Revision: 344161 URL: https://svnweb.freebsd.org/changeset/base/344161 Log: stand: dev_net: correct net_open's interpretation of params net_open previously casted the first vararg to a char * and this was half-OK: at first, it is passed to netif_open, which would cast it back to the struct devdesc * that it really is and use it properly. It is then strdup()d and used as the netdev_name, which is objectively wrong. Correct it so that the first vararg is properly casted to a struct devdesc * and the netdev_name gets set properly to make it more clear at a glance that it's not doing something horribly wrong. Reported by: mmel Reviewed by: imp, mmel, tsoome MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D19206 Modified: head/stand/common/dev_net.c Modified: head/stand/common/dev_net.c ============================================================================== --- head/stand/common/dev_net.c Fri Feb 15 16:48:15 2019 (r344160) +++ head/stand/common/dev_net.c Fri Feb 15 18:28:51 2019 (r344161) @@ -122,13 +122,15 @@ net_open(struct open_file *f, ...) { struct iodesc *d; va_list args; - char *devname; /* Device part of file name (or NULL). */ + struct devdesc *dev; + const char *devname; /* Device part of file name (or NULL). */ int error = 0; va_start(args, f); - devname = va_arg(args, char*); + dev = va_arg(args, struct devdesc *); va_end(args); + devname = dev->d_dev->dv_name; /* Before opening another interface, close the previous one first. */ if (netdev_sock >= 0 && strcmp(devname, netdev_name) != 0) net_cleanup(); @@ -137,7 +139,7 @@ net_open(struct open_file *f, ...) if (netdev_opens == 0) { /* Find network interface. */ if (netdev_sock < 0) { - netdev_sock = netif_open(devname); + netdev_sock = netif_open(dev); if (netdev_sock < 0) { printf("net_open: netif_open() failed\n"); return (ENXIO); From owner-svn-src-all@freebsd.org Fri Feb 15 18:51:44 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7BF714E4F04; Fri, 15 Feb 2019 18:51:44 +0000 (UTC) (envelope-from shurd@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6CC86779C1; Fri, 15 Feb 2019 18:51:44 +0000 (UTC) (envelope-from shurd@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4AC2422BE0; Fri, 15 Feb 2019 18:51:44 +0000 (UTC) (envelope-from shurd@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FIpigP090647; Fri, 15 Feb 2019 18:51:44 GMT (envelope-from shurd@FreeBSD.org) Received: (from shurd@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FIpi5O090646; Fri, 15 Feb 2019 18:51:44 GMT (envelope-from shurd@FreeBSD.org) Message-Id: <201902151851.x1FIpi5O090646@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: shurd set sender to shurd@FreeBSD.org using -f From: Stephen Hurd Date: Fri, 15 Feb 2019 18:51:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344162 - head/sys/net X-SVN-Group: head X-SVN-Commit-Author: shurd X-SVN-Commit-Paths: head/sys/net X-SVN-Commit-Revision: 344162 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6CC86779C1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.964,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 18:51:45 -0000 Author: shurd Date: Fri Feb 15 18:51:43 2019 New Revision: 344162 URL: https://svnweb.freebsd.org/changeset/base/344162 Log: iflib: Improve return values of interrupt handlers. iflib was returning FILTER_HANDLED, in cases where FILTER_STRAY was more correct. This potentially caused issues with shared legacy interrupts. Driver filters returning FILTER_STRAY are now properly handled. Submitted by: Augustin Cavalier Reviewed by: marius, gallatin Obtained from: Haiku (a84bb9, 4947d1) MFC after: 1 week Sponsored by: Limelight Networks Differential Revision: https://reviews.freebsd.org/D19201 Modified: head/sys/net/iflib.c Modified: head/sys/net/iflib.c ============================================================================== --- head/sys/net/iflib.c Fri Feb 15 18:28:51 2019 (r344161) +++ head/sys/net/iflib.c Fri Feb 15 18:51:43 2019 (r344162) @@ -1468,12 +1468,17 @@ iflib_fast_intr(void *arg) { iflib_filter_info_t info = arg; struct grouptask *gtask = info->ifi_task; + int result; + if (!iflib_started) - return (FILTER_HANDLED); + return (FILTER_STRAY); DBG_COUNTER_INC(fast_intrs); - if (info->ifi_filter != NULL && info->ifi_filter(info->ifi_filter_arg) == FILTER_HANDLED) - return (FILTER_HANDLED); + if (info->ifi_filter != NULL) { + result = info->ifi_filter(info->ifi_filter_arg); + if ((result & FILTER_SCHEDULE_THREAD) == 0) + return (result); + } GROUPTASK_ENQUEUE(gtask); return (FILTER_HANDLED); @@ -1488,15 +1493,18 @@ iflib_fast_intr_rxtx(void *arg) iflib_rxq_t rxq = (iflib_rxq_t)info->ifi_ctx; iflib_txq_t txq; void *sc; - int i, cidx; + int i, cidx, result; qidx_t txqid; if (!iflib_started) - return (FILTER_HANDLED); + return (FILTER_STRAY); DBG_COUNTER_INC(fast_intrs); - if (info->ifi_filter != NULL && info->ifi_filter(info->ifi_filter_arg) == FILTER_HANDLED) - return (FILTER_HANDLED); + if (info->ifi_filter != NULL) { + result = info->ifi_filter(info->ifi_filter_arg); + if ((result & FILTER_SCHEDULE_THREAD) == 0) + return (result); + } ctx = rxq->ifr_ctx; sc = ctx->ifc_softc; @@ -1531,13 +1539,17 @@ iflib_fast_intr_ctx(void *arg) { iflib_filter_info_t info = arg; struct grouptask *gtask = info->ifi_task; + int result; if (!iflib_started) - return (FILTER_HANDLED); + return (FILTER_STRAY); DBG_COUNTER_INC(fast_intrs); - if (info->ifi_filter != NULL && info->ifi_filter(info->ifi_filter_arg) == FILTER_HANDLED) - return (FILTER_HANDLED); + if (info->ifi_filter != NULL) { + result = info->ifi_filter(info->ifi_filter_arg); + if ((result & FILTER_SCHEDULE_THREAD) == 0) + return (result); + } GROUPTASK_ENQUEUE(gtask); return (FILTER_HANDLED); From owner-svn-src-all@freebsd.org Fri Feb 15 19:00:52 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05F5914E52DA for ; Fri, 15 Feb 2019 19:00:52 +0000 (UTC) (envelope-from ricera10@gmail.com) Received: from mail-ed1-f65.google.com (mail-ed1-f65.google.com [209.85.208.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7ADB277F72 for ; Fri, 15 Feb 2019 19:00:51 +0000 (UTC) (envelope-from ricera10@gmail.com) Received: by mail-ed1-f65.google.com with SMTP id b17so8856505eds.2 for ; Fri, 15 Feb 2019 11:00:51 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=KRNLzqLNjVsZqCRTMNCUV1x68G46TjZI1q/GElSf/OY=; b=PnSc/+qpARUsRuRts7euY3pGj+pUE+ym+2gNqoOaLSwA7zbjdGq0sK3oE99l5eiPO9 giJTpeMr6nXbg2Gi9muEr6bcjWJwchNYVzRQuFJzin9NiHKh1ZhqT0UFvtqXSQ5G7Jc2 BRhEcaJ4fdsXtemK5fW+qwhmMRaFVauP0fji08YtWK+3pomFUOSBm7F7PQoq+vNubg6t ym+r3TvAx+1VkdH8lMjX0h8xIUzwqHcGYAiLTN3o5Azchmabpl1e/93dLx1zSljnFaI2 3RJeylMWbrcp8SonZRgUPTebBOMSYGv2NHRNs3xPfJUwiCNvelL/OOLSIyA1UsvtaP56 2sAA== X-Gm-Message-State: AHQUAuZcZeuwNhqEFGy6LbeAg0ftW/GiXKXU6iJU9pcZ00IPyEiCbO4d r1auEbKSwO/SJYD8EOMtUVcSNGwI X-Google-Smtp-Source: AHgI3Ia1zjajLwqmAGCaFadlx0DNpA3FGV914v68KvO0y+GwV6fuqsK+x8JjMe+Rdci+XhsxeuNvqw== X-Received: by 2002:a17:906:31c7:: with SMTP id f7mr7455454ejf.91.1550256875468; Fri, 15 Feb 2019 10:54:35 -0800 (PST) Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com. [209.85.128.50]) by smtp.gmail.com with ESMTPSA id m3sm1394350eja.11.2019.02.15.10.54.34 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Feb 2019 10:54:34 -0800 (PST) Received: by mail-wm1-f50.google.com with SMTP id b11so10981328wmj.1 for ; Fri, 15 Feb 2019 10:54:34 -0800 (PST) X-Received: by 2002:a1c:ce0e:: with SMTP id e14mr8047533wmg.53.1550256874182; Fri, 15 Feb 2019 10:54:34 -0800 (PST) MIME-Version: 1.0 References: <201902141822.x1EIMjPk087175@pdx.rh.CN85.dnsmgr.net> <9b32ae9a-3cca-3529-fb65-96026a14dbbd@FreeBSD.org> In-Reply-To: <9b32ae9a-3cca-3529-fb65-96026a14dbbd@FreeBSD.org> From: Eric Joyner Date: Fri, 15 Feb 2019 10:54:23 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r344132 - head/sys/dev/ixl To: John Baldwin Cc: rgrimes@freebsd.org, src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 7ADB277F72 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.994,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 19:00:52 -0000 I thought the same thing that John wrote -- I only need re@ approval for MFC's during the release process. I know it's unusually fast to have an MFC period of 1 day, but this change could fix a kernel panic when r344062 is MFC'd and doesn't result in a functional change to the driver, so I didn't think there was a reason for it to sit longer. - Eric On Thu, Feb 14, 2019 at 11:28 AM John Baldwin wrote: > On 2/14/19 10:22 AM, Rodney W. Grimes wrote: > >> Author: erj > >> Date: Thu Feb 14 18:02:37 2019 > >> New Revision: 344132 > >> URL: https://svnweb.freebsd.org/changeset/base/344132 > >> > >> Log: > >> ixl: Fix panic caused by bug exposed by r344062 > >> > >> Don't use a struct if_irq for IFLIB_INTR_IOV type interrupts since > that results > >> in get_core_offset() being called on them, and get_core_offset() > doesn't > >> handle IFLIB_INTR_IOV type interrupts, which results in an assert() > being triggered > >> in iflib_irq_set_affinity(). > >> > >> PR: 235730 > >> Reported by: Jeffrey Pieper > >> MFC after: 1 day > > > > Normally you would request an RE@ approval for a fast track to stable, > > consider this message such an approval. > > That does not match our historical practice over the past 20 years. If we > want to change that practice, that's a topic we can debate, but re@ has > only required oversight on MFC's during slushes/freezes with the additional > caveat of perhaps watching out for ABI breakage at any time (and requiring > approvals for a known ABI breakage on a branch). > > -- > John Baldwin > > > > From owner-svn-src-all@freebsd.org Fri Feb 15 19:13:12 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6938114E5821; Fri, 15 Feb 2019 19:13:12 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0A56680863; Fri, 15 Feb 2019 19:13:12 +0000 (UTC) (envelope-from erj@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F222022FB5; Fri, 15 Feb 2019 19:13:11 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FJDBGc002819; Fri, 15 Feb 2019 19:13:11 GMT (envelope-from erj@FreeBSD.org) Received: (from erj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FJDBfL002817; Fri, 15 Feb 2019 19:13:11 GMT (envelope-from erj@FreeBSD.org) Message-Id: <201902151913.x1FJDBfL002817@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: erj set sender to erj@FreeBSD.org using -f From: Eric Joyner Date: Fri, 15 Feb 2019 19:13:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344163 - stable/12/sys/dev/ixl X-SVN-Group: stable-12 X-SVN-Commit-Author: erj X-SVN-Commit-Paths: stable/12/sys/dev/ixl X-SVN-Commit-Revision: 344163 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 0A56680863 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 19:13:12 -0000 Author: erj Date: Fri Feb 15 19:13:11 2019 New Revision: 344163 URL: https://svnweb.freebsd.org/changeset/base/344163 Log: MFC r344132: ixl: Fix panic caused by bug exposed by r344062 Don't use a struct if_irq for IFLIB_INTR_IOV type interrupts since that results in get_core_offset() being called on them, and get_core_offset() doesn't handle IFLIB_INTR_IOV type interrupts, which results in an assert() being triggered in iflib_irq_set_affinity(). PR: 235730 Reported by: Jeffrey Pieper Sponsored by: Intel Corporation Modified: stable/12/sys/dev/ixl/if_ixl.c stable/12/sys/dev/ixl/ixl_pf.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ixl/if_ixl.c ============================================================================== --- stable/12/sys/dev/ixl/if_ixl.c Fri Feb 15 18:51:43 2019 (r344162) +++ stable/12/sys/dev/ixl/if_ixl.c Fri Feb 15 19:13:11 2019 (r344163) @@ -932,7 +932,7 @@ ixl_if_msix_intr_assign(if_ctx_t ctx, int msix) return (err); } /* Create soft IRQ for handling VFLRs */ - iflib_softirq_alloc_generic(ctx, &pf->iov_irq, IFLIB_INTR_IOV, pf, 0, "iov"); + iflib_softirq_alloc_generic(ctx, NULL, IFLIB_INTR_IOV, pf, 0, "iov"); /* Now set up the stations */ for (i = 0, vector = 1; i < vsi->shared->isc_nrxqsets; i++, vector++, rx_que++) { Modified: stable/12/sys/dev/ixl/ixl_pf.h ============================================================================== --- stable/12/sys/dev/ixl/ixl_pf.h Fri Feb 15 18:51:43 2019 (r344162) +++ stable/12/sys/dev/ixl/ixl_pf.h Fri Feb 15 19:13:11 2019 (r344163) @@ -138,7 +138,6 @@ struct ixl_pf { struct ixl_vf *vfs; int num_vfs; uint16_t veb_seid; - struct if_irq iov_irq; }; /* From owner-svn-src-all@freebsd.org Fri Feb 15 20:45:13 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2E75614E89C9; Fri, 15 Feb 2019 20:45:13 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C534183FE2; Fri, 15 Feb 2019 20:45:12 +0000 (UTC) (envelope-from wulf@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B354723EB0; Fri, 15 Feb 2019 20:45:12 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKjCpe049388; Fri, 15 Feb 2019 20:45:12 GMT (envelope-from wulf@FreeBSD.org) Received: (from wulf@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKjCnR049386; Fri, 15 Feb 2019 20:45:12 GMT (envelope-from wulf@FreeBSD.org) Message-Id: <201902152045.x1FKjCnR049386@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wulf set sender to wulf@FreeBSD.org using -f From: Vladimir Kondratyev Date: Fri, 15 Feb 2019 20:45:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344164 - in stable/12/sys: dev/atkbdc sys X-SVN-Group: stable-12 X-SVN-Commit-Author: wulf X-SVN-Commit-Paths: in stable/12/sys: dev/atkbdc sys X-SVN-Commit-Revision: 344164 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C534183FE2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:45:13 -0000 Author: wulf Date: Fri Feb 15 20:45:12 2019 New Revision: 344164 URL: https://svnweb.freebsd.org/changeset/base/344164 Log: MFC r343163: psm(4): detect Lenovo top-button clickpads libinput has special handling for Lenovo ThinkPad *40 series, where it treats clicks on the top button area as if they came from the TrackPoint: https://wayland.freedesktop.org/libinput/doc/latest/t440-support.html Detect these devices and set the corresponding evdev property. Submitted by: Greg V Differential Revision: https://reviews.freebsd.org/D18676 Modified: stable/12/sys/dev/atkbdc/psm.c stable/12/sys/sys/mouse.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/atkbdc/psm.c ============================================================================== --- stable/12/sys/dev/atkbdc/psm.c Fri Feb 15 19:13:11 2019 (r344163) +++ stable/12/sys/dev/atkbdc/psm.c Fri Feb 15 20:45:12 2019 (r344164) @@ -136,6 +136,7 @@ struct psmcpnp_softc { enum { PSMCPNP_GENERIC, PSMCPNP_FORCEPAD, + PSMCPNP_TOPBUTTONPAD, } type; /* Based on PnP ID */ }; @@ -1826,6 +1827,8 @@ psm_register_synaptics(device_t dev) evdev_support_prop(evdev_a, INPUT_PROP_SEMI_MT); if (sc->synhw.capClickPad) evdev_support_prop(evdev_a, INPUT_PROP_BUTTONPAD); + if (sc->synhw.capClickPad && sc->synhw.topButtonPad) + evdev_support_prop(evdev_a, INPUT_PROP_TOPBUTTONPAD); evdev_support_key(evdev_a, BTN_TOUCH); evdev_support_nfingers(evdev_a, 3); psm_support_abs_bulk(evdev_a, synaptics_absinfo_st); @@ -5711,7 +5714,7 @@ synaptics_sysctl_create_softbuttons_tree(struct psm_so */ /* hw.psm.synaptics.softbuttons_y */ - sc->syninfo.softbuttons_y = 1700; + sc->syninfo.softbuttons_y = sc->synhw.topButtonPad ? -1700 : 1700; SYSCTL_ADD_PROC(&sc->syninfo.sysctl_ctx, SYSCTL_CHILDREN(sc->syninfo.sysctl_tree), OID_AUTO, "softbuttons_y", CTLTYPE_INT|CTLFLAG_RW|CTLFLAG_ANYBODY, @@ -6441,6 +6444,9 @@ enable_synaptics(struct psm_softc *sc, enum probearg a case PSMCPNP_FORCEPAD: synhw.forcePad = 1; break; + case PSMCPNP_TOPBUTTONPAD: + synhw.topButtonPad = 1; + break; default: break; } @@ -6483,8 +6489,11 @@ enable_synaptics(struct psm_softc *sc, enum probearg a synhw.minimumYCoord); } if (synhw.capClickPad) { + printf(" Clickpad capabilities:\n"); printf(" forcePad: %d\n", synhw.forcePad); + printf(" topButtonPad: %d\n", + synhw.topButtonPad); } } buttons += synhw.capClickPad; @@ -7332,6 +7341,44 @@ static struct isa_pnp_id psmcpnp_ids[] = { }; /* _HID list for quirk detection. Any device below has _CID from psmcpnp_ids */ +static struct isa_pnp_id topbtpad_ids[] = { + { 0x1700ae30, "Lenovo PS/2 clickpad port" }, /* LEN0017, ThinkPad */ + { 0x1800ae30, "Lenovo PS/2 clickpad port" }, /* LEN0018, ThinkPad */ + { 0x1900ae30, "Lenovo PS/2 clickpad port" }, /* LEN0019, ThinkPad */ + { 0x2300ae30, "Lenovo PS/2 clickpad port" }, /* LEN0023, ThinkPad */ + { 0x2a00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002a, ThinkPad */ + { 0x2b00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002b, ThinkPad */ + { 0x2c00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002c, ThinkPad */ + { 0x2d00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002d, ThinkPad */ + { 0x2e00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002e, ThinkPad */ + { 0x3300ae30, "Lenovo PS/2 clickpad port" }, /* LEN0033, ThinkPad */ + { 0x3400ae30, "Lenovo PS/2 clickpad port" }, /* LEN0034, ThinkPad */ + { 0x3500ae30, "Lenovo PS/2 clickpad port" }, /* LEN0035, ThinkPad */ + { 0x3600ae30, "Lenovo PS/2 clickpad port" }, /* LEN0036, ThinkPad */ + { 0x3700ae30, "Lenovo PS/2 clickpad port" }, /* LEN0037, ThinkPad */ + { 0x3800ae30, "Lenovo PS/2 clickpad port" }, /* LEN0038, ThinkPad */ + { 0x3900ae30, "Lenovo PS/2 clickpad port" }, /* LEN0039, ThinkPad */ + { 0x4100ae30, "Lenovo PS/2 clickpad port" }, /* LEN0041, ThinkPad */ + { 0x4200ae30, "Lenovo PS/2 clickpad port" }, /* LEN0042, ThinkPad */ + { 0x4500ae30, "Lenovo PS/2 clickpad port" }, /* LEN0045, ThinkPad */ + { 0x4700ae30, "Lenovo PS/2 clickpad port" }, /* LEN0047, ThinkPad */ + { 0x4900ae30, "Lenovo PS/2 clickpad port" }, /* LEN0049, ThinkPad */ + { 0x0020ae30, "Lenovo PS/2 clickpad port" }, /* LEN2000, ThinkPad */ + { 0x0120ae30, "Lenovo PS/2 clickpad port" }, /* LEN2001, ThinkPad */ + { 0x0220ae30, "Lenovo PS/2 clickpad port" }, /* LEN2002, ThinkPad */ + { 0x0320ae30, "Lenovo PS/2 clickpad port" }, /* LEN2003, ThinkPad */ + { 0x0420ae30, "Lenovo PS/2 clickpad port" }, /* LEN2004, ThinkPad */ + { 0x0520ae30, "Lenovo PS/2 clickpad port" }, /* LEN2005, ThinkPad */ + { 0x0620ae30, "Lenovo PS/2 clickpad port" }, /* LEN2006, ThinkPad */ + { 0x0720ae30, "Lenovo PS/2 clickpad port" }, /* LEN2007, ThinkPad */ + { 0x0820ae30, "Lenovo PS/2 clickpad port" }, /* LEN2008, ThinkPad */ + { 0x0920ae30, "Lenovo PS/2 clickpad port" }, /* LEN2009, ThinkPad */ + { 0x0a20ae30, "Lenovo PS/2 clickpad port" }, /* LEN200a, ThinkPad */ + { 0x0b20ae30, "Lenovo PS/2 clickpad port" }, /* LEN200b, ThinkPad */ + { 0 } +}; + +/* _HID list for quirk detection. Any device below has _CID from psmcpnp_ids */ static struct isa_pnp_id forcepad_ids[] = { { 0x0d302e4f, "HP PS/2 forcepad port" }, /* SYN300D, EB 1040 */ { 0x14302e4f, "HP PS/2 forcepad port" }, /* SYN3014, EB 1040 */ @@ -7371,6 +7418,8 @@ psmcpnp_probe(device_t dev) if (ISA_PNP_PROBE(device_get_parent(dev), dev, forcepad_ids) == 0) sc->type = PSMCPNP_FORCEPAD; + else if (ISA_PNP_PROBE(device_get_parent(dev), dev, topbtpad_ids) == 0) + sc->type = PSMCPNP_TOPBUTTONPAD; else if (ISA_PNP_PROBE(device_get_parent(dev), dev, psmcpnp_ids) == 0) sc->type = PSMCPNP_GENERIC; else Modified: stable/12/sys/sys/mouse.h ============================================================================== --- stable/12/sys/sys/mouse.h Fri Feb 15 19:13:11 2019 (r344163) +++ stable/12/sys/sys/mouse.h Fri Feb 15 20:45:12 2019 (r344164) @@ -136,6 +136,7 @@ typedef struct synapticshw { int infoXupmm; int infoYupmm; int forcePad; + int topButtonPad; } synapticshw_t; /* iftype */ From owner-svn-src-all@freebsd.org Fri Feb 15 20:46:05 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D9EBC14E8A4C; Fri, 15 Feb 2019 20:46:04 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 808DC84126; Fri, 15 Feb 2019 20:46:04 +0000 (UTC) (envelope-from wulf@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7675323EB1; Fri, 15 Feb 2019 20:46:04 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKk4Kb049471; Fri, 15 Feb 2019 20:46:04 GMT (envelope-from wulf@FreeBSD.org) Received: (from wulf@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKk4Wm049469; Fri, 15 Feb 2019 20:46:04 GMT (envelope-from wulf@FreeBSD.org) Message-Id: <201902152046.x1FKk4Wm049469@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wulf set sender to wulf@FreeBSD.org using -f From: Vladimir Kondratyev Date: Fri, 15 Feb 2019 20:46:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344165 - in stable/11/sys: dev/atkbdc sys X-SVN-Group: stable-11 X-SVN-Commit-Author: wulf X-SVN-Commit-Paths: in stable/11/sys: dev/atkbdc sys X-SVN-Commit-Revision: 344165 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 808DC84126 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:46:05 -0000 Author: wulf Date: Fri Feb 15 20:46:03 2019 New Revision: 344165 URL: https://svnweb.freebsd.org/changeset/base/344165 Log: MFC r343163: psm(4): detect Lenovo top-button clickpads libinput has special handling for Lenovo ThinkPad *40 series, where it treats clicks on the top button area as if they came from the TrackPoint: https://wayland.freedesktop.org/libinput/doc/latest/t440-support.html Detect these devices and set the corresponding evdev property. Submitted by: Greg V Differential Revision: https://reviews.freebsd.org/D18676 Modified: stable/11/sys/dev/atkbdc/psm.c stable/11/sys/sys/mouse.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/atkbdc/psm.c ============================================================================== --- stable/11/sys/dev/atkbdc/psm.c Fri Feb 15 20:45:12 2019 (r344164) +++ stable/11/sys/dev/atkbdc/psm.c Fri Feb 15 20:46:03 2019 (r344165) @@ -136,6 +136,7 @@ struct psmcpnp_softc { enum { PSMCPNP_GENERIC, PSMCPNP_FORCEPAD, + PSMCPNP_TOPBUTTONPAD, } type; /* Based on PnP ID */ }; @@ -1823,6 +1824,8 @@ psm_register_synaptics(device_t dev) evdev_support_prop(evdev_a, INPUT_PROP_SEMI_MT); if (sc->synhw.capClickPad) evdev_support_prop(evdev_a, INPUT_PROP_BUTTONPAD); + if (sc->synhw.capClickPad && sc->synhw.topButtonPad) + evdev_support_prop(evdev_a, INPUT_PROP_TOPBUTTONPAD); evdev_support_key(evdev_a, BTN_TOUCH); evdev_support_nfingers(evdev_a, 3); psm_support_abs_bulk(evdev_a, synaptics_absinfo_st); @@ -5717,7 +5720,7 @@ synaptics_sysctl_create_softbuttons_tree(struct psm_so */ /* hw.psm.synaptics.softbuttons_y */ - sc->syninfo.softbuttons_y = 1700; + sc->syninfo.softbuttons_y = sc->synhw.topButtonPad ? -1700 : 1700; SYSCTL_ADD_PROC(&sc->syninfo.sysctl_ctx, SYSCTL_CHILDREN(sc->syninfo.sysctl_tree), OID_AUTO, "softbuttons_y", CTLTYPE_INT|CTLFLAG_RW|CTLFLAG_ANYBODY, @@ -6447,6 +6450,9 @@ enable_synaptics(struct psm_softc *sc, enum probearg a case PSMCPNP_FORCEPAD: synhw.forcePad = 1; break; + case PSMCPNP_TOPBUTTONPAD: + synhw.topButtonPad = 1; + break; default: break; } @@ -6489,8 +6495,11 @@ enable_synaptics(struct psm_softc *sc, enum probearg a synhw.minimumYCoord); } if (synhw.capClickPad) { + printf(" Clickpad capabilities:\n"); printf(" forcePad: %d\n", synhw.forcePad); + printf(" topButtonPad: %d\n", + synhw.topButtonPad); } } buttons += synhw.capClickPad; @@ -7338,6 +7347,44 @@ static struct isa_pnp_id psmcpnp_ids[] = { }; /* _HID list for quirk detection. Any device below has _CID from psmcpnp_ids */ +static struct isa_pnp_id topbtpad_ids[] = { + { 0x1700ae30, "Lenovo PS/2 clickpad port" }, /* LEN0017, ThinkPad */ + { 0x1800ae30, "Lenovo PS/2 clickpad port" }, /* LEN0018, ThinkPad */ + { 0x1900ae30, "Lenovo PS/2 clickpad port" }, /* LEN0019, ThinkPad */ + { 0x2300ae30, "Lenovo PS/2 clickpad port" }, /* LEN0023, ThinkPad */ + { 0x2a00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002a, ThinkPad */ + { 0x2b00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002b, ThinkPad */ + { 0x2c00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002c, ThinkPad */ + { 0x2d00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002d, ThinkPad */ + { 0x2e00ae30, "Lenovo PS/2 clickpad port" }, /* LEN002e, ThinkPad */ + { 0x3300ae30, "Lenovo PS/2 clickpad port" }, /* LEN0033, ThinkPad */ + { 0x3400ae30, "Lenovo PS/2 clickpad port" }, /* LEN0034, ThinkPad */ + { 0x3500ae30, "Lenovo PS/2 clickpad port" }, /* LEN0035, ThinkPad */ + { 0x3600ae30, "Lenovo PS/2 clickpad port" }, /* LEN0036, ThinkPad */ + { 0x3700ae30, "Lenovo PS/2 clickpad port" }, /* LEN0037, ThinkPad */ + { 0x3800ae30, "Lenovo PS/2 clickpad port" }, /* LEN0038, ThinkPad */ + { 0x3900ae30, "Lenovo PS/2 clickpad port" }, /* LEN0039, ThinkPad */ + { 0x4100ae30, "Lenovo PS/2 clickpad port" }, /* LEN0041, ThinkPad */ + { 0x4200ae30, "Lenovo PS/2 clickpad port" }, /* LEN0042, ThinkPad */ + { 0x4500ae30, "Lenovo PS/2 clickpad port" }, /* LEN0045, ThinkPad */ + { 0x4700ae30, "Lenovo PS/2 clickpad port" }, /* LEN0047, ThinkPad */ + { 0x4900ae30, "Lenovo PS/2 clickpad port" }, /* LEN0049, ThinkPad */ + { 0x0020ae30, "Lenovo PS/2 clickpad port" }, /* LEN2000, ThinkPad */ + { 0x0120ae30, "Lenovo PS/2 clickpad port" }, /* LEN2001, ThinkPad */ + { 0x0220ae30, "Lenovo PS/2 clickpad port" }, /* LEN2002, ThinkPad */ + { 0x0320ae30, "Lenovo PS/2 clickpad port" }, /* LEN2003, ThinkPad */ + { 0x0420ae30, "Lenovo PS/2 clickpad port" }, /* LEN2004, ThinkPad */ + { 0x0520ae30, "Lenovo PS/2 clickpad port" }, /* LEN2005, ThinkPad */ + { 0x0620ae30, "Lenovo PS/2 clickpad port" }, /* LEN2006, ThinkPad */ + { 0x0720ae30, "Lenovo PS/2 clickpad port" }, /* LEN2007, ThinkPad */ + { 0x0820ae30, "Lenovo PS/2 clickpad port" }, /* LEN2008, ThinkPad */ + { 0x0920ae30, "Lenovo PS/2 clickpad port" }, /* LEN2009, ThinkPad */ + { 0x0a20ae30, "Lenovo PS/2 clickpad port" }, /* LEN200a, ThinkPad */ + { 0x0b20ae30, "Lenovo PS/2 clickpad port" }, /* LEN200b, ThinkPad */ + { 0 } +}; + +/* _HID list for quirk detection. Any device below has _CID from psmcpnp_ids */ static struct isa_pnp_id forcepad_ids[] = { { 0x0d302e4f, "HP PS/2 forcepad port" }, /* SYN300D, EB 1040 */ { 0x14302e4f, "HP PS/2 forcepad port" }, /* SYN3014, EB 1040 */ @@ -7377,6 +7424,8 @@ psmcpnp_probe(device_t dev) if (ISA_PNP_PROBE(device_get_parent(dev), dev, forcepad_ids) == 0) sc->type = PSMCPNP_FORCEPAD; + else if (ISA_PNP_PROBE(device_get_parent(dev), dev, topbtpad_ids) == 0) + sc->type = PSMCPNP_TOPBUTTONPAD; else if (ISA_PNP_PROBE(device_get_parent(dev), dev, psmcpnp_ids) == 0) sc->type = PSMCPNP_GENERIC; else Modified: stable/11/sys/sys/mouse.h ============================================================================== --- stable/11/sys/sys/mouse.h Fri Feb 15 20:45:12 2019 (r344164) +++ stable/11/sys/sys/mouse.h Fri Feb 15 20:46:03 2019 (r344165) @@ -136,6 +136,7 @@ typedef struct synapticshw { int infoXupmm; int infoYupmm; int forcePad; + int topButtonPad; } synapticshw_t; /* iftype */ From owner-svn-src-all@freebsd.org Fri Feb 15 20:48:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D30CA14E8B64; Fri, 15 Feb 2019 20:48:56 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7CE2D842E0; Fri, 15 Feb 2019 20:48:56 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 72E5323EB6; Fri, 15 Feb 2019 20:48:56 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKmuUF049673; Fri, 15 Feb 2019 20:48:56 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKmqwV049650; Fri, 15 Feb 2019 20:48:52 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152048.x1FKmqwV049650@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:48:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344166 - in vendor/llvm/dist-release_80: . bindings/go/llvm cmake/modules docs include/llvm/BinaryFormat include/llvm/MC lib/Analysis lib/MC lib/MC/MCParser lib/Object lib/Support/Unix... X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in vendor/llvm/dist-release_80: . bindings/go/llvm cmake/modules docs include/llvm/BinaryFormat include/llvm/MC lib/Analysis lib/MC lib/MC/MCParser lib/Object lib/Support/Unix lib/Target/AArch64 lib/T... X-SVN-Commit-Revision: 344166 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7CE2D842E0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:48:57 -0000 Author: dim Date: Fri Feb 15 20:48:51 2019 New Revision: 344166 URL: https://svnweb.freebsd.org/changeset/base/344166 Log: Vendor import of llvm release_80 branch r354130: https://llvm.org/svn/llvm-project/llvm/branches/release_80@354130 Added: vendor/llvm/dist-release_80/test/CodeGen/AArch64/cmpxchg-lse-even-regs.ll vendor/llvm/dist-release_80/test/CodeGen/AArch64/seqpaircopy.mir vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/main-three-args.ll vendor/llvm/dist-release_80/test/CodeGen/X86/inline-asm-default-clobbers.ll vendor/llvm/dist-release_80/test/CodeGen/X86/pr40529.ll vendor/llvm/dist-release_80/test/Instrumentation/MemorySanitizer/global_ctors_2to3.ll vendor/llvm/dist-release_80/test/MC/WebAssembly/import-module.ll Deleted: vendor/llvm/dist-release_80/test/MC/MachO/file-single.s Modified: vendor/llvm/dist-release_80/CMakeLists.txt vendor/llvm/dist-release_80/bindings/go/llvm/ir_test.go vendor/llvm/dist-release_80/cmake/modules/CheckCompilerVersion.cmake vendor/llvm/dist-release_80/cmake/modules/CrossCompile.cmake vendor/llvm/dist-release_80/docs/CMake.rst vendor/llvm/dist-release_80/docs/DeveloperPolicy.rst vendor/llvm/dist-release_80/docs/GettingStarted.rst vendor/llvm/dist-release_80/docs/LibFuzzer.rst vendor/llvm/dist-release_80/docs/ReleaseNotes.rst vendor/llvm/dist-release_80/include/llvm/BinaryFormat/Wasm.h vendor/llvm/dist-release_80/include/llvm/MC/MCSymbolWasm.h vendor/llvm/dist-release_80/lib/Analysis/TargetLibraryInfo.cpp vendor/llvm/dist-release_80/lib/MC/MCExpr.cpp vendor/llvm/dist-release_80/lib/MC/MCParser/AsmParser.cpp vendor/llvm/dist-release_80/lib/MC/WasmObjectWriter.cpp vendor/llvm/dist-release_80/lib/Object/WasmObjectFile.cpp vendor/llvm/dist-release_80/lib/Support/Unix/Threading.inc vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.cpp vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.h vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64RegisterInfo.td vendor/llvm/dist-release_80/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp vendor/llvm/dist-release_80/lib/Target/SystemZ/SystemZISelLowering.cpp vendor/llvm/dist-release_80/lib/Target/SystemZ/SystemZInstrInfo.cpp vendor/llvm/dist-release_80/lib/Target/SystemZ/SystemZInstrInfo.h vendor/llvm/dist-release_80/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp vendor/llvm/dist-release_80/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp vendor/llvm/dist-release_80/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.h vendor/llvm/dist-release_80/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp vendor/llvm/dist-release_80/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp vendor/llvm/dist-release_80/lib/Target/X86/AsmParser/X86AsmParser.cpp vendor/llvm/dist-release_80/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp vendor/llvm/dist-release_80/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h vendor/llvm/dist-release_80/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp vendor/llvm/dist-release_80/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h vendor/llvm/dist-release_80/lib/Target/X86/X86ISelLowering.cpp vendor/llvm/dist-release_80/lib/Target/X86/X86InstrFPStack.td vendor/llvm/dist-release_80/lib/Target/X86/X86InstrInfo.td vendor/llvm/dist-release_80/lib/Target/X86/X86RegisterInfo.cpp vendor/llvm/dist-release_80/lib/Target/X86/X86RegisterInfo.td vendor/llvm/dist-release_80/lib/Transforms/Instrumentation/MemorySanitizer.cpp vendor/llvm/dist-release_80/test/CodeGen/MIR/X86/memory-operands.mir vendor/llvm/dist-release_80/test/CodeGen/Mips/micromips-b-range.ll vendor/llvm/dist-release_80/test/CodeGen/SystemZ/memcmp-01.ll vendor/llvm/dist-release_80/test/CodeGen/SystemZ/strcmp-01.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/call.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/function-bitcasts-varargs.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/function-bitcasts.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/import-module.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/main-declaration.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/main-no-args.ll vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/main-with-args.ll vendor/llvm/dist-release_80/test/CodeGen/X86/and-su.ll vendor/llvm/dist-release_80/test/CodeGen/X86/avx512-regcall-NoMask.ll vendor/llvm/dist-release_80/test/CodeGen/X86/fcmove.ll vendor/llvm/dist-release_80/test/CodeGen/X86/fmf-flags.ll vendor/llvm/dist-release_80/test/CodeGen/X86/fp-cvt.ll vendor/llvm/dist-release_80/test/CodeGen/X86/inline-asm-fpstack.ll vendor/llvm/dist-release_80/test/CodeGen/X86/ipra-reg-usage.ll vendor/llvm/dist-release_80/test/CodeGen/X86/pr13577.ll vendor/llvm/dist-release_80/test/CodeGen/X86/pr33349.ll vendor/llvm/dist-release_80/test/CodeGen/X86/pr34080.ll vendor/llvm/dist-release_80/test/CodeGen/X86/pr34177.ll vendor/llvm/dist-release_80/test/CodeGen/X86/scalar-fp-to-i64.ll vendor/llvm/dist-release_80/test/CodeGen/X86/select.ll vendor/llvm/dist-release_80/test/CodeGen/X86/sincos-opt.ll vendor/llvm/dist-release_80/test/CodeGen/X86/x87-schedule.ll vendor/llvm/dist-release_80/test/DebugInfo/Mips/eh_frame.ll vendor/llvm/dist-release_80/test/Instrumentation/MemorySanitizer/msan_basic.ll vendor/llvm/dist-release_80/test/Instrumentation/MemorySanitizer/msan_llvm_is_constant.ll vendor/llvm/dist-release_80/test/MC/Disassembler/X86/fp-stack.txt vendor/llvm/dist-release_80/test/MC/Disassembler/X86/x86-16.txt vendor/llvm/dist-release_80/test/MC/MachO/file.s vendor/llvm/dist-release_80/test/MC/WebAssembly/external-func-address.ll vendor/llvm/dist-release_80/test/MC/X86/PPRO-32.s vendor/llvm/dist-release_80/test/MC/X86/PPRO-64.s vendor/llvm/dist-release_80/test/MC/X86/X87-32.s vendor/llvm/dist-release_80/test/MC/X86/X87-64.s vendor/llvm/dist-release_80/test/MC/X86/intel-syntax-2.s vendor/llvm/dist-release_80/test/MC/X86/intel-syntax.s vendor/llvm/dist-release_80/test/MC/X86/x86-16.s vendor/llvm/dist-release_80/test/MC/X86/x86-32-coverage.s vendor/llvm/dist-release_80/test/MC/X86/x86-32.s vendor/llvm/dist-release_80/test/MC/X86/x86-64.s vendor/llvm/dist-release_80/test/Transforms/InstCombine/double-float-shrink-1.ll vendor/llvm/dist-release_80/test/Transforms/InstCombine/double-float-shrink-2.ll vendor/llvm/dist-release_80/test/Transforms/InstCombine/pow-1.ll vendor/llvm/dist-release_80/test/Transforms/InstCombine/win-math.ll vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/Atom/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/BdVer2/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/Broadwell/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/BtVer2/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/Generic/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/Haswell/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/SLM/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/SandyBridge/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/SkylakeClient/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/SkylakeServer/resources-x87.s vendor/llvm/dist-release_80/test/tools/llvm-mca/X86/Znver1/resources-x87.s vendor/llvm/dist-release_80/tools/yaml2obj/yaml2wasm.cpp vendor/llvm/dist-release_80/utils/TableGen/X86RecognizableInstr.cpp Modified: vendor/llvm/dist-release_80/CMakeLists.txt ============================================================================== --- vendor/llvm/dist-release_80/CMakeLists.txt Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/CMakeLists.txt Fri Feb 15 20:48:51 2019 (r344166) @@ -383,8 +383,11 @@ option(LLVM_ENABLE_EXPENSIVE_CHECKS "Enable expensive set(LLVM_ABI_BREAKING_CHECKS "WITH_ASSERTS" CACHE STRING "Enable abi-breaking checks. Can be WITH_ASSERTS, FORCE_ON or FORCE_OFF.") -option(LLVM_FORCE_USE_OLD_HOST_TOOLCHAIN +option(LLVM_FORCE_USE_OLD_TOOLCHAIN "Set to ON to force using an old, unsupported host toolchain." OFF) + +option(LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN + "Set to ON to only warn when using a toolchain which is about to be deprecated, instead of emitting an error." OFF) option(LLVM_USE_INTEL_JITEVENTS "Use Intel JIT API to inform Intel(R) VTune(TM) Amplifier XE 2011 about JIT code" Modified: vendor/llvm/dist-release_80/bindings/go/llvm/ir_test.go ============================================================================== --- vendor/llvm/dist-release_80/bindings/go/llvm/ir_test.go Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/bindings/go/llvm/ir_test.go Fri Feb 15 20:48:51 2019 (r344166) @@ -31,7 +31,7 @@ func testAttribute(t *testing.T, name string) { fn.AddFunctionAttr(attr) newattr := fn.GetEnumFunctionAttribute(kind) if attr != newattr { - t.Errorf("got attribute mask %d, want %d", newattr, attr) + t.Errorf("got attribute %p, want %p", newattr.C, attr.C) } text := mod.String() @@ -42,7 +42,7 @@ func testAttribute(t *testing.T, name string) { fn.RemoveEnumFunctionAttribute(kind) newattr = fn.GetEnumFunctionAttribute(kind) if !newattr.IsNil() { - t.Errorf("got attribute mask %d, want 0", newattr) + t.Errorf("got attribute %p, want 0", newattr.C) } } Modified: vendor/llvm/dist-release_80/cmake/modules/CheckCompilerVersion.cmake ============================================================================== --- vendor/llvm/dist-release_80/cmake/modules/CheckCompilerVersion.cmake Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/cmake/modules/CheckCompilerVersion.cmake Fri Feb 15 20:48:51 2019 (r344166) @@ -1,52 +1,94 @@ -# Check if the host compiler is new enough. LLVM requires at least GCC 4.8, -# MSVC 2015 (Update 3), or Clang 3.1. +# Check if the host compiler is new enough. +# These versions are updated based on the following policy: +# llvm.org/docs/DeveloperPolicy.html#toolchain include(CheckCXXSourceCompiles) -if(NOT DEFINED LLVM_COMPILER_CHECKED) - set(LLVM_COMPILER_CHECKED ON) +set(GCC_MIN 4.8) +set(GCC_SOFT_ERROR 5.1) +set(CLANG_MIN 3.1) +set(CLANG_SOFT_ERROR 3.5) +set(APPLECLANG_MIN 3.1) +set(APPLECLANG_SOFT_ERROR 6.0) +set(MSVC_MIN 19.00.24213.1) +set(MSVC_SOFT_ERROR 19.1) - if(NOT LLVM_FORCE_USE_OLD_TOOLCHAIN) - if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") - if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8) - message(FATAL_ERROR "Host GCC version must be at least 4.8!") - endif() - elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") - if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.1) - message(FATAL_ERROR "Host Clang version must be at least 3.1!") - endif() +# Map the above GCC versions to dates: https://gcc.gnu.org/develop.html#timeline +set(GCC_MIN_DATE 20130322) +set(GCC_SOFT_ERROR_DATE 20150422) - if (CMAKE_CXX_SIMULATE_ID MATCHES "MSVC") - if (CMAKE_CXX_SIMULATE_VERSION VERSION_LESS 19.0) - message(FATAL_ERROR "Host Clang must have at least -fms-compatibility-version=19.0") - endif() - set(CLANG_CL 1) - elseif(NOT LLVM_ENABLE_LIBCXX) - # Otherwise, test that we aren't using too old of a version of libstdc++ - # with the Clang compiler. This is tricky as there is no real way to - # check the version of libstdc++ directly. Instead we test for a known - # bug in libstdc++4.6 that is fixed in libstdc++4.7. - set(OLD_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS}) - set(OLD_CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}) - set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -std=c++0x") - check_cxx_source_compiles(" -#include -std::atomic x(0.0f); -int main() { return (float)x; }" - LLVM_NO_OLD_LIBSTDCXX) - if(NOT LLVM_NO_OLD_LIBSTDCXX) - message(FATAL_ERROR "Host Clang must be able to find libstdc++4.8 or newer!") - endif() - set(CMAKE_REQUIRED_FLAGS ${OLD_CMAKE_REQUIRED_FLAGS}) - set(CMAKE_REQUIRED_LIBRARIES ${OLD_CMAKE_REQUIRED_LIBRARIES}) + +if(DEFINED LLVM_COMPILER_CHECKED) + return() +endif() +set(LLVM_COMPILER_CHECKED ON) + +if(LLVM_FORCE_USE_OLD_TOOLCHAIN) + return() +endif() + +function(check_compiler_version NAME NICE_NAME MINIMUM_VERSION SOFT_ERROR_VERSION) + if(NOT CMAKE_CXX_COMPILER_ID STREQUAL NAME) + return() + endif() + if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS MINIMUM_VERSION) + message(FATAL_ERROR "Host ${NICE_NAME} version must be at least ${MINIMUM_VERSION}, your version is ${CMAKE_CXX_COMPILER_VERSION}.") + elseif(CMAKE_CXX_COMPILER_VERSION VERSION_LESS SOFT_ERROR_VERSION) + if(LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN) + message(WARNING "Host ${NICE_NAME} version should be at least ${SOFT_ERROR_VERSION} because LLVM will soon use new C++ features which your toolchain version doesn't support. Your version is ${CMAKE_CXX_COMPILER_VERSION}. Ignoring because you've set LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN, but very soon your toolchain won't be supported.") + else() + message(FATAL_ERROR "Host ${NICE_NAME} version should be at least ${SOFT_ERROR_VERSION} because LLVM will soon use new C++ features which your toolchain version doesn't support. Your version is ${CMAKE_CXX_COMPILER_VERSION}. You can temporarily opt out using LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN, but very soon your toolchain won't be supported.") + endif() + endif() +endfunction(check_compiler_version) + +check_compiler_version("GNU" "GCC" ${GCC_MIN} ${GCC_SOFT_ERROR}) +check_compiler_version("Clang" "Clang" ${CLANG_MIN} ${CLANG_SOFT_ERROR}) +check_compiler_version("AppleClang" "Apple Clang" ${APPLECLANG_MIN} ${APPLECLANG_SOFT_ERROR}) +check_compiler_version("MSVC" "Visual Studio" ${MSVC_MIN} ${MSVC_SOFT_ERROR}) + +if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + if (CMAKE_CXX_SIMULATE_ID MATCHES "MSVC") + if (CMAKE_CXX_SIMULATE_VERSION VERSION_LESS MSVC_MIN) + message(FATAL_ERROR "Host Clang must have at least -fms-compatibility-version=${MSVC_MIN}, your version is ${CMAKE_CXX_COMPILER_VERSION}.") + endif() + set(CLANG_CL 1) + elseif(NOT LLVM_ENABLE_LIBCXX) + # Test that we aren't using too old of a version of libstdc++. + set(OLD_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS}) + set(OLD_CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}) + set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -std=c++0x") + check_cxx_source_compiles(" +#include +#if defined(__GLIBCXX__) +#if __GLIBCXX__ < ${GCC_MIN_DATE} +#error Unsupported libstdc++ version +#endif +#endif +int main() { return 0; } +" + LLVM_LIBSTDCXX_MIN) + if(NOT LLVM_LIBSTDCXX_MIN) + message(FATAL_ERROR "libstdc++ version must be at least ${GCC_MIN}.") + endif() + check_cxx_source_compiles(" +#include +#if defined(__GLIBCXX__) +#if __GLIBCXX__ < ${GCC_SOFT_ERROR_DATE} +#error Unsupported libstdc++ version +#endif +#endif +int main() { return 0; } +" + LLVM_LIBSTDCXX_SOFT_ERROR) + if(NOT LLVM_LIBSTDCXX_SOFT_ERROR) + if(LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN) + message(WARNING "libstdc++ version should be at least ${GCC_SOFT_ERROR} because LLVM will soon use new C++ features which your toolchain version doesn't support. Ignoring because you've set LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN, but very soon your toolchain won't be supported.") + else() + message(FATAL_ERROR "libstdc++ version should be at least ${GCC_SOFT_ERROR} because LLVM will soon use new C++ features which your toolchain version doesn't support. You can temporarily opt out using LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN, but very soon your toolchain won't be supported.") endif() - elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC") - if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0) - message(FATAL_ERROR "Host Visual Studio must be at least 2015") - elseif(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.00.24213.1) - message(WARNING "Host Visual Studio should at least be 2015 Update 3 (MSVC 19.00.24213.1)" - " due to miscompiles from earlier versions") - endif() endif() + set(CMAKE_REQUIRED_FLAGS ${OLD_CMAKE_REQUIRED_FLAGS}) + set(CMAKE_REQUIRED_LIBRARIES ${OLD_CMAKE_REQUIRED_LIBRARIES}) endif() endif() Modified: vendor/llvm/dist-release_80/cmake/modules/CrossCompile.cmake ============================================================================== --- vendor/llvm/dist-release_80/cmake/modules/CrossCompile.cmake Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/cmake/modules/CrossCompile.cmake Fri Feb 15 20:48:51 2019 (r344166) @@ -52,6 +52,7 @@ function(llvm_create_cross_target_internal target_name -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${experimental_targets_to_build_arg}" -DLLVM_DEFAULT_TARGET_TRIPLE="${TARGET_TRIPLE}" -DLLVM_TARGET_ARCH="${LLVM_TARGET_ARCH}" + -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN="${LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN}" ${build_type_flags} ${linker_flag} ${external_clang_dir} WORKING_DIRECTORY ${LLVM_${target_name}_BUILD} DEPENDS CREATE_LLVM_${target_name} Modified: vendor/llvm/dist-release_80/docs/CMake.rst ============================================================================== --- vendor/llvm/dist-release_80/docs/CMake.rst Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/docs/CMake.rst Fri Feb 15 20:48:51 2019 (r344166) @@ -573,6 +573,15 @@ LLVM-specific variables options, which are passed to the CCACHE_MAXSIZE and CCACHE_DIR environment variables, respectively. +**LLVM_FORCE_USE_OLD_TOOLCHAIN**:BOOL + If enabled, the compiler and standard library versions won't be checked. LLVM + may not compile at all, or might fail at runtime due to known bugs in these + toolchains. + +**LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN**:BOOL + If enabled, the compiler version check will only warn when using a toolchain + which is about to be deprecated, instead of emitting an error. + CMake Caches ============ Modified: vendor/llvm/dist-release_80/docs/DeveloperPolicy.rst ============================================================================== --- vendor/llvm/dist-release_80/docs/DeveloperPolicy.rst Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/docs/DeveloperPolicy.rst Fri Feb 15 20:48:51 2019 (r344166) @@ -22,7 +22,7 @@ This policy is also designed to accomplish the followi #. Make life as simple and easy for contributors as possible. -#. Keep the tip of tree as stable as possible. +#. Keep the top of tree as stable as possible. #. Establish awareness of the project's :ref:`copyright, license, and patent policies ` with contributors to the project. @@ -637,6 +637,47 @@ To **continue** as a supported and official target: In essences, these rules are necessary for targets to gain and retain their status, but also markers to define bit-rot, and will be used to clean up the tree from unmaintained targets. + +.. _toolchain: + +Updating Toolchain Requirements +------------------------------- + +We intend to require newer toolchains as time goes by. This means LLVM's +codebase can use newer versions of C++ as they get standardized. Requiring newer +toolchains to build LLVM can be painful for those building LLVM; therefore, it +will only be done through the following process: + + * Generally, try to support LLVM and GCC versions from the last 3 years at a + minimum. This time-based guideline is not strict: we may support much older + compilers, or decide to support fewer versions. + + * An RFC is sent to the `llvm-dev mailing list `_ + + - Detail upsides of the version increase (e.g. which newer C++ language or + library features LLVM should use; avoid miscompiles in particular compiler + versions, etc). + - Detail downsides on important platforms (e.g. Ubuntu LTS status). + + * Once the RFC reaches consensus, update the CMake toolchain version checks as + well as the :doc:`getting started` guide. We want to + soft-error when developers compile LLVM. We say "soft-error" because the + error can be turned into a warning using a CMake flag. This is an important + step: LLVM still doesn't have code which requires the new toolchains, but it + soon will. If you compile LLVM but don't read the mailing list, we should + tell you! + + * Ensure that at least one LLVM release has had this soft-error. Not all + developers compile LLVM top-of-tree. These release-bound developers should + also be told about upcoming changes. + + * Turn the soft-error into a hard-error after said LLVM release has branched. + + * Update the :doc:`coding standards` to allow the new + features we've explicitly approved in the RFC. + + * Start using the new features in LLVM's codebase. + .. _copyright-license-patents: Modified: vendor/llvm/dist-release_80/docs/GettingStarted.rst ============================================================================== --- vendor/llvm/dist-release_80/docs/GettingStarted.rst Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/docs/GettingStarted.rst Fri Feb 15 20:48:51 2019 (r344166) @@ -170,7 +170,7 @@ uses the package and provides other details. Package Version Notes =========================================================== ============ ========================================== `GNU Make `_ 3.79, 3.79.1 Makefile/build processor -`GCC `_ >=4.8.0 C/C++ compiler\ :sup:`1` +`GCC `_ >=5.1.0 C/C++ compiler\ :sup:`1` `python `_ >=2.7 Automated test suite\ :sup:`2` `zlib `_ >=1.2.3.4 Compression library\ :sup:`3` =========================================================== ============ ========================================== @@ -220,15 +220,25 @@ Host C++ Toolchain, both Compiler and Standard Library ------------------------------------------------------ LLVM is very demanding of the host C++ compiler, and as such tends to expose -bugs in the compiler. We are also planning to follow improvements and -developments in the C++ language and library reasonably closely. As such, we -require a modern host C++ toolchain, both compiler and standard library, in -order to build LLVM. +bugs in the compiler. We also attempt to follow improvements and developments in +the C++ language and library reasonably closely. As such, we require a modern +host C++ toolchain, both compiler and standard library, in order to build LLVM. -For the most popular host toolchains we check for specific minimum versions in -our build systems: +LLVM is written using the subset of C++ documented in :doc:`coding +standards`. To enforce this language version, we check the most +popular host toolchains for specific minimum versions in our build systems: +* Clang 3.5 +* Apple Clang 6.0 +* GCC 5.1 +* Visual Studio 2017 + +The below versions currently soft-error as we transition to the new compiler +versions listed above. The LLVM codebase is currently known to compile correctly +with the following compilers, though this will change in the near future: + * Clang 3.1 +* Apple Clang 3.1 * GCC 4.8 * Visual Studio 2015 (Update 3) @@ -282,33 +292,36 @@ The first step is to get a recent GCC toolchain instal distribution on which users have struggled with the version requirements is Ubuntu Precise, 12.04 LTS. For this distribution, one easy option is to install the `toolchain testing PPA`_ and use it to install a modern GCC. There is -a really nice discussions of this on the `ask ubuntu stack exchange`_. However, -not all users can use PPAs and there are many other distributions, so it may be -necessary (or just useful, if you're here you *are* doing compiler development -after all) to build and install GCC from source. It is also quite easy to do -these days. +a really nice discussions of this on the `ask ubuntu stack exchange`_ and a +`github gist`_ with updated commands. However, not all users can use PPAs and +there are many other distributions, so it may be necessary (or just useful, if +you're here you *are* doing compiler development after all) to build and install +GCC from source. It is also quite easy to do these days. .. _toolchain testing PPA: https://launchpad.net/~ubuntu-toolchain-r/+archive/test .. _ask ubuntu stack exchange: - http://askubuntu.com/questions/271388/how-to-install-gcc-4-8-in-ubuntu-12-04-from-the-terminal + https://askubuntu.com/questions/466651/how-do-i-use-the-latest-gcc-on-ubuntu/581497#58149 +.. _github gist: + https://gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91 -Easy steps for installing GCC 4.8.2: +Easy steps for installing GCC 5.1.0: .. code-block:: console - % wget https://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2 - % wget https://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2.sig + % gcc_version=5.1.0 + % wget https://ftp.gnu.org/gnu/gcc/gcc-${gcc_version}/gcc-${gcc_version}.tar.bz2 + % wget https://ftp.gnu.org/gnu/gcc/gcc-${gcc_version}/gcc-${gcc_version}.tar.bz2.sig % wget https://ftp.gnu.org/gnu/gnu-keyring.gpg - % signature_invalid=`gpg --verify --no-default-keyring --keyring ./gnu-keyring.gpg gcc-4.8.2.tar.bz2.sig` + % signature_invalid=`gpg --verify --no-default-keyring --keyring ./gnu-keyring.gpg gcc-${gcc_version}.tar.bz2.sig` % if [ $signature_invalid ]; then echo "Invalid signature" ; exit 1 ; fi - % tar -xvjf gcc-4.8.2.tar.bz2 - % cd gcc-4.8.2 + % tar -xvjf gcc-${gcc_version}.tar.bz2 + % cd gcc-${gcc_version} % ./contrib/download_prerequisites % cd .. - % mkdir gcc-4.8.2-build - % cd gcc-4.8.2-build - % $PWD/../gcc-4.8.2/configure --prefix=$HOME/toolchains --enable-languages=c,c++ + % mkdir gcc-${gcc_version}-build + % cd gcc-${gcc_version}-build + % $PWD/../gcc-${gcc_version}/configure --prefix=$HOME/toolchains --enable-languages=c,c++ % make -j$(nproc) % make install @@ -316,7 +329,7 @@ For more details, check out the excellent `GCC wiki en of this information from. .. _GCC wiki entry: - http://gcc.gnu.org/wiki/InstallingGCC + https://gcc.gnu.org/wiki/InstallingGCC Once you have a GCC toolchain, configure your build of LLVM to use the new toolchain for your host compiler and C++ standard library. Because the new @@ -336,7 +349,7 @@ If you fail to set rpath, most LLVM binaries will fail from the loader similar to ``libstdc++.so.6: version `GLIBCXX_3.4.20' not found``. This means you need to tweak the -rpath linker flag. -When you build Clang, you will need to give *it* access to modern C++11 +When you build Clang, you will need to give *it* access to modern C++ standard library in order to use it as your new host in part of a bootstrap. There are two easy ways to do this, either build (and install) libc++ along with Clang and then use it with the ``-stdlib=libc++`` compile and link flag, Modified: vendor/llvm/dist-release_80/docs/LibFuzzer.rst ============================================================================== --- vendor/llvm/dist-release_80/docs/LibFuzzer.rst Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/docs/LibFuzzer.rst Fri Feb 15 20:48:51 2019 (r344166) @@ -645,10 +645,20 @@ coverage set of the process (since the fuzzer is in-pr using more external dependencies we will slow down the fuzzer while the main reason for it to exist is extreme speed. -Q. What about Windows then? The fuzzer contains code that does not build on Windows. +Q. Does libFuzzer Support Windows? ------------------------------------------------------------------------------------ -Volunteers are welcome. +Yes, libFuzzer now supports Windows. Initial support was added in r341082. +You can download a build of Clang for Windows +that has libFuzzer from +`LLVM Snapshot Builds `_. + +Using libFuzzer on Windows without ASAN is unsupported. Building fuzzers with the +``/MD`` (dynamic runtime library) compile option is unsupported. Support for these +may be added in the future. Linking fuzzers with the ``/INCREMENTAL`` link option +(or the ``/DEBUG`` option which implies it) is also unsupported. + +Send any questions or comments to the mailing list: libfuzzer(#)googlegroups.com Q. When libFuzzer is not a good solution for a problem? --------------------------------------------------------- Modified: vendor/llvm/dist-release_80/docs/ReleaseNotes.rst ============================================================================== --- vendor/llvm/dist-release_80/docs/ReleaseNotes.rst Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/docs/ReleaseNotes.rst Fri Feb 15 20:48:51 2019 (r344166) @@ -40,6 +40,22 @@ Non-comprehensive list of changes in this release functionality, or simply have a lot to talk about), see the `NOTE` below for adding a new subsection. +* As `discussed on the mailing list + `_, + building LLVM will soon require more recent toolchains as follows: + + ============= ==== + Clang 3.5 + Apple Clang 6.0 + GCC 5.1 + Visual Studio 2017 + ============= ==== + + A new CMake check when configuring LLVM provides a soft-error if your + toolchain will become unsupported soon. You can opt out of the soft-error by + setting the ``LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN`` CMake variable to + ``ON``. + * The **llvm-cov** tool can now export lcov trace files using the `-format=lcov` option of the `export` command. @@ -82,7 +98,7 @@ Changes to the ARM Backend Changes to the Hexagon Target --------------------------- +----------------------------- * Added support for Hexagon/HVX V66 ISA. @@ -155,6 +171,21 @@ Changes to the DAG infrastructure External Open Source Projects Using LLVM 8 ========================================== + +LDC - the LLVM-based D compiler +------------------------------- + +`D `_ is a language with C-like syntax and static typing. It +pragmatically combines efficiency, control, and modeling power, with safety and +programmer productivity. D supports powerful concepts like Compile-Time Function +Execution (CTFE) and Template Meta-Programming, provides an innovative approach +to concurrency and offers many classical paradigms. + +`LDC `_ uses the frontend from the reference compiler +combined with LLVM as backend to produce efficient native code. LDC targets +x86/x86_64 systems like Linux, OS X, FreeBSD and Windows and also Linux on ARM +and PowerPC (32/64 bit). Ports to other architectures like AArch64 and MIPS64 +are underway. Zig Programming Language ------------------------ Modified: vendor/llvm/dist-release_80/include/llvm/BinaryFormat/Wasm.h ============================================================================== --- vendor/llvm/dist-release_80/include/llvm/BinaryFormat/Wasm.h Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/include/llvm/BinaryFormat/Wasm.h Fri Feb 15 20:48:51 2019 (r344166) @@ -165,7 +165,8 @@ struct WasmSymbolInfo { StringRef Name; uint8_t Kind; uint32_t Flags; - StringRef Module; // For undefined symbols the module name of the import + StringRef ImportModule; // For undefined symbols the module of the import + StringRef ImportName; // For undefined symbols the name of the import union { // For function or global symbols, the index in function or global index // space. @@ -284,6 +285,7 @@ const unsigned WASM_SYMBOL_BINDING_LOCAL = 0x2; const unsigned WASM_SYMBOL_VISIBILITY_DEFAULT = 0x0; const unsigned WASM_SYMBOL_VISIBILITY_HIDDEN = 0x4; const unsigned WASM_SYMBOL_UNDEFINED = 0x10; +const unsigned WASM_SYMBOL_EXPLICIT_NAME = 0x40; #define WASM_RELOC(name, value) name = value, Modified: vendor/llvm/dist-release_80/include/llvm/MC/MCSymbolWasm.h ============================================================================== --- vendor/llvm/dist-release_80/include/llvm/MC/MCSymbolWasm.h Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/include/llvm/MC/MCSymbolWasm.h Fri Feb 15 20:48:51 2019 (r344166) @@ -19,7 +19,8 @@ class MCSymbolWasm : public MCSymbol { bool IsWeak = false; bool IsHidden = false; bool IsComdat = false; - std::string ModuleName; + Optional ImportModule; + Optional ImportName; wasm::WasmSignature *Signature = nullptr; Optional GlobalType; Optional EventType; @@ -32,7 +33,7 @@ class MCSymbolWasm : public MCSymbol { // Use a module name of "env" for now, for compatibility with existing tools. // This is temporary, and may change, as the ABI is not yet stable. MCSymbolWasm(const StringMapEntry *Name, bool isTemporary) - : MCSymbol(SymbolKindWasm, Name, isTemporary), ModuleName("env") {} + : MCSymbol(SymbolKindWasm, Name, isTemporary) {} static bool classof(const MCSymbol *S) { return S->isWasm(); } const MCExpr *getSize() const { return SymbolSize; } @@ -55,8 +56,21 @@ class MCSymbolWasm : public MCSymbol { bool isComdat() const { return IsComdat; } void setComdat(bool isComdat) { IsComdat = isComdat; } - const StringRef getModuleName() const { return ModuleName; } - void setModuleName(StringRef Name) { ModuleName = Name; } + const StringRef getImportModule() const { + if (ImportModule.hasValue()) { + return ImportModule.getValue(); + } + return "env"; + } + void setImportModule(StringRef Name) { ImportModule = Name; } + + const StringRef getImportName() const { + if (ImportName.hasValue()) { + return ImportName.getValue(); + } + return getName(); + } + void setImportName(StringRef Name) { ImportName = Name; } const wasm::WasmSignature *getSignature() const { return Signature; } void setSignature(wasm::WasmSignature *Sig) { Signature = Sig; } Modified: vendor/llvm/dist-release_80/lib/Analysis/TargetLibraryInfo.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/Analysis/TargetLibraryInfo.cpp Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/Analysis/TargetLibraryInfo.cpp Fri Feb 15 20:48:51 2019 (r344166) @@ -161,25 +161,66 @@ static void initialize(TargetLibraryInfoImpl &TLI, con } if (T.isOSWindows() && !T.isOSCygMing()) { - // Win32 does not support long double + // XXX: The earliest documentation available at the moment is for VS2015/VC19: + // https://docs.microsoft.com/en-us/cpp/c-runtime-library/floating-point-support?view=vs-2015 + // XXX: In order to use an MSVCRT older than VC19, + // the specific library version must be explicit in the target triple, + // e.g., x86_64-pc-windows-msvc18. + bool hasPartialC99 = true; + if (T.isKnownWindowsMSVCEnvironment()) { + unsigned Major, Minor, Micro; + T.getEnvironmentVersion(Major, Minor, Micro); + hasPartialC99 = (Major == 0 || Major >= 19); + } + + // Latest targets support C89 math functions, in part. + bool isARM = (T.getArch() == Triple::aarch64 || + T.getArch() == Triple::arm); + bool hasPartialFloat = (isARM || + T.getArch() == Triple::x86_64); + + // Win32 does not support float C89 math functions, in general. + if (!hasPartialFloat) { + TLI.setUnavailable(LibFunc_acosf); + TLI.setUnavailable(LibFunc_asinf); + TLI.setUnavailable(LibFunc_atan2f); + TLI.setUnavailable(LibFunc_atanf); + TLI.setUnavailable(LibFunc_ceilf); + TLI.setUnavailable(LibFunc_cosf); + TLI.setUnavailable(LibFunc_coshf); + TLI.setUnavailable(LibFunc_expf); + TLI.setUnavailable(LibFunc_floorf); + TLI.setUnavailable(LibFunc_fmodf); + TLI.setUnavailable(LibFunc_log10f); + TLI.setUnavailable(LibFunc_logf); + TLI.setUnavailable(LibFunc_modff); + TLI.setUnavailable(LibFunc_powf); + TLI.setUnavailable(LibFunc_sinf); + TLI.setUnavailable(LibFunc_sinhf); + TLI.setUnavailable(LibFunc_sqrtf); + TLI.setUnavailable(LibFunc_tanf); + TLI.setUnavailable(LibFunc_tanhf); + } + if (!isARM) + TLI.setUnavailable(LibFunc_fabsf); + TLI.setUnavailable(LibFunc_frexpf); + TLI.setUnavailable(LibFunc_ldexpf); + + // Win32 does not support long double C89 math functions. TLI.setUnavailable(LibFunc_acosl); TLI.setUnavailable(LibFunc_asinl); - TLI.setUnavailable(LibFunc_atanl); TLI.setUnavailable(LibFunc_atan2l); + TLI.setUnavailable(LibFunc_atanl); TLI.setUnavailable(LibFunc_ceill); - TLI.setUnavailable(LibFunc_copysignl); TLI.setUnavailable(LibFunc_cosl); TLI.setUnavailable(LibFunc_coshl); TLI.setUnavailable(LibFunc_expl); - TLI.setUnavailable(LibFunc_fabsf); // Win32 and Win64 both lack fabsf TLI.setUnavailable(LibFunc_fabsl); TLI.setUnavailable(LibFunc_floorl); - TLI.setUnavailable(LibFunc_fmaxl); - TLI.setUnavailable(LibFunc_fminl); TLI.setUnavailable(LibFunc_fmodl); TLI.setUnavailable(LibFunc_frexpl); - TLI.setUnavailable(LibFunc_ldexpf); TLI.setUnavailable(LibFunc_ldexpl); + TLI.setUnavailable(LibFunc_log10l); TLI.setUnavailable(LibFunc_logl); TLI.setUnavailable(LibFunc_modfl); TLI.setUnavailable(LibFunc_powl); @@ -189,81 +230,66 @@ static void initialize(TargetLibraryInfoImpl &TLI, con TLI.setUnavailable(LibFunc_tanl); TLI.setUnavailable(LibFunc_tanhl); - // Win32 only has C89 math - TLI.setUnavailable(LibFunc_acosh); - TLI.setUnavailable(LibFunc_acoshf); + // Win32 does not fully support C99 math functions. + if (!hasPartialC99) { + TLI.setUnavailable(LibFunc_acosh); + TLI.setUnavailable(LibFunc_acoshf); + TLI.setUnavailable(LibFunc_asinh); + TLI.setUnavailable(LibFunc_asinhf); + TLI.setUnavailable(LibFunc_atanh); + TLI.setUnavailable(LibFunc_atanhf); + TLI.setAvailableWithName(LibFunc_cabs, "_cabs"); + TLI.setUnavailable(LibFunc_cabsf); + TLI.setUnavailable(LibFunc_cbrt); + TLI.setUnavailable(LibFunc_cbrtf); + TLI.setAvailableWithName(LibFunc_copysign, "_copysign"); + TLI.setAvailableWithName(LibFunc_copysignf, "_copysignf"); + TLI.setUnavailable(LibFunc_exp2); + TLI.setUnavailable(LibFunc_exp2f); + TLI.setUnavailable(LibFunc_expm1); + TLI.setUnavailable(LibFunc_expm1f); + TLI.setUnavailable(LibFunc_fmax); + TLI.setUnavailable(LibFunc_fmaxf); + TLI.setUnavailable(LibFunc_fmin); + TLI.setUnavailable(LibFunc_fminf); + TLI.setUnavailable(LibFunc_log1p); + TLI.setUnavailable(LibFunc_log1pf); + TLI.setUnavailable(LibFunc_log2); + TLI.setUnavailable(LibFunc_log2f); + TLI.setAvailableWithName(LibFunc_logb, "_logb"); + if (hasPartialFloat) + TLI.setAvailableWithName(LibFunc_logbf, "_logbf"); + else + TLI.setUnavailable(LibFunc_logbf); + TLI.setUnavailable(LibFunc_rint); + TLI.setUnavailable(LibFunc_rintf); + TLI.setUnavailable(LibFunc_round); + TLI.setUnavailable(LibFunc_roundf); + TLI.setUnavailable(LibFunc_trunc); + TLI.setUnavailable(LibFunc_truncf); + } + + // Win32 does not support long double C99 math functions. TLI.setUnavailable(LibFunc_acoshl); - TLI.setUnavailable(LibFunc_asinh); - TLI.setUnavailable(LibFunc_asinhf); TLI.setUnavailable(LibFunc_asinhl); - TLI.setUnavailable(LibFunc_atanh); - TLI.setUnavailable(LibFunc_atanhf); TLI.setUnavailable(LibFunc_atanhl); - TLI.setUnavailable(LibFunc_cabs); - TLI.setUnavailable(LibFunc_cabsf); TLI.setUnavailable(LibFunc_cabsl); - TLI.setUnavailable(LibFunc_cbrt); - TLI.setUnavailable(LibFunc_cbrtf); TLI.setUnavailable(LibFunc_cbrtl); - TLI.setUnavailable(LibFunc_exp2); - TLI.setUnavailable(LibFunc_exp2f); + TLI.setUnavailable(LibFunc_copysignl); TLI.setUnavailable(LibFunc_exp2l); - TLI.setUnavailable(LibFunc_expm1); - TLI.setUnavailable(LibFunc_expm1f); TLI.setUnavailable(LibFunc_expm1l); - TLI.setUnavailable(LibFunc_log2); - TLI.setUnavailable(LibFunc_log2f); - TLI.setUnavailable(LibFunc_log2l); - TLI.setUnavailable(LibFunc_log1p); - TLI.setUnavailable(LibFunc_log1pf); + TLI.setUnavailable(LibFunc_fmaxl); + TLI.setUnavailable(LibFunc_fminl); TLI.setUnavailable(LibFunc_log1pl); - TLI.setUnavailable(LibFunc_logb); - TLI.setUnavailable(LibFunc_logbf); + TLI.setUnavailable(LibFunc_log2l); TLI.setUnavailable(LibFunc_logbl); - TLI.setUnavailable(LibFunc_nearbyint); - TLI.setUnavailable(LibFunc_nearbyintf); TLI.setUnavailable(LibFunc_nearbyintl); - TLI.setUnavailable(LibFunc_rint); - TLI.setUnavailable(LibFunc_rintf); TLI.setUnavailable(LibFunc_rintl); - TLI.setUnavailable(LibFunc_round); - TLI.setUnavailable(LibFunc_roundf); TLI.setUnavailable(LibFunc_roundl); - TLI.setUnavailable(LibFunc_trunc); - TLI.setUnavailable(LibFunc_truncf); TLI.setUnavailable(LibFunc_truncl); - // Win32 provides some C99 math with mangled names - TLI.setAvailableWithName(LibFunc_copysign, "_copysign"); - - if (T.getArch() == Triple::x86) { - // Win32 on x86 implements single-precision math functions as macros - TLI.setUnavailable(LibFunc_acosf); - TLI.setUnavailable(LibFunc_asinf); - TLI.setUnavailable(LibFunc_atanf); - TLI.setUnavailable(LibFunc_atan2f); - TLI.setUnavailable(LibFunc_ceilf); - TLI.setUnavailable(LibFunc_copysignf); - TLI.setUnavailable(LibFunc_cosf); - TLI.setUnavailable(LibFunc_coshf); - TLI.setUnavailable(LibFunc_expf); - TLI.setUnavailable(LibFunc_floorf); - TLI.setUnavailable(LibFunc_fminf); - TLI.setUnavailable(LibFunc_fmaxf); - TLI.setUnavailable(LibFunc_fmodf); - TLI.setUnavailable(LibFunc_logf); - TLI.setUnavailable(LibFunc_log10f); - TLI.setUnavailable(LibFunc_modff); - TLI.setUnavailable(LibFunc_powf); - TLI.setUnavailable(LibFunc_sinf); - TLI.setUnavailable(LibFunc_sinhf); - TLI.setUnavailable(LibFunc_sqrtf); - TLI.setUnavailable(LibFunc_tanf); - TLI.setUnavailable(LibFunc_tanhf); - } - - // Win32 does *not* provide these functions, but they are - // generally available on POSIX-compliant systems: + // Win32 does not support these functions, but + // they are generally available on POSIX-compliant systems. TLI.setUnavailable(LibFunc_access); TLI.setUnavailable(LibFunc_bcmp); TLI.setUnavailable(LibFunc_bcopy); @@ -318,12 +344,6 @@ static void initialize(TargetLibraryInfoImpl &TLI, con TLI.setUnavailable(LibFunc_utime); TLI.setUnavailable(LibFunc_utimes); TLI.setUnavailable(LibFunc_write); - - // Win32 does *not* provide provide these functions, but they are - // specified by C99: - TLI.setUnavailable(LibFunc_atoll); - TLI.setUnavailable(LibFunc_frexpf); - TLI.setUnavailable(LibFunc_llabs); } switch (T.getOS()) { Modified: vendor/llvm/dist-release_80/lib/MC/MCExpr.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/MC/MCExpr.cpp Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/MC/MCExpr.cpp Fri Feb 15 20:48:51 2019 (r344166) @@ -559,6 +559,11 @@ static void AttemptToFoldSymbolOffsetDifference( if (Asm->isThumbFunc(&SA)) Addend |= 1; + // If symbol is labeled as micromips, we set low-bit to ensure + // correct offset in .gcc_except_table + if (Asm->getBackend().isMicroMips(&SA)) + Addend |= 1; + // Clear the symbol expr pointers to indicate we have folded these // operands. A = B = nullptr; Modified: vendor/llvm/dist-release_80/lib/MC/MCParser/AsmParser.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/MC/MCParser/AsmParser.cpp Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/MC/MCParser/AsmParser.cpp Fri Feb 15 20:48:51 2019 (r344166) @@ -3364,10 +3364,11 @@ bool AsmParser::parseDirectiveFile(SMLoc DirectiveLoc) } if (FileNumber == -1) { - if (!getContext().getAsmInfo()->hasSingleParameterDotFile()) - return Error(DirectiveLoc, - "target does not support '.file' without a number"); - getStreamer().EmitFileDirective(Filename); + // Ignore the directive if there is no number and the target doesn't support + // numberless .file directives. This allows some portability of assembler + // between different object file formats. + if (getContext().getAsmInfo()->hasSingleParameterDotFile()) + getStreamer().EmitFileDirective(Filename); } else { // In case there is a -g option as well as debug info from directive .file, // we turn off the -g option, directly use the existing debug info instead. Modified: vendor/llvm/dist-release_80/lib/MC/WasmObjectWriter.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/MC/WasmObjectWriter.cpp Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/MC/WasmObjectWriter.cpp Fri Feb 15 20:48:51 2019 (r344166) @@ -982,7 +982,8 @@ void WasmObjectWriter::writeLinkingMetaDataSection( case wasm::WASM_SYMBOL_TYPE_GLOBAL: case wasm::WASM_SYMBOL_TYPE_EVENT: encodeULEB128(Sym.ElementIndex, W.OS); - if ((Sym.Flags & wasm::WASM_SYMBOL_UNDEFINED) == 0) + if ((Sym.Flags & wasm::WASM_SYMBOL_UNDEFINED) == 0 || + (Sym.Flags & wasm::WASM_SYMBOL_EXPLICIT_NAME) != 0) writeString(Sym.Name); break; case wasm::WASM_SYMBOL_TYPE_DATA: @@ -1162,8 +1163,8 @@ uint64_t WasmObjectWriter::writeObject(MCAssembler &As MCSymbolWasm *MemorySym = cast(Ctx.getOrCreateSymbol("__linear_memory")); wasm::WasmImport MemImport; - MemImport.Module = MemorySym->getModuleName(); - MemImport.Field = MemorySym->getName(); + MemImport.Module = MemorySym->getImportModule(); + MemImport.Field = MemorySym->getImportName(); MemImport.Kind = wasm::WASM_EXTERNAL_MEMORY; Imports.push_back(MemImport); @@ -1173,8 +1174,8 @@ uint64_t WasmObjectWriter::writeObject(MCAssembler &As MCSymbolWasm *TableSym = cast(Ctx.getOrCreateSymbol("__indirect_function_table")); wasm::WasmImport TableImport; - TableImport.Module = TableSym->getModuleName(); - TableImport.Field = TableSym->getName(); + TableImport.Module = TableSym->getImportModule(); + TableImport.Field = TableSym->getImportName(); TableImport.Kind = wasm::WASM_EXTERNAL_TABLE; TableImport.Table.ElemType = wasm::WASM_TYPE_FUNCREF; Imports.push_back(TableImport); @@ -1200,8 +1201,8 @@ uint64_t WasmObjectWriter::writeObject(MCAssembler &As if (!WS.isDefined() && !WS.isComdat()) { if (WS.isFunction()) { wasm::WasmImport Import; - Import.Module = WS.getModuleName(); - Import.Field = WS.getName(); + Import.Module = WS.getImportModule(); + Import.Field = WS.getImportName(); Import.Kind = wasm::WASM_EXTERNAL_FUNCTION; Import.SigIndex = getFunctionType(WS); Imports.push_back(Import); @@ -1211,8 +1212,8 @@ uint64_t WasmObjectWriter::writeObject(MCAssembler &As report_fatal_error("undefined global symbol cannot be weak"); wasm::WasmImport Import; - Import.Module = WS.getModuleName(); - Import.Field = WS.getName(); + Import.Module = WS.getImportModule(); + Import.Field = WS.getImportName(); Import.Kind = wasm::WASM_EXTERNAL_GLOBAL; Import.Global = WS.getGlobalType(); Imports.push_back(Import); @@ -1222,8 +1223,8 @@ uint64_t WasmObjectWriter::writeObject(MCAssembler &As report_fatal_error("undefined event symbol cannot be weak"); wasm::WasmImport Import; - Import.Module = WS.getModuleName(); - Import.Field = WS.getName(); + Import.Module = WS.getImportModule(); + Import.Field = WS.getImportName(); Import.Kind = wasm::WASM_EXTERNAL_EVENT; Import.Event.Attribute = wasm::WASM_EVENT_ATTRIBUTE_EXCEPTION; Import.Event.SigIndex = getEventType(WS); @@ -1448,6 +1449,8 @@ uint64_t WasmObjectWriter::writeObject(MCAssembler &As Flags |= wasm::WASM_SYMBOL_BINDING_LOCAL; if (WS.isUndefined()) Flags |= wasm::WASM_SYMBOL_UNDEFINED; + if (WS.getName() != WS.getImportName()) + Flags |= wasm::WASM_SYMBOL_EXPLICIT_NAME; wasm::WasmSymbolInfo Info; Info.Name = WS.getName(); Modified: vendor/llvm/dist-release_80/lib/Object/WasmObjectFile.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/Object/WasmObjectFile.cpp Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/Object/WasmObjectFile.cpp Fri Feb 15 20:48:51 2019 (r344166) @@ -505,9 +505,13 @@ Error WasmObjectFile::parseLinkingSectionSymtab(ReadCo Function.SymbolName = Info.Name; } else { wasm::WasmImport &Import = *ImportedFunctions[Info.ElementIndex]; + if ((Info.Flags & wasm::WASM_SYMBOL_EXPLICIT_NAME) != 0) + Info.Name = readString(Ctx); + else + Info.Name = Import.Field; Signature = &Signatures[Import.SigIndex]; - Info.Name = Import.Field; - Info.Module = Import.Module; + Info.ImportName = Import.Field; + Info.ImportModule = Import.Module; } break; @@ -530,8 +534,13 @@ Error WasmObjectFile::parseLinkingSectionSymtab(ReadCo Global.SymbolName = Info.Name; } else { wasm::WasmImport &Import = *ImportedGlobals[Info.ElementIndex]; - Info.Name = Import.Field; + if ((Info.Flags & wasm::WASM_SYMBOL_EXPLICIT_NAME) != 0) + Info.Name = readString(Ctx); + else + Info.Name = Import.Field; GlobalType = &Import.Global; + Info.ImportName = Import.Field; + Info.ImportModule = Import.Module; } break; @@ -585,9 +594,14 @@ Error WasmObjectFile::parseLinkingSectionSymtab(ReadCo } else { wasm::WasmImport &Import = *ImportedEvents[Info.ElementIndex]; + if ((Info.Flags & wasm::WASM_SYMBOL_EXPLICIT_NAME) != 0) + Info.Name = readString(Ctx); + else + Info.Name = Import.Field; EventType = &Import.Event; Signature = &Signatures[EventType->SigIndex]; - Info.Name = Import.Field; + Info.ImportName = Import.Field; + Info.ImportModule = Import.Module; } break; } Modified: vendor/llvm/dist-release_80/lib/Support/Unix/Threading.inc ============================================================================== --- vendor/llvm/dist-release_80/lib/Support/Unix/Threading.inc Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/Support/Unix/Threading.inc Fri Feb 15 20:48:51 2019 (r344166) @@ -203,6 +203,12 @@ void llvm::get_thread_name(SmallVectorImpl &Name ::pthread_getname_np(::pthread_self(), buf, len); Name.append(buf, buf + strlen(buf)); +#elif defined(__OpenBSD__) + constexpr uint32_t len = get_max_thread_name_length_impl(); + char buf[len]; + ::pthread_get_name_np(::pthread_self(), buf, len); + + Name.append(buf, buf + strlen(buf)); #elif defined(__linux__) #if HAVE_PTHREAD_GETNAME_NP constexpr uint32_t len = get_max_thread_name_length_impl(); Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.cpp Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.cpp Fri Feb 15 20:48:51 2019 (r344166) @@ -2292,6 +2292,31 @@ void AArch64InstrInfo::copyPhysRegTuple(MachineBasicBl } } +void AArch64InstrInfo::copyGPRRegTuple(MachineBasicBlock &MBB, + MachineBasicBlock::iterator I, + DebugLoc DL, unsigned DestReg, + unsigned SrcReg, bool KillSrc, + unsigned Opcode, unsigned ZeroReg, + llvm::ArrayRef Indices) const { + const TargetRegisterInfo *TRI = &getRegisterInfo(); + unsigned NumRegs = Indices.size(); + +#ifndef NDEBUG + uint16_t DestEncoding = TRI->getEncodingValue(DestReg); + uint16_t SrcEncoding = TRI->getEncodingValue(SrcReg); + assert(DestEncoding % NumRegs == 0 && SrcEncoding % NumRegs == 0 && + "GPR reg sequences should not be able to overlap"); +#endif + + for (unsigned SubReg = 0; SubReg != NumRegs; ++SubReg) { + const MachineInstrBuilder MIB = BuildMI(MBB, I, DL, get(Opcode)); + AddSubReg(MIB, DestReg, Indices[SubReg], RegState::Define, TRI); + MIB.addReg(ZeroReg); + AddSubReg(MIB, SrcReg, Indices[SubReg], getKillRegState(KillSrc), TRI); + MIB.addImm(0); + } +} + void AArch64InstrInfo::copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, const DebugLoc &DL, unsigned DestReg, @@ -2428,6 +2453,22 @@ void AArch64InstrInfo::copyPhysReg(MachineBasicBlock & static const unsigned Indices[] = {AArch64::qsub0, AArch64::qsub1}; copyPhysRegTuple(MBB, I, DL, DestReg, SrcReg, KillSrc, AArch64::ORRv16i8, Indices); + return; + } + + if (AArch64::XSeqPairsClassRegClass.contains(DestReg) && + AArch64::XSeqPairsClassRegClass.contains(SrcReg)) { + static const unsigned Indices[] = {AArch64::sube64, AArch64::subo64}; + copyGPRRegTuple(MBB, I, DL, DestReg, SrcReg, KillSrc, AArch64::ORRXrs, + AArch64::XZR, Indices); + return; + } + + if (AArch64::WSeqPairsClassRegClass.contains(DestReg) && + AArch64::WSeqPairsClassRegClass.contains(SrcReg)) { + static const unsigned Indices[] = {AArch64::sube32, AArch64::subo32}; + copyGPRRegTuple(MBB, I, DL, DestReg, SrcReg, KillSrc, AArch64::ORRWrs, + AArch64::WZR, Indices); return; } Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.h ============================================================================== --- vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.h Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64InstrInfo.h Fri Feb 15 20:48:51 2019 (r344166) @@ -122,6 +122,10 @@ class AArch64InstrInfo final : public AArch64GenInstrI const DebugLoc &DL, unsigned DestReg, unsigned SrcReg, bool KillSrc, unsigned Opcode, llvm::ArrayRef Indices) const; + void copyGPRRegTuple(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, + DebugLoc DL, unsigned DestReg, unsigned SrcReg, + bool KillSrc, unsigned Opcode, unsigned ZeroReg, + llvm::ArrayRef Indices) const; void copyPhysReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, const DebugLoc &DL, unsigned DestReg, unsigned SrcReg, bool KillSrc) const override; Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64RegisterInfo.td ============================================================================== --- vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64RegisterInfo.td Fri Feb 15 20:46:03 2019 (r344165) +++ vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64RegisterInfo.td Fri Feb 15 20:48:51 2019 (r344166) @@ -649,10 +649,12 @@ def FPR128Op : RegisterOperand // ARMv8.1a atomic CASP register operands -def WSeqPairs : RegisterTuples<[sube32, subo32], - [(rotl GPR32, 0), (rotl GPR32, 1)]>; -def XSeqPairs : RegisterTuples<[sube64, subo64], - [(rotl GPR64, 0), (rotl GPR64, 1)]>; +def WSeqPairs : RegisterTuples<[sube32, subo32], + [(decimate (rotl GPR32, 0), 2), + (decimate (rotl GPR32, 1), 2)]>; +def XSeqPairs : RegisterTuples<[sube64, subo64], + [(decimate (rotl GPR64, 0), 2), + (decimate (rotl GPR64, 1), 2)]>; def WSeqPairsClass : RegisterClass<"AArch64", [untyped], 32, (add WSeqPairs)>{ Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp ============================================================================== --- vendor/llvm/dist-release_80/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp Fri Feb 15 20:46:03 2019 (r344165) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:00 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7909214E8B6A; Fri, 15 Feb 2019 20:49:00 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1A250842E1; Fri, 15 Feb 2019 20:49:00 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D9D8723EB7; Fri, 15 Feb 2019 20:48:59 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKmxcA049719; Fri, 15 Feb 2019 20:48:59 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKmxFM049718; Fri, 15 Feb 2019 20:48:59 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152048.x1FKmxFM049718@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:48:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344167 - vendor/llvm/llvm-release_80-r354130 X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: vendor/llvm/llvm-release_80-r354130 X-SVN-Commit-Revision: 344167 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1A250842E1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:00 -0000 Author: dim Date: Fri Feb 15 20:48:59 2019 New Revision: 344167 URL: https://svnweb.freebsd.org/changeset/base/344167 Log: Tag llvm release_80 branch r354130. Added: vendor/llvm/llvm-release_80-r354130/ - copied from r344166, vendor/llvm/dist-release_80/ From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:08 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 849C514E8BB3; Fri, 15 Feb 2019 20:49:08 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 186AE843D1; Fri, 15 Feb 2019 20:49:08 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 51FA323EB8; Fri, 15 Feb 2019 20:49:06 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKn6xZ049774; Fri, 15 Feb 2019 20:49:06 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKn6op049773; Fri, 15 Feb 2019 20:49:06 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKn6op049773@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344168 - in vendor/clang/dist-release_80: docs include/clang/Basic include/clang/Driver include/clang/Parse include/clang/Sema lib/Basic/Targets lib/CodeGen lib/Driver/ToolChains lib/F... X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in vendor/clang/dist-release_80: docs include/clang/Basic include/clang/Driver include/clang/Parse include/clang/Sema lib/Basic/Targets lib/CodeGen lib/Driver/ToolChains lib/Frontend lib/Headers lib/P... X-SVN-Commit-Revision: 344168 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 186AE843D1 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:08 -0000 Author: dim Date: Fri Feb 15 20:49:05 2019 New Revision: 344168 URL: https://svnweb.freebsd.org/changeset/base/344168 Log: Vendor import of clang release_80 branch r354130: https://llvm.org/svn/llvm-project/cfe/branches/release_80@354130 Added: vendor/clang/dist-release_80/test/Analysis/PR40625.cpp vendor/clang/dist-release_80/test/CodeGen/wasm-import-module.c vendor/clang/dist-release_80/test/CodeGen/wasm-import-name.c Modified: vendor/clang/dist-release_80/docs/AttributeReference.rst vendor/clang/dist-release_80/docs/ClangCommandLineReference.rst vendor/clang/dist-release_80/include/clang/Basic/Attr.td vendor/clang/dist-release_80/include/clang/Basic/AttrDocs.td vendor/clang/dist-release_80/include/clang/Basic/BuiltinsAArch64.def vendor/clang/dist-release_80/include/clang/Basic/DiagnosticSemaKinds.td vendor/clang/dist-release_80/include/clang/Basic/OpenCLOptions.h vendor/clang/dist-release_80/include/clang/Driver/Options.td vendor/clang/dist-release_80/include/clang/Parse/Parser.h vendor/clang/dist-release_80/include/clang/Sema/Sema.h vendor/clang/dist-release_80/lib/Basic/Targets/PPC.h vendor/clang/dist-release_80/lib/CodeGen/CGBuiltin.cpp vendor/clang/dist-release_80/lib/CodeGen/CGDecl.cpp vendor/clang/dist-release_80/lib/CodeGen/CodeGenModule.cpp vendor/clang/dist-release_80/lib/CodeGen/TargetInfo.cpp vendor/clang/dist-release_80/lib/Driver/ToolChains/MSVC.cpp vendor/clang/dist-release_80/lib/Frontend/InitPreprocessor.cpp vendor/clang/dist-release_80/lib/Headers/intrin.h vendor/clang/dist-release_80/lib/Parse/ParseObjc.cpp vendor/clang/dist-release_80/lib/Parse/ParseOpenMP.cpp vendor/clang/dist-release_80/lib/Parse/ParsePragma.cpp vendor/clang/dist-release_80/lib/Parse/ParseStmt.cpp vendor/clang/dist-release_80/lib/Parse/ParseStmtAsm.cpp vendor/clang/dist-release_80/lib/Sema/Sema.cpp vendor/clang/dist-release_80/lib/Sema/SemaChecking.cpp vendor/clang/dist-release_80/lib/Sema/SemaCoroutine.cpp vendor/clang/dist-release_80/lib/Sema/SemaDecl.cpp vendor/clang/dist-release_80/lib/Sema/SemaDeclAttr.cpp vendor/clang/dist-release_80/lib/Sema/SemaDeclCXX.cpp vendor/clang/dist-release_80/lib/Sema/SemaExpr.cpp vendor/clang/dist-release_80/lib/Sema/SemaExprCXX.cpp vendor/clang/dist-release_80/lib/Sema/SemaLambda.cpp vendor/clang/dist-release_80/lib/Sema/SemaOpenMP.cpp vendor/clang/dist-release_80/lib/Sema/SemaStmt.cpp vendor/clang/dist-release_80/lib/Sema/TreeTransform.h vendor/clang/dist-release_80/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp vendor/clang/dist-release_80/test/Analysis/uninit-vals.m vendor/clang/dist-release_80/test/CXX/stmt.stmt/stmt.select/p3.cpp vendor/clang/dist-release_80/test/CodeCompletion/pragma-macro-token-caching.c vendor/clang/dist-release_80/test/CodeGen/arm64-microsoft-status-reg.cpp vendor/clang/dist-release_80/test/CodeGen/microsoft-no-common-align.c vendor/clang/dist-release_80/test/CodeGen/powerpc_types.c vendor/clang/dist-release_80/test/CodeGenCXX/trivial-auto-var-init.cpp vendor/clang/dist-release_80/test/Driver/cl-options.c vendor/clang/dist-release_80/test/Misc/pragma-attribute-supported-attributes-list.test vendor/clang/dist-release_80/test/Parser/cxx1z-init-statement.cpp vendor/clang/dist-release_80/test/Parser/switch-recovery.cpp vendor/clang/dist-release_80/test/SemaCXX/cxx1z-init-statement.cpp vendor/clang/dist-release_80/test/SemaCXX/for-range-examples.cpp vendor/clang/dist-release_80/test/SemaCXX/warn-float-conversion.cpp vendor/clang/dist-release_80/test/SemaCXX/warn-unused-result.cpp vendor/clang/dist-release_80/test/SemaObjC/attr-designated-init.m vendor/clang/dist-release_80/test/SemaObjC/conversion.m vendor/clang/dist-release_80/test/SemaOpenCL/extension-version.cl vendor/clang/dist-release_80/test/SemaOpenCL/extensions.cl Modified: vendor/clang/dist-release_80/docs/AttributeReference.rst ============================================================================== --- vendor/clang/dist-release_80/docs/AttributeReference.rst Fri Feb 15 20:48:59 2019 (r344167) +++ vendor/clang/dist-release_80/docs/AttributeReference.rst Fri Feb 15 20:49:05 2019 (r344168) @@ -1,13 +1,5176 @@ .. ------------------------------------------------------------------- NOTE: This file is automatically generated by running clang-tblgen - -gen-attr-docs. Do not edit this file by hand!! The contents for - this file are automatically generated by a server-side process. - - Please do not commit this file. The file exists for local testing - purposes only. + -gen-attr-docs. Do not edit this file by hand!! ------------------------------------------------------------------- =================== Attributes in Clang -=================== \ No newline at end of file +=================== +.. contents:: + :local: + +.. |br| raw:: html + +
+ +Introduction +============ + +This page lists the attributes currently supported by Clang. + +Function Attributes +=================== + + +#pragma omp declare simd +------------------------ +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "","","","","","``omp declare simd``","" + +The `declare simd` construct can be applied to a function to enable the creation +of one or more versions that can process multiple arguments using SIMD +instructions from a single invocation in a SIMD loop. The `declare simd` +directive is a declarative directive. There may be multiple `declare simd` +directives for a function. The use of a `declare simd` construct on a function +enables the creation of SIMD versions of the associated function that can be +used to process multiple arguments from a single invocation from a SIMD loop +concurrently. +The syntax of the `declare simd` construct is as follows: + + .. code-block:: none + + #pragma omp declare simd [clause[[,] clause] ...] new-line + [#pragma omp declare simd [clause[[,] clause] ...] new-line] + [...] + function definition or declaration + +where clause is one of the following: + + .. code-block:: none + + simdlen(length) + linear(argument-list[:constant-linear-step]) + aligned(argument-list[:alignment]) + uniform(argument-list) + inbranch + notinbranch + + +#pragma omp declare target +-------------------------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "","","","","","``omp declare target``","" + +The `declare target` directive specifies that variables and functions are mapped +to a device for OpenMP offload mechanism. + +The syntax of the declare target directive is as follows: + + .. code-block:: c + + #pragma omp declare target new-line + declarations-definition-seq + #pragma omp end declare target new-line + + +_Noreturn +--------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "","","","","``_Noreturn``","","" + +A function declared as ``_Noreturn`` shall not return to its caller. The +compiler will generate a diagnostic for a function declared as ``_Noreturn`` +that appears to be capable of returning to its caller. + + +abi_tag +------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``abi_tag``","``gnu::abi_tag``","","","","","Yes" + +The ``abi_tag`` attribute can be applied to a function, variable, class or +inline namespace declaration to modify the mangled name of the entity. It gives +the ability to distinguish between different versions of the same entity but +with different ABI versions supported. For example, a newer version of a class +could have a different set of data members and thus have a different size. Using +the ``abi_tag`` attribute, it is possible to have different mangled names for +a global variable of the class type. Therefore, the old code could keep using +the old manged name and the new code will use the new mangled name with tags. + + +acquire_capability, acquire_shared_capability +--------------------------------------------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``acquire_capability`` |br| ``acquire_shared_capability`` |br| ``exclusive_lock_function`` |br| ``shared_lock_function``","``clang::acquire_capability`` |br| ``clang::acquire_shared_capability``","","","","","" + +Marks a function as acquiring a capability. + + +alloc_align +----------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``alloc_align``","``gnu::alloc_align``","","","","","" + +Use ``__attribute__((alloc_align())`` on a function +declaration to specify that the return value of the function (which must be a +pointer type) is at least as aligned as the value of the indicated parameter. The +parameter is given by its index in the list of formal parameters; the first +parameter has index 1 unless the function is a C++ non-static member function, +in which case the first parameter has index 2 to account for the implicit ``this`` +parameter. + +.. code-block:: c++ + + // The returned pointer has the alignment specified by the first parameter. + void *a(size_t align) __attribute__((alloc_align(1))); + + // The returned pointer has the alignment specified by the second parameter. + void *b(void *v, size_t align) __attribute__((alloc_align(2))); + + // The returned pointer has the alignment specified by the second visible + // parameter, however it must be adjusted for the implicit 'this' parameter. + void *Foo::b(void *v, size_t align) __attribute__((alloc_align(3))); + +Note that this attribute merely informs the compiler that a function always +returns a sufficiently aligned pointer. It does not cause the compiler to +emit code to enforce that alignment. The behavior is undefined if the returned +poitner is not sufficiently aligned. + + +alloc_size +---------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``alloc_size``","``gnu::alloc_size``","","","","","Yes" + +The ``alloc_size`` attribute can be placed on functions that return pointers in +order to hint to the compiler how many bytes of memory will be available at the +returned pointer. ``alloc_size`` takes one or two arguments. + +- ``alloc_size(N)`` implies that argument number N equals the number of + available bytes at the returned pointer. +- ``alloc_size(N, M)`` implies that the product of argument number N and + argument number M equals the number of available bytes at the returned + pointer. + +Argument numbers are 1-based. + +An example of how to use ``alloc_size`` + +.. code-block:: c + + void *my_malloc(int a) __attribute__((alloc_size(1))); + void *my_calloc(int a, int b) __attribute__((alloc_size(1, 2))); + + int main() { + void *const p = my_malloc(100); + assert(__builtin_object_size(p, 0) == 100); + void *const a = my_calloc(20, 5); + assert(__builtin_object_size(a, 0) == 100); + } + +.. Note:: This attribute works differently in clang than it does in GCC. + Specifically, clang will only trace ``const`` pointers (as above); we give up + on pointers that are not marked as ``const``. In the vast majority of cases, + this is unimportant, because LLVM has support for the ``alloc_size`` + attribute. However, this may cause mildly unintuitive behavior when used with + other attributes, such as ``enable_if``. + + +artificial +---------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``artificial``","``gnu::artificial``","","","","","" + +The ``artificial`` attribute can be applied to an inline function. If such a +function is inlined, the attribute indicates that debuggers should associate +the resulting instructions with the call site, rather than with the +corresponding line within the inlined callee. + + +assert_capability, assert_shared_capability +------------------------------------------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``assert_capability`` |br| ``assert_shared_capability``","``clang::assert_capability`` |br| ``clang::assert_shared_capability``","","","","","" + +Marks a function that dynamically tests whether a capability is held, and halts +the program if it is not held. + + +assume_aligned +-------------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``assume_aligned``","``gnu::assume_aligned``","","","","","Yes" + +Use ``__attribute__((assume_aligned([,]))`` on a function +declaration to specify that the return value of the function (which must be a +pointer type) has the specified offset, in bytes, from an address with the +specified alignment. The offset is taken to be zero if omitted. + +.. code-block:: c++ + + // The returned pointer value has 32-byte alignment. + void *a() __attribute__((assume_aligned (32))); + + // The returned pointer value is 4 bytes greater than an address having + // 32-byte alignment. + void *b() __attribute__((assume_aligned (32, 4))); + +Note that this attribute provides information to the compiler regarding a +condition that the code already ensures is true. It does not cause the compiler +to enforce the provided alignment assumption. + + +availability +------------ +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``availability``","``clang::availability``","``clang::availability``","","","","Yes" + +The ``availability`` attribute can be placed on declarations to describe the +lifecycle of that declaration relative to operating system versions. Consider +the function declaration for a hypothetical function ``f``: + +.. code-block:: c++ + + void f(void) __attribute__((availability(macos,introduced=10.4,deprecated=10.6,obsoleted=10.7))); + +The availability attribute states that ``f`` was introduced in macOS 10.4, +deprecated in macOS 10.6, and obsoleted in macOS 10.7. This information +is used by Clang to determine when it is safe to use ``f``: for example, if +Clang is instructed to compile code for macOS 10.5, a call to ``f()`` +succeeds. If Clang is instructed to compile code for macOS 10.6, the call +succeeds but Clang emits a warning specifying that the function is deprecated. +Finally, if Clang is instructed to compile code for macOS 10.7, the call +fails because ``f()`` is no longer available. + +The availability attribute is a comma-separated list starting with the +platform name and then including clauses specifying important milestones in the +declaration's lifetime (in any order) along with additional information. Those +clauses can be: + +introduced=\ *version* + The first version in which this declaration was introduced. + +deprecated=\ *version* + The first version in which this declaration was deprecated, meaning that + users should migrate away from this API. + +obsoleted=\ *version* + The first version in which this declaration was obsoleted, meaning that it + was removed completely and can no longer be used. + +unavailable + This declaration is never available on this platform. + +message=\ *string-literal* + Additional message text that Clang will provide when emitting a warning or + error about use of a deprecated or obsoleted declaration. Useful to direct + users to replacement APIs. + +replacement=\ *string-literal* + Additional message text that Clang will use to provide Fix-It when emitting + a warning about use of a deprecated declaration. The Fix-It will replace + the deprecated declaration with the new declaration specified. + +Multiple availability attributes can be placed on a declaration, which may +correspond to different platforms. Only the availability attribute with the +platform corresponding to the target platform will be used; any others will be +ignored. If no availability attribute specifies availability for the current +target platform, the availability attributes are ignored. Supported platforms +are: + +``ios`` + Apple's iOS operating system. The minimum deployment target is specified by + the ``-mios-version-min=*version*`` or ``-miphoneos-version-min=*version*`` + command-line arguments. + +``macos`` + Apple's macOS operating system. The minimum deployment target is + specified by the ``-mmacosx-version-min=*version*`` command-line argument. + ``macosx`` is supported for backward-compatibility reasons, but it is + deprecated. + +``tvos`` + Apple's tvOS operating system. The minimum deployment target is specified by + the ``-mtvos-version-min=*version*`` command-line argument. + +``watchos`` + Apple's watchOS operating system. The minimum deployment target is specified by + the ``-mwatchos-version-min=*version*`` command-line argument. + +A declaration can typically be used even when deploying back to a platform +version prior to when the declaration was introduced. When this happens, the +declaration is `weakly linked +`_, +as if the ``weak_import`` attribute were added to the declaration. A +weakly-linked declaration may or may not be present a run-time, and a program +can determine whether the declaration is present by checking whether the +address of that declaration is non-NULL. + +The flag ``strict`` disallows using API when deploying back to a +platform version prior to when the declaration was introduced. An +attempt to use such API before its introduction causes a hard error. +Weakly-linking is almost always a better API choice, since it allows +users to query availability at runtime. + +If there are multiple declarations of the same entity, the availability +attributes must either match on a per-platform basis or later +declarations must not have availability attributes for that +platform. For example: + +.. code-block:: c + + void g(void) __attribute__((availability(macos,introduced=10.4))); + void g(void) __attribute__((availability(macos,introduced=10.4))); // okay, matches + void g(void) __attribute__((availability(ios,introduced=4.0))); // okay, adds a new platform + void g(void); // okay, inherits both macos and ios availability from above. + void g(void) __attribute__((availability(macos,introduced=10.5))); // error: mismatch + +When one method overrides another, the overriding method can be more widely available than the overridden method, e.g.,: + +.. code-block:: objc + + @interface A + - (id)method __attribute__((availability(macos,introduced=10.4))); + - (id)method2 __attribute__((availability(macos,introduced=10.4))); + @end + + @interface B : A + - (id)method __attribute__((availability(macos,introduced=10.3))); // okay: method moved into base class later + - (id)method __attribute__((availability(macos,introduced=10.5))); // error: this method was available via the base class in 10.4 + @end + +Starting with the macOS 10.12 SDK, the ``API_AVAILABLE`` macro from +```` can simplify the spelling: + +.. code-block:: objc + + @interface A + - (id)method API_AVAILABLE(macos(10.11))); + - (id)otherMethod API_AVAILABLE(macos(10.11), ios(11.0)); + @end + +Also see the documentation for `@available +`_ + + +carries_dependency +------------------ +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``carries_dependency``","``carries_dependency``","","","","","Yes" + +The ``carries_dependency`` attribute specifies dependency propagation into and +out of functions. + +When specified on a function or Objective-C method, the ``carries_dependency`` +attribute means that the return value carries a dependency out of the function, +so that the implementation need not constrain ordering upon return from that +function. Implementations of the function and its caller may choose to preserve +dependencies instead of emitting memory ordering instructions such as fences. + +Note, this attribute does not change the meaning of the program, but may result +in generation of more efficient code. + + +cf_consumed +----------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``cf_consumed``","``clang::cf_consumed``","``clang::cf_consumed``","","","","Yes" + +The behavior of a function with respect to reference counting for Foundation +(Objective-C), CoreFoundation (C) and OSObject (C++) is determined by a naming +convention (e.g. functions starting with "get" are assumed to return at +``+0``). + +It can be overriden using a family of the following attributes. In +Objective-C, the annotation ``__attribute__((ns_returns_retained))`` applied to +a function communicates that the object is returned at ``+1``, and the caller +is responsible for freeing it. +Similiarly, the annotation ``__attribute__((ns_returns_not_retained))`` +specifies that the object is returned at ``+0`` and the ownership remains with +the callee. +The annotation ``__attribute__((ns_consumes_self))`` specifies that +the Objective-C method call consumes the reference to ``self``, e.g. by +attaching it to a supplied parameter. +Additionally, parameters can have an annotation +``__attribute__((ns_consumed))``, which specifies that passing an owned object +as that parameter effectively transfers the ownership, and the caller is no +longer responsible for it. +These attributes affect code generation when interacting with ARC code, and +they are used by the Clang Static Analyzer. + +In C programs using CoreFoundation, a similar set of attributes: +``__attribute__((cf_returns_not_retained))``, +``__attribute__((cf_returns_retained))`` and ``__attribute__((cf_consumed))`` +have the same respective semantics when applied to CoreFoundation objects. +These attributes affect code generation when interacting with ARC code, and +they are used by the Clang Static Analyzer. + +Finally, in C++ interacting with XNU kernel (objects inheriting from OSObject), +the same attribute family is present: +``__attribute__((os_returns_not_retained))``, +``__attribute__((os_returns_retained))`` and ``__attribute__((os_consumed))``, +with the same respective semantics. +Similar to ``__attribute__((ns_consumes_self))``, +``__attribute__((os_consumes_this))`` specifies that the method call consumes +the reference to "this" (e.g., when attaching it to a different object supplied +as a parameter). +Out parameters (parameters the function is meant to write into, +either via pointers-to-pointers or references-to-pointers) +may be annotated with ``__attribute__((os_returns_retained))`` +or ``__attribute__((os_returns_not_retained))`` which specifies that the object +written into the out parameter should (or respectively should not) be released +after use. +Since often out parameters may or may not be written depending on the exit +code of the function, +annotations ``__attribute__((os_returns_retained_on_zero))`` +and ``__attribute__((os_returns_retained_on_non_zero))`` specify that +an out parameter at ``+1`` is written if and only if the function returns a zero +(respectively non-zero) error code. +Observe that return-code-dependent out parameter annotations are only +available for retained out parameters, as non-retained object do not have to be +released by the callee. +These attributes are only used by the Clang Static Analyzer. + +The family of attributes ``X_returns_X_retained`` can be added to functions, +C++ methods, and Objective-C methods and properties. +Attributes ``X_consumed`` can be added to parameters of methods, functions, +and Objective-C methods. + + +cf_returns_not_retained +----------------------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``cf_returns_not_retained``","``clang::cf_returns_not_retained``","``clang::cf_returns_not_retained``","","","","" + +The behavior of a function with respect to reference counting for Foundation +(Objective-C), CoreFoundation (C) and OSObject (C++) is determined by a naming +convention (e.g. functions starting with "get" are assumed to return at +``+0``). + +It can be overriden using a family of the following attributes. In +Objective-C, the annotation ``__attribute__((ns_returns_retained))`` applied to +a function communicates that the object is returned at ``+1``, and the caller +is responsible for freeing it. +Similiarly, the annotation ``__attribute__((ns_returns_not_retained))`` +specifies that the object is returned at ``+0`` and the ownership remains with +the callee. +The annotation ``__attribute__((ns_consumes_self))`` specifies that +the Objective-C method call consumes the reference to ``self``, e.g. by +attaching it to a supplied parameter. +Additionally, parameters can have an annotation +``__attribute__((ns_consumed))``, which specifies that passing an owned object +as that parameter effectively transfers the ownership, and the caller is no +longer responsible for it. +These attributes affect code generation when interacting with ARC code, and +they are used by the Clang Static Analyzer. + +In C programs using CoreFoundation, a similar set of attributes: +``__attribute__((cf_returns_not_retained))``, +``__attribute__((cf_returns_retained))`` and ``__attribute__((cf_consumed))`` +have the same respective semantics when applied to CoreFoundation objects. +These attributes affect code generation when interacting with ARC code, and +they are used by the Clang Static Analyzer. + +Finally, in C++ interacting with XNU kernel (objects inheriting from OSObject), +the same attribute family is present: +``__attribute__((os_returns_not_retained))``, +``__attribute__((os_returns_retained))`` and ``__attribute__((os_consumed))``, +with the same respective semantics. +Similar to ``__attribute__((ns_consumes_self))``, +``__attribute__((os_consumes_this))`` specifies that the method call consumes +the reference to "this" (e.g., when attaching it to a different object supplied +as a parameter). +Out parameters (parameters the function is meant to write into, +either via pointers-to-pointers or references-to-pointers) +may be annotated with ``__attribute__((os_returns_retained))`` +or ``__attribute__((os_returns_not_retained))`` which specifies that the object +written into the out parameter should (or respectively should not) be released +after use. +Since often out parameters may or may not be written depending on the exit +code of the function, +annotations ``__attribute__((os_returns_retained_on_zero))`` +and ``__attribute__((os_returns_retained_on_non_zero))`` specify that +an out parameter at ``+1`` is written if and only if the function returns a zero +(respectively non-zero) error code. +Observe that return-code-dependent out parameter annotations are only +available for retained out parameters, as non-retained object do not have to be +released by the callee. +These attributes are only used by the Clang Static Analyzer. + +The family of attributes ``X_returns_X_retained`` can be added to functions, +C++ methods, and Objective-C methods and properties. +Attributes ``X_consumed`` can be added to parameters of methods, functions, +and Objective-C methods. + + +cf_returns_retained +------------------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``cf_returns_retained``","``clang::cf_returns_retained``","``clang::cf_returns_retained``","","","","" + +The behavior of a function with respect to reference counting for Foundation +(Objective-C), CoreFoundation (C) and OSObject (C++) is determined by a naming +convention (e.g. functions starting with "get" are assumed to return at +``+0``). + +It can be overriden using a family of the following attributes. In +Objective-C, the annotation ``__attribute__((ns_returns_retained))`` applied to +a function communicates that the object is returned at ``+1``, and the caller +is responsible for freeing it. +Similiarly, the annotation ``__attribute__((ns_returns_not_retained))`` +specifies that the object is returned at ``+0`` and the ownership remains with +the callee. +The annotation ``__attribute__((ns_consumes_self))`` specifies that +the Objective-C method call consumes the reference to ``self``, e.g. by +attaching it to a supplied parameter. +Additionally, parameters can have an annotation +``__attribute__((ns_consumed))``, which specifies that passing an owned object +as that parameter effectively transfers the ownership, and the caller is no +longer responsible for it. +These attributes affect code generation when interacting with ARC code, and +they are used by the Clang Static Analyzer. + +In C programs using CoreFoundation, a similar set of attributes: +``__attribute__((cf_returns_not_retained))``, +``__attribute__((cf_returns_retained))`` and ``__attribute__((cf_consumed))`` +have the same respective semantics when applied to CoreFoundation objects. +These attributes affect code generation when interacting with ARC code, and +they are used by the Clang Static Analyzer. + +Finally, in C++ interacting with XNU kernel (objects inheriting from OSObject), +the same attribute family is present: +``__attribute__((os_returns_not_retained))``, +``__attribute__((os_returns_retained))`` and ``__attribute__((os_consumed))``, +with the same respective semantics. +Similar to ``__attribute__((ns_consumes_self))``, +``__attribute__((os_consumes_this))`` specifies that the method call consumes +the reference to "this" (e.g., when attaching it to a different object supplied +as a parameter). +Out parameters (parameters the function is meant to write into, +either via pointers-to-pointers or references-to-pointers) +may be annotated with ``__attribute__((os_returns_retained))`` +or ``__attribute__((os_returns_not_retained))`` which specifies that the object +written into the out parameter should (or respectively should not) be released +after use. +Since often out parameters may or may not be written depending on the exit +code of the function, +annotations ``__attribute__((os_returns_retained_on_zero))`` +and ``__attribute__((os_returns_retained_on_non_zero))`` specify that +an out parameter at ``+1`` is written if and only if the function returns a zero +(respectively non-zero) error code. +Observe that return-code-dependent out parameter annotations are only +available for retained out parameters, as non-retained object do not have to be +released by the callee. +These attributes are only used by the Clang Static Analyzer. + +The family of attributes ``X_returns_X_retained`` can be added to functions, +C++ methods, and Objective-C methods and properties. +Attributes ``X_consumed`` can be added to parameters of methods, functions, +and Objective-C methods. + + +code_seg +-------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "","","","``code_seg``","","","" + +The ``__declspec(code_seg)`` attribute enables the placement of code into separate +named segments that can be paged or locked in memory individually. This attribute +is used to control the placement of instantiated templates and compiler-generated +code. See the documentation for `__declspec(code_seg)`_ on MSDN. + +.. _`__declspec(code_seg)`: http://msdn.microsoft.com/en-us/library/dn636922.aspx + + +convergent +---------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``convergent``","``clang::convergent``","``clang::convergent``","","","","Yes" + +The ``convergent`` attribute can be placed on a function declaration. It is +translated into the LLVM ``convergent`` attribute, which indicates that the call +instructions of a function with this attribute cannot be made control-dependent +on any additional values. + +In languages designed for SPMD/SIMT programming model, e.g. OpenCL or CUDA, +the call instructions of a function with this attribute must be executed by +all work items or threads in a work group or sub group. + +This attribute is different from ``noduplicate`` because it allows duplicating +function calls if it can be proved that the duplicated function calls are +not made control-dependent on any additional values, e.g., unrolling a loop +executed by all work items. + +Sample usage: +.. code-block:: c + + void convfunc(void) __attribute__((convergent)); + // Setting it as a C++11 attribute is also valid in a C++ program. + // void convfunc(void) [[clang::convergent]]; + + +cpu_dispatch +------------ +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``cpu_dispatch``","``clang::cpu_dispatch``","``clang::cpu_dispatch``","``cpu_dispatch``","","","Yes" + +The ``cpu_specific`` and ``cpu_dispatch`` attributes are used to define and +resolve multiversioned functions. This form of multiversioning provides a +mechanism for declaring versions across translation units and manually +specifying the resolved function list. A specified CPU defines a set of minimum +features that are required for the function to be called. The result of this is +that future processors execute the most restrictive version of the function the +new processor can execute. + +Function versions are defined with ``cpu_specific``, which takes one or more CPU +names as a parameter. For example: + +.. code-block:: c + + // Declares and defines the ivybridge version of single_cpu. + __attribute__((cpu_specific(ivybridge))) + void single_cpu(void){} + + // Declares and defines the atom version of single_cpu. + __attribute__((cpu_specific(atom))) + void single_cpu(void){} + + // Declares and defines both the ivybridge and atom version of multi_cpu. + __attribute__((cpu_specific(ivybridge, atom))) + void multi_cpu(void){} + +A dispatching (or resolving) function can be declared anywhere in a project's +source code with ``cpu_dispatch``. This attribute takes one or more CPU names +as a parameter (like ``cpu_specific``). Functions marked with ``cpu_dispatch`` +are not expected to be defined, only declared. If such a marked function has a +definition, any side effects of the function are ignored; trivial function +bodies are permissible for ICC compatibility. + +.. code-block:: c + + // Creates a resolver for single_cpu above. + __attribute__((cpu_dispatch(ivybridge, atom))) + void single_cpu(void){} + + // Creates a resolver for multi_cpu, but adds a 3rd version defined in another + // translation unit. + __attribute__((cpu_dispatch(ivybridge, atom, sandybridge))) + void multi_cpu(void){} + +Note that it is possible to have a resolving function that dispatches based on +more or fewer options than are present in the program. Specifying fewer will +result in the omitted options not being considered during resolution. Specifying +a version for resolution that isn't defined in the program will result in a +linking failure. + +It is also possible to specify a CPU name of ``generic`` which will be resolved +if the executing processor doesn't satisfy the features required in the CPU +name. The behavior of a program executing on a processor that doesn't satisfy +any option of a multiversioned function is undefined. + + +cpu_specific +------------ +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``cpu_specific``","``clang::cpu_specific``","``clang::cpu_specific``","``cpu_specific``","","","Yes" + +The ``cpu_specific`` and ``cpu_dispatch`` attributes are used to define and +resolve multiversioned functions. This form of multiversioning provides a +mechanism for declaring versions across translation units and manually +specifying the resolved function list. A specified CPU defines a set of minimum +features that are required for the function to be called. The result of this is +that future processors execute the most restrictive version of the function the +new processor can execute. + +Function versions are defined with ``cpu_specific``, which takes one or more CPU +names as a parameter. For example: + +.. code-block:: c + + // Declares and defines the ivybridge version of single_cpu. + __attribute__((cpu_specific(ivybridge))) + void single_cpu(void){} + + // Declares and defines the atom version of single_cpu. + __attribute__((cpu_specific(atom))) + void single_cpu(void){} + + // Declares and defines both the ivybridge and atom version of multi_cpu. + __attribute__((cpu_specific(ivybridge, atom))) + void multi_cpu(void){} + +A dispatching (or resolving) function can be declared anywhere in a project's +source code with ``cpu_dispatch``. This attribute takes one or more CPU names +as a parameter (like ``cpu_specific``). Functions marked with ``cpu_dispatch`` +are not expected to be defined, only declared. If such a marked function has a +definition, any side effects of the function are ignored; trivial function +bodies are permissible for ICC compatibility. + +.. code-block:: c + + // Creates a resolver for single_cpu above. + __attribute__((cpu_dispatch(ivybridge, atom))) + void single_cpu(void){} + + // Creates a resolver for multi_cpu, but adds a 3rd version defined in another + // translation unit. + __attribute__((cpu_dispatch(ivybridge, atom, sandybridge))) + void multi_cpu(void){} + +Note that it is possible to have a resolving function that dispatches based on +more or fewer options than are present in the program. Specifying fewer will +result in the omitted options not being considered during resolution. Specifying +a version for resolution that isn't defined in the program will result in a +linking failure. + +It is also possible to specify a CPU name of ``generic`` which will be resolved +if the executing processor doesn't satisfy the features required in the CPU +name. The behavior of a program executing on a processor that doesn't satisfy +any option of a multiversioned function is undefined. + + +deprecated +---------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``deprecated``","``gnu::deprecated`` |br| ``deprecated``","``deprecated``","``deprecated``","","","" + +The ``deprecated`` attribute can be applied to a function, a variable, or a +type. This is useful when identifying functions, variables, or types that are +expected to be removed in a future version of a program. + +Consider the function declaration for a hypothetical function ``f``: + +.. code-block:: c++ + + void f(void) __attribute__((deprecated("message", "replacement"))); + +When spelled as `__attribute__((deprecated))`, the deprecated attribute can have +two optional string arguments. The first one is the message to display when +emitting the warning; the second one enables the compiler to provide a Fix-It +to replace the deprecated name with a new name. Otherwise, when spelled as +`[[gnu::deprecated]] or [[deprecated]]`, the attribute can have one optional +string argument which is the message to display when emitting the warning. + + +diagnose_if +----------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``diagnose_if``","","","","","","" + +The ``diagnose_if`` attribute can be placed on function declarations to emit +warnings or errors at compile-time if calls to the attributed function meet +certain user-defined criteria. For example: + +.. code-block:: c + + int abs(int a) + __attribute__((diagnose_if(a >= 0, "Redundant abs call", "warning"))); + int must_abs(int a) + __attribute__((diagnose_if(a >= 0, "Redundant abs call", "error"))); + + int val = abs(1); // warning: Redundant abs call + int val2 = must_abs(1); // error: Redundant abs call + int val3 = abs(val); + int val4 = must_abs(val); // Because run-time checks are not emitted for + // diagnose_if attributes, this executes without + // issue. + + +``diagnose_if`` is closely related to ``enable_if``, with a few key differences: + +* Overload resolution is not aware of ``diagnose_if`` attributes: they're + considered only after we select the best candidate from a given candidate set. +* Function declarations that differ only in their ``diagnose_if`` attributes are + considered to be redeclarations of the same function (not overloads). +* If the condition provided to ``diagnose_if`` cannot be evaluated, no + diagnostic will be emitted. + +Otherwise, ``diagnose_if`` is essentially the logical negation of ``enable_if``. + +As a result of bullet number two, ``diagnose_if`` attributes will stack on the +same function. For example: + +.. code-block:: c + + int foo() __attribute__((diagnose_if(1, "diag1", "warning"))); + int foo() __attribute__((diagnose_if(1, "diag2", "warning"))); + + int bar = foo(); // warning: diag1 + // warning: diag2 + int (*fooptr)(void) = foo; // warning: diag1 + // warning: diag2 + + constexpr int supportsAPILevel(int N) { return N < 5; } + int baz(int a) + __attribute__((diagnose_if(!supportsAPILevel(10), + "Upgrade to API level 10 to use baz", "error"))); + int baz(int a) + __attribute__((diagnose_if(!a, "0 is not recommended.", "warning"))); + + int (*bazptr)(int) = baz; // error: Upgrade to API level 10 to use baz + int v = baz(0); // error: Upgrade to API level 10 to use baz + +Query for this feature with ``__has_attribute(diagnose_if)``. + + +disable_tail_calls +------------------ +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``disable_tail_calls``","``clang::disable_tail_calls``","``clang::disable_tail_calls``","","","","Yes" + +The ``disable_tail_calls`` attribute instructs the backend to not perform tail call optimization inside the marked function. + +For example: + + .. code-block:: c + + int callee(int); + + int foo(int a) __attribute__((disable_tail_calls)) { + return callee(a); // This call is not tail-call optimized. + } + +Marking virtual functions as ``disable_tail_calls`` is legal. + + .. code-block:: c++ + + int callee(int); + + class Base { + public: + [[clang::disable_tail_calls]] virtual int foo1() { + return callee(); // This call is not tail-call optimized. + } + }; + + class Derived1 : public Base { + public: + int foo1() override { + return callee(); // This call is tail-call optimized. + } + }; + + +enable_if +--------- +.. csv-table:: Supported Syntaxes + :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``" + + "``enable_if``","","","","","","Yes" + +.. Note:: Some features of this attribute are experimental. The meaning of + multiple enable_if attributes on a single declaration is subject to change in + a future version of clang. Also, the ABI is not standardized and the name + mangling may change in future versions. To avoid that, use asm labels. + +The ``enable_if`` attribute can be placed on function declarations to control +which overload is selected based on the values of the function's arguments. +When combined with the ``overloadable`` attribute, this feature is also +available in C. + +.. code-block:: c++ + + int isdigit(int c); + int isdigit(int c) __attribute__((enable_if(c <= -1 || c > 255, "chosen when 'c' is out of range"))) __attribute__((unavailable("'c' must have the value of an unsigned char or EOF"))); + + void foo(char c) { + isdigit(c); + isdigit(10); + isdigit(-10); // results in a compile-time error. + } + +The enable_if attribute takes two arguments, the first is an expression written +in terms of the function parameters, the second is a string explaining why this +overload candidate could not be selected to be displayed in diagnostics. The +expression is part of the function signature for the purposes of determining +whether it is a redeclaration (following the rules used when determining +whether a C++ template specialization is ODR-equivalent), but is not part of +the type. + +The enable_if expression is evaluated as if it were the body of a +bool-returning constexpr function declared with the arguments of the function +it is being applied to, then called with the parameters at the call site. If the +result is false or could not be determined through constant expression +evaluation, then this overload will not be chosen and the provided string may +be used in a diagnostic if the compile fails as a result. + +Because the enable_if expression is an unevaluated context, there are no global +state changes, nor the ability to pass information from the enable_if +expression to the function body. For example, suppose we want calls to +strnlen(strbuf, maxlen) to resolve to strnlen_chk(strbuf, maxlen, size of +strbuf) only if the size of strbuf can be determined: + +.. code-block:: c++ + + __attribute__((always_inline)) + static inline size_t strnlen(const char *s, size_t maxlen) + __attribute__((overloadable)) + __attribute__((enable_if(__builtin_object_size(s, 0) != -1))), + "chosen when the buffer size is known but 'maxlen' is not"))) + { + return strnlen_chk(s, maxlen, __builtin_object_size(s, 0)); + } + +Multiple enable_if attributes may be applied to a single declaration. In this +case, the enable_if expressions are evaluated from left to right in the +following manner. First, the candidates whose enable_if expressions evaluate to +false or cannot be evaluated are discarded. If the remaining candidates do not +share ODR-equivalent enable_if expressions, the overload resolution is +ambiguous. Otherwise, enable_if overload resolution continues with the next +enable_if attribute on the candidates that have not been discarded and have +remaining enable_if attributes. In this way, we pick the most specific +overload out of a number of viable overloads using enable_if. + +.. code-block:: c++ + + void f() __attribute__((enable_if(true, ""))); // #1 + void f() __attribute__((enable_if(true, ""))) __attribute__((enable_if(true, ""))); // #2 + + void g(int i, int j) __attribute__((enable_if(i, ""))); // #1 + void g(int i, int j) __attribute__((enable_if(j, ""))) __attribute__((enable_if(true))); // #2 + +In this example, a call to f() is always resolved to #2, as the first enable_if +expression is ODR-equivalent for both declarations, but #1 does not have another +enable_if expression to continue evaluating, so the next round of evaluation has +only a single candidate. In a call to g(1, 1), the call is ambiguous even though +#2 has more enable_if attributes, because the first enable_if expressions are +not ODR-equivalent. + +Query for this feature with ``__has_attribute(enable_if)``. + +Note that functions with one or more ``enable_if`` attributes may not have +their address taken, unless all of the conditions specified by said +``enable_if`` are constants that evaluate to ``true``. For example: + +.. code-block:: c *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6FCBF14E8BB9; Fri, 15 Feb 2019 20:49:10 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E3DD5843F8; Fri, 15 Feb 2019 20:49:09 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6589123EB9; Fri, 15 Feb 2019 20:49:09 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKn9C0049820; Fri, 15 Feb 2019 20:49:09 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKn9xB049819; Fri, 15 Feb 2019 20:49:09 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKn9xB049819@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344169 - vendor/clang/clang-release_80-r354130 X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: vendor/clang/clang-release_80-r354130 X-SVN-Commit-Revision: 344169 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E3DD5843F8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:10 -0000 Author: dim Date: Fri Feb 15 20:49:08 2019 New Revision: 344169 URL: https://svnweb.freebsd.org/changeset/base/344169 Log: Tag clang release_80 branch r354130. Added: vendor/clang/clang-release_80-r354130/ - copied from r344168, vendor/clang/dist-release_80/ From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CDF9214E8BF2; Fri, 15 Feb 2019 20:49:16 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 74E50844C8; Fri, 15 Feb 2019 20:49:16 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C69C123EBB; Fri, 15 Feb 2019 20:49:15 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKnFTO049919; Fri, 15 Feb 2019 20:49:15 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKnFjO049918; Fri, 15 Feb 2019 20:49:15 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKnFjO049918@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344171 - vendor/compiler-rt/compiler-rt-release_80-r354130 X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: vendor/compiler-rt/compiler-rt-release_80-r354130 X-SVN-Commit-Revision: 344171 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 74E50844C8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:17 -0000 Author: dim Date: Fri Feb 15 20:49:15 2019 New Revision: 344171 URL: https://svnweb.freebsd.org/changeset/base/344171 Log: Tag compiler-rt release_80 branch r354130. Added: vendor/compiler-rt/compiler-rt-release_80-r354130/ - copied from r344170, vendor/compiler-rt/dist-release_80/ From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 87A4714E8BEA; Fri, 15 Feb 2019 20:49:16 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1D989844BC; Fri, 15 Feb 2019 20:49:16 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C63B223EBA; Fri, 15 Feb 2019 20:49:12 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKnChG049871; Fri, 15 Feb 2019 20:49:12 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKnCO1049868; Fri, 15 Feb 2019 20:49:12 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKnCO1049868@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344170 - in vendor/compiler-rt/dist-release_80: lib/sanitizer_common utils X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in vendor/compiler-rt/dist-release_80: lib/sanitizer_common utils X-SVN-Commit-Revision: 344170 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1D989844BC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:16 -0000 Author: dim Date: Fri Feb 15 20:49:11 2019 New Revision: 344170 URL: https://svnweb.freebsd.org/changeset/base/344170 Log: Vendor import of compiler-rt release_80 branch r354130: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_80@354130 Modified: vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h vendor/compiler-rt/dist-release_80/utils/generate_netbsd_ioctls.awk Modified: vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc ============================================================================== --- vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc Fri Feb 15 20:49:08 2019 (r344169) +++ vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc Fri Feb 15 20:49:11 2019 (r344170) @@ -25,7 +25,7 @@ struct ioctl_desc { const char *name; }; -const unsigned ioctl_table_max = 1202; +const unsigned ioctl_table_max = 1200; static ioctl_desc ioctl_table[ioctl_table_max]; static unsigned ioctl_table_size = 0; @@ -298,9 +298,6 @@ static void ioctl_table_fill() { _(IRFRAMETTY_GET_DEVICE, WRITE, sizeof(unsigned int)); _(IRFRAMETTY_GET_DONGLE, WRITE, sizeof(unsigned int)); _(IRFRAMETTY_SET_DONGLE, READ, sizeof(unsigned int)); - /* Entries from file: dev/isa/satlinkio.h */ - _(SATIORESET, NONE, 0); - _(SATIOGID, WRITE, struct_satlink_id_sz); /* Entries from file: dev/isa/isvio.h */ _(ISV_CMD, READWRITE, struct_isv_cmd_sz); /* Entries from file: dev/isa/wtreg.h */ @@ -649,8 +646,8 @@ static void ioctl_table_fill() { _(SPKRTUNE, NONE, 0); _(SPKRGETVOL, WRITE, sizeof(unsigned int)); _(SPKRSETVOL, READ, sizeof(unsigned int)); - /* Entries from file: dev/nvmm/nvmm_ioctl.h */ #if 0 /* WIP */ + /* Entries from file: dev/nvmm/nvmm_ioctl.h */ _(NVMM_IOC_CAPABILITY, WRITE, struct_nvmm_ioc_capability_sz); _(NVMM_IOC_MACHINE_CREATE, READWRITE, struct_nvmm_ioc_machine_create_sz); _(NVMM_IOC_MACHINE_DESTROY, READ, struct_nvmm_ioc_machine_destroy_sz); @@ -659,7 +656,7 @@ static void ioctl_table_fill() { _(NVMM_IOC_VCPU_DESTROY, READ, struct_nvmm_ioc_vcpu_destroy_sz); _(NVMM_IOC_VCPU_SETSTATE, READ, struct_nvmm_ioc_vcpu_setstate_sz); _(NVMM_IOC_VCPU_GETSTATE, READ, struct_nvmm_ioc_vcpu_getstate_sz); - _(NVMM_IOC_VCPU_INJECT, READWRITE, struct_nvmm_ioc_vcpu_inject_sz); + _(NVMM_IOC_VCPU_INJECT, READ, struct_nvmm_ioc_vcpu_inject_sz); _(NVMM_IOC_VCPU_RUN, READWRITE, struct_nvmm_ioc_vcpu_run_sz); _(NVMM_IOC_GPA_MAP, READ, struct_nvmm_ioc_gpa_map_sz); _(NVMM_IOC_GPA_UNMAP, READ, struct_nvmm_ioc_gpa_unmap_sz); Modified: vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc ============================================================================== --- vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc Fri Feb 15 20:49:08 2019 (r344169) +++ vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc Fri Feb 15 20:49:11 2019 (r344170) @@ -122,7 +122,6 @@ #include #include #include -#include #include #include #include @@ -639,7 +638,6 @@ unsigned struct_rf_recon_req_sz = sizeof(rf_recon_req) unsigned struct_rio_conf_sz = sizeof(rio_conf); unsigned struct_rio_interface_sz = sizeof(rio_interface); unsigned struct_rio_stats_sz = sizeof(rio_stats); -unsigned struct_satlink_id_sz = sizeof(satlink_id); unsigned struct_scan_io_sz = sizeof(scan_io); unsigned struct_scbusaccel_args_sz = sizeof(scbusaccel_args); unsigned struct_scbusiodetach_args_sz = sizeof(scbusiodetach_args); @@ -1105,9 +1103,6 @@ unsigned IOCTL_IRDA_GET_TURNAROUNDMASK = IRDA_GET_TURN unsigned IOCTL_IRFRAMETTY_GET_DEVICE = IRFRAMETTY_GET_DEVICE; unsigned IOCTL_IRFRAMETTY_GET_DONGLE = IRFRAMETTY_GET_DONGLE; unsigned IOCTL_IRFRAMETTY_SET_DONGLE = IRFRAMETTY_SET_DONGLE; -unsigned IOCTL_SATIORESET = SATIORESET; -unsigned IOCTL_SATIOGID = SATIOGID; -unsigned IOCTL_SATIOSBUFSIZE = SATIOSBUFSIZE; unsigned IOCTL_ISV_CMD = ISV_CMD; unsigned IOCTL_WTQICMD = WTQICMD; unsigned IOCTL_ISCSI_GET_VERSION = ISCSI_GET_VERSION; Modified: vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h ============================================================================== --- vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h Fri Feb 15 20:49:08 2019 (r344169) +++ vendor/compiler-rt/dist-release_80/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h Fri Feb 15 20:49:11 2019 (r344170) @@ -803,7 +803,6 @@ extern unsigned struct_rf_recon_req_sz; extern unsigned struct_rio_conf_sz; extern unsigned struct_rio_interface_sz; extern unsigned struct_rio_stats_sz; -extern unsigned struct_satlink_id_sz; extern unsigned struct_scan_io_sz; extern unsigned struct_scbusaccel_args_sz; extern unsigned struct_scbusiodetach_args_sz; @@ -1266,9 +1265,6 @@ extern unsigned IOCTL_IRDA_GET_TURNAROUNDMASK; extern unsigned IOCTL_IRFRAMETTY_GET_DEVICE; extern unsigned IOCTL_IRFRAMETTY_GET_DONGLE; extern unsigned IOCTL_IRFRAMETTY_SET_DONGLE; -extern unsigned IOCTL_SATIORESET; -extern unsigned IOCTL_SATIOGID; -extern unsigned IOCTL_SATIOSBUFSIZE; extern unsigned IOCTL_ISV_CMD; extern unsigned IOCTL_WTQICMD; extern unsigned IOCTL_ISCSI_GET_VERSION; Modified: vendor/compiler-rt/dist-release_80/utils/generate_netbsd_ioctls.awk ============================================================================== --- vendor/compiler-rt/dist-release_80/utils/generate_netbsd_ioctls.awk Fri Feb 15 20:49:08 2019 (r344169) +++ vendor/compiler-rt/dist-release_80/utils/generate_netbsd_ioctls.awk Fri Feb 15 20:49:11 2019 (r344170) @@ -152,7 +152,6 @@ FNR == 1 { $0 ~ /JOY_GET_X_OFFSET/ || $0 ~ /CHIOGPICKER/ || $0 ~ /SLIOCGUNIT/ || - $0 ~ /SATIOSBUFSIZE/ || $0 ~ /TUNSLMODE/ || $0 ~ /CBQ_IF_ATTACH/ || $0 ~ /CDNR_IF_ATTACH/ || From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B88114E8C47; Fri, 15 Feb 2019 20:49:26 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C3DF384540; Fri, 15 Feb 2019 20:49:21 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A2EC223EBC; Fri, 15 Feb 2019 20:49:19 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKnJva049965; Fri, 15 Feb 2019 20:49:19 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKnJjC049964; Fri, 15 Feb 2019 20:49:19 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKnJjC049964@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344172 - vendor/libc++/libc++-release_80-r354130 X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: vendor/libc++/libc++-release_80-r354130 X-SVN-Commit-Revision: 344172 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: C3DF384540 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:26 -0000 Author: dim Date: Fri Feb 15 20:49:19 2019 New Revision: 344172 URL: https://svnweb.freebsd.org/changeset/base/344172 Log: Tag libc++ release_80 branch r354130. Added: vendor/libc++/libc++-release_80-r354130/ - copied from r344171, vendor/libc++/dist-release_80/ From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08BFF14E8C71; Fri, 15 Feb 2019 20:49:33 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E10468467A; Fri, 15 Feb 2019 20:49:31 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C39B823EBD; Fri, 15 Feb 2019 20:49:26 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKnQL5050040; Fri, 15 Feb 2019 20:49:26 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKnMLu050020; Fri, 15 Feb 2019 20:49:22 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKnMLu050020@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344173 - in vendor/lld/dist-release_80: COFF ELF docs test/COFF test/ELF test/wasm test/wasm/lto wasm X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in vendor/lld/dist-release_80: COFF ELF docs test/COFF test/ELF test/wasm test/wasm/lto wasm X-SVN-Commit-Revision: 344173 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E10468467A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.96)[-0.960,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:33 -0000 Author: dim Date: Fri Feb 15 20:49:22 2019 New Revision: 344173 URL: https://svnweb.freebsd.org/changeset/base/344173 Log: Vendor import of lld release_80 branch r354130: https://llvm.org/svn/llvm-project/lld/branches/release_80@354130 Added: vendor/lld/dist-release_80/test/wasm/import-module.ll vendor/lld/dist-release_80/test/wasm/import-names.ll vendor/lld/dist-release_80/test/wasm/lto/relocatable-undefined.ll Modified: vendor/lld/dist-release_80/COFF/PDB.cpp vendor/lld/dist-release_80/ELF/Driver.cpp vendor/lld/dist-release_80/ELF/ScriptParser.cpp vendor/lld/dist-release_80/docs/ReleaseNotes.rst vendor/lld/dist-release_80/docs/index.rst vendor/lld/dist-release_80/docs/missingkeyfunction.rst vendor/lld/dist-release_80/test/COFF/pdb-relative-source-lines.test vendor/lld/dist-release_80/test/ELF/emulation-mips.s vendor/lld/dist-release_80/test/ELF/emulation-ppc.s vendor/lld/dist-release_80/test/wasm/data-layout.ll vendor/lld/dist-release_80/test/wasm/init-fini.ll vendor/lld/dist-release_80/test/wasm/locals-duplicate.test vendor/lld/dist-release_80/test/wasm/weak-alias.ll vendor/lld/dist-release_80/wasm/Driver.cpp vendor/lld/dist-release_80/wasm/InputChunks.cpp vendor/lld/dist-release_80/wasm/InputFiles.cpp vendor/lld/dist-release_80/wasm/LTO.cpp vendor/lld/dist-release_80/wasm/LTO.h vendor/lld/dist-release_80/wasm/MarkLive.cpp vendor/lld/dist-release_80/wasm/SymbolTable.cpp vendor/lld/dist-release_80/wasm/SymbolTable.h vendor/lld/dist-release_80/wasm/Symbols.h vendor/lld/dist-release_80/wasm/Writer.cpp vendor/lld/dist-release_80/wasm/Writer.h Modified: vendor/lld/dist-release_80/COFF/PDB.cpp ============================================================================== --- vendor/lld/dist-release_80/COFF/PDB.cpp Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/COFF/PDB.cpp Fri Feb 15 20:49:22 2019 (r344173) @@ -288,18 +288,24 @@ static void pdbMakeAbsolute(SmallVectorImpl &Fil // It's not absolute in any path syntax. Relative paths necessarily refer to // the local file system, so we can make it native without ending up with a // nonsensical path. - sys::path::native(FileName); if (Config->PDBSourcePath.empty()) { + sys::path::native(FileName); sys::fs::make_absolute(FileName); return; } - // Only apply native and dot removal to the relative file path. We want to - // leave the path the user specified untouched since we assume they specified - // it for a reason. - sys::path::remove_dots(FileName, /*remove_dot_dots=*/true); + // Try to guess whether /PDBSOURCEPATH is a unix path or a windows path. + // Since PDB's are more of a Windows thing, we make this conservative and only + // decide that it's a unix path if we're fairly certain. Specifically, if + // it starts with a forward slash. SmallString<128> AbsoluteFileName = Config->PDBSourcePath; - sys::path::append(AbsoluteFileName, FileName); + sys::path::Style GuessedStyle = AbsoluteFileName.startswith("/") + ? sys::path::Style::posix + : sys::path::Style::windows; + sys::path::append(AbsoluteFileName, GuessedStyle, FileName); + sys::path::native(AbsoluteFileName, GuessedStyle); + sys::path::remove_dots(AbsoluteFileName, true, GuessedStyle); + FileName = std::move(AbsoluteFileName); } Modified: vendor/lld/dist-release_80/ELF/Driver.cpp ============================================================================== --- vendor/lld/dist-release_80/ELF/Driver.cpp Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/ELF/Driver.cpp Fri Feb 15 20:49:22 2019 (r344173) @@ -130,7 +130,7 @@ static std::tuple parseEmu .Cases("elf32btsmip", "elf32btsmipn32", {ELF32BEKind, EM_MIPS}) .Cases("elf32ltsmip", "elf32ltsmipn32", {ELF32LEKind, EM_MIPS}) .Case("elf32lriscv", {ELF32LEKind, EM_RISCV}) - .Case("elf32ppc", {ELF32BEKind, EM_PPC}) + .Cases("elf32ppc", "elf32ppclinux", {ELF32BEKind, EM_PPC}) .Case("elf64btsmip", {ELF64BEKind, EM_MIPS}) .Case("elf64ltsmip", {ELF64LEKind, EM_MIPS}) .Case("elf64lriscv", {ELF64LEKind, EM_RISCV}) Modified: vendor/lld/dist-release_80/ELF/ScriptParser.cpp ============================================================================== --- vendor/lld/dist-release_80/ELF/ScriptParser.cpp Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/ELF/ScriptParser.cpp Fri Feb 15 20:49:22 2019 (r344173) @@ -392,10 +392,11 @@ static std::pair parseBfdName(Strin .Case("elf32-x86-64", {ELF32LEKind, EM_X86_64}) .Case("elf64-aarch64", {ELF64LEKind, EM_AARCH64}) .Case("elf64-littleaarch64", {ELF64LEKind, EM_AARCH64}) + .Case("elf32-powerpc", {ELF32BEKind, EM_PPC}) .Case("elf64-powerpc", {ELF64BEKind, EM_PPC64}) .Case("elf64-powerpcle", {ELF64LEKind, EM_PPC64}) .Case("elf64-x86-64", {ELF64LEKind, EM_X86_64}) - .Case("elf32-tradbigmips", {ELF32BEKind, EM_MIPS}) + .Cases("elf32-tradbigmips", "elf32-bigmips", {ELF32BEKind, EM_MIPS}) .Case("elf32-ntradbigmips", {ELF32BEKind, EM_MIPS}) .Case("elf32-tradlittlemips", {ELF32LEKind, EM_MIPS}) .Case("elf32-ntradlittlemips", {ELF32LEKind, EM_MIPS}) Modified: vendor/lld/dist-release_80/docs/ReleaseNotes.rst ============================================================================== --- vendor/lld/dist-release_80/docs/ReleaseNotes.rst Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/docs/ReleaseNotes.rst Fri Feb 15 20:49:22 2019 (r344173) @@ -13,11 +13,13 @@ lld 8.0.0 Release Notes Introduction ============ -This document contains the release notes for the lld linker, release 8.0.0. -Here we describe the status of lld, including major improvements -from the previous release. All lld releases may be downloaded -from the `LLVM releases web site `_. +lld is a high-performance linker that supports ELF (Unix), COFF (Windows), +Mach-O (macOS), MinGW and WebAssembly. lld is command-line-compatible with +GNU linkers and Microsoft link.exe and is significantly faster than the +system default linkers. +nlld 8.0.0 has lots of feature improvements and bug fixes. + Non-comprehensive list of changes in this release ================================================= @@ -33,28 +35,67 @@ ELF Improvements non-superpages to a superpage if they are aligned to the superpage size. (`r342746 `_) +* lld now attempts to place a ``.note`` segment in the first page of a + generated file, so that you can find some important information + (``.note.gnu.build-id`` in particular) in a core file even if a core + file is truncated by ulimit. + (`r349524 `_) + +* lld now reports an error if ``_GLOBAL_OFFSET_TABLE_`` symbol is + defined by an input object file, as the symbol is supposed to be + synthesized by the linker. + (`r347854 `_) + * lld/Hexagon can now link Linux kernel and musl libc for Qualcomm Hexagon ISA. * Initial MSP430 ISA support has landed. -* The following flags have been added: ``-z interpose``, ``-z global`` - * lld now uses the ``sigrie`` instruction as a trap instruction for MIPS targets. +* lld now creates a TLS segment for AArch64 with a slightly larger + alignment requirement, so that the loader makes a few bytes room + before each TLS segment at runtime. The aim of this change is to + make room to accomodate nonstandard Android TLS slots while keeping + the compatibility with the standard AArch64 ABI. + (`r350681 `_) + +* The following flags have been added: ``--call-graph-profile``, + ``--no-call-graph-profile``, ``--warn-ifunc-textrel``, + ``-z interpose``, ``-z global``, ``-z nodefaultlib`` + COFF Improvements ----------------- * PDB GUID is set to hash of PDB contents instead to a random byte sequence for build reproducibility. +* ``/pdbsourcepath:`` is now also used to make ``"cwd"``, ``"exe"``, ``"pdb"`` + in the env block of PDB outputs absolute if they are relative, and to make + paths to obj files referenced in PDB outputs absolute if they are relative. + Together with the previous item, this makes it possible to generate + executables and PDBs that are fully deterministic and independent of the + absolute path to the build directory, so that different machines building + the same code in different directories can produce exactly the same output. + * The following flags have been added: ``/force:multiple`` * lld now can link against import libraries produced by GNU tools. -* lld can create thunks for ARM, to allow linking images over 16 MB. +* lld can create thunks for ARM and ARM64, to allow linking larger images + (over 16 MB for ARM and over 128 MB for ARM64) +* Several speed and memory usage improvements. + +* lld now creates debug info for typedefs. + +* lld can now link obj files produced by ``cl.exe /Z7 /Yc``. + +* lld now understands ``%_PDB%`` and ``%_EXT%`` in ``/pdbaltpath:``. + +* Undefined symbols are now printed in demangled form in addition to raw form. + MinGW Improvements ------------------ @@ -75,11 +116,6 @@ MinGW Improvements * Actually generate a codeview build id signature, even if not creating a PDB. Previously, the ``--build-id`` option did not actually generate a build id unless ``--pdb`` was specified. - -MachO Improvements ------------------- - -* Item 1. WebAssembly Improvements ------------------------ Modified: vendor/lld/dist-release_80/docs/index.rst ============================================================================== --- vendor/lld/dist-release_80/docs/index.rst Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/docs/index.rst Fri Feb 15 20:49:22 2019 (r344173) @@ -173,4 +173,5 @@ document soon. AtomLLD WebAssembly windows_support + missingkeyfunction ReleaseNotes Modified: vendor/lld/dist-release_80/docs/missingkeyfunction.rst ============================================================================== --- vendor/lld/dist-release_80/docs/missingkeyfunction.rst Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/docs/missingkeyfunction.rst Fri Feb 15 20:49:22 2019 (r344173) @@ -1,5 +1,5 @@ -Missing Key Method -================== +Missing Key Function +==================== If your build failed with a linker error something like this:: Modified: vendor/lld/dist-release_80/test/COFF/pdb-relative-source-lines.test ============================================================================== --- vendor/lld/dist-release_80/test/COFF/pdb-relative-source-lines.test Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/COFF/pdb-relative-source-lines.test Fri Feb 15 20:49:22 2019 (r344173) @@ -37,26 +37,26 @@ RUN: llvm-pdbutil pdb2yaml -modules -module-files -mod RUN: ./lld-link -debug "-pdbsourcepath:/usr/src" -entry:main -nodefaultlib -out:out.exe -pdb:out.pdb pdb_lines_1_relative.obj pdb_lines_2_relative.obj RUN: llvm-pdbutil pdb2yaml -modules -module-files -module-syms -subsections=lines,fc %t/out.pdb | FileCheck --check-prefix=POSIX %s -CHECK-LABEL: - Module: 'c:\src{{[\\/]}}pdb_lines_1_relative.obj' -CHECK-NEXT: ObjFile: 'c:\src{{[\\/]}}pdb_lines_1_relative.obj' +CHECK-LABEL: - Module: 'c:\src\pdb_lines_1_relative.obj' +CHECK-NEXT: ObjFile: 'c:\src\pdb_lines_1_relative.obj' CHECK: SourceFiles: -CHECK-NEXT: - 'c:\src{{[\\/]}}pdb_lines_1.c' -CHECK-NEXT: - 'c:\src{{[\\/]}}foo.h' +CHECK-NEXT: - 'c:\src\pdb_lines_1.c' +CHECK-NEXT: - 'c:\src\foo.h' CHECK: Subsections: -CHECK: - FileName: 'c:\src{{[\\/]}}pdb_lines_1.c' -CHECK: - FileName: 'c:\src{{[\\/]}}foo.h' +CHECK: - FileName: 'c:\src\pdb_lines_1.c' +CHECK: - FileName: 'c:\src\foo.h' CHECK: - !FileChecksums -CHECK: - FileName: 'c:\src{{[\\/]}}pdb_lines_1.c' -CHECK: - FileName: 'c:\src{{[\\/]}}foo.h' +CHECK: - FileName: 'c:\src\pdb_lines_1.c' +CHECK: - FileName: 'c:\src\foo.h' -CHECK-LABEL: - Module: 'c:\src{{[\\/]}}pdb_lines_2_relative.obj' -CHECK-NEXT: ObjFile: 'c:\src{{[\\/]}}pdb_lines_2_relative.obj' +CHECK-LABEL: - Module: 'c:\src\pdb_lines_2_relative.obj' +CHECK-NEXT: ObjFile: 'c:\src\pdb_lines_2_relative.obj' CHECK: SourceFiles: -CHECK-NEXT: - 'c:\src{{[\\/]}}pdb_lines_2.c' +CHECK-NEXT: - 'c:\src\pdb_lines_2.c' CHECK: Subsections: -CHECK: - FileName: 'c:\src{{[\\/]}}pdb_lines_2.c' +CHECK: - FileName: 'c:\src\pdb_lines_2.c' CHECK: - !FileChecksums -CHECK: - FileName: 'c:\src{{[\\/]}}pdb_lines_2.c' +CHECK: - FileName: 'c:\src\pdb_lines_2.c' CHECK-LABEL: - Kind: S_ENVBLOCK CHECK-NEXT: EnvBlockSym: @@ -64,33 +64,33 @@ CHECK-NEXT: Entries: CHECK-NEXT: - cwd CHECK-NEXT: - 'c:\src' CHECK-NEXT: - exe -CHECK-NEXT: - 'c:\src{{[\\/]}}lld-link' +CHECK-NEXT: - 'c:\src\lld-link' CHECK-NEXT: - pdb -CHECK-NEXT: - 'c:\src{{[\\/]}}out.pdb' +CHECK-NEXT: - 'c:\src\out.pdb' CHECK-NEXT: - cmd CHECK-NEXT: - '-debug -pdbsourcepath:c:\src -entry:main -nodefaultlib -out:out.exe -pdb:out.pdb pdb_lines_1_relative.obj pdb_lines_2_relative.obj' -POSIX-LABEL: - Module: '/usr/src{{[\\/]}}pdb_lines_1_relative.obj' -POSIX-NEXT: ObjFile: '/usr/src{{[\\/]}}pdb_lines_1_relative.obj' +POSIX-LABEL: - Module: '/usr/src/pdb_lines_1_relative.obj' +POSIX-NEXT: ObjFile: '/usr/src/pdb_lines_1_relative.obj' POSIX: SourceFiles: -POSIX-NEXT: - '/usr/src{{[\\/]}}pdb_lines_1.c' -POSIX-NEXT: - '/usr/src{{[\\/]}}foo.h' +POSIX-NEXT: - '/usr/src/pdb_lines_1.c' +POSIX-NEXT: - '/usr/src/foo.h' POSIX: Subsections: -POSIX: - FileName: '/usr/src{{[\\/]}}pdb_lines_1.c' -POSIX: - FileName: '/usr/src{{[\\/]}}foo.h' +POSIX: - FileName: '/usr/src/pdb_lines_1.c' +POSIX: - FileName: '/usr/src/foo.h' POSIX: - !FileChecksums -POSIX: - FileName: '/usr/src{{[\\/]}}pdb_lines_1.c' -POSIX: - FileName: '/usr/src{{[\\/]}}foo.h' +POSIX: - FileName: '/usr/src/pdb_lines_1.c' +POSIX: - FileName: '/usr/src/foo.h' -POSIX-LABEL: - Module: '/usr/src{{[\\/]}}pdb_lines_2_relative.obj' -POSIX-NEXT: ObjFile: '/usr/src{{[\\/]}}pdb_lines_2_relative.obj' +POSIX-LABEL: - Module: '/usr/src/pdb_lines_2_relative.obj' +POSIX-NEXT: ObjFile: '/usr/src/pdb_lines_2_relative.obj' POSIX: SourceFiles: -POSIX-NEXT: - '/usr/src{{[\\/]}}pdb_lines_2.c' +POSIX-NEXT: - '/usr/src/pdb_lines_2.c' POSIX: Subsections: -POSIX: - FileName: '/usr/src{{[\\/]}}pdb_lines_2.c' +POSIX: - FileName: '/usr/src/pdb_lines_2.c' POSIX: - !FileChecksums -POSIX: - FileName: '/usr/src{{[\\/]}}pdb_lines_2.c' +POSIX: - FileName: '/usr/src/pdb_lines_2.c' POSIX-LABEL: - Kind: S_ENVBLOCK POSIX-NEXT: EnvBlockSym: @@ -98,8 +98,8 @@ POSIX-NEXT: Entries: POSIX-NEXT: - cwd POSIX-NEXT: - '/usr/src' POSIX-NEXT: - exe -POSIX-NEXT: - '/usr/src{{[\\/]}}lld-link' +POSIX-NEXT: - '/usr/src/lld-link' POSIX-NEXT: - pdb -POSIX-NEXT: - '/usr/src{{[\\/]}}out.pdb' +POSIX-NEXT: - '/usr/src/out.pdb' POSIX-NEXT: - cmd POSIX-NEXT: - '-debug -pdbsourcepath:/usr/src -entry:main -nodefaultlib -out:out.exe -pdb:out.pdb pdb_lines_1_relative.obj pdb_lines_2_relative.obj' Modified: vendor/lld/dist-release_80/test/ELF/emulation-mips.s ============================================================================== --- vendor/lld/dist-release_80/test/ELF/emulation-mips.s Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/ELF/emulation-mips.s Fri Feb 15 20:49:22 2019 (r344173) @@ -7,6 +7,9 @@ # RUN: echo 'OUTPUT_FORMAT(elf32-tradbigmips)' > %tmips.script # RUN: ld.lld %tmips.script -e _start %tmips -o %t4mips # RUN: llvm-readobj -file-headers %t4mips | FileCheck --check-prefix=MIPS %s +# RUN: echo 'OUTPUT_FORMAT(elf32-bigmips)' > %tmips2.script +# RUN: ld.lld %tmips2.script -e _start %tmips -o %t5mips +# RUN: llvm-readobj -file-headers %t5mips | FileCheck --check-prefix=MIPS %s # MIPS: ElfHeader { # MIPS-NEXT: Ident { # MIPS-NEXT: Magic: (7F 45 4C 46) Modified: vendor/lld/dist-release_80/test/ELF/emulation-ppc.s ============================================================================== --- vendor/lld/dist-release_80/test/ELF/emulation-ppc.s Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/ELF/emulation-ppc.s Fri Feb 15 20:49:22 2019 (r344173) @@ -103,5 +103,42 @@ # PPC64LE-NEXT: StringTableSectionIndex: # PPC64LE-NEXT: } +# RUN: llvm-mc -filetype=obj -triple=powerpc-unknown-linux %s -o %tppc32 +# RUN: ld.lld -m elf32ppc %tppc32 -o %t2ppc32 +# RUN: llvm-readobj -file-headers %t2ppc32 | FileCheck --check-prefix=PPC32 %s +# RUN: ld.lld %tppc32 -o %t3ppc32 +# RUN: llvm-readobj -file-headers %t3ppc32 | FileCheck --check-prefix=PPC32 %s +# RUN: echo 'OUTPUT_FORMAT(elf32-powerpc)' > %tppc32.script +# RUN: ld.lld %tppc32.script %tppc32 -o %t4ppc32 +# RUN: llvm-readobj -file-headers %t4ppc32 | FileCheck --check-prefix=PPC32 %s +# RUN: ld.lld -m elf32ppclinux %tppc32 -o %t5ppc32 +# RUN: llvm-readobj -file-headers %t5ppc32 | FileCheck --check-prefix=PPC32 %s + +# PPC32: ElfHeader { +# PPC32-NEXT: Ident { +# PPC32-NEXT: Magic: (7F 45 4C 46) +# PPC32-NEXT: Class: 32-bit (0x1) +# PPC32-NEXT: DataEncoding: BigEndian (0x2) +# PPC32-NEXT: FileVersion: 1 +# PPC32-NEXT: OS/ABI: SystemV (0x0) +# PPC32-NEXT: ABIVersion: 0 +# PPC32-NEXT: Unused: (00 00 00 00 00 00 00) +# PPC32-NEXT: } +# PPC32-NEXT: Type: Executable (0x2) +# PPC32-NEXT: Machine: EM_PPC (0x14) +# PPC32-NEXT: Version: 1 +# PPC32-NEXT: Entry: +# PPC32-NEXT: ProgramHeaderOffset: 0x34 +# PPC32-NEXT: SectionHeaderOffset: +# PPC32-NEXT: Flags [ (0x0) +# PPC32-NEXT: ] +# PPC32-NEXT: HeaderSize: 52 +# PPC32-NEXT: ProgramHeaderEntrySize: 32 +# PPC32-NEXT: ProgramHeaderCount: +# PPC32-NEXT: SectionHeaderEntrySize: 40 +# PPC32-NEXT: SectionHeaderCount: +# PPC32-NEXT: StringTableSectionIndex: +# PPC32-NEXT: } + .globl _start _start: Modified: vendor/lld/dist-release_80/test/wasm/data-layout.ll ============================================================================== --- vendor/lld/dist-release_80/test/wasm/data-layout.ll Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/wasm/data-layout.ll Fri Feb 15 20:49:22 2019 (r344173) @@ -85,10 +85,10 @@ target triple = "wasm32-unknown-unknown" ; RELOC: - Type: DATA ; RELOC-NEXT: Relocations: ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_I32 -; RELOC-NEXT: Index: 6 +; RELOC-NEXT: Index: 3 ; RELOC-NEXT: Offset: 0x00000018 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_I32 -; RELOC-NEXT: Index: 3 +; RELOC-NEXT: Index: 4 ; RELOC-NEXT: Offset: 0x0000002E ; RELOC-NEXT: Addend: 4 ; RELOC-NEXT: Segments: @@ -148,7 +148,7 @@ target triple = "wasm32-unknown-unknown" ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Segment: 2 ; RELOC-NEXT: Size: 4 -; RELOC: - Index: 6 +; RELOC-NEXT: - Index: 3 ; RELOC-NEXT: Kind: DATA ; RELOC-NEXT: Name: hello_str ; RELOC-NEXT: Flags: [ ] Added: vendor/lld/dist-release_80/test/wasm/import-module.ll ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/lld/dist-release_80/test/wasm/import-module.ll Fri Feb 15 20:49:22 2019 (r344173) @@ -0,0 +1,21 @@ +; RUN: llc -filetype=obj %s -o %t.o +; RUN: wasm-ld --allow-undefined -o %t.wasm %t.o +; RUN: obj2yaml %t.wasm | FileCheck %s + +target triple = "wasm32-unknown-unknown-wasm" + +define void @_start() { + call void @foo(); + ret void +} + +declare void @foo() #0 + +attributes #0 = { "wasm-import-module"="bar" } + +; CHECK: - Type: IMPORT +; CHECK-NEXT: Imports: +; CHECK-NEXT: - Module: bar +; CHECK-NEXT: Field: foo +; CHECK-NEXT: Kind: FUNCTION +; CHECK-NEXT: SigIndex: 0 Added: vendor/lld/dist-release_80/test/wasm/import-names.ll ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/lld/dist-release_80/test/wasm/import-names.ll Fri Feb 15 20:49:22 2019 (r344173) @@ -0,0 +1,27 @@ +; RUN: llc -filetype=obj %s -o %t.o +; RUN: wasm-ld --allow-undefined -o %t.wasm %t.o +; RUN: obj2yaml %t.wasm | FileCheck %s + +target triple = "wasm32-unknown-unknown" + +declare void @f0() #0 + +define void @_start() { + call void @f0() + ret void +} + +attributes #0 = { "wasm-import-module"="somewhere" "wasm-import-name"="something" } + +; CHECK: - Type: IMPORT +; CHECK-NEXT: Imports: +; CHECK-NEXT: - Module: somewhere +; CHECK-NEXT: Field: something +; CHECK-NEXT: Kind: FUNCTION +; CHECK-NEXT: SigIndex: 0 + +; CHECK: - Type: CUSTOM +; CHECK-NEXT: Name: name +; CHECK-NEXT: FunctionNames: +; CHECK-NEXT: - Index: 0 +; CHECK-NEXT: Name: f0 Modified: vendor/lld/dist-release_80/test/wasm/init-fini.ll ============================================================================== --- vendor/lld/dist-release_80/test/wasm/init-fini.ll Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/wasm/init-fini.ll Fri Feb 15 20:49:22 2019 (r344173) @@ -163,64 +163,64 @@ entry: ; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN ] ; RELOC-NEXT: Function: 7 ; RELOC-NEXT: - Index: 6 +; RELOC-NEXT: Kind: DATA +; RELOC-NEXT: Name: __dso_handle +; RELOC-NEXT: Flags: [ BINDING_WEAK, VISIBILITY_HIDDEN, UNDEFINED ] +; RELOC-NEXT: - Index: 7 ; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: externDtor +; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN, UNDEFINED ] +; RELOC-NEXT: Function: 0 +; RELOC-NEXT: - Index: 8 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: externCtor +; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN, UNDEFINED ] +; RELOC-NEXT: Function: 1 +; RELOC-NEXT: - Index: 9 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: myctor +; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN ] +; RELOC-NEXT: Function: 14 +; RELOC-NEXT: - Index: 10 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: mydtor +; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN ] +; RELOC-NEXT: Function: 15 +; RELOC-NEXT: - Index: 11 +; RELOC-NEXT: Kind: GLOBAL +; RELOC-NEXT: Name: __stack_pointer +; RELOC-NEXT: Flags: [ UNDEFINED ] +; RELOC-NEXT: Global: 0 +; RELOC-NEXT: - Index: 12 +; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lcall_dtors.101 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 8 -; RELOC-NEXT: - Index: 7 +; RELOC-NEXT: - Index: 13 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lregister_call_dtors.101 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 9 -; RELOC-NEXT: - Index: 8 -; RELOC-NEXT: Kind: DATA -; RELOC-NEXT: Name: __dso_handle -; RELOC-NEXT: Flags: [ BINDING_WEAK, VISIBILITY_HIDDEN, UNDEFINED ] -; RELOC-NEXT: - Index: 9 +; RELOC-NEXT: - Index: 14 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lcall_dtors.1001 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 10 -; RELOC-NEXT: - Index: 10 +; RELOC-NEXT: - Index: 15 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lregister_call_dtors.1001 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 11 -; RELOC-NEXT: - Index: 11 +; RELOC-NEXT: - Index: 16 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lcall_dtors.4000 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 12 -; RELOC-NEXT: - Index: 12 +; RELOC-NEXT: - Index: 17 ; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: externDtor -; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN, UNDEFINED ] -; RELOC-NEXT: Function: 0 -; RELOC-NEXT: - Index: 13 -; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lregister_call_dtors.4000 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 13 -; RELOC-NEXT: - Index: 14 -; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: externCtor -; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN, UNDEFINED ] -; RELOC-NEXT: Function: 1 -; RELOC-NEXT: - Index: 15 -; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: myctor -; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN ] -; RELOC-NEXT: Function: 14 -; RELOC-NEXT: - Index: 16 -; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: mydtor -; RELOC-NEXT: Flags: [ VISIBILITY_HIDDEN ] -; RELOC-NEXT: Function: 15 -; RELOC-NEXT: - Index: 17 -; RELOC-NEXT: Kind: GLOBAL -; RELOC-NEXT: Name: __stack_pointer -; RELOC-NEXT: Flags: [ UNDEFINED ] -; RELOC-NEXT: Global: 0 ; RELOC-NEXT: - Index: 18 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: .Lcall_dtors.101 @@ -251,36 +251,36 @@ entry: ; RELOC-NEXT: Name: .Lregister_call_dtors.2002 ; RELOC-NEXT: Flags: [ BINDING_LOCAL ] ; RELOC-NEXT: Function: 21 -; RELOC-NEXT: InitFunctions: +; RELOC-NEXT: InitFunctions: ; RELOC-NEXT: - Priority: 101 ; RELOC-NEXT: Symbol: 0 ; RELOC-NEXT: - Priority: 101 ; RELOC-NEXT: Symbol: 1 ; RELOC-NEXT: - Priority: 101 -; RELOC-NEXT: Symbol: 7 +; RELOC-NEXT: Symbol: 13 ; RELOC-NEXT: - Priority: 101 -; RELOC-NEXT: Symbol: 15 +; RELOC-NEXT: Symbol: 9 ; RELOC-NEXT: - Priority: 101 ; RELOC-NEXT: Symbol: 19 ; RELOC-NEXT: - Priority: 202 -; RELOC-NEXT: Symbol: 15 +; RELOC-NEXT: Symbol: 9 ; RELOC-NEXT: - Priority: 202 ; RELOC-NEXT: Symbol: 21 ; RELOC-NEXT: - Priority: 1001 ; RELOC-NEXT: Symbol: 0 ; RELOC-NEXT: - Priority: 1001 -; RELOC-NEXT: Symbol: 10 -; RELOC-NEXT: - Priority: 2002 ; RELOC-NEXT: Symbol: 15 ; RELOC-NEXT: - Priority: 2002 +; RELOC-NEXT: Symbol: 9 +; RELOC-NEXT: - Priority: 2002 ; RELOC-NEXT: Symbol: 23 ; RELOC-NEXT: - Priority: 4000 -; RELOC-NEXT: Symbol: 14 +; RELOC-NEXT: Symbol: 8 ; RELOC-NEXT: - Priority: 4000 -; RELOC-NEXT: Symbol: 13 +; RELOC-NEXT: Symbol: 17 ; RELOC-NEXT: - Type: CUSTOM ; RELOC-NEXT: Name: name -; RELOC-NEXT: FunctionNames: +; RELOC-NEXT: FunctionNames: ; RELOC-NEXT: - Index: 0 ; RELOC-NEXT: Name: externDtor ; RELOC-NEXT: - Index: 1 Modified: vendor/lld/dist-release_80/test/wasm/locals-duplicate.test ============================================================================== --- vendor/lld/dist-release_80/test/wasm/locals-duplicate.test Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/wasm/locals-duplicate.test Fri Feb 15 20:49:22 2019 (r344173) @@ -270,40 +270,40 @@ ; RELOC-NEXT: - Type: CODE ; RELOC-NEXT: Relocations: ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_SLEB -; RELOC-NEXT: Index: 4 +; RELOC-NEXT: Index: 18 ; RELOC-NEXT: Offset: 0x00000013 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_SLEB -; RELOC-NEXT: Index: 6 +; RELOC-NEXT: Index: 3 ; RELOC-NEXT: Offset: 0x0000001C ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_SLEB -; RELOC-NEXT: Index: 8 +; RELOC-NEXT: Index: 19 ; RELOC-NEXT: Offset: 0x00000025 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 0 +; RELOC-NEXT: Index: 16 ; RELOC-NEXT: Offset: 0x0000002E ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 1 +; RELOC-NEXT: Index: 0 ; RELOC-NEXT: Offset: 0x00000037 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 2 +; RELOC-NEXT: Index: 17 ; RELOC-NEXT: Offset: 0x00000040 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_SLEB -; RELOC-NEXT: Index: 16 +; RELOC-NEXT: Index: 10 ; RELOC-NEXT: Offset: 0x00000058 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_SLEB -; RELOC-NEXT: Index: 18 +; RELOC-NEXT: Index: 22 ; RELOC-NEXT: Offset: 0x00000061 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_MEMORY_ADDR_SLEB -; RELOC-NEXT: Index: 20 +; RELOC-NEXT: Index: 23 ; RELOC-NEXT: Offset: 0x0000006A ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 12 +; RELOC-NEXT: Index: 8 ; RELOC-NEXT: Offset: 0x00000073 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 13 +; RELOC-NEXT: Index: 20 ; RELOC-NEXT: Offset: 0x0000007C ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 14 +; RELOC-NEXT: Index: 21 ; RELOC-NEXT: Offset: 0x00000085 ; RELOC-NEXT: Functions: ; RELOC-NEXT: - Index: 0 @@ -386,133 +386,133 @@ ; RELOC-NEXT: SymbolTable: ; RELOC-NEXT: - Index: 0 ; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: colliding_func1 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Function: 0 -; RELOC-NEXT: - Index: 1 -; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: colliding_func2 ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 1 -; RELOC-NEXT: - Index: 2 +; RELOC-NEXT: - Index: 1 ; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: colliding_func3 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Function: 2 -; RELOC-NEXT: - Index: 3 -; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_global1A ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 3 -; RELOC-NEXT: - Index: 4 -; RELOC-NEXT: Kind: DATA -; RELOC-NEXT: Name: colliding_global1 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Segment: 0 -; RELOC-NEXT: Size: 4 -; RELOC-NEXT: - Index: 5 +; RELOC-NEXT: - Index: 2 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_global2A ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 4 -; RELOC-NEXT: - Index: 6 +; RELOC-NEXT: - Index: 3 ; RELOC-NEXT: Kind: DATA ; RELOC-NEXT: Name: colliding_global2 ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Segment: 1 ; RELOC-NEXT: Size: 4 -; RELOC-NEXT: - Index: 7 +; RELOC-NEXT: - Index: 4 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_global3A ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 5 -; RELOC-NEXT: - Index: 8 -; RELOC-NEXT: Kind: DATA -; RELOC-NEXT: Name: colliding_global3 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Segment: 2 -; RELOC-NEXT: Size: 4 -; RELOC-NEXT: - Index: 9 +; RELOC-NEXT: - Index: 5 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_func1A ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 6 -; RELOC-NEXT: - Index: 10 +; RELOC-NEXT: - Index: 6 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_func2A ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 7 -; RELOC-NEXT: - Index: 11 +; RELOC-NEXT: - Index: 7 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_func3A ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 8 -; RELOC-NEXT: - Index: 12 +; RELOC-NEXT: - Index: 8 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: colliding_func1 ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 9 -; RELOC-NEXT: - Index: 13 +; RELOC-NEXT: - Index: 9 ; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: colliding_func2 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Function: 10 -; RELOC-NEXT: - Index: 14 -; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: colliding_func3 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Function: 11 -; RELOC-NEXT: - Index: 15 -; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_global1B ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 12 -; RELOC-NEXT: - Index: 16 +; RELOC-NEXT: - Index: 10 ; RELOC-NEXT: Kind: DATA ; RELOC-NEXT: Name: colliding_global1 ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Segment: 0 ; RELOC-NEXT: Offset: 4 ; RELOC-NEXT: Size: 4 -; RELOC-NEXT: - Index: 17 +; RELOC-NEXT: - Index: 11 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_global2B ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 13 -; RELOC-NEXT: - Index: 18 -; RELOC-NEXT: Kind: DATA -; RELOC-NEXT: Name: colliding_global2 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Segment: 1 -; RELOC-NEXT: Offset: 4 -; RELOC-NEXT: Size: 4 -; RELOC-NEXT: - Index: 19 +; RELOC-NEXT: - Index: 12 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_global3B ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 14 -; RELOC-NEXT: - Index: 20 -; RELOC-NEXT: Kind: DATA -; RELOC-NEXT: Name: colliding_global3 -; RELOC-NEXT: Flags: [ BINDING_LOCAL ] -; RELOC-NEXT: Segment: 2 -; RELOC-NEXT: Offset: 4 -; RELOC-NEXT: Size: 4 -; RELOC-NEXT: - Index: 21 +; RELOC-NEXT: - Index: 13 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_func1B ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 15 -; RELOC-NEXT: - Index: 22 +; RELOC-NEXT: - Index: 14 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_func2B ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 16 -; RELOC-NEXT: - Index: 23 +; RELOC-NEXT: - Index: 15 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: get_func3B ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 17 +; RELOC-NEXT: - Index: 16 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: colliding_func1 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Function: 0 +; RELOC-NEXT: - Index: 17 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: colliding_func3 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Function: 2 +; RELOC-NEXT: - Index: 18 +; RELOC-NEXT: Kind: DATA +; RELOC-NEXT: Name: colliding_global1 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Segment: 0 +; RELOC-NEXT: Size: 4 +; RELOC-NEXT: - Index: 19 +; RELOC-NEXT: Kind: DATA +; RELOC-NEXT: Name: colliding_global3 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Segment: 2 +; RELOC-NEXT: Size: 4 +; RELOC-NEXT: - Index: 20 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: colliding_func2 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Function: 10 +; RELOC-NEXT: - Index: 21 +; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: colliding_func3 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Function: 11 +; RELOC-NEXT: - Index: 22 +; RELOC-NEXT: Kind: DATA +; RELOC-NEXT: Name: colliding_global2 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Segment: 1 +; RELOC-NEXT: Offset: 4 +; RELOC-NEXT: Size: 4 +; RELOC-NEXT: - Index: 23 +; RELOC-NEXT: Kind: DATA +; RELOC-NEXT: Name: colliding_global3 +; RELOC-NEXT: Flags: [ BINDING_LOCAL ] +; RELOC-NEXT: Segment: 2 +; RELOC-NEXT: Offset: 4 +; RELOC-NEXT: Size: 4 ; RELOC-NEXT: SegmentInfo: ; RELOC-NEXT: - Index: 0 ; RELOC-NEXT: Name: .bss.colliding_global1 Added: vendor/lld/dist-release_80/test/wasm/lto/relocatable-undefined.ll ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/lld/dist-release_80/test/wasm/lto/relocatable-undefined.ll Fri Feb 15 20:49:22 2019 (r344173) @@ -0,0 +1,36 @@ +; RUN: llvm-as %s -o %t.o +; RUN: wasm-ld -r -o %t.wasm %t.o +; RUN: obj2yaml %t.wasm | FileCheck %s + +target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128" +target triple = "wasm32-unknown-unknown" + +@missing_data = external global i32 +declare i32 @missing_func() local_unnamed_addr + +define i32 @foo() { +entry: + %0 = call i32 @missing_func() + %1 = load i32, i32* @missing_data, align 4 + ret i32 %1 +} + + +; CHECK: - Type: CUSTOM +; CHECK-NEXT: Name: linking +; CHECK-NEXT: Version: 2 +; CHECK-NEXT: SymbolTable: +; CHECK-NEXT: - Index: 0 +; CHECK-NEXT: Kind: FUNCTION +; CHECK-NEXT: Name: missing_func +; CHECK-NEXT: Flags: [ UNDEFINED ] +; CHECK-NEXT: Function: 0 +; CHECK-NEXT: - Index: 1 +; CHECK-NEXT: Kind: FUNCTION +; CHECK-NEXT: Name: foo +; CHECK-NEXT: Flags: [ ] +; CHECK-NEXT: Function: 1 +; CHECK-NEXT: - Index: 2 +; CHECK-NEXT: Kind: DATA +; CHECK-NEXT: Name: missing_data +; CHECK-NEXT: Flags: [ UNDEFINED ] Modified: vendor/lld/dist-release_80/test/wasm/weak-alias.ll ============================================================================== --- vendor/lld/dist-release_80/test/wasm/weak-alias.ll Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/test/wasm/weak-alias.ll Fri Feb 15 20:49:22 2019 (r344173) @@ -187,13 +187,13 @@ entry: ; RELOC-NEXT: - Type: CODE ; RELOC-NEXT: Relocations: ; RELOC-NEXT: - Type: R_WEBASSEMBLY_FUNCTION_INDEX_LEB -; RELOC-NEXT: Index: 4 +; RELOC-NEXT: Index: 1 ; RELOC-NEXT: Offset: 0x00000004 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_FUNCTION_INDEX_LEB -; RELOC-NEXT: Index: 1 +; RELOC-NEXT: Index: 2 ; RELOC-NEXT: Offset: 0x00000013 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_FUNCTION_INDEX_LEB -; RELOC-NEXT: Index: 4 +; RELOC-NEXT: Index: 1 ; RELOC-NEXT: Offset: 0x0000001C ; RELOC-NEXT: - Type: R_WEBASSEMBLY_GLOBAL_INDEX_LEB ; RELOC-NEXT: Index: 6 @@ -202,10 +202,10 @@ entry: ; RELOC-NEXT: Index: 6 ; RELOC-NEXT: Offset: 0x00000032 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 4 +; RELOC-NEXT: Index: 1 ; RELOC-NEXT: Offset: 0x0000003A ; RELOC-NEXT: - Type: R_WEBASSEMBLY_FUNCTION_INDEX_LEB -; RELOC-NEXT: Index: 4 +; RELOC-NEXT: Index: 1 ; RELOC-NEXT: Offset: 0x00000043 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_GLOBAL_INDEX_LEB ; RELOC-NEXT: Index: 6 @@ -217,10 +217,10 @@ entry: ; RELOC-NEXT: Index: 6 ; RELOC-NEXT: Offset: 0x00000068 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_TABLE_INDEX_SLEB -; RELOC-NEXT: Index: 1 +; RELOC-NEXT: Index: 2 ; RELOC-NEXT: Offset: 0x00000070 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_FUNCTION_INDEX_LEB -; RELOC-NEXT: Index: 1 +; RELOC-NEXT: Index: 2 ; RELOC-NEXT: Offset: 0x00000079 ; RELOC-NEXT: - Type: R_WEBASSEMBLY_GLOBAL_INDEX_LEB ; RELOC-NEXT: Index: 6 @@ -259,24 +259,24 @@ entry: ; RELOC-NEXT: Function: 0 ; RELOC-NEXT: - Index: 1 ; RELOC-NEXT: Kind: FUNCTION +; RELOC-NEXT: Name: alias_fn +; RELOC-NEXT: Flags: [ BINDING_WEAK ] +; RELOC-NEXT: Function: 1 +; RELOC-NEXT: - Index: 2 +; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: direct_fn ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 1 -; RELOC-NEXT: - Index: 2 +; RELOC-NEXT: - Index: 3 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: call_direct ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 2 -; RELOC-NEXT: - Index: 3 +; RELOC-NEXT: - Index: 4 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: call_alias ; RELOC-NEXT: Flags: [ ] ; RELOC-NEXT: Function: 3 -; RELOC-NEXT: - Index: 4 -; RELOC-NEXT: Kind: FUNCTION -; RELOC-NEXT: Name: alias_fn -; RELOC-NEXT: Flags: [ BINDING_WEAK ] -; RELOC-NEXT: Function: 1 ; RELOC-NEXT: - Index: 5 ; RELOC-NEXT: Kind: FUNCTION ; RELOC-NEXT: Name: call_alias_ptr Modified: vendor/lld/dist-release_80/wasm/Driver.cpp ============================================================================== --- vendor/lld/dist-release_80/wasm/Driver.cpp Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/wasm/Driver.cpp Fri Feb 15 20:49:22 2019 (r344173) @@ -434,7 +434,9 @@ static Symbol *handleUndefined(StringRef Name) { static UndefinedGlobal * createUndefinedGlobal(StringRef Name, llvm::wasm::WasmGlobalType *Type) { auto *Sym = - cast(Symtab->addUndefinedGlobal(Name, 0, nullptr, Type)); + cast(Symtab->addUndefinedGlobal(Name, Name, + DefaultModule, 0, + nullptr, Type)); Config->AllowUndefinedSymbols.insert(Sym->getName()); Sym->IsUsedInRegularObj = true; return Sym; Modified: vendor/lld/dist-release_80/wasm/InputChunks.cpp ============================================================================== --- vendor/lld/dist-release_80/wasm/InputChunks.cpp Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/wasm/InputChunks.cpp Fri Feb 15 20:49:22 2019 (r344173) @@ -23,7 +23,7 @@ using namespace llvm::support::endian; using namespace lld; using namespace lld::wasm; -static StringRef ReloctTypeToString(uint8_t RelocType) { +static StringRef reloctTypeToString(uint8_t RelocType) { switch (RelocType) { #define WASM_RELOC(NAME, REL) \ case REL: \ @@ -77,7 +77,7 @@ void InputChunk::verifyRelocTargets() const { warn("expected LEB at relocation site be 5-byte padded"); uint32_t ExpectedValue = File->calcExpectedValue(Rel); if (ExpectedValue != ExistingValue) - warn("unexpected existing value for " + ReloctTypeToString(Rel.Type) + + warn("unexpected existing value for " + reloctTypeToString(Rel.Type) + ": existing=" + Twine(ExistingValue) + " expected=" + Twine(ExpectedValue)); } @@ -103,7 +103,7 @@ void InputChunk::writeTo(uint8_t *Buf) const { for (const WasmRelocation &Rel : Relocations) { uint8_t *Loc = Buf + Rel.Offset + Off; uint32_t Value = File->calcNewValue(Rel); - LLVM_DEBUG(dbgs() << "apply reloc: type=" << ReloctTypeToString(Rel.Type) + LLVM_DEBUG(dbgs() << "apply reloc: type=" << reloctTypeToString(Rel.Type) << " addend=" << Rel.Addend << " index=" << Rel.Index << " value=" << Value << " offset=" << Rel.Offset << "\n"); Modified: vendor/lld/dist-release_80/wasm/InputFiles.cpp ============================================================================== --- vendor/lld/dist-release_80/wasm/InputFiles.cpp Fri Feb 15 20:49:19 2019 (r344172) +++ vendor/lld/dist-release_80/wasm/InputFiles.cpp Fri Feb 15 20:49:22 2019 (r344173) @@ -377,11 +377,15 @@ Symbol *ObjFile::createUndefined(const WasmSymbol &Sym switch (Sym.Info.Kind) { case WASM_SYMBOL_TYPE_FUNCTION: - return Symtab->addUndefinedFunction(Name, Flags, this, Sym.Signature); + return Symtab->addUndefinedFunction(Name, Sym.Info.ImportName, + Sym.Info.ImportModule, Flags, this, + Sym.Signature); case WASM_SYMBOL_TYPE_DATA: return Symtab->addUndefinedData(Name, Flags, this); case WASM_SYMBOL_TYPE_GLOBAL: - return Symtab->addUndefinedGlobal(Name, Flags, this, Sym.GlobalType); + return Symtab->addUndefinedGlobal(Name, Sym.Info.ImportName, + Sym.Info.ImportModule, Flags, this, + Sym.GlobalType); case WASM_SYMBOL_TYPE_SECTION: llvm_unreachable("section symbols cannot be undefined"); } @@ -445,7 +449,8 @@ static Symbol *createBitcodeSymbol(const lto::InputFil if (ObjSym.isUndefined()) { if (ObjSym.isExecutable()) - return Symtab->addUndefinedFunction(Name, Flags, &F, nullptr); + return Symtab->addUndefinedFunction(Name, Name, DefaultModule, Flags, &F, + nullptr); return Symtab->addUndefinedData(Name, Flags, &F); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D435B14E8C87; Fri, 15 Feb 2019 20:49:34 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7451F846D6; Fri, 15 Feb 2019 20:49:34 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C6EE223EBE; Fri, 15 Feb 2019 20:49:29 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKnTGE050089; Fri, 15 Feb 2019 20:49:29 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKnTuS050088; Fri, 15 Feb 2019 20:49:29 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKnTuS050088@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344174 - vendor/lld/lld-release_80-r354130 X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: vendor/lld/lld-release_80-r354130 X-SVN-Commit-Revision: 344174 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7451F846D6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:35 -0000 Author: dim Date: Fri Feb 15 20:49:29 2019 New Revision: 344174 URL: https://svnweb.freebsd.org/changeset/base/344174 Log: Tag lld release_80 branch r354130. Added: vendor/lld/lld-release_80-r354130/ - copied from r344173, vendor/lld/dist-release_80/ From owner-svn-src-all@freebsd.org Fri Feb 15 20:49:38 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B37A14E8CAA; Fri, 15 Feb 2019 20:49:38 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DE83C8473F; Fri, 15 Feb 2019 20:49:37 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7593723EBF; Fri, 15 Feb 2019 20:49:33 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKnXp2050135; Fri, 15 Feb 2019 20:49:33 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKnXGr050134; Fri, 15 Feb 2019 20:49:33 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902152049.x1FKnXGr050134@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 15 Feb 2019 20:49:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r344175 - vendor/lldb/lldb-release_80-r354130 X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: vendor/lldb/lldb-release_80-r354130 X-SVN-Commit-Revision: 344175 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: DE83C8473F X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.951,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:49:38 -0000 Author: dim Date: Fri Feb 15 20:49:32 2019 New Revision: 344175 URL: https://svnweb.freebsd.org/changeset/base/344175 Log: Tag lldb release_80 branch r354130. Added: vendor/lldb/lldb-release_80-r354130/ - copied from r344174, vendor/lldb/dist-release_80/ From owner-svn-src-all@freebsd.org Fri Feb 15 20:52:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 02B5914E90DA; Fri, 15 Feb 2019 20:52:34 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9BE7885230; Fri, 15 Feb 2019 20:52:33 +0000 (UTC) (envelope-from wulf@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 90EB724060; Fri, 15 Feb 2019 20:52:33 +0000 (UTC) (envelope-from wulf@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FKqXsS055154; Fri, 15 Feb 2019 20:52:33 GMT (envelope-from wulf@FreeBSD.org) Received: (from wulf@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FKqXXn055153; Fri, 15 Feb 2019 20:52:33 GMT (envelope-from wulf@FreeBSD.org) Message-Id: <201902152052.x1FKqXXn055153@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wulf set sender to wulf@FreeBSD.org using -f From: Vladimir Kondratyev Date: Fri, 15 Feb 2019 20:52:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344176 - stable/12/sys/dev/sound/pci/hda X-SVN-Group: stable-12 X-SVN-Commit-Author: wulf X-SVN-Commit-Paths: stable/12/sys/dev/sound/pci/hda X-SVN-Commit-Revision: 344176 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9BE7885230 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.95)[-0.949,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 20:52:34 -0000 Author: wulf Date: Fri Feb 15 20:52:32 2019 New Revision: 344176 URL: https://svnweb.freebsd.org/changeset/base/344176 Log: MFC r343327: Add quirk to enable mic and headphones redirection on HP Spectre laptops. Tested on HP Spectre 13 AF006UR. Modified: stable/12/sys/dev/sound/pci/hda/hdaa_patches.c stable/12/sys/dev/sound/pci/hda/hdac.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/sound/pci/hda/hdaa_patches.c ============================================================================== --- stable/12/sys/dev/sound/pci/hda/hdaa_patches.c Fri Feb 15 20:49:32 2019 (r344175) +++ stable/12/sys/dev/sound/pci/hda/hdaa_patches.c Fri Feb 15 20:52:32 2019 (r344176) @@ -410,6 +410,18 @@ hdac_pin_patch(struct hdaa_widget *w) patch = "as=1 seq=15"; break; } + } else if (id == HDA_CODEC_ALC295 && subid == HP_AF006UR_SUBVENDOR) { + switch (nid) { + case 18: + patch = "as=2"; + break; + case 25: + patch = "as=2 seq=15"; + break; + case 33: + patch = "as=1 seq=15"; + break; + } } else if (id == HDA_CODEC_ALC298 && subid == DELL_XPS9560_SUBVENDOR) { switch (nid) { case 24: Modified: stable/12/sys/dev/sound/pci/hda/hdac.h ============================================================================== --- stable/12/sys/dev/sound/pci/hda/hdac.h Fri Feb 15 20:49:32 2019 (r344175) +++ stable/12/sys/dev/sound/pci/hda/hdac.h Fri Feb 15 20:52:32 2019 (r344176) @@ -188,6 +188,7 @@ #define HP_DV5000_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x30a5) #define HP_DC7700S_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x2801) #define HP_DC7700_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x2802) +#define HP_AF006UR_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x83a2) #define HP_ALL_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0xffff) /* What is wrong with XN 2563 anyway? (Got the picture ?) */ #define HP_NX6325_SUBVENDORX 0x103c30b0 From owner-svn-src-all@freebsd.org Fri Feb 15 22:22:42 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A10E614EB9C8; Fri, 15 Feb 2019 22:22:41 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3C4DB885EE; Fri, 15 Feb 2019 22:22:41 +0000 (UTC) (envelope-from emaste@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1865E24FE1; Fri, 15 Feb 2019 22:22:41 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMMeeg002306; Fri, 15 Feb 2019 22:22:40 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMMc9B002292; Fri, 15 Feb 2019 22:22:38 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201902152222.x1FMMc9B002292@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 15 Feb 2019 22:22:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344179 - in head: kerberos5/tools/asn1_compile kerberos5/tools/slc lib/clang libexec/rtld-elf share/mk stand/i386 tools/build/options usr.bin/clang usr.bin/svn X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: in head: kerberos5/tools/asn1_compile kerberos5/tools/slc lib/clang libexec/rtld-elf share/mk stand/i386 tools/build/options usr.bin/clang usr.bin/svn X-SVN-Commit-Revision: 344179 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3C4DB885EE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.96)[-0.957,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:22:42 -0000 Author: emaste Date: Fri Feb 15 22:22:38 2019 New Revision: 344179 URL: https://svnweb.freebsd.org/changeset/base/344179 Log: Add WITH_PIE knob to build Position Independent Executables Building binaries as PIE allows the executable itself to be loaded at a random address when ASLR is enabled (not just its shared libraries). With this change PIE objects have a .pieo extension and INTERNALLIB libraries libXXX_pie.a. MK_PIE is disabled for some kerberos5 tools, Clang, and Subversion, as they explicitly reference .a libraries in their Makefiles. These can be addressed on an individual basis later. MK_PIE is also disabled for rtld-elf because it is already position-independent using bespoke Makefile rules. Currently only dynamically linked binaries will be built as PIE. Discussed with: dim Reviewed by: kib MFC after: 1 month Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18423 Added: head/tools/build/options/WITHOUT_PIE (contents, props changed) head/tools/build/options/WITH_PIE (contents, props changed) Modified: head/kerberos5/tools/asn1_compile/Makefile head/kerberos5/tools/slc/Makefile head/lib/clang/Makefile.inc head/libexec/rtld-elf/Makefile head/share/mk/bsd.lib.mk head/share/mk/bsd.opts.mk head/share/mk/bsd.prog.mk head/share/mk/src.libnames.mk head/stand/i386/Makefile.inc head/usr.bin/clang/Makefile.inc head/usr.bin/svn/Makefile.inc Modified: head/kerberos5/tools/asn1_compile/Makefile ============================================================================== --- head/kerberos5/tools/asn1_compile/Makefile Fri Feb 15 21:50:45 2019 (r344178) +++ head/kerberos5/tools/asn1_compile/Makefile Fri Feb 15 22:22:38 2019 (r344179) @@ -6,6 +6,7 @@ LIBROKEN_A= ${.OBJDIR:H:H}/lib/libroken/libroken.a LIBADD= vers LDADD= ${LIBROKEN_A} DPADD= ${LIBROKEN_A} +MK_PIE:= no SRCS= \ asn1parse.y \ Modified: head/kerberos5/tools/slc/Makefile ============================================================================== --- head/kerberos5/tools/slc/Makefile Fri Feb 15 21:50:45 2019 (r344178) +++ head/kerberos5/tools/slc/Makefile Fri Feb 15 22:22:38 2019 (r344179) @@ -6,6 +6,7 @@ LIBADD= vers LDADD= ${LIBROKEN_A} DPADD= ${LIBROKEN_A} MAN= +MK_PIE:= no SRCS= roken.h \ slc-gram.y \ Modified: head/lib/clang/Makefile.inc ============================================================================== --- head/lib/clang/Makefile.inc Fri Feb 15 21:50:45 2019 (r344178) +++ head/lib/clang/Makefile.inc Fri Feb 15 22:22:38 2019 (r344179) @@ -2,6 +2,8 @@ .include +MK_PIE:= no # Explicit libXXX.a references + .if ${COMPILER_TYPE} == "clang" DEBUG_FILES_CFLAGS= -gline-tables-only .else Modified: head/libexec/rtld-elf/Makefile ============================================================================== --- head/libexec/rtld-elf/Makefile Fri Feb 15 21:50:45 2019 (r344178) +++ head/libexec/rtld-elf/Makefile Fri Feb 15 22:22:38 2019 (r344179) @@ -7,6 +7,7 @@ .include PACKAGE= clibs MK_BIND_NOW= no +MK_PIE= no # Always position independent using local rules MK_SSP= no CONFS= libmap.conf Modified: head/share/mk/bsd.lib.mk ============================================================================== --- head/share/mk/bsd.lib.mk Fri Feb 15 21:50:45 2019 (r344178) +++ head/share/mk/bsd.lib.mk Fri Feb 15 22:22:38 2019 (r344179) @@ -91,13 +91,16 @@ CTFFLAGS+= -g # prefer .s to a .c, add .po, remove stuff not used in the BSD libraries # .pico used for PIC object files # .nossppico used for NOSSP PIC object files -.SUFFIXES: .out .o .bc .ll .po .pico .nossppico .S .asm .s .c .cc .cpp .cxx .C .f .y .l .ln +# .pieo used for PIE object files +.SUFFIXES: .out .o .bc .ll .po .pico .nossppico .pieo .S .asm .s .c .cc .cpp .cxx .C .f .y .l .ln .if !defined(PICFLAG) .if ${MACHINE_CPUARCH} == "sparc64" PICFLAG=-fPIC +PIEFLAG=-fPIE .else PICFLAG=-fpic +PIEFLAG=-fpie .endif .endif @@ -115,6 +118,10 @@ PO_FLAG=-pg ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS:C/^-fstack-protector.*$//} ${CFLAGS:C/^-fstack-protector.*$//} -c ${.IMPSRC} -o ${.TARGET} ${CTFCONVERT_CMD} +.c.pieo: + ${CC} ${PIEFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} + ${CTFCONVERT_CMD} + .cc.po .C.po .cpp.po .cxx.po: ${CXX} ${PO_FLAG} ${STATIC_CXXFLAGS} ${PO_CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} @@ -124,6 +131,9 @@ PO_FLAG=-pg .cc.nossppico .C.nossppico .cpp.nossppico .cxx.nossppico: ${CXX} ${PICFLAG} -DPIC ${SHARED_CXXFLAGS:C/^-fstack-protector.*$//} ${CXXFLAGS:C/^-fstack-protector.*$//} -c ${.IMPSRC} -o ${.TARGET} +.cc.pieo .C.pieo .cpp.pieo .cxx.pieo: + ${CXX} ${PIEFLAG} ${SHARED_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} + .f.po: ${FC} -pg ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC} ${CTFCONVERT_CMD} @@ -136,7 +146,7 @@ PO_FLAG=-pg ${FC} ${PICFLAG} -DPIC ${FFLAGS:C/^-fstack-protector.*$//} -o ${.TARGET} -c ${.IMPSRC} ${CTFCONVERT_CMD} -.s.po .s.pico .s.nossppico: +.s.po .s.pico .s.nossppico .s.pieo: ${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC} ${CTFCONVERT_CMD} @@ -155,6 +165,11 @@ PO_FLAG=-pg ${CFLAGS:C/^-fstack-protector.*$//} ${ACFLAGS} -c ${.IMPSRC} -o ${.TARGET} ${CTFCONVERT_CMD} +.asm.pieo: + ${CC:N${CCACHE_BIN}} -x assembler-with-cpp ${PIEFLAG} -DPIC \ + ${CFLAGS} ${ACFLAGS} -c ${.IMPSRC} -o ${.TARGET} + ${CTFCONVERT_CMD} + .S.po: ${CC:N${CCACHE_BIN}} -DPROF ${PO_CFLAGS} ${ACFLAGS} -c ${.IMPSRC} \ -o ${.TARGET} @@ -170,6 +185,11 @@ PO_FLAG=-pg -c ${.IMPSRC} -o ${.TARGET} ${CTFCONVERT_CMD} +.S.pieo: + ${CC:N${CCACHE_BIN}} ${PIEFLAG} -DPIC ${CFLAGS} ${ACFLAGS} \ + -c ${.IMPSRC} -o ${.TARGET} + ${CTFCONVERT_CMD} + _LIBDIR:=${LIBDIR} _SHLIBDIR:=${SHLIBDIR} @@ -333,6 +353,20 @@ lib${LIB_PRIVATE}${LIB}_nossp_pic.a: ${NOSSPSOBJS} .endif .endif # !defined(INTERNALLIB) + +.if defined(INTERNALLIB) && ${MK_PIE} != "no" +PIEOBJS+= ${OBJS:.o=.pieo} +DEPENDOBJS+= ${PIEOBJS} +CLEANFILES+= ${PIEOBJS} + +_LIBS+= lib${LIB_PRIVATE}${LIB}_pie.a + +lib${LIB_PRIVATE}${LIB}_pie.a: ${PIEOBJS} + @${ECHO} building pie ${LIB} library + @rm -f ${.TARGET} + ${AR} ${ARFLAGS} ${.TARGET} ${PIEOBJS} ${ARADD} + ${RANLIB} ${RANLIBFLAGS} ${.TARGET} +.endif .if defined(_SKIP_BUILD) all: Modified: head/share/mk/bsd.opts.mk ============================================================================== --- head/share/mk/bsd.opts.mk Fri Feb 15 21:50:45 2019 (r344178) +++ head/share/mk/bsd.opts.mk Fri Feb 15 22:22:38 2019 (r344179) @@ -73,6 +73,7 @@ __DEFAULT_NO_OPTIONS = \ CCACHE_BUILD \ CTF \ INSTALL_AS_USER \ + PIE \ RETPOLINE \ STALE_STAGED Modified: head/share/mk/bsd.prog.mk ============================================================================== --- head/share/mk/bsd.prog.mk Fri Feb 15 21:50:45 2019 (r344178) +++ head/share/mk/bsd.prog.mk Fri Feb 15 22:22:38 2019 (r344179) @@ -38,6 +38,12 @@ MK_DEBUG_FILES= no .if ${MK_BIND_NOW} != "no" LDFLAGS+= -Wl,-znow .endif +.if ${MK_PIE} != "no" && \ + !defined(NO_SHARED) || ${NO_SHARED} == "no" || ${NO_SHARED} == "NO" +CFLAGS+= -fPIE +CXXFLAGS+= -fPIE +LDFLAGS+= -pie +.endif .if ${MK_RETPOLINE} != "no" CFLAGS+= -mretpoline CXXFLAGS+= -mretpoline Modified: head/share/mk/src.libnames.mk ============================================================================== --- head/share/mk/src.libnames.mk Fri Feb 15 21:50:45 2019 (r344178) +++ head/share/mk/src.libnames.mk Fri Feb 15 22:22:38 2019 (r344179) @@ -368,6 +368,10 @@ LDADD_atf_cxx= -lprivateatf-c++ LIB${_l:tu}?= ${LIBDESTDIR}${LIBDIR_BASE}/libprivate${_l}.a .endfor +.if ${MK_PIE} != "no" +PIE_SUFFIX= _pie +.endif + .for _l in ${_LIBRARIES} .if ${_INTERNALLIBS:M${_l}} || !defined(SYSROOT) LDADD_${_l}_L+= -L${LIB${_l:tu}DIR} @@ -375,6 +379,8 @@ LDADD_${_l}_L+= -L${LIB${_l:tu}DIR} DPADD_${_l}?= ${LIB${_l:tu}} .if ${_PRIVATELIBS:M${_l}} LDADD_${_l}?= -lprivate${_l} +.elif ${_INTERNALLIBS:M${_l}} +LDADD_${_l}?= ${LDADD_${_l}_L} -l${_l:S/${PIE_SUFFIX}//}${PIE_SUFFIX} .else LDADD_${_l}?= ${LDADD_${_l}_L} -l${_l} .endif @@ -418,69 +424,69 @@ LDADD+= ${LDADD_${_l}} # INTERNALLIB definitions. LIBELFTCDIR= ${OBJTOP}/lib/libelftc -LIBELFTC?= ${LIBELFTCDIR}/libelftc.a +LIBELFTC?= ${LIBELFTCDIR}/libelftc${PIE_SUFFIX}.a LIBPEDIR= ${OBJTOP}/lib/libpe -LIBPE?= ${LIBPEDIR}/libpe.a +LIBPE?= ${LIBPEDIR}/libpe${PIE_SUFFIX}.a LIBOPENBSDDIR= ${OBJTOP}/lib/libopenbsd -LIBOPENBSD?= ${LIBOPENBSDDIR}/libopenbsd.a +LIBOPENBSD?= ${LIBOPENBSDDIR}/libopenbsd${PIE_SUFFIX}.a LIBSMDIR= ${OBJTOP}/lib/libsm -LIBSM?= ${LIBSMDIR}/libsm.a +LIBSM?= ${LIBSMDIR}/libsm${PIE_SUFFIX}.a LIBSMDBDIR= ${OBJTOP}/lib/libsmdb -LIBSMDB?= ${LIBSMDBDIR}/libsmdb.a +LIBSMDB?= ${LIBSMDBDIR}/libsmdb${PIE_SUFFIX}.a LIBSMUTILDIR= ${OBJTOP}/lib/libsmutil -LIBSMUTIL?= ${LIBSMUTILDIR}/libsmutil.a +LIBSMUTIL?= ${LIBSMUTILDIR}/libsmutil${PIE_SUFFIX}.a LIBNETBSDDIR?= ${OBJTOP}/lib/libnetbsd -LIBNETBSD?= ${LIBNETBSDDIR}/libnetbsd.a +LIBNETBSD?= ${LIBNETBSDDIR}/libnetbsd${PIE_SUFFIX}.a LIBVERSDIR?= ${OBJTOP}/kerberos5/lib/libvers -LIBVERS?= ${LIBVERSDIR}/libvers.a +LIBVERS?= ${LIBVERSDIR}/libvers${PIE_SUFFIX}.a LIBSLDIR= ${OBJTOP}/kerberos5/lib/libsl -LIBSL?= ${LIBSLDIR}/libsl.a +LIBSL?= ${LIBSLDIR}/libsl${PIE_SUFFIX}.a LIBIPFDIR= ${OBJTOP}/sbin/ipf/libipf -LIBIPF?= ${LIBIPFDIR}/libipf.a +LIBIPF?= ${LIBIPFDIR}/libipf${PIE_SUFFIX}.a LIBTELNETDIR= ${OBJTOP}/lib/libtelnet -LIBTELNET?= ${LIBTELNETDIR}/libtelnet.a +LIBTELNET?= ${LIBTELNETDIR}/libtelnet${PIE_SUFFIX}.a LIBCRONDIR= ${OBJTOP}/usr.sbin/cron/lib -LIBCRON?= ${LIBCRONDIR}/libcron.a +LIBCRON?= ${LIBCRONDIR}/libcron${PIE_SUFFIX}.a LIBNTPDIR= ${OBJTOP}/usr.sbin/ntp/libntp -LIBNTP?= ${LIBNTPDIR}/libntp.a +LIBNTP?= ${LIBNTPDIR}/libntp${PIE_SUFFIX}.a LIBNTPEVENTDIR= ${OBJTOP}/usr.sbin/ntp/libntpevent -LIBNTPEVENT?= ${LIBNTPEVENTDIR}/libntpevent.a +LIBNTPEVENT?= ${LIBNTPEVENTDIR}/libntpevent${PIE_SUFFIX}.a LIBOPTSDIR= ${OBJTOP}/usr.sbin/ntp/libopts -LIBOPTS?= ${LIBOPTSDIR}/libopts.a +LIBOPTS?= ${LIBOPTSDIR}/libopts${PIE_SUFFIX}.a LIBPARSEDIR= ${OBJTOP}/usr.sbin/ntp/libparse -LIBPARSE?= ${LIBPARSEDIR}/libparse.a +LIBPARSE?= ${LIBPARSEDIR}/libparse${PIE_SUFFIX}.a LIBLPRDIR= ${OBJTOP}/usr.sbin/lpr/common_source -LIBLPR?= ${LIBLPRDIR}/liblpr.a +LIBLPR?= ${LIBLPRDIR}/liblpr${PIE_SUFFIX}.a LIBFIFOLOGDIR= ${OBJTOP}/usr.sbin/fifolog/lib -LIBFIFOLOG?= ${LIBFIFOLOGDIR}/libfifolog.a +LIBFIFOLOG?= ${LIBFIFOLOGDIR}/libfifolog${PIE_SUFFIX}.a LIBBSNMPTOOLSDIR= ${OBJTOP}/usr.sbin/bsnmpd/tools/libbsnmptools -LIBBSNMPTOOLS?= ${LIBBSNMPTOOLSDIR}/libbsnmptools.a +LIBBSNMPTOOLS?= ${LIBBSNMPTOOLSDIR}/libbsnmptools${PIE_SUFFIX}.a LIBAMUDIR= ${OBJTOP}/usr.sbin/amd/libamu -LIBAMU?= ${LIBAMUDIR}/libamu.a +LIBAMU?= ${LIBAMUDIR}/libamu${PIE_SUFFIX}.a -LIBBE?= ${LIBBEDIR}/libbe.a +LIBBE?= ${LIBBEDIR}/libbe${PIE_SUFFIX}.a LIBPMCSTATDIR= ${OBJTOP}/lib/libpmcstat -LIBPMCSTAT?= ${LIBPMCSTATDIR}/libpmcstat.a +LIBPMCSTAT?= ${LIBPMCSTATDIR}/libpmcstat${PIE_SUFFIX}.a LIBC_NOSSP_PICDIR= ${OBJTOP}/lib/libc LIBC_NOSSP_PIC?= ${LIBC_NOSSP_PICDIR}/libc_nossp_pic.a Modified: head/stand/i386/Makefile.inc ============================================================================== --- head/stand/i386/Makefile.inc Fri Feb 15 21:50:45 2019 (r344178) +++ head/stand/i386/Makefile.inc Fri Feb 15 22:22:38 2019 (r344179) @@ -7,6 +7,7 @@ LOADER_ADDRESS?=0x200000 LDFLAGS+= -nostdlib LDFLAGS.lld+= -Wl,--no-rosegment +MK_PIE:= no # BTX components BTXDIR= ${BOOTOBJ}/i386/btx Added: head/tools/build/options/WITHOUT_PIE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITHOUT_PIE Fri Feb 15 22:22:38 2019 (r344179) @@ -0,0 +1,3 @@ +.\" $FreeBSD$ +Do not build dynamically linked binaries as +Position-Independent Executable (PIE). Added: head/tools/build/options/WITH_PIE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITH_PIE Fri Feb 15 22:22:38 2019 (r344179) @@ -0,0 +1,3 @@ +.\" $FreeBSD$ +Build dynamically linked binaries as +Position-Independent Executable (PIE). Modified: head/usr.bin/clang/Makefile.inc ============================================================================== --- head/usr.bin/clang/Makefile.inc Fri Feb 15 21:50:45 2019 (r344178) +++ head/usr.bin/clang/Makefile.inc Fri Feb 15 22:22:38 2019 (r344179) @@ -4,6 +4,8 @@ WARNS?= 0 .include +MK_PIE:= no # Explicit libXXX.a references + .if ${COMPILER_TYPE} == "clang" DEBUG_FILES_CFLAGS= -gline-tables-only .else Modified: head/usr.bin/svn/Makefile.inc ============================================================================== --- head/usr.bin/svn/Makefile.inc Fri Feb 15 21:50:45 2019 (r344178) +++ head/usr.bin/svn/Makefile.inc Fri Feb 15 22:22:38 2019 (r344179) @@ -2,6 +2,8 @@ .include +MK_PIE:= no # Explicit libXXX.a references + .if ${MK_SVN} == "yes" SVNLITE?= .else From owner-svn-src-all@freebsd.org Fri Feb 15 22:28:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8416B14EBC2F; Fri, 15 Feb 2019 22:28:35 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 27A608898B; Fri, 15 Feb 2019 22:28:35 +0000 (UTC) (envelope-from emaste@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1CB6624FFD; Fri, 15 Feb 2019 22:28:35 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMSYgO002596; Fri, 15 Feb 2019 22:28:34 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMSYkb002595; Fri, 15 Feb 2019 22:28:34 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201902152228.x1FMSYkb002595@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 15 Feb 2019 22:28:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344180 - head/share/man/man5 X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/share/man/man5 X-SVN-Commit-Revision: 344180 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 27A608898B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:28:35 -0000 Author: emaste Date: Fri Feb 15 22:28:34 2019 New Revision: 344180 URL: https://svnweb.freebsd.org/changeset/base/344180 Log: Regen src.conf.5 after r344179 Modified: head/share/man/man5/src.conf.5 Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Fri Feb 15 22:22:38 2019 (r344179) +++ head/share/man/man5/src.conf.5 Fri Feb 15 22:28:34 2019 (r344180) @@ -1,6 +1,6 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. .\" $FreeBSD$ -.Dd January 31, 2019 +.Dd February 15, 2019 .Dt SRC.CONF 5 .Os .Sh NAME @@ -406,7 +406,8 @@ Set to build the Clang C/C++ compiler during the boots This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386. .It Va WITH_CLANG_EXTRAS -Set to build additional clang and llvm tools, such as bugpoint. +Set to build additional clang and llvm tools, such as bugpoint and +clang-format. .It Va WITHOUT_CLANG_FULL Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of the Clang C/C++ compiler. @@ -1542,6 +1543,9 @@ When set, it enforces these options: .It .Va WITHOUT_AUTHPF .El +.It Va WITH_PIE +Build dynamically linked binaries as +Position-Independent Executable (PIE). .It Va WITHOUT_PKGBOOTSTRAP Set to not build .Xr pkg 7 From owner-svn-src-all@freebsd.org Fri Feb 15 22:28:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EE4E214EBC4F; Fri, 15 Feb 2019 22:28:46 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-it1-f173.google.com (mail-it1-f173.google.com [209.85.166.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9064A88A92; Fri, 15 Feb 2019 22:28:46 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by mail-it1-f173.google.com with SMTP id r11so27901719itc.2; Fri, 15 Feb 2019 14:28:46 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=D9+kb6slq2hksxaebGH/uxVzLCKU7JyzhmNNaF5Rz2Y=; b=ho8fUOae1QOTQELJVTQ7rr/snqdUWZtV+XnD71MQR+GG3MD2RL5L6Wfe3Y+o4SN4+V LIh9RN9N7wKER7nSN86Ys4NIlsmevkxQdn+R4Fvja2xTGY6jKXDjMRyRkswhhS/MqAaq wTnUneQfG5eZ18f87RoS7PQOtqa8Ds19x0InbTnwWop7vyeGsYy4hsb+jz4bWqke/uH5 YrGu1raNtwYntViyZkUvyx1K3k9GaZ/vBeCs7gyS58hkx9a3KKX+2XijlaAAeD9XRv7E P+ajIwfH5n+YRvr64/HdlKQSgs/rdwzHYFyQGB5791HmW933hp4W/UAW1MqRj55UcWRw ET6g== X-Gm-Message-State: AHQUAuaZHNLIiezjGDcvOEiEBRTP5hnPJ5o/uO6K6DN0RzfeG5SuwdhS C5iZ1IZ4URohc/gevg+ntcsWlrFoeDJNSucL+tzH8i5f X-Google-Smtp-Source: AHgI3IYzh91r7xc7p+4k/TpTTScA1C9Uhq2ZxA5LEvtOYL30f0F/HKskxsqL7BYkL+EFRd4hNaWsmqA8CbWthomhNnw= X-Received: by 2002:a6b:ee02:: with SMTP id i2mr6252910ioh.294.1550269719090; Fri, 15 Feb 2019 14:28:39 -0800 (PST) MIME-Version: 1.0 References: <201902152222.x1FMMc9B002292@repo.freebsd.org> In-Reply-To: <201902152222.x1FMMc9B002292@repo.freebsd.org> From: Ed Maste Date: Fri, 15 Feb 2019 17:28:25 -0500 Message-ID: Subject: Re: svn commit: r344179 - in head: kerberos5/tools/asn1_compile kerberos5/tools/slc lib/clang libexec/rtld-elf share/mk stand/i386 tools/build/options usr.bin/clang usr.bin/svn To: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 9064A88A92 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.988,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:28:47 -0000 On Fri, 15 Feb 2019 at 17:22, Ed Maste wrote: > > Author: emaste > Date: Fri Feb 15 22:22:38 2019 > New Revision: 344179 > URL: https://svnweb.freebsd.org/changeset/base/344179 > > Log: > Add WITH_PIE knob to build Position Independent Executables A last-minute cleanup/refactoring introduced a Makefile error in this change - fix coming shortly. From owner-svn-src-all@freebsd.org Fri Feb 15 22:30:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C580B14EBD18; Fri, 15 Feb 2019 22:30:10 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6A48088C59; Fri, 15 Feb 2019 22:30:10 +0000 (UTC) (envelope-from emaste@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5487025001; Fri, 15 Feb 2019 22:30:10 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMUAXW002739; Fri, 15 Feb 2019 22:30:10 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMUAsR002738; Fri, 15 Feb 2019 22:30:10 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201902152230.x1FMUAsR002738@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 15 Feb 2019 22:30:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344181 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 344181 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6A48088C59 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:30:10 -0000 Author: emaste Date: Fri Feb 15 22:30:09 2019 New Revision: 344181 URL: https://svnweb.freebsd.org/changeset/base/344181 Log: Fix Makefile conditional after r344179 Modified: head/share/mk/bsd.prog.mk Modified: head/share/mk/bsd.prog.mk ============================================================================== --- head/share/mk/bsd.prog.mk Fri Feb 15 22:28:34 2019 (r344180) +++ head/share/mk/bsd.prog.mk Fri Feb 15 22:30:09 2019 (r344181) @@ -39,7 +39,7 @@ MK_DEBUG_FILES= no LDFLAGS+= -Wl,-znow .endif .if ${MK_PIE} != "no" && \ - !defined(NO_SHARED) || ${NO_SHARED} == "no" || ${NO_SHARED} == "NO" + (!defined(NO_SHARED) || ${NO_SHARED} == "no" || ${NO_SHARED} == "NO") CFLAGS+= -fPIE CXXFLAGS+= -fPIE LDFLAGS+= -pie From owner-svn-src-all@freebsd.org Fri Feb 15 22:48:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE91A14EC586; Fri, 15 Feb 2019 22:48:51 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1B405897CB; Fri, 15 Feb 2019 22:48:51 +0000 (UTC) (envelope-from emaste@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0DDB125359; Fri, 15 Feb 2019 22:48:51 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMmoWc013160; Fri, 15 Feb 2019 22:48:50 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMmoXS013158; Fri, 15 Feb 2019 22:48:50 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201902152248.x1FMmoXS013158@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 15 Feb 2019 22:48:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344182 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 344182 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1B405897CB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:48:51 -0000 Author: emaste Date: Fri Feb 15 22:48:50 2019 New Revision: 344182 URL: https://svnweb.freebsd.org/changeset/base/344182 Log: Use make's :tl instead of checking "no" and "NO" Suggested by: kevans Reviewed by: kevans Modified: head/share/mk/bsd.prog.mk head/share/mk/src.libnames.mk Modified: head/share/mk/bsd.prog.mk ============================================================================== --- head/share/mk/bsd.prog.mk Fri Feb 15 22:30:09 2019 (r344181) +++ head/share/mk/bsd.prog.mk Fri Feb 15 22:48:50 2019 (r344182) @@ -38,8 +38,7 @@ MK_DEBUG_FILES= no .if ${MK_BIND_NOW} != "no" LDFLAGS+= -Wl,-znow .endif -.if ${MK_PIE} != "no" && \ - (!defined(NO_SHARED) || ${NO_SHARED} == "no" || ${NO_SHARED} == "NO") +.if ${MK_PIE} != "no" && (!defined(NO_SHARED) || ${NO_SHARED:tl} == "no") CFLAGS+= -fPIE CXXFLAGS+= -fPIE LDFLAGS+= -pie @@ -48,7 +47,7 @@ LDFLAGS+= -pie CFLAGS+= -mretpoline CXXFLAGS+= -mretpoline # retpolineplt is broken with static linking (PR 233336) -.if !defined(NO_SHARED) || ${NO_SHARED} == "no" || ${NO_SHARED} == "NO" +.if !defined(NO_SHARED) || ${NO_SHARED:tl} == "no" LDFLAGS+= -Wl,-zretpolineplt .endif .endif @@ -74,7 +73,7 @@ TAGS+= package=${PACKAGE:Uruntime} TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} .endif -.if defined(NO_SHARED) && (${NO_SHARED} != "no" && ${NO_SHARED} != "NO") +.if defined(NO_SHARED) && (${NO_SHARED:tl} != "no" LDFLAGS+= -static .endif Modified: head/share/mk/src.libnames.mk ============================================================================== --- head/share/mk/src.libnames.mk Fri Feb 15 22:30:09 2019 (r344181) +++ head/share/mk/src.libnames.mk Fri Feb 15 22:48:50 2019 (r344182) @@ -386,7 +386,7 @@ LDADD_${_l}?= ${LDADD_${_l}_L} -l${_l} .endif # Add in all dependencies for static linkage. .if defined(_DP_${_l}) && (${_INTERNALLIBS:M${_l}} || \ - (defined(NO_SHARED) && (${NO_SHARED} != "no" && ${NO_SHARED} != "NO"))) + (defined(NO_SHARED) && ${NO_SHARED:tl} != "no")) .for _d in ${_DP_${_l}} DPADD_${_l}+= ${DPADD_${_d}} LDADD_${_l}+= ${LDADD_${_d}} From owner-svn-src-all@freebsd.org Fri Feb 15 22:49:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 16B9B14EC5E4; Fri, 15 Feb 2019 22:49:17 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AD1CF8991C; Fri, 15 Feb 2019 22:49:16 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A33A12535B; Fri, 15 Feb 2019 22:49:16 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMnGAW013225; Fri, 15 Feb 2019 22:49:16 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMnFaL013219; Fri, 15 Feb 2019 22:49:15 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902152249.x1FMnFaL013219@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Fri, 15 Feb 2019 22:49:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344183 - head/sys/fs/fuse X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/fs/fuse X-SVN-Commit-Revision: 344183 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AD1CF8991C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:49:17 -0000 Author: cem Date: Fri Feb 15 22:49:15 2019 New Revision: 344183 URL: https://svnweb.freebsd.org/changeset/base/344183 Log: FUSE: Respect userspace FS "do-not-cache" of file attributes The FUSE protocol demands that kernel implementations cache user filesystem file attributes (vattr data) for a maximum period of time in the range of [0, ULONG_MAX] seconds. In practice, typical requests are for 0, 1, or 10 seconds; or "a long time" to represent indefinite caching. Historically, FreeBSD FUSE has ignored this client directive entirely. This works fine for local-only filesystems, but causes consistency issues with multi-writer network filesystems. For now, respect 0 second cache TTLs and do not cache such metadata. Non-zero metadata caching TTLs in the range [0.000000001, ULONG_MAX] seconds are still cached indefinitely, because it is unclear how a userspace filesystem could do anything sensible with those semantics even if implemented. In the future, as an optimization, we should implement notify_inval_entry, etc, which provide userspace filesystems a way of evicting the kernel cache. One potentially bogus access to invalid cached attribute data was left in fuse_io_strategy. It is restricted behind the undocumented and non-default "vfs.fuse.fix_broken_io" sysctl or "brokenio" mount option; maybe these are deadcode and can be eliminated? Some minor APIs changed to facilitate this: 1. Attribute cache validity is tracked in FUSE inodes ("fuse_vnode_data"). 2. cache_attrs() respects the provided TTL and only caches in the FUSE inode if TTL > 0. It also grows an "out" argument, which, if non-NULL, stores the translated fuse_attr (even if not suitable for caching). 3. FUSE VTOVA(vp) returns NULL if the vnode's cache is invalid, to help avoid programming mistakes. 4. A VOP_LINK check for potential nlink overflow prior to invoking the FUSE link op was weakened (only performed when we have a valid attr cache). The check is racy in a multi-writer network filesystem anyway -- classic TOCTOU. We have to trust any userspace filesystem that rejects local caching to account for it correctly. PR: 230258 (inspired by; does not fix) Modified: head/sys/fs/fuse/fuse_internal.c head/sys/fs/fuse/fuse_internal.h head/sys/fs/fuse/fuse_io.c head/sys/fs/fuse/fuse_node.c head/sys/fs/fuse/fuse_node.h head/sys/fs/fuse/fuse_vnops.c Modified: head/sys/fs/fuse/fuse_internal.c ============================================================================== --- head/sys/fs/fuse/fuse_internal.c Fri Feb 15 22:48:50 2019 (r344182) +++ head/sys/fs/fuse/fuse_internal.c Fri Feb 15 22:49:15 2019 (r344183) @@ -373,7 +373,6 @@ fuse_internal_readdir_processdata(struct uio *uio, /* remove */ -#define INVALIDATE_CACHED_VATTRS_UPON_UNLINK 1 int fuse_internal_remove(struct vnode *dvp, struct vnode *vp, @@ -381,16 +380,12 @@ fuse_internal_remove(struct vnode *dvp, enum fuse_opcode op) { struct fuse_dispatcher fdi; + struct fuse_vnode_data *fvdat; + int err; - struct vattr *vap = VTOVA(vp); + err = 0; + fvdat = VTOFUD(vp); -#if INVALIDATE_CACHED_VATTRS_UPON_UNLINK - int need_invalidate = 0; - uint64_t target_nlink = 0; - -#endif - int err = 0; - debug_printf("dvp=%p, cnp=%p, op=%d\n", vp, cnp, op); fdisp_init(&fdi, cnp->cn_namelen + 1); @@ -399,13 +394,6 @@ fuse_internal_remove(struct vnode *dvp, memcpy(fdi.indata, cnp->cn_nameptr, cnp->cn_namelen); ((char *)fdi.indata)[cnp->cn_namelen] = '\0'; -#if INVALIDATE_CACHED_VATTRS_UPON_UNLINK - if (vap->va_nlink > 1) { - need_invalidate = 1; - target_nlink = vap->va_nlink; - } -#endif - err = fdisp_wait_answ(&fdi); fdisp_destroy(&fdi); return err; @@ -489,7 +477,7 @@ fuse_internal_newentry_core(struct vnode *dvp, feo->nodeid, 1); return err; } - cache_attrs(*vpp, feo); + cache_attrs(*vpp, feo, NULL); return err; } @@ -563,6 +551,7 @@ fuse_internal_vnode_disappear(struct vnode *vp) ASSERT_VOP_ELOCKED(vp, "fuse_internal_vnode_disappear"); fvdat->flag |= FN_REVOKED; + fvdat->valid_attr_cache = false; cache_purge(vp); } Modified: head/sys/fs/fuse/fuse_internal.h ============================================================================== --- head/sys/fs/fuse/fuse_internal.h Fri Feb 15 22:48:50 2019 (r344182) +++ head/sys/fs/fuse/fuse_internal.h Fri Feb 15 22:49:15 2019 (r344183) @@ -200,15 +200,47 @@ fuse_internal_access(struct vnode *vp, /* attributes */ +/* + * Cache FUSE attributes 'fat', with nominal expiration + * 'attr_valid'.'attr_valid_nsec', in attr cache associated with vnode 'vp'. + * Optionally, if argument 'vap' is not NULL, store a copy of the converted + * attributes there as well. + * + * If the nominal attribute cache TTL is zero, do not cache on the 'vp' (but do + * return the result to the caller). + */ static __inline void -fuse_internal_attr_fat2vat(struct mount *mp, +fuse_internal_attr_fat2vat(struct vnode *vp, struct fuse_attr *fat, + uint64_t attr_valid, + uint32_t attr_valid_nsec, struct vattr *vap) { + struct mount *mp; + struct fuse_vnode_data *fvdat; + struct vattr *vp_cache_at; + + mp = vnode_mount(vp); + fvdat = VTOFUD(vp); + DEBUGX(FUSE_DEBUG_INTERNAL, "node #%ju, mode 0%o\n", (uintmax_t)fat->ino, fat->mode); + /* Honor explicit do-not-cache requests from user filesystems. */ + if (attr_valid == 0 && attr_valid_nsec == 0) + fvdat->valid_attr_cache = false; + else + fvdat->valid_attr_cache = true; + + vp_cache_at = VTOVA(vp); + + if (vap == NULL && vp_cache_at == NULL) + return; + + if (vap == NULL) + vap = vp_cache_at; + vattr_null(vap); vap->va_fsid = mp->mnt_stat.f_fsid.val[0]; @@ -227,21 +259,17 @@ fuse_internal_attr_fat2vat(struct mount *mp, vap->va_ctime.tv_nsec = fat->ctimensec; vap->va_blocksize = PAGE_SIZE; vap->va_type = IFTOVT(fat->mode); - -#if (S_BLKSIZE == 512) - /* Optimize this case */ - vap->va_bytes = fat->blocks << 9; -#else vap->va_bytes = fat->blocks * S_BLKSIZE; -#endif - vap->va_flags = 0; + + if (vap != vp_cache_at && vp_cache_at != NULL) + memcpy(vp_cache_at, vap, sizeof(*vap)); } -#define cache_attrs(vp, fuse_out) \ - fuse_internal_attr_fat2vat(vnode_mount(vp), &(fuse_out)->attr, \ - VTOVA(vp)); +#define cache_attrs(vp, fuse_out, vap_out) \ + fuse_internal_attr_fat2vat((vp), &(fuse_out)->attr, \ + (fuse_out)->attr_valid, (fuse_out)->attr_valid_nsec, (vap_out)) /* fsync */ Modified: head/sys/fs/fuse/fuse_io.c ============================================================================== --- head/sys/fs/fuse/fuse_io.c Fri Feb 15 22:48:50 2019 (r344182) +++ head/sys/fs/fuse/fuse_io.c Fri Feb 15 22:49:15 2019 (r344183) @@ -655,6 +655,7 @@ fuse_io_strategy(struct vnode *vp, struct buf *bp) uiop->uio_offset = ((off_t)bp->b_blkno) * biosize; error = fuse_read_directbackend(vp, uiop, cred, fufh); + /* XXXCEM: Potentially invalid access to cached_attrs here */ if ((!error && uiop->uio_resid) || (fsess_opt_brokenio(vnode_mount(vp)) && error == EIO && uiop->uio_offset < fvdat->filesize && fvdat->filesize > 0 && Modified: head/sys/fs/fuse/fuse_node.c ============================================================================== --- head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:48:50 2019 (r344182) +++ head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:49:15 2019 (r344183) @@ -147,6 +147,7 @@ fuse_vnode_init(struct vnode *vp, struct fuse_vnode_da int i; fvdat->nid = nodeid; + vattr_null(&fvdat->cached_attrs); if (nodeid == FUSE_ROOT_ID) { vp->v_vflag |= VV_ROOT; } Modified: head/sys/fs/fuse/fuse_node.h ============================================================================== --- head/sys/fs/fuse/fuse_node.h Fri Feb 15 22:48:50 2019 (r344182) +++ head/sys/fs/fuse/fuse_node.h Fri Feb 15 22:49:15 2019 (r344183) @@ -86,6 +86,7 @@ struct fuse_vnode_data { uint32_t flag; /** meta **/ + bool valid_attr_cache; struct vattr cached_attrs; off_t filesize; uint64_t nlookup; @@ -95,7 +96,9 @@ struct fuse_vnode_data { #define VTOFUD(vp) \ ((struct fuse_vnode_data *)((vp)->v_data)) #define VTOI(vp) (VTOFUD(vp)->nid) -#define VTOVA(vp) (&(VTOFUD(vp)->cached_attrs)) +#define VTOVA(vp) \ + (VTOFUD(vp)->valid_attr_cache ? \ + &(VTOFUD(vp)->cached_attrs) : NULL) #define VTOILLU(vp) ((uint64_t)(VTOFUD(vp) ? VTOI(vp) : 0)) #define FUSE_NULL_ID 0 Modified: head/sys/fs/fuse/fuse_vnops.c ============================================================================== --- head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:48:50 2019 (r344182) +++ head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:49:15 2019 (r344183) @@ -518,10 +518,8 @@ fuse_vnop_getattr(struct vop_getattr_args *ap) } goto out; } - cache_attrs(vp, (struct fuse_attr_out *)fdi.answ); - if (vap != VTOVA(vp)) { - memcpy(vap, VTOVA(vp), sizeof(*vap)); - } + + cache_attrs(vp, (struct fuse_attr_out *)fdi.answ, vap); if (vap->va_type != vnode_vtype(vp)) { fuse_internal_vnode_disappear(vp); err = ENOENT; @@ -628,9 +626,15 @@ fuse_vnop_link(struct vop_link_args *ap) if (vnode_mount(tdvp) != vnode_mount(vp)) { return EXDEV; } - if (vap->va_nlink >= FUSE_LINK_MAX) { + + /* + * This is a seatbelt check to protect naive userspace filesystems from + * themselves and the limitations of the FUSE IPC protocol. If a + * filesystem does not allow attribute caching, assume it is capable of + * validating that nlink does not overflow. + */ + if (vap != NULL && vap->va_nlink >= FUSE_LINK_MAX) return EMLINK; - } fli.oldnodeid = VTOI(vp); fdisp_init(&fdi, 0); @@ -966,9 +970,11 @@ calldaemon: } if (op == FUSE_GETATTR) { - cache_attrs(*vpp, (struct fuse_attr_out *)fdi.answ); + cache_attrs(*vpp, (struct fuse_attr_out *)fdi.answ, + NULL); } else { - cache_attrs(*vpp, (struct fuse_entry_out *)fdi.answ); + cache_attrs(*vpp, (struct fuse_entry_out *)fdi.answ, + NULL); } /* Insert name into cache if appropriate. */ @@ -1644,7 +1650,7 @@ fuse_vnop_setattr(struct vop_setattr_args *ap) } } if (!err && !sizechanged) { - cache_attrs(vp, (struct fuse_attr_out *)fdi.answ); + cache_attrs(vp, (struct fuse_attr_out *)fdi.answ, NULL); } out: fdisp_destroy(&fdi); From owner-svn-src-all@freebsd.org Fri Feb 15 22:50:33 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5963114EC6CC; Fri, 15 Feb 2019 22:50:33 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EC2A189AD8; Fri, 15 Feb 2019 22:50:32 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D86DC25366; Fri, 15 Feb 2019 22:50:32 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMoW22014077; Fri, 15 Feb 2019 22:50:32 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMoVk8013356; Fri, 15 Feb 2019 22:50:31 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902152250.x1FMoVk8013356@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Fri, 15 Feb 2019 22:50:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344184 - head/sys/fs/fuse X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/fs/fuse X-SVN-Commit-Revision: 344184 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EC2A189AD8 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:50:33 -0000 Author: cem Date: Fri Feb 15 22:50:31 2019 New Revision: 344184 URL: https://svnweb.freebsd.org/changeset/base/344184 Log: FUSE: Respect userspace FS "do-not-cache" of path components The FUSE protocol demands that kernel implementations cache user filesystem path components (lookup/cnp data) for a maximum period of time in the range of [0, ULONG_MAX] seconds. In practice, typical requests are for 0, 1, or 10 seconds; or "a long time" to represent indefinite caching. Historically, FreeBSD FUSE has ignored this client directive entirely. This works fine for local-only filesystems, but causes consistency issues with multi-writer network filesystems. For now, respect 0 second cache TTLs and do not cache such metadata. Non-zero metadata caching TTLs in the range [0.000000001, ULONG_MAX] seconds are still cached indefinitely, because it is unclear how a userspace filesystem could do anything sensible with those semantics even if implemented. Pass fuse_entry_out to fuse_vnode_get when available and only cache lookup if the user filesystem did not set a zero second TTL. PR: 230258 (inspired by; does not fix) Modified: head/sys/fs/fuse/fuse_internal.c head/sys/fs/fuse/fuse_node.c head/sys/fs/fuse/fuse_node.h head/sys/fs/fuse/fuse_vfsops.c head/sys/fs/fuse/fuse_vnops.c Modified: head/sys/fs/fuse/fuse_internal.c ============================================================================== --- head/sys/fs/fuse/fuse_internal.c Fri Feb 15 22:49:15 2019 (r344183) +++ head/sys/fs/fuse/fuse_internal.c Fri Feb 15 22:50:31 2019 (r344184) @@ -471,7 +471,7 @@ fuse_internal_newentry_core(struct vnode *dvp, if ((err = fuse_internal_checkentry(feo, vtyp))) { return err; } - err = fuse_vnode_get(mp, feo->nodeid, dvp, vpp, cnp, vtyp); + err = fuse_vnode_get(mp, feo, feo->nodeid, dvp, vpp, cnp, vtyp); if (err) { fuse_internal_forget_send(mp, cnp->cn_thread, cnp->cn_cred, feo->nodeid, 1); Modified: head/sys/fs/fuse/fuse_node.c ============================================================================== --- head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:49:15 2019 (r344183) +++ head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:50:31 2019 (r344184) @@ -241,6 +241,7 @@ fuse_vnode_alloc(struct mount *mp, int fuse_vnode_get(struct mount *mp, + struct fuse_entry_out *feo, uint64_t nodeid, struct vnode *dvp, struct vnode **vpp, @@ -261,7 +262,9 @@ fuse_vnode_get(struct mount *mp, MPASS(!(cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.')); fuse_vnode_setparent(*vpp, dvp); } - if (dvp != NULL && cnp != NULL && (cnp->cn_flags & MAKEENTRY) != 0) { + if (dvp != NULL && cnp != NULL && (cnp->cn_flags & MAKEENTRY) != 0 && + feo != NULL && + (feo->entry_valid != 0 || feo->entry_valid_nsec != 0)) { ASSERT_VOP_LOCKED(*vpp, "fuse_vnode_get"); ASSERT_VOP_LOCKED(dvp, "fuse_vnode_get"); cache_enter(dvp, *vpp, cnp); Modified: head/sys/fs/fuse/fuse_node.h ============================================================================== --- head/sys/fs/fuse/fuse_node.h Fri Feb 15 22:49:15 2019 (r344183) +++ head/sys/fs/fuse/fuse_node.h Fri Feb 15 22:50:31 2019 (r344184) @@ -117,6 +117,7 @@ fuse_vnode_setparent(struct vnode *vp, struct vnode *d void fuse_vnode_destroy(struct vnode *vp); int fuse_vnode_get(struct mount *mp, + struct fuse_entry_out *feo, uint64_t nodeid, struct vnode *dvp, struct vnode **vpp, Modified: head/sys/fs/fuse/fuse_vfsops.c ============================================================================== --- head/sys/fs/fuse/fuse_vfsops.c Fri Feb 15 22:49:15 2019 (r344183) +++ head/sys/fs/fuse/fuse_vfsops.c Fri Feb 15 22:50:31 2019 (r344184) @@ -444,7 +444,8 @@ fuse_vfsop_root(struct mount *mp, int lkflags, struct if (err == 0) *vpp = data->vroot; } else { - err = fuse_vnode_get(mp, FUSE_ROOT_ID, NULL, vpp, NULL, VDIR); + err = fuse_vnode_get(mp, NULL, FUSE_ROOT_ID, NULL, vpp, NULL, + VDIR); if (err == 0) { FUSE_LOCK(); MPASS(data->vroot == NULL || data->vroot == *vpp); Modified: head/sys/fs/fuse/fuse_vnops.c ============================================================================== --- head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:49:15 2019 (r344183) +++ head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:50:31 2019 (r344184) @@ -384,7 +384,7 @@ fuse_vnop_create(struct vop_create_args *ap) if ((err = fuse_internal_checkentry(feo, VREG))) { goto out; } - err = fuse_vnode_get(mp, feo->nodeid, dvp, vpp, cnp, VREG); + err = fuse_vnode_get(mp, feo, feo->nodeid, dvp, vpp, cnp, VREG); if (err) { struct fuse_release_in *fri; uint64_t nodeid = feo->nodeid; @@ -857,8 +857,8 @@ calldaemon: vref(dvp); *vpp = dvp; } else { - err = fuse_vnode_get(dvp->v_mount, nid, dvp, - &vp, cnp, IFTOVT(fattr->mode)); + err = fuse_vnode_get(dvp->v_mount, feo, nid, + dvp, &vp, cnp, IFTOVT(fattr->mode)); if (err) goto out; *vpp = vp; @@ -893,12 +893,8 @@ calldaemon: err = EISDIR; goto out; } - err = fuse_vnode_get(vnode_mount(dvp), - nid, - dvp, - &vp, - cnp, - IFTOVT(fattr->mode)); + err = fuse_vnode_get(vnode_mount(dvp), feo, nid, dvp, + &vp, cnp, IFTOVT(fattr->mode)); if (err) { goto out; } @@ -936,12 +932,8 @@ calldaemon: } } VOP_UNLOCK(dvp, 0); - err = fuse_vnode_get(vnode_mount(dvp), - nid, - NULL, - &vp, - cnp, - IFTOVT(fattr->mode)); + err = fuse_vnode_get(vnode_mount(dvp), feo, nid, NULL, + &vp, cnp, IFTOVT(fattr->mode)); vfs_unbusy(mp); vn_lock(dvp, ltype | LK_RETRY); if ((dvp->v_iflag & VI_DOOMED) != 0) { @@ -956,12 +948,8 @@ calldaemon: vref(dvp); *vpp = dvp; } else { - err = fuse_vnode_get(vnode_mount(dvp), - nid, - dvp, - &vp, - cnp, - IFTOVT(fattr->mode)); + err = fuse_vnode_get(vnode_mount(dvp), feo, nid, dvp, + &vp, cnp, IFTOVT(fattr->mode)); if (err) { goto out; } From owner-svn-src-all@freebsd.org Fri Feb 15 22:51:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6439C14EC825; Fri, 15 Feb 2019 22:51:11 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 28F6489CFE; Fri, 15 Feb 2019 22:51:11 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B0CF82538E; Fri, 15 Feb 2019 22:51:10 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMpA48016410; Fri, 15 Feb 2019 22:51:10 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMpAKe016404; Fri, 15 Feb 2019 22:51:10 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902152251.x1FMpAKe016404@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Fri, 15 Feb 2019 22:51:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344185 - head/sys/fs/fuse X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/fs/fuse X-SVN-Commit-Revision: 344185 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 28F6489CFE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:51:11 -0000 Author: cem Date: Fri Feb 15 22:51:09 2019 New Revision: 344185 URL: https://svnweb.freebsd.org/changeset/base/344185 Log: FUSE: Only "dirty" cached file size when data is dirty Most users of fuse_vnode_setsize() set the cached fvdat->filesize and update the buf cache bounds as a result of either a read from the underlying FUSE filesystem, or as part of a write-through type operation (like truncate => VOP_SETATTR). In these cases, do not set the FN_SIZECHANGE flag, which indicates that an inode's data is dirty (in particular, that the local buf cache and fvdat->filesize have dirty extended data). PR: 230258 (related) Modified: head/sys/fs/fuse/fuse_io.c head/sys/fs/fuse/fuse_node.c head/sys/fs/fuse/fuse_vnops.c Modified: head/sys/fs/fuse/fuse_io.c ============================================================================== --- head/sys/fs/fuse/fuse_io.c Fri Feb 15 22:50:31 2019 (r344184) +++ head/sys/fs/fuse/fuse_io.c Fri Feb 15 22:51:09 2019 (r344185) @@ -362,8 +362,11 @@ fuse_write_directbackend(struct vnode *vp, struct uio } uio->uio_resid += diff; uio->uio_offset -= diff; - if (uio->uio_offset > fvdat->filesize) + if (uio->uio_offset > fvdat->filesize && + fuse_data_cache_enable) { fuse_vnode_setsize(vp, cred, uio->uio_offset); + fvdat->flag &= ~FN_SIZECHANGE; + } } fdisp_destroy(&fdi); Modified: head/sys/fs/fuse/fuse_node.c ============================================================================== --- head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:50:31 2019 (r344184) +++ head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:51:09 2019 (r344185) @@ -375,6 +375,7 @@ fuse_vnode_refreshsize(struct vnode *vp, struct ucred struct vattr va; if ((fvdat->flag & FN_SIZECHANGE) != 0 || + fuse_data_cache_enable == 0 || (fuse_refresh_size == 0 && fvdat->filesize != 0)) return; Modified: head/sys/fs/fuse/fuse_vnops.c ============================================================================== --- head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:50:31 2019 (r344184) +++ head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:51:09 2019 (r344185) @@ -538,6 +538,7 @@ fuse_vnop_getattr(struct vop_getattr_args *ap) if (fvdat->filesize != new_filesize) { fuse_vnode_setsize(vp, cred, new_filesize); + fvdat->flag &= ~FN_SIZECHANGE; } } debug_printf("fuse_getattr e: returning 0\n"); @@ -1637,9 +1638,9 @@ fuse_vnop_setattr(struct vop_setattr_args *ap) err = EAGAIN; } } - if (!err && !sizechanged) { + if (err == 0) cache_attrs(vp, (struct fuse_attr_out *)fdi.answ, NULL); - } + out: fdisp_destroy(&fdi); if (!err && sizechanged) { From owner-svn-src-all@freebsd.org Fri Feb 15 22:52:51 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BADF414ECCFC; Fri, 15 Feb 2019 22:52:50 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5DAA38A226; Fri, 15 Feb 2019 22:52:50 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4923425507; Fri, 15 Feb 2019 22:52:50 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMqorC018160; Fri, 15 Feb 2019 22:52:50 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMqnGQ018157; Fri, 15 Feb 2019 22:52:49 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902152252.x1FMqnGQ018157@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Fri, 15 Feb 2019 22:52:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344186 - head/sys/fs/fuse X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/fs/fuse X-SVN-Commit-Revision: 344186 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5DAA38A226 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:52:51 -0000 Author: cem Date: Fri Feb 15 22:52:49 2019 New Revision: 344186 URL: https://svnweb.freebsd.org/changeset/base/344186 Log: FUSE: The FUSE design expects writethrough caching At least prior to 7.23 (which adds FUSE_WRITEBACK_CACHE), the FUSE protocol specifies only clean data to be cached. Prior to this change, we implement and default to writeback caching. This is ok enough for local only filesystems without hardlinks, but violates the general design contract with FUSE and breaks distributed filesystems or concurrent access to hardlinks of the same inode. In this change, add cache mode as an extension of cache enable/disable. The new modes are UC (was: cache disabled), WT (default), and WB (was: cache enabled). For now, WT caching is implemented as write-around, which meets the goal of only caching clean data. WT can be better than WA for workloads that frequently read data that was recently written, but WA is trivial to implement. Note that this has no effect on O_WRONLY-opened files, which were already coerced to write-around. Refs: * https://sourceforge.net/p/fuse/mailman/message/8902254/ * https://github.com/vgough/encfs/issues/315 PR: 230258 (inspired by) Modified: head/sys/fs/fuse/fuse_io.c head/sys/fs/fuse/fuse_ipc.h head/sys/fs/fuse/fuse_node.c Modified: head/sys/fs/fuse/fuse_io.c ============================================================================== --- head/sys/fs/fuse/fuse_io.c Fri Feb 15 22:51:09 2019 (r344185) +++ head/sys/fs/fuse/fuse_io.c Fri Feb 15 22:52:49 2019 (r344186) @@ -155,7 +155,13 @@ fuse_io_dispatch(struct vnode *vp, struct uio *uio, in } break; case UIO_WRITE: - if (directio) { + /* + * Kludge: simulate write-through caching via write-around + * caching. Same effect, as far as never caching dirty data, + * but slightly pessimal in that newly written data is not + * cached. + */ + if (directio || fuse_data_cache_mode == FUSE_CACHE_WT) { FS_DEBUG("direct write of vnode %ju via file handle %ju\n", (uintmax_t)VTOILLU(vp), (uintmax_t)fufh->fh_id); err = fuse_write_directbackend(vp, uio, cred, fufh, ioflag); @@ -363,7 +369,7 @@ fuse_write_directbackend(struct vnode *vp, struct uio uio->uio_resid += diff; uio->uio_offset -= diff; if (uio->uio_offset > fvdat->filesize && - fuse_data_cache_enable) { + fuse_data_cache_mode != FUSE_CACHE_UC) { fuse_vnode_setsize(vp, cred, uio->uio_offset); fvdat->flag &= ~FN_SIZECHANGE; } Modified: head/sys/fs/fuse/fuse_ipc.h ============================================================================== --- head/sys/fs/fuse/fuse_ipc.h Fri Feb 15 22:51:09 2019 (r344185) +++ head/sys/fs/fuse/fuse_ipc.h Fri Feb 15 22:52:49 2019 (r344186) @@ -214,7 +214,13 @@ struct fuse_data { #define FSESS_NO_MMAP 0x0800 /* disable mmap */ #define FSESS_BROKENIO 0x1000 /* fix broken io */ -extern int fuse_data_cache_enable; +enum fuse_data_cache_mode { + FUSE_CACHE_UC, + FUSE_CACHE_WT, + FUSE_CACHE_WB, +}; + +extern int fuse_data_cache_mode; extern int fuse_data_cache_invalidate; extern int fuse_mmap_enable; extern int fuse_sync_resize; @@ -248,7 +254,7 @@ fsess_opt_datacache(struct mount *mp) { struct fuse_data *data = fuse_get_mpdata(mp); - return (fuse_data_cache_enable || + return (fuse_data_cache_mode != FUSE_CACHE_UC && (data->dataflags & FSESS_NO_DATACACHE) == 0); } @@ -257,7 +263,7 @@ fsess_opt_mmap(struct mount *mp) { struct fuse_data *data = fuse_get_mpdata(mp); - if (!(fuse_mmap_enable && fuse_data_cache_enable)) + if (!fuse_mmap_enable || fuse_data_cache_mode == FUSE_CACHE_UC) return 0; return ((data->dataflags & (FSESS_NO_DATACACHE | FSESS_NO_MMAP)) == 0); } Modified: head/sys/fs/fuse/fuse_node.c ============================================================================== --- head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:51:09 2019 (r344185) +++ head/sys/fs/fuse/fuse_node.c Fri Feb 15 22:52:49 2019 (r344186) @@ -94,16 +94,19 @@ __FBSDID("$FreeBSD$"); MALLOC_DEFINE(M_FUSEVN, "fuse_vnode", "fuse vnode private data"); +static int sysctl_fuse_cache_mode(SYSCTL_HANDLER_ARGS); + static int fuse_node_count = 0; SYSCTL_INT(_vfs_fuse, OID_AUTO, node_count, CTLFLAG_RD, &fuse_node_count, 0, "Count of FUSE vnodes"); -int fuse_data_cache_enable = 1; +int fuse_data_cache_mode = FUSE_CACHE_WT; -SYSCTL_INT(_vfs_fuse, OID_AUTO, data_cache_enable, CTLFLAG_RW, - &fuse_data_cache_enable, 0, - "enable caching of FUSE file data (including dirty data)"); +SYSCTL_PROC(_vfs_fuse, OID_AUTO, data_cache_mode, CTLTYPE_INT|CTLFLAG_RW, + &fuse_data_cache_mode, 0, sysctl_fuse_cache_mode, "I", + "Zero: disable caching of FUSE file data; One: write-through caching " + "(default); Two: write-back caching (generally unsafe)"); int fuse_data_cache_invalidate = 0; @@ -116,7 +119,7 @@ int fuse_mmap_enable = 1; SYSCTL_INT(_vfs_fuse, OID_AUTO, mmap_enable, CTLFLAG_RW, &fuse_mmap_enable, 0, - "If non-zero, and data_cache_enable is also non-zero, enable mmap(2) of " + "If non-zero, and data_cache_mode is also non-zero, enable mmap(2) of " "FUSE files"); int fuse_refresh_size = 0; @@ -140,6 +143,28 @@ SYSCTL_INT(_vfs_fuse, OID_AUTO, fix_broken_io, CTLFLAG "If non-zero, print a diagnostic warning if a userspace filesystem returns" " EIO on reads of recently extended portions of files"); +static int +sysctl_fuse_cache_mode(SYSCTL_HANDLER_ARGS) +{ + int val, error; + + val = *(int *)arg1; + error = sysctl_handle_int(oidp, &val, 0, req); + if (error || !req->newptr) + return (error); + + switch (val) { + case FUSE_CACHE_UC: + case FUSE_CACHE_WT: + case FUSE_CACHE_WB: + *(int *)arg1 = val; + break; + default: + return (EDOM); + } + return (0); +} + static void fuse_vnode_init(struct vnode *vp, struct fuse_vnode_data *fvdat, uint64_t nodeid, enum vtype vtyp) @@ -375,7 +400,7 @@ fuse_vnode_refreshsize(struct vnode *vp, struct ucred struct vattr va; if ((fvdat->flag & FN_SIZECHANGE) != 0 || - fuse_data_cache_enable == 0 || + fuse_data_cache_mode == FUSE_CACHE_UC || (fuse_refresh_size == 0 && fvdat->filesize != 0)) return; From owner-svn-src-all@freebsd.org Fri Feb 15 22:55:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6636314ECDCF; Fri, 15 Feb 2019 22:55:14 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 01E1F8A41E; Fri, 15 Feb 2019 22:55:14 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EA66D2550D; Fri, 15 Feb 2019 22:55:13 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FMtDYY018344; Fri, 15 Feb 2019 22:55:13 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FMtDYJ018343; Fri, 15 Feb 2019 22:55:13 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902152255.x1FMtDYJ018343@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Fri, 15 Feb 2019 22:55:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344187 - head/sys/fs/fuse X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/sys/fs/fuse X-SVN-Commit-Revision: 344187 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 01E1F8A41E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 22:55:14 -0000 Author: cem Date: Fri Feb 15 22:55:13 2019 New Revision: 344187 URL: https://svnweb.freebsd.org/changeset/base/344187 Log: FUSE: Refresh cached file size when it changes (lookup) The cached fvdat->filesize is indepedent of the (mostly unused) cached_attrs, and we failed to update it when a cached (but perhaps inactive) vnode was found during VOP_LOOKUP to have a different size than cached. As noted in the code comment, this can occur in distributed filesystems or with other kinds of irregular file behavior (anything is possible in FUSE). We do something similar in fuse_vnop_getattr already. PR: 230258 (as reported in description; other issues explored in comments are not all resolved) Reported by: MooseFS FreeBSD Team Submitted by: Jakub Kruszona-Zawadzki (earlier version) Modified: head/sys/fs/fuse/fuse_vnops.c Modified: head/sys/fs/fuse/fuse_vnops.c ============================================================================== --- head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:52:49 2019 (r344186) +++ head/sys/fs/fuse/fuse_vnops.c Fri Feb 15 22:55:13 2019 (r344187) @@ -949,12 +949,45 @@ calldaemon: vref(dvp); *vpp = dvp; } else { + struct fuse_vnode_data *fvdat; + err = fuse_vnode_get(vnode_mount(dvp), feo, nid, dvp, &vp, cnp, IFTOVT(fattr->mode)); if (err) { goto out; } fuse_vnode_setparent(vp, dvp); + + /* + * In the case where we are looking up a FUSE node + * represented by an existing cached vnode, and the + * true size reported by FUSE_LOOKUP doesn't match + * the vnode's cached size, fix the vnode cache to + * match the real object size. + * + * This can occur via FUSE distributed filesystems, + * irregular files, etc. + */ + fvdat = VTOFUD(vp); + if (vnode_isreg(vp) && + fattr->size != fvdat->filesize) { + /* + * The FN_SIZECHANGE flag reflects a dirty + * append. If userspace lets us know our cache + * is invalid, that write was lost. (Dirty + * writes that do not cause append are also + * lost, but we don't detect them here.) + * + * XXX: Maybe disable WB caching on this mount. + */ + if (fvdat->flag & FN_SIZECHANGE) + printf("%s: WB cache incoherent on " + "%s!\n", __func__, + vnode_mount(vp)->mnt_stat.f_mntonname); + + (void)fuse_vnode_setsize(vp, cred, fattr->size); + fvdat->flag &= ~FN_SIZECHANGE; + } *vpp = vp; } From owner-svn-src-all@freebsd.org Fri Feb 15 23:10:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D942A14ED196; Fri, 15 Feb 2019 23:10:13 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from cell.glebi.us (glebi.us [198.45.61.253]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "cell.glebi.us", Issuer "cell.glebi.us" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 47E178AA3A; Fri, 15 Feb 2019 23:10:13 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from cell.glebi.us (localhost [127.0.0.1]) by cell.glebi.us (8.15.2/8.15.2) with ESMTPS id x1FNAAxm053331 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Fri, 15 Feb 2019 15:10:11 -0800 (PST) (envelope-from glebius@freebsd.org) Received: (from glebius@localhost) by cell.glebi.us (8.15.2/8.15.2/Submit) id x1FNAAiH053330; Fri, 15 Feb 2019 15:10:10 -0800 (PST) (envelope-from glebius@freebsd.org) X-Authentication-Warning: cell.glebi.us: glebius set sender to glebius@freebsd.org using -f Date: Fri, 15 Feb 2019 15:10:10 -0800 From: Gleb Smirnoff To: Enji Cooper Cc: Justin Hibbits , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r343030 - in head/sys: cam conf dev/md dev/nvme fs/fuse fs/nfsclient fs/smbfs kern sys ufs/ffs vm Message-ID: <20190215231010.GN83215@FreeBSD.org> References: <201901150102.x0F12Hlt025856@repo.freebsd.org> <20190213192450.32343d6a@ralga.knownspace> <20190214233410.GJ83215@FreeBSD.org> <416504EF-13F3-4CEF-89EC-60FBBFF5D29E@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <416504EF-13F3-4CEF-89EC-60FBBFF5D29E@gmail.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-Rspamd-Queue-Id: 47E178AA3A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.99)[-0.995,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 23:10:14 -0000 Enji, On Thu, Feb 14, 2019 at 05:12:21PM -0800, Enji Cooper wrote: E> > On Wed, Feb 13, 2019 at 07:24:50PM -0600, Justin Hibbits wrote: E> > J> This seems to break 32-bit platforms, or at least 32-bit book-e E> > J> powerpc, which has a limited KVA space (~500MB). It preallocates I've E> > J> seen over 2500 pbufs, at 128kB each, eating up over 300MB KVA, E> > J> leaving very little left for the rest of runtime. E> > J> E> > J> I spent a couple hours earlier today debugging with Mark Johnston, and E> > J> his consensus is that the vnode_pbuf_zone is too big on 32-bit E> > J> platforms. Unfortunately I know very little about this area, so can't E> > J> provide much extra insight, but can readily reproduce the issues I see E> > J> triggered by this change, so am willing to help where I can. E> > E> > Ok, let's roll back to old default on 32-bit platforms and somewhat E> > reduce the default on 64-bits. E> > E> > Can you please confirm that the patch attached works for you? E> E> Quick question: why was the value reduced by a factor of 4 on 64-bit platforms? Fair question. Replying to you and Bruce. This pool of pbufs is used for sendfile(2) and default value of nswbuf / 2 wasn't enough for modern several Gbit/s speeds. At Netflix we run with nswbuf * 8, since we run up to 100 Gbit/s of sendfile traffic. Together with new pbuf allocator I bumped the value up to what we use. Apparently that was overkill for 32-bit machines, so for them I fully switched it back to old value. Nobody is expected to use these machine as high performance web servers. Also, I decided to reduce the default for 64-bit machines as well. Not everybody runs 100 Gbit/s, but I'd like to see default FreeBSD (no tunables in loader.conf) to be able to run 10 Gbit/s and more. So I've chosen a middle ground between old value of nswbuf / 2 and the value we use at Netflix. P.S. Ideally, this needs to be autotuned. The problem is that now we need to pre-allocate pbufs. -- Gleb Smirnoff From owner-svn-src-all@freebsd.org Fri Feb 15 23:10:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 33D3B14ED1BA; Fri, 15 Feb 2019 23:10:29 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id 9C5DD8AB3A; Fri, 15 Feb 2019 23:10:28 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id 1C1D243499C; Sat, 16 Feb 2019 10:10:25 +1100 (AEDT) Date: Sat, 16 Feb 2019 10:10:21 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Stephen Hurd cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344162 - head/sys/net In-Reply-To: <201902151851.x1FIpi5O090646@repo.freebsd.org> Message-ID: <20190216085932.H4743@besplex.bde.org> References: <201902151851.x1FIpi5O090646@repo.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=UJetJGXy c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=4D6hHVmNwRxqVlg0ZgEA:9 a=MHp4VuOATcU7LnBb:21 a=NvwWWhmslw5eMDLA:21 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: 9C5DD8AB3A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.984,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 23:10:29 -0000 On Fri, 15 Feb 2019, Stephen Hurd wrote: > Log: > iflib: Improve return values of interrupt handlers. > > iflib was returning FILTER_HANDLED, in cases where FILTER_STRAY was more > correct. This potentially caused issues with shared legacy interrupts. > > Driver filters returning FILTER_STRAY are now properly handled. INTR_FILTER was a mistake that was backed out in r334170. Except it added hundreds if not thousands of FILTER_XXX returns from drivers, some apparently wrong so thee return values can't be checked much, and this wasn't backed out. There were a lot of uses under INTR_FILTER. Now the only uses seem to be: - a few in a KASSERT() in kern_intr.c - 1 in kern_intr.c for wrappers like in pccard and pccbb - 1 in subr_intr.c under INTR_SOLO. I intentionally left out return values from interrupt handlers when I unpessimized the interrupt system in ~1992 in 386BSD. They were rarely useful then since i386 interrupts were mostly unshareable due to being edge-triggered. Edge triggering requires every driver to check all interrupt sources for devices that it handles, since the interrupt won't repeat unless it is fully handled. This also makes sharing difficult. Sharing for PCI level-triggered interrupts was more common a few years later. INTR_FILTER was committed much later. I think it was committed just in time to rarely be useful, since MSI was fairly old then. It is only a minor optimization for shared interrupts to return from all interrupt handlers when one handler claims FILTER_HANDLED. This pessimizes all the non-shared interrupts (more in 1992 than now since CPUs are relatively much faster than i/o). Bruce From owner-svn-src-all@freebsd.org Fri Feb 15 23:14:45 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5F4C14ED446; Fri, 15 Feb 2019 23:14:44 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-it1-f169.google.com (mail-it1-f169.google.com [209.85.166.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8316E8B01A; Fri, 15 Feb 2019 23:14:44 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-it1-f169.google.com with SMTP id i2so27433228ite.5; Fri, 15 Feb 2019 15:14:44 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=G1OyFpbS5yuiKdFbE2EFXwLlQFyRS0dK9q5BGLD/RPI=; b=aSc2NNGRe8KRityBk9g/9OmI1leOAQdKxLS0LVAIA3LGK7dpuPLamWKMKO6WNaotk5 Zil+8v/IE8ZD8rcM7cBM2xj07D5Cwk8SGR1MKwZuIpaSX0DKbWWk8lleWS8r0+89GVth 6iTO9XaOs8qaJExwxz3zUDjnn+1M+/iDJQ2gvE7y2zQUb5PCkblP74ocn8iMHM0Xu29W KxaFYvhqkDn1/6idstOO3bqyTeiKFYxvpNwZScegnBHZ4O9qmdxCVxUoBpnClry1s8DL 2rxW2Z0GPv0rWmLNCBZcY+l1L2WSJn3trRzkUTXFdRHx8AomKLKY2iMVImBxF7P+ZFUC /g9g== X-Gm-Message-State: AHQUAuYz4wAiI76rVceuu0P1jc8fEcvP0XCQn6RF77ust8dEwqZpXEVZ wFxNlbgqt7DviT/dFba5TkqqUSuL X-Google-Smtp-Source: AHgI3IZMZlf+7bhk8uA4Jleem2IEcsg2yfESD1+wWxSxn7e1umN8hcddnFPlBp+OuB50BZrApEf5uA== X-Received: by 2002:a02:a515:: with SMTP id e21mr6727207jam.14.1550272477944; Fri, 15 Feb 2019 15:14:37 -0800 (PST) Received: from mail-it1-f175.google.com (mail-it1-f175.google.com. [209.85.166.175]) by smtp.gmail.com with ESMTPSA id l11sm2796885ion.52.2019.02.15.15.14.37 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Feb 2019 15:14:37 -0800 (PST) Received: by mail-it1-f175.google.com with SMTP id l66so17372778itg.3; Fri, 15 Feb 2019 15:14:37 -0800 (PST) X-Received: by 2002:a24:385:: with SMTP id e127mr6099278ite.32.1550272477675; Fri, 15 Feb 2019 15:14:37 -0800 (PST) MIME-Version: 1.0 References: <201902152248.x1FMmoXS013158@repo.freebsd.org> In-Reply-To: <201902152248.x1FMmoXS013158@repo.freebsd.org> Reply-To: cem@freebsd.org From: Conrad Meyer Date: Fri, 15 Feb 2019 15:14:27 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r344182 - head/share/mk To: Ed Maste Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 8316E8B01A X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.99)[-0.992,0]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 23:14:45 -0000 This one seems to have inadvertently removed a trailing parenthesis, introducing a syntax error: On Fri, Feb 15, 2019 at 2:49 PM Ed Maste wrote: > New Revision: 344182 > ... > ============================================================================== > --- head/share/mk/bsd.prog.mk Fri Feb 15 22:30:09 2019 (r344181) > +++ head/share/mk/bsd.prog.mk Fri Feb 15 22:48:50 2019 (r344182) > ... > @@ -74,7 +73,7 @@ TAGS+= package=${PACKAGE:Uruntime} > TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} > .endif > > -.if defined(NO_SHARED) && (${NO_SHARED} != "no" && ${NO_SHARED} != "NO") > +.if defined(NO_SHARED) && (${NO_SHARED:tl} != "no" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > LDFLAGS+= -static > .endif Best, Conrad From owner-svn-src-all@freebsd.org Fri Feb 15 23:36:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0344714EDADE; Fri, 15 Feb 2019 23:36:24 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 965F68BA7A; Fri, 15 Feb 2019 23:36:23 +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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 89B4625BF8; Fri, 15 Feb 2019 23:36:23 +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 x1FNaN57039323; Fri, 15 Feb 2019 23:36:23 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FNaNUo039321; Fri, 15 Feb 2019 23:36:23 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201902152336.x1FNaNUo039321@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Fri, 15 Feb 2019 23:36:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344188 - in head: lib/libc/sys sys/vm X-SVN-Group: head X-SVN-Commit-Author: glebius X-SVN-Commit-Paths: in head: lib/libc/sys sys/vm X-SVN-Commit-Revision: 344188 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 965F68BA7A X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 23:36:24 -0000 Author: glebius Date: Fri Feb 15 23:36:22 2019 New Revision: 344188 URL: https://svnweb.freebsd.org/changeset/base/344188 Log: For 32-bit machines rollback the default number of vnode pager pbufs back to the lever before r343030. For 64-bit machines reduce it slightly, too. Together with r343030 I bumped the limit up to the value we use at Netflix to serve 100 Gbit/s of sendfile traffic, and it probably isn't a good default. Provide a loader tunable to change vnode pager pbufs count. Document it. Modified: head/lib/libc/sys/sendfile.2 head/sys/vm/vnode_pager.c Modified: head/lib/libc/sys/sendfile.2 ============================================================================== --- head/lib/libc/sys/sendfile.2 Fri Feb 15 22:55:13 2019 (r344187) +++ head/lib/libc/sys/sendfile.2 Fri Feb 15 23:36:22 2019 (r344188) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 25, 2019 +.Dd February 15, 2019 .Dt SENDFILE 2 .Os .Sh NAME @@ -48,6 +48,7 @@ The system call sends a regular file or shared memory object specified by descriptor .Fa fd +h out a stream socket specified by descriptor .Fa s . .Pp @@ -224,6 +225,19 @@ implementation of .Fn sendfile is "zero-copy", meaning that it has been optimized so that copying of the file data is avoided. .Sh TUNING +.Ss physical paging buffers +.Fn sendfile +uses vnode pager to read file pages into memory. +The pager uses a pool of physical buffers to run its I/O operations. +When system runs out of pbufs, sendfile will block and report state +.Dq Li zonelimit . +Size of the pool can be tuned with +.Va vm.vnode_pbufs +.Xr loader.conf 5 +tunable and can be checked with +.Xr sysctl 8 +OID of the same name at runtime. +.Ss sendfile(2) buffers On some architectures, this system call internally uses a special .Fn sendfile buffer @@ -279,9 +293,11 @@ buffers usage respectively. These values may also be viewed through .Nm netstat Fl m . .Pp -If a value of zero is reported for -.Va kern.ipc.nsfbufs , -your architecture does not need to use +If +.Xr sysctl 8 +OID +.Va kern.ipc.nsfbufs +doesn't exist, your architecture does not need to use .Fn sendfile buffers because their task can be efficiently performed by the generic virtual memory structures. @@ -363,11 +379,13 @@ does not support The socket peer has closed the connection. .El .Sh SEE ALSO +.Xr loader.conf 5 , .Xr netstat 1 , .Xr open 2 , .Xr send 2 , .Xr socket 2 , .Xr writev 2 , +.Xr sysctl 8 , .Xr tuning 7 .Rs .%A K. Elmeleegy Modified: head/sys/vm/vnode_pager.c ============================================================================== --- head/sys/vm/vnode_pager.c Fri Feb 15 22:55:13 2019 (r344187) +++ head/sys/vm/vnode_pager.c Fri Feb 15 23:36:22 2019 (r344188) @@ -115,13 +115,23 @@ SYSCTL_PROC(_debug, OID_AUTO, vnode_domainset, CTLTYPE &vnode_domainset, 0, sysctl_handle_domainset, "A", "Default vnode NUMA policy"); +static int nvnpbufs; +SYSCTL_INT(_vm, OID_AUTO, vnode_pbufs, CTLFLAG_RDTUN | CTLFLAG_NOFETCH, + &nvnpbufs, 0, "number of physical buffers allocated for vnode pager"); + static uma_zone_t vnode_pbuf_zone; static void vnode_pager_init(void *dummy) { - vnode_pbuf_zone = pbuf_zsecond_create("vnpbuf", nswbuf * 8); +#ifdef __LP64__ + nvnpbufs = nswbuf * 2; +#else + nvnpbufs = nswbuf / 2; +#endif + TUNABLE_INT_FETCH("vm.vnode_pbufs", &nvnpbufs); + vnode_pbuf_zone = pbuf_zsecond_create("vnpbuf", nvnpbufs); } SYSINIT(vnode_pager, SI_SUB_CPU, SI_ORDER_ANY, vnode_pager_init, NULL); From owner-svn-src-all@freebsd.org Fri Feb 15 23:41:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 301BC14EDDA9; Fri, 15 Feb 2019 23:41:55 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BEA398BED6; Fri, 15 Feb 2019 23:41:54 +0000 (UTC) (envelope-from cem@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A8FEE25D67; Fri, 15 Feb 2019 23:41:54 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1FNfsce042763; Fri, 15 Feb 2019 23:41:54 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FNfsDR042762; Fri, 15 Feb 2019 23:41:54 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201902152341.x1FNfsDR042762@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Fri, 15 Feb 2019 23:41:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344189 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: cem X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 344189 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BEA398BED6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 23:41:55 -0000 Author: cem Date: Fri Feb 15 23:41:54 2019 New Revision: 344189 URL: https://svnweb.freebsd.org/changeset/base/344189 Log: Fixup bsd.prog.mk after r344182 Reported by: tinderbox Sponsored by: Dell EMC Isilon Modified: head/share/mk/bsd.prog.mk Modified: head/share/mk/bsd.prog.mk ============================================================================== --- head/share/mk/bsd.prog.mk Fri Feb 15 23:36:22 2019 (r344188) +++ head/share/mk/bsd.prog.mk Fri Feb 15 23:41:54 2019 (r344189) @@ -73,7 +73,7 @@ TAGS+= package=${PACKAGE:Uruntime} TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} .endif -.if defined(NO_SHARED) && (${NO_SHARED:tl} != "no" +.if defined(NO_SHARED) && ${NO_SHARED:tl} != "no" LDFLAGS+= -static .endif From owner-svn-src-all@freebsd.org Fri Feb 15 23:46:36 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E89EA14EDECD; Fri, 15 Feb 2019 23:46:35 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8EAEC8C153; Fri, 15 Feb 2019 23:46:35 +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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7FC0C25DAB; Fri, 15 Feb 2019 23:46:35 +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 x1FNkZWF044773; Fri, 15 Feb 2019 23:46:35 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1FNkZRW044772; Fri, 15 Feb 2019 23:46:35 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201902152346.x1FNkZRW044772@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Fri, 15 Feb 2019 23:46:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344190 - head/lib/libc/sys X-SVN-Group: head X-SVN-Commit-Author: glebius X-SVN-Commit-Paths: head/lib/libc/sys X-SVN-Commit-Revision: 344190 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8EAEC8C153 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 23:46:36 -0000 Author: glebius Date: Fri Feb 15 23:46:34 2019 New Revision: 344190 URL: https://svnweb.freebsd.org/changeset/base/344190 Log: Imaginary cat jumped my keyboard! Modified: head/lib/libc/sys/sendfile.2 Modified: head/lib/libc/sys/sendfile.2 ============================================================================== --- head/lib/libc/sys/sendfile.2 Fri Feb 15 23:41:54 2019 (r344189) +++ head/lib/libc/sys/sendfile.2 Fri Feb 15 23:46:34 2019 (r344190) @@ -48,7 +48,6 @@ The system call sends a regular file or shared memory object specified by descriptor .Fa fd -h out a stream socket specified by descriptor .Fa s . .Pp From owner-svn-src-all@freebsd.org Sat Feb 16 00:15:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E73A414EF2AE; Sat, 16 Feb 2019 00:15:03 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 827988DD94; Sat, 16 Feb 2019 00:15:03 +0000 (UTC) (envelope-from imp@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 63F51262D7; Sat, 16 Feb 2019 00:15:03 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0F34C060778; Sat, 16 Feb 2019 00:15:03 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0F3EJ060777; Sat, 16 Feb 2019 00:15:03 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201902160015.x1G0F3EJ060777@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sat, 16 Feb 2019 00:15:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344191 - head/sbin/nvmecontrol X-SVN-Group: head X-SVN-Commit-Author: imp X-SVN-Commit-Paths: head/sbin/nvmecontrol X-SVN-Commit-Revision: 344191 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 827988DD94 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.972,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:15:04 -0000 Author: imp Date: Sat Feb 16 00:15:02 2019 New Revision: 344191 URL: https://svnweb.freebsd.org/changeset/base/344191 Log: Remove write-only s_flag. Modified: head/sbin/nvmecontrol/firmware.c Modified: head/sbin/nvmecontrol/firmware.c ============================================================================== --- head/sbin/nvmecontrol/firmware.c Fri Feb 15 23:46:34 2019 (r344190) +++ head/sbin/nvmecontrol/firmware.c Sat Feb 16 00:15:02 2019 (r344191) @@ -177,7 +177,7 @@ static void firmware(const struct nvme_function *nf, int argc, char *argv[]) { int fd = -1, slot = 0; - int a_flag, s_flag, f_flag; + int a_flag, f_flag; int activate_action, reboot_required; int opt; char *p, *image = NULL; @@ -188,7 +188,7 @@ firmware(const struct nvme_function *nf, int argc, cha uint8_t fw_slot1_ro, fw_num_slots; struct nvme_controller_data cdata; - a_flag = s_flag = f_flag = false; + a_flag = f_flag = false; while ((opt = getopt(argc, argv, "af:s:")) != -1) { switch (opt) { @@ -214,7 +214,6 @@ firmware(const struct nvme_function *nf, int argc, cha "7.\n", optarg); usage(nf); } - s_flag = true; break; case 'f': image = optarg; From owner-svn-src-all@freebsd.org Sat Feb 16 00:15:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3A64314EF32C; Sat, 16 Feb 2019 00:15:56 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D60508DEED; Sat, 16 Feb 2019 00:15:55 +0000 (UTC) (envelope-from sef@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C7E74262D8; Sat, 16 Feb 2019 00:15:55 +0000 (UTC) (envelope-from sef@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0Ft6X060867; Sat, 16 Feb 2019 00:15:55 GMT (envelope-from sef@FreeBSD.org) Received: (from sef@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0FtaM060864; Sat, 16 Feb 2019 00:15:55 GMT (envelope-from sef@FreeBSD.org) Message-Id: <201902160015.x1G0FtaM060864@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sef set sender to sef@FreeBSD.org using -f From: Sean Eric Fagan Date: Sat, 16 Feb 2019 00:15:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344192 - in head: libexec/rc/rc.d usr.sbin/nfsd X-SVN-Group: head X-SVN-Commit-Author: sef X-SVN-Commit-Paths: in head: libexec/rc/rc.d usr.sbin/nfsd X-SVN-Commit-Revision: 344192 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D60508DEED X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:15:56 -0000 Author: sef Date: Sat Feb 16 00:15:54 2019 New Revision: 344192 URL: https://svnweb.freebsd.org/changeset/base/344192 Log: Add support for a virtual hostname to nfsd Specifically, this allows (via "-V vhostname") telling nfsd what principal to use, instead of the hostname. This is used at iXsystems for fail-over in HA systems. Reviewed by: macklem Sponsored by: iXsystems Inc. Differential Revision: https://reviews.freebsd.org/D19191 Modified: head/libexec/rc/rc.d/nfsd head/usr.sbin/nfsd/nfsd.8 head/usr.sbin/nfsd/nfsd.c Modified: head/libexec/rc/rc.d/nfsd ============================================================================== --- head/libexec/rc/rc.d/nfsd Sat Feb 16 00:15:02 2019 (r344191) +++ head/libexec/rc/rc.d/nfsd Sat Feb 16 00:15:54 2019 (r344192) @@ -13,6 +13,7 @@ name="nfsd" desc="Remote NFS server" rcvar="nfs_server_enable" command="/usr/sbin/${name}" +nfs_server_vhost="" load_rc_config $name start_precmd="nfsd_precmd" @@ -20,6 +21,7 @@ sig_stop="USR1" nfsd_precmd() { + local _vhost rc_flags="${nfs_server_flags}" # Load the modules now, so that the vfs.nfsd sysctl @@ -46,6 +48,9 @@ nfsd_precmd() force_depend rpcbind || return 1 force_depend mountd || return 1 + if [ -n "${nfs_server_vhost}" ]; then + command_args="-V \"${nfs_server_vhost}\"" + fi } run_rc_command "$1" Modified: head/usr.sbin/nfsd/nfsd.8 ============================================================================== --- head/usr.sbin/nfsd/nfsd.8 Sat Feb 16 00:15:02 2019 (r344191) +++ head/usr.sbin/nfsd/nfsd.8 Sat Feb 16 00:15:54 2019 (r344192) @@ -28,7 +28,7 @@ .\" @(#)nfsd.8 8.4 (Berkeley) 3/29/95 .\" $FreeBSD$ .\" -.Dd August 5, 2018 +.Dd February 14, 2019 .Dt NFSD 8 .Os .Sh NAME @@ -43,6 +43,7 @@ server .Op Fl h Ar bindip .Op Fl p Ar pnfs_setup .Op Fl m Ar mirror_level +.Op Fl V Ar virtual_hostname .Op Fl Fl maxthreads Ar max_threads .Op Fl Fl minthreads Ar min_threads .Sh DESCRIPTION @@ -78,6 +79,9 @@ Unregister the service with .Xr rpcbind 8 without creating any servers. +.It Fl V Ar virtual_hostname +Specifies a hostname to be used as a principal name, instead of +the default hostname. .It Fl n Ar threads Specifies how many servers to create. This option is equivalent to specifying .Fl Fl maxthreads Modified: head/usr.sbin/nfsd/nfsd.c ============================================================================== --- head/usr.sbin/nfsd/nfsd.c Sat Feb 16 00:15:02 2019 (r344191) +++ head/usr.sbin/nfsd/nfsd.c Sat Feb 16 00:15:54 2019 (r344192) @@ -122,7 +122,7 @@ static void nonfs(int); static void reapchild(int); static int setbindhost(struct addrinfo **ia, const char *bindhost, struct addrinfo hints); -static void start_server(int, struct nfsd_nfsd_args *); +static void start_server(int, struct nfsd_nfsd_args *, const char *vhost); static void unregistration(void); static void usage(void); static void open_stable(int *, int *); @@ -176,6 +176,7 @@ main(int argc, char **argv) char **bindhost = NULL; pid_t pid; struct nfsd_nfsd_args nfsdargs; + const char *vhostname = NULL; nfsdargs.mirrorcnt = 1; nfsdargs.addr = NULL; @@ -183,16 +184,24 @@ main(int argc, char **argv) nfsdcnt = DEFNFSDCNT; unregister = reregister = tcpflag = maxsock = 0; bindanyflag = udpflag = connect_type_cnt = bindhostc = 0; - getopt_shortopts = "ah:n:rdtuep:m:"; + getopt_shortopts = "ah:n:rdtuep:m:V:"; getopt_usage = "usage:\n" " nfsd [-ardtue] [-h bindip]\n" " [-n numservers] [--minthreads #] [--maxthreads #]\n" - " [-p/--pnfs dsserver0:/dsserver0-mounted-on-dir,...," - "dsserverN:/dsserverN-mounted-on-dir] [-m mirrorlevel]\n"; + " [-p/--pnfs dsserver0:/dsserver0-mounted-on-dir,...,\n" + " [-V virtual_hostname]\n" + " dsserverN:/dsserverN-mounted-on-dir] [-m mirrorlevel]\n"; while ((ch = getopt_long(argc, argv, getopt_shortopts, longopts, &longindex)) != -1) switch (ch) { + case 'V': + if (strlen(optarg) <= MAXHOSTNAMELEN) + vhostname = optarg; + else + warnx("Virtual host name (%s) is too long", + optarg); + break; case 'a': bindanyflag = 1; break; @@ -473,7 +482,7 @@ main(int argc, char **argv) } else { (void)signal(SIGUSR1, child_cleanup); setproctitle("server"); - start_server(0, &nfsdargs); + start_server(0, &nfsdargs, vhostname); } } @@ -790,7 +799,7 @@ main(int argc, char **argv) * a "server" too. start_server will not return. */ if (!tcpflag) - start_server(1, &nfsdargs); + start_server(1, &nfsdargs, vhostname); /* * Loop forever accepting connections and passing the sockets @@ -987,7 +996,7 @@ get_tuned_nfsdcount(void) } static void -start_server(int master, struct nfsd_nfsd_args *nfsdargp) +start_server(int master, struct nfsd_nfsd_args *nfsdargp, const char *vhost) { char principal[MAXHOSTNAMELEN + 5]; int status, error; @@ -995,7 +1004,10 @@ start_server(int master, struct nfsd_nfsd_args *nfsdar struct addrinfo *aip, hints; status = 0; - gethostname(hostname, sizeof (hostname)); + if (vhost == NULL) + gethostname(hostname, sizeof (hostname)); + else + strlcpy(hostname, vhost, sizeof (hostname)); snprintf(principal, sizeof (principal), "nfs@%s", hostname); if ((cp = strchr(hostname, '.')) == NULL || *(cp + 1) == '\0') { From owner-svn-src-all@freebsd.org Sat Feb 16 00:37:09 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8FFAB14EFA20; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 33F0C8E958; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 29A012663D; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0b9Ag071421; Sat, 16 Feb 2019 00:37:09 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0b9h9071420; Sat, 16 Feb 2019 00:37:09 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160037.x1G0b9h9071420@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 00:37:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344193 - in stable: 10/usr.bin/newkey 11/usr.bin/newkey 12/usr.bin/newkey X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/usr.bin/newkey 11/usr.bin/newkey 12/usr.bin/newkey X-SVN-Commit-Revision: 344193 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 33F0C8E958 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:37:09 -0000 Author: avos Date: Sat Feb 16 00:37:08 2019 New Revision: 344193 URL: https://svnweb.freebsd.org/changeset/base/344193 Log: MFC r343909: newkey(8): fix 'tmpname' memory leak (always) and input file descriptor leak when output file cannot be opened PR: 201732 Reported by: David Binderman Modified: stable/11/usr.bin/newkey/update.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/usr.bin/newkey/update.c stable/12/usr.bin/newkey/update.c Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/usr.bin/newkey/update.c ============================================================================== --- stable/11/usr.bin/newkey/update.c Sat Feb 16 00:15:54 2019 (r344192) +++ stable/11/usr.bin/newkey/update.c Sat Feb 16 00:37:08 2019 (r344193) @@ -266,11 +266,14 @@ localupdate(char *name, char *filename, u_int op, u_in sprintf(tmpname, "%s.tmp", filename); rf = fopen(filename, "r"); if (rf == NULL) { - return (ERR_READ); + err = ERR_READ; + goto cleanup; } wf = fopen(tmpname, "w"); if (wf == NULL) { - return (ERR_WRITE); + fclose(rf); + err = ERR_WRITE; + goto cleanup; } err = -1; while (fgets(line, sizeof (line), rf)) { @@ -310,13 +313,18 @@ localupdate(char *name, char *filename, u_int op, u_in fclose(rf); if (err == 0) { if (rename(tmpname, filename) < 0) { - return (ERR_DBASE); + err = ERR_DBASE; + goto cleanup; } } else { if (unlink(tmpname) < 0) { - return (ERR_DBASE); + err = ERR_DBASE; + goto cleanup; } } + +cleanup: + free(tmpname); return (err); } From owner-svn-src-all@freebsd.org Sat Feb 16 00:37:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0E21614EFA29; Sat, 16 Feb 2019 00:37:10 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9F65D8E95C; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9424B2663E; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0b9uO071427; Sat, 16 Feb 2019 00:37:09 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0b9hg071426; Sat, 16 Feb 2019 00:37:09 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160037.x1G0b9hg071426@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 00:37:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r344193 - in stable: 10/usr.bin/newkey 11/usr.bin/newkey 12/usr.bin/newkey X-SVN-Group: stable-10 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/usr.bin/newkey 11/usr.bin/newkey 12/usr.bin/newkey X-SVN-Commit-Revision: 344193 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9F65D8E95C X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:37:10 -0000 Author: avos Date: Sat Feb 16 00:37:08 2019 New Revision: 344193 URL: https://svnweb.freebsd.org/changeset/base/344193 Log: MFC r343909: newkey(8): fix 'tmpname' memory leak (always) and input file descriptor leak when output file cannot be opened PR: 201732 Reported by: David Binderman Modified: stable/10/usr.bin/newkey/update.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/usr.bin/newkey/update.c stable/12/usr.bin/newkey/update.c Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/usr.bin/newkey/update.c ============================================================================== --- stable/10/usr.bin/newkey/update.c Sat Feb 16 00:15:54 2019 (r344192) +++ stable/10/usr.bin/newkey/update.c Sat Feb 16 00:37:08 2019 (r344193) @@ -266,11 +266,14 @@ localupdate(char *name, char *filename, u_int op, u_in sprintf(tmpname, "%s.tmp", filename); rf = fopen(filename, "r"); if (rf == NULL) { - return (ERR_READ); + err = ERR_READ; + goto cleanup; } wf = fopen(tmpname, "w"); if (wf == NULL) { - return (ERR_WRITE); + fclose(rf); + err = ERR_WRITE; + goto cleanup; } err = -1; while (fgets(line, sizeof (line), rf)) { @@ -310,13 +313,18 @@ localupdate(char *name, char *filename, u_int op, u_in fclose(rf); if (err == 0) { if (rename(tmpname, filename) < 0) { - return (ERR_DBASE); + err = ERR_DBASE; + goto cleanup; } } else { if (unlink(tmpname) < 0) { - return (ERR_DBASE); + err = ERR_DBASE; + goto cleanup; } } + +cleanup: + free(tmpname); return (err); } From owner-svn-src-all@freebsd.org Sat Feb 16 00:37:10 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7068C14EFA34; Sat, 16 Feb 2019 00:37:10 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D6AA08E95E; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CBF932663F; Sat, 16 Feb 2019 00:37:09 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0b9jD071433; Sat, 16 Feb 2019 00:37:09 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0b9Tp071432; Sat, 16 Feb 2019 00:37:09 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160037.x1G0b9Tp071432@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 00:37:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344193 - in stable: 10/usr.bin/newkey 11/usr.bin/newkey 12/usr.bin/newkey X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/usr.bin/newkey 11/usr.bin/newkey 12/usr.bin/newkey X-SVN-Commit-Revision: 344193 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D6AA08E95E X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:37:10 -0000 Author: avos Date: Sat Feb 16 00:37:08 2019 New Revision: 344193 URL: https://svnweb.freebsd.org/changeset/base/344193 Log: MFC r343909: newkey(8): fix 'tmpname' memory leak (always) and input file descriptor leak when output file cannot be opened PR: 201732 Reported by: David Binderman Modified: stable/12/usr.bin/newkey/update.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/usr.bin/newkey/update.c stable/11/usr.bin/newkey/update.c Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/usr.bin/newkey/update.c ============================================================================== --- stable/12/usr.bin/newkey/update.c Sat Feb 16 00:15:54 2019 (r344192) +++ stable/12/usr.bin/newkey/update.c Sat Feb 16 00:37:08 2019 (r344193) @@ -266,11 +266,14 @@ localupdate(char *name, char *filename, u_int op, u_in sprintf(tmpname, "%s.tmp", filename); rf = fopen(filename, "r"); if (rf == NULL) { - return (ERR_READ); + err = ERR_READ; + goto cleanup; } wf = fopen(tmpname, "w"); if (wf == NULL) { - return (ERR_WRITE); + fclose(rf); + err = ERR_WRITE; + goto cleanup; } err = -1; while (fgets(line, sizeof (line), rf)) { @@ -310,13 +313,18 @@ localupdate(char *name, char *filename, u_int op, u_in fclose(rf); if (err == 0) { if (rename(tmpname, filename) < 0) { - return (ERR_DBASE); + err = ERR_DBASE; + goto cleanup; } } else { if (unlink(tmpname) < 0) { - return (ERR_DBASE); + err = ERR_DBASE; + goto cleanup; } } + +cleanup: + free(tmpname); return (err); } From owner-svn-src-all@freebsd.org Sat Feb 16 00:38:26 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 64FFC14EFBF8; Sat, 16 Feb 2019 00:38:26 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 07B2C8ED08; Sat, 16 Feb 2019 00:38:26 +0000 (UTC) (envelope-from eugen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EFDD926643; Sat, 16 Feb 2019 00:38:25 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0cPGo071554; Sat, 16 Feb 2019 00:38:25 GMT (envelope-from eugen@FreeBSD.org) Received: (from eugen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0cP07071553; Sat, 16 Feb 2019 00:38:25 GMT (envelope-from eugen@FreeBSD.org) Message-Id: <201902160038.x1G0cP07071553@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eugen set sender to eugen@FreeBSD.org using -f From: Eugene Grosbein Date: Sat, 16 Feb 2019 00:38:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344194 - stable/12/usr.sbin/jail X-SVN-Group: stable-12 X-SVN-Commit-Author: eugen X-SVN-Commit-Paths: stable/12/usr.sbin/jail X-SVN-Commit-Revision: 344194 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 07B2C8ED08 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:38:26 -0000 Author: eugen Date: Sat Feb 16 00:38:25 2019 New Revision: 344194 URL: https://svnweb.freebsd.org/changeset/base/344194 Log: MFC r343112: jail(8): stop crashing with SIGSEGV inside run_command() function while processing not entirely correct jail.conf(5) file having something like "ip4.addr = 127.0.0.1;" and no "ip4 = ...;" so extrap variable stays NULL. Reported by: marck Modified: stable/12/usr.sbin/jail/command.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/jail/command.c ============================================================================== --- stable/12/usr.sbin/jail/command.c Sat Feb 16 00:37:08 2019 (r344193) +++ stable/12/usr.sbin/jail/command.c Sat Feb 16 00:38:25 2019 (r344194) @@ -374,7 +374,7 @@ run_command(struct cfjail *j) argc = 4; } - if (!down) { + if (!down && extrap != NULL) { for (cs = strtok(extrap, " "); cs; cs = strtok(NULL, " ")) { size_t len = strlen(cs) + 1; From owner-svn-src-all@freebsd.org Sat Feb 16 00:40:04 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D603014EFD72; Sat, 16 Feb 2019 00:40:04 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7A7048EF41; Sat, 16 Feb 2019 00:40:04 +0000 (UTC) (envelope-from eugen@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 645B626649; Sat, 16 Feb 2019 00:40:04 +0000 (UTC) (envelope-from eugen@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G0e4C7071716; Sat, 16 Feb 2019 00:40:04 GMT (envelope-from eugen@FreeBSD.org) Received: (from eugen@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G0e4CY071715; Sat, 16 Feb 2019 00:40:04 GMT (envelope-from eugen@FreeBSD.org) Message-Id: <201902160040.x1G0e4CY071715@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eugen set sender to eugen@FreeBSD.org using -f From: Eugene Grosbein Date: Sat, 16 Feb 2019 00:40:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344195 - stable/11/usr.sbin/jail X-SVN-Group: stable-11 X-SVN-Commit-Author: eugen X-SVN-Commit-Paths: stable/11/usr.sbin/jail X-SVN-Commit-Revision: 344195 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 7A7048EF41 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 00:40:05 -0000 Author: eugen Date: Sat Feb 16 00:40:03 2019 New Revision: 344195 URL: https://svnweb.freebsd.org/changeset/base/344195 Log: MFC r343112: jail(8): stop crashing with SIGSEGV inside run_command() function while processing not entirely correct jail.conf(5) file having something like "ip4.addr = 127.0.0.1;" and no "ip4 = ...;" so extrap variable stays NULL. Reported by: marck Modified: stable/11/usr.sbin/jail/command.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/jail/command.c ============================================================================== --- stable/11/usr.sbin/jail/command.c Sat Feb 16 00:38:25 2019 (r344194) +++ stable/11/usr.sbin/jail/command.c Sat Feb 16 00:40:03 2019 (r344195) @@ -374,7 +374,7 @@ run_command(struct cfjail *j) argc = 4; } - if (!down) { + if (!down && extrap != NULL) { for (cs = strtok(extrap, " "); cs; cs = strtok(NULL, " ")) { size_t len = strlen(cs) + 1; From owner-svn-src-all@freebsd.org Sat Feb 16 01:05:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 294BD14F0EBF; Sat, 16 Feb 2019 01:05:24 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BFCA869C24; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B350E26B6C; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G15NsN087671; Sat, 16 Feb 2019 01:05:23 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G15NEc087670; Sat, 16 Feb 2019 01:05:23 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160105.x1G15NEc087670@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 01:05:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344196 - in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Commit-Revision: 344196 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BFCA869C24 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 01:05:24 -0000 Author: avos Date: Sat Feb 16 01:05:22 2019 New Revision: 344196 URL: https://svnweb.freebsd.org/changeset/base/344196 Log: MFC r343980: ifconfig(8): display 802.11n rates correctly for 'roam:rate' parameter Modified: stable/12/sbin/ifconfig/ifieee80211.c Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sbin/ifconfig/ifieee80211.c stable/11/sbin/ifconfig/ifieee80211.c Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/12/sbin/ifconfig/ifieee80211.c Sat Feb 16 00:40:03 2019 (r344195) +++ stable/12/sbin/ifconfig/ifieee80211.c Sat Feb 16 01:05:22 2019 (r344196) @@ -5080,7 +5080,9 @@ end: LINE_CHECK("roam:rssi %u.5", rp->rssi/2); else LINE_CHECK("roam:rssi %u", rp->rssi/2); - LINE_CHECK("roam:rate %u", rp->rate/2); + LINE_CHECK("roam:rate %s%u", + (rp->rate & IEEE80211_RATE_MCS) ? "MCS " : "", + get_rate_value(rp->rate)); } else { LINE_BREAK(); list_roam(s); From owner-svn-src-all@freebsd.org Sat Feb 16 01:05:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A61BB14F0EB6; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 465D569C22; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2A1A526B6A; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G15Mfw087659; Sat, 16 Feb 2019 01:05:22 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G15MEg087658; Sat, 16 Feb 2019 01:05:22 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160105.x1G15MEg087658@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 01:05:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344196 - in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Group: stable-11 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Commit-Revision: 344196 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 465D569C22 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 01:05:23 -0000 Author: avos Date: Sat Feb 16 01:05:22 2019 New Revision: 344196 URL: https://svnweb.freebsd.org/changeset/base/344196 Log: MFC r343980: ifconfig(8): display 802.11n rates correctly for 'roam:rate' parameter Modified: stable/11/sbin/ifconfig/ifieee80211.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/sbin/ifconfig/ifieee80211.c stable/12/sbin/ifconfig/ifieee80211.c Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/11/sbin/ifconfig/ifieee80211.c Sat Feb 16 00:40:03 2019 (r344195) +++ stable/11/sbin/ifconfig/ifieee80211.c Sat Feb 16 01:05:22 2019 (r344196) @@ -4699,7 +4699,9 @@ end: LINE_CHECK("roam:rssi %u.5", rp->rssi/2); else LINE_CHECK("roam:rssi %u", rp->rssi/2); - LINE_CHECK("roam:rate %u", rp->rate/2); + LINE_CHECK("roam:rate %s%u", + (rp->rate & IEEE80211_RATE_MCS) ? "MCS " : "", + get_rate_value(rp->rate)); } else { LINE_BREAK(); list_roam(s); From owner-svn-src-all@freebsd.org Sat Feb 16 01:05:23 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CAAA314F0EB7; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 724A569C23; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 61F0326B6B; Sat, 16 Feb 2019 01:05:23 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G15NYp087665; Sat, 16 Feb 2019 01:05:23 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G15Nd0087664; Sat, 16 Feb 2019 01:05:23 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160105.x1G15Nd0087664@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 01:05:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r344196 - in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Group: stable-10 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in stable: 10/sbin/ifconfig 11/sbin/ifconfig 12/sbin/ifconfig X-SVN-Commit-Revision: 344196 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 724A569C23 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.970,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 01:05:24 -0000 Author: avos Date: Sat Feb 16 01:05:22 2019 New Revision: 344196 URL: https://svnweb.freebsd.org/changeset/base/344196 Log: MFC r343980: ifconfig(8): display 802.11n rates correctly for 'roam:rate' parameter Modified: stable/10/sbin/ifconfig/ifieee80211.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/sbin/ifconfig/ifieee80211.c stable/12/sbin/ifconfig/ifieee80211.c Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/sbin/ifconfig/ifieee80211.c ============================================================================== --- stable/10/sbin/ifconfig/ifieee80211.c Sat Feb 16 00:40:03 2019 (r344195) +++ stable/10/sbin/ifconfig/ifieee80211.c Sat Feb 16 01:05:22 2019 (r344196) @@ -4557,7 +4557,9 @@ end: LINE_CHECK("roam:rssi %u.5", rp->rssi/2); else LINE_CHECK("roam:rssi %u", rp->rssi/2); - LINE_CHECK("roam:rate %u", rp->rate/2); + LINE_CHECK("roam:rate %s%u", + (rp->rate & IEEE80211_RATE_MCS) ? "MCS " : "", + get_rate_value(rp->rate)); } else { LINE_BREAK(); list_roam(s); From owner-svn-src-all@freebsd.org Sat Feb 16 01:19:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E44E214F222F; Sat, 16 Feb 2019 01:19:15 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8F39C6AD89; Sat, 16 Feb 2019 01:19:15 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8338826F45; Sat, 16 Feb 2019 01:19:15 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G1JFJW093168; Sat, 16 Feb 2019 01:19:15 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G1JEsa093164; Sat, 16 Feb 2019 01:19:14 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160119.x1G1JEsa093164@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 01:19:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344197 - stable/12/sys/dev/iwn X-SVN-Group: stable-12 X-SVN-Commit-Author: avos X-SVN-Commit-Paths: stable/12/sys/dev/iwn X-SVN-Commit-Revision: 344197 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 8F39C6AD89 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.99)[-0.987,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 01:19:16 -0000 Author: avos Date: Sat Feb 16 01:19:14 2019 New Revision: 344197 URL: https://svnweb.freebsd.org/changeset/base/344197 Log: MFC r343094: iwn(4): (partially) rewrite A-MPDU Tx path The change fixes ifnet counters and improves Tx stability when A-MPDU is used. MFC r343292: iwn(4): drop i_seq field initialization for A-MPDU frames It is done by net80211 since r319460. PR: 192641, 210211 Reviewed by: adrian, dhw Differential Revision: https://reviews.freebsd.org/D10728 Modified: stable/12/sys/dev/iwn/if_iwn.c stable/12/sys/dev/iwn/if_iwn_debug.h stable/12/sys/dev/iwn/if_iwnreg.h stable/12/sys/dev/iwn/if_iwnvar.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/iwn/if_iwn.c ============================================================================== --- stable/12/sys/dev/iwn/if_iwn.c Sat Feb 16 01:05:22 2019 (r344196) +++ stable/12/sys/dev/iwn/if_iwn.c Sat Feb 16 01:19:14 2019 (r344197) @@ -168,6 +168,7 @@ static int iwn_alloc_tx_ring(struct iwn_softc *, struc int); static void iwn_reset_tx_ring(struct iwn_softc *, struct iwn_tx_ring *); static void iwn_free_tx_ring(struct iwn_softc *, struct iwn_tx_ring *); +static void iwn_check_tx_ring(struct iwn_softc *, int); static void iwn5000_ict_reset(struct iwn_softc *); static int iwn_read_eeprom(struct iwn_softc *, uint8_t macaddr[IEEE80211_ADDR_LEN]); @@ -199,6 +200,8 @@ static void iwn_calib_timeout(void *); static void iwn_rx_phy(struct iwn_softc *, struct iwn_rx_desc *); static void iwn_rx_done(struct iwn_softc *, struct iwn_rx_desc *, struct iwn_rx_data *); +static void iwn_agg_tx_complete(struct iwn_softc *, struct iwn_tx_ring *, + int, int, int); static void iwn_rx_compressed_ba(struct iwn_softc *, struct iwn_rx_desc *); static void iwn5000_rx_calib_results(struct iwn_softc *, struct iwn_rx_desc *); @@ -207,10 +210,13 @@ static void iwn4965_tx_done(struct iwn_softc *, struct struct iwn_rx_data *); static void iwn5000_tx_done(struct iwn_softc *, struct iwn_rx_desc *, struct iwn_rx_data *); +static void iwn_adj_ampdu_ptr(struct iwn_softc *, struct iwn_tx_ring *); static void iwn_tx_done(struct iwn_softc *, struct iwn_rx_desc *, int, int, uint8_t); -static void iwn_ampdu_tx_done(struct iwn_softc *, int, int, int, int, int, - void *); +static int iwn_ampdu_check_bitmap(uint64_t, int, int); +static int iwn_ampdu_index_check(struct iwn_softc *, struct iwn_tx_ring *, + uint64_t, int, int); +static void iwn_ampdu_tx_done(struct iwn_softc *, int, int, int, void *); static void iwn_cmd_done(struct iwn_softc *, struct iwn_rx_desc *); static void iwn_notif_intr(struct iwn_softc *); static void iwn_wakeup_intr(struct iwn_softc *); @@ -2069,6 +2075,8 @@ iwn_reset_tx_ring(struct iwn_softc *sc, struct iwn_tx_ ieee80211_free_node(data->ni); data->ni = NULL; } + data->remapped = 0; + data->long_retries = 0; } /* Clear TX descriptors. */ memset(ring->desc, 0, ring->desc_dma.size); @@ -2108,6 +2116,42 @@ iwn_free_tx_ring(struct iwn_softc *sc, struct iwn_tx_r } static void +iwn_check_tx_ring(struct iwn_softc *sc, int qid) +{ + struct iwn_tx_ring *ring = &sc->txq[qid]; + + KASSERT(ring->queued >= 0, ("%s: ring->queued (%d) for queue %d < 0!", + __func__, ring->queued, qid)); + + if (qid >= sc->firstaggqueue) { + struct iwn_ops *ops = &sc->ops; + struct ieee80211_tx_ampdu *tap = sc->qid2tap[qid]; + + if (ring->queued == 0 && !IEEE80211_AMPDU_RUNNING(tap)) { + uint16_t ssn = tap->txa_start & 0xfff; + uint8_t tid = tap->txa_tid; + int *res = tap->txa_private; + + iwn_nic_lock(sc); + ops->ampdu_tx_stop(sc, qid, tid, ssn); + iwn_nic_unlock(sc); + + sc->qid2tap[qid] = NULL; + free(res, M_DEVBUF); + } + } + + if (ring->queued < IWN_TX_RING_LOMARK) { + sc->qfullmsk &= ~(1 << qid); + + if (ring->queued == 0) + sc->sc_tx_timer = 0; + else + sc->sc_tx_timer = 5; + } +} + +static void iwn5000_ict_reset(struct iwn_softc *sc) { /* Disable interrupts. */ @@ -3163,104 +3207,129 @@ iwn_rx_done(struct iwn_softc *sc, struct iwn_rx_desc * } -/* Process an incoming Compressed BlockAck. */ static void -iwn_rx_compressed_ba(struct iwn_softc *sc, struct iwn_rx_desc *desc) +iwn_agg_tx_complete(struct iwn_softc *sc, struct iwn_tx_ring *ring, int tid, + int idx, int success) { struct ieee80211_ratectl_tx_status *txs = &sc->sc_txs; - struct iwn_ops *ops = &sc->ops; + struct iwn_tx_data *data = &ring->data[idx]; struct iwn_node *wn; + struct mbuf *m; struct ieee80211_node *ni; + + KASSERT(data->ni != NULL, ("idx %d: no node", idx)); + KASSERT(data->m != NULL, ("idx %d: no mbuf", idx)); + + /* Unmap and free mbuf. */ + bus_dmamap_sync(ring->data_dmat, data->map, + BUS_DMASYNC_POSTWRITE); + bus_dmamap_unload(ring->data_dmat, data->map); + m = data->m, data->m = NULL; + ni = data->ni, data->ni = NULL; + wn = (void *)ni; + +#if 0 + /* XXX causes significant performance degradation. */ + txs->flags = IEEE80211_RATECTL_STATUS_SHORT_RETRY | + IEEE80211_RATECTL_STATUS_LONG_RETRY; + txs->long_retries = data->long_retries - 1; +#else + txs->flags = IEEE80211_RATECTL_STATUS_SHORT_RETRY; +#endif + txs->short_retries = wn->agg[tid].short_retries; + if (success) + txs->status = IEEE80211_RATECTL_TX_SUCCESS; + else + txs->status = IEEE80211_RATECTL_TX_FAIL_UNSPECIFIED; + + wn->agg[tid].short_retries = 0; + data->long_retries = 0; + + DPRINTF(sc, IWN_DEBUG_AMPDU, "%s: freeing m %p ni %p idx %d qid %d\n", + __func__, m, ni, idx, ring->qid); + ieee80211_ratectl_tx_complete(ni, txs); + ieee80211_tx_complete(ni, m, !success); +} + +/* Process an incoming Compressed BlockAck. */ +static void +iwn_rx_compressed_ba(struct iwn_softc *sc, struct iwn_rx_desc *desc) +{ + struct iwn_tx_ring *ring; + struct iwn_tx_data *data; + struct iwn_node *wn; struct iwn_compressed_ba *ba = (struct iwn_compressed_ba *)(desc + 1); - struct iwn_tx_ring *txq; - struct iwn_tx_data *txdata; struct ieee80211_tx_ampdu *tap; - struct mbuf *m; uint64_t bitmap; - uint16_t ssn; uint8_t tid; - int i, lastidx, qid, *res, shift; - int tx_ok = 0, tx_err = 0; + int i, qid, shift; + int tx_ok = 0; - DPRINTF(sc, IWN_DEBUG_TRACE | IWN_DEBUG_XMIT, "->%s begin\n", __func__); + DPRINTF(sc, IWN_DEBUG_TRACE, "->%s begin\n", __func__); qid = le16toh(ba->qid); - txq = &sc->txq[ba->qid]; - tap = sc->qid2tap[ba->qid]; + tap = sc->qid2tap[qid]; + ring = &sc->txq[qid]; tid = tap->txa_tid; wn = (void *)tap->txa_ni; - res = NULL; - ssn = 0; - if (!IEEE80211_AMPDU_RUNNING(tap)) { - res = tap->txa_private; - ssn = tap->txa_start & 0xfff; - } + DPRINTF(sc, IWN_DEBUG_AMPDU, "%s: qid %d tid %d seq %04X ssn %04X\n" + "bitmap: ba %016jX wn %016jX, start %d\n", + __func__, qid, tid, le16toh(ba->seq), le16toh(ba->ssn), + (uintmax_t)le64toh(ba->bitmap), (uintmax_t)wn->agg[tid].bitmap, + wn->agg[tid].startidx); - for (lastidx = le16toh(ba->ssn) & 0xff; txq->read != lastidx;) { - txdata = &txq->data[txq->read]; - - /* Unmap and free mbuf. */ - bus_dmamap_sync(txq->data_dmat, txdata->map, - BUS_DMASYNC_POSTWRITE); - bus_dmamap_unload(txq->data_dmat, txdata->map); - m = txdata->m, txdata->m = NULL; - ni = txdata->ni, txdata->ni = NULL; - - KASSERT(ni != NULL, ("no node")); - KASSERT(m != NULL, ("no mbuf")); - - DPRINTF(sc, IWN_DEBUG_XMIT, "%s: freeing m=%p\n", __func__, m); - ieee80211_tx_complete(ni, m, 1); - - txq->queued--; - txq->read = (txq->read + 1) % IWN_TX_RING_COUNT; - } - - if (txq->queued == 0 && res != NULL) { - iwn_nic_lock(sc); - ops->ampdu_tx_stop(sc, qid, tid, ssn); - iwn_nic_unlock(sc); - sc->qid2tap[qid] = NULL; - free(res, M_DEVBUF); - return; - } - if (wn->agg[tid].bitmap == 0) return; shift = wn->agg[tid].startidx - ((le16toh(ba->seq) >> 4) & 0xff); - if (shift < 0) + if (shift <= -64) shift += 0x100; - if (wn->agg[tid].nframes > (64 - shift)) - return; - /* - * Walk the bitmap and calculate how many successful and failed - * attempts are made. + * Walk the bitmap and calculate how many successful attempts + * are made. * * Yes, the rate control code doesn't know these are A-MPDU - * subframes and that it's okay to fail some of these. + * subframes; due to that long_retries stats are not used here. */ - ni = tap->txa_ni; - bitmap = (le64toh(ba->bitmap) >> shift) & wn->agg[tid].bitmap; - for (i = 0; bitmap; i++) { - txs->flags = 0; /* XXX TODO */ - if ((bitmap & 1) == 0) { - tx_err ++; - txs->status = IEEE80211_RATECTL_TX_FAIL_UNSPECIFIED; - } else { - tx_ok ++; - txs->status = IEEE80211_RATECTL_TX_SUCCESS; + bitmap = le64toh(ba->bitmap); + if (shift >= 0) + bitmap >>= shift; + else + bitmap <<= -shift; + bitmap &= wn->agg[tid].bitmap; + wn->agg[tid].bitmap = 0; + + for (i = wn->agg[tid].startidx; + bitmap; + bitmap >>= 1, i = (i + 1) % IWN_TX_RING_COUNT) { + if ((bitmap & 1) == 0) + continue; + + data = &ring->data[i]; + if (__predict_false(data->m == NULL)) { + /* + * There is no frame; skip this entry. + * + * NB: it is "ok" to have both + * 'tx done' + 'compressed BA' replies for frame + * with STATE_SCD_QUERY status. + */ + DPRINTF(sc, IWN_DEBUG_AMPDU, + "%s: ring %d: no entry %d\n", __func__, qid, i); + continue; } - ieee80211_ratectl_tx_complete(ni, txs); - bitmap >>= 1; + + tx_ok++; + iwn_agg_tx_complete(sc, ring, tid, i, 1); } - DPRINTF(sc, IWN_DEBUG_TRACE | IWN_DEBUG_XMIT, - "->%s: end; %d ok; %d err\n",__func__, tx_ok, tx_err); + ring->queued -= tx_ok; + iwn_check_tx_ring(sc, qid); + DPRINTF(sc, IWN_DEBUG_TRACE | IWN_DEBUG_AMPDU, + "->%s: end; %d ok\n",__func__, tx_ok); } /* @@ -3508,9 +3577,9 @@ iwn4965_tx_done(struct iwn_softc *sc, struct iwn_rx_de stat->rate, le16toh(stat->duration), le32toh(stat->status)); - if (qid >= sc->firstaggqueue) { - iwn_ampdu_tx_done(sc, qid, desc->idx, stat->nframes, - stat->rtsfailcnt, stat->ackfailcnt, &stat->status); + if (qid >= sc->firstaggqueue && stat->nframes != 1) { + iwn_ampdu_tx_done(sc, qid, stat->nframes, stat->rtsfailcnt, + &stat->status); } else { iwn_tx_done(sc, desc, stat->rtsfailcnt, stat->ackfailcnt, le32toh(stat->status) & 0xff); @@ -3538,15 +3607,32 @@ iwn5000_tx_done(struct iwn_softc *sc, struct iwn_rx_de iwn5000_reset_sched(sc, qid, desc->idx); #endif - if (qid >= sc->firstaggqueue) { - iwn_ampdu_tx_done(sc, qid, desc->idx, stat->nframes, - stat->rtsfailcnt, stat->ackfailcnt, &stat->status); + if (qid >= sc->firstaggqueue && stat->nframes != 1) { + iwn_ampdu_tx_done(sc, qid, stat->nframes, stat->rtsfailcnt, + &stat->status); } else { iwn_tx_done(sc, desc, stat->rtsfailcnt, stat->ackfailcnt, le16toh(stat->status) & 0xff); } } +static void +iwn_adj_ampdu_ptr(struct iwn_softc *sc, struct iwn_tx_ring *ring) +{ + int i; + + for (i = ring->read; i != ring->cur; i = (i + 1) % IWN_TX_RING_COUNT) { + struct iwn_tx_data *data = &ring->data[i]; + + if (data->m != NULL) + break; + + data->remapped = 0; + } + + ring->read = i; +} + /* * Adapter-independent backend for TX_DONE firmware notifications. */ @@ -3560,7 +3646,18 @@ iwn_tx_done(struct iwn_softc *sc, struct iwn_rx_desc * struct mbuf *m; struct ieee80211_node *ni; + if (__predict_false(data->m == NULL && + ring->qid >= sc->firstaggqueue)) { + /* + * There is no frame; skip this entry. + */ + DPRINTF(sc, IWN_DEBUG_AMPDU, "%s: ring %d: no entry %d\n", + __func__, ring->qid, desc->idx); + return; + } + KASSERT(data->ni != NULL, ("no node")); + KASSERT(data->m != NULL, ("no mbuf")); DPRINTF(sc, IWN_DEBUG_TRACE, "->%s begin\n", __func__); @@ -3570,7 +3667,20 @@ iwn_tx_done(struct iwn_softc *sc, struct iwn_rx_desc * m = data->m, data->m = NULL; ni = data->ni, data->ni = NULL; + data->long_retries = 0; + + if (ring->qid >= sc->firstaggqueue) + iwn_adj_ampdu_ptr(sc, ring); + /* + * XXX f/w may hang (device timeout) when desc->idx - ring->read == 64 + * (aggregation queues only). + */ + + ring->queued--; + iwn_check_tx_ring(sc, ring->qid); + + /* * Update rate control statistics for the node. */ txs->flags = IEEE80211_RATECTL_STATUS_SHORT_RETRY | @@ -3618,10 +3728,6 @@ iwn_tx_done(struct iwn_softc *sc, struct iwn_rx_desc * ieee80211_tx_complete(ni, m, (status & IWN_TX_FAIL) != 0); - sc->sc_tx_timer = 0; - if (--ring->queued < IWN_TX_RING_LOMARK) - sc->qfullmsk &= ~(1 << ring->qid); - DPRINTF(sc, IWN_DEBUG_TRACE, "->%s: end\n",__func__); } @@ -3658,148 +3764,218 @@ iwn_cmd_done(struct iwn_softc *sc, struct iwn_rx_desc wakeup(&ring->desc[desc->idx]); } +static int +iwn_ampdu_check_bitmap(uint64_t bitmap, int start, int idx) +{ + int bit, shift; + + bit = idx - start; + shift = 0; + if (bit >= 64) { + shift = 0x100 - bit; + bit = 0; + } else if (bit <= -64) + bit = 0x100 + bit; + else if (bit < 0) { + shift = -bit; + bit = 0; + } + + if (bit - shift >= 64) + return (0); + + return ((bitmap & (1ULL << (bit - shift))) != 0); +} + +/* + * Firmware bug workaround: in case if 'retries' counter + * overflows 'seqno' field will be incremented: + * status|sequence|status|sequence|status|sequence + * 0000 0A48 0001 0A49 0000 0A6A + * 1000 0A48 1000 0A49 1000 0A6A + * 2000 0A48 2000 0A49 2000 0A6A + * ... + * E000 0A48 E000 0A49 E000 0A6A + * F000 0A48 F000 0A49 F000 0A6A + * 0000 0A49 0000 0A49 0000 0A6B + * 1000 0A49 1000 0A49 1000 0A6B + * ... + * D000 0A49 D000 0A49 D000 0A6B + * E000 0A49 E001 0A49 E000 0A6B + * F000 0A49 F001 0A49 F000 0A6B + * 0000 0A4A 0000 0A4B 0000 0A6A + * 1000 0A4A 1000 0A4B 1000 0A6A + * ... + * + * Odd 'seqno' numbers are incremened by 2 every 2 overflows. + * For even 'seqno' % 4 != 0 overflow is cyclic (0 -> +1 -> 0). + * Not checked with nretries >= 64. + * + */ +static int +iwn_ampdu_index_check(struct iwn_softc *sc, struct iwn_tx_ring *ring, + uint64_t bitmap, int start, int idx) +{ + struct ieee80211com *ic = &sc->sc_ic; + struct iwn_tx_data *data; + int diff, min_retries, max_retries, new_idx, loop_end; + + new_idx = idx - IWN_LONG_RETRY_LIMIT_LOG; + if (new_idx < 0) + new_idx += IWN_TX_RING_COUNT; + + /* + * Corner case: check if retry count is not too big; + * reset device otherwise. + */ + if (!iwn_ampdu_check_bitmap(bitmap, start, new_idx)) { + data = &ring->data[new_idx]; + if (data->long_retries > IWN_LONG_RETRY_LIMIT) { + device_printf(sc->sc_dev, + "%s: retry count (%d) for idx %d/%d overflow, " + "resetting...\n", __func__, data->long_retries, + ring->qid, new_idx); + ieee80211_restart_all(ic); + return (-1); + } + } + + /* Correct index if needed. */ + loop_end = idx; + do { + data = &ring->data[new_idx]; + diff = idx - new_idx; + if (diff < 0) + diff += IWN_TX_RING_COUNT; + + min_retries = IWN_LONG_RETRY_FW_OVERFLOW * diff; + if ((new_idx % 2) == 0) + max_retries = IWN_LONG_RETRY_FW_OVERFLOW * (diff + 1); + else + max_retries = IWN_LONG_RETRY_FW_OVERFLOW * (diff + 2); + + if (!iwn_ampdu_check_bitmap(bitmap, start, new_idx) && + ((data->long_retries >= min_retries && + data->long_retries < max_retries) || + (diff == 1 && + (new_idx & 0x03) == 0x02 && + data->long_retries >= IWN_LONG_RETRY_FW_OVERFLOW))) { + DPRINTF(sc, IWN_DEBUG_AMPDU, + "%s: correcting index %d -> %d in queue %d" + " (retries %d)\n", __func__, idx, new_idx, + ring->qid, data->long_retries); + return (new_idx); + } + + new_idx = (new_idx + 1) % IWN_TX_RING_COUNT; + } while (new_idx != loop_end); + + return (idx); +} + static void -iwn_ampdu_tx_done(struct iwn_softc *sc, int qid, int idx, int nframes, - int rtsfailcnt, int ackfailcnt, void *stat) +iwn_ampdu_tx_done(struct iwn_softc *sc, int qid, int nframes, int rtsfailcnt, + void *stat) { - struct iwn_ops *ops = &sc->ops; struct iwn_tx_ring *ring = &sc->txq[qid]; - struct ieee80211_ratectl_tx_status *txs = &sc->sc_txs; + struct ieee80211_tx_ampdu *tap = sc->qid2tap[qid]; + struct iwn_node *wn = (void *)tap->txa_ni; struct iwn_tx_data *data; - struct mbuf *m; - struct iwn_node *wn; - struct ieee80211_node *ni; - struct ieee80211_tx_ampdu *tap; - uint64_t bitmap; - uint32_t *status = stat; + uint64_t bitmap = 0; uint16_t *aggstatus = stat; - uint16_t ssn; - uint8_t tid; - int bit, i, lastidx, *res, seqno, shift, start; + uint8_t tid = tap->txa_tid; + int bit, i, idx, shift, start, tx_err; - /* XXX TODO: status is le16 field! Grr */ - DPRINTF(sc, IWN_DEBUG_TRACE, "->%s begin\n", __func__); - DPRINTF(sc, IWN_DEBUG_XMIT, "%s: nframes=%d, status=0x%08x\n", - __func__, - nframes, - *status); - tap = sc->qid2tap[qid]; - tid = tap->txa_tid; - wn = (void *)tap->txa_ni; - ni = tap->txa_ni; + start = le16toh(*(aggstatus + nframes * 2)) & 0xff; - /* - * XXX TODO: ACK and RTS failures would be nice here! - */ + for (i = 0; i < nframes; i++) { + uint16_t status = le16toh(aggstatus[i * 2]); - /* - * A-MPDU single frame status - if we failed to transmit it - * in A-MPDU, then it may be a permanent failure. - * - * XXX TODO: check what the Linux iwlwifi driver does here; - * there's some permanent and temporary failures that may be - * handled differently. - */ - if (nframes == 1) { - txs->flags = IEEE80211_RATECTL_STATUS_SHORT_RETRY | - IEEE80211_RATECTL_STATUS_LONG_RETRY; - txs->short_retries = rtsfailcnt; - txs->long_retries = ackfailcnt; - if ((*status & 0xff) != 1 && (*status & 0xff) != 2) { -#ifdef NOT_YET - printf("ieee80211_send_bar()\n"); -#endif + if (status & IWN_AGG_TX_STATE_IGNORE_MASK) + continue; + + idx = le16toh(aggstatus[i * 2 + 1]) & 0xff; + data = &ring->data[idx]; + if (data->remapped) { + idx = iwn_ampdu_index_check(sc, ring, bitmap, start, idx); + if (idx == -1) { + /* skip error (device will be restarted anyway). */ + continue; + } + + /* Index may have changed. */ + data = &ring->data[idx]; + } + + /* + * XXX Sometimes (rarely) some frames are excluded from events. + * XXX Due to that long_retries counter may be wrong. + */ + data->long_retries &= ~0x0f; + data->long_retries += IWN_AGG_TX_TRY_COUNT(status) + 1; + + if (data->long_retries >= IWN_LONG_RETRY_FW_OVERFLOW) { + int diff, wrong_idx; + + diff = data->long_retries / IWN_LONG_RETRY_FW_OVERFLOW; + wrong_idx = (idx + diff) % IWN_TX_RING_COUNT; + /* - * If we completely fail a transmit, make sure a - * notification is pushed up to the rate control - * layer. + * Mark the entry so the above code will check it + * next time. */ - /* XXX */ - txs->status = IEEE80211_RATECTL_TX_FAIL_UNSPECIFIED; - } else { + ring->data[wrong_idx].remapped = 1; + } + + if (status & IWN_AGG_TX_STATE_UNDERRUN_MSK) { /* - * If nframes=1, then we won't be getting a BA for - * this frame. Ensure that we correctly update the - * rate control code with how many retries were - * needed to send it. + * NB: count retries but postpone - it was not + * transmitted. */ - txs->status = IEEE80211_RATECTL_TX_SUCCESS; + continue; } - ieee80211_ratectl_tx_complete(ni, txs); - } - bitmap = 0; - start = idx; - for (i = 0; i < nframes; i++) { - if (le16toh(aggstatus[i * 2]) & 0xc) - continue; - - idx = le16toh(aggstatus[2*i + 1]) & 0xff; bit = idx - start; shift = 0; if (bit >= 64) { - shift = 0x100 - idx + start; + shift = 0x100 - bit; bit = 0; - start = idx; } else if (bit <= -64) - bit = 0x100 - start + idx; + bit = 0x100 + bit; else if (bit < 0) { - shift = start - idx; - start = idx; + shift = -bit; bit = 0; } bitmap = bitmap << shift; bitmap |= 1ULL << bit; } - tap = sc->qid2tap[qid]; - tid = tap->txa_tid; - wn = (void *)tap->txa_ni; - wn->agg[tid].bitmap = bitmap; wn->agg[tid].startidx = start; - wn->agg[tid].nframes = nframes; + wn->agg[tid].bitmap = bitmap; + wn->agg[tid].short_retries = rtsfailcnt; - res = NULL; - ssn = 0; - if (!IEEE80211_AMPDU_RUNNING(tap)) { - res = tap->txa_private; - ssn = tap->txa_start & 0xfff; - } + DPRINTF(sc, IWN_DEBUG_AMPDU, "%s: nframes %d start %d bitmap %016jX\n", + __func__, nframes, start, (uintmax_t)bitmap); - /* This is going nframes DWORDS into the descriptor? */ - seqno = le32toh(*(status + nframes)) & 0xfff; - for (lastidx = (seqno & 0xff); ring->read != lastidx;) { - data = &ring->data[ring->read]; + i = ring->read; - /* Unmap and free mbuf. */ - bus_dmamap_sync(ring->data_dmat, data->map, - BUS_DMASYNC_POSTWRITE); - bus_dmamap_unload(ring->data_dmat, data->map); - m = data->m, data->m = NULL; - ni = data->ni, data->ni = NULL; + for (tx_err = 0; + i != wn->agg[tid].startidx; + i = (i + 1) % IWN_TX_RING_COUNT) { + data = &ring->data[i]; + data->remapped = 0; + if (data->m == NULL) + continue; - KASSERT(ni != NULL, ("no node")); - KASSERT(m != NULL, ("no mbuf")); - DPRINTF(sc, IWN_DEBUG_XMIT, "%s: freeing m=%p\n", __func__, m); - ieee80211_tx_complete(ni, m, 1); - - ring->queued--; - ring->read = (ring->read + 1) % IWN_TX_RING_COUNT; + tx_err++; + iwn_agg_tx_complete(sc, ring, tid, i, 0); } - if (ring->queued == 0 && res != NULL) { - iwn_nic_lock(sc); - ops->ampdu_tx_stop(sc, qid, tid, ssn); - iwn_nic_unlock(sc); - sc->qid2tap[qid] = NULL; - free(res, M_DEVBUF); - return; - } + ring->read = wn->agg[tid].startidx; + ring->queued -= tx_err; - sc->sc_tx_timer = 0; - if (ring->queued < IWN_TX_RING_LOMARK) - sc->qfullmsk &= ~(1 << ring->qid); + iwn_check_tx_ring(sc, qid); DPRINTF(sc, IWN_DEBUG_TRACE, "->%s: end\n",__func__); } @@ -4379,7 +4555,7 @@ iwn_tx_data(struct iwn_softc *sc, struct mbuf *m, stru struct ieee80211_frame *wh; struct ieee80211_key *k = NULL; uint32_t flags; - uint16_t seqno, qos; + uint16_t qos; uint8_t tid, type; int ac, totlen, rate; @@ -4421,25 +4597,13 @@ iwn_tx_data(struct iwn_softc *sc, struct mbuf *m, stru */ ac = M_WME_GETAC(m); - seqno = ni->ni_txseqs[tid]; if (m->m_flags & M_AMPDU_MPDU) { struct ieee80211_tx_ampdu *tap = &ni->ni_tx_ampdu[ac]; - if (!IEEE80211_AMPDU_RUNNING(tap)) { + if (!IEEE80211_AMPDU_RUNNING(tap)) return (EINVAL); - } - /* - * Queue this frame to the hardware ring that we've - * negotiated AMPDU TX on. - * - * Note that the sequence number must match the TX slot - * being used! - */ ac = *(int *)tap->txa_private; - *(uint16_t *)wh->i_seq = - htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); - ni->ni_txseqs[tid]++; } /* Encrypt the frame if need be. */ @@ -4508,15 +4672,42 @@ iwn_tx_data(struct iwn_softc *sc, struct mbuf *m, stru } ring = &sc->txq[ac]; - if ((m->m_flags & M_AMPDU_MPDU) != 0 && - (seqno % 256) != ring->cur) { - device_printf(sc->sc_dev, - "%s: m=%p: seqno (%d) (%d) != ring index (%d) !\n", - __func__, - m, - seqno, - seqno % 256, - ring->cur); + if (m->m_flags & M_AMPDU_MPDU) { + uint16_t seqno = ni->ni_txseqs[tid]; + + if (ring->queued > IWN_TX_RING_COUNT / 2 && + (ring->cur + 1) % IWN_TX_RING_COUNT == ring->read) { + DPRINTF(sc, IWN_DEBUG_AMPDU, "%s: no more space " + "(queued %d) left in %d queue!\n", + __func__, ring->queued, ac); + return (ENOBUFS); + } + + /* + * Queue this frame to the hardware ring that we've + * negotiated AMPDU TX on. + * + * Note that the sequence number must match the TX slot + * being used! + */ + if ((seqno % 256) != ring->cur) { + device_printf(sc->sc_dev, + "%s: m=%p: seqno (%d) (%d) != ring index (%d) !\n", + __func__, + m, + seqno, + seqno % 256, + ring->cur); + + /* XXX until D9195 will not be committed */ + ni->ni_txseqs[tid] &= ~0xff; + ni->ni_txseqs[tid] += ring->cur; + seqno = ni->ni_txseqs[tid]; + } + + *(uint16_t *)wh->i_seq = + htole16(seqno << IEEE80211_SEQ_SEQ_SHIFT); + ni->ni_txseqs[tid]++; } /* Prepare TX firmware command. */ @@ -4677,6 +4868,13 @@ iwn_tx_cmd(struct iwn_softc *sc, struct mbuf *m, struc desc = &ring->desc[ring->cur]; data = &ring->data[ring->cur]; + + if (__predict_false(data->m != NULL || data->ni != NULL)) { + device_printf(sc->sc_dev, "%s: ni (%p) or m (%p) for idx %d " + "in queue %d is not NULL!\n", __func__, data->ni, data->m, + ring->cur, ring->qid); + return EIO; + } /* Prepare TX firmware command. */ cmd = &ring->cmd[ring->cur]; Modified: stable/12/sys/dev/iwn/if_iwn_debug.h ============================================================================== --- stable/12/sys/dev/iwn/if_iwn_debug.h Sat Feb 16 01:05:22 2019 (r344196) +++ stable/12/sys/dev/iwn/if_iwn_debug.h Sat Feb 16 01:19:14 2019 (r344197) @@ -44,6 +44,7 @@ enum { IWN_DEBUG_PWRSAVE = 0x00004000, /* Power save operations */ IWN_DEBUG_SCAN = 0x00008000, /* Scan related operations */ IWN_DEBUG_STATS = 0x00010000, /* Statistics updates */ + IWN_DEBUG_AMPDU = 0x00020000, /* A-MPDU specific Tx */ IWN_DEBUG_REGISTER = 0x20000000, /* print chipset register */ IWN_DEBUG_TRACE = 0x40000000, /* Print begin and start driver function */ IWN_DEBUG_FATAL = 0x80000000, /* fatal errors */ Modified: stable/12/sys/dev/iwn/if_iwnreg.h ============================================================================== --- stable/12/sys/dev/iwn/if_iwnreg.h Sat Feb 16 01:05:22 2019 (r344196) +++ stable/12/sys/dev/iwn/if_iwnreg.h Sat Feb 16 01:19:14 2019 (r344197) @@ -1378,10 +1378,17 @@ struct iwn_ucode_info { #define IWN_AGG_TX_STATUS_MSK 0x00000fff #define IWN_AGG_TX_TRY_MSK 0x0000f000 +#define IWN_AGG_TX_TRY_POS 12 +#define IWN_AGG_TX_TRY_COUNT(status) \ + (((status) & IWN_AGG_TX_TRY_MSK) >> IWN_AGG_TX_TRY_POS) #define IWN_AGG_TX_STATE_LAST_SENT_MSK \ (IWN_AGG_TX_STATE_LAST_SENT_TTL_MSK | \ IWN_AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK) + +#define IWN_AGG_TX_STATE_IGNORE_MASK \ + (IWN_AGG_TX_STATE_FEW_BYTES_MSK | \ + IWN_AGG_TX_STATE_ABORT_MSK) /* # tx attempts for first frame in aggregation */ #define IWN_AGG_TX_STATE_TRY_CNT_POS 12 Modified: stable/12/sys/dev/iwn/if_iwnvar.h ============================================================================== --- stable/12/sys/dev/iwn/if_iwnvar.h Sat Feb 16 01:05:22 2019 (r344196) +++ stable/12/sys/dev/iwn/if_iwnvar.h Sat Feb 16 01:19:14 2019 (r344197) @@ -100,6 +100,11 @@ struct iwn_tx_data { bus_addr_t scratch_paddr; struct mbuf *m; struct ieee80211_node *ni; + unsigned int remapped:1; + unsigned int long_retries:7; +#define IWN_LONG_RETRY_FW_OVERFLOW 0x10 +#define IWN_LONG_RETRY_LIMIT_LOG 7 +#define IWN_LONG_RETRY_LIMIT ((1 << IWN_LONG_RETRY_LIMIT_LOG) - 3) }; struct iwn_tx_ring { @@ -138,8 +143,8 @@ struct iwn_node { uint8_t id; struct { uint64_t bitmap; + int short_retries; int startidx; - int nframes; } agg[IEEE80211_TID_SIZE]; }; From owner-svn-src-all@freebsd.org Sat Feb 16 01:48:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5E9C614F37C5; Sat, 16 Feb 2019 01:48:39 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EE66B6BF35; Sat, 16 Feb 2019 01:48:38 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E210527684; Sat, 16 Feb 2019 01:48:38 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G1mcA3008919; Sat, 16 Feb 2019 01:48:38 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G1mcWx008918; Sat, 16 Feb 2019 01:48:38 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160148.x1G1mcWx008918@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 01:48:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344198 - in head/sys: conf dev/ata X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: in head/sys: conf dev/ata X-SVN-Commit-Revision: 344198 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: EE66B6BF35 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.985,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 01:48:39 -0000 Author: avos Date: Sat Feb 16 01:48:38 2019 New Revision: 344198 URL: https://svnweb.freebsd.org/changeset/base/344198 Log: GC ATA_REQUEST_TIMEOUT option remnants It was removed from code in r249083 and from sys/conf/options in r249213. PR: 222170 MFC after: 3 days Modified: head/sys/conf/NOTES head/sys/dev/ata/ata-all.h Modified: head/sys/conf/NOTES ============================================================================== --- head/sys/conf/NOTES Sat Feb 16 01:19:14 2019 (r344197) +++ head/sys/conf/NOTES Sat Feb 16 01:48:38 2019 (r344198) @@ -1760,14 +1760,6 @@ hint.ata.1.port="0x170" hint.ata.1.irq="15" # -# The following options are valid on the ATA driver: -# -# ATA_REQUEST_TIMEOUT: the number of seconds to wait for an ATA request -# before timing out. - -#options ATA_REQUEST_TIMEOUT=10 - -# # Standard floppy disk controllers and floppy tapes, supports # the Y-E DATA External FDD (PC Card) # Modified: head/sys/dev/ata/ata-all.h ============================================================================== --- head/sys/dev/ata/ata-all.h Sat Feb 16 01:19:14 2019 (r344197) +++ head/sys/dev/ata/ata-all.h Sat Feb 16 01:48:38 2019 (r344198) @@ -203,10 +203,6 @@ #define ATA_OP_FINISHED 1 #define ATA_MAX_28BIT_LBA 268435455UL -#ifndef ATA_REQUEST_TIMEOUT -#define ATA_REQUEST_TIMEOUT 10 -#endif - /* structure used for composite atomic operations */ #define MAX_COMPOSITES 32 /* u_int32_t bits */ struct ata_composite { From owner-svn-src-all@freebsd.org Sat Feb 16 03:49:50 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E93F414CF558; Sat, 16 Feb 2019 03:49:49 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 887E26FC95; Sat, 16 Feb 2019 03:49:49 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 774FAD58; Sat, 16 Feb 2019 03:49:49 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G3nn2D071714; Sat, 16 Feb 2019 03:49:49 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G3nn7j071713; Sat, 16 Feb 2019 03:49:49 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160349.x1G3nn7j071713@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 03:49:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344201 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 344201 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 887E26FC95 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.98)[-0.985,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 03:49:50 -0000 Author: avos Date: Sat Feb 16 03:49:48 2019 New Revision: 344201 URL: https://svnweb.freebsd.org/changeset/base/344201 Log: Remove vi(1)-related files via 'make delete-old' when WITHOUT_VI=1 is set. MFC after: 5 days Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 03:18:52 2019 (r344200) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 03:49:48 2019 (r344201) @@ -9704,6 +9704,32 @@ OLD_FILES+=usr/share/man/man8/lastlogin.8.gz OLD_FILES+=usr/share/man/man8/utx.8.gz .endif +.if ${MK_VI} == no +OLD_FILES+=etc/rc.d/virecover +OLD_FILES+=rescue/ex +OLD_FILES+=rescue/vi +OLD_FILES+=usr/bin/ex +OLD_FILES+=usr/bin/nex +OLD_FILES+=usr/bin/nvi +OLD_FILES+=usr/bin/nview +OLD_FILES+=usr/bin/vi +OLD_FILES+=usr/bin/view +OLD_FILES+=usr/share/man/man1/ex.1.gz +OLD_FILES+=usr/share/man/man1/nex.1.gz +OLD_FILES+=usr/share/man/man1/nvi.1.gz +OLD_FILES+=usr/share/man/man1/nview.1.gz +OLD_FILES+=usr/share/man/man1/vi.1.gz +OLD_FILES+=usr/share/man/man1/view.1.gz +. if exists(${DESTDIR}/usr/share/vi) +VI_DIRS!=find ${DESTDIR}/usr/share/vi -type d \ + | sed -e 's,^${DESTDIR}/,,'; echo +VI_FILES!=find ${DESTDIR}/usr/share/vi \! -type d \ + | sed -e 's,^${DESTDIR}/,,'; echo +OLD_DIRS+=${VI_DIRS} +OLD_FILES+=${VI_FILES} +. endif +.endif + .if ${MK_WIRELESS} == no OLD_FILES+=etc/regdomain.xml OLD_FILES+=etc/rc.d/hostapd From owner-svn-src-all@freebsd.org Sat Feb 16 03:18:57 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8239B14CE2C0; Sat, 16 Feb 2019 03:18:57 +0000 (UTC) (envelope-from nyan@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 27A106ED94; Sat, 16 Feb 2019 03:18:57 +0000 (UTC) (envelope-from nyan@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 012127E0; Sat, 16 Feb 2019 03:18:57 +0000 (UTC) (envelope-from nyan@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G3Iu3s056030; Sat, 16 Feb 2019 03:18:56 GMT (envelope-from nyan@FreeBSD.org) Received: (from nyan@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G3Iq4n056011; Sat, 16 Feb 2019 03:18:52 GMT (envelope-from nyan@FreeBSD.org) Message-Id: <201902160318.x1G3Iq4n056011@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: nyan set sender to nyan@FreeBSD.org using -f From: Takahashi Yoshihiro Date: Sat, 16 Feb 2019 03:18:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344200 - in stable/11/kerberos5: lib/libasn1 lib/libgssapi_krb5 lib/libhdb lib/libheimntlm lib/libhx509 lib/libkadm5clnt lib/libkadm5srv lib/libkdc lib/libkrb5 lib/libwind libexec/dige... X-SVN-Group: stable-11 X-SVN-Commit-Author: nyan X-SVN-Commit-Paths: in stable/11/kerberos5: lib/libasn1 lib/libgssapi_krb5 lib/libhdb lib/libheimntlm lib/libhx509 lib/libkadm5clnt lib/libkadm5srv lib/libkdc lib/libkrb5 lib/libwind libexec/digest-service libexec/hprop ... X-SVN-Commit-Revision: 344200 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 27A106ED94 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 03:18:57 -0000 Author: nyan Date: Sat Feb 16 03:18:52 2019 New Revision: 344200 URL: https://svnweb.freebsd.org/changeset/base/344200 Log: MFC: r343011 Use ${SRCTOP}/contrib/com_err/com_err.h instead of the installed com_err.h. This fixes build when com_err.h is not installed. PR: 234691 Modified: stable/11/kerberos5/lib/libasn1/Makefile stable/11/kerberos5/lib/libgssapi_krb5/Makefile stable/11/kerberos5/lib/libhdb/Makefile stable/11/kerberos5/lib/libheimntlm/Makefile stable/11/kerberos5/lib/libhx509/Makefile stable/11/kerberos5/lib/libkadm5clnt/Makefile stable/11/kerberos5/lib/libkadm5srv/Makefile stable/11/kerberos5/lib/libkdc/Makefile stable/11/kerberos5/lib/libkrb5/Makefile stable/11/kerberos5/lib/libwind/Makefile stable/11/kerberos5/libexec/digest-service/Makefile stable/11/kerberos5/libexec/hprop/Makefile stable/11/kerberos5/libexec/hpropd/Makefile stable/11/kerberos5/libexec/kadmind/Makefile stable/11/kerberos5/libexec/kdc/Makefile stable/11/kerberos5/usr.bin/hxtool/Makefile stable/11/kerberos5/usr.bin/kadmin/Makefile stable/11/kerberos5/usr.bin/string2key/Makefile stable/11/kerberos5/usr.bin/verify_krb5_conf/Makefile stable/11/kerberos5/usr.sbin/kstash/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/kerberos5/lib/libasn1/Makefile ============================================================================== --- stable/11/kerberos5/lib/libasn1/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libasn1/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -21,7 +21,8 @@ SRCS= asn1_err.c \ timegm.c \ ${GEN:S/.x$/.c/:S/.hx$/.h/} -CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err -I. GEN_RFC2459= asn1_rfc2459_asn1.x rfc2459_asn1.hx rfc2459_asn1-priv.hx GEN_CMS= asn1_cms_asn1.x cms_asn1.hx cms_asn1-priv.hx Modified: stable/11/kerberos5/lib/libgssapi_krb5/Makefile ============================================================================== --- stable/11/kerberos5/lib/libgssapi_krb5/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libgssapi_krb5/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -78,7 +78,9 @@ CFLAGS+=-I${KRB5DIR}/lib/gssapi/krb5 CFLAGS+=-I${KRB5DIR}/lib/gssapi/gssapi CFLAGS+=-I${KRB5DIR}/lib/krb5 CFLAGS+=-I${KRB5DIR}/lib/asn1 -CFLAGS+=-I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/roken +CFLAGS+=-I${SRCTOP}/contrib/com_err +CFLAGS+=-I. .include Modified: stable/11/kerberos5/lib/libhdb/Makefile ============================================================================== --- stable/11/kerberos5/lib/libhdb/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libhdb/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -59,6 +59,7 @@ SRCS= common.c \ CFLAGS+=-I${KRB5DIR}/lib/hdb -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/roken -I${SRCTOP}/contrib/sqlite3/ \ -I${KRB5DIR}/lib/krb5 \ + -I${SRCTOP}/contrib/com_err \ -I. ${LDAPCFLAGS} CFLAGS+=-DHDB_DB_DIR="\"/var/heimdal\"" Modified: stable/11/kerberos5/lib/libheimntlm/Makefile ============================================================================== --- stable/11/kerberos5/lib/libheimntlm/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libheimntlm/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -5,7 +5,8 @@ LDFLAGS= -Wl,--no-undefined LIBADD= crypto com_err krb5 roken SRCS= ntlm.c ntlm_err.c ntlm_err.h INCS= heimntlm.h heimntlm-protos.h ntlm_err.h -CFLAGS+=-I${KRB5DIR}/lib/ntlm -I${KRB5DIR}/lib/roken +CFLAGS+=-I${KRB5DIR}/lib/ntlm -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err VERSION_MAP= ${KRB5DIR}/lib/ntlm/version-script.map MAN= ntlm_buf.3 \ Modified: stable/11/kerberos5/lib/libhx509/Makefile ============================================================================== --- stable/11/kerberos5/lib/libhx509/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libhx509/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -211,7 +211,9 @@ CFLAGS+=-I${KRB5DIR}/lib/hx509 CFLAGS+=-I${KRB5DIR}/lib/hx509/ref CFLAGS+=-I${KRB5DIR}/lib/asn1 CFLAGS+=-I${KRB5DIR}/lib/wind -CFLAGS+=-I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/roken +CFLAGS+=-I${SRCTOP}/contrib/com_err +CFLAGS+=-I. GEN_OCSP= \ asn1_OCSPBasicOCSPResponse.x \ Modified: stable/11/kerberos5/lib/libkadm5clnt/Makefile ============================================================================== --- stable/11/kerberos5/lib/libkadm5clnt/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libkadm5clnt/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -34,7 +34,8 @@ SRCS= ad.c \ rename_c.c \ send_recv.c -CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err -I. .include Modified: stable/11/kerberos5/lib/libkadm5srv/Makefile ============================================================================== --- stable/11/kerberos5/lib/libkadm5srv/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libkadm5srv/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -35,7 +35,8 @@ SRCS= acl.c \ set_keys.c \ set_modifier.c -CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err -I. .include Modified: stable/11/kerberos5/lib/libkdc/Makefile ============================================================================== --- stable/11/kerberos5/lib/libkdc/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libkdc/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -28,7 +28,8 @@ SRCS= \ CFLAGS+= -I${KRB5DIR}/lib/roken \ -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/hdb \ - -I${KRB5DIR}/kdc + -I${KRB5DIR}/kdc \ + -I${SRCTOP}/contrib/com_err .include Modified: stable/11/kerberos5/lib/libkrb5/Makefile ============================================================================== --- stable/11/kerberos5/lib/libkrb5/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libkrb5/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -621,7 +621,9 @@ CFLAGS+= -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/roken \ -I${KRB5DIR}/lib/ipc \ - -I${KRB5DIR}/base -I. + -I${KRB5DIR}/base \ + -I${SRCTOP}/contrib/com_err \ + -I. .include Modified: stable/11/kerberos5/lib/libwind/Makefile ============================================================================== --- stable/11/kerberos5/lib/libwind/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/lib/libwind/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -27,7 +27,7 @@ SRCS= bidi.c \ SRCS+= wind_err.c \ wind_err.h -CFLAGS+=-I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/roken -I${SRCTOP}/contrib/com_err -I. .include Modified: stable/11/kerberos5/libexec/digest-service/Makefile ============================================================================== --- stable/11/kerberos5/libexec/digest-service/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/libexec/digest-service/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -7,7 +7,8 @@ CFLAGS+= -I${KRB5DIR}/kdc \ -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/ipc \ -I${KRB5DIR}/lib/wind \ - -I${KRB5DIR}/lib/roken + -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err LIBADD= hdb kdc heimipcs krb5 roken asn1 crypto vers heimntlm LDFLAGS=${LDAPLDFLAGS} Modified: stable/11/kerberos5/libexec/hprop/Makefile ============================================================================== --- stable/11/kerberos5/libexec/hprop/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/libexec/hprop/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -9,6 +9,7 @@ CFLAGS+=-I${KRB5DIR}/lib/asn1 CFLAGS+=-I${KRB5DIR}/lib/hx509 CFLAGS+=-I${KRB5DIR}/lib/ntlm CFLAGS+=-I${KRB5DIR}/kdc +CFLAGS+=-I${SRCTOP}/contrib/com_err CFLAGS+=-I${.OBJDIR:H:H}/lib/libkrb5 LIBADD= hdb krb5 roken vers DPADD= ${LDAPDPADD} Modified: stable/11/kerberos5/libexec/hpropd/Makefile ============================================================================== --- stable/11/kerberos5/libexec/hpropd/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/libexec/hpropd/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -3,7 +3,7 @@ PROG= hpropd MAN= hpropd.8 CFLAGS+=-I${KRB5DIR}/lib/roken -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/asn1 \ - -I${KRB5DIR}/kdc ${LDAPCFLAGS} + -I${KRB5DIR}/kdc -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= hdb krb5 roken vers DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} Modified: stable/11/kerberos5/libexec/kadmind/Makefile ============================================================================== --- stable/11/kerberos5/libexec/kadmind/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/libexec/kadmind/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -8,7 +8,7 @@ SRCS= rpc.c \ kadm_conn.c CFLAGS+=-I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ - ${LDAPCFLAGS} + -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= kadm5srv gssapi hdb krb5 roken vers DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} Modified: stable/11/kerberos5/libexec/kdc/Makefile ============================================================================== --- stable/11/kerberos5/libexec/kdc/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/libexec/kdc/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -9,7 +9,7 @@ SRCS= config.c \ main.c CFLAGS+=-I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/kdc ${LDAPCFLAGS} + -I${KRB5DIR}/kdc -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= kdc hdb krb5 roken crypt vers LDFLAGS=${LDAPLDFLAGS} Modified: stable/11/kerberos5/usr.bin/hxtool/Makefile ============================================================================== --- stable/11/kerberos5/usr.bin/hxtool/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/usr.bin/hxtool/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -5,7 +5,9 @@ MAN= CFLAGS+= -I${KRB5DIR}/lib/hx509 \ -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/lib/sl -I. + -I${KRB5DIR}/lib/sl \ + -I${SRCTOP}/contrib/com_err \ + -I. LIBADD= hx509 roken asn1 crypto sl vers edit SRCS= hxtool.c hxtool-commands.c hxtool-commands.h Modified: stable/11/kerberos5/usr.bin/kadmin/Makefile ============================================================================== --- stable/11/kerberos5/usr.bin/kadmin/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/usr.bin/kadmin/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -25,7 +25,7 @@ SRCS= add_enctype.c \ util.c CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/lib/sl -I. ${LDAPCFLAGS} + -I${KRB5DIR}/lib/sl -I${SRCTOP}/contrib/com_err -I. ${LDAPCFLAGS} LIBADD= kadm5clnt kadm5srv hdb krb5 roken vers sl asn1 crypto edit DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} Modified: stable/11/kerberos5/usr.bin/string2key/Makefile ============================================================================== --- stable/11/kerberos5/usr.bin/string2key/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/usr.bin/string2key/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -6,7 +6,8 @@ CFLAGS+= -I${KRB5DIR}/kdc \ -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/lib/windc + -I${KRB5DIR}/lib/windc \ + -I${SRCTOP}/contrib/com_err LIBADD= krb5 roken crypto vers .include Modified: stable/11/kerberos5/usr.bin/verify_krb5_conf/Makefile ============================================================================== --- stable/11/kerberos5/usr.bin/verify_krb5_conf/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/usr.bin/verify_krb5_conf/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -2,7 +2,8 @@ PROG= verify_krb5_conf MAN= verify_krb5_conf.8 -CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken +CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err LIBADD= krb5 roken vers .include Modified: stable/11/kerberos5/usr.sbin/kstash/Makefile ============================================================================== --- stable/11/kerberos5/usr.sbin/kstash/Makefile Sat Feb 16 03:18:09 2019 (r344199) +++ stable/11/kerberos5/usr.sbin/kstash/Makefile Sat Feb 16 03:18:52 2019 (r344200) @@ -3,7 +3,7 @@ PROG= kstash MAN= kstash.8 CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/kdc ${LDAPCFLAGS} + -I${KRB5DIR}/kdc -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= hdb krb5 crypto vers DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} From owner-svn-src-all@freebsd.org Sat Feb 16 03:18:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 158AA14CE29A; Sat, 16 Feb 2019 03:18:14 +0000 (UTC) (envelope-from nyan@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AC8E06ECA2; Sat, 16 Feb 2019 03:18:13 +0000 (UTC) (envelope-from nyan@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 868577DD; Sat, 16 Feb 2019 03:18:13 +0000 (UTC) (envelope-from nyan@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G3IDl7055923; Sat, 16 Feb 2019 03:18:13 GMT (envelope-from nyan@FreeBSD.org) Received: (from nyan@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G3I9gj055903; Sat, 16 Feb 2019 03:18:09 GMT (envelope-from nyan@FreeBSD.org) Message-Id: <201902160318.x1G3I9gj055903@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: nyan set sender to nyan@FreeBSD.org using -f From: Takahashi Yoshihiro Date: Sat, 16 Feb 2019 03:18:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344199 - in stable/12/kerberos5: lib/libasn1 lib/libgssapi_krb5 lib/libhdb lib/libheimntlm lib/libhx509 lib/libkadm5clnt lib/libkadm5srv lib/libkdc lib/libkrb5 lib/libwind libexec/dige... X-SVN-Group: stable-12 X-SVN-Commit-Author: nyan X-SVN-Commit-Paths: in stable/12/kerberos5: lib/libasn1 lib/libgssapi_krb5 lib/libhdb lib/libheimntlm lib/libhx509 lib/libkadm5clnt lib/libkadm5srv lib/libkdc lib/libkrb5 lib/libwind libexec/digest-service libexec/hprop ... X-SVN-Commit-Revision: 344199 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AC8E06ECA2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.99)[-0.986,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 03:18:14 -0000 Author: nyan Date: Sat Feb 16 03:18:09 2019 New Revision: 344199 URL: https://svnweb.freebsd.org/changeset/base/344199 Log: MFC: r343011 Use ${SRCTOP}/contrib/com_err/com_err.h instead of the installed com_err.h. This fixes build when com_err.h is not installed. PR: 234691 Modified: stable/12/kerberos5/lib/libasn1/Makefile stable/12/kerberos5/lib/libgssapi_krb5/Makefile stable/12/kerberos5/lib/libhdb/Makefile stable/12/kerberos5/lib/libheimntlm/Makefile stable/12/kerberos5/lib/libhx509/Makefile stable/12/kerberos5/lib/libkadm5clnt/Makefile stable/12/kerberos5/lib/libkadm5srv/Makefile stable/12/kerberos5/lib/libkdc/Makefile stable/12/kerberos5/lib/libkrb5/Makefile stable/12/kerberos5/lib/libwind/Makefile stable/12/kerberos5/libexec/digest-service/Makefile stable/12/kerberos5/libexec/hprop/Makefile stable/12/kerberos5/libexec/hpropd/Makefile stable/12/kerberos5/libexec/kadmind/Makefile stable/12/kerberos5/libexec/kdc/Makefile stable/12/kerberos5/usr.bin/hxtool/Makefile stable/12/kerberos5/usr.bin/kadmin/Makefile stable/12/kerberos5/usr.bin/string2key/Makefile stable/12/kerberos5/usr.bin/verify_krb5_conf/Makefile stable/12/kerberos5/usr.sbin/kstash/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/kerberos5/lib/libasn1/Makefile ============================================================================== --- stable/12/kerberos5/lib/libasn1/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libasn1/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -21,7 +21,8 @@ SRCS= asn1_err.c \ timegm.c \ ${GEN:S/.x$/.c/:S/.hx$/.h/} -CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err -I. GEN_RFC2459= asn1_rfc2459_asn1.x rfc2459_asn1.hx rfc2459_asn1-priv.hx GEN_CMS= asn1_cms_asn1.x cms_asn1.hx cms_asn1-priv.hx Modified: stable/12/kerberos5/lib/libgssapi_krb5/Makefile ============================================================================== --- stable/12/kerberos5/lib/libgssapi_krb5/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libgssapi_krb5/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -78,7 +78,9 @@ CFLAGS+=-I${KRB5DIR}/lib/gssapi/krb5 CFLAGS+=-I${KRB5DIR}/lib/gssapi/gssapi CFLAGS+=-I${KRB5DIR}/lib/krb5 CFLAGS+=-I${KRB5DIR}/lib/asn1 -CFLAGS+=-I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/roken +CFLAGS+=-I${SRCTOP}/contrib/com_err +CFLAGS+=-I. .include Modified: stable/12/kerberos5/lib/libhdb/Makefile ============================================================================== --- stable/12/kerberos5/lib/libhdb/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libhdb/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -59,6 +59,7 @@ SRCS= common.c \ CFLAGS+=-I${KRB5DIR}/lib/hdb -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/roken -I${SRCTOP}/contrib/sqlite3/ \ -I${KRB5DIR}/lib/krb5 \ + -I${SRCTOP}/contrib/com_err \ -I. ${LDAPCFLAGS} CFLAGS+=-DHDB_DB_DIR="\"/var/heimdal\"" Modified: stable/12/kerberos5/lib/libheimntlm/Makefile ============================================================================== --- stable/12/kerberos5/lib/libheimntlm/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libheimntlm/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -5,7 +5,8 @@ LDFLAGS= -Wl,--no-undefined LIBADD= crypto com_err krb5 roken SRCS= ntlm.c ntlm_err.c ntlm_err.h INCS= heimntlm.h heimntlm-protos.h ntlm_err.h -CFLAGS+=-I${KRB5DIR}/lib/ntlm -I${KRB5DIR}/lib/roken +CFLAGS+=-I${KRB5DIR}/lib/ntlm -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err VERSION_MAP= ${KRB5DIR}/lib/ntlm/version-script.map MAN= ntlm_buf.3 \ Modified: stable/12/kerberos5/lib/libhx509/Makefile ============================================================================== --- stable/12/kerberos5/lib/libhx509/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libhx509/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -211,7 +211,9 @@ CFLAGS+=-I${KRB5DIR}/lib/hx509 CFLAGS+=-I${KRB5DIR}/lib/hx509/ref CFLAGS+=-I${KRB5DIR}/lib/asn1 CFLAGS+=-I${KRB5DIR}/lib/wind -CFLAGS+=-I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/roken +CFLAGS+=-I${SRCTOP}/contrib/com_err +CFLAGS+=-I. GEN_OCSP= \ asn1_OCSPBasicOCSPResponse.x \ Modified: stable/12/kerberos5/lib/libkadm5clnt/Makefile ============================================================================== --- stable/12/kerberos5/lib/libkadm5clnt/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libkadm5clnt/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -34,7 +34,8 @@ SRCS= ad.c \ rename_c.c \ send_recv.c -CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err -I. .include Modified: stable/12/kerberos5/lib/libkadm5srv/Makefile ============================================================================== --- stable/12/kerberos5/lib/libkadm5srv/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libkadm5srv/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -35,7 +35,8 @@ SRCS= acl.c \ set_keys.c \ set_modifier.c -CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/kadm5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err -I. .include Modified: stable/12/kerberos5/lib/libkdc/Makefile ============================================================================== --- stable/12/kerberos5/lib/libkdc/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libkdc/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -28,7 +28,8 @@ SRCS= \ CFLAGS+= -I${KRB5DIR}/lib/roken \ -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/hdb \ - -I${KRB5DIR}/kdc + -I${KRB5DIR}/kdc \ + -I${SRCTOP}/contrib/com_err .include Modified: stable/12/kerberos5/lib/libkrb5/Makefile ============================================================================== --- stable/12/kerberos5/lib/libkrb5/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libkrb5/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -621,7 +621,9 @@ CFLAGS+= -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/roken \ -I${KRB5DIR}/lib/ipc \ - -I${KRB5DIR}/base -I. + -I${KRB5DIR}/base \ + -I${SRCTOP}/contrib/com_err \ + -I. .include Modified: stable/12/kerberos5/lib/libwind/Makefile ============================================================================== --- stable/12/kerberos5/lib/libwind/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/lib/libwind/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -27,7 +27,7 @@ SRCS= bidi.c \ SRCS+= wind_err.c \ wind_err.h -CFLAGS+=-I${KRB5DIR}/lib/roken -I. +CFLAGS+=-I${KRB5DIR}/lib/roken -I${SRCTOP}/contrib/com_err -I. .include Modified: stable/12/kerberos5/libexec/digest-service/Makefile ============================================================================== --- stable/12/kerberos5/libexec/digest-service/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/libexec/digest-service/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -7,7 +7,8 @@ CFLAGS+= -I${KRB5DIR}/kdc \ -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/ipc \ -I${KRB5DIR}/lib/wind \ - -I${KRB5DIR}/lib/roken + -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err LIBADD= hdb kdc heimipcs krb5 roken asn1 crypto vers heimntlm LDFLAGS=${LDAPLDFLAGS} Modified: stable/12/kerberos5/libexec/hprop/Makefile ============================================================================== --- stable/12/kerberos5/libexec/hprop/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/libexec/hprop/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -9,6 +9,7 @@ CFLAGS+=-I${KRB5DIR}/lib/asn1 CFLAGS+=-I${KRB5DIR}/lib/hx509 CFLAGS+=-I${KRB5DIR}/lib/ntlm CFLAGS+=-I${KRB5DIR}/kdc +CFLAGS+=-I${SRCTOP}/contrib/com_err CFLAGS+=-I${.OBJDIR:H:H}/lib/libkrb5 LIBADD= hdb krb5 roken vers DPADD= ${LDAPDPADD} Modified: stable/12/kerberos5/libexec/hpropd/Makefile ============================================================================== --- stable/12/kerberos5/libexec/hpropd/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/libexec/hpropd/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -3,7 +3,7 @@ PROG= hpropd MAN= hpropd.8 CFLAGS+=-I${KRB5DIR}/lib/roken -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/asn1 \ - -I${KRB5DIR}/kdc ${LDAPCFLAGS} + -I${KRB5DIR}/kdc -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= hdb krb5 roken vers DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} Modified: stable/12/kerberos5/libexec/kadmind/Makefile ============================================================================== --- stable/12/kerberos5/libexec/kadmind/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/libexec/kadmind/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -8,7 +8,7 @@ SRCS= rpc.c \ kadm_conn.c CFLAGS+=-I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ - ${LDAPCFLAGS} + -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= kadm5srv gssapi hdb krb5 roken vers DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} Modified: stable/12/kerberos5/libexec/kdc/Makefile ============================================================================== --- stable/12/kerberos5/libexec/kdc/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/libexec/kdc/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -9,7 +9,7 @@ SRCS= config.c \ main.c CFLAGS+=-I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/kdc ${LDAPCFLAGS} + -I${KRB5DIR}/kdc -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= kdc hdb krb5 roken crypt vers LDFLAGS=${LDAPLDFLAGS} Modified: stable/12/kerberos5/usr.bin/hxtool/Makefile ============================================================================== --- stable/12/kerberos5/usr.bin/hxtool/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/usr.bin/hxtool/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -5,7 +5,9 @@ MAN= CFLAGS+= -I${KRB5DIR}/lib/hx509 \ -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/lib/sl -I. + -I${KRB5DIR}/lib/sl \ + -I${SRCTOP}/contrib/com_err \ + -I. LIBADD= hx509 roken asn1 crypto sl vers edit SRCS= hxtool.c hxtool-commands.c hxtool-commands.h Modified: stable/12/kerberos5/usr.bin/kadmin/Makefile ============================================================================== --- stable/12/kerberos5/usr.bin/kadmin/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/usr.bin/kadmin/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -25,7 +25,7 @@ SRCS= add_enctype.c \ util.c CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/lib/sl -I. ${LDAPCFLAGS} + -I${KRB5DIR}/lib/sl -I${SRCTOP}/contrib/com_err -I. ${LDAPCFLAGS} LIBADD= kadm5clnt kadm5srv hdb krb5 roken vers sl asn1 crypto edit DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} Modified: stable/12/kerberos5/usr.bin/string2key/Makefile ============================================================================== --- stable/12/kerberos5/usr.bin/string2key/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/usr.bin/string2key/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -6,7 +6,8 @@ CFLAGS+= -I${KRB5DIR}/kdc \ -I${KRB5DIR}/lib/asn1 \ -I${KRB5DIR}/lib/krb5 \ -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/lib/windc + -I${KRB5DIR}/lib/windc \ + -I${SRCTOP}/contrib/com_err LIBADD= krb5 roken crypto vers .include Modified: stable/12/kerberos5/usr.bin/verify_krb5_conf/Makefile ============================================================================== --- stable/12/kerberos5/usr.bin/verify_krb5_conf/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/usr.bin/verify_krb5_conf/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -2,7 +2,8 @@ PROG= verify_krb5_conf MAN= verify_krb5_conf.8 -CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken +CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken \ + -I${SRCTOP}/contrib/com_err LIBADD= krb5 roken vers .include Modified: stable/12/kerberos5/usr.sbin/kstash/Makefile ============================================================================== --- stable/12/kerberos5/usr.sbin/kstash/Makefile Sat Feb 16 01:48:38 2019 (r344198) +++ stable/12/kerberos5/usr.sbin/kstash/Makefile Sat Feb 16 03:18:09 2019 (r344199) @@ -3,7 +3,7 @@ PROG= kstash MAN= kstash.8 CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/krb5 -I${KRB5DIR}/lib/roken \ - -I${KRB5DIR}/kdc ${LDAPCFLAGS} + -I${KRB5DIR}/kdc -I${SRCTOP}/contrib/com_err ${LDAPCFLAGS} LIBADD= hdb krb5 crypto vers DPADD= ${LDAPDPADD} LDADD= ${LDAPLDADD} From owner-svn-src-all@freebsd.org Sat Feb 16 04:16:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2AB3C14D0554; Sat, 16 Feb 2019 04:16:11 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BF82C70C2B; Sat, 16 Feb 2019 04:16:10 +0000 (UTC) (envelope-from jhibbits@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AD55112F7; Sat, 16 Feb 2019 04:16:10 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G4GAXN087758; Sat, 16 Feb 2019 04:16:10 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G4GAsC087757; Sat, 16 Feb 2019 04:16:10 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201902160416.x1G4GAsC087757@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 16 Feb 2019 04:16:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344202 - head/sys/powerpc/booke X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/powerpc/booke X-SVN-Commit-Revision: 344202 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BF82C70C2B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.948,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:16:11 -0000 Author: jhibbits Date: Sat Feb 16 04:16:10 2019 New Revision: 344202 URL: https://svnweb.freebsd.org/changeset/base/344202 Log: powerpc/booke: Use DMAP where possible for page copy and zeroing This avoids several locks and pmap_kenter()'s, improving performance marginally. MFC after: 2 weeks Modified: head/sys/powerpc/booke/pmap.c Modified: head/sys/powerpc/booke/pmap.c ============================================================================== --- head/sys/powerpc/booke/pmap.c Sat Feb 16 03:49:48 2019 (r344201) +++ head/sys/powerpc/booke/pmap.c Sat Feb 16 04:16:10 2019 (r344202) @@ -2973,14 +2973,19 @@ mmu_booke_zero_page_area(mmu_t mmu, vm_page_t m, int o /* XXX KASSERT off and size are within a single page? */ - mtx_lock(&zero_page_mutex); - va = zero_page_va; + if (hw_direct_map) { + va = PHYS_TO_DMAP(VM_PAGE_TO_PHYS(m)); + bzero((caddr_t)va + off, size); + } else { + mtx_lock(&zero_page_mutex); + va = zero_page_va; - mmu_booke_kenter(mmu, va, VM_PAGE_TO_PHYS(m)); - bzero((caddr_t)va + off, size); - mmu_booke_kremove(mmu, va); + mmu_booke_kenter(mmu, va, VM_PAGE_TO_PHYS(m)); + bzero((caddr_t)va + off, size); + mmu_booke_kremove(mmu, va); - mtx_unlock(&zero_page_mutex); + mtx_unlock(&zero_page_mutex); + } } /* @@ -2991,15 +2996,23 @@ mmu_booke_zero_page(mmu_t mmu, vm_page_t m) { vm_offset_t off, va; - mtx_lock(&zero_page_mutex); - va = zero_page_va; + if (hw_direct_map) { + va = PHYS_TO_DMAP(VM_PAGE_TO_PHYS(m)); + } else { + va = zero_page_va; + mtx_lock(&zero_page_mutex); - mmu_booke_kenter(mmu, va, VM_PAGE_TO_PHYS(m)); + mmu_booke_kenter(mmu, va, VM_PAGE_TO_PHYS(m)); + } + for (off = 0; off < PAGE_SIZE; off += cacheline_size) __asm __volatile("dcbz 0,%0" :: "r"(va + off)); - mmu_booke_kremove(mmu, va); - mtx_unlock(&zero_page_mutex); + if (!hw_direct_map) { + mmu_booke_kremove(mmu, va); + + mtx_unlock(&zero_page_mutex); + } } /* @@ -3015,13 +3028,20 @@ mmu_booke_copy_page(mmu_t mmu, vm_page_t sm, vm_page_t sva = copy_page_src_va; dva = copy_page_dst_va; - mtx_lock(©_page_mutex); - mmu_booke_kenter(mmu, sva, VM_PAGE_TO_PHYS(sm)); - mmu_booke_kenter(mmu, dva, VM_PAGE_TO_PHYS(dm)); + if (hw_direct_map) { + sva = PHYS_TO_DMAP(VM_PAGE_TO_PHYS(sm)); + dva = PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dm)); + } else { + mtx_lock(©_page_mutex); + mmu_booke_kenter(mmu, sva, VM_PAGE_TO_PHYS(sm)); + mmu_booke_kenter(mmu, dva, VM_PAGE_TO_PHYS(dm)); + } memcpy((caddr_t)dva, (caddr_t)sva, PAGE_SIZE); - mmu_booke_kremove(mmu, dva); - mmu_booke_kremove(mmu, sva); - mtx_unlock(©_page_mutex); + if (!hw_direct_map) { + mmu_booke_kremove(mmu, dva); + mmu_booke_kremove(mmu, sva); + mtx_unlock(©_page_mutex); + } } static inline void @@ -3032,26 +3052,31 @@ mmu_booke_copy_pages(mmu_t mmu, vm_page_t *ma, vm_offs vm_offset_t a_pg_offset, b_pg_offset; int cnt; - mtx_lock(©_page_mutex); - while (xfersize > 0) { - a_pg_offset = a_offset & PAGE_MASK; - cnt = min(xfersize, PAGE_SIZE - a_pg_offset); - mmu_booke_kenter(mmu, copy_page_src_va, - VM_PAGE_TO_PHYS(ma[a_offset >> PAGE_SHIFT])); - a_cp = (char *)copy_page_src_va + a_pg_offset; - b_pg_offset = b_offset & PAGE_MASK; - cnt = min(cnt, PAGE_SIZE - b_pg_offset); - mmu_booke_kenter(mmu, copy_page_dst_va, - VM_PAGE_TO_PHYS(mb[b_offset >> PAGE_SHIFT])); - b_cp = (char *)copy_page_dst_va + b_pg_offset; - bcopy(a_cp, b_cp, cnt); - mmu_booke_kremove(mmu, copy_page_dst_va); - mmu_booke_kremove(mmu, copy_page_src_va); - a_offset += cnt; - b_offset += cnt; - xfersize -= cnt; + if (hw_direct_map) { + bcopy((caddr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(*ma)) + a_offset, + (caddr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(*mb)), xfersize); + } else { + mtx_lock(©_page_mutex); + while (xfersize > 0) { + a_pg_offset = a_offset & PAGE_MASK; + cnt = min(xfersize, PAGE_SIZE - a_pg_offset); + mmu_booke_kenter(mmu, copy_page_src_va, + VM_PAGE_TO_PHYS(ma[a_offset >> PAGE_SHIFT])); + a_cp = (char *)copy_page_src_va + a_pg_offset; + b_pg_offset = b_offset & PAGE_MASK; + cnt = min(cnt, PAGE_SIZE - b_pg_offset); + mmu_booke_kenter(mmu, copy_page_dst_va, + VM_PAGE_TO_PHYS(mb[b_offset >> PAGE_SHIFT])); + b_cp = (char *)copy_page_dst_va + b_pg_offset; + bcopy(a_cp, b_cp, cnt); + mmu_booke_kremove(mmu, copy_page_dst_va); + mmu_booke_kremove(mmu, copy_page_src_va); + a_offset += cnt; + b_offset += cnt; + xfersize -= cnt; + } + mtx_unlock(©_page_mutex); } - mtx_unlock(©_page_mutex); } static vm_offset_t @@ -3064,6 +3089,9 @@ mmu_booke_quick_enter_page(mmu_t mmu, vm_page_t m) paddr = VM_PAGE_TO_PHYS(m); + if (hw_direct_map) + return (PHYS_TO_DMAP(paddr)); + flags = PTE_SR | PTE_SW | PTE_SX | PTE_WIRED | PTE_VALID; flags |= tlb_calc_wimg(paddr, pmap_page_get_memattr(m)) << PTE_MAS2_SHIFT; flags |= PTE_PS_4KB; @@ -3096,6 +3124,9 @@ static void mmu_booke_quick_remove_page(mmu_t mmu, vm_offset_t addr) { pte_t *pte; + + if (hw_direct_map) + return; pte = pte_find(mmu, kernel_pmap, addr); From owner-svn-src-all@freebsd.org Sat Feb 16 04:49:52 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6E25214D17F5; Sat, 16 Feb 2019 04:49:52 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D52A772101; Sat, 16 Feb 2019 04:49:51 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CA3051854; Sat, 16 Feb 2019 04:49:51 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G4np0X004056; Sat, 16 Feb 2019 04:49:51 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G4np2t004055; Sat, 16 Feb 2019 04:49:51 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160449.x1G4np2t004055@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 04:49:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344207 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 344207 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: D52A772101 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:49:52 -0000 Author: avos Date: Sat Feb 16 04:49:51 2019 New Revision: 344207 URL: https://svnweb.freebsd.org/changeset/base/344207 Log: Allow to remove unused files via 'make delete-old(-libs)' when WITHOUT_OFED and / or WITHOUT_OFED_EXTRA src.conf(5) options are set. MFC after: 5 days Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 04:49:10 2019 (r344206) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 04:49:51 2019 (r344207) @@ -7172,6 +7172,383 @@ OLD_FILES+=usr/share/man/man8/ntpq.8.gz OLD_FILES+=usr/share/man/man8/ntptime.8.gz .endif +.if ${MK_OFED} == no +OLD_FILES+=etc/newsyslog.conf.d/opensm.conf +OLD_FILES+=etc/rc.d/opensm +OLD_FILES+=usr/bin/ibstat +OLD_FILES+=usr/bin/ibv_asyncwatch +OLD_FILES+=usr/bin/ibv_devices +OLD_FILES+=usr/bin/ibv_devinfo +OLD_FILES+=usr/bin/ibv_rc_pingpong +OLD_FILES+=usr/bin/ibv_srq_pingpong +OLD_FILES+=usr/bin/ibv_uc_pingpong +OLD_FILES+=usr/bin/ibv_ud_pingpong +OLD_FILES+=usr/bin/mckey +OLD_FILES+=usr/bin/rping +OLD_FILES+=usr/bin/ucmatose +OLD_FILES+=usr/bin/udaddy +OLD_FILES+=usr/include/infiniband/marshall.h +OLD_FILES+=usr/include/infiniband/kern-abi.h +OLD_FILES+=usr/include/infiniband/umad_sm.h +OLD_FILES+=usr/include/infiniband/umad.h +OLD_FILES+=usr/include/infiniband/arch.h +OLD_FILES+=usr/include/infiniband/verbs.h +OLD_FILES+=usr/include/infiniband/ib.h +OLD_FILES+=usr/include/infiniband/cm.h +OLD_FILES+=usr/include/infiniband/opcode.h +OLD_FILES+=usr/include/infiniband/ibnetdisc.h +OLD_FILES+=usr/include/infiniband/driver.h +OLD_FILES+=usr/include/infiniband/mad_osd.h +OLD_FILES+=usr/include/infiniband/umad_types.h +OLD_FILES+=usr/include/infiniband/umad_cm.h +OLD_FILES+=usr/include/infiniband/cm_abi.h +OLD_FILES+=usr/include/infiniband/sa-kern-abi.h +OLD_FILES+=usr/include/infiniband/ibnetdisc_osd.h +OLD_FILES+=usr/include/infiniband/opensm/osm_event_plugin.h +OLD_FILES+=usr/include/infiniband/opensm/osm_console_io.h +OLD_FILES+=usr/include/infiniband/opensm/osm_ucast_cache.h +OLD_FILES+=usr/include/infiniband/opensm/osm_port.h +OLD_FILES+=usr/include/infiniband/opensm/osm_path.h +OLD_FILES+=usr/include/infiniband/opensm/osm_mtree.h +OLD_FILES+=usr/include/infiniband/opensm/osm_log.h +OLD_FILES+=usr/include/infiniband/opensm/osm_mcm_port.h +OLD_FILES+=usr/include/infiniband/opensm/osm_subnet.h +OLD_FILES+=usr/include/infiniband/opensm/osm_pkey.h +OLD_FILES+=usr/include/infiniband/opensm/osm_remote_sm.h +OLD_FILES+=usr/include/infiniband/opensm/osm_qos_policy.h +OLD_FILES+=usr/include/infiniband/opensm/osm_sm.h +OLD_FILES+=usr/include/infiniband/opensm/osm_node.h +OLD_FILES+=usr/include/infiniband/opensm/osm_mcast_mgr.h +OLD_FILES+=usr/include/infiniband/opensm/osm_madw.h +OLD_FILES+=usr/include/infiniband/opensm/osm_lid_mgr.h +OLD_FILES+=usr/include/infiniband/opensm/osm_congestion_control.h +OLD_FILES+=usr/include/infiniband/opensm/osm_port_profile.h +OLD_FILES+=usr/include/infiniband/opensm/osm_perfmgr.h +OLD_FILES+=usr/include/infiniband/opensm/osm_service.h +OLD_FILES+=usr/include/infiniband/opensm/osm_base.h +OLD_FILES+=usr/include/infiniband/opensm/osm_vl15intf.h +OLD_FILES+=usr/include/infiniband/opensm/st.h +OLD_FILES+=usr/include/infiniband/opensm/osm_attrib_req.h +OLD_FILES+=usr/include/infiniband/opensm/osm_ucast_mgr.h +OLD_FILES+=usr/include/infiniband/opensm/osm_db.h +OLD_FILES+=usr/include/infiniband/opensm/osm_sa_mad_ctrl.h +OLD_FILES+=usr/include/infiniband/opensm/osm_db_pack.h +OLD_FILES+=usr/include/infiniband/opensm/osm_opensm.h +OLD_FILES+=usr/include/infiniband/opensm/osm_mesh.h +OLD_FILES+=usr/include/infiniband/opensm/osm_mcast_tbl.h +OLD_FILES+=usr/include/infiniband/opensm/osm_sm_mad_ctrl.h +OLD_FILES+=usr/include/infiniband/opensm/osm_stats.h +OLD_FILES+=usr/include/infiniband/opensm/osm_mad_pool.h +OLD_FILES+=usr/include/infiniband/opensm/osm_switch.h +OLD_FILES+=usr/include/infiniband/opensm/osm_ucast_lash.h +OLD_FILES+=usr/include/infiniband/opensm/osm_errors.h +OLD_FILES+=usr/include/infiniband/opensm/osm_partition.h +OLD_FILES+=usr/include/infiniband/opensm/osm_prefix_route.h +OLD_FILES+=usr/include/infiniband/opensm/osm_helper.h +OLD_FILES+=usr/include/infiniband/opensm/osm_version.h +OLD_FILES+=usr/include/infiniband/opensm/osm_sa.h +OLD_FILES+=usr/include/infiniband/opensm/osm_config.h +OLD_FILES+=usr/include/infiniband/opensm/osm_multicast.h +OLD_FILES+=usr/include/infiniband/opensm/osm_file_ids.h +OLD_FILES+=usr/include/infiniband/opensm/osm_perfmgr_db.h +OLD_FILES+=usr/include/infiniband/opensm/osm_console.h +OLD_FILES+=usr/include/infiniband/opensm/osm_msgdef.h +OLD_FILES+=usr/include/infiniband/opensm/osm_router.h +OLD_FILES+=usr/include/infiniband/opensm/osm_guid.h +OLD_FILES+=usr/include/infiniband/opensm/osm_inform.h +OLD_DIRS+=usr/include/infiniband/opensm +OLD_FILES+=usr/include/infiniband/iba/ib_types.h +OLD_FILES+=usr/include/infiniband/iba/ib_cm_types.h +OLD_DIRS+=usr/include/infiniband/iba +OLD_FILES+=usr/include/infiniband/umad_str.h +OLD_FILES+=usr/include/infiniband/udma_barrier.h +OLD_FILES+=usr/include/infiniband/umad_sa.h +OLD_FILES+=usr/include/infiniband/mad.h +OLD_FILES+=usr/include/infiniband/sa.h +OLD_FILES+=usr/include/infiniband/byteorder.h +OLD_FILES+=usr/include/infiniband/types.h +OLD_FILES+=usr/include/infiniband/byteswap.h +OLD_FILES+=usr/include/infiniband/vendor/osm_pkt_randomizer.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_rmpp_ctx.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mtl_hca_guid.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_txn.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_svc.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_test.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_inout.h +OLD_FILES+=usr/include/infiniband/vendor/osm_mtl_bind.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_hca.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_sa_api.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_sender.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor.h +OLD_FILES+=usr/include/infiniband/vendor/osm_umadt.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mtl_transaction_mgr.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_defs.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_dispatcher.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_api.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mtl.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_transport.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_al.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_sar.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_umadt.h +OLD_FILES+=usr/include/infiniband/vendor/osm_ts_useraccess.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_ts.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_mlx_transport_anafa.h +OLD_FILES+=usr/include/infiniband/vendor/osm_vendor_ibumad.h +OLD_DIRS+=usr/include/infiniband/vendor +OLD_FILES+=usr/include/infiniband/endian.h +OLD_FILES+=usr/include/infiniband/complib/cl_byteswap.h +OLD_FILES+=usr/include/infiniband/complib/cl_types.h +OLD_FILES+=usr/include/infiniband/complib/cl_map.h +OLD_FILES+=usr/include/infiniband/complib/cl_packon.h +OLD_FILES+=usr/include/infiniband/complib/cl_timer.h +OLD_FILES+=usr/include/infiniband/complib/cl_thread_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_thread.h +OLD_FILES+=usr/include/infiniband/complib/cl_event.h +OLD_FILES+=usr/include/infiniband/complib/cl_byteswap_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_passivelock.h +OLD_FILES+=usr/include/infiniband/complib/cl_vector.h +OLD_FILES+=usr/include/infiniband/complib/cl_nodenamemap.h +OLD_FILES+=usr/include/infiniband/complib/cl_event_wheel.h +OLD_FILES+=usr/include/infiniband/complib/cl_log.h +OLD_FILES+=usr/include/infiniband/complib/cl_fleximap.h +OLD_FILES+=usr/include/infiniband/complib/cl_qlist.h +OLD_FILES+=usr/include/infiniband/complib/cl_timer_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_pool.h +OLD_FILES+=usr/include/infiniband/complib/cl_debug.h +OLD_FILES+=usr/include/infiniband/complib/cl_types_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_dispatcher.h +OLD_FILES+=usr/include/infiniband/complib/cl_ptr_vector.h +OLD_FILES+=usr/include/infiniband/complib/cl_atomic_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_qmap.h +OLD_FILES+=usr/include/infiniband/complib/cl_spinlock_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_qcomppool.h +OLD_FILES+=usr/include/infiniband/complib/cl_threadpool.h +OLD_FILES+=usr/include/infiniband/complib/cl_list.h +OLD_FILES+=usr/include/infiniband/complib/cl_debug_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_packoff.h +OLD_FILES+=usr/include/infiniband/complib/cl_qpool.h +OLD_FILES+=usr/include/infiniband/complib/cl_spinlock.h +OLD_FILES+=usr/include/infiniband/complib/cl_event_osd.h +OLD_FILES+=usr/include/infiniband/complib/cl_atomic.h +OLD_FILES+=usr/include/infiniband/complib/cl_math.h +OLD_FILES+=usr/include/infiniband/complib/cl_comppool.h +OLD_DIRS+=usr/include/infiniband/complib +OLD_DIRS+=usr/include/infiniband +OLD_FILES+=usr/lib/libcxgb4.a +OLD_FILES+=usr/lib/libcxgb4.so +OLD_LIBS+=usr/lib/libcxgb4.so.1 +OLD_FILES+=usr/lib/libcxgb4_p.a +OLD_FILES+=usr/lib/libibcm.a +OLD_FILES+=usr/lib/libibcm.so +OLD_LIBS+=usr/lib/libibcm.so.1 +OLD_FILES+=usr/lib/libibcm_p.a +OLD_FILES+=usr/lib/libibmad.a +OLD_FILES+=usr/lib/libibmad.so +OLD_LIBS+=usr/lib/libibmad.so.5 +OLD_FILES+=usr/lib/libibmad_p.a +OLD_FILES+=usr/lib/libibnetdisc.a +OLD_FILES+=usr/lib/libibnetdisc.so +OLD_LIBS+=usr/lib/libibnetdisc.so.5 +OLD_FILES+=usr/lib/libibnetdisc_p.a +OLD_FILES+=usr/lib/libibumad.a +OLD_FILES+=usr/lib/libibumad.so +OLD_LIBS+=usr/lib/libibumad.so.1 +OLD_FILES+=usr/lib/libibumad_p.a +OLD_FILES+=usr/lib/libibverbs.a +OLD_FILES+=usr/lib/libibverbs.so +OLD_LIBS+=usr/lib/libibverbs.so.1 +OLD_FILES+=usr/lib/libibverbs_p.a +OLD_FILES+=usr/lib/libmlx4.a +OLD_FILES+=usr/lib/libmlx4.so +OLD_LIBS+=usr/lib/libmlx4.so.1 +OLD_FILES+=usr/lib/libmlx4_p.a +OLD_FILES+=usr/lib/libmlx5.a +OLD_FILES+=usr/lib/libmlx5.so +OLD_LIBS+=usr/lib/libmlx5.so.1 +OLD_FILES+=usr/lib/libmlx5_p.a +OLD_FILES+=usr/lib/libopensm.a +OLD_FILES+=usr/lib/libopensm.so +OLD_LIBS+=usr/lib/libopensm.so.5 +OLD_FILES+=usr/lib/libopensm_p.a +OLD_FILES+=usr/lib/libosmcomp.a +OLD_FILES+=usr/lib/libosmcomp.so +OLD_LIBS+=usr/lib/libosmcomp.so.3 +OLD_FILES+=usr/lib/libosmcomp_p.a +OLD_FILES+=usr/lib/libosmvendor.a +OLD_FILES+=usr/lib/libosmvendor.so +OLD_LIBS+=usr/lib/libosmvendor.so.4 +OLD_FILES+=usr/lib/libosmvendor_p.a +OLD_FILES+=usr/lib/librdmacm.a +OLD_FILES+=usr/lib/librdmacm.so +OLD_LIBS+=usr/lib/librdmacm.so.1 +OLD_FILES+=usr/lib/librdmacm_p.a +OLD_FILES+=usr/share/man/man1/ibv_asyncwatch.1.gz +OLD_FILES+=usr/share/man/man1/ibv_devices.1.gz +OLD_FILES+=usr/share/man/man1/ibv_devinfo.1.gz +OLD_FILES+=usr/share/man/man1/ibv_rc_pingpong.1.gz +OLD_FILES+=usr/share/man/man1/ibv_srq_pingpong.1.gz +OLD_FILES+=usr/share/man/man1/ibv_uc_pingpong.1.gz +OLD_FILES+=usr/share/man/man1/ibv_ud_pingpong.1.gz +OLD_FILES+=usr/share/man/man1/mckey.1.gz +OLD_FILES+=usr/share/man/man1/rping.1.gz +OLD_FILES+=usr/share/man/man1/ucmatose.1.gz +OLD_FILES+=usr/share/man/man1/udaddy.1.gz +OLD_FILES+=usr/share/man/man3/ibnd_debug.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_destroy_fabric.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_discover_fabric.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_find_node_dr.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_find_node_guid.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_iter_nodes.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_iter_nodes_type.3.gz +OLD_FILES+=usr/share/man/man3/ibnd_show_progress.3.gz +OLD_FILES+=usr/share/man/man3/ibv_alloc_mw.3.gz +OLD_FILES+=usr/share/man/man3/ibv_alloc_pd.3.gz +OLD_FILES+=usr/share/man/man3/ibv_attach_mcast.3.gz +OLD_FILES+=usr/share/man/man3/ibv_bind_mw.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_ah.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_ah_from_wc.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_comp_channel.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_cq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_cq_ex.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_flow.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_qp.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_qp_ex.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_rwq_ind_table.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_srq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_srq_ex.3.gz +OLD_FILES+=usr/share/man/man3/ibv_create_wq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_event_type_str.3.gz +OLD_FILES+=usr/share/man/man3/ibv_fork_init.3.gz +OLD_FILES+=usr/share/man/man3/ibv_get_async_event.3.gz +OLD_FILES+=usr/share/man/man3/ibv_get_cq_event.3.gz +OLD_FILES+=usr/share/man/man3/ibv_get_device_guid.3.gz +OLD_FILES+=usr/share/man/man3/ibv_get_device_list.3.gz +OLD_FILES+=usr/share/man/man3/ibv_get_device_name.3.gz +OLD_FILES+=usr/share/man/man3/ibv_get_srq_num.3.gz +OLD_FILES+=usr/share/man/man3/ibv_inc_rkey.3.gz +OLD_FILES+=usr/share/man/man3/ibv_modify_qp.3.gz +OLD_FILES+=usr/share/man/man3/ibv_modify_srq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_modify_wq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_open_device.3.gz +OLD_FILES+=usr/share/man/man3/ibv_open_qp.3.gz +OLD_FILES+=usr/share/man/man3/ibv_open_xrcd.3.gz +OLD_FILES+=usr/share/man/man3/ibv_poll_cq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_post_recv.3.gz +OLD_FILES+=usr/share/man/man3/ibv_post_send.3.gz +OLD_FILES+=usr/share/man/man3/ibv_post_srq_recv.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_device.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_device_ex.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_gid.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_pkey.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_port.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_qp.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_rt_values_ex.3.gz +OLD_FILES+=usr/share/man/man3/ibv_query_srq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_rate_to_mbps.3.gz +OLD_FILES+=usr/share/man/man3/ibv_rate_to_mult.3.gz +OLD_FILES+=usr/share/man/man3/ibv_reg_mr.3.gz +OLD_FILES+=usr/share/man/man3/ibv_req_notify_cq.3.gz +OLD_FILES+=usr/share/man/man3/ibv_rereg_mr.3.gz +OLD_FILES+=usr/share/man/man3/ibv_resize_cq.3.gz +OLD_FILES+=usr/share/man/man3/rdma_accept.3.gz +OLD_FILES+=usr/share/man/man3/rdma_ack_cm_event.3.gz +OLD_FILES+=usr/share/man/man3/rdma_bind_addr.3.gz +OLD_FILES+=usr/share/man/man3/rdma_connect.3.gz +OLD_FILES+=usr/share/man/man3/rdma_create_ep.3.gz +OLD_FILES+=usr/share/man/man3/rdma_create_event_channel.3.gz +OLD_FILES+=usr/share/man/man3/rdma_create_id.3.gz +OLD_FILES+=usr/share/man/man3/rdma_create_qp.3.gz +OLD_FILES+=usr/share/man/man3/rdma_create_srq.3.gz +OLD_FILES+=usr/share/man/man3/rdma_dereg_mr.3.gz +OLD_FILES+=usr/share/man/man3/rdma_destroy_ep.3.gz +OLD_FILES+=usr/share/man/man3/rdma_destroy_event_channel.3.gz +OLD_FILES+=usr/share/man/man3/rdma_destroy_id.3.gz +OLD_FILES+=usr/share/man/man3/rdma_destroy_qp.3.gz +OLD_FILES+=usr/share/man/man3/rdma_destroy_srq.3.gz +OLD_FILES+=usr/share/man/man3/rdma_disconnect.3.gz +OLD_FILES+=usr/share/man/man3/rdma_event_str.3.gz +OLD_FILES+=usr/share/man/man3/rdma_free_devices.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_cm_event.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_devices.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_dst_port.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_local_addr.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_peer_addr.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_recv_comp.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_request.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_send_comp.3.gz +OLD_FILES+=usr/share/man/man3/rdma_get_src_port.3.gz +OLD_FILES+=usr/share/man/man3/rdma_getaddrinfo.3.gz +OLD_FILES+=usr/share/man/man3/rdma_join_multicast.3.gz +OLD_FILES+=usr/share/man/man3/rdma_leave_multicast.3.gz +OLD_FILES+=usr/share/man/man3/rdma_listen.3.gz +OLD_FILES+=usr/share/man/man3/rdma_migrate_id.3.gz +OLD_FILES+=usr/share/man/man3/rdma_notify.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_read.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_readv.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_recv.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_recvv.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_send.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_sendv.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_ud_send.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_write.3.gz +OLD_FILES+=usr/share/man/man3/rdma_post_writev.3.gz +OLD_FILES+=usr/share/man/man3/rdma_reg_msgs.3.gz +OLD_FILES+=usr/share/man/man3/rdma_reg_read.3.gz +OLD_FILES+=usr/share/man/man3/rdma_reg_write.3.gz +OLD_FILES+=usr/share/man/man3/rdma_reject.3.gz +OLD_FILES+=usr/share/man/man3/rdma_resolve_addr.3.gz +OLD_FILES+=usr/share/man/man3/rdma_resolve_route.3.gz +OLD_FILES+=usr/share/man/man3/rdma_set_option.3.gz +OLD_FILES+=usr/share/man/man4/mlx4ib.4.gz +OLD_FILES+=usr/share/man/man4/mlx5ib.4.gz +OLD_FILES+=usr/share/man/man8/ibstat.8.gz +.endif + +.if ${MK_OFED_EXTRA} == no +OLD_FILES+=usr/bin/dump_fts +OLD_FILES+=usr/bin/ibaddr +OLD_FILES+=usr/bin/ibcacheedit +OLD_FILES+=usr/bin/ibccconfig +OLD_FILES+=usr/bin/ibccquery +OLD_FILES+=usr/bin/iblinkinfo +OLD_FILES+=usr/bin/ibmirror +OLD_FILES+=usr/bin/ibnetdiscover +OLD_FILES+=usr/bin/ibping +OLD_FILES+=usr/bin/ibportstate +OLD_FILES+=usr/bin/ibqueryerrors +OLD_FILES+=usr/bin/ibroute +OLD_FILES+=usr/bin/ibsysstat +OLD_FILES+=usr/bin/ibtracert +OLD_FILES+=usr/bin/opensm +OLD_FILES+=usr/bin/perfquery +OLD_FILES+=usr/bin/saquery +OLD_FILES+=usr/bin/sminfo +OLD_FILES+=usr/bin/smpdump +OLD_FILES+=usr/bin/smpquery +OLD_FILES+=usr/bin/vendstat +OLD_FILES+=usr/share/man/man8/dump_fts.8.gz +OLD_FILES+=usr/share/man/man8/ibaddr.8.gz +OLD_FILES+=usr/share/man/man8/ibcacheedit.8.gz +OLD_FILES+=usr/share/man/man8/ibccconfig.8.gz +OLD_FILES+=usr/share/man/man8/ibccquery.8.gz +OLD_FILES+=usr/share/man/man8/iblinkinfo.8.gz +OLD_FILES+=usr/share/man/man8/ibnetdiscover.8.gz +OLD_FILES+=usr/share/man/man8/ibping.8.gz +OLD_FILES+=usr/share/man/man8/ibportstate.8.gz +OLD_FILES+=usr/share/man/man8/ibqueryerrors.8.gz +OLD_FILES+=usr/share/man/man8/ibroute.8.gz +OLD_FILES+=usr/share/man/man8/ibsysstat.8.gz +OLD_FILES+=usr/share/man/man8/ibtracert.8.gz +OLD_FILES+=usr/share/man/man8/opensm.8.gz +OLD_FILES+=usr/share/man/man8/perfquery.8.gz +OLD_FILES+=usr/share/man/man8/saquery.8.gz +OLD_FILES+=usr/share/man/man8/sminfo.8.gz +OLD_FILES+=usr/share/man/man8/smpdump.8.gz +OLD_FILES+=usr/share/man/man8/smpquery.8.gz +OLD_FILES+=usr/share/man/man8/vendstat.8.gz +.endif + .if ${MK_OPENSSH} == no OLD_FILES+=etc/rc.d/sshd OLD_FILES+=etc/ssh/moduli From owner-svn-src-all@freebsd.org Sat Feb 16 04:55:30 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1A53614D1B17; Sat, 16 Feb 2019 04:55:30 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg1-x533.google.com (mail-pg1-x533.google.com [IPv6:2607:f8b0:4864:20::533]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 81B6B7262D; Sat, 16 Feb 2019 04:55:29 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg1-x533.google.com with SMTP id m2so3529229pgl.5; Fri, 15 Feb 2019 20:55:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=cvWkDYo4kGKEn3aLTk+x0e0T1A4qac9V7BvZiGVY1MI=; b=oGxLDKlQ0Sm5YlziSVSDIVYzBv8r7FINdb9w8NHw5HwNMmCjNyMLVeSsIuqfSCNYNd qFQXy01GyVL/3c8Vj724nuJDBAO8HYHSU3ufWfPnS87IZ5xpLwHN4t9NL/oQ7RHtFaMU /WHEhf3ExmMYIrR4+I5FcFajCbIIJ370q3xjzhVC/OsOH0DEdYBbCsKkrNS6I3Ca/Adg 2/sa0qmW/LSgs5tdI3ajYrqBzsSxU/Jou3fFphfG6PnuIjwHnXIOSClxC+3CJOtTaKzw 4CANmu3qIDd5Ac0kAKuvFxypWHvEkzwfVJZhP07uTL4x34o6Sll86vbuDMWGC7Ocybev q1OA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=cvWkDYo4kGKEn3aLTk+x0e0T1A4qac9V7BvZiGVY1MI=; b=uQX8MtvKn7rrlW32fEcQXjanysWP1nXP5jKSz0SUOZeBzAvQ63Jlhk42hb6UpKrgF3 1UcG9UkrMaKHMmEjHmFbX3JIwNnq2FQqBn/CKF8xZIzFLISL2R9yEWveiXiyFkupH4S9 772gLK9N44qlxksmN5CFyV8oNtRwKsZCE28tQXiawJXMgDYoBY5sJrlunjY+RoqUuKoG 7xFGLfvp02WwqlduNzpVcsrBtj1OrvZzmlP2YS0poaTDPLZZcranRTwUS0uYZEIUtIsr A841xqD1DANiBCoJnKXJ7rOKoZ5B1m9IuDm8/znaIQAmEa8o4Gv3sQnXfGDT1HhwgXJT j9Jw== X-Gm-Message-State: AHQUAubz94TZBGTlxJKBOds3jeTPBZPTNF0/+F6jOdGn9j8qfiRASGVK Z93uUHj61CKa3KUwSVfZUVIehL0e X-Google-Smtp-Source: AHgI3IY2C4M5BqjVGv3WyU9/rpuG3QT4exojm9Zjj3PClo0dq7RaVlB02iN4TfY9rIFYto3xWMvQuw== X-Received: by 2002:a63:3703:: with SMTP id e3mr8559638pga.348.1550292927926; Fri, 15 Feb 2019 20:55:27 -0800 (PST) Received: from [192.168.20.22] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id y129sm15825396pfy.102.2019.02.15.20.55.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Feb 2019 20:55:27 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r344191 - head/sbin/nvmecontrol From: Enji Cooper X-Mailer: iPhone Mail (16C104) In-Reply-To: <201902160015.x1G0F3EJ060777@repo.freebsd.org> Date: Fri, 15 Feb 2019 20:55:26 -0800 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <201902160015.x1G0F3EJ060777@repo.freebsd.org> To: Warner Losh X-Rspamd-Queue-Id: 81B6B7262D X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.94)[-0.939,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:55:30 -0000 > On Feb 15, 2019, at 16:15, Warner Losh wrote: >=20 > Author: imp > Date: Sat Feb 16 00:15:02 2019 > New Revision: 344191 > URL: https://svnweb.freebsd.org/changeset/base/344191 >=20 > Log: > Remove write-only s_flag. >=20 > Modified: > head/sbin/nvmecontrol/firmware.c >=20 > Modified: head/sbin/nvmecontrol/firmware.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D > --- head/sbin/nvmecontrol/firmware.c Fri Feb 15 23:46:34 2019 (r3441= 90) > +++ head/sbin/nvmecontrol/firmware.c Sat Feb 16 00:15:02 2019 (r3441= 91) > @@ -177,7 +177,7 @@ static void > firmware(const struct nvme_function *nf, int argc, char *argv[]) > { > int fd =3D -1, slot =3D 0; > - int a_flag, s_flag, f_flag; > + int a_flag, f_flag; > int activate_action, reboot_required; > int opt; > char *p, *image =3D NULL; > @@ -188,7 +188,7 @@ firmware(const struct nvme_function *nf, int argc, cha= > uint8_t fw_slot1_ro, fw_num_slots; > struct nvme_controller_data cdata; >=20 > - a_flag =3D s_flag =3D f_flag =3D false; > + a_flag =3D f_flag =3D false; >=20 > while ((opt =3D getopt(argc, argv, "af:s:")) !=3D -1) { Hi Warner! Should =E2=80=9Cs:=E2=80=9D be removed here, along with any correspondin= g documentation about =E2=80=98-s foo=E2=80=99? Thanks so much! -Enji= From owner-svn-src-all@freebsd.org Sat Feb 16 05:04:03 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E6E7C14D1EA3; Sat, 16 Feb 2019 05:04:02 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 89C9E72A75; Sat, 16 Feb 2019 05:04:02 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 787021BCB; Sat, 16 Feb 2019 05:04:02 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G542HB014451; Sat, 16 Feb 2019 05:04:02 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G5420S014450; Sat, 16 Feb 2019 05:04:02 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902160504.x1G5420S014450@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 05:04:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344208 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 344208 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 89C9E72A75 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.948,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 05:04:03 -0000 Author: avos Date: Sat Feb 16 05:04:01 2019 New Revision: 344208 URL: https://svnweb.freebsd.org/changeset/base/344208 Log: Add more rc.d scripts / empty directors / config files into OptionalObsoleteFiles.inc Note: only files with conditional installation logic were included from the PR. PR: 233046 Submitted by: MFC after: 5 days Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 04:49:51 2019 (r344207) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 05:04:01 2019 (r344208) @@ -54,6 +54,10 @@ OLD_FILES+=usr/share/man/man8/acpidump.8.gz OLD_FILES+=usr/share/man/man8/iasl.8.gz .endif +.if ${MK_ACPI} == no && ${MK_APM} == no +OLD_FILES+=etc/rc.d/powerd +.endif + .if ${MK_AMD} == no OLD_FILES+=etc/amd.map OLD_FILES+=etc/newsyslog.conf.d/amd.conf @@ -434,6 +438,7 @@ OLD_FILES+=usr/bin/ld.bfd .endif .if ${MK_BLACKLIST} == no +OLD_FILES+=etc/blacklistd.conf OLD_FILES+=etc/rc.d/blacklistd OLD_FILES+=usr/include/blacklist.h OLD_FILES+=usr/lib/libblacklist.a @@ -655,6 +660,7 @@ OLD_FILES+=usr/share/man/man8/zfsloader.8.gz .endif .if ${MK_BOOTPARAMD} == no +OLD_FILES+=etc/rc.d/bootparams OLD_FILES+=usr/sbin/bootparamd OLD_FILES+=usr/share/man/man5/bootparams.5.gz OLD_FILES+=usr/share/man/man8/bootparamd.8.gz @@ -1131,6 +1137,7 @@ OLD_FILES+=etc/casper/system.grp OLD_FILES+=etc/casper/system.pwd OLD_FILES+=etc/casper/system.random OLD_FILES+=etc/casper/system.sysctl +OLD_DIRS+=etc/casper OLD_FILES+=etc/rc.d/casperd OLD_LIBS+=lib/libcapsicum.so.0 OLD_LIBS+=lib/libcasper.so.0 @@ -1293,6 +1300,8 @@ OLD_FILES+=etc/rc.d/zvol OLD_FILES+=etc/devd/zfs.conf OLD_FILES+=etc/periodic/daily/404.status-zfs OLD_FILES+=etc/periodic/daily/800.scrub-zfs +OLD_FILES+=etc/zfs/exports +OLD_DIRS+=etc/zfs OLD_LIBS+=lib/libzfs.so.2 OLD_LIBS+=lib/libzfs.so.3 OLD_LIBS+=lib/libzfs_core.so.2 @@ -2279,6 +2288,7 @@ OLD_DIRS+=usr/share/dict .if ${MK_DMAGENT} == no OLD_FILES+=etc/dma/dma.conf +OLD_DIRS+=etc/dma OLD_FILES+=usr/libexec/dma OLD_FILES+=usr/libexec/dma-mbox-create OLD_FILES+=usr/share/man/man8/dma.8.gz @@ -2914,6 +2924,7 @@ OLD_FILES+=usr/share/man/man8/gssd.8.gz .endif .if ${MK_HAST} == no +OLD_FILES+=etc/rc.d/hastd OLD_FILES+=sbin/hastctl OLD_FILES+=sbin/hastd OLD_FILES+=usr/share/examples/hast/ucarp.sh @@ -3106,6 +3117,7 @@ OLD_FILES+=rescue/rtsol .endif .if ${MK_INETD} == no +OLD_FILES+=etc/inetd.conf OLD_FILES+=etc/rc.d/inetd OLD_FILES+=usr/sbin/inetd OLD_FILES+=usr/share/man/man5/inetd.conf.5.gz @@ -3196,6 +3208,7 @@ OLD_FILES+=usr/share/man/man8/ippool.8.gz .endif .if ${MK_IPFW} == no +OLD_FILES+=etc/rc.d/ipfw OLD_FILES+=etc/periodic/security/500.ipfwdenied OLD_FILES+=etc/periodic/security/550.ipfwlimit OLD_FILES+=sbin/ipfw @@ -4256,6 +4269,8 @@ OLD_FILES+=usr/share/man/man1/host.1.gz .endif .if ${MK_LEGACY_CONSOLE} == no +OLD_FILES+=etc/rc.d/moused +OLD_FILES+=etc/rc.d/syscons OLD_FILES+=usr/sbin/kbdcontrol OLD_FILES+=usr/sbin/kbdmap OLD_FILES+=usr/sbin/moused @@ -6029,6 +6044,7 @@ OLD_FILES+=etc/mail.rc OLD_FILES+=etc/mail/aliases OLD_FILES+=etc/mail/mailer.conf OLD_FILES+=etc/periodic/daily/130.clean-msgs +OLD_FILES+=etc/rc.d/othermta OLD_FILES+=usr/bin/Mail OLD_FILES+=usr/bin/biff OLD_FILES+=usr/bin/from @@ -6501,6 +6517,10 @@ OLD_FILES+=usr/share/man/man8/nghook.8.gz OLD_FILES+=usr/share/man/man8/pppoed.8.gz .endif +.if ${MK_IPFW} == no || ${MK_NETGRAPH} == no +OLD_FILES+=etc/rc.d/ipfw_netflow +.endif + .if ${MK_NETGRAPH_SUPPORT} == no OLD_FILES+=usr/include/bsnmp/snmp_netgraph.h OLD_FILES+=usr/lib/snmp_netgraph.so @@ -6874,8 +6894,12 @@ OLD_FILES+=usr/share/man/man8/nscd.8.gz .endif .if ${MK_NTP} == no +OLD_FILES+=etc/ntp/leap-seconds +OLD_DIRS+=etc/ntp OLD_FILES+=etc/ntp.conf OLD_FILES+=etc/periodic/daily/480.status-ntpd +OLD_FILES+=etc/periodic/daily/480.leapfile-ntpd +OLD_FILES+=etc/rc.d/ntpd OLD_FILES+=usr/bin/ntpq OLD_FILES+=usr/sbin/ntp-keygen OLD_FILES+=usr/sbin/ntpd @@ -7554,6 +7578,7 @@ OLD_FILES+=etc/rc.d/sshd OLD_FILES+=etc/ssh/moduli OLD_FILES+=etc/ssh/ssh_config OLD_FILES+=etc/ssh/sshd_config +OLD_DIRS+=etc/ssh OLD_FILES+=usr/bin/scp OLD_FILES+=usr/bin/sftp OLD_FILES+=usr/bin/slogin @@ -8090,6 +8115,7 @@ OLD_FILES+=${RESCUE_FILES} .endif .if ${MK_ROUTED} == no +OLD_FILES+=etc/rc.d/routed OLD_FILES+=rescue/routed OLD_FILES+=rescue/rtquery OLD_FILES+=sbin/routed @@ -8105,6 +8131,7 @@ OLD_FILES+=etc/periodic/daily/150.clean-hoststat OLD_FILES+=etc/periodic/daily/440.status-mailq OLD_FILES+=etc/periodic/daily/460.status-mail-rejects OLD_FILES+=etc/periodic/daily/500.queuerun +OLD_FILES+=etc/rc.d/sendmail OLD_FILES+=bin/rmail OLD_FILES+=usr/bin/vacation OLD_FILES+=usr/include/libmilter/mfapi.h @@ -10067,6 +10094,7 @@ OLD_FILES+=usr/share/misc/usbdevs .if ${MK_UTMPX} == no OLD_FILES+=etc/periodic/monthly/200.accounting +OLD_FILES+=etc/rc.d/utx OLD_FILES+=usr/bin/last OLD_FILES+=usr/bin/users OLD_FILES+=usr/bin/who From owner-svn-src-all@freebsd.org Sat Feb 16 04:48:31 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BF0E314D15E9; Sat, 16 Feb 2019 04:48:31 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 66D8671DF7; Sat, 16 Feb 2019 04:48:31 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5565A184A; Sat, 16 Feb 2019 04:48:31 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G4mVAw003873; Sat, 16 Feb 2019 04:48:31 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G4mUd2003870; Sat, 16 Feb 2019 04:48:30 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902160448.x1G4mUd2003870@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sat, 16 Feb 2019 04:48:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344205 - in stable/12/usr.bin/xinstall: . tests X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable/12/usr.bin/xinstall: . tests X-SVN-Commit-Revision: 344205 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 66D8671DF7 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.94)[-0.943,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:48:32 -0000 Author: kevans Date: Sat Feb 16 04:48:30 2019 New Revision: 344205 URL: https://svnweb.freebsd.org/changeset/base/344205 Log: MFC r343601: install(1): Fix relative path calculation with partial common dest/src For example, from the referenced PR [1]: $ mkdir /tmp/lib/ /tmp/libexec $ touch /tmp/lib/foo.so $ install -lrs /tmp/lib/foo.so /tmp/libexec/ The common path identification bits terminate src at /tmp/lib/ and the destination at /tmp/libe. The subsequent backtracking is then incorrect, as it traverses the destination and backtraces exactly one level while eating the 'libexec' because it was previously (falsely) identified as common with 'lib'. The obvious fix would be to make sure we've actually terminated just after directory separators and rewind a character if we haven't. In the above example, we would end up rewinding to /tmp/ and subsequently doing the right thing. Test case added. PR: 235330 [1] Modified: stable/12/usr.bin/xinstall/tests/install_test.sh stable/12/usr.bin/xinstall/xinstall.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/xinstall/tests/install_test.sh ============================================================================== --- stable/12/usr.bin/xinstall/tests/install_test.sh Sat Feb 16 04:47:33 2019 (r344204) +++ stable/12/usr.bin/xinstall/tests/install_test.sh Sat Feb 16 04:48:30 2019 (r344205) @@ -377,6 +377,29 @@ mkdir_simple_body() { atf_check install -d dir1/dir2/dir3 } +atf_test_case symbolic_link_relative_absolute_common +symbolic_link_relative_absolute_common_head() { + atf_set "descr" "Verify -l rs with absolute paths having common components" +} +symbolic_link_relative_absolute_common_body() { + filename=foo.so + src_path=lib + src_path_prefixed=$PWD/$src_path + dest_path=$PWD/libexec/ + src_file=$src_path_prefixed/$filename + dest_file=$dest_path/$filename + + atf_check mkdir $src_path_prefixed $dest_path + atf_check touch $src_file + atf_check install -l sr $src_file $dest_path + + dest_path_relative=$(readlink $dest_file) + src_path_relative="../lib/$filename" + if [ "$src_path_relative" != "$dest_path_relative" ]; then + atf_fail "unexpected symlink contents ('$src_path_relative' != '$dest_path_relative')" + fi +} + atf_init_test_cases() { atf_add_test_case copy_to_nonexistent atf_add_test_case copy_to_nonexistent_safe @@ -415,5 +438,6 @@ atf_init_test_cases() { atf_add_test_case symbolic_link_relative_absolute_source_and_dest1 atf_add_test_case symbolic_link_relative_absolute_source_and_dest1_double_slash atf_add_test_case symbolic_link_relative_absolute_source_and_dest2 + atf_add_test_case symbolic_link_relative_absolute_common atf_add_test_case mkdir_simple } Modified: stable/12/usr.bin/xinstall/xinstall.c ============================================================================== --- stable/12/usr.bin/xinstall/xinstall.c Sat Feb 16 04:47:33 2019 (r344204) +++ stable/12/usr.bin/xinstall/xinstall.c Sat Feb 16 04:48:30 2019 (r344205) @@ -673,7 +673,7 @@ makelink(const char *from_name, const char *to_name, } if (dolink & LN_RELATIVE) { - char *to_name_copy, *cp, *d, *s; + char *to_name_copy, *cp, *d, *ld, *ls, *s; if (*from_name != '/') { /* this is already a relative link */ @@ -709,8 +709,19 @@ makelink(const char *from_name, const char *to_name, free(to_name_copy); /* Trim common path components. */ - for (s = src, d = dst; *s == *d; s++, d++) + ls = ld = NULL; + for (s = src, d = dst; *s == *d; ls = s, ld = d, s++, d++) continue; + /* + * If we didn't end after a directory separator, then we've + * falsely matched the last component. For example, if one + * invoked install -lrs /lib/foo.so /libexec/ then the source + * would terminate just after the separator while the + * destination would terminate in the middle of 'libexec', + * leading to a full directory getting falsely eaten. + */ + if ((ls != NULL && *ls != '/') || (ld != NULL && *ld != '/')) + s--, d--; while (*s != '/') s--, d--; From owner-svn-src-all@freebsd.org Sat Feb 16 06:12:17 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A33F714D60BB; Sat, 16 Feb 2019 06:12:17 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4AD2E74A84; Sat, 16 Feb 2019 06:12:17 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 40A04276E; Sat, 16 Feb 2019 06:12:17 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G6CHV4050910; Sat, 16 Feb 2019 06:12:17 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G6CHQl050909; Sat, 16 Feb 2019 06:12:17 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902160612.x1G6CHQl050909@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sat, 16 Feb 2019 06:12:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344209 - stable/12/stand/liblua X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: stable/12/stand/liblua X-SVN-Commit-Revision: 344209 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4AD2E74A84 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.94)[-0.940,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 06:12:17 -0000 Author: kevans Date: Sat Feb 16 06:12:16 2019 New Revision: 344209 URL: https://svnweb.freebsd.org/changeset/base/344209 Log: MFC r339831 (imp): Move LUA_ROOT to /boot/lua While this is mostly unused today, this is a better place than /usr/local/lua. Modified: stable/12/stand/liblua/luaconf.h Directory Properties: stable/12/ (props changed) Modified: stable/12/stand/liblua/luaconf.h ============================================================================== --- stable/12/stand/liblua/luaconf.h Sat Feb 16 05:04:01 2019 (r344208) +++ stable/12/stand/liblua/luaconf.h Sat Feb 16 06:12:16 2019 (r344209) @@ -202,9 +202,9 @@ #else /* }{ */ -#define LUA_ROOT "/usr/local/" -#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/" -#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/" +#define LUA_ROOT "/boot/lua/" LUA_VDIR "/" +#define LUA_LDIR LUA_ROOT "share/" +#define LUA_CDIR LUA_ROOT "lib/" #ifndef LUA_PATH_DEFAULT #define LUA_PATH_DEFAULT \ LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ From owner-svn-src-all@freebsd.org Sat Feb 16 06:42:31 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6467314D7164; Sat, 16 Feb 2019 06:42:31 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg1-x530.google.com (mail-pg1-x530.google.com [IPv6:2607:f8b0:4864:20::530]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 592CE75A15; Sat, 16 Feb 2019 06:42:30 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg1-x530.google.com with SMTP id b2so140675pgl.9; Fri, 15 Feb 2019 22:42:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=zkdb4mIa9NDD2RmxQdb3pHptE/SNOZlGnPtjf1+tbuY=; b=pGeCrxh2XQQHd8aY7tUMT2WM3+ZRDerZkF3UDQIJkFbzJwGv9ZrpN4+2i9Vxd7G6c2 yEOCG5nB3gkGzpjBLj4yMHh0ybt8SHrLmYa+9RLH39TMPDjHEVXuLfE02IPQmwl9Ixd1 MGQ/9N5FP6k/JNIByNOQXfU6iXNkgYyTv3pTq2TyXVmUxl8ac1zMUMkYb1VsIdcDx4tI eilq2wzQ7/MWHUQy579eY+ZNta/k8fFyntPqTbaykEb7oXybLxkm1gVeBoCVNVdrPdZU fPR0KDBZzh4A8ddrPgXxybEl0UO09SABLq81lMlQtb1dhxaZ4LZL/Z41ek6Jg4q2aMjA lXQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=zkdb4mIa9NDD2RmxQdb3pHptE/SNOZlGnPtjf1+tbuY=; b=CztLwI6SBgcynJUrOibju0SE8Kkpldy177Wi3F8Xiap3/azozh1aYGNGaa7dbUT7Gb Zrg7lylbbe2mh8bJ4+7jRyVishw6dOTbZ1W1k1d/kMp+C0/hBoGASyzG1Qxg+Zvcb+IS M77toxW4tJZqW4Ostb2mRCeE7bHoLQdsGA04RQ84CuxmqlAmWqdRrJm6HFSYV+OHhfmD mRBO4WtlP7yJig8H15ofExUyszTdS01yj0OZioQj4YBT3ShJuWyS1OKP+B3jpuI4i9pz N3Wx1ZJXigv9YEpmIT5hdFR5kCAVOlLk2L2SFO183DTLBpBgYKULMgYZqH1DPeL/6mDu MlLA== X-Gm-Message-State: AHQUAuagCY430LPysE4/gu4DCyRg+ckN5HzdLmA7dq+uD754nPXgLXO9 VmWQ++8U7meK7AJAL4HmtjfdOFBb X-Google-Smtp-Source: AHgI3IYBEc+tJC5q9jH986EX7xgkq8ZuOeo4QH33ZrnO9fUreFjl61alNSFRgYCmrgy76E35unoZHA== X-Received: by 2002:a63:5b48:: with SMTP id l8mr8958832pgm.80.1550299348806; Fri, 15 Feb 2019 22:42:28 -0800 (PST) Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id x23sm20720592pfe.0.2019.02.15.22.42.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Feb 2019 22:42:28 -0800 (PST) From: Enji Cooper Message-Id: Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: svn commit: r344191 - head/sbin/nvmecontrol Date: Fri, 15 Feb 2019 22:42:27 -0800 In-Reply-To: Cc: Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org To: Warner Losh References: <201902160015.x1G0F3EJ060777@repo.freebsd.org> X-Mailer: Apple Mail (2.3445.102.3) X-Rspamd-Queue-Id: 592CE75A15 X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=pGeCrxh2; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of yaneurabeya@gmail.com designates 2607:f8b0:4864:20::530 as permitted sender) smtp.mailfrom=yaneurabeya@gmail.com X-Spamd-Result: default: False [-5.15 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MV_CASE(0.50)[]; URI_COUNT_ODD(1.00)[3]; RCPT_COUNT_FIVE(0.00)[5]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; NEURAL_HAM_SHORT(-0.82)[-0.820,0]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+,1:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; IP_SCORE(-2.82)[ip: (-9.44), ipnet: 2607:f8b0::/32(-2.59), asn: 15169(-1.99), country: US(-0.07)]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[0.3.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 06:42:31 -0000 > On Feb 15, 2019, at 10:25 PM, Warner Losh wrote: >=20 > On Fri, Feb 15, 2019, 9:55 PM Enji Cooper wrote: >=20 > > On Feb 15, 2019, at 16:15, Warner Losh > wrote: > >=20 > > Author: imp > > Date: Sat Feb 16 00:15:02 2019 > > New Revision: 344191 > > URL: https://svnweb.freebsd.org/changeset/base/344191 = > >=20 > > Log: > > Remove write-only s_flag. > >=20 > > Modified: > > head/sbin/nvmecontrol/firmware.c > >=20 > > Modified: head/sbin/nvmecontrol/firmware.c > > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > > --- head/sbin/nvmecontrol/firmware.c Fri Feb 15 23:46:34 2019 = (r344190) > > +++ head/sbin/nvmecontrol/firmware.c Sat Feb 16 00:15:02 2019 = (r344191) > > @@ -177,7 +177,7 @@ static void > > firmware(const struct nvme_function *nf, int argc, char *argv[]) > > { > > int fd =3D -1, slot =3D 0; > > - int a_flag, s_flag, f_flag; > > + int a_flag, f_flag; > > int activate_action, reboot_required; > > int opt; > > char *p, *image =3D NULL; > > @@ -188,7 +188,7 @@ firmware(const struct nvme_function *nf, int = argc, cha > > uint8_t fw_slot1_ro, fw_num_slots; > > struct nvme_controller_data cdata; > >=20 > > - a_flag =3D s_flag =3D f_flag =3D false; > > + a_flag =3D f_flag =3D false; > >=20 > > while ((opt =3D getopt(argc, argv, "af:s:")) !=3D -1) { >=20 > Hi Warner! > Should =E2=80=9Cs:=E2=80=9D be removed here, along with any = corresponding documentation about =E2=80=98-s foo=E2=80=99? >=20 > The docs are poo. s: should not be removed, since it is the slot and = required. The code set slot and s_flag. The latter is bogus, so I = removed it. 0-o.. I see. Ok, carry on! -Enji= From owner-svn-src-all@freebsd.org Sat Feb 16 07:03:32 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8D13E14D7AC7 for ; Sat, 16 Feb 2019 07:03:32 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x735.google.com (mail-qk1-x735.google.com [IPv6:2607:f8b0:4864:20::735]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 77A0E762DA for ; Sat, 16 Feb 2019 07:03:31 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x735.google.com with SMTP id a15so7181640qkc.1 for ; Fri, 15 Feb 2019 23:03:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=NK2fI0iU3AjVbulw/9/9JKAubEAv/s1G0y5YfD84LM4=; b=O78xycvq7d01QAERBnnmL5+FVmNny0Ed8nXrd0NddVx2v0CVdwAp/2VHf8r686ZUpQ k1u6DQuy3Gy68EMrSP+44kO70lWnhCYRbmJ8utuDINhEHQDW29kcuSaAyg03VdozUS6L 4vui67REx5w0QAu2fZJmUSG7KA1uzBKpO403mz+oPf1tMQqCFy1EnkCwh25NRhBCTNHt dtCjB5eD8ST2KQBNLqCDw1n00x5V84PxgffOwKyuU6iZmbFbonaBqZZyRYHZCG+WptQQ WBXofEDrIQE2mf1qBD2elk39jMtnuAEjQNerVJqdeIexLsOsf9i7aFFNwQk/ySDR9uYo BmXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=NK2fI0iU3AjVbulw/9/9JKAubEAv/s1G0y5YfD84LM4=; b=KnHnffJqwIDqTtsTPpNWDkzLAXRXcfRcaCHZ1QpbRF0GXlkxM34Fej1sRVZV9+Z8Dj Cc5kctePUv56ysyQ7LcsE5PghTgiVT5oDEddRsdWb0RGsCrOlWJITjz/TL2jni21k3Ng YClz0lFR4ZcQQC17v6TdYFlrSWVHfFKxSi5Ffy6xQ7W+WE2m02ElUogPJ82RdZtttSYy xTN8KUTDXaV8FK5ec+wcT+Mka9cNpMLYNfYnu+yme8iqOLsdICrgl/C3VtPMrg7G1D6S LBxqSDsuhEqhHyTXMMzXlDmxgRKMEIqpag3vmepeGcNiUJdcSyJ5xwfFoQ4pddKMcw9G 0CXQ== X-Gm-Message-State: AHQUAuaanRnM5+eyjngX7BWYmlvdPFaTR8v26vO3sFibLYV2fVbEhJMC 5bZ2XxhKx+dk5JCdnoB5hoZ01eqWsh/xfHIN8JikNA== X-Google-Smtp-Source: AHgI3IY4X+kOoASCqgHKjeigqS6y0ZVCSY9Xb9TjUDWVYumBRIHWeO/xX5PzP7N5Z+WzUGmgoicq1Ro3cSHE2E6+Mcw= X-Received: by 2002:a37:6c05:: with SMTP id h5mr9907427qkc.175.1550300610741; Fri, 15 Feb 2019 23:03:30 -0800 (PST) MIME-Version: 1.0 References: <201902160015.x1G0F3EJ060777@repo.freebsd.org> In-Reply-To: From: Warner Losh Date: Sat, 16 Feb 2019 00:03:18 -0700 Message-ID: Subject: Re: svn commit: r344191 - head/sbin/nvmecontrol To: Garrett Cooper Cc: Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 77A0E762DA X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20150623.gappssmtp.com header.s=20150623 header.b=O78xycvq X-Spamd-Result: default: False [-5.46 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org]; DMARC_NA(0.00)[bsdimp.com]; RCPT_COUNT_FIVE(0.00)[5]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+]; MX_GOOD(-0.01)[cached: ALT1.aspmx.l.google.com]; RCVD_IN_DNSWL_NONE(0.00)[5.3.7.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; NEURAL_HAM_SHORT(-0.69)[-0.688,0]; R_SPF_NA(0.00)[]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; FREEMAIL_TO(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; IP_SCORE(-2.76)[ip: (-9.16), ipnet: 2607:f8b0::/32(-2.59), asn: 15169(-1.99), country: US(-0.07)]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 07:03:32 -0000 On Fri, Feb 15, 2019, 11:42 PM Enji Cooper > On Feb 15, 2019, at 10:25 PM, Warner Losh wrote: > > On Fri, Feb 15, 2019, 9:55 PM Enji Cooper >> >> > On Feb 15, 2019, at 16:15, Warner Losh wrote: >> > >> > Author: imp >> > Date: Sat Feb 16 00:15:02 2019 >> > New Revision: 344191 >> > URL: https://svnweb.freebsd.org/changeset/base/344191 >> > >> > Log: >> > Remove write-only s_flag. >> > >> > Modified: >> > head/sbin/nvmecontrol/firmware.c >> > >> > Modified: head/sbin/nvmecontrol/firmware.c >> > >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> > --- head/sbin/nvmecontrol/firmware.c Fri Feb 15 23:46:34 2019 >> (r344190) >> > +++ head/sbin/nvmecontrol/firmware.c Sat Feb 16 00:15:02 2019 >> (r344191) >> > @@ -177,7 +177,7 @@ static void >> > firmware(const struct nvme_function *nf, int argc, char *argv[]) >> > { >> > int fd =3D -1, slot =3D 0; >> > - int a_flag, s_flag, f_flag; >> > + int a_flag, f_flag; >> > int activate_action, reboot_required; >> > int opt; >> > char *p, *image =3D NULL; >> > @@ -188,7 +188,7 @@ firmware(const struct nvme_function *nf, int argc, >> cha >> > uint8_t fw_slot1_ro, fw_num_slots; >> > struct nvme_controller_data cdata; >> > >> > - a_flag =3D s_flag =3D f_flag =3D false; >> > + a_flag =3D f_flag =3D false; >> > >> > while ((opt =3D getopt(argc, argv, "af:s:")) !=3D -1) { >> >> Hi Warner! >> Should =E2=80=9Cs:=E2=80=9D be removed here, along with any correspo= nding >> documentation about =E2=80=98-s foo=E2=80=99? >> > > The docs are poo. s: should not be removed, since it is the slot and > required. The code set slot and s_flag. The latter is bogus, so I removed > it. > > > 0-o.. I see. Ok, carry on! > I have other improvements that are real in the pipe, including plans to fix the docs. Just slogging through the details right now when I have time... But since I noticed this and it was independent and a no brainer, I did this first. Warner From owner-svn-src-all@freebsd.org Sat Feb 16 04:47:34 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C432714D1593; Sat, 16 Feb 2019 04:47:34 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5377F71CF3; Sat, 16 Feb 2019 04:47:34 +0000 (UTC) (envelope-from jhibbits@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 407E31849; Sat, 16 Feb 2019 04:47:34 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G4lYAR003783; Sat, 16 Feb 2019 04:47:34 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G4lYrh003782; Sat, 16 Feb 2019 04:47:34 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201902160447.x1G4lYrh003782@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 16 Feb 2019 04:47:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344204 - head/sys/powerpc/booke X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/powerpc/booke X-SVN-Commit-Revision: 344204 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 5377F71CF3 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:47:34 -0000 Author: jhibbits Date: Sat Feb 16 04:47:33 2019 New Revision: 344204 URL: https://svnweb.freebsd.org/changeset/base/344204 Log: powerpc/booke: Fix 32-bit build MFC after: 2 weeks MFC with: 344202 Modified: head/sys/powerpc/booke/pmap.c Modified: head/sys/powerpc/booke/pmap.c ============================================================================== --- head/sys/powerpc/booke/pmap.c Sat Feb 16 04:38:34 2019 (r344203) +++ head/sys/powerpc/booke/pmap.c Sat Feb 16 04:47:33 2019 (r344204) @@ -3053,8 +3053,11 @@ mmu_booke_copy_pages(mmu_t mmu, vm_page_t *ma, vm_offs int cnt; if (hw_direct_map) { - bcopy((caddr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(*ma)) + a_offset, - (caddr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(*mb)), xfersize); + a_cp = (caddr_t)((uintptr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(*ma)) + + a_offset); + b_cp = (caddr_t)((uintptr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(*mb)) + + b_offset); + bcopy(a_cp, b_cp, xfersize); } else { mtx_lock(©_page_mutex); while (xfersize > 0) { From owner-svn-src-all@freebsd.org Sat Feb 16 04:49:11 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 47CBB14D16DC; Sat, 16 Feb 2019 04:49:11 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E047371F5D; Sat, 16 Feb 2019 04:49:10 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D5FA7184E; Sat, 16 Feb 2019 04:49:10 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G4nAXn003973; Sat, 16 Feb 2019 04:49:10 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G4nA5t003972; Sat, 16 Feb 2019 04:49:10 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902160449.x1G4nA5t003972@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sat, 16 Feb 2019 04:49:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344206 - in stable/11/usr.bin/xinstall: . tests X-SVN-Group: stable-11 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: in stable/11/usr.bin/xinstall: . tests X-SVN-Commit-Revision: 344206 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E047371F5D X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.94)[-0.943,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:49:11 -0000 Author: kevans Date: Sat Feb 16 04:49:10 2019 New Revision: 344206 URL: https://svnweb.freebsd.org/changeset/base/344206 Log: MFC r343601: install(1): Fix relative path calculation with partial common dest/src For example, from the referenced PR [1]: $ mkdir /tmp/lib/ /tmp/libexec $ touch /tmp/lib/foo.so $ install -lrs /tmp/lib/foo.so /tmp/libexec/ The common path identification bits terminate src at /tmp/lib/ and the destination at /tmp/libe. The subsequent backtracking is then incorrect, as it traverses the destination and backtraces exactly one level while eating the 'libexec' because it was previously (falsely) identified as common with 'lib'. The obvious fix would be to make sure we've actually terminated just after directory separators and rewind a character if we haven't. In the above example, we would end up rewinding to /tmp/ and subsequently doing the right thing. Test case added. PR: 235330 [1] Modified: stable/11/usr.bin/xinstall/tests/install_test.sh stable/11/usr.bin/xinstall/xinstall.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.bin/xinstall/tests/install_test.sh ============================================================================== --- stable/11/usr.bin/xinstall/tests/install_test.sh Sat Feb 16 04:48:30 2019 (r344205) +++ stable/11/usr.bin/xinstall/tests/install_test.sh Sat Feb 16 04:49:10 2019 (r344206) @@ -377,6 +377,29 @@ mkdir_simple_body() { atf_check install -d dir1/dir2/dir3 } +atf_test_case symbolic_link_relative_absolute_common +symbolic_link_relative_absolute_common_head() { + atf_set "descr" "Verify -l rs with absolute paths having common components" +} +symbolic_link_relative_absolute_common_body() { + filename=foo.so + src_path=lib + src_path_prefixed=$PWD/$src_path + dest_path=$PWD/libexec/ + src_file=$src_path_prefixed/$filename + dest_file=$dest_path/$filename + + atf_check mkdir $src_path_prefixed $dest_path + atf_check touch $src_file + atf_check install -l sr $src_file $dest_path + + dest_path_relative=$(readlink $dest_file) + src_path_relative="../lib/$filename" + if [ "$src_path_relative" != "$dest_path_relative" ]; then + atf_fail "unexpected symlink contents ('$src_path_relative' != '$dest_path_relative')" + fi +} + atf_init_test_cases() { atf_add_test_case copy_to_nonexistent atf_add_test_case copy_to_nonexistent_safe @@ -415,5 +438,6 @@ atf_init_test_cases() { atf_add_test_case symbolic_link_relative_absolute_source_and_dest1 atf_add_test_case symbolic_link_relative_absolute_source_and_dest1_double_slash atf_add_test_case symbolic_link_relative_absolute_source_and_dest2 + atf_add_test_case symbolic_link_relative_absolute_common atf_add_test_case mkdir_simple } Modified: stable/11/usr.bin/xinstall/xinstall.c ============================================================================== --- stable/11/usr.bin/xinstall/xinstall.c Sat Feb 16 04:48:30 2019 (r344205) +++ stable/11/usr.bin/xinstall/xinstall.c Sat Feb 16 04:49:10 2019 (r344206) @@ -667,7 +667,7 @@ makelink(const char *from_name, const char *to_name, } if (dolink & LN_RELATIVE) { - char *to_name_copy, *cp, *d, *s; + char *to_name_copy, *cp, *d, *ld, *ls, *s; if (*from_name != '/') { /* this is already a relative link */ @@ -703,8 +703,19 @@ makelink(const char *from_name, const char *to_name, free(to_name_copy); /* Trim common path components. */ - for (s = src, d = dst; *s == *d; s++, d++) + ls = ld = NULL; + for (s = src, d = dst; *s == *d; ls = s, ld = d, s++, d++) continue; + /* + * If we didn't end after a directory separator, then we've + * falsely matched the last component. For example, if one + * invoked install -lrs /lib/foo.so /libexec/ then the source + * would terminate just after the separator while the + * destination would terminate in the middle of 'libexec', + * leading to a full directory getting falsely eaten. + */ + if ((ls != NULL && *ls != '/') || (ld != NULL && *ld != '/')) + s--, d--; while (*s != '/') s--, d--; From owner-svn-src-all@freebsd.org Sat Feb 16 06:25:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC57B14D67BA for ; Sat, 16 Feb 2019 06:25:34 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x831.google.com (mail-qt1-x831.google.com [IPv6:2607:f8b0:4864:20::831]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E844175167 for ; Sat, 16 Feb 2019 06:25:33 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x831.google.com with SMTP id y20so13533810qtm.13 for ; Fri, 15 Feb 2019 22:25:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=oGn1rFFiMbS0RrtPnQj83vEUwoeq23DmIJXadG5wgS4=; b=mBYvJ+b0NXRQe3wyAhqZ1Wo6pPzvHHvx/sn+khk8lNn/4w2xUkpR3es/OJRv6qyXdz iTKK++5t2kcCnJVjIp72L2XivevXJ9BilkOahixfChsXvdkAR46H0pbeqnMGuBRBSwmm lo5KqiEcJl9YZnKQX17FAr0CeOv5Idya/w7xgz9qWWHM/o+dm5wzhH717RkMHGC7GJMJ 9WSGiYAo/w32TRG443HRcR2Xf77009rk2+d60rWfVhDdNubN/2Er+rmG61MU/3KZCMHC +S/RR0ngoyYLsM2r+MPsUgsYrj0YCn3Qd/jSZncjOmRHRzP1WvmZaPc4JEhPVil5wBka 0Fog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=oGn1rFFiMbS0RrtPnQj83vEUwoeq23DmIJXadG5wgS4=; b=jXmBReWM/Jcry2VE1CgYVTCiqj8YyuZlur2zHuemiYcpJwo3SLqvR0kz/41q/2cEvO AL4aV2bphvPt6x6fQSUnQ499rGRDxcz5PGLFuB1IJQU6DW3YJnVL38TQsi6y5/PlAlaC voCXHX0qNX3pTmqGwwwb3EYoT58MAmKMNA0IHpdQ/QnY3+AqLKgffUKG4RACUvvW7vQP yQ4BNimu8WcYXB4bIHHAQqlJrR7gdgSMQMGHkiSFWqY+1lI2BgsUMMcz+2+Zr7S7f9Sr 37waMePiAEGcv9KPmZf0iflhLjRSFCvIJMpkRv45i0ht8XONXPxKZGrijJWmCLb0Pwkg 57+A== X-Gm-Message-State: AHQUAuZU59YhxelpBYnGwLP95I+FTGDbXmvcz2mLIjW4jeF7A52GEapb Dd1PGaILr5wRjGorxxXlW+uTnRcGFnvuEF7Ori31pERl X-Google-Smtp-Source: AHgI3IbdixSR7a5yS9ozoqgjpCc43TEAAmlvGx1Pe1VvISX/sPWHCm2sJKE2T/HNIfY1Ud/HeEMAF1ciqFQqYCWKydM= X-Received: by 2002:ac8:3974:: with SMTP id t49mr10750439qtb.118.1550298333279; Fri, 15 Feb 2019 22:25:33 -0800 (PST) MIME-Version: 1.0 References: <201902160015.x1G0F3EJ060777@repo.freebsd.org> In-Reply-To: From: Warner Losh Date: Fri, 15 Feb 2019 23:25:20 -0700 Message-ID: Subject: Re: svn commit: r344191 - head/sbin/nvmecontrol To: Garrett Cooper Cc: Warner Losh , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: E844175167 X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20150623.gappssmtp.com header.s=20150623 header.b=mBYvJ+b0 X-Spamd-Result: default: False [-5.40 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org]; DMARC_NA(0.00)[bsdimp.com]; RCPT_COUNT_FIVE(0.00)[5]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+]; MX_GOOD(-0.01)[ALT1.aspmx.l.google.com,aspmx.l.google.com,ALT2.aspmx.l.google.com]; RCVD_IN_DNSWL_NONE(0.00)[1.3.8.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; NEURAL_HAM_SHORT(-0.68)[-0.680,0]; R_SPF_NA(0.00)[]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; FREEMAIL_TO(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; IP_SCORE(-2.71)[ip: (-8.89), ipnet: 2607:f8b0::/32(-2.59), asn: 15169(-1.99), country: US(-0.07)]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 06:25:35 -0000 On Fri, Feb 15, 2019, 9:55 PM Enji Cooper > > On Feb 15, 2019, at 16:15, Warner Losh wrote: > > > > Author: imp > > Date: Sat Feb 16 00:15:02 2019 > > New Revision: 344191 > > URL: https://svnweb.freebsd.org/changeset/base/344191 > > > > Log: > > Remove write-only s_flag. > > > > Modified: > > head/sbin/nvmecontrol/firmware.c > > > > Modified: head/sbin/nvmecontrol/firmware.c > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > > --- head/sbin/nvmecontrol/firmware.c Fri Feb 15 23:46:34 2019 > (r344190) > > +++ head/sbin/nvmecontrol/firmware.c Sat Feb 16 00:15:02 2019 > (r344191) > > @@ -177,7 +177,7 @@ static void > > firmware(const struct nvme_function *nf, int argc, char *argv[]) > > { > > int fd =3D -1, slot =3D 0; > > - int a_flag, s_flag, f_flag; > > + int a_flag, f_flag; > > int activate_action, reboot_required; > > int opt; > > char *p, *image =3D NULL; > > @@ -188,7 +188,7 @@ firmware(const struct nvme_function *nf, int argc, > cha > > uint8_t fw_slot1_ro, fw_num_slots; > > struct nvme_controller_data cdata; > > > > - a_flag =3D s_flag =3D f_flag =3D false; > > + a_flag =3D f_flag =3D false; > > > > while ((opt =3D getopt(argc, argv, "af:s:")) !=3D -1) { > > Hi Warner! > Should =E2=80=9Cs:=E2=80=9D be removed here, along with any correspon= ding > documentation about =E2=80=98-s foo=E2=80=99? > The docs are poo. s: should not be removed, since it is the slot and required. The code set slot and s_flag. The latter is bogus, so I removed it. Warner > From owner-svn-src-all@freebsd.org Sat Feb 16 04:38:35 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 980D214D11CF; Sat, 16 Feb 2019 04:38:35 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3C210718EC; Sat, 16 Feb 2019 04:38:35 +0000 (UTC) (envelope-from jhibbits@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2AF35169A; Sat, 16 Feb 2019 04:38:35 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G4cZlY098539; Sat, 16 Feb 2019 04:38:35 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G4cZGC098538; Sat, 16 Feb 2019 04:38:35 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201902160438.x1G4cZGC098538@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 16 Feb 2019 04:38:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344203 - head/sys/powerpc/booke X-SVN-Group: head X-SVN-Commit-Author: jhibbits X-SVN-Commit-Paths: head/sys/powerpc/booke X-SVN-Commit-Revision: 344203 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3C210718EC X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.94 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.95)[-0.946,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 04:38:35 -0000 Author: jhibbits Date: Sat Feb 16 04:38:34 2019 New Revision: 344203 URL: https://svnweb.freebsd.org/changeset/base/344203 Log: powerpc/booke: depessimize MAS register updates We only need to isync before we actually use the MAS registers, so before and after the TLB read/write/sync/search operations. MFC after: 2 weeks Modified: head/sys/powerpc/booke/pmap.c Modified: head/sys/powerpc/booke/pmap.c ============================================================================== --- head/sys/powerpc/booke/pmap.c Sat Feb 16 04:16:10 2019 (r344202) +++ head/sys/powerpc/booke/pmap.c Sat Feb 16 04:38:34 2019 (r344203) @@ -3911,29 +3911,23 @@ tlb1_write_entry_int(void *arg) mas0 = MAS0_TLBSEL(1) | MAS0_ESEL(args->idx); mtspr(SPR_MAS0, mas0); - __asm __volatile("isync"); mtspr(SPR_MAS1, args->e->mas1); - __asm __volatile("isync"); mtspr(SPR_MAS2, args->e->mas2); - __asm __volatile("isync"); mtspr(SPR_MAS3, args->e->mas3); - __asm __volatile("isync"); switch ((mfpvr() >> 16) & 0xFFFF) { case FSL_E500mc: case FSL_E5500: case FSL_E6500: mtspr(SPR_MAS8, 0); - __asm __volatile("isync"); /* FALLTHROUGH */ case FSL_E500v2: mtspr(SPR_MAS7, args->e->mas7); - __asm __volatile("isync"); break; default: break; } - __asm __volatile("tlbwe; isync; msync"); + __asm __volatile("isync; tlbwe; isync; msync"); } @@ -4376,7 +4370,6 @@ tid_flush(tlbtid_t tid) mas0 = MAS0_TLBSEL(0) | MAS0_ESEL(way); mtspr(SPR_MAS0, mas0); - __asm __volatile("isync"); mas2 = entry << MAS2_TLB0_ENTRY_IDX_SHIFT; mtspr(SPR_MAS2, mas2); @@ -4453,7 +4446,6 @@ DB_SHOW_COMMAND(tlb0, tlb0_print_tlbentries) mas0 = MAS0_TLBSEL(0) | MAS0_ESEL(way); mtspr(SPR_MAS0, mas0); - __asm __volatile("isync"); mas2 = entryidx << MAS2_TLB0_ENTRY_IDX_SHIFT; mtspr(SPR_MAS2, mas2); From owner-svn-src-all@freebsd.org Sat Feb 16 05:06:25 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C5D8214D1F31; Sat, 16 Feb 2019 05:06:25 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf1-x429.google.com (mail-pf1-x429.google.com [IPv6:2607:f8b0:4864:20::429]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3FE7A72B76; Sat, 16 Feb 2019 05:06:25 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf1-x429.google.com with SMTP id u6so5837463pfh.11; Fri, 15 Feb 2019 21:06:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=S0ZiuwuIt9kfL9S+zF1EzDQV1IJIUC/iiL4s+mex3W0=; b=puTztAoUlUcsowdp+AVCOiIG2oXidehntXZwutgsAd4f7X8KaJbtVtDPHIyTpPSDeO 9Ph7GZ4ycCSGQ9mHQ4SimWS6CCRY7PxpLetNoyy8CuwegkGh6Pvt8VELF5V6yI1Pfyqp k7XDH3gePzDHjT3NHHq+cRVbAVTEejLqhcdybBgM4ho6sywjwK8HjoSSGA8+qXIbm82e hcz/sPAaNCeYbr6AD9/ngxpQeQS69L3yRul4nXyxfKGH+y2lsBY+4CSsPQ8DFcXe+2Y8 dY1bZNvFcaIcPvrFFtiVwtHeW6YNC+aAgpMA3xngZYJL8Uq7+Tc11JqS8FB6NYlqPbuJ Fcmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=S0ZiuwuIt9kfL9S+zF1EzDQV1IJIUC/iiL4s+mex3W0=; b=MpvlNGCVrfBFRBuFxcmAdErZOs5UEIk7npuo//QGO+NqGXMZ2NA44w/poLJ0GtnkNh ZtGtmhs4MlwXjgIpQb7NctXNuIWVO5QP+koNAkRRP2sCIsc4oHdH23g4i/LgFZ6heBYh HLU/biP/8qW1i3QsbvB99YuNVebG9/FT4NbEey1+d8AVavIF8Nu2frG0WYoYRyZWqyVJ /7ha6J7pIw/vKvXMOtVZA02jxXyaWWGIlWycQsYxzR93PNOCX5HQ6vDLkIGtWbqs1Dr1 /alKaP6jIszrtjekBbpEM2IlsP3CtaM0+77w28UkKHRtmGUSqNWBu9fl45tFdCqzCpVc nisg== X-Gm-Message-State: AHQUAuY4CGys4aQCvgwhsSnjEjoEpfSDuLMiIevoxpE8OKtEVkByZOB/ IBaP9UwsBZ+xqJoi+h+++r6yQITl X-Google-Smtp-Source: AHgI3IY5zV/AwRCullWumPOVuWGb0T+XEyTqNm0oyEZ7k9T0M+uBvHn5vDFb8kyYsmZzmhMHfd5pLQ== X-Received: by 2002:a63:5109:: with SMTP id f9mr8644203pgb.450.1550293583937; Fri, 15 Feb 2019 21:06:23 -0800 (PST) Received: from [192.168.20.22] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id k17sm17693506pfj.92.2019.02.15.21.06.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Feb 2019 21:06:23 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r344188 - in head: lib/libc/sys sys/vm From: Enji Cooper X-Mailer: iPhone Mail (16C104) In-Reply-To: <201902152336.x1FNaNUo039321@repo.freebsd.org> Date: Fri, 15 Feb 2019 21:06:22 -0800 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <1F188602-3AA4-4034-B75C-438625C3A1DA@gmail.com> References: <201902152336.x1FNaNUo039321@repo.freebsd.org> To: Gleb Smirnoff X-Rspamd-Queue-Id: 3FE7A72B76 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.94 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.94)[-0.936,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 05:06:26 -0000 Hi Gleb! > On Feb 15, 2019, at 15:36, Gleb Smirnoff wrote: >=20 > Author: glebius > Date: Fri Feb 15 23:36:22 2019 > New Revision: 344188 > URL: https://svnweb.freebsd.org/changeset/base/344188 >=20 > Log: > For 32-bit machines rollback the default number of vnode pager pbufs > back to the lever before r343030. For 64-bit machines reduce it slightly= , > too. Together with r343030 I bumped the limit up to the value we use at > Netflix to serve 100 Gbit/s of sendfile traffic, and it probably isn't a > good default. >=20 > Provide a loader tunable to change vnode pager pbufs count. Document it. ... > .Sh SEE ALSO > +.Xr loader.conf 5 , > .Xr netstat 1 , > .Xr open 2 , > .Xr send 2 , > .Xr socket 2 , > .Xr writev 2 , > +.Xr sysctl 8 , > .Xr tuning 7 I think this should be ordered by section, then by manpage cross-referen= ce, i.e., loader.conf should come after writev, and sysctl should come after= tuning. Thanks! -Enji= From owner-svn-src-all@freebsd.org Sat Feb 16 09:50:18 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7E6FC14DD871; Sat, 16 Feb 2019 09:50:18 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2196083436; Sat, 16 Feb 2019 09:50:18 +0000 (UTC) (envelope-from cperciva@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 10FEC4E51; Sat, 16 Feb 2019 09:50:18 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1G9oH3x060772; Sat, 16 Feb 2019 09:50:17 GMT (envelope-from cperciva@FreeBSD.org) Received: (from cperciva@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1G9oHDs060771; Sat, 16 Feb 2019 09:50:17 GMT (envelope-from cperciva@FreeBSD.org) Message-Id: <201902160950.x1G9oHDs060771@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cperciva set sender to cperciva@FreeBSD.org using -f From: Colin Percival Date: Sat, 16 Feb 2019 09:50:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344210 - stable/12/libexec/rc/rc.d X-SVN-Group: stable-12 X-SVN-Commit-Author: cperciva X-SVN-Commit-Paths: stable/12/libexec/rc/rc.d X-SVN-Commit-Revision: 344210 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2196083436 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.93)[-0.931,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 09:50:18 -0000 Author: cperciva Date: Sat Feb 16 09:50:17 2019 New Revision: 344210 URL: https://svnweb.freebsd.org/changeset/base/344210 Log: MFC r343918: Teach /etc/rc.d/growfs how to handle systems running ZFS. Modified: stable/12/libexec/rc/rc.d/growfs Directory Properties: stable/12/ (props changed) Modified: stable/12/libexec/rc/rc.d/growfs ============================================================================== --- stable/12/libexec/rc/rc.d/growfs Sat Feb 16 06:12:16 2019 (r344209) +++ stable/12/libexec/rc/rc.d/growfs Sat Feb 16 09:50:17 2019 (r344210) @@ -49,7 +49,20 @@ rcvar="growfs_enable" growfs_start () { echo "Growing root partition to fill device" - rootdev=$(df / | tail -n 1 | awk '{ sub("/dev/", "", $1); print $1 }') + FSTYPE=$(mount -p | awk '{ if ( $2 == "/") { print $3 }}') + FSDEV=$(mount -p | awk '{ if ( $2 == "/") { print $1 }}') + case "$FSTYPE" in + ufs) + rootdev=${FSDEV#/dev/} + ;; + zfs) + pool=${FSDEV%%/*} + rootdev=$(zpool list -v $pool | tail -n 1 | awk '{ print $1 }') + ;; + *) + echo "Don't know how to grow root filesystem type: $FSTYPE" + return + esac if [ x"$rootdev" = x"${rootdev%/*}" ]; then # raw device rawdev="$rootdev" @@ -91,7 +104,14 @@ growfs_start () } }' dev="$rawdev" gpart commit "$rootdev" - growfs -y /dev/"$rootdev" + case "$FSTYPE" in + ufs) + growfs -y /dev/"$rootdev" + ;; + zfs) + zpool online -e $pool $rootdev + ;; + esac } load_rc_config $name From owner-svn-src-all@freebsd.org Sat Feb 16 15:43:59 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 199BF14EB66D; Sat, 16 Feb 2019 15:43:57 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AF49C8F6C4; Sat, 16 Feb 2019 15:43:56 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 85E5E8AE4; Sat, 16 Feb 2019 15:43:56 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GFhu7U048104; Sat, 16 Feb 2019 15:43:56 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GFhtDU048096; Sat, 16 Feb 2019 15:43:55 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902161543.x1GFhtDU048096@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 16 Feb 2019 15:43:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344212 - in stable/12: . contrib/compiler-rt contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray contrib/compiler-rt/lib/BlocksRuntime contrib/compiler-rt/lib/asan c... X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable/12: . contrib/compiler-rt contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray contrib/compiler-rt/lib/BlocksRuntime contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/bu... X-SVN-Commit-Revision: 344212 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: AF49C8F6C4 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 15:43:59 -0000 Author: dim Date: Sat Feb 16 15:43:49 2019 New Revision: 344212 URL: https://svnweb.freebsd.org/changeset/base/344212 Log: Merge clang 7.0.1 and several follow-up changes MFC r341825: Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to the upstream release_70 branch r348686 (effectively, 7.0.1 rc3). The release will follow very soon, but no more functional changes are expected. Release notes for llvm, clang and lld 7.0.0 are available here: PR: 230240, 230355 Relnotes: yes MFC r342123: Update clang, llvm, lld, lldb, compiler-rt and libc++ version number to 7.0.1 release r349250. There were no functional changes since the 7.0.1 rc3 import. PR: 230240, 230355 Relnotes: yes r343429 | emaste | 2019-01-25 15:46:13 +0100 (Fri, 25 Jan 2019) | 16 lines clang: default to DWARF 4 as of FreeBSD 13 FreeBSD previously defaulted to DWARF 2 because several tools (gdb, ctfconvert, etc.) did not support later versions. These have either been fixed or are deprecated. Note that gdb 6 still exists but has been moved out of $PATH into /usr/libexec and is intended only for use by crashinfo(8). The kernel build sets the DWARF version explicitly via -gdwarf2, so this should have no effect there. PR: 234887 [exp-run] Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D17930 MFC r343916: Pull in r352607 from upstream llvm trunk (by Craig Topper): [X86] Add FPSW as a Def on some FP instructions that were missing it. Pull in r353141 from upstream llvm trunk (by Craig Topper): [X86] Connect the default fpsr and dirflag clobbers in inline assembly to the registers we have defined for them. Summary: We don't currently map these constraints to physical register numbers so they don't make it to the MachineIR representation of inline assembly. This could have problems for proper dependency tracking in the machine schedulers though I don't have a test case that shows that. Reviewers: rnk Reviewed By: rnk Subscribers: eraman, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D57641 Pull in r353489 from upstream llvm trunk (by Craig Topper): [X86] Add FPCW as a register and start using it as an implicit use on floating point instructions. Summary: FPCW contains the rounding mode control which we manipulate to implement fp to integer conversion by changing the roudning mode, storing the value to the stack, and then changing the rounding mode back. Because we didn't model FPCW and its dependency chain, other instructions could be scheduled into the middle of the sequence. This patch introduces the register and adds it as an implciit def of FLDCW and implicit use of the FP binary arithmetic instructions and store instructions. There are more instructions that need to be updated, but this is a good start. I believe this fixes at least the reduced test case from PR40529. Reviewers: RKSimon, spatel, rnk, efriedma, andrew.w.kaylor Subscribers: dim, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D57735 These should fix a problem in clang 7.0 where it would sometimes emit long double floating point instructions in a slightly wrong order, leading to failures in our libm tests. In particular, the cbrt_test test case 'cbrtl_powl' and the trig_test test case 'reduction'. Also bump __FreeBSD_cc_version, to be able to detect this in our test suite. Reported by: lwhsu PR: 234040 Upstream PR: https://bugs.llvm.org/show_bug.cgi?id=40206 MFC r344056: Pull in r339734 from upstream llvm trunk (by Eli Friedman): [ARM] Make PerformSHLSimplify add nodes to the DAG worklist correctly. Intentionally excluding nodes from the DAGCombine worklist is likely to lead to weird optimizations and infinite loops, so it's generally a bad idea. To avoid the infinite loops, fix DAGCombine to use the isDesirableToCommuteWithShift target hook before performing the transforms in question, and implement the target hook in the ARM backend disable the transforms in question. Fixes https://bugs.llvm.org/show_bug.cgi?id=38530 . (I don't have a reduced testcase for that bug. But we should have sufficient test coverage for PerformSHLSimplify given that we're not playing weird tricks with the worklist. I can try to bugpoint it if necessary, though.) Differential Revision: https://reviews.llvm.org/D50667 This should fix a possible hang when compiling sys/dev/nxge/if_nxge.c (which exists now only in the stable/11 branch) for arm. Added: stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h - copied unchanged from r341825, head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h stable/12/contrib/compiler-rt/lib/asan/asan_malloc_local.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/asan/asan_malloc_local.h stable/12/contrib/compiler-rt/lib/asan/asan_mapping_myriad.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/asan/asan_mapping_myriad.h stable/12/contrib/compiler-rt/lib/asan/asan_rtems.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/asan/asan_rtems.cc stable/12/contrib/compiler-rt/lib/builtins/arm/chkstk.S - copied unchanged from r341825, head/contrib/compiler-rt/lib/builtins/arm/chkstk.S stable/12/contrib/compiler-rt/lib/builtins/hexagon/ - copied from r341825, head/contrib/compiler-rt/lib/builtins/hexagon/ stable/12/contrib/compiler-rt/lib/builtins/riscv/ - copied from r341825, head/contrib/compiler-rt/lib/builtins/riscv/ - copied from r341825, head/contrib/compiler-rt/lib/fuzzer/ stable/12/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cc stable/12/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_mapping.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_mapping.h stable/12/contrib/compiler-rt/lib/hwasan/hwasan_report.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_report.h stable/12/contrib/compiler-rt/lib/msan/msan_report.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/msan/msan_report.h stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPlatformFuchsia.c - copied unchanged from r341825, head/contrib/compiler-rt/lib/profile/InstrProfilingPlatformFuchsia.c stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_openbsd.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_openbsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_markup.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_markup.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscalls_netbsd.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscalls_netbsd.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cc stable/12/contrib/compiler-rt/lib/scudo/scudo_errors.cpp - copied unchanged from r341825, head/contrib/compiler-rt/lib/scudo/scudo_errors.cpp stable/12/contrib/compiler-rt/lib/scudo/scudo_errors.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/scudo/scudo_errors.h stable/12/contrib/compiler-rt/lib/scudo/scudo_malloc.cpp - copied unchanged from r341825, head/contrib/compiler-rt/lib/scudo/scudo_malloc.cpp stable/12/contrib/compiler-rt/lib/ubsan/ubsan_init_standalone_preinit.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/ubsan/ubsan_init_standalone_preinit.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_monitor.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/ubsan/ubsan_monitor.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_monitor.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/ubsan/ubsan_monitor.h stable/12/contrib/compiler-rt/lib/xray/xray_allocator.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_allocator.h stable/12/contrib/compiler-rt/lib/xray/xray_basic_flags.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_flags.cc stable/12/contrib/compiler-rt/lib/xray/xray_basic_flags.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_flags.h stable/12/contrib/compiler-rt/lib/xray/xray_basic_flags.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_flags.inc stable/12/contrib/compiler-rt/lib/xray/xray_basic_logging.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_logging.cc stable/12/contrib/compiler-rt/lib/xray/xray_basic_logging.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_logging.h stable/12/contrib/compiler-rt/lib/xray/xray_fdr_flags.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_fdr_flags.cc stable/12/contrib/compiler-rt/lib/xray/xray_fdr_flags.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_fdr_flags.h stable/12/contrib/compiler-rt/lib/xray/xray_fdr_flags.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_fdr_flags.inc stable/12/contrib/compiler-rt/lib/xray/xray_function_call_trie.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_function_call_trie.h stable/12/contrib/compiler-rt/lib/xray/xray_profile_collector.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profile_collector.cc stable/12/contrib/compiler-rt/lib/xray/xray_profile_collector.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profile_collector.h stable/12/contrib/compiler-rt/lib/xray/xray_profiling.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling.cc stable/12/contrib/compiler-rt/lib/xray/xray_profiling_flags.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling_flags.cc stable/12/contrib/compiler-rt/lib/xray/xray_profiling_flags.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling_flags.h stable/12/contrib/compiler-rt/lib/xray/xray_profiling_flags.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling_flags.inc stable/12/contrib/compiler-rt/lib/xray/xray_recursion_guard.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_recursion_guard.h stable/12/contrib/compiler-rt/lib/xray/xray_segmented_array.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_segmented_array.h stable/12/contrib/libc++/include/__errc - copied unchanged from r341825, head/contrib/libc++/include/__errc stable/12/contrib/libc++/include/__node_handle - copied unchanged from r341825, head/contrib/libc++/include/__node_handle stable/12/contrib/libc++/include/charconv - copied unchanged from r341825, head/contrib/libc++/include/charconv stable/12/contrib/libc++/include/compare - copied unchanged from r341825, head/contrib/libc++/include/compare stable/12/contrib/libc++/include/experimental/simd - copied unchanged from r341825, head/contrib/libc++/include/experimental/simd stable/12/contrib/libc++/include/filesystem - copied unchanged from r341825, head/contrib/libc++/include/filesystem stable/12/contrib/libc++/include/span - copied unchanged from r341825, head/contrib/libc++/include/span stable/12/contrib/libc++/include/version - copied unchanged from r341825, head/contrib/libc++/include/version stable/12/contrib/libc++/src/charconv.cpp - copied unchanged from r341825, head/contrib/libc++/src/charconv.cpp stable/12/contrib/libc++/src/filesystem/ - copied from r341825, head/contrib/libc++/src/filesystem/ stable/12/contrib/libc++/src/include/apple_availability.h - copied unchanged from r341825, head/contrib/libc++/src/include/apple_availability.h stable/12/contrib/llvm/include/llvm-c/Comdat.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/Comdat.h stable/12/contrib/llvm/include/llvm-c/DataTypes.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/DataTypes.h stable/12/contrib/llvm/include/llvm-c/DisassemblerTypes.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/DisassemblerTypes.h stable/12/contrib/llvm/include/llvm-c/Transforms/InstCombine.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/Transforms/InstCombine.h stable/12/contrib/llvm/include/llvm-c/Transforms/Utils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/Transforms/Utils.h stable/12/contrib/llvm/include/llvm/ADT/Any.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ADT/Any.h stable/12/contrib/llvm/include/llvm/ADT/FunctionExtras.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ADT/FunctionExtras.h stable/12/contrib/llvm/include/llvm/Analysis/MustExecute.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Analysis/MustExecute.h stable/12/contrib/llvm/include/llvm/Analysis/PhiValues.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Analysis/PhiValues.h stable/12/contrib/llvm/include/llvm/Analysis/SyntheticCountsUtils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Analysis/SyntheticCountsUtils.h stable/12/contrib/llvm/include/llvm/Analysis/Utils/ - copied from r341825, head/contrib/llvm/include/llvm/Analysis/Utils/ stable/12/contrib/llvm/include/llvm/BinaryFormat/DynamicTags.def - copied unchanged from r341825, head/contrib/llvm/include/llvm/BinaryFormat/DynamicTags.def stable/12/contrib/llvm/include/llvm/CodeGen/AccelTable.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/AccelTable.h stable/12/contrib/llvm/include/llvm/CodeGen/CommandFlags.inc - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/CommandFlags.inc stable/12/contrib/llvm/include/llvm/CodeGen/ExecutionDomainFix.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/ExecutionDomainFix.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Combiner.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/Combiner.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h stable/12/contrib/llvm/include/llvm/CodeGen/LoopTraversal.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/LoopTraversal.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineOutliner.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/MachineOutliner.h stable/12/contrib/llvm/include/llvm/CodeGen/ReachingDefAnalysis.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/ReachingDefAnalysis.h stable/12/contrib/llvm/include/llvm/CodeGen/WasmEHFuncInfo.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/WasmEHFuncInfo.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAddr.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAddr.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRnglists.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRnglists.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumInjectedSources.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumInjectedSources.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSectionContribs.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSectionContribs.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAInjectedSource.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAInjectedSource.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASectionContrib.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASectionContrib.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAUtils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAUtils.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBInjectedSource.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBInjectedSource.h stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSectionContrib.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSectionContrib.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/Core.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Core.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/Layer.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Layer.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/Legacy.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Legacy.h stable/12/contrib/llvm/include/llvm/IR/DomTreeUpdater.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/IR/DomTreeUpdater.h stable/12/contrib/llvm/include/llvm/IR/RuntimeLibcalls.def - copied unchanged from r341825, head/contrib/llvm/include/llvm/IR/RuntimeLibcalls.def stable/12/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.inc - copied unchanged from r341825, head/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.inc stable/12/contrib/llvm/include/llvm/Object/CVDebugRecord.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Object/CVDebugRecord.h stable/12/contrib/llvm/include/llvm/Object/WasmTraits.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Object/WasmTraits.h stable/12/contrib/llvm/include/llvm/Passes/PassPlugin.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Passes/PassPlugin.h stable/12/contrib/llvm/include/llvm/Support/AMDHSAKernelDescriptor.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/AMDHSAKernelDescriptor.h stable/12/contrib/llvm/include/llvm/Support/CheckedArithmetic.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/CheckedArithmetic.h stable/12/contrib/llvm/include/llvm/Support/DJB.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/DJB.h stable/12/contrib/llvm/include/llvm/Support/DataTypes.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/DataTypes.h stable/12/contrib/llvm/include/llvm/Support/InitLLVM.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/InitLLVM.h stable/12/contrib/llvm/include/llvm/Support/JSON.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/JSON.h stable/12/contrib/llvm/include/llvm/Support/MachineValueType.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/MachineValueType.h stable/12/contrib/llvm/include/llvm/Support/MemAlloc.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/MemAlloc.h stable/12/contrib/llvm/include/llvm/Support/SmallVectorMemoryBuffer.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/SmallVectorMemoryBuffer.h stable/12/contrib/llvm/include/llvm/Support/TargetOpcodes.def - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/TargetOpcodes.def stable/12/contrib/llvm/include/llvm/Support/TaskQueue.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/TaskQueue.h stable/12/contrib/llvm/include/llvm/Support/VersionTuple.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/VersionTuple.h stable/12/contrib/llvm/include/llvm/Support/WithColor.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/WithColor.h stable/12/contrib/llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h stable/12/contrib/llvm/include/llvm/Target/CodeGenCWrappers.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Target/CodeGenCWrappers.h stable/12/contrib/llvm/include/llvm/Target/TargetInstrPredicate.td - copied unchanged from r341825, head/contrib/llvm/include/llvm/Target/TargetInstrPredicate.td stable/12/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h stable/12/contrib/llvm/include/llvm/Transforms/AggressiveInstCombine/ - copied from r341825, head/contrib/llvm/include/llvm/Transforms/AggressiveInstCombine/ stable/12/contrib/llvm/include/llvm/Transforms/IPO/SampleProfile.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/IPO/SampleProfile.h stable/12/contrib/llvm/include/llvm/Transforms/IPO/SyntheticCountsPropagation.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/IPO/SyntheticCountsPropagation.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/CGProfile.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/CGProfile.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h stable/12/contrib/llvm/include/llvm/Transforms/Utils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Utils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h stable/12/contrib/llvm/lib/Analysis/MustExecute.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Analysis/MustExecute.cpp stable/12/contrib/llvm/lib/Analysis/PhiValues.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Analysis/PhiValues.cpp stable/12/contrib/llvm/lib/Analysis/SyntheticCountsUtils.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Analysis/SyntheticCountsUtils.cpp stable/12/contrib/llvm/lib/BinaryFormat/Wasm.cpp - copied unchanged from r341825, head/contrib/llvm/lib/BinaryFormat/Wasm.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h stable/12/contrib/llvm/lib/CodeGen/BreakFalseDeps.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/BreakFalseDeps.cpp stable/12/contrib/llvm/lib/CodeGen/CFIInstrInserter.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/CFIInstrInserter.cpp stable/12/contrib/llvm/lib/CodeGen/ExecutionDomainFix.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/ExecutionDomainFix.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Combiner.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/Combiner.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp stable/12/contrib/llvm/lib/CodeGen/LoopTraversal.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/LoopTraversal.cpp stable/12/contrib/llvm/lib/CodeGen/ReachingDefAnalysis.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/ReachingDefAnalysis.cpp stable/12/contrib/llvm/lib/CodeGen/ValueTypes.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/ValueTypes.cpp stable/12/contrib/llvm/lib/CodeGen/WasmEHPrepare.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/WasmEHPrepare.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAddr.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAddr.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumInjectedSources.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumInjectedSources.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSectionContribs.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSectionContribs.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAInjectedSource.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAInjectedSource.cpp stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp stable/12/contrib/llvm/lib/Demangle/Compiler.h - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/Compiler.h stable/12/contrib/llvm/lib/Demangle/MicrosoftDemangle.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/MicrosoftDemangle.cpp stable/12/contrib/llvm/lib/Demangle/StringView.h - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/StringView.h stable/12/contrib/llvm/lib/Demangle/Utility.h - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/Utility.h stable/12/contrib/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/Core.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/Core.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/Layer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/Layer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/Legacy.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/Legacy.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp stable/12/contrib/llvm/lib/ExecutionEngine/PerfJITEvents/ - copied from r341825, head/contrib/llvm/lib/ExecutionEngine/PerfJITEvents/ stable/12/contrib/llvm/lib/IR/DomTreeUpdater.cpp - copied unchanged from r341825, head/contrib/llvm/lib/IR/DomTreeUpdater.cpp stable/12/contrib/llvm/lib/MC/MCAsmMacro.cpp - copied unchanged from r341825, head/contrib/llvm/lib/MC/MCAsmMacro.cpp stable/12/contrib/llvm/lib/Passes/PassPlugin.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Passes/PassPlugin.cpp stable/12/contrib/llvm/lib/Support/DJB.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/DJB.cpp stable/12/contrib/llvm/lib/Support/InitLLVM.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/InitLLVM.cpp stable/12/contrib/llvm/lib/Support/JSON.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/JSON.cpp stable/12/contrib/llvm/lib/Support/UnicodeCaseFold.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/UnicodeCaseFold.cpp stable/12/contrib/llvm/lib/Support/VersionTuple.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/VersionTuple.cpp stable/12/contrib/llvm/lib/Support/WithColor.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/WithColor.cpp stable/12/contrib/llvm/lib/TableGen/JSONBackend.cpp - copied unchanged from r341825, head/contrib/llvm/lib/TableGen/JSONBackend.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM1.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM1.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUFeatures.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUFeatures.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUGISel.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUGISel.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/R600.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.h stable/12/contrib/llvm/lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/SIProgramInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/SIProgramInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.h stable/12/contrib/llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMParallelDSP.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/ARM/ARMParallelDSP.cpp stable/12/contrib/llvm/lib/Target/BPF/BPFMIPeephole.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/BPF/BPFMIPeephole.cpp stable/12/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp stable/12/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonCallingConv.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/Hexagon/HexagonCallingConv.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonPatternsHVX.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/Hexagon/HexagonPatternsHVX.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVExtract.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Hexagon/HexagonVExtract.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsBranchExpansion.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsBranchExpansion.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsCallLowering.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsCallLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsCallLowering.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsCallLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsExpandPseudo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsExpandPseudo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsInstructionSelector.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsInstructionSelector.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterBanks.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsRegisterBanks.td stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500.td stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h stable/12/contrib/llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.h stable/12/contrib/llvm/lib/Target/WebAssembly/AsmParser/ - copied from r341825, head/contrib/llvm/lib/Target/WebAssembly/AsmParser/ stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.h stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrExceptRef.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrExceptRef.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCExpr.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCExpr.h stable/12/contrib/llvm/lib/Target/X86/ShadowCallStack.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/ShadowCallStack.cpp stable/12/contrib/llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp stable/12/contrib/llvm/lib/Target/X86/X86IndirectBranchTracking.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86IndirectBranchTracking.cpp stable/12/contrib/llvm/lib/Target/X86/X86InstrFoldTables.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86InstrFoldTables.cpp stable/12/contrib/llvm/lib/Target/X86/X86InstrFoldTables.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86InstrFoldTables.h stable/12/contrib/llvm/lib/Target/X86/X86PfmCounters.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86PfmCounters.td stable/12/contrib/llvm/lib/Target/X86/X86SchedPredicates.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86SchedPredicates.td stable/12/contrib/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp stable/12/contrib/llvm/lib/Transforms/AggressiveInstCombine/ - copied from r341825, head/contrib/llvm/lib/Transforms/AggressiveInstCombine/ stable/12/contrib/llvm/lib/Transforms/IPO/BlockExtractor.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/IPO/BlockExtractor.cpp stable/12/contrib/llvm/lib/Transforms/IPO/SCCP.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/IPO/SCCP.cpp stable/12/contrib/llvm/lib/Transforms/IPO/SyntheticCountsPropagation.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/IPO/SyntheticCountsPropagation.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineTables.td - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/InstCombine/InstCombineTables.td stable/12/contrib/llvm/lib/Transforms/Instrumentation/CGProfile.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Instrumentation/CGProfile.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/InstSimplifyPass.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Scalar/InstSimplifyPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopRotationUtils.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Utils/LoopRotationUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanLoopInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanLoopInfo.h stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ComparisonCategories.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/AST/ComparisonCategories.h stable/12/contrib/llvm/tools/clang/include/clang/AST/NonTrivialTypeVisitor.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/AST/NonTrivialTypeVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/PrettyDeclStackTrace.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/AST/PrettyDeclStackTrace.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/ConstructionContext.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Analysis/ConstructionContext.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/BitmaskEnum.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/BitmaskEnum.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Features.def - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/Features.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/Stack.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/Stack.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/XRayInstr.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/XRayInstr.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/arm_fp16.td - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/arm_fp16.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/arm_neon_incl.td - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/arm_neon_incl.td stable/12/contrib/llvm/tools/clang/include/clang/Sema/ParsedAttr.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Sema/ParsedAttr.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/TemplateInstCallback.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Sema/TemplateInstCallback.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTContext.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTContext.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTExpr.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTExpr.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSolver.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSolver.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSort.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSort.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/AllTUsExecution.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Tooling/AllTUsExecution.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Inclusions/ - copied from r341825, head/contrib/llvm/tools/clang/include/clang/Tooling/Inclusions/ stable/12/contrib/llvm/tools/clang/lib/AST/ComparisonCategories.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/AST/ComparisonCategories.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ConstructionContext.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Analysis/ConstructionContext.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.h stable/12/contrib/llvm/tools/clang/lib/Basic/XRayInstr.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Basic/XRayInstr.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.h stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.h stable/12/contrib/llvm/tools/clang/lib/Frontend/FrontendTiming.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Frontend/FrontendTiming.cpp stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_device_functions.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_device_functions.h stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_libdevice_declares.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_libdevice_declares.h stable/12/contrib/llvm/tools/clang/lib/Headers/cldemoteintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/cldemoteintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/invpcidintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/invpcidintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/movdirintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/movdirintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/pconfigintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/pconfigintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/ptwriteintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/ptwriteintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/sgxintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/sgxintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/waitpkgintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/waitpkgintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/wbnoinvdintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/wbnoinvdintrin.h stable/12/contrib/llvm/tools/clang/lib/Sema/ParsedAttr.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Sema/ParsedAttr.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationState.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationState.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TrustNonnullChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TrustNonnullChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObjectChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObjectChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/WorkList.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/WorkList.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/AllTUsExecution.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Tooling/AllTUsExecution.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Inclusions/ - copied from r341825, head/contrib/llvm/tools/clang/lib/Tooling/Inclusions/ stable/12/contrib/llvm/tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp stable/12/contrib/llvm/tools/clang/tools/driver/cc1gen_reproducer_main.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/tools/driver/cc1gen_reproducer_main.cpp stable/12/contrib/llvm/tools/lld/COFF/ICF.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/COFF/ICF.h stable/12/contrib/llvm/tools/lld/COFF/MarkLive.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/COFF/MarkLive.h stable/12/contrib/llvm/tools/lld/Common/Timer.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lld/Common/Timer.cpp stable/12/contrib/llvm/tools/lld/ELF/Arch/Hexagon.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/Arch/Hexagon.cpp stable/12/contrib/llvm/tools/lld/ELF/CallGraphSort.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/CallGraphSort.cpp stable/12/contrib/llvm/tools/lld/ELF/CallGraphSort.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/CallGraphSort.h stable/12/contrib/llvm/tools/lld/ELF/MarkLive.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/MarkLive.h stable/12/contrib/llvm/tools/lld/docs/ - copied from r341825, head/contrib/llvm/tools/lld/docs/ stable/12/contrib/llvm/tools/lld/include/lld/Common/Timer.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/include/lld/Common/Timer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/DumpRegisterValue.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Core/DumpRegisterValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionArgParser.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionArgParser.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Args.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/Args.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/CompletionRequest.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/CompletionRequest.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Environment.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/Environment.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractorGDBRemote.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractorGDBRemote.h stable/12/contrib/llvm/tools/lldb/include/lldb/module.modulemap - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/module.modulemap stable/12/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.h stable/12/contrib/llvm/tools/lldb/source/Core/DumpRegisterValue.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Core/DumpRegisterValue.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionArgParser.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Interpreter/OptionArgParser.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/PPC64/ - copied from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Architecture/PPC64/ stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/ - copied from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/ stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwinConstants.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwinConstants.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-ppc64-register-enums.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-ppc64-register-enums.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.h stable/12/contrib/llvm/tools/lldb/source/Utility/Args.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/Args.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/CompletionRequest.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/CompletionRequest.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Environment.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/Environment.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/PPC64_DWARF_Registers.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/PPC64_DWARF_Registers.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/module.modulemap - copied unchanged from r341825, head/contrib/llvm/tools/lldb/tools/lldb-mi/module.modulemap stable/12/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.cpp stable/12/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.h stable/12/contrib/llvm/tools/llvm-cov/CoverageExporter.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-cov/CoverageExporter.h stable/12/contrib/llvm/tools/llvm-cov/CoverageExporterJson.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-cov/CoverageExporterJson.h stable/12/contrib/llvm/tools/llvm-mca/ - copied from r341825, head/contrib/llvm/tools/llvm-mca/ stable/12/contrib/llvm/tools/llvm-objcopy/ObjcopyOpts.td - copied unchanged from r341825, head/contrib/llvm/tools/llvm-objcopy/ObjcopyOpts.td stable/12/contrib/llvm/tools/llvm-objcopy/StripOpts.td - copied unchanged from r341825, head/contrib/llvm/tools/llvm-objcopy/StripOpts.td stable/12/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.h stable/12/contrib/llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h stable/12/contrib/llvm/tools/llvm-xray/func-id-helper.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/func-id-helper.cpp stable/12/contrib/llvm/tools/llvm-xray/llvm-xray.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/llvm-xray.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-account.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-account.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-color-helper.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-color-helper.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-converter.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-converter.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-extract.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-extract.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-graph-diff.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-graph-diff.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-graph.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-graph.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-registry.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-registry.cpp stable/12/contrib/llvm/tools/llvm-xray/xray-stacks.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-stacks.cpp stable/12/contrib/llvm/tools/opt/Debugify.h - copied unchanged from r341825, head/contrib/llvm/tools/opt/Debugify.h stable/12/contrib/llvm/utils/TableGen/PredicateExpander.cpp - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/PredicateExpander.cpp stable/12/contrib/llvm/utils/TableGen/PredicateExpander.h - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/PredicateExpander.h stable/12/contrib/llvm/utils/TableGen/RISCVCompressInstEmitter.cpp - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/RISCVCompressInstEmitter.cpp stable/12/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.cpp - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.cpp stable/12/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.h - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.h stable/12/lib/libc++fs/ - copied from r341825, head/lib/libc++fs/ stable/12/lib/libclang_rt/fuzzer/ - copied from r341825, head/lib/libclang_rt/fuzzer/ stable/12/lib/libclang_rt/fuzzer_no_main/ - copied from r341825, head/lib/libclang_rt/fuzzer_no_main/ stable/12/lib/libclang_rt/msan/ - copied from r341825, head/lib/libclang_rt/msan/ stable/12/lib/libclang_rt/msan_cxx/ - copied from r341825, head/lib/libclang_rt/msan_cxx/ stable/12/usr.bin/clang/llvm-mca/ - copied from r341825, head/usr.bin/clang/llvm-mca/ Directory Properties: stable/12/contrib/compiler-rt/lib/fuzzer/ (props changed) Deleted: stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_freebsd.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.cc stable/12/contrib/compiler-rt/lib/scudo/scudo_interceptors.cpp stable/12/contrib/compiler-rt/lib/xray/xray_fdr_logging_impl.h stable/12/contrib/compiler-rt/lib/xray/xray_inmemory_log.cc stable/12/contrib/compiler-rt/lib/xray/xray_inmemory_log.h stable/12/contrib/libc++/src/experimental/filesystem/directory_iterator.cpp stable/12/contrib/libc++/src/experimental/filesystem/filesystem_time_helper.h stable/12/contrib/libc++/src/experimental/filesystem/operations.cpp stable/12/contrib/libc++/src/experimental/filesystem/path.cpp stable/12/contrib/llvm/include/llvm/Analysis/ObjectUtils.h stable/12/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/WebAssembly.def stable/12/contrib/llvm/include/llvm/CodeGen/CommandFlags.def stable/12/contrib/llvm/include/llvm/CodeGen/ExecutionDepsFix.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineValueType.h stable/12/contrib/llvm/include/llvm/CodeGen/RuntimeLibcalls.def stable/12/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFile.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetOpcodes.def stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CVDebugRecord.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/ObjectMemoryBuffer.h stable/12/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.def stable/12/contrib/llvm/include/llvm/Support/AMDGPUKernelDescriptor.h stable/12/contrib/llvm/include/llvm/Support/CodeGenCWrappers.h stable/12/contrib/llvm/include/llvm/Transforms/GCOVProfiler.h stable/12/contrib/llvm/include/llvm/Transforms/InstrProfiling.h stable/12/contrib/llvm/include/llvm/Transforms/PGOInstrumentation.h stable/12/contrib/llvm/include/llvm/Transforms/SampleProfile.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SimplifyInstructions.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.h stable/12/contrib/llvm/lib/CodeGen/ExecutionDepsFix.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/SyntaxHighlighting.cpp stable/12/contrib/llvm/lib/DebugInfo/DWARF/SyntaxHighlighting.h stable/12/contrib/llvm/lib/ExecutionEngine/MCJIT/ObjectBuffer.h stable/12/contrib/llvm/lib/IR/ValueTypes.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedM1.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUOpenCLImageTypeLoweringPass.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUHSAMetadataStreamer.cpp stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUHSAMetadataStreamer.h stable/12/contrib/llvm/lib/Target/AMDGPU/Processors.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600Intrinsics.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIInsertWaits.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepDecoders.h stable/12/contrib/llvm/lib/Target/Mips/MipsHazardSchedule.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsLongBranch.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXSection.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCMachineBasicBlockUtils.h stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanBuilder.h stable/12/contrib/llvm/patches/ stable/12/contrib/llvm/tools/clang/include/clang/Basic/VersionTuple.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/AttributeList.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/PrettyDeclStackTrace.h stable/12/contrib/llvm/tools/clang/lib/Basic/VersionTuple.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/AttributeList.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.h stable/12/contrib/llvm/tools/lld/COFF/Strings.cpp stable/12/contrib/llvm/tools/lld/COFF/Strings.h stable/12/contrib/llvm/tools/lld/ELF/Strings.cpp stable/12/contrib/llvm/tools/lld/ELF/Strings.h stable/12/contrib/llvm/tools/lld/lib/Support/ stable/12/contrib/llvm/tools/lld/tools/linker-script-test/ stable/12/contrib/llvm/tools/lldb/include/lldb/API/SystemInitializerFull.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/Args.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/History.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSyntax.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSyntax.h stable/12/contrib/llvm/tools/lldb/source/Interpreter/Args.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/AddressSanitizer/ stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/UndefinedBehaviorSanitizer/ stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/win-minidump/ stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnames.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnames.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnamesSet.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnamesSet.h stable/12/contrib/llvm/tools/lldb/source/Utility/History.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.h stable/12/contrib/llvm/tools/lldb/tools/intel-mpx/ stable/12/contrib/llvm/tools/lli/OrcLazyJIT.cpp stable/12/contrib/llvm/tools/lli/OrcLazyJIT.h stable/12/contrib/llvm/tools/llvm-pdbutil/Diff.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/Diff.h stable/12/contrib/llvm/tools/llvm-pdbutil/DiffPrinter.cpp stable/12/contrib/llvm/tools/llvm-pdbutil/DiffPrinter.h stable/12/contrib/llvm/tools/llvm-xray/func-id-helper.cc stable/12/contrib/llvm/tools/llvm-xray/llvm-xray.cc stable/12/contrib/llvm/tools/llvm-xray/xray-account.cc stable/12/contrib/llvm/tools/llvm-xray/xray-color-helper.cc stable/12/contrib/llvm/tools/llvm-xray/xray-converter.cc stable/12/contrib/llvm/tools/llvm-xray/xray-extract.cc stable/12/contrib/llvm/tools/llvm-xray/xray-graph-diff.cc stable/12/contrib/llvm/tools/llvm-xray/xray-graph.cc stable/12/contrib/llvm/tools/llvm-xray/xray-registry.cc stable/12/contrib/llvm/tools/llvm-xray/xray-stacks.cc stable/12/lib/clang/include/llvm/Support/DataTypes.h stable/12/usr.bin/clang/lld/ld.lld.1 Modified: stable/12/ObsoleteFiles.inc stable/12/UPDATING stable/12/contrib/compiler-rt/LICENSE.TXT stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h stable/12/contrib/compiler-rt/include/sanitizer/msan_interface.h stable/12/contrib/compiler-rt/include/sanitizer/scudo_interface.h (contents, props changed) stable/12/contrib/compiler-rt/include/xray/xray_interface.h (contents, props changed) stable/12/contrib/compiler-rt/include/xray/xray_log_interface.h (contents, props changed) stable/12/contrib/compiler-rt/include/xray/xray_records.h (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_allocator.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_allocator.h stable/12/contrib/compiler-rt/lib/asan/asan_debugging.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_descriptions.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_descriptions.h (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_errors.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_errors.h (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_flags.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_flags.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_globals.cc stable/12/contrib/compiler-rt/lib/asan/asan_globals_win.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_interceptors.cc stable/12/contrib/compiler-rt/lib/asan/asan_interceptors.h stable/12/contrib/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_interceptors_memintrinsics.h (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_internal.h stable/12/contrib/compiler-rt/lib/asan/asan_mac.cc stable/12/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc stable/12/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc stable/12/contrib/compiler-rt/lib/asan/asan_mapping.h stable/12/contrib/compiler-rt/lib/asan/asan_memory_profile.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_new_delete.cc stable/12/contrib/compiler-rt/lib/asan/asan_poisoning.cc stable/12/contrib/compiler-rt/lib/asan/asan_poisoning.h stable/12/contrib/compiler-rt/lib/asan/asan_report.cc stable/12/contrib/compiler-rt/lib/asan/asan_report.h stable/12/contrib/compiler-rt/lib/asan/asan_rtl.cc stable/12/contrib/compiler-rt/lib/asan/asan_shadow_setup.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/asan/asan_thread.cc stable/12/contrib/compiler-rt/lib/asan/asan_win.cc stable/12/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/clear_cache.c (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/clzdi2.c (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/cpu_model.c (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/ctzdi2.c (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/emutls.c (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/int_types.h (contents, props changed) stable/12/contrib/compiler-rt/lib/builtins/os_version_check.c (contents, props changed) stable/12/contrib/compiler-rt/lib/cfi/cfi.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/cfi/cfi_blacklist.txt (contents, props changed) stable/12/contrib/compiler-rt/lib/dfsan/dfsan.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/dfsan/dfsan_custom.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/dfsan/done_abilist.txt (contents, props changed) stable/12/contrib/compiler-rt/lib/esan/esan.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/esan/esan_interceptors.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/esan/esan_sideline_linux.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan.h (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_allocator.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_flags.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_interceptors.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_interface_internal.h (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_linux.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_new_delete.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_report.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_thread.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_thread.h (contents, props changed) stable/12/contrib/compiler-rt/lib/interception/interception.h stable/12/contrib/compiler-rt/lib/interception/interception_linux.cc stable/12/contrib/compiler-rt/lib/interception/interception_linux.h stable/12/contrib/compiler-rt/lib/interception/interception_win.cc stable/12/contrib/compiler-rt/lib/lsan/lsan.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_allocator.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_allocator.h stable/12/contrib/compiler-rt/lib/lsan/lsan_common.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_common.h stable/12/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/lsan/lsan_interceptors.cc stable/12/contrib/compiler-rt/lib/lsan/lsan_malloc_mac.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/lsan/lsan_thread.cc stable/12/contrib/compiler-rt/lib/msan/msan.cc stable/12/contrib/compiler-rt/lib/msan/msan.h stable/12/contrib/compiler-rt/lib/msan/msan_allocator.cc stable/12/contrib/compiler-rt/lib/msan/msan_interceptors.cc stable/12/contrib/compiler-rt/lib/msan/msan_interface_internal.h stable/12/contrib/compiler-rt/lib/msan/msan_linux.cc stable/12/contrib/compiler-rt/lib/msan/msan_new_delete.cc stable/12/contrib/compiler-rt/lib/msan/msan_poisoning.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/msan/msan_report.cc stable/12/contrib/compiler-rt/lib/profile/GCDAProfiling.c stable/12/contrib/compiler-rt/lib/profile/InstrProfData.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfiling.h (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingFile.c (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingMerge.c (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingMergeFile.c (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPort.h (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingUtil.c (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingUtil.h (contents, props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingValue.c (contents, props changed) stable/12/contrib/compiler-rt/lib/safestack/safestack.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_bytemap.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_checks.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_combined.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_internal.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_local_cache.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_size_class_map.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_stats.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_other.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_nolibc.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_fuchsia.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector2.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_errno.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_file.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_getauxval.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libc.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libc.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libignore.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mutex.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_printf.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_quarantine.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_report_decorator.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepot.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_suppressions.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_win.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_generic.inc stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_linux_libcdep.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_vector.h (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc stable/12/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh (contents, props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_allocator.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_allocator.h (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_allocator_combined.h (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_allocator_secondary.h (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_flags.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_interface_internal.h (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_new_delete.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_platform.h (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_termination.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_tsd.h (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_tsd_exclusive.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_tsd_exclusive.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_tsd_shared.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_tsd_shared.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_utils.cpp (contents, props changed) stable/12/contrib/compiler-rt/lib/stats/stats.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/go/test.c stable/12/contrib/compiler-rt/lib/tsan/go/tsan_go.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_debugging.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interface.h stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_malloc_mac.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_mman.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_platform.h stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_posix.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.h stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_mutex.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_stack_trace.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_stack_trace.h (contents, props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_suppressions.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_symbolize.cc stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_sync.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_checks.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_diag.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_diag.h stable/12/contrib/compiler-rt/lib/ubsan/ubsan_flags.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_flags.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_handlers.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_handlers.h stable/12/contrib/compiler-rt/lib/ubsan/ubsan_handlers_cxx.cc stable/12/contrib/compiler-rt/lib/ubsan/ubsan_interface.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_platform.h (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_signals_standalone.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_win_weak_interception.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_AArch64.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_arm.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_buffer_queue.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_buffer_queue.h (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_fdr_log_records.h (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_fdr_logging.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_flags.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_flags.h (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_flags.inc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_init.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_interface.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_interface_internal.h (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_log_interface.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_mips.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_mips64.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_powerpc64.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_x86_64.S (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_utils.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_utils.h (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_x86_64.cc (contents, props changed) stable/12/contrib/compiler-rt/lib/xray/xray_x86_64.inc (contents, props changed) stable/12/contrib/libc++/include/__bsd_locale_fallbacks.h (contents, props changed) stable/12/contrib/libc++/include/__config stable/12/contrib/libc++/include/__functional_03 stable/12/contrib/libc++/include/__functional_base stable/12/contrib/libc++/include/__hash_table stable/12/contrib/libc++/include/__libcpp_version stable/12/contrib/libc++/include/__locale stable/12/contrib/libc++/include/__mutex_base stable/12/contrib/libc++/include/__nullptr stable/12/contrib/libc++/include/__sso_allocator stable/12/contrib/libc++/include/__string stable/12/contrib/libc++/include/__threading_support stable/12/contrib/libc++/include/__tree stable/12/contrib/libc++/include/algorithm stable/12/contrib/libc++/include/any stable/12/contrib/libc++/include/array stable/12/contrib/libc++/include/atomic stable/12/contrib/libc++/include/cfloat stable/12/contrib/libc++/include/chrono stable/12/contrib/libc++/include/cmath stable/12/contrib/libc++/include/codecvt stable/12/contrib/libc++/include/complex stable/12/contrib/libc++/include/cstdlib stable/12/contrib/libc++/include/ctime stable/12/contrib/libc++/include/deque stable/12/contrib/libc++/include/exception stable/12/contrib/libc++/include/experimental/__config stable/12/contrib/libc++/include/experimental/algorithm stable/12/contrib/libc++/include/experimental/any stable/12/contrib/libc++/include/experimental/chrono stable/12/contrib/libc++/include/experimental/coroutine stable/12/contrib/libc++/include/experimental/dynarray stable/12/contrib/libc++/include/experimental/filesystem stable/12/contrib/libc++/include/experimental/functional stable/12/contrib/libc++/include/experimental/memory_resource stable/12/contrib/libc++/include/experimental/numeric stable/12/contrib/libc++/include/experimental/optional stable/12/contrib/libc++/include/experimental/propagate_const stable/12/contrib/libc++/include/experimental/ratio stable/12/contrib/libc++/include/experimental/string_view stable/12/contrib/libc++/include/experimental/system_error stable/12/contrib/libc++/include/experimental/tuple stable/12/contrib/libc++/include/experimental/type_traits stable/12/contrib/libc++/include/float.h (contents, props changed) stable/12/contrib/libc++/include/forward_list stable/12/contrib/libc++/include/fstream stable/12/contrib/libc++/include/functional stable/12/contrib/libc++/include/future stable/12/contrib/libc++/include/initializer_list stable/12/contrib/libc++/include/ios stable/12/contrib/libc++/include/istream stable/12/contrib/libc++/include/iterator stable/12/contrib/libc++/include/list stable/12/contrib/libc++/include/locale stable/12/contrib/libc++/include/map stable/12/contrib/libc++/include/math.h (contents, props changed) stable/12/contrib/libc++/include/memory stable/12/contrib/libc++/include/module.modulemap stable/12/contrib/libc++/include/new stable/12/contrib/libc++/include/numeric stable/12/contrib/libc++/include/optional stable/12/contrib/libc++/include/ostream stable/12/contrib/libc++/include/queue stable/12/contrib/libc++/include/random stable/12/contrib/libc++/include/regex stable/12/contrib/libc++/include/set stable/12/contrib/libc++/include/shared_mutex stable/12/contrib/libc++/include/stack stable/12/contrib/libc++/include/stdexcept stable/12/contrib/libc++/include/stdio.h (contents, props changed) stable/12/contrib/libc++/include/streambuf stable/12/contrib/libc++/include/string stable/12/contrib/libc++/include/string_view stable/12/contrib/libc++/include/system_error stable/12/contrib/libc++/include/tgmath.h (contents, props changed) stable/12/contrib/libc++/include/thread stable/12/contrib/libc++/include/tuple stable/12/contrib/libc++/include/type_traits stable/12/contrib/libc++/include/typeinfo stable/12/contrib/libc++/include/unordered_map stable/12/contrib/libc++/include/unordered_set stable/12/contrib/libc++/include/utility stable/12/contrib/libc++/include/valarray stable/12/contrib/libc++/include/variant stable/12/contrib/libc++/include/vector stable/12/contrib/libc++/src/any.cpp (contents, props changed) stable/12/contrib/libc++/src/bind.cpp (contents, props changed) stable/12/contrib/libc++/src/chrono.cpp (contents, props changed) stable/12/contrib/libc++/src/experimental/memory_resource.cpp (contents, props changed) stable/12/contrib/libc++/src/future.cpp (contents, props changed) stable/12/contrib/libc++/src/include/config_elast.h (contents, props changed) stable/12/contrib/libc++/src/locale.cpp (contents, props changed) stable/12/contrib/libc++/src/memory.cpp (contents, props changed) stable/12/contrib/libc++/src/mutex.cpp (contents, props changed) stable/12/contrib/libc++/src/new.cpp (contents, props changed) stable/12/contrib/libc++/src/optional.cpp (contents, props changed) stable/12/contrib/libc++/src/shared_mutex.cpp (contents, props changed) stable/12/contrib/libc++/src/support/runtime/exception_msvc.ipp stable/12/contrib/libc++/src/support/runtime/exception_pointer_msvc.ipp stable/12/contrib/libc++/src/system_error.cpp (contents, props changed) stable/12/contrib/libc++/src/typeinfo.cpp (contents, props changed) stable/12/contrib/libc++/src/utility.cpp (contents, props changed) stable/12/contrib/llvm/LICENSE.TXT stable/12/contrib/llvm/include/llvm-c/Core.h stable/12/contrib/llvm/include/llvm-c/DebugInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm-c/Disassembler.h stable/12/contrib/llvm/include/llvm-c/ExecutionEngine.h stable/12/contrib/llvm/include/llvm-c/Initialization.h stable/12/contrib/llvm/include/llvm-c/OrcBindings.h (contents, props changed) stable/12/contrib/llvm/include/llvm-c/Support.h stable/12/contrib/llvm/include/llvm-c/TargetMachine.h stable/12/contrib/llvm/include/llvm-c/Transforms/Scalar.h stable/12/contrib/llvm/include/llvm-c/Transforms/Vectorize.h stable/12/contrib/llvm/include/llvm-c/Types.h (contents, props changed) stable/12/contrib/llvm/include/llvm-c/lto.h stable/12/contrib/llvm/include/llvm/ADT/APFloat.h stable/12/contrib/llvm/include/llvm/ADT/APInt.h stable/12/contrib/llvm/include/llvm/ADT/APSInt.h stable/12/contrib/llvm/include/llvm/ADT/ArrayRef.h stable/12/contrib/llvm/include/llvm/ADT/BitVector.h stable/12/contrib/llvm/include/llvm/ADT/CachedHashString.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ADT/DenseMapInfo.h stable/12/contrib/llvm/include/llvm/ADT/DenseSet.h stable/12/contrib/llvm/include/llvm/ADT/DepthFirstIterator.h stable/12/contrib/llvm/include/llvm/ADT/EpochTracker.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ADT/GraphTraits.h stable/12/contrib/llvm/include/llvm/ADT/Hashing.h stable/12/contrib/llvm/include/llvm/ADT/ImmutableList.h stable/12/contrib/llvm/include/llvm/ADT/ImmutableMap.h stable/12/contrib/llvm/include/llvm/ADT/ImmutableSet.h stable/12/contrib/llvm/include/llvm/ADT/MapVector.h stable/12/contrib/llvm/include/llvm/ADT/None.h stable/12/contrib/llvm/include/llvm/ADT/Optional.h stable/12/contrib/llvm/include/llvm/ADT/PackedVector.h stable/12/contrib/llvm/include/llvm/ADT/PointerUnion.h stable/12/contrib/llvm/include/llvm/ADT/SCCIterator.h stable/12/contrib/llvm/include/llvm/ADT/STLExtras.h stable/12/contrib/llvm/include/llvm/ADT/ScopeExit.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ADT/SetVector.h stable/12/contrib/llvm/include/llvm/ADT/SmallPtrSet.h stable/12/contrib/llvm/include/llvm/ADT/SmallSet.h stable/12/contrib/llvm/include/llvm/ADT/SmallVector.h stable/12/contrib/llvm/include/llvm/ADT/SparseMultiSet.h stable/12/contrib/llvm/include/llvm/ADT/SparseSet.h stable/12/contrib/llvm/include/llvm/ADT/Statistic.h stable/12/contrib/llvm/include/llvm/ADT/StringExtras.h stable/12/contrib/llvm/include/llvm/ADT/StringMap.h stable/12/contrib/llvm/include/llvm/ADT/StringRef.h stable/12/contrib/llvm/include/llvm/ADT/StringSwitch.h stable/12/contrib/llvm/include/llvm/ADT/TinyPtrVector.h stable/12/contrib/llvm/include/llvm/ADT/Triple.h stable/12/contrib/llvm/include/llvm/ADT/UniqueVector.h stable/12/contrib/llvm/include/llvm/ADT/VariadicFunction.h stable/12/contrib/llvm/include/llvm/ADT/edit_distance.h stable/12/contrib/llvm/include/llvm/ADT/ilist.h stable/12/contrib/llvm/include/llvm/ADT/ilist_node.h stable/12/contrib/llvm/include/llvm/ADT/ilist_node_options.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ADT/iterator.h stable/12/contrib/llvm/include/llvm/ADT/iterator_range.h stable/12/contrib/llvm/include/llvm/Analysis/AliasAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h stable/12/contrib/llvm/include/llvm/Analysis/AssumptionCache.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/BasicAliasAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfo.h stable/12/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h stable/12/contrib/llvm/include/llvm/Analysis/BranchProbabilityInfo.h stable/12/contrib/llvm/include/llvm/Analysis/CFG.h stable/12/contrib/llvm/include/llvm/Analysis/CFLAndersAliasAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/CFLSteensAliasAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h stable/12/contrib/llvm/include/llvm/Analysis/CallGraph.h stable/12/contrib/llvm/include/llvm/Analysis/CaptureTracking.h stable/12/contrib/llvm/include/llvm/Analysis/CodeMetrics.h stable/12/contrib/llvm/include/llvm/Analysis/ConstantFolding.h stable/12/contrib/llvm/include/llvm/Analysis/DOTGraphTraitsPass.h stable/12/contrib/llvm/include/llvm/Analysis/DemandedBits.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/DivergenceAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/DominanceFrontier.h stable/12/contrib/llvm/include/llvm/Analysis/DominanceFrontierImpl.h stable/12/contrib/llvm/include/llvm/Analysis/EHPersonalities.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/IndirectCallPromotionAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/InlineCost.h stable/12/contrib/llvm/include/llvm/Analysis/IteratedDominanceFrontier.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/LazyBranchProbabilityInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/LazyValueInfo.h stable/12/contrib/llvm/include/llvm/Analysis/Lint.h stable/12/contrib/llvm/include/llvm/Analysis/LoopAccessAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/LoopAnalysisManager.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/LoopInfo.h stable/12/contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h stable/12/contrib/llvm/include/llvm/Analysis/LoopIterator.h stable/12/contrib/llvm/include/llvm/Analysis/LoopUnrollAnalyzer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h stable/12/contrib/llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h stable/12/contrib/llvm/include/llvm/Analysis/MemoryLocation.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/MemorySSA.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/MemorySSAUpdater.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/ObjCARCInstKind.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/OptimizationRemarkEmitter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/OrderedBasicBlock.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/PHITransAddr.h stable/12/contrib/llvm/include/llvm/Analysis/Passes.h stable/12/contrib/llvm/include/llvm/Analysis/PostDominators.h stable/12/contrib/llvm/include/llvm/Analysis/ProfileSummaryInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/PtrUseVisitor.h stable/12/contrib/llvm/include/llvm/Analysis/RegionInfo.h stable/12/contrib/llvm/include/llvm/Analysis/RegionInfoImpl.h stable/12/contrib/llvm/include/llvm/Analysis/RegionIterator.h stable/12/contrib/llvm/include/llvm/Analysis/RegionPass.h stable/12/contrib/llvm/include/llvm/Analysis/RegionPrinter.h stable/12/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h stable/12/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h stable/12/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h stable/12/contrib/llvm/include/llvm/Analysis/SparsePropagation.h stable/12/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.def stable/12/contrib/llvm/include/llvm/Analysis/TargetTransformInfo.h stable/12/contrib/llvm/include/llvm/Analysis/TargetTransformInfoImpl.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/TypeMetadataUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/ValueLattice.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Analysis/ValueTracking.h stable/12/contrib/llvm/include/llvm/Analysis/VectorUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/AsmParser/Parser.h stable/12/contrib/llvm/include/llvm/BinaryFormat/COFF.h (contents, props changed) stable/12/contrib/llvm/include/llvm/BinaryFormat/Dwarf.def stable/12/contrib/llvm/include/llvm/BinaryFormat/Dwarf.h (contents, props changed) stable/12/contrib/llvm/include/llvm/BinaryFormat/ELF.h (contents, props changed) stable/12/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/PowerPC64.def stable/12/contrib/llvm/include/llvm/BinaryFormat/MachO.h (contents, props changed) stable/12/contrib/llvm/include/llvm/BinaryFormat/Magic.h (contents, props changed) stable/12/contrib/llvm/include/llvm/BinaryFormat/Wasm.h (contents, props changed) stable/12/contrib/llvm/include/llvm/BinaryFormat/WasmRelocs.def stable/12/contrib/llvm/include/llvm/Bitcode/BitcodeWriter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Bitcode/BitcodeWriterPass.h stable/12/contrib/llvm/include/llvm/Bitcode/BitstreamReader.h stable/12/contrib/llvm/include/llvm/Bitcode/BitstreamWriter.h stable/12/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h stable/12/contrib/llvm/include/llvm/CodeGen/Analysis.h stable/12/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h stable/12/contrib/llvm/include/llvm/CodeGen/AtomicExpandUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/BasicTTIImpl.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/CalcSpillWeights.h stable/12/contrib/llvm/include/llvm/CodeGen/CallingConvLower.h stable/12/contrib/llvm/include/llvm/CodeGen/CostTable.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/DIE.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/DwarfStringPoolEntry.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/FastISel.h stable/12/contrib/llvm/include/llvm/CodeGen/FunctionLoweringInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/GCStrategy.h stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Localizer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegisterBank.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegisterBankInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Utils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h stable/12/contrib/llvm/include/llvm/CodeGen/LatencyPriorityQueue.h stable/12/contrib/llvm/include/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/LiveInterval.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveIntervalUnion.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveIntervals.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveRangeEdit.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveRegMatrix.h stable/12/contrib/llvm/include/llvm/CodeGen/LiveRegUnits.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MIRParser/MIRParser.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MIRPrinter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MIRYamlMapping.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MachORelocation.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineConstantPool.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineDominanceFrontier.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineDominators.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineFunction.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineInstr.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineLoopInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineMemOperand.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineModuleInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineOperand.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MachineRegisterInfo.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineSSAUpdater.h stable/12/contrib/llvm/include/llvm/CodeGen/MachineScheduler.h stable/12/contrib/llvm/include/llvm/CodeGen/MacroFusion.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/PBQP/Graph.h stable/12/contrib/llvm/include/llvm/CodeGen/PBQP/Math.h stable/12/contrib/llvm/include/llvm/CodeGen/PBQP/ReductionRules.h stable/12/contrib/llvm/include/llvm/CodeGen/PBQP/Solution.h stable/12/contrib/llvm/include/llvm/CodeGen/PBQPRAConstraint.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/ParallelCG.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/Passes.h stable/12/contrib/llvm/include/llvm/CodeGen/RegAllocPBQP.h stable/12/contrib/llvm/include/llvm/CodeGen/RegisterPressure.h stable/12/contrib/llvm/include/llvm/CodeGen/RegisterScavenging.h stable/12/contrib/llvm/include/llvm/CodeGen/RegisterUsageInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/ResourcePriorityQueue.h stable/12/contrib/llvm/include/llvm/CodeGen/RuntimeLibcalls.h stable/12/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h stable/12/contrib/llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h stable/12/contrib/llvm/include/llvm/CodeGen/ScheduleDFS.h stable/12/contrib/llvm/include/llvm/CodeGen/ScoreboardHazardRecognizer.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGISel.h stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h stable/12/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h stable/12/contrib/llvm/include/llvm/CodeGen/StackMaps.h stable/12/contrib/llvm/include/llvm/CodeGen/StackProtector.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetCallingConv.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetFrameLowering.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetInstrInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetLowering.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetOpcodes.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetPassConfig.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetRegisterInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TargetSchedule.h stable/12/contrib/llvm/include/llvm/CodeGen/TargetSubtargetInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/CodeGen/ValueTypes.h stable/12/contrib/llvm/include/llvm/CodeGen/ValueTypes.td stable/12/contrib/llvm/include/llvm/CodeGen/VirtRegMap.h stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CVRecord.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeView.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewRegisters.def stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewTypes.def stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugStringTableSubsection.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecord.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DIContext.h stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDataExtractor.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugPubTable.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFExpression.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFFormValue.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFObject.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFTypeUnit.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/MSF/MSFBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/MSF/MSFCommon.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASession.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASupport.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSession.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStreamBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GlobalsStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/HashTable.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/InfoStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/InfoStreamBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/ModuleDebugStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NamedStreamMap.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeRawSymbol.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSession.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawConstants.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawTypes.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBExtras.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBTypes.h (contents, props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Demangle/Demangle.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/JITSymbol.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/GlobalMappingLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRCompileLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRTransformLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/LambdaResolver.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/NullResolver.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcError.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RemoteObjectLayer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/RTDyldMemoryManager.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h stable/12/contrib/llvm/include/llvm/ExecutionEngine/SectionMemoryManager.h stable/12/contrib/llvm/include/llvm/FuzzMutate/FuzzerCLI.h (contents, props changed) stable/12/contrib/llvm/include/llvm/FuzzMutate/OpDescriptor.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/Attributes.h stable/12/contrib/llvm/include/llvm/IR/Attributes.td stable/12/contrib/llvm/include/llvm/IR/AutoUpgrade.h stable/12/contrib/llvm/include/llvm/IR/BasicBlock.h stable/12/contrib/llvm/include/llvm/IR/CFG.h stable/12/contrib/llvm/include/llvm/IR/CallSite.h stable/12/contrib/llvm/include/llvm/IR/CallingConv.h stable/12/contrib/llvm/include/llvm/IR/Comdat.h stable/12/contrib/llvm/include/llvm/IR/Constant.h stable/12/contrib/llvm/include/llvm/IR/ConstantRange.h stable/12/contrib/llvm/include/llvm/IR/Constants.h stable/12/contrib/llvm/include/llvm/IR/DIBuilder.h stable/12/contrib/llvm/include/llvm/IR/DataLayout.h stable/12/contrib/llvm/include/llvm/IR/DebugInfo.h stable/12/contrib/llvm/include/llvm/IR/DebugInfoFlags.def stable/12/contrib/llvm/include/llvm/IR/DebugInfoMetadata.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/DebugLoc.h stable/12/contrib/llvm/include/llvm/IR/DerivedTypes.h stable/12/contrib/llvm/include/llvm/IR/DiagnosticHandler.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/DiagnosticInfo.h stable/12/contrib/llvm/include/llvm/IR/DiagnosticPrinter.h stable/12/contrib/llvm/include/llvm/IR/Dominators.h stable/12/contrib/llvm/include/llvm/IR/Function.h stable/12/contrib/llvm/include/llvm/IR/GlobalObject.h stable/12/contrib/llvm/include/llvm/IR/GlobalValue.h stable/12/contrib/llvm/include/llvm/IR/GlobalVariable.h stable/12/contrib/llvm/include/llvm/IR/IRBuilder.h stable/12/contrib/llvm/include/llvm/IR/IRPrintingPasses.h stable/12/contrib/llvm/include/llvm/IR/InstVisitor.h stable/12/contrib/llvm/include/llvm/IR/InstrTypes.h stable/12/contrib/llvm/include/llvm/IR/Instruction.h stable/12/contrib/llvm/include/llvm/IR/Instructions.h stable/12/contrib/llvm/include/llvm/IR/IntrinsicInst.h stable/12/contrib/llvm/include/llvm/IR/Intrinsics.h stable/12/contrib/llvm/include/llvm/IR/Intrinsics.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsAArch64.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsAMDGPU.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsARM.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsHexagon.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsNVVM.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsPowerPC.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsWebAssembly.td stable/12/contrib/llvm/include/llvm/IR/IntrinsicsX86.td stable/12/contrib/llvm/include/llvm/IR/LLVMContext.h stable/12/contrib/llvm/include/llvm/IR/LegacyPassManagers.h stable/12/contrib/llvm/include/llvm/IR/MDBuilder.h stable/12/contrib/llvm/include/llvm/IR/Mangler.h stable/12/contrib/llvm/include/llvm/IR/Metadata.def stable/12/contrib/llvm/include/llvm/IR/Metadata.h stable/12/contrib/llvm/include/llvm/IR/Module.h stable/12/contrib/llvm/include/llvm/IR/ModuleSummaryIndex.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/ModuleSummaryIndexYAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/Operator.h stable/12/contrib/llvm/include/llvm/IR/OptBisect.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/PassManager.h stable/12/contrib/llvm/include/llvm/IR/PassManagerInternal.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/PatternMatch.h stable/12/contrib/llvm/include/llvm/IR/ProfileSummary.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/Statepoint.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/TrackingMDRef.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/Type.h stable/12/contrib/llvm/include/llvm/IR/Use.h stable/12/contrib/llvm/include/llvm/IR/UseListOrder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/IR/User.h stable/12/contrib/llvm/include/llvm/IR/Value.h stable/12/contrib/llvm/include/llvm/IR/ValueHandle.h stable/12/contrib/llvm/include/llvm/IR/ValueMap.h stable/12/contrib/llvm/include/llvm/IR/ValueSymbolTable.h stable/12/contrib/llvm/include/llvm/IR/Verifier.h stable/12/contrib/llvm/include/llvm/IRReader/IRReader.h stable/12/contrib/llvm/include/llvm/InitializePasses.h stable/12/contrib/llvm/include/llvm/LTO/Caching.h (contents, props changed) stable/12/contrib/llvm/include/llvm/LTO/Config.h (contents, props changed) stable/12/contrib/llvm/include/llvm/LTO/LTO.h (contents, props changed) stable/12/contrib/llvm/include/llvm/LTO/legacy/ThinLTOCodeGenerator.h (contents, props changed) stable/12/contrib/llvm/include/llvm/LinkAllIR.h stable/12/contrib/llvm/include/llvm/LinkAllPasses.h stable/12/contrib/llvm/include/llvm/Linker/Linker.h stable/12/contrib/llvm/include/llvm/MC/MCAsmBackend.h stable/12/contrib/llvm/include/llvm/MC/MCAsmInfo.h stable/12/contrib/llvm/include/llvm/MC/MCAsmLayout.h stable/12/contrib/llvm/include/llvm/MC/MCAsmMacro.h stable/12/contrib/llvm/include/llvm/MC/MCAssembler.h stable/12/contrib/llvm/include/llvm/MC/MCCodePadder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCCodeView.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCContext.h stable/12/contrib/llvm/include/llvm/MC/MCDisassembler/MCExternalSymbolizer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCDisassembler/MCRelocationInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCDisassembler/MCSymbolizer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCDwarf.h stable/12/contrib/llvm/include/llvm/MC/MCELFObjectWriter.h stable/12/contrib/llvm/include/llvm/MC/MCELFStreamer.h stable/12/contrib/llvm/include/llvm/MC/MCExpr.h stable/12/contrib/llvm/include/llvm/MC/MCFixup.h stable/12/contrib/llvm/include/llvm/MC/MCFixupKindInfo.h stable/12/contrib/llvm/include/llvm/MC/MCFragment.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCInst.h stable/12/contrib/llvm/include/llvm/MC/MCInstBuilder.h stable/12/contrib/llvm/include/llvm/MC/MCInstPrinter.h stable/12/contrib/llvm/include/llvm/MC/MCInstrAnalysis.h stable/12/contrib/llvm/include/llvm/MC/MCInstrDesc.h stable/12/contrib/llvm/include/llvm/MC/MCInstrInfo.h stable/12/contrib/llvm/include/llvm/MC/MCInstrItineraries.h stable/12/contrib/llvm/include/llvm/MC/MCLabel.h stable/12/contrib/llvm/include/llvm/MC/MCMachObjectWriter.h stable/12/contrib/llvm/include/llvm/MC/MCObjectFileInfo.h stable/12/contrib/llvm/include/llvm/MC/MCObjectStreamer.h stable/12/contrib/llvm/include/llvm/MC/MCObjectWriter.h stable/12/contrib/llvm/include/llvm/MC/MCParser/AsmCond.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCAsmLexer.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCAsmParser.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h stable/12/contrib/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCRegisterInfo.h stable/12/contrib/llvm/include/llvm/MC/MCSchedule.h stable/12/contrib/llvm/include/llvm/MC/MCSection.h stable/12/contrib/llvm/include/llvm/MC/MCSectionWasm.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCStreamer.h stable/12/contrib/llvm/include/llvm/MC/MCSubtargetInfo.h stable/12/contrib/llvm/include/llvm/MC/MCSymbol.h stable/12/contrib/llvm/include/llvm/MC/MCSymbolMachO.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCSymbolWasm.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCTargetOptions.h stable/12/contrib/llvm/include/llvm/MC/MCValue.h stable/12/contrib/llvm/include/llvm/MC/MCWasmObjectWriter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCWasmStreamer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/MC/MCWinCOFFObjectWriter.h stable/12/contrib/llvm/include/llvm/MC/MCWinCOFFStreamer.h stable/12/contrib/llvm/include/llvm/MC/StringTableBuilder.h stable/12/contrib/llvm/include/llvm/Object/Archive.h stable/12/contrib/llvm/include/llvm/Object/Binary.h stable/12/contrib/llvm/include/llvm/Object/COFF.h stable/12/contrib/llvm/include/llvm/Object/COFFImportFile.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Object/Decompressor.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Object/ELF.h stable/12/contrib/llvm/include/llvm/Object/ELFObjectFile.h stable/12/contrib/llvm/include/llvm/Object/ELFTypes.h stable/12/contrib/llvm/include/llvm/Object/IRObjectFile.h stable/12/contrib/llvm/include/llvm/Object/MachO.h stable/12/contrib/llvm/include/llvm/Object/MachOUniversal.h stable/12/contrib/llvm/include/llvm/Object/ModuleSymbolTable.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Object/ObjectFile.h stable/12/contrib/llvm/include/llvm/Object/RelocVisitor.h stable/12/contrib/llvm/include/llvm/Object/Wasm.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/COFFYAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLTypeHashing.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLTypes.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/DWARFEmitter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/DWARFYAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/ELFYAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/MachOYAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/WasmYAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/YAML.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Option/Arg.h stable/12/contrib/llvm/include/llvm/Option/ArgList.h stable/12/contrib/llvm/include/llvm/Option/OptTable.h stable/12/contrib/llvm/include/llvm/Option/Option.h stable/12/contrib/llvm/include/llvm/Pass.h stable/12/contrib/llvm/include/llvm/PassAnalysisSupport.h stable/12/contrib/llvm/include/llvm/PassRegistry.h stable/12/contrib/llvm/include/llvm/Passes/PassBuilder.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMappingWriter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/GCOV.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/InstrProf.h stable/12/contrib/llvm/include/llvm/ProfileData/InstrProfData.inc (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/InstrProfReader.h stable/12/contrib/llvm/include/llvm/ProfileData/ProfileCommon.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/SampleProf.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/SampleProfReader.h (contents, props changed) stable/12/contrib/llvm/include/llvm/ProfileData/SampleProfWriter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/AArch64TargetParser.def stable/12/contrib/llvm/include/llvm/Support/AMDGPUMetadata.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/ARMTargetParser.def stable/12/contrib/llvm/include/llvm/Support/AlignOf.h stable/12/contrib/llvm/include/llvm/Support/Allocator.h stable/12/contrib/llvm/include/llvm/Support/AtomicOrdering.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryByteStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryStream.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryStreamArray.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryStreamReader.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryStreamRef.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryStreamWriter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/BlockFrequency.h stable/12/contrib/llvm/include/llvm/Support/BranchProbability.h stable/12/contrib/llvm/include/llvm/Support/CachePruning.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Casting.h stable/12/contrib/llvm/include/llvm/Support/CodeGenCoverage.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/CommandLine.h stable/12/contrib/llvm/include/llvm/Support/Compiler.h stable/12/contrib/llvm/include/llvm/Support/ConvertUTF.h stable/12/contrib/llvm/include/llvm/Support/CrashRecoveryContext.h stable/12/contrib/llvm/include/llvm/Support/DataExtractor.h stable/12/contrib/llvm/include/llvm/Support/Debug.h stable/12/contrib/llvm/include/llvm/Support/DebugCounter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/DynamicLibrary.h stable/12/contrib/llvm/include/llvm/Support/Endian.h stable/12/contrib/llvm/include/llvm/Support/EndianStream.h stable/12/contrib/llvm/include/llvm/Support/Errc.h stable/12/contrib/llvm/include/llvm/Support/Errno.h stable/12/contrib/llvm/include/llvm/Support/Error.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/ErrorHandling.h stable/12/contrib/llvm/include/llvm/Support/ErrorOr.h stable/12/contrib/llvm/include/llvm/Support/FileOutputBuffer.h stable/12/contrib/llvm/include/llvm/Support/FileSystem.h stable/12/contrib/llvm/include/llvm/Support/FormatAdapters.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/FormatVariadic.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/FormatVariadicDetails.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/GenericDomTree.h stable/12/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h stable/12/contrib/llvm/include/llvm/Support/GraphWriter.h stable/12/contrib/llvm/include/llvm/Support/Host.h stable/12/contrib/llvm/include/llvm/Support/JamCRC.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/KnownBits.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/LEB128.h stable/12/contrib/llvm/include/llvm/Support/LineIterator.h stable/12/contrib/llvm/include/llvm/Support/LockFileManager.h stable/12/contrib/llvm/include/llvm/Support/LowLevelTypeImpl.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/MD5.h stable/12/contrib/llvm/include/llvm/Support/MathExtras.h stable/12/contrib/llvm/include/llvm/Support/Memory.h stable/12/contrib/llvm/include/llvm/Support/MemoryBuffer.h stable/12/contrib/llvm/include/llvm/Support/MipsABIFlags.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Mutex.h stable/12/contrib/llvm/include/llvm/Support/MutexGuard.h stable/12/contrib/llvm/include/llvm/Support/OnDiskHashTable.h stable/12/contrib/llvm/include/llvm/Support/Options.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Parallel.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Path.h stable/12/contrib/llvm/include/llvm/Support/PointerLikeTypeTraits.h stable/12/contrib/llvm/include/llvm/Support/Process.h stable/12/contrib/llvm/include/llvm/Support/Program.h stable/12/contrib/llvm/include/llvm/Support/RWMutex.h stable/12/contrib/llvm/include/llvm/Support/Regex.h stable/12/contrib/llvm/include/llvm/Support/SMLoc.h stable/12/contrib/llvm/include/llvm/Support/SaveAndRestore.h stable/12/contrib/llvm/include/llvm/Support/ScaledNumber.h stable/12/contrib/llvm/include/llvm/Support/ScopedPrinter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Signals.h stable/12/contrib/llvm/include/llvm/Support/SourceMgr.h stable/12/contrib/llvm/include/llvm/Support/StringSaver.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/SystemUtils.h stable/12/contrib/llvm/include/llvm/Support/TargetParser.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/TargetRegistry.h stable/12/contrib/llvm/include/llvm/Support/ThreadLocal.h stable/12/contrib/llvm/include/llvm/Support/ThreadPool.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Threading.h stable/12/contrib/llvm/include/llvm/Support/Timer.h stable/12/contrib/llvm/include/llvm/Support/ToolOutputFile.h stable/12/contrib/llvm/include/llvm/Support/TrailingObjects.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Unicode.h stable/12/contrib/llvm/include/llvm/Support/UnicodeCharRanges.h stable/12/contrib/llvm/include/llvm/Support/UniqueLock.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Support/Win64EH.h stable/12/contrib/llvm/include/llvm/Support/X86TargetParser.def stable/12/contrib/llvm/include/llvm/Support/YAMLParser.h stable/12/contrib/llvm/include/llvm/Support/YAMLTraits.h stable/12/contrib/llvm/include/llvm/Support/raw_ostream.h stable/12/contrib/llvm/include/llvm/Support/type_traits.h stable/12/contrib/llvm/include/llvm/Support/xxhash.h (contents, props changed) stable/12/contrib/llvm/include/llvm/TableGen/Record.h stable/12/contrib/llvm/include/llvm/TableGen/SearchableTable.td stable/12/contrib/llvm/include/llvm/Target/GenericOpcodes.td stable/12/contrib/llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td stable/12/contrib/llvm/include/llvm/Target/GlobalISel/Target.td stable/12/contrib/llvm/include/llvm/Target/Target.td stable/12/contrib/llvm/include/llvm/Target/TargetCallingConv.td stable/12/contrib/llvm/include/llvm/Target/TargetItinerary.td stable/12/contrib/llvm/include/llvm/Target/TargetMachine.h stable/12/contrib/llvm/include/llvm/Target/TargetOptions.h stable/12/contrib/llvm/include/llvm/Target/TargetSchedule.td stable/12/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td stable/12/contrib/llvm/include/llvm/Testing/Support/Error.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Testing/Support/SupportHelpers.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO.h stable/12/contrib/llvm/include/llvm/Transforms/IPO/AlwaysInliner.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/ArgumentPromotion.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/FunctionImport.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/Inliner.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/LowerTypeTests.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/InstCombine/InstCombine.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/InstCombine/InstCombineWorklist.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar.h stable/12/contrib/llvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/CallSiteSplitting.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/EarlyCSE.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/GVN.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/GVNExpression.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/JumpThreading.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopDataPrefetch.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LowerExpectIntrinsic.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/NewGVN.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/Reassociate.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SCCP.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SROA.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SimplifyCFG.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SpeculateAroundPHIs.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/SpeculativeExecution.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/BuildLibCalls.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/CodeExtractor.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/Evaluator.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/FunctionComparator.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/ImportedFunctionsInliningStatistics.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/IntegerDivision.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/Local.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/LoopSimplify.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/LoopVersioning.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/ModuleUtils.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/OrderedInstructions.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/PredicateInfo.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdater.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h stable/12/contrib/llvm/include/llvm/Transforms/Utils/SymbolRewriter.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/UnrollLoop.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize.h stable/12/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h (contents, props changed) stable/12/contrib/llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h (contents, props changed) stable/12/contrib/llvm/include/llvm/XRay/XRayRecord.h (contents, props changed) stable/12/contrib/llvm/include/llvm/XRay/YAMLXRayRecord.h (contents, props changed) stable/12/contrib/llvm/include/llvm/module.modulemap stable/12/contrib/llvm/lib/Analysis/AliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp stable/12/contrib/llvm/lib/Analysis/AliasAnalysisSummary.h (contents, props changed) stable/12/contrib/llvm/lib/Analysis/AliasSetTracker.cpp stable/12/contrib/llvm/lib/Analysis/Analysis.cpp stable/12/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp stable/12/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp stable/12/contrib/llvm/lib/Analysis/CFGPrinter.cpp stable/12/contrib/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/CFLGraph.h (contents, props changed) stable/12/contrib/llvm/lib/Analysis/CFLSteensAliasAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp stable/12/contrib/llvm/lib/Analysis/CallGraph.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/CallGraphSCCPass.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/CaptureTracking.cpp stable/12/contrib/llvm/lib/Analysis/CodeMetrics.cpp stable/12/contrib/llvm/lib/Analysis/ConstantFolding.cpp stable/12/contrib/llvm/lib/Analysis/Delinearization.cpp stable/12/contrib/llvm/lib/Analysis/DemandedBits.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/DivergenceAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/DominanceFrontier.cpp stable/12/contrib/llvm/lib/Analysis/EHPersonalities.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/GlobalsModRef.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/IVUsers.cpp stable/12/contrib/llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/InlineCost.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/InstructionSimplify.cpp stable/12/contrib/llvm/lib/Analysis/IteratedDominanceFrontier.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/LazyBlockFrequencyInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/LazyBranchProbabilityInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/LazyCallGraph.cpp stable/12/contrib/llvm/lib/Analysis/LazyValueInfo.cpp stable/12/contrib/llvm/lib/Analysis/Lint.cpp stable/12/contrib/llvm/lib/Analysis/Loads.cpp stable/12/contrib/llvm/lib/Analysis/LoopAccessAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/LoopAnalysisManager.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/LoopInfo.cpp stable/12/contrib/llvm/lib/Analysis/LoopPass.cpp stable/12/contrib/llvm/lib/Analysis/LoopUnrollAnalyzer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/MemDepPrinter.cpp stable/12/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp stable/12/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/MemoryLocation.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/MemorySSA.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/MemorySSAUpdater.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/ObjCARCAnalysisUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/ObjCARCInstKind.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/OrderedBasicBlock.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/PHITransAddr.cpp stable/12/contrib/llvm/lib/Analysis/PostDominators.cpp stable/12/contrib/llvm/lib/Analysis/ProfileSummaryInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/RegionInfo.cpp stable/12/contrib/llvm/lib/Analysis/RegionPass.cpp stable/12/contrib/llvm/lib/Analysis/ScalarEvolution.cpp stable/12/contrib/llvm/lib/Analysis/ScalarEvolutionExpander.cpp stable/12/contrib/llvm/lib/Analysis/StratifiedSets.h (contents, props changed) stable/12/contrib/llvm/lib/Analysis/TargetLibraryInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Analysis/TargetTransformInfo.cpp stable/12/contrib/llvm/lib/Analysis/Trace.cpp stable/12/contrib/llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp stable/12/contrib/llvm/lib/Analysis/ValueTracking.cpp stable/12/contrib/llvm/lib/Analysis/VectorUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/AsmParser/LLLexer.cpp stable/12/contrib/llvm/lib/AsmParser/LLLexer.h stable/12/contrib/llvm/lib/AsmParser/LLParser.cpp stable/12/contrib/llvm/lib/AsmParser/LLParser.h stable/12/contrib/llvm/lib/AsmParser/LLToken.h stable/12/contrib/llvm/lib/AsmParser/Parser.cpp stable/12/contrib/llvm/lib/BinaryFormat/Dwarf.cpp (contents, props changed) stable/12/contrib/llvm/lib/BinaryFormat/Magic.cpp (contents, props changed) stable/12/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp stable/12/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.cpp (contents, props changed) stable/12/contrib/llvm/lib/Bitcode/Reader/ValueList.cpp (contents, props changed) stable/12/contrib/llvm/lib/Bitcode/Writer/BitWriter.cpp stable/12/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp stable/12/contrib/llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp stable/12/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp stable/12/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp stable/12/contrib/llvm/lib/CodeGen/AllocationOrder.cpp stable/12/contrib/llvm/lib/CodeGen/Analysis.cpp stable/12/contrib/llvm/lib/CodeGen/AntiDepBreaker.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/ARMException.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/ByteStreamer.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DIEHash.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocStream.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/AtomicExpandPass.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/BranchFolding.cpp stable/12/contrib/llvm/lib/CodeGen/BranchFolding.h stable/12/contrib/llvm/lib/CodeGen/BranchRelaxation.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/BuiltinGCs.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/CalcSpillWeights.cpp stable/12/contrib/llvm/lib/CodeGen/CodeGen.cpp stable/12/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp stable/12/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp stable/12/contrib/llvm/lib/CodeGen/DFAPacketizer.cpp stable/12/contrib/llvm/lib/CodeGen/DeadMachineInstructionElim.cpp stable/12/contrib/llvm/lib/CodeGen/DetectDeadLanes.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/DwarfEHPrepare.cpp stable/12/contrib/llvm/lib/CodeGen/EarlyIfConversion.cpp stable/12/contrib/llvm/lib/CodeGen/ExpandMemCmp.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp stable/12/contrib/llvm/lib/CodeGen/ExpandReductions.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/FaultMaps.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/FuncletLayout.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GCMetadata.cpp stable/12/contrib/llvm/lib/CodeGen/GCRootLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/CallLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Localizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/RegisterBank.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/Utils.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalMerge.cpp stable/12/contrib/llvm/lib/CodeGen/IfConversion.cpp stable/12/contrib/llvm/lib/CodeGen/ImplicitNullChecks.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/InlineSpiller.cpp stable/12/contrib/llvm/lib/CodeGen/InterferenceCache.cpp stable/12/contrib/llvm/lib/CodeGen/InterleavedAccessPass.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/IntrinsicLowering.cpp stable/12/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp stable/12/contrib/llvm/lib/CodeGen/LatencyPriorityQueue.cpp stable/12/contrib/llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/LexicalScopes.cpp stable/12/contrib/llvm/lib/CodeGen/LiveDebugValues.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/LiveDebugVariables.cpp stable/12/contrib/llvm/lib/CodeGen/LiveInterval.cpp stable/12/contrib/llvm/lib/CodeGen/LiveIntervalUnion.cpp stable/12/contrib/llvm/lib/CodeGen/LiveIntervals.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp stable/12/contrib/llvm/lib/CodeGen/LiveRangeCalc.cpp stable/12/contrib/llvm/lib/CodeGen/LiveRangeCalc.h stable/12/contrib/llvm/lib/CodeGen/LiveRangeEdit.cpp stable/12/contrib/llvm/lib/CodeGen/LiveRangeShrink.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/LiveRegMatrix.cpp stable/12/contrib/llvm/lib/CodeGen/LiveRegUnits.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/LiveVariables.cpp stable/12/contrib/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp stable/12/contrib/llvm/lib/CodeGen/LowerEmuTLS.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRCanonicalizerPass.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRParser/MILexer.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRParser/MILexer.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRParser/MIParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRParser/MIParser.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRParser/MIRParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MIRPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp stable/12/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp stable/12/contrib/llvm/lib/CodeGen/MachineCSE.cpp stable/12/contrib/llvm/lib/CodeGen/MachineCombiner.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachineCopyPropagation.cpp stable/12/contrib/llvm/lib/CodeGen/MachineDominators.cpp stable/12/contrib/llvm/lib/CodeGen/MachineFrameInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachineFunction.cpp stable/12/contrib/llvm/lib/CodeGen/MachineFunctionPass.cpp stable/12/contrib/llvm/lib/CodeGen/MachineInstr.cpp stable/12/contrib/llvm/lib/CodeGen/MachineLICM.cpp stable/12/contrib/llvm/lib/CodeGen/MachineLoopInfo.cpp stable/12/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp stable/12/contrib/llvm/lib/CodeGen/MachineOperand.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachineOptimizationRemarkEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachineOutliner.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachinePipeliner.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/MachineRegionInfo.cpp stable/12/contrib/llvm/lib/CodeGen/MachineRegisterInfo.cpp stable/12/contrib/llvm/lib/CodeGen/MachineSSAUpdater.cpp stable/12/contrib/llvm/lib/CodeGen/MachineScheduler.cpp stable/12/contrib/llvm/lib/CodeGen/MachineSink.cpp stable/12/contrib/llvm/lib/CodeGen/MachineTraceMetrics.cpp stable/12/contrib/llvm/lib/CodeGen/MachineVerifier.cpp stable/12/contrib/llvm/lib/CodeGen/MacroFusion.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/OptimizePHIs.cpp stable/12/contrib/llvm/lib/CodeGen/PHIElimination.cpp stable/12/contrib/llvm/lib/CodeGen/ParallelCG.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/PatchableFunction.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/PeepholeOptimizer.cpp stable/12/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp stable/12/contrib/llvm/lib/CodeGen/ProcessImplicitDefs.cpp stable/12/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocBase.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocBasic.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocFast.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp stable/12/contrib/llvm/lib/CodeGen/RegAllocPBQP.cpp stable/12/contrib/llvm/lib/CodeGen/RegUsageInfoCollector.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/RegUsageInfoPropagate.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/RegisterClassInfo.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterPressure.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterScavenging.cpp stable/12/contrib/llvm/lib/CodeGen/RegisterUsageInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/RenameIndependentSubregs.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/ResetMachineFunctionPass.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SafeStack.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SafeStackColoring.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SafeStackLayout.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SafeStackLayout.h (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp stable/12/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp stable/12/contrib/llvm/lib/CodeGen/ScheduleDAGPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp stable/12/contrib/llvm/lib/CodeGen/ShadowStackGCLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/ShrinkWrap.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/SjLjEHPrepare.cpp stable/12/contrib/llvm/lib/CodeGen/SlotIndexes.cpp stable/12/contrib/llvm/lib/CodeGen/SpillPlacement.cpp stable/12/contrib/llvm/lib/CodeGen/SplitKit.cpp stable/12/contrib/llvm/lib/CodeGen/SplitKit.h stable/12/contrib/llvm/lib/CodeGen/StackColoring.cpp stable/12/contrib/llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp stable/12/contrib/llvm/lib/CodeGen/StackMaps.cpp stable/12/contrib/llvm/lib/CodeGen/StackProtector.cpp stable/12/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp stable/12/contrib/llvm/lib/CodeGen/TailDuplication.cpp stable/12/contrib/llvm/lib/CodeGen/TailDuplicator.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp stable/12/contrib/llvm/lib/CodeGen/TargetInstrInfo.cpp stable/12/contrib/llvm/lib/CodeGen/TargetLoweringBase.cpp stable/12/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp stable/12/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/TargetRegisterInfo.cpp stable/12/contrib/llvm/lib/CodeGen/TargetSchedule.cpp stable/12/contrib/llvm/lib/CodeGen/TargetSubtargetInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp stable/12/contrib/llvm/lib/CodeGen/VirtRegMap.cpp stable/12/contrib/llvm/lib/CodeGen/WinEHPrepare.cpp (contents, props changed) stable/12/contrib/llvm/lib/CodeGen/XRayInstrumentation.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugChecksumsSubsection.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugCrossImpSubsection.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugStringTableSubsection.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/RecordName.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeHashing.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFCompileUnit.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDataExtractor.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugMacro.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugPubTable.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRangeList.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFFormValue.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFTypeUnit.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/MSF/MSFBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/MSF/MSFCommon.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/GenericError.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptor.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStream.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/HashTable.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/InfoStream.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/InfoStreamBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NamedStreamMap.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PDBStringTable.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PDBStringTableBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBExtras.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolData.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp (contents, props changed) stable/12/contrib/llvm/lib/DebugInfo/Symbolize/Symbolize.cpp (contents, props changed) stable/12/contrib/llvm/lib/Demangle/ItaniumDemangle.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/ExecutionEngine.cpp stable/12/contrib/llvm/lib/ExecutionEngine/ExecutionEngineBindings.cpp stable/12/contrib/llvm/lib/ExecutionEngine/GDBRegistrationListener.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp stable/12/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h stable/12/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c stable/12/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h stable/12/contrib/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.h stable/12/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp stable/12/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h stable/12/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp stable/12/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileWrapper.cpp stable/12/contrib/llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/NullResolver.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindings.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcError.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.h (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFI386.h (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldELFMips.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldELFMips.h (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOAArch64.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOI386.h stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOX86_64.h stable/12/contrib/llvm/lib/ExecutionEngine/SectionMemoryManager.cpp (contents, props changed) stable/12/contrib/llvm/lib/ExecutionEngine/TargetSelect.cpp stable/12/contrib/llvm/lib/FuzzMutate/FuzzerCLI.cpp (contents, props changed) stable/12/contrib/llvm/lib/FuzzMutate/IRMutator.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/AsmWriter.cpp stable/12/contrib/llvm/lib/IR/AttributeImpl.h stable/12/contrib/llvm/lib/IR/Attributes.cpp stable/12/contrib/llvm/lib/IR/AutoUpgrade.cpp stable/12/contrib/llvm/lib/IR/BasicBlock.cpp stable/12/contrib/llvm/lib/IR/Comdat.cpp stable/12/contrib/llvm/lib/IR/ConstantFold.cpp stable/12/contrib/llvm/lib/IR/ConstantRange.cpp stable/12/contrib/llvm/lib/IR/Constants.cpp stable/12/contrib/llvm/lib/IR/ConstantsContext.h stable/12/contrib/llvm/lib/IR/Core.cpp stable/12/contrib/llvm/lib/IR/DIBuilder.cpp stable/12/contrib/llvm/lib/IR/DataLayout.cpp stable/12/contrib/llvm/lib/IR/DebugInfo.cpp stable/12/contrib/llvm/lib/IR/DebugInfoMetadata.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/DebugLoc.cpp stable/12/contrib/llvm/lib/IR/DiagnosticHandler.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/DiagnosticInfo.cpp stable/12/contrib/llvm/lib/IR/Dominators.cpp stable/12/contrib/llvm/lib/IR/Function.cpp stable/12/contrib/llvm/lib/IR/Globals.cpp stable/12/contrib/llvm/lib/IR/IRBuilder.cpp stable/12/contrib/llvm/lib/IR/IRPrintingPasses.cpp stable/12/contrib/llvm/lib/IR/InlineAsm.cpp stable/12/contrib/llvm/lib/IR/Instruction.cpp stable/12/contrib/llvm/lib/IR/Instructions.cpp stable/12/contrib/llvm/lib/IR/IntrinsicInst.cpp stable/12/contrib/llvm/lib/IR/LLVMContext.cpp stable/12/contrib/llvm/lib/IR/LLVMContextImpl.cpp stable/12/contrib/llvm/lib/IR/LLVMContextImpl.h stable/12/contrib/llvm/lib/IR/LegacyPassManager.cpp stable/12/contrib/llvm/lib/IR/MDBuilder.cpp stable/12/contrib/llvm/lib/IR/Mangler.cpp stable/12/contrib/llvm/lib/IR/Metadata.cpp stable/12/contrib/llvm/lib/IR/Module.cpp stable/12/contrib/llvm/lib/IR/ModuleSummaryIndex.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/Operator.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/OptBisect.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/Pass.cpp stable/12/contrib/llvm/lib/IR/ProfileSummary.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/SafepointIRVerifier.cpp (contents, props changed) stable/12/contrib/llvm/lib/IR/SymbolTableListTraitsImpl.h stable/12/contrib/llvm/lib/IR/Type.cpp stable/12/contrib/llvm/lib/IR/TypeFinder.cpp stable/12/contrib/llvm/lib/IR/Value.cpp stable/12/contrib/llvm/lib/IR/ValueSymbolTable.cpp stable/12/contrib/llvm/lib/IR/Verifier.cpp stable/12/contrib/llvm/lib/IRReader/IRReader.cpp stable/12/contrib/llvm/lib/LTO/Caching.cpp (contents, props changed) stable/12/contrib/llvm/lib/LTO/LTO.cpp (contents, props changed) stable/12/contrib/llvm/lib/LTO/LTOBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp stable/12/contrib/llvm/lib/LTO/LTOModule.cpp stable/12/contrib/llvm/lib/LTO/ThinLTOCodeGenerator.cpp (contents, props changed) stable/12/contrib/llvm/lib/Linker/IRMover.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp stable/12/contrib/llvm/lib/MC/MCAsmBackend.cpp stable/12/contrib/llvm/lib/MC/MCAsmInfo.cpp stable/12/contrib/llvm/lib/MC/MCAsmInfoCOFF.cpp stable/12/contrib/llvm/lib/MC/MCAsmStreamer.cpp stable/12/contrib/llvm/lib/MC/MCAssembler.cpp stable/12/contrib/llvm/lib/MC/MCCodeView.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/MCContext.cpp stable/12/contrib/llvm/lib/MC/MCDisassembler/Disassembler.cpp stable/12/contrib/llvm/lib/MC/MCDisassembler/Disassembler.h stable/12/contrib/llvm/lib/MC/MCDwarf.cpp stable/12/contrib/llvm/lib/MC/MCELFStreamer.cpp stable/12/contrib/llvm/lib/MC/MCExpr.cpp stable/12/contrib/llvm/lib/MC/MCFragment.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/MCInst.cpp stable/12/contrib/llvm/lib/MC/MCInstrAnalysis.cpp stable/12/contrib/llvm/lib/MC/MCLabel.cpp stable/12/contrib/llvm/lib/MC/MCLinkerOptimizationHint.cpp stable/12/contrib/llvm/lib/MC/MCMachOStreamer.cpp stable/12/contrib/llvm/lib/MC/MCNullStreamer.cpp stable/12/contrib/llvm/lib/MC/MCObjectFileInfo.cpp stable/12/contrib/llvm/lib/MC/MCObjectStreamer.cpp stable/12/contrib/llvm/lib/MC/MCParser/AsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/COFFAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/DarwinAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/ELFAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCParser/MCAsmLexer.cpp stable/12/contrib/llvm/lib/MC/MCParser/MCAsmParser.cpp stable/12/contrib/llvm/lib/MC/MCSchedule.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/MCSection.cpp stable/12/contrib/llvm/lib/MC/MCSectionCOFF.cpp stable/12/contrib/llvm/lib/MC/MCSectionELF.cpp stable/12/contrib/llvm/lib/MC/MCStreamer.cpp stable/12/contrib/llvm/lib/MC/MCSubtargetInfo.cpp stable/12/contrib/llvm/lib/MC/MCSymbol.cpp stable/12/contrib/llvm/lib/MC/MCValue.cpp stable/12/contrib/llvm/lib/MC/MCWasmObjectTargetWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/MCWasmStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/MCWinCOFFStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/MachObjectWriter.cpp stable/12/contrib/llvm/lib/MC/StringTableBuilder.cpp stable/12/contrib/llvm/lib/MC/SubtargetFeature.cpp stable/12/contrib/llvm/lib/MC/WasmObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/MC/WinCOFFObjectWriter.cpp stable/12/contrib/llvm/lib/Object/Archive.cpp stable/12/contrib/llvm/lib/Object/ArchiveWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/Binary.cpp stable/12/contrib/llvm/lib/Object/COFFImportFile.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/COFFModuleDefinition.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/COFFObjectFile.cpp stable/12/contrib/llvm/lib/Object/ELF.cpp stable/12/contrib/llvm/lib/Object/ELFObjectFile.cpp stable/12/contrib/llvm/lib/Object/IRSymtab.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/MachOObjectFile.cpp stable/12/contrib/llvm/lib/Object/ModuleSymbolTable.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/Object.cpp stable/12/contrib/llvm/lib/Object/ObjectFile.cpp stable/12/contrib/llvm/lib/Object/RecordStreamer.cpp stable/12/contrib/llvm/lib/Object/RecordStreamer.h stable/12/contrib/llvm/lib/Object/SymbolSize.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/SymbolicFile.cpp stable/12/contrib/llvm/lib/Object/WasmObjectFile.cpp (contents, props changed) stable/12/contrib/llvm/lib/Object/WindowsResource.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/COFFYAML.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/CodeViewYAMLTypeHashing.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/CodeViewYAMLTypes.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/DWARFEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/DWARFVisitor.h (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/ELFYAML.cpp (contents, props changed) stable/12/contrib/llvm/lib/ObjectYAML/WasmYAML.cpp (contents, props changed) stable/12/contrib/llvm/lib/Option/Arg.cpp stable/12/contrib/llvm/lib/Option/ArgList.cpp stable/12/contrib/llvm/lib/Option/OptTable.cpp stable/12/contrib/llvm/lib/Option/Option.cpp stable/12/contrib/llvm/lib/Passes/PassBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/Passes/PassRegistry.def stable/12/contrib/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/GCOV.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/InstrProf.cpp stable/12/contrib/llvm/lib/ProfileData/InstrProfReader.cpp stable/12/contrib/llvm/lib/ProfileData/InstrProfWriter.cpp stable/12/contrib/llvm/lib/ProfileData/ProfileSummaryBuilder.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/SampleProf.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/SampleProfReader.cpp (contents, props changed) stable/12/contrib/llvm/lib/ProfileData/SampleProfWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/AMDGPUMetadata.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/APFloat.cpp stable/12/contrib/llvm/lib/Support/APInt.cpp stable/12/contrib/llvm/lib/Support/ARMAttributeParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/BinaryStreamRef.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/BranchProbability.cpp stable/12/contrib/llvm/lib/Support/COM.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/CachePruning.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/Chrono.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/CodeGenCoverage.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/CommandLine.cpp stable/12/contrib/llvm/lib/Support/ConvertUTF.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/CrashRecoveryContext.cpp stable/12/contrib/llvm/lib/Support/DAGDeltaAlgorithm.cpp stable/12/contrib/llvm/lib/Support/Debug.cpp stable/12/contrib/llvm/lib/Support/DebugCounter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/DynamicLibrary.cpp stable/12/contrib/llvm/lib/Support/Errno.cpp stable/12/contrib/llvm/lib/Support/Error.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/ErrorHandling.cpp stable/12/contrib/llvm/lib/Support/FileOutputBuffer.cpp stable/12/contrib/llvm/lib/Support/FoldingSet.cpp stable/12/contrib/llvm/lib/Support/FormattedStream.cpp stable/12/contrib/llvm/lib/Support/GraphWriter.cpp stable/12/contrib/llvm/lib/Support/Host.cpp stable/12/contrib/llvm/lib/Support/Locale.cpp stable/12/contrib/llvm/lib/Support/LockFileManager.cpp stable/12/contrib/llvm/lib/Support/MD5.cpp stable/12/contrib/llvm/lib/Support/ManagedStatic.cpp stable/12/contrib/llvm/lib/Support/Memory.cpp stable/12/contrib/llvm/lib/Support/MemoryBuffer.cpp stable/12/contrib/llvm/lib/Support/Mutex.cpp stable/12/contrib/llvm/lib/Support/NativeFormatting.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/Parallel.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/Path.cpp stable/12/contrib/llvm/lib/Support/PrettyStackTrace.cpp stable/12/contrib/llvm/lib/Support/Process.cpp stable/12/contrib/llvm/lib/Support/Program.cpp stable/12/contrib/llvm/lib/Support/RWMutex.cpp stable/12/contrib/llvm/lib/Support/RandomNumberGenerator.cpp stable/12/contrib/llvm/lib/Support/Regex.cpp stable/12/contrib/llvm/lib/Support/SHA1.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/Signals.cpp stable/12/contrib/llvm/lib/Support/SmallPtrSet.cpp stable/12/contrib/llvm/lib/Support/SmallVector.cpp stable/12/contrib/llvm/lib/Support/SourceMgr.cpp stable/12/contrib/llvm/lib/Support/Statistic.cpp stable/12/contrib/llvm/lib/Support/StringExtras.cpp stable/12/contrib/llvm/lib/Support/StringMap.cpp stable/12/contrib/llvm/lib/Support/StringPool.cpp stable/12/contrib/llvm/lib/Support/StringRef.cpp stable/12/contrib/llvm/lib/Support/StringSaver.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/TarWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/TargetParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Support/TargetRegistry.cpp stable/12/contrib/llvm/lib/Support/ThreadLocal.cpp stable/12/contrib/llvm/lib/Support/Threading.cpp stable/12/contrib/llvm/lib/Support/Timer.cpp stable/12/contrib/llvm/lib/Support/Triple.cpp stable/12/contrib/llvm/lib/Support/Twine.cpp stable/12/contrib/llvm/lib/Support/Unix/Host.inc stable/12/contrib/llvm/lib/Support/Unix/Memory.inc stable/12/contrib/llvm/lib/Support/Unix/Path.inc stable/12/contrib/llvm/lib/Support/Unix/Process.inc stable/12/contrib/llvm/lib/Support/Unix/Program.inc stable/12/contrib/llvm/lib/Support/Unix/Signals.inc stable/12/contrib/llvm/lib/Support/Unix/ThreadLocal.inc stable/12/contrib/llvm/lib/Support/Unix/Threading.inc (contents, props changed) stable/12/contrib/llvm/lib/Support/Unix/Unix.h stable/12/contrib/llvm/lib/Support/Unix/Watchdog.inc stable/12/contrib/llvm/lib/Support/Watchdog.cpp stable/12/contrib/llvm/lib/Support/Windows/DynamicLibrary.inc stable/12/contrib/llvm/lib/Support/Windows/Host.inc stable/12/contrib/llvm/lib/Support/Windows/Path.inc stable/12/contrib/llvm/lib/Support/Windows/Process.inc stable/12/contrib/llvm/lib/Support/Windows/Program.inc stable/12/contrib/llvm/lib/Support/Windows/RWMutex.inc stable/12/contrib/llvm/lib/Support/Windows/Signals.inc stable/12/contrib/llvm/lib/Support/Windows/WindowsSupport.h stable/12/contrib/llvm/lib/Support/YAMLParser.cpp stable/12/contrib/llvm/lib/Support/YAMLTraits.cpp stable/12/contrib/llvm/lib/Support/circular_raw_ostream.cpp stable/12/contrib/llvm/lib/Support/raw_ostream.cpp stable/12/contrib/llvm/lib/Support/regcomp.c stable/12/contrib/llvm/lib/Support/regengine.inc stable/12/contrib/llvm/lib/Support/regex_impl.h stable/12/contrib/llvm/lib/Support/xxhash.cpp (contents, props changed) stable/12/contrib/llvm/lib/TableGen/Error.cpp stable/12/contrib/llvm/lib/TableGen/Main.cpp stable/12/contrib/llvm/lib/TableGen/Record.cpp stable/12/contrib/llvm/lib/TableGen/StringMatcher.cpp stable/12/contrib/llvm/lib/TableGen/TGLexer.cpp stable/12/contrib/llvm/lib/TableGen/TGLexer.h stable/12/contrib/llvm/lib/TableGen/TGParser.cpp stable/12/contrib/llvm/lib/TableGen/TGParser.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64FalkorHWPFFix.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrAtomics.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrFormats.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64MacroFusion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64PBQPRegAlloc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedA53.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedFalkor.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedFalkorDetails.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedKryo.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedThunderX.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64SchedThunderX2T99.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64SystemOperands.td stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.h stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp stable/12/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp stable/12/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp stable/12/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp stable/12/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AArch64/SVEInstrFormats.td stable/12/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp stable/12/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPU.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUFrameLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInline.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsics.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULibFunc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerIntrinsics.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMacroFusion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBanks.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDKernelCodeT.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/BUFInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/DSInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/EvergreenInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/FLATInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNILPSched.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNMinRegStrategy.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNProcessors.td stable/12/contrib/llvm/lib/Target/AMDGPU/GCNRegPressure.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNRegPressure.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNSchedStrategy.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MIMGInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600ClauseMergePass.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600Defines.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600ISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600InstrFormats.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600MachineScheduler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600MachineScheduler.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600OptimizeVectorRegisters.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600Packetizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600Processors.td stable/12/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIDebuggerInsertNops.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIDefines.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIFixVGPRCopies.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIFixWWMLiveness.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIInsertSkips.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrFormats.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIMachineScheduler.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td stable/12/contrib/llvm/lib/Target/AMDGPU/SISchedule.td stable/12/contrib/llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/SMInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/SOPInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/TargetInfo/AMDGPUTargetInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/VOP1Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOP2Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOP3Instructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOP3PInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOPCInstructions.td stable/12/contrib/llvm/lib/Target/AMDGPU/VOPInstructions.td stable/12/contrib/llvm/lib/Target/ARC/ARCAsmPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCBranchFinalize.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCFrameLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCInstrFormats.td stable/12/contrib/llvm/lib/Target/ARC/ARCInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCInstrInfo.td stable/12/contrib/llvm/lib/Target/ARC/ARCMCInstLower.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCMCInstLower.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCMachineFunctionInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCRegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/Disassembler/ARCDisassembler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/A15SDOptimizer.cpp stable/12/contrib/llvm/lib/Target/ARM/ARM.h stable/12/contrib/llvm/lib/Target/ARM/ARM.td stable/12/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.h stable/12/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMCallLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMCallingConv.h stable/12/contrib/llvm/lib/Target/ARM/ARMCallingConv.td stable/12/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.h stable/12/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMFrameLowering.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMFrameLowering.h stable/12/contrib/llvm/lib/Target/ARM/ARMHazardRecognizer.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMISelLowering.h stable/12/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMInstrInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td stable/12/contrib/llvm/lib/Target/ARM/ARMInstructionSelector.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMMachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/ARM/ARMMacroFusion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMRegisterBanks.td stable/12/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.td stable/12/contrib/llvm/lib/Target/ARM/ARMScheduleA57.td stable/12/contrib/llvm/lib/Target/ARM/ARMScheduleA9.td stable/12/contrib/llvm/lib/Target/ARM/ARMScheduleR52.td stable/12/contrib/llvm/lib/Target/ARM/ARMScheduleSwift.td stable/12/contrib/llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMSubtarget.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMSubtarget.h stable/12/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMTargetMachine.h stable/12/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.h stable/12/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp stable/12/contrib/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp stable/12/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp stable/12/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendELF.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendWinCOFF.h (contents, props changed) stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp stable/12/contrib/llvm/lib/Target/ARM/MLxExpansionPass.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb1FrameLowering.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb1InstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.cpp stable/12/contrib/llvm/lib/Target/ARM/Thumb2SizeReduction.cpp stable/12/contrib/llvm/lib/Target/ARM/ThumbRegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AVR.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRInstrInfo.td stable/12/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRTargetMachine.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCELFStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCELFStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPF.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPF.td stable/12/contrib/llvm/lib/Target/BPF/BPFCallingConv.td stable/12/contrib/llvm/lib/Target/BPF/BPFISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFInstrInfo.td stable/12/contrib/llvm/lib/Target/BPF/BPFRegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFRegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFSubtarget.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFSubtarget.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFTargetMachine.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/InstPrinter/BPFInstPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCAsmInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/BitTracker.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/BitTracker.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/Hexagon.h stable/12/contrib/llvm/lib/Target/Hexagon/Hexagon.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBitTracker.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBitTracker.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBlockRanges.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBranchRelaxation.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepIICScalar.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepInstrInfo.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepMappings.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonFixupHwLoops.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGatherPacketize.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGenInsert.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGenMux.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGenPredicate.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonHazardRecognizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonHazardRecognizer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV60.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsics.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV5.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonMapAsm2IntrinV65.gen.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonPatterns.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonPseudo.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.td stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSplitDouble.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonStoreWidening.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.h stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonVectorPrint.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCompound.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCDuplexInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCShuffler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFCopy.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFDeadCode.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFGraph.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFLiveness.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFLiveness.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Hexagon/TargetInfo/HexagonTargetInfo.cpp stable/12/contrib/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiDelaySlotFiller.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiInstrFormats.td stable/12/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.td stable/12/contrib/llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiTargetObjectFile.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.h stable/12/contrib/llvm/lib/Target/MSP430/MSP430BranchSelector.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp stable/12/contrib/llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp stable/12/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.cpp stable/12/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsFixupKinds.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.h stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp stable/12/contrib/llvm/lib/Target/Mips/MicroMips32r6InstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsDSPInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsDSPInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Mips/Mips.h stable/12/contrib/llvm/lib/Target/Mips/Mips.td stable/12/contrib/llvm/lib/Target/Mips/Mips16FrameLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16HardFloat.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.h stable/12/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/Mips64InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/Mips64r6InstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsCondMov.td stable/12/contrib/llvm/lib/Target/Mips/MipsConstantIslandPass.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsDSPInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MipsDSPInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsEVAInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MipsEVAInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsFrameLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.h stable/12/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsISelLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td stable/12/contrib/llvm/lib/Target/Mips/MipsInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MipsInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsInstrInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsMCInstLower.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsMCInstLower.h stable/12/contrib/llvm/lib/Target/Mips/MipsMSAInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MipsMSAInstrInfo.td stable/12/contrib/llvm/lib/Target/Mips/MipsMTInstrFormats.td stable/12/contrib/llvm/lib/Target/Mips/MipsMachineFunction.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsModuleISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsOs16.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.h stable/12/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.h stable/12/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.h stable/12/contrib/llvm/lib/Target/Mips/MipsSERegisterInfo.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSchedule.td stable/12/contrib/llvm/lib/Target/Mips/MipsScheduleGeneric.td stable/12/contrib/llvm/lib/Target/Mips/MipsScheduleP5600.td stable/12/contrib/llvm/lib/Target/Mips/MipsSubtarget.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsSubtarget.h stable/12/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp stable/12/contrib/llvm/lib/Target/Mips/MipsTargetMachine.h stable/12/contrib/llvm/lib/Target/Mips/MipsTargetStreamer.h stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.h stable/12/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTX.td stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXFrameLowering.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXFrameLowering.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.td stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXIntrinsics.td stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXPrologEpilogPass.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXSubtarget.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetObjectFile.h stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/NVPTX/NVVMReflect.cpp stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2ELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2TargetStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2ISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrFormats.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.td stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.h (contents, props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp stable/12/contrib/llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp stable/12/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.h stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMachObjectWriter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.h stable/12/contrib/llvm/lib/Target/PowerPC/P9InstrResources.td stable/12/contrib/llvm/lib/Target/PowerPC/PPC.h stable/12/contrib/llvm/lib/Target/PowerPC/PPC.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCBranchCoalescing.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCBranchSelector.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCExpandISEL.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCFastISel.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrFormats.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrQPX.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrSPE.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCLoopPreIncPrep.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCMIPeephole.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCSchedule.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCScheduleP9.td stable/12/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetObjectFile.h stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCVSXSwapRemoval.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCV.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCV.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVCallingConv.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVFrameLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVFrameLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrFormats.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoA.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoC.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoD.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoF.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoM.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVMCInstLower.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVRegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVRegisterInfo.td stable/12/contrib/llvm/lib/Target/RISCV/RISCVSubtarget.h (contents, props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp stable/12/contrib/llvm/lib/Target/Sparc/DelaySlotFiller.cpp stable/12/contrib/llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp stable/12/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp stable/12/contrib/llvm/lib/Target/Sparc/LeonFeatures.td stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h stable/12/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h stable/12/contrib/llvm/lib/Target/Sparc/Sparc.h stable/12/contrib/llvm/lib/Target/Sparc/Sparc.td stable/12/contrib/llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcISelLowering.h stable/12/contrib/llvm/lib/Target/Sparc/SparcInstrAliases.td stable/12/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td stable/12/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.h stable/12/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp stable/12/contrib/llvm/lib/Target/Sparc/SparcSubtarget.h stable/12/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp stable/12/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp stable/12/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp stable/12/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZ.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZ.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZCallingConv.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZElimCompare.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZExpandPseudo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZFeatures.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZFrameLowering.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZHazardRecognizer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrFormats.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZMachineScheduler.h (contents, props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZOperands.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZOperators.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.h stable/12/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZSchedule.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ13.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ196.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td stable/12/contrib/llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/Target.cpp stable/12/contrib/llvm/lib/Target/TargetLoweringObjectFile.cpp stable/12/contrib/llvm/lib/Target/TargetMachine.cpp stable/12/contrib/llvm/lib/Target/TargetMachineC.cpp stable/12/contrib/llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCCodeEmitter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/README.txt (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssembly.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssembly.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyArgumentMove.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCallIndirectFixup.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISD.def stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrConv.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFormats.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInteger.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrMemory.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerBrUnless.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerGlobalDtors.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeLiveIntervals.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeReturned.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPrepareForLiveIntervals.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.td stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyReplacePhysRegs.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetObjectFile.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetObjectFile.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h (contents, props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/known_gcc_test_failures.txt (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp stable/12/contrib/llvm/lib/Target/X86/AsmParser/X86Operand.h stable/12/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp stable/12/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp stable/12/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86InstComments.h stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp stable/12/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86FixupKinds.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp stable/12/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.cpp stable/12/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.h stable/12/contrib/llvm/lib/Target/X86/X86.h stable/12/contrib/llvm/lib/Target/X86/X86.td stable/12/contrib/llvm/lib/Target/X86/X86AsmPrinter.cpp stable/12/contrib/llvm/lib/Target/X86/X86AsmPrinter.h stable/12/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp stable/12/contrib/llvm/lib/Target/X86/X86CallLowering.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86CallingConv.h stable/12/contrib/llvm/lib/Target/X86/X86CallingConv.td stable/12/contrib/llvm/lib/Target/X86/X86CmovConversion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86DomainReassignment.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86EvexToVex.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86ExpandPseudo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86FastISel.cpp stable/12/contrib/llvm/lib/Target/X86/X86FixupBWInsts.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp stable/12/contrib/llvm/lib/Target/X86/X86FlagsCopyLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86FloatingPoint.cpp stable/12/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86FrameLowering.h stable/12/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp stable/12/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp stable/12/contrib/llvm/lib/Target/X86/X86ISelLowering.h stable/12/contrib/llvm/lib/Target/X86/X86Instr3DNow.td stable/12/contrib/llvm/lib/Target/X86/X86InstrAVX512.td stable/12/contrib/llvm/lib/Target/X86/X86InstrArithmetic.td stable/12/contrib/llvm/lib/Target/X86/X86InstrCMovSetCC.td stable/12/contrib/llvm/lib/Target/X86/X86InstrCompiler.td stable/12/contrib/llvm/lib/Target/X86/X86InstrControl.td stable/12/contrib/llvm/lib/Target/X86/X86InstrExtension.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFMA.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFMA3Info.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86InstrFMA3Info.h (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86InstrFPStack.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFormats.td stable/12/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td stable/12/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86InstrInfo.h stable/12/contrib/llvm/lib/Target/X86/X86InstrInfo.td stable/12/contrib/llvm/lib/Target/X86/X86InstrMMX.td stable/12/contrib/llvm/lib/Target/X86/X86InstrMPX.td stable/12/contrib/llvm/lib/Target/X86/X86InstrSGX.td stable/12/contrib/llvm/lib/Target/X86/X86InstrSSE.td stable/12/contrib/llvm/lib/Target/X86/X86InstrSVM.td stable/12/contrib/llvm/lib/Target/X86/X86InstrShiftRotate.td stable/12/contrib/llvm/lib/Target/X86/X86InstrSystem.td stable/12/contrib/llvm/lib/Target/X86/X86InstrVMX.td stable/12/contrib/llvm/lib/Target/X86/X86InstrVecCompiler.td stable/12/contrib/llvm/lib/Target/X86/X86InstrXOP.td stable/12/contrib/llvm/lib/Target/X86/X86InstructionSelector.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86InterleavedAccess.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86IntrinsicsInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86LegalizerInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86MCInstLower.cpp stable/12/contrib/llvm/lib/Target/X86/X86MachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/X86/X86MacroFusion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86OptimizeLEAs.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86PadShortFunction.cpp stable/12/contrib/llvm/lib/Target/X86/X86RegisterBankInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86RegisterInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86RegisterInfo.td stable/12/contrib/llvm/lib/Target/X86/X86RetpolineThunks.cpp stable/12/contrib/llvm/lib/Target/X86/X86SchedBroadwell.td stable/12/contrib/llvm/lib/Target/X86/X86SchedHaswell.td stable/12/contrib/llvm/lib/Target/X86/X86SchedSandyBridge.td stable/12/contrib/llvm/lib/Target/X86/X86SchedSkylakeClient.td stable/12/contrib/llvm/lib/Target/X86/X86SchedSkylakeServer.td stable/12/contrib/llvm/lib/Target/X86/X86Schedule.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleAtom.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleBtVer2.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleSLM.td stable/12/contrib/llvm/lib/Target/X86/X86ScheduleZnver1.td stable/12/contrib/llvm/lib/Target/X86/X86Subtarget.cpp stable/12/contrib/llvm/lib/Target/X86/X86Subtarget.h stable/12/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp stable/12/contrib/llvm/lib/Target/X86/X86TargetObjectFile.cpp stable/12/contrib/llvm/lib/Target/X86/X86TargetObjectFile.h stable/12/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp stable/12/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.h (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86VZeroUpper.cpp stable/12/contrib/llvm/lib/Target/X86/X86WinAllocaExpander.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/X86/X86WinEHState.cpp (contents, props changed) stable/12/contrib/llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp stable/12/contrib/llvm/lib/Target/XCore/InstPrinter/XCoreInstPrinter.h stable/12/contrib/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreMCInstLower.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreMCInstLower.h stable/12/contrib/llvm/lib/Target/XCore/XCoreMachineFunctionInfo.h stable/12/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.cpp stable/12/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.h stable/12/contrib/llvm/lib/Target/XCore/XCoreSubtarget.h stable/12/contrib/llvm/lib/Testing/Support/Error.cpp (contents, props changed) stable/12/contrib/llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp (contents, props changed) stable/12/contrib/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp (contents, props changed) stable/12/contrib/llvm/lib/ToolDrivers/llvm-lib/Options.td stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroEarly.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroElide.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroFrame.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroInternal.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroSplit.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/Coroutines.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/AlwaysInliner.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp stable/12/contrib/llvm/lib/Transforms/IPO/BarrierNoopPass.cpp stable/12/contrib/llvm/lib/Transforms/IPO/CalledValuePropagation.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp stable/12/contrib/llvm/lib/Transforms/IPO/FunctionImport.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp stable/12/contrib/llvm/lib/Transforms/IPO/IPConstantPropagation.cpp stable/12/contrib/llvm/lib/Transforms/IPO/IPO.cpp stable/12/contrib/llvm/lib/Transforms/IPO/InlineSimple.cpp stable/12/contrib/llvm/lib/Transforms/IPO/Inliner.cpp stable/12/contrib/llvm/lib/Transforms/IPO/Internalize.cpp stable/12/contrib/llvm/lib/Transforms/IPO/LoopExtractor.cpp stable/12/contrib/llvm/lib/Transforms/IPO/LowerTypeTests.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp stable/12/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp stable/12/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp stable/12/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp stable/12/contrib/llvm/lib/Transforms/IPO/SampleProfile.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/StripSymbols.cpp stable/12/contrib/llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineInternal.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp stable/12/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/CFGMST.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp stable/12/contrib/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/PGOMemOPSizeOpt.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/BlotMapVector.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/ObjCARC/DependencyAnalysis.h stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARC.h stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCExpand.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysis.cpp stable/12/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysis.h stable/12/contrib/llvm/lib/Transforms/ObjCARC/PtrState.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/ObjCARC/PtrState.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/ADCE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/BDCE.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/ConstantProp.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/DCE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/FlattenCFGPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Float2Int.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/GVN.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/GVNHoist.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/GVNSink.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/GuardWidening.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LICM.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopDeletion.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopDistribute.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopInterchange.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopPredication.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopRerollPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopSink.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/MergeICmps.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/NaryReassociate.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/NewGVN.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Reg2Mem.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SROA.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Scalar.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/Sink.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/StructurizeCFG.cpp stable/12/contrib/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp stable/12/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BuildLibCalls.cpp stable/12/contrib/llvm/lib/Transforms/Utils/BypassSlowDivision.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp stable/12/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp stable/12/contrib/llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/EscapeEnumerator.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/Evaluator.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/FlattenCFG.cpp stable/12/contrib/llvm/lib/Transforms/Utils/FunctionComparator.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/GlobalStatus.cpp stable/12/contrib/llvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp stable/12/contrib/llvm/lib/Transforms/Utils/InstructionNamer.cpp stable/12/contrib/llvm/lib/Transforms/Utils/IntegerDivision.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LCSSA.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/Local.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnroll.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnrollPeel.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/LoopVersioning.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/LowerInvoke.cpp stable/12/contrib/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/LowerSwitch.cpp stable/12/contrib/llvm/lib/Transforms/Utils/Mem2Reg.cpp stable/12/contrib/llvm/lib/Transforms/Utils/MetaRenamer.cpp stable/12/contrib/llvm/lib/Transforms/Utils/OrderedInstructions.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/PredicateInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SSAUpdater.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp stable/12/contrib/llvm/lib/Transforms/Utils/SplitModule.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/StripGCRelocates.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/StripNonLineTableDebugInfo.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/SymbolRewriter.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp stable/12/contrib/llvm/lib/Transforms/Utils/Utils.cpp stable/12/contrib/llvm/lib/Transforms/Utils/VNCoercion.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlan.cpp (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlan.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Vectorize/VPlanValue.h (contents, props changed) stable/12/contrib/llvm/lib/Transforms/Vectorize/Vectorize.cpp stable/12/contrib/llvm/lib/XRay/Trace.cpp (contents, props changed) stable/12/contrib/llvm/tools/bugpoint/BugDriver.cpp stable/12/contrib/llvm/tools/bugpoint/BugDriver.h stable/12/contrib/llvm/tools/bugpoint/CrashDebugger.cpp stable/12/contrib/llvm/tools/bugpoint/ExecutionDriver.cpp stable/12/contrib/llvm/tools/bugpoint/ExtractFunction.cpp stable/12/contrib/llvm/tools/bugpoint/FindBugs.cpp stable/12/contrib/llvm/tools/bugpoint/Miscompilation.cpp stable/12/contrib/llvm/tools/bugpoint/OptimizerDriver.cpp stable/12/contrib/llvm/tools/bugpoint/ToolRunner.cpp stable/12/contrib/llvm/tools/bugpoint/bugpoint.cpp stable/12/contrib/llvm/tools/clang/LICENSE.TXT stable/12/contrib/llvm/tools/clang/include/clang-c/BuildSystem.h stable/12/contrib/llvm/tools/clang/include/clang-c/CXCompilationDatabase.h stable/12/contrib/llvm/tools/clang/include/clang-c/CXErrorCode.h stable/12/contrib/llvm/tools/clang/include/clang-c/CXString.h stable/12/contrib/llvm/tools/clang/include/clang-c/Documentation.h stable/12/contrib/llvm/tools/clang/include/clang-c/Index.h stable/12/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMT.h stable/12/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMTActions.h stable/12/contrib/llvm/tools/clang/include/clang/ARCMigrate/FileRemapper.h stable/12/contrib/llvm/tools/clang/include/clang/AST/APValue.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTFwd.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTImporter.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTLambda.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTMutationListener.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTStructuralEquivalence.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTTypeTraits.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ASTUnresolvedSet.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Attr.h stable/12/contrib/llvm/tools/clang/include/clang/AST/AttrIterator.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Availability.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/BaseSubobject.h stable/12/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def stable/12/contrib/llvm/tools/clang/include/clang/AST/CXXInheritance.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CharUnits.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Comment.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CommentBriefParser.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CommentCommandTraits.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CommentLexer.h stable/12/contrib/llvm/tools/clang/include/clang/AST/CommentSema.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DataCollection.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/Decl.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclContextInternals.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclFriend.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclLookups.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclOpenMP.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h stable/12/contrib/llvm/tools/clang/include/clang/AST/DependentDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/AST/EvaluatedExprVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Expr.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ExprObjC.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ExprOpenMP.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/ExternalASTMerger.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/ExternalASTSource.h stable/12/contrib/llvm/tools/clang/include/clang/AST/GlobalDecl.h stable/12/contrib/llvm/tools/clang/include/clang/AST/LambdaCapture.h stable/12/contrib/llvm/tools/clang/include/clang/AST/LocInfoType.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/Mangle.h stable/12/contrib/llvm/tools/clang/include/clang/AST/MangleNumberingContext.h stable/12/contrib/llvm/tools/clang/include/clang/AST/NSAPI.h stable/12/contrib/llvm/tools/clang/include/clang/AST/NestedNameSpecifier.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ODRHash.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h stable/12/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.def stable/12/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.h stable/12/contrib/llvm/tools/clang/include/clang/AST/ParentMap.h stable/12/contrib/llvm/tools/clang/include/clang/AST/PrettyPrinter.h stable/12/contrib/llvm/tools/clang/include/clang/AST/QualTypeNames.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/RawCommentList.h stable/12/contrib/llvm/tools/clang/include/clang/AST/RecordLayout.h stable/12/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Redeclarable.h stable/12/contrib/llvm/tools/clang/include/clang/AST/SelectorLocationsKind.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Stmt.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtIterator.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtObjC.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtOpenMP.h stable/12/contrib/llvm/tools/clang/include/clang/AST/StmtVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TemplateName.h stable/12/contrib/llvm/tools/clang/include/clang/AST/Type.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TypeNodes.def stable/12/contrib/llvm/tools/clang/include/clang/AST/TypeOrdering.h stable/12/contrib/llvm/tools/clang/include/clang/AST/TypeVisitor.h stable/12/contrib/llvm/tools/clang/include/clang/AST/UnresolvedSet.h stable/12/contrib/llvm/tools/clang/include/clang/AST/VTTBuilder.h stable/12/contrib/llvm/tools/clang/include/clang/AST/VTableBuilder.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchFinder.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersMacros.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Diagnostics.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Parser.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Registry.h stable/12/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/CFGReachabilityAnalysis.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/Consumed.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/Dominators.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/FormatString.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/LiveVariables.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/PostOrderCFGView.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ReachableCode.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafety.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/UninitializedValues.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisDeclContext.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CFG.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CFGStmtMap.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CallGraph.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CloneDetection.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Analysis/CodeInjector.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Analysis/DomainSpecific/CocoaConventions.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/DomainSpecific/ObjCNoReturn.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Support/BumpVector.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/ABI.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/AddressSpaces.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/AlignedAllocation.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/AllDiagnostics.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Attr.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/AttrKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/AttrSubjectMatchRules.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/Attributes.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/Builtins.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAArch64.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAMDGPU.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsHexagon.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNEON.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNVPTX.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsPPC.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsWebAssembly.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86_64.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/CapturedStmt.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/CharInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/CommentOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Cuda.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/DebugInfoOptions.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommentKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticError.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticIDs.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerializationKinds.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/ExceptionSpecificationType.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/ExpressionTraits.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/FileManager.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/FileSystemOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/FileSystemStatCache.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/LLVM.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Lambda.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Linkage.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/MacroBuilder.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Module.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensions.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenCLOptions.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/OperatorKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/OperatorPrecedence.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/PartialDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/PrettyStackTrace.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/SourceManagerInternals.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td stable/12/contrib/llvm/tools/clang/include/clang/Basic/SyncScope.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetBuiltins.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetCXXABI.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TemplateKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Version.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/Visibility.h stable/12/contrib/llvm/tools/clang/include/clang/Basic/X86Target.def stable/12/contrib/llvm/tools/clang/include/clang/Basic/XRayLists.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/BackendUtil.h stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/CGFunctionInfo.h stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/ConstantInitBuilder.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/SwiftCallingConv.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTranslationUnit.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Driver/Action.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td stable/12/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td stable/12/contrib/llvm/tools/clang/include/clang/Driver/Compilation.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Distro.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Driver/Driver.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Job.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Multilib.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Options.td stable/12/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Tool.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/Types.def stable/12/contrib/llvm/tools/clang/include/clang/Driver/Types.h stable/12/contrib/llvm/tools/clang/include/clang/Driver/XRayArgs.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Edit/Commit.h stable/12/contrib/llvm/tools/clang/include/clang/Edit/EditedSource.h stable/12/contrib/llvm/tools/clang/include/clang/Edit/EditsReceiver.h stable/12/contrib/llvm/tools/clang/include/clang/Edit/FileOffset.h stable/12/contrib/llvm/tools/clang/include/clang/Edit/Rewriters.h stable/12/contrib/llvm/tools/clang/include/clang/Format/Format.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/ASTConsumers.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/ChainedDiagnosticConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CommandLineSourceLoc.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInvocation.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/DependencyOutputOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/DiagnosticRenderer.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendAction.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendActions.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/FrontendPluginRegistry.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def stable/12/contrib/llvm/tools/clang/include/clang/Frontend/LayoutOverrideSource.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/LogDiagnosticPrinter.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/MultiplexConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Frontend/PrecompiledPreamble.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnosticReader.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnostics.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticBuffer.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/Utils.h stable/12/contrib/llvm/tools/clang/include/clang/Frontend/VerifyDiagnosticConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/FrontendTool/Utils.h stable/12/contrib/llvm/tools/clang/include/clang/Index/IndexDataConsumer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Index/IndexSymbol.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Index/IndexingAction.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Index/USRGeneration.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/CodeCompletionHandler.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/DirectoryLookup.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/ExternalPreprocessorSource.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearch.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearchOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Lexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/LiteralSupport.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/MacroArgs.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/ModuleLoader.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/MultipleIncludeOpt.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PPCallbacks.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PPConditionalDirectiveRecord.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PTHLexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Pragma.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PreprocessingRecord.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorLexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/Token.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/TokenConcatenation.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/TokenLexer.h stable/12/contrib/llvm/tools/clang/include/clang/Lex/VariadicMacroSupport.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Parse/ParseAST.h stable/12/contrib/llvm/tools/clang/include/clang/Parse/Parser.h stable/12/contrib/llvm/tools/clang/include/clang/Parse/RAIIObjectsForParser.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Core/DeltaTree.h stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Core/HTMLRewrite.h stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Core/RewriteBuffer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Core/RewriteRope.h stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Core/Rewriter.h stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Core/TokenRewriter.h stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/FixItRewriter.h stable/12/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/FrontendActions.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/AnalysisBasedWarnings.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteOptions.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/DelayedDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/ExternalSemaSource.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/IdentifierResolver.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Lookup.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/ObjCMethodList.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Overload.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Ownership.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/ParsedTemplate.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Scope.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Sema.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/SemaConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/SemaFixItUtils.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/SemaInternal.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/SemaLambda.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Template.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/TemplateDeduction.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/TypoCorrection.h stable/12/contrib/llvm/tools/clang/include/clang/Sema/Weak.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTDeserializationListener.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ContinuousRangeMap.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/GlobalModuleIndex.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/Module.h stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ModuleFileExtension.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Serialization/ModuleManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/Checkers.td stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerOptInfo.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerRegistry.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/IssueHash.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BlockCounter.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SimpleConstraintManager.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/StoreRef.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SummaryManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintTag.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/ModelConsumer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/ArgumentsAdjusters.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/CommonOptionsParser.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabase.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabasePluginRegistry.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Core/Diagnostic.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Core/Replacement.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/DiagnosticsYaml.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Execution.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/FileMatchTrie.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/FixIt.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/JSONCompilationDatabase.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/AtomicChange.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRule.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringResultConsumer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/RenamingAction.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/SymbolName.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/USRFinder.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/USRFindingAction.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/USRLocFinder.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/RefactoringCallbacks.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/ReplacementsYaml.h stable/12/contrib/llvm/tools/clang/include/clang/Tooling/StandaloneExecution.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/ToolExecutorPluginRegistry.h (contents, props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Tooling.h stable/12/contrib/llvm/tools/clang/include/clang/module.modulemap stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/ARCMT.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/FileRemapper.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/Internals.h stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/ObjCMT.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/PlistReporter.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransARCAssign.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransAutoreleasePool.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransBlockObjCVariable.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransEmptyStatementsAndDealloc.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCAttrs.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransProperties.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransProtectedScope.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransUnbridgedCasts.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransZeroOutPropsInDealloc.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/TransformActions.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.cpp stable/12/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.h stable/12/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ASTStructuralEquivalence.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Comment.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CommentBriefParser.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CommentLexer.cpp stable/12/contrib/llvm/tools/clang/lib/AST/CommentSema.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Decl.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclFriend.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp stable/12/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Expr.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ExternalASTMerger.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/ExternalASTSource.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ItaniumCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Mangle.cpp stable/12/contrib/llvm/tools/clang/lib/AST/MicrosoftCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp stable/12/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp stable/12/contrib/llvm/tools/clang/lib/AST/NestedNameSpecifier.cpp stable/12/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/OpenMPClause.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/ParentMap.cpp stable/12/contrib/llvm/tools/clang/lib/AST/QualTypeNames.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/RawCommentList.cpp stable/12/contrib/llvm/tools/clang/lib/AST/RecordLayout.cpp stable/12/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Stmt.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtCXX.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/StmtObjC.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/StmtOpenMP.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TemplateBase.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TemplateName.cpp stable/12/contrib/llvm/tools/clang/lib/AST/Type.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp stable/12/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp stable/12/contrib/llvm/tools/clang/lib/AST/VTTBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/AST/VTableBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Parser.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Registry.cpp stable/12/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/VariantValue.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/AnalysisDeclContext.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CFGReachabilityAnalysis.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CFGStmtMap.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/CloneDetection.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Analysis/CocoaConventions.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/Consumed.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/Dominators.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/FormatString.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/FormatStringParsing.h stable/12/contrib/llvm/tools/clang/lib/Analysis/LiveVariables.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ObjCNoReturn.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/PostOrderCFGView.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/PrintfFormatString.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ProgramPoint.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ScanfFormatString.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ThreadSafety.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp stable/12/contrib/llvm/tools/clang/lib/Analysis/UninitializedValues.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Builtins.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Cuda.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/DiagnosticOptions.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/FileSystemStatCache.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/LangOptions.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Module.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/ObjCRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/OpenMPKinds.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/OperatorPrecedence.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Sanitizers.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/SourceLocation.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Targets.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/ARM.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/ARM.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AVR.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/AVR.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/BPF.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/BPF.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Hexagon.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Hexagon.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Lanai.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Lanai.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/NVPTX.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/NVPTX.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/SPIR.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Sparc.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Sparc.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/SystemZ.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/SystemZ.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/X86.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/X86.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Version.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/Warnings.cpp stable/12/contrib/llvm/tools/clang/lib/Basic/XRayLists.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/ABIInfo.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBuilder.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCall.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGCoroutine.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGGPUBuiltin.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayout.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGVTT.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypeCache.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/ConstantEmitter.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/ConstantInitBuilder.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/SanitizerMetadata.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/SwiftCallingConv.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp stable/12/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.h stable/12/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/Action.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Compilation.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Distro.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/Driver.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Job.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Ananas.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Sparc.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/X86.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/BareMetal.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/BareMetal.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CloudABI.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CloudABI.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Contiki.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Fuchsia.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Fuchsia.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Haiku.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Haiku.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Lanai.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MipsLinux.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MipsLinux.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Myriad.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Myriad.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/NaCl.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/NaCl.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/PS4CPU.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/PS4CPU.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Solaris.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Solaris.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/Types.cpp stable/12/contrib/llvm/tools/clang/lib/Driver/XRayArgs.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Edit/Commit.cpp stable/12/contrib/llvm/tools/clang/lib/Edit/EditedSource.cpp stable/12/contrib/llvm/tools/clang/lib/Edit/RewriteObjCFoundationAPI.cpp stable/12/contrib/llvm/tools/clang/lib/Format/AffectedRangeManager.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/AffectedRangeManager.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/BreakableToken.cpp stable/12/contrib/llvm/tools/clang/lib/Format/BreakableToken.h stable/12/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp stable/12/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.h stable/12/contrib/llvm/tools/clang/lib/Format/Encoding.h stable/12/contrib/llvm/tools/clang/lib/Format/Format.cpp stable/12/contrib/llvm/tools/clang/lib/Format/FormatInternal.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/FormatToken.cpp stable/12/contrib/llvm/tools/clang/lib/Format/FormatToken.h stable/12/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/SortJavaScriptImports.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/SortJavaScriptImports.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/TokenAnalyzer.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/TokenAnalyzer.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp stable/12/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.h stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp stable/12/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.h stable/12/contrib/llvm/tools/clang/lib/Format/UsingDeclarationsSorter.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/UsingDeclarationsSorter.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp stable/12/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.h stable/12/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ASTMerge.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CacheTokens.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ChainedIncludesSource.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CodeGenOptions.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/DependencyFile.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/DependencyGraph.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/DiagnosticRenderer.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/FrontendOptions.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/HeaderIncludeGen.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/LayoutOverrideSource.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/PCHContainerOperations.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Frontend/PrecompiledPreamble.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/FixItRewriter.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/FrontendActions.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/HTMLPrint.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/InclusionRewriter.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/SerializedDiagnosticPrinter.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/SerializedDiagnosticReader.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Frontend/TestModuleFileExtension.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Frontend/TextDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticBuffer.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticPrinter.cpp stable/12/contrib/llvm/tools/clang/lib/Frontend/VerifyDiagnosticConsumer.cpp stable/12/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_builtin_vars.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_intrinsics.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_runtime_wrapper.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_aes.h stable/12/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_pclmul.h stable/12/contrib/llvm/tools/clang/lib/Headers/altivec.h stable/12/contrib/llvm/tools/clang/lib/Headers/ammintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/avx512bitalgintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512bwintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512cdintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512erintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512fintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512ifmaintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512ifmavlintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512pfintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vbmi2intrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vbmiintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vbmivlintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlbitalgintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlbwintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlcdintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vldqintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlvbmi2intrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vlvnniintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vnniintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vpopcntdqintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avx512vpopcntdqvlintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/avxintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/bmiintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/cetintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/clflushoptintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/clwbintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/clzerointrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/cpuid.h stable/12/contrib/llvm/tools/clang/lib/Headers/cuda_wrappers/algorithm stable/12/contrib/llvm/tools/clang/lib/Headers/emmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/f16cintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/fma4intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/fmaintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/fxsrintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/gfniintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/htmxlintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/ia32intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/immintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/intrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/lwpintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/lzcntintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/mm3dnow.h stable/12/contrib/llvm/tools/clang/lib/Headers/mmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/module.modulemap stable/12/contrib/llvm/tools/clang/lib/Headers/mwaitxintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/nmmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/opencl-c.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/pkuintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/pmmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/popcntintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/prfchwintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/rdseedintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/shaintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/smmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/stdint.h stable/12/contrib/llvm/tools/clang/lib/Headers/tmmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/unwind.h stable/12/contrib/llvm/tools/clang/lib/Headers/vaesintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/vpclmulqdqintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/wmmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/x86intrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/xopintrin.h stable/12/contrib/llvm/tools/clang/lib/Headers/xsavecintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/xsaveintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/xsaveoptintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/xsavesintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/xtestintrin.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexBody.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexDecl.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexSymbol.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexTypeSourceInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexingAction.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexingContext.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/IndexingContext.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Index/SimpleFormatContext.h stable/12/contrib/llvm/tools/clang/lib/Index/USRGeneration.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/LiteralSupport.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/MacroArgs.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPExpressions.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPLexerChange.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PTHLexer.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PreprocessingRecord.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/PreprocessorLexer.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp stable/12/contrib/llvm/tools/clang/lib/Lex/TokenLexer.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp stable/12/contrib/llvm/tools/clang/lib/Parse/Parser.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp stable/12/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/CoroutineStmtBuilder.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Sema/DeclSpec.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/DelayedDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/IdentifierResolver.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/JumpDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/Sema.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaAccess.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCUDA.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaCoroutine.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaOpenMP.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp stable/12/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h stable/12/contrib/llvm/tools/clang/lib/Sema/TypeLocBuilder.h stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.h stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReaderInternals.h stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/GlobalModuleIndex.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/Module.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp stable/12/contrib/llvm/tools/clang/lib/Serialization/MultiOnDiskHashTable.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationDiagnostics.h stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GTestChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonnullGlobalConstantsChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NumberObjectConversionChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerRegistry.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/DynamicTypeMap.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Environment.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/FunctionSummary.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/IssueHash.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/LoopWidening.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SVals.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelConsumer.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelInjector.h (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/ASTDiff/ASTDiff.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/ArgumentsAdjusters.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/CompilationDatabase.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Core/Replacement.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Execution.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/FileMatchTrie.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/AtomicChange.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/Extract.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/StandaloneExecution.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp stable/12/contrib/llvm/tools/clang/tools/clang-format/ClangFormat.cpp stable/12/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp stable/12/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp stable/12/contrib/llvm/tools/clang/tools/driver/driver.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangOptionDocEmitter.cpp (contents, props changed) stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangSACheckersEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/NeonEmitter.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp stable/12/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h stable/12/contrib/llvm/tools/llc/llc.cpp stable/12/contrib/llvm/tools/lld/COFF/CMakeLists.txt (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Chunks.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Chunks.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Config.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/DLL.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/DLL.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Driver.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Driver.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/DriverUtils.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/ICF.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/InputFiles.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/InputFiles.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/LTO.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/LTO.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/MapFile.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/MarkLive.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/MinGW.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Options.td stable/12/contrib/llvm/tools/lld/COFF/PDB.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/PDB.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/SymbolTable.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/SymbolTable.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Symbols.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Symbols.h (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Writer.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/COFF/Writer.h (contents, props changed) stable/12/contrib/llvm/tools/lld/Common/Args.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/Common/CMakeLists.txt (contents, props changed) stable/12/contrib/llvm/tools/lld/Common/ErrorHandler.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/Common/Strings.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/Common/TargetOptionsCommandFlags.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/AArch64ErrataFix.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/AArch64ErrataFix.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/AArch64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/AMDGPU.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/ARM.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/Mips.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/MipsArchTree.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/PPC.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/SPARCV9.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/X86.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/X86_64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/CMakeLists.txt (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Config.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Driver.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Driver.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/DriverUtils.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/EhFrame.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Filesystem.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/GdbIndex.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/GdbIndex.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/ICF.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/ICF.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/InputFiles.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/InputFiles.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/InputSection.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/InputSection.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/LTO.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/LTO.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/LinkerScript.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/LinkerScript.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/MapFile.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/MapFile.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/MarkLive.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Options.td stable/12/contrib/llvm/tools/lld/ELF/OutputSections.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/OutputSections.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Relocations.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Relocations.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/ScriptLexer.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/ScriptParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/SymbolTable.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/SymbolTable.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Symbols.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Symbols.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/SyntheticSections.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/SyntheticSections.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Target.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Target.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Thunks.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Thunks.h (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Writer.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/ELF/Writer.h (contents, props changed) stable/12/contrib/llvm/tools/lld/LICENSE.TXT (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Driver.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/ErrorHandler.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Strings.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/TargetOptionsCommandFlags.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Version.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/DefinedAtom.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/File.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Instrumentation.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/LinkingContext.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/PassManager.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Reader.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Resolver.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Simple.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/SymbolTable.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/TODO.txt (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Writer.h (contents, props changed) stable/12/contrib/llvm/tools/lld/include/lld/ReaderWriter/MachOLinkingContext.h (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/Core/LinkingContext.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/Driver/CMakeLists.txt (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/Driver/DarwinLdDriver.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/Driver/DarwinLdOptions.td stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/FileArchive.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/CMakeLists.txt (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/LayoutPass.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryUtils.h (contents, props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp (contents, props changed) stable/12/contrib/llvm/tools/lld/tools/lld/lld.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBBroadcaster.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBCommandInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBCommandReturnObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBData.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBDebugger.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBExpressionOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBFrame.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBInstruction.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBInstructionList.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBLaunchInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBModule.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBProcess.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBStream.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBStructuredData.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBSymbol.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBTarget.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBThread.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBValueList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Breakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointIDList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocation.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationCollection.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointName.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolver.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileLine.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverName.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSite.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSiteList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/StoppointCallbackContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/StoppointLocation.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Watchpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointOptions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Address.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolver.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverFileLine.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverName.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Architecture.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Broadcaster.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Communication.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Debugger.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Disassembler.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/EmulateInstruction.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Event.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/FileLineResolver.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/FileSpecList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/FormatEntity.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/IOHandler.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/LoadedModuleInfoList.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Mangled.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/MappedHash.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Module.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ModuleChild.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ModuleList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ModuleSpec.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/PluginManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/RangeMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/RegisterValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/STLUtils.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Scalar.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/SearchFilter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Section.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/SourceManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/StreamBuffer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseSet.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/UniqueCStringMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/UserSettingsController.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/Value.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DataVisualization.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatClasses.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatManager.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersContainer.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/StringPrinter.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeFormat.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSummary.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSynthetic.h stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeValidator.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/ValueObjectPrinter.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/VectorIterator.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/DWARFExpression.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/Expression.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionParser.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionSourceCode.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionTypeSystemHelper.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionVariable.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/FunctionCaller.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/IRDynamicChecks.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/IRExecutionUnit.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/IRInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/IRMemoryMap.h stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/LLVMUserExpression.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/UserExpression.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/UtilityFunction.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Config.h.cmake stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Debug.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Editline.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/File.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Host.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostThread.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/MainLoop.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/MainLoopBase.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/MonitoringProcessLauncher.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/PosixApi.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Predicate.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/ProcessRunLock.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/PseudoTerminal.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/SocketAddress.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/StringConvert.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Symbols.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/TaskPool.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Terminal.h stable/12/contrib/llvm/tools/lldb/include/lldb/Host/XML.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/GetOptInc.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpoint.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeRegisterContext.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeThreadProtocol.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/freebsd/HostInfoFreeBSD.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/netbsd/HostInfoNetBSD.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/ConnectionFileDescriptorPosix.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostInfoPosix.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/PipePosix.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandAlias.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandCompletions.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObject.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectMultiword.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectRegexCommand.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupBoolean.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupPlatform.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValue.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArch.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArray.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueBoolean.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueEnumeration.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFileSpec.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormatEntity.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueProperties.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUInt64.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUUID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/Options.h stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Block.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTImporter.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompactUnwindInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompileUnit.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerType.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/DWARFCallFrameInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/DeclVendor.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Declaration.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/FuncUnwinders.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Function.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/GoASTContext.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/LineEntry.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/LineTable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectContainer.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Symbol.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContextScope.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolFile.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolVendor.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Type.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/TypeSystem.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindPlan.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindTable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/Variable.h stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/VariableList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ABI.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/DynamicLoader.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContextScope.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/JITLoader.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Language.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/LanguageRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Memory.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ModuleCache.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ObjCLanguageRuntime.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/OperatingSystem.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/PathMappingList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Platform.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Process.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ProcessInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ProcessStructReader.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Queue.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/QueueItem.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/QueueList.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/RegisterCheckpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/RegisterContext.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/RegisterNumber.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadHistory.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StackFrame.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StackID.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StopInfo.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/SystemRuntime.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Target.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/Thread.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadCollection.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadList.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlan.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunction.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanShouldStopHere.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepRange.h stable/12/contrib/llvm/tools/lldb/include/lldb/Target/UnixSignals.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/AnsiTerminal.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/ArchSpec.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Baton.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/CleanUp.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Connection.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/ConstString.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataBuffer.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferHeap.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferLLVM.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataEncoder.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/DataExtractor.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/FileSpec.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Flags.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/JSON.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Log.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/RegularExpression.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SelectHelper.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SharedCluster.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/SharingPtr.h stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Status.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Stream.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamTee.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractor.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringList.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StructuredData.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/TildeExpressionResolver.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Timeout.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Timer.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/UUID.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/UserID.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/VMRange.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-defines.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-enumerations.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-forward.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-defines.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-enumerations.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-private-types.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-types.h stable/12/contrib/llvm/tools/lldb/include/lldb/lldb-versioning.h stable/12/contrib/llvm/tools/lldb/source/API/SBAddress.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBAttachInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBBreakpointName.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBCommandInterpreter.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBDebugger.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBEvent.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBFrame.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBHostOS.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBInstruction.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBInstructionList.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBLaunchInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBModule.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBModuleSpec.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBProcess.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBQueueItem.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBStream.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTarget.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBThread.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBThreadPlan.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBType.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBTypeCategory.cpp stable/12/contrib/llvm/tools/lldb/source/API/SBValue.cpp stable/12/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointID.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointIDList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocation.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointOptions.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolver.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverAddress.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileLine.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverName.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSiteList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/Watchpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointList.cpp stable/12/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointOptions.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandCompletions.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectApropos.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectFrame.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.h stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectMultiword.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectTarget.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Address.cpp stable/12/contrib/llvm/tools/lldb/source/Core/AddressResolverName.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Broadcaster.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Communication.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Debugger.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Disassembler.cpp stable/12/contrib/llvm/tools/lldb/source/Core/DumpDataExtractor.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Core/DynamicLoader.cpp stable/12/contrib/llvm/tools/lldb/source/Core/EmulateInstruction.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Event.cpp stable/12/contrib/llvm/tools/lldb/source/Core/FileLineResolver.cpp stable/12/contrib/llvm/tools/lldb/source/Core/FileSpecList.cpp stable/12/contrib/llvm/tools/lldb/source/Core/FormatEntity.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Core/Listener.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Mangled.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Module.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ModuleList.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Opcode.cpp stable/12/contrib/llvm/tools/lldb/source/Core/PluginManager.cpp stable/12/contrib/llvm/tools/lldb/source/Core/RegisterValue.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Scalar.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Section.cpp stable/12/contrib/llvm/tools/lldb/source/Core/SourceManager.cpp stable/12/contrib/llvm/tools/lldb/source/Core/Value.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObject.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectCast.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectChild.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectDynamicValue.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectList.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectSyntheticFilter.cpp stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectVariable.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/FormatManager.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/StringPrinter.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeFormat.cpp stable/12/contrib/llvm/tools/lldb/source/DataFormatters/ValueObjectPrinter.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/VectorType.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/DWARFExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/DiagnosticManager.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/ExpressionSourceCode.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/ExpressionVariable.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/FunctionCaller.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/IRDynamicChecks.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRExecutionUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRInterpreter.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/IRMemoryMap.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/LLVMUserExpression.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/Materializer.cpp stable/12/contrib/llvm/tools/lldb/source/Expression/REPL.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/UserExpression.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/Editline.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/File.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/Host.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/MainLoop.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/MonitoringProcessLauncher.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeRegisterContext.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/PseudoTerminal.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/Symbols.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/TCPSocket.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/TaskPool.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/Terminal.cpp stable/12/contrib/llvm/tools/lldb/source/Host/common/UDPSocket.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/XML.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/freebsd/Host.cpp stable/12/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/netbsd/Host.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/netbsd/HostInfoNetBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/openbsd/Host.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/FileSystem.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/HostInfoPosix.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/HostThreadPosix.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/PipePosix.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Initialization/SystemInitializerCommon.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandAlias.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandInterpreter.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObject.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectRegexCommand.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.h stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandReturnObject.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupBoolean.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFormat.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupPlatform.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupVariable.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupWatchpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValue.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArch.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArgs.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArray.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueBoolean.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueChar.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueDictionary.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueEnumeration.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpec.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpecLIst.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormat.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormatEntity.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueLanguage.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValuePathMappings.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueProperties.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueSInt64.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueString.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUUID.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/Options.cpp stable/12/contrib/llvm/tools/lldb/source/Interpreter/Property.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/MainThreadChecker/MainThreadCheckerRuntime.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/UBSan/UBSanRuntime.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSError.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSException.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptScriptGroup.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFString.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/DarwinProcessLauncher.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/MachException.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadDarwin.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadListDarwin.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/POSIXStopInfo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIX.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/CrashReason.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryThread.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/InstructionUtils.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ThreadMemory.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonExceptionState.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DIERef.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DIERef.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDataExtractor.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDataExtractor.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAbbrev.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfo.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDeclContext.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/NameToDIE.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwoDwp.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwoDwp.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/UniqueDWARFASTType.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/ArmUnwindInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/Block.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangASTContext.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangASTImporter.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/CompactUnwindInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/CompileUnit.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/CompilerType.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/DWARFCallFrameInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Declaration.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/FuncUnwinders.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Function.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/GoASTContext.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/LineEntry.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/LineTable.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/ObjectFile.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Symbol.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/SymbolFile.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/SymbolVendor.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Symtab.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Type.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/TypeList.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/TypeMap.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/UnwindPlan.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/UnwindTable.cpp stable/12/contrib/llvm/tools/lldb/source/Symbol/Variable.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ABI.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ExecutionContext.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Memory.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ModuleCache.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Target/ObjCLanguageRuntime.cpp stable/12/contrib/llvm/tools/lldb/source/Target/PathMappingList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Platform.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Process.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Target/RegisterContext.cpp stable/12/contrib/llvm/tools/lldb/source/Target/SectionLoadHistory.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Target/SectionLoadList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StackFrame.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StackFrameList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StackID.cpp stable/12/contrib/llvm/tools/lldb/source/Target/StopInfo.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Target.cpp stable/12/contrib/llvm/tools/lldb/source/Target/TargetList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/Thread.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadList.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlan.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanBase.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunction.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallOnFunctionExit.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallUserExpression.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanPython.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanRunToAddress.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanShouldStopHere.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInRange.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInstruction.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOut.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverRange.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepRange.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepThrough.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepUntil.cpp stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanTracer.cpp stable/12/contrib/llvm/tools/lldb/source/Target/UnixSignals.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/ArchSpec.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/ConstString.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/DataBufferHeap.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/DataEncoder.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/DataExtractor.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/FastDemangle.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/FileSpec.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/JSON.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/Log.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/RegularExpression.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/SelectHelper.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/SharingPtr.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/Status.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/Stream.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/StringExtractor.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.cpp stable/12/contrib/llvm/tools/lldb/source/Utility/StructuredData.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/TildeExpressionResolver.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/UUID.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/VASprintf.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/VMRange.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/driver/Driver.cpp stable/12/contrib/llvm/tools/lldb/tools/driver/Driver.h stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdBreak.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdExec.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdExec.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSymbol.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSymbol.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTarget.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfo.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMain.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMgr.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIReadMe.txt (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilSingletonHelper.h (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/LLDBServerUtilities.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/lldb-gdbserver.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/lldb-platform.cpp (contents, props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/lldb-server.cpp (contents, props changed) stable/12/contrib/llvm/tools/lli/RemoteJITUtils.h (contents, props changed) stable/12/contrib/llvm/tools/lli/lli.cpp stable/12/contrib/llvm/tools/llvm-ar/llvm-ar.cpp stable/12/contrib/llvm/tools/llvm-as/llvm-as.cpp stable/12/contrib/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp stable/12/contrib/llvm/tools/llvm-cov/CodeCoverage.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageExporterJson.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageFilters.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageFilters.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageReport.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageReport.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageSummaryInfo.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageViewOptions.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/RenderingSupport.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageView.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageView.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageViewHTML.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageViewText.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/SourceCoverageViewText.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/TestingSupport.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cov/llvm-cov.cpp stable/12/contrib/llvm/tools/llvm-cxxdump/Error.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cxxdump/llvm-cxxdump.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-diff/DifferenceEngine.cpp stable/12/contrib/llvm/tools/llvm-dis/llvm-dis.cpp stable/12/contrib/llvm/tools/llvm-dwarfdump/Statistics.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp stable/12/contrib/llvm/tools/llvm-extract/llvm-extract.cpp stable/12/contrib/llvm/tools/llvm-link/llvm-link.cpp stable/12/contrib/llvm/tools/llvm-lto/llvm-lto.cpp stable/12/contrib/llvm/tools/llvm-lto2/llvm-lto2.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-mc/llvm-mc.cpp stable/12/contrib/llvm/tools/llvm-modextract/llvm-modextract.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-nm/llvm-nm.cpp stable/12/contrib/llvm/tools/llvm-objcopy/Object.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-objcopy/Object.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-objdump/COFFDump.cpp stable/12/contrib/llvm/tools/llvm-objdump/ELFDump.cpp stable/12/contrib/llvm/tools/llvm-objdump/MachODump.cpp stable/12/contrib/llvm/tools/llvm-objdump/WasmDump.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp stable/12/contrib/llvm/tools/llvm-objdump/llvm-objdump.h stable/12/contrib/llvm/tools/llvm-pdbutil/Analyze.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/InputFile.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/InputFile.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyBuiltinDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyClassLayoutGraphicalDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyExternalSymbolDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyFunctionDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypedefDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyVariableDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/StreamUtil.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/StreamUtil.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-profdata/llvm-profdata.cpp stable/12/contrib/llvm/tools/llvm-readobj/ARMEHABIPrinter.h stable/12/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp stable/12/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-readobj/ELFDumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/MachODumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/ObjDumper.cpp stable/12/contrib/llvm/tools/llvm-readobj/ObjDumper.h stable/12/contrib/llvm/tools/llvm-readobj/StackMapPrinter.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-readobj/WasmDumper.cpp (contents, props changed) stable/12/contrib/llvm/tools/llvm-readobj/llvm-readobj.cpp stable/12/contrib/llvm/tools/llvm-readobj/llvm-readobj.h stable/12/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp stable/12/contrib/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp stable/12/contrib/llvm/tools/llvm-xray/func-id-helper.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-xray/xray-account.h (contents, props changed) stable/12/contrib/llvm/tools/llvm-xray/xray-graph.h (contents, props changed) stable/12/contrib/llvm/tools/opt/BreakpointPrinter.cpp stable/12/contrib/llvm/tools/opt/BreakpointPrinter.h stable/12/contrib/llvm/tools/opt/Debugify.cpp (contents, props changed) stable/12/contrib/llvm/tools/opt/NewPMDriver.cpp stable/12/contrib/llvm/tools/opt/NewPMDriver.h stable/12/contrib/llvm/tools/opt/PassPrinters.cpp stable/12/contrib/llvm/tools/opt/PassPrinters.h stable/12/contrib/llvm/tools/opt/opt.cpp stable/12/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp stable/12/contrib/llvm/utils/TableGen/AsmWriterEmitter.cpp stable/12/contrib/llvm/utils/TableGen/CTagsEmitter.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.h stable/12/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenInstruction.h stable/12/contrib/llvm/utils/TableGen/CodeGenIntrinsics.h stable/12/contrib/llvm/utils/TableGen/CodeGenMapTable.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenRegisters.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenRegisters.h stable/12/contrib/llvm/utils/TableGen/CodeGenSchedule.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenSchedule.h stable/12/contrib/llvm/utils/TableGen/CodeGenTarget.cpp stable/12/contrib/llvm/utils/TableGen/CodeGenTarget.h stable/12/contrib/llvm/utils/TableGen/DAGISelEmitter.cpp stable/12/contrib/llvm/utils/TableGen/DAGISelMatcher.h stable/12/contrib/llvm/utils/TableGen/DAGISelMatcherGen.cpp stable/12/contrib/llvm/utils/TableGen/DAGISelMatcherOpt.cpp stable/12/contrib/llvm/utils/TableGen/DFAPacketizerEmitter.cpp stable/12/contrib/llvm/utils/TableGen/DisassemblerEmitter.cpp stable/12/contrib/llvm/utils/TableGen/FastISelEmitter.cpp stable/12/contrib/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp stable/12/contrib/llvm/utils/TableGen/GlobalISelEmitter.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/InfoByHwMode.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/InfoByHwMode.h (contents, props changed) stable/12/contrib/llvm/utils/TableGen/InstrDocsEmitter.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp stable/12/contrib/llvm/utils/TableGen/IntrinsicEmitter.cpp stable/12/contrib/llvm/utils/TableGen/PseudoLoweringEmitter.cpp stable/12/contrib/llvm/utils/TableGen/RegisterBankEmitter.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/RegisterInfoEmitter.cpp stable/12/contrib/llvm/utils/TableGen/SearchableTableEmitter.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp stable/12/contrib/llvm/utils/TableGen/SubtargetFeatureInfo.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/SubtargetFeatureInfo.h (contents, props changed) stable/12/contrib/llvm/utils/TableGen/TableGen.cpp stable/12/contrib/llvm/utils/TableGen/TableGenBackends.h stable/12/contrib/llvm/utils/TableGen/X86DisassemblerShared.h stable/12/contrib/llvm/utils/TableGen/X86DisassemblerTables.cpp stable/12/contrib/llvm/utils/TableGen/X86DisassemblerTables.h stable/12/contrib/llvm/utils/TableGen/X86EVEX2VEXTablesEmitter.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/X86FoldTablesEmitter.cpp (contents, props changed) stable/12/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp stable/12/contrib/llvm/utils/TableGen/X86RecognizableInstr.h stable/12/etc/mtree/BSD.debug.dist stable/12/etc/mtree/BSD.usr.dist stable/12/lib/Makefile stable/12/lib/clang/freebsd_cc_version.h stable/12/lib/clang/headers/Makefile stable/12/lib/clang/include/clang/Basic/Version.inc stable/12/lib/clang/include/clang/Config/config.h stable/12/lib/clang/include/lld/Common/Version.inc stable/12/lib/clang/include/lldb/Host/Config.h stable/12/lib/clang/include/llvm/Config/config.h stable/12/lib/clang/include/llvm/Config/llvm-config.h stable/12/lib/clang/include/llvm/Support/VCSRevision.h stable/12/lib/clang/libclang/Makefile stable/12/lib/clang/liblldb/Makefile stable/12/lib/clang/libllvm/Makefile stable/12/lib/clang/libllvmminimal/Makefile stable/12/lib/libc++/Makefile stable/12/lib/libc++experimental/Makefile stable/12/lib/libclang_rt/Makefile stable/12/lib/libclang_rt/Makefile.inc stable/12/lib/libclang_rt/asan/Makefile stable/12/lib/libclang_rt/asan_dynamic/Makefile stable/12/lib/libclang_rt/include/Makefile stable/12/lib/libclang_rt/safestack/Makefile stable/12/lib/libclang_rt/stats/Makefile stable/12/lib/libclang_rt/tsan/Makefile stable/12/lib/libclang_rt/tsan_cxx/Makefile stable/12/lib/libclang_rt/ubsan_standalone/Makefile stable/12/share/mk/bsd.sys.mk stable/12/share/mk/src.opts.mk stable/12/sys/conf/files stable/12/sys/conf/kern.mk stable/12/sys/conf/kern.pre.mk stable/12/sys/conf/ldscript.i386 stable/12/sys/i386/i386/locore.s stable/12/sys/modules/fxp/Makefile stable/12/tools/build/mk/OptionalObsoleteFiles.inc stable/12/usr.bin/clang/Makefile stable/12/usr.bin/clang/bugpoint/bugpoint.1 stable/12/usr.bin/clang/clang/Makefile stable/12/usr.bin/clang/clang/clang.1 stable/12/usr.bin/clang/llc/llc.1 stable/12/usr.bin/clang/lld/Makefile stable/12/usr.bin/clang/lli/Makefile stable/12/usr.bin/clang/lli/lli.1 stable/12/usr.bin/clang/llvm-ar/llvm-ar.1 stable/12/usr.bin/clang/llvm-as/llvm-as.1 stable/12/usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1 stable/12/usr.bin/clang/llvm-cov/llvm-cov.1 stable/12/usr.bin/clang/llvm-diff/llvm-diff.1 stable/12/usr.bin/clang/llvm-dis/llvm-dis.1 stable/12/usr.bin/clang/llvm-dwarfdump/llvm-dwarfdump.1 stable/12/usr.bin/clang/llvm-extract/llvm-extract.1 stable/12/usr.bin/clang/llvm-link/llvm-link.1 stable/12/usr.bin/clang/llvm-nm/llvm-nm.1 stable/12/usr.bin/clang/llvm-objcopy/Makefile stable/12/usr.bin/clang/llvm-pdbutil/Makefile stable/12/usr.bin/clang/llvm-pdbutil/llvm-pdbutil.1 stable/12/usr.bin/clang/llvm-profdata/llvm-profdata.1 stable/12/usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1 stable/12/usr.bin/clang/llvm-tblgen/Makefile stable/12/usr.bin/clang/llvm-tblgen/llvm-tblgen.1 stable/12/usr.bin/clang/llvm-xray/Makefile stable/12/usr.bin/clang/opt/Makefile stable/12/usr.bin/clang/opt/opt.1 Directory Properties: stable/12/ (props changed) stable/12/contrib/compiler-rt/include/sanitizer/allocator_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/coverage_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/dfsan_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/esan_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/hwasan_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/lsan_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/tsan_interface.h (props changed) stable/12/contrib/compiler-rt/include/sanitizer/tsan_interface_atomic.h (props changed) stable/12/contrib/compiler-rt/lib/BlocksRuntime/Block.h (props changed) stable/12/contrib/compiler-rt/lib/BlocksRuntime/Block_private.h (props changed) stable/12/contrib/compiler-rt/lib/BlocksRuntime/data.c (props changed) stable/12/contrib/compiler-rt/lib/BlocksRuntime/runtime.c (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_activation.cc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_activation.h (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_activation_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_fuchsia.cc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_init_version.h (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_interface.inc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_premap_shadow.cc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_premap_shadow.h (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_scariness_score.h (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_suppressions.cc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_suppressions.h (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_win_dynamic_runtime_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/asan/asan_win_weak_interception.cc (props changed) stable/12/contrib/compiler-rt/lib/asan/weak_symbols.txt (props changed) stable/12/contrib/compiler-rt/lib/builtins/README.txt (props changed) stable/12/contrib/compiler-rt/lib/builtins/aarch64/chkstk.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/absvdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/absvsi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/absvti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/adddf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/addsf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/addtf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/addvdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/addvsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/addvti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/apple_versioning.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/adddf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/addsf3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/addsf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmpeq_check_nan.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmpeq_check_nan.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_dcmp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_div0.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_drsub.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_fcmp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_frsub.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_idivmod.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_ldivmod.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_memcmp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_memcpy.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_memmove.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_memset.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_uidivmod.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/aeabi_uldivmod.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/bswapdi2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/bswapsi2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/clzdi2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/clzsi2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/comparesf2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/divdf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/divmodsi4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/divsf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/divsi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/eqdf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/eqsf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/extendsfdf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/fixdfsivfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/fixsfsivfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/fixunsdfsivfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/fixunssfsivfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/floatsidfvfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/floatsisfvfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/floatunssidfvfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/floatunssisfvfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/gedf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/gesf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/gtdf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/gtsf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/ledf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/lesf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/ltdf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/ltsf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/modsi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/muldf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/mulsf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/nedf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/negdf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/negsf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/nesf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/restore_vfp_d8_d15_regs.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/save_vfp_d8_d15_regs.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/subdf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/subsf3vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/switch16.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/switch32.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/switch8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/switchu8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync-ops.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_add_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_add_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_and_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_and_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_max_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_max_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_min_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_min_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_nand_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_nand_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_or_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_or_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_sub_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_sub_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umax_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umax_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umin_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umin_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_xor_4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_xor_8.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/sync_synchronize.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/truncdfsf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/udivmodsi4.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/udivsi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/umodsi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/unorddf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/arm/unordsf2vfp.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/ashldi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ashlti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ashrdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ashrti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/assembly.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic_flag_clear.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic_flag_clear_explicit.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic_flag_test_and_set.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic_flag_test_and_set_explicit.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic_signal_fence.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/atomic_thread_fence.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/bswapdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/bswapsi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/clzsi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/clzti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/cmpdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/cmpti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/comparedf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/comparesf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/comparetf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ctzsi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ctzti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divdc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divdf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divmoddi4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divmodsi4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divsc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divsf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divtc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divtf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/divxc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/enable_execute_stack.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/eprintf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/extenddftf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/extendhfsf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/extendsfdf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/extendsftf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ffsdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ffssi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ffsti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixdfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixdfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixdfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixsfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixsfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixsfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixtfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixtfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixtfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunsdfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunsdfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunsdfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunssfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunssfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunssfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunstfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunstfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunstfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunsxfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunsxfsi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixunsxfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixxfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fixxfti.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatdidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatdisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatditf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatdixf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatsidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatsisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatsitf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floattidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floattisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floattitf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floattixf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatundidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatundisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatunditf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatundixf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatunsidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatunsisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatunsitf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatuntidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatuntisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatuntitf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/floatuntixf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_add_impl.inc (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_extend.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_extend_impl.inc (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_fixint_impl.inc (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_fixuint_impl.inc (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_lib.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_mul_impl.inc (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_trunc.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/fp_trunc_impl.inc (props changed) stable/12/contrib/compiler-rt/lib/builtins/gcc_personality_v0.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/ashldi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/ashrdi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/chkstk.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/chkstk2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/divdi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/floatdidf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/floatdisf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/floatdixf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/floatundidf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/floatundisf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/floatundixf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/lshrdi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/moddi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/muldi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/udivdi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/i386/umoddi3.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/int_endianness.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/int_lib.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/int_math.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/int_util.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/int_util.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/lshrdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/lshrti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mingw_fixfloat.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/moddi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/modsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/modti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/muldc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/muldf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/muldi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulodi4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulosi4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/muloti4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulsc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulsf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/multf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/multi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulvdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulvsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulvti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/mulxc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negdf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negsf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negvdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negvsi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/negvti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/paritydi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/paritysi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/parityti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/popcountdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/popcountsi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/popcountti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/powidf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/powisf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/powitf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/powixf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/DD.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/divtc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/fixtfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/fixunstfdi.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/floatditf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/floatunditf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/gcc_qadd.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/gcc_qdiv.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/gcc_qmul.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/gcc_qsub.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/multc3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/restFP.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/ppc/saveFP.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/subdf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/subsf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/subtf3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/subvdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/subvsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/subvti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/trampoline_setup.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/truncdfhf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/truncdfsf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/truncsfhf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/trunctfdf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/trunctfsf2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ucmpdi2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/ucmpti2.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/udivdi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/udivmoddi4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/udivmodsi4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/udivmodti4.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/udivsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/udivti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/umoddi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/umodsi3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/umodti3.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/unwind-ehabi-helpers.h (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/chkstk.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/chkstk2.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/floatdidf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/floatdisf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/floatdixf.c (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/floatundidf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/floatundisf.S (props changed) stable/12/contrib/compiler-rt/lib/builtins/x86_64/floatundixf.S (props changed) stable/12/contrib/compiler-rt/lib/dfsan/dfsan.h (props changed) stable/12/contrib/compiler-rt/lib/dfsan/dfsan_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/dfsan/dfsan_interceptors.cc (props changed) stable/12/contrib/compiler-rt/lib/dfsan/dfsan_platform.h (props changed) stable/12/contrib/compiler-rt/lib/dfsan/libc_ubuntu1404_abilist.txt (props changed) stable/12/contrib/compiler-rt/lib/esan/cache_frag.cpp (props changed) stable/12/contrib/compiler-rt/lib/esan/cache_frag.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_circular_buffer.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_flags.cpp (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_flags.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_hashtable.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_interface.cpp (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_interface_internal.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_linux.cpp (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_shadow.h (props changed) stable/12/contrib/compiler-rt/lib/esan/esan_sideline.h (props changed) stable/12/contrib/compiler-rt/lib/esan/working_set.cpp (props changed) stable/12/contrib/compiler-rt/lib/esan/working_set.h (props changed) stable/12/contrib/compiler-rt/lib/esan/working_set_posix.cpp (props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_allocator.h (props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_blacklist.txt (props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_flags.h (props changed) stable/12/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.h (props changed) stable/12/contrib/compiler-rt/lib/lsan/lsan_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/lsan/lsan_linux.cc (props changed) stable/12/contrib/compiler-rt/lib/lsan/lsan_mac.cc (props changed) stable/12/contrib/compiler-rt/lib/lsan/lsan_preinit.cc (props changed) stable/12/contrib/compiler-rt/lib/lsan/weak_symbols.txt (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_allocator.h (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_chained_origin_depot.cc (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_chained_origin_depot.h (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_origin.h (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_poisoning.h (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_thread.cc (props changed) stable/12/contrib/compiler-rt/lib/msan/msan_thread.h (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfiling.c (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingBuffer.c (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingInternal.h (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingNameVar.c (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingPlatformOther.c (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingRuntime.cc (props changed) stable/12/contrib/compiler-rt/lib/profile/InstrProfilingWriter.c (props changed) stable/12/contrib/compiler-rt/lib/profile/WindowsMMap.c (props changed) stable/12/contrib/compiler-rt/lib/profile/WindowsMMap.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sancov_begin.S (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sancov_end.S (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sancov_flags.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sancov_flags.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sancov_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_addrhashmap.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_checks.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_interface.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_asm.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_mips.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_bvgraph.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_format.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interface_posix.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_interface.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dll_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dynamic_runtime_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_sections.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_weak_interception.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_dbghelp.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector1.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector_interface.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_errno.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_errno_codes.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_file.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_freebsd.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_mips64.S (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_x86_64.S (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac_libcdep.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_persistent_allocator.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_persistent_allocator.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_linux.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_linux.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_signal_interceptors.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_solaris.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepotbase.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_libcdep.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_mac.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_suppressions.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_internal.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libbacktrace.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libbacktrace.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_aarch64.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_arm.inc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_termination.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_defs.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_dynamic_runtime_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_symbolize.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cc (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/ar_to_bc.sh (props changed) stable/12/contrib/compiler-rt/lib/sanitizer_common/weak_symbols.txt (props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_crc32.cpp (props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_crc32.h (props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_flags.h (props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/scudo/scudo_utils.h (props changed) stable/12/contrib/compiler-rt/lib/stats/stats.h (props changed) stable/12/contrib/compiler-rt/lib/stats/stats_client.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/dd/dd_interceptors.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/dd/dd_rtl.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/dd/dd_rtl.h (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_dense_alloc.h (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_external.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_flags.inc (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_ignoreset.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_ignoreset.h (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.h (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_ppc_regs.h (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_preinit.cc (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_aarch64.S (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_mips64.S (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_ppc64.S (props changed) stable/12/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_proc.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_diag_standalone.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_flags.h (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_init.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_init.h (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_init_standalone.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_signals_standalone.h (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_type_hash_win.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_win_dll_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/ubsan_win_dynamic_runtime_thunk.cc (props changed) stable/12/contrib/compiler-rt/lib/ubsan/weak_symbols.txt (props changed) stable/12/contrib/compiler-rt/lib/xray/weak_symbols.txt (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_always_instrument.txt (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_defs.h (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_fdr_logging.h (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_never_instrument.txt (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_powerpc64.inc (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_AArch64.S (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_arm.S (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_mips.S (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_mips64.S (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_powerpc64.cc (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_trampoline_powerpc64_asm.S (props changed) stable/12/contrib/compiler-rt/lib/xray/xray_tsc.h (props changed) stable/12/contrib/libc++/include/__bsd_locale_defaults.h (props changed) stable/12/contrib/libc++/include/complex.h (props changed) stable/12/contrib/libc++/include/ctype.h (props changed) stable/12/contrib/libc++/include/errno.h (props changed) stable/12/contrib/libc++/include/inttypes.h (props changed) stable/12/contrib/libc++/include/limits.h (props changed) stable/12/contrib/libc++/include/locale.h (props changed) stable/12/contrib/libc++/include/setjmp.h (props changed) stable/12/contrib/libc++/include/stdbool.h (props changed) stable/12/contrib/libc++/include/stddef.h (props changed) stable/12/contrib/libc++/include/stdint.h (props changed) stable/12/contrib/libc++/include/stdlib.h (props changed) stable/12/contrib/libc++/include/string.h (props changed) stable/12/contrib/libc++/include/wchar.h (props changed) stable/12/contrib/libc++/include/wctype.h (props changed) stable/12/contrib/libc++/src/algorithm.cpp (props changed) stable/12/contrib/libc++/src/condition_variable.cpp (props changed) stable/12/contrib/libc++/src/debug.cpp (props changed) stable/12/contrib/libc++/src/exception.cpp (props changed) stable/12/contrib/libc++/src/functional.cpp (props changed) stable/12/contrib/libc++/src/hash.cpp (props changed) stable/12/contrib/libc++/src/include/atomic_support.h (props changed) stable/12/contrib/libc++/src/include/refstring.h (props changed) stable/12/contrib/libc++/src/ios.cpp (props changed) stable/12/contrib/libc++/src/iostream.cpp (props changed) stable/12/contrib/libc++/src/random.cpp (props changed) stable/12/contrib/libc++/src/regex.cpp (props changed) stable/12/contrib/libc++/src/stdexcept.cpp (props changed) stable/12/contrib/libc++/src/string.cpp (props changed) stable/12/contrib/libc++/src/strstream.cpp (props changed) stable/12/contrib/libc++/src/thread.cpp (props changed) stable/12/contrib/libc++/src/valarray.cpp (props changed) stable/12/contrib/libc++/src/variant.cpp (props changed) stable/12/contrib/libc++/src/vector.cpp (props changed) stable/12/contrib/llvm/include/llvm-c/ErrorHandling.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/AllocatorList.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/BitmaskEnum.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/BreadthFirstIterator.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/PointerEmbeddedInt.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/PointerSumType.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/PriorityWorklist.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/Sequence.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/ilist_base.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/ilist_iterator.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/ilist_node_base.h (props changed) stable/12/contrib/llvm/include/llvm/ADT/simple_ilist.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/CFLAliasAnalysisUtils.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/CmpInstAnalysis.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/GlobalsModRef.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/IndirectCallSiteVisitor.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/ModuleSummaryAnalysis.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/ScalarEvolutionAliasAnalysis.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/ScopedNoAliasAA.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/TypeBasedAliasAnalysis.h (props changed) stable/12/contrib/llvm/include/llvm/Analysis/ValueLatticeUtils.h (props changed) stable/12/contrib/llvm/include/llvm/AsmParser/SlotMapping.h (props changed) stable/12/contrib/llvm/include/llvm/Bitcode/BitcodeReader.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/ExpandReductions.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/FaultMaps.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelWorkList.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/GlobalISel/Types.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/LiveStacks.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/LowLevelType.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MachineCombinerPattern.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/MachineInstrBundleIterator.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/ScheduleDAGMutation.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGAddressAnalysis.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/TailDuplicator.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/UnreachableBlockElim.h (props changed) stable/12/contrib/llvm/include/llvm/CodeGen/WinEHFuncInfo.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewError.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugInlineeLinesSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSymbolRVASubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugUnknownSubsection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/EnumTables.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/Formatters.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/FunctionId.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/GUID.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/Line.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/RecordName.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SimpleTypeSerializer.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/StringsAndChecksums.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDeserializer.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumpDelegate.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecordMapping.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolSerializer.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolVisitorCallbackPipeline.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolVisitorCallbacks.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolVisitorDelegate.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeCollection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecordMapping.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeSymbolEmitter.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeTableCollection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAttribute.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugMacro.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFGdbIndex.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFSection.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnitIndex.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/MSF/IMSFFile.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/MSF/MSFError.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/MSF/MappedBlockStream.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIADataStream.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumTables.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAError.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIALineNumber.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASourceFile.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIATable.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/GenericError.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBDataStream.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBEnumChildren.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBLineNumber.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSourceFile.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBTable.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleList.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/EnumTables.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/Formatters.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GSIStreamBuilder.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/Hash.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/ISectionContribVisitor.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeBuiltinSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumModules.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumTypes.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeExeSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBFile.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTable.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PublicsStream.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawError.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/SymbolStream.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiHashing.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDB.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBContext.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymDumper.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolExe.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/PDB/UDTLayout.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/Symbolize/DIPrinter.h (props changed) stable/12/contrib/llvm/include/llvm/DebugInfo/Symbolize/SymbolizableModule.h (props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h (props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/Orc/RawByteChannel.h (props changed) stable/12/contrib/llvm/include/llvm/ExecutionEngine/OrcMCJITReplacement.h (props changed) stable/12/contrib/llvm/include/llvm/FuzzMutate/IRMutator.h (props changed) stable/12/contrib/llvm/include/llvm/FuzzMutate/Operations.h (props changed) stable/12/contrib/llvm/include/llvm/FuzzMutate/Random.h (props changed) stable/12/contrib/llvm/include/llvm/FuzzMutate/RandomIRBuilder.h (props changed) stable/12/contrib/llvm/include/llvm/IR/DerivedUser.h (props changed) stable/12/contrib/llvm/include/llvm/IR/GlobalIFunc.h (props changed) stable/12/contrib/llvm/include/llvm/IR/GlobalIndirectSymbol.h (props changed) stable/12/contrib/llvm/include/llvm/IR/ModuleSlotTracker.h (props changed) stable/12/contrib/llvm/include/llvm/IR/SafepointIRVerifier.h (props changed) stable/12/contrib/llvm/include/llvm/LTO/LTOBackend.h (props changed) stable/12/contrib/llvm/include/llvm/LTO/legacy/LTOCodeGenerator.h (props changed) stable/12/contrib/llvm/include/llvm/LTO/legacy/LTOModule.h (props changed) stable/12/contrib/llvm/include/llvm/LTO/legacy/UpdateCompilerUsed.h (props changed) stable/12/contrib/llvm/include/llvm/Linker/IRMover.h (props changed) stable/12/contrib/llvm/include/llvm/MC/LaneBitmask.h (props changed) stable/12/contrib/llvm/include/llvm/MC/MCAsmInfoWasm.h (props changed) stable/12/contrib/llvm/include/llvm/MC/MCDisassembler/MCDisassembler.h (props changed) stable/12/contrib/llvm/include/llvm/MC/MCParser/MCAsmParserUtils.h (props changed) stable/12/contrib/llvm/include/llvm/MC/MCSymbolCOFF.h (props changed) stable/12/contrib/llvm/include/llvm/MC/MCSymbolELF.h (props changed) stable/12/contrib/llvm/include/llvm/Object/ArchiveWriter.h (props changed) stable/12/contrib/llvm/include/llvm/Object/COFFModuleDefinition.h (props changed) stable/12/contrib/llvm/include/llvm/Object/IRSymtab.h (props changed) stable/12/contrib/llvm/include/llvm/Object/StackMapParser.h (props changed) stable/12/contrib/llvm/include/llvm/Object/SymbolSize.h (props changed) stable/12/contrib/llvm/include/llvm/Object/WindowsResource.h (props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLDebugSections.h (props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLSymbols.h (props changed) stable/12/contrib/llvm/include/llvm/ObjectYAML/ObjectYAML.h (props changed) stable/12/contrib/llvm/include/llvm/Support/ARMAttributeParser.h (props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryItemStream.h (props changed) stable/12/contrib/llvm/include/llvm/Support/BinaryStreamError.h (props changed) stable/12/contrib/llvm/include/llvm/Support/COM.h (props changed) stable/12/contrib/llvm/include/llvm/Support/Chrono.h (props changed) stable/12/contrib/llvm/include/llvm/Support/FormatCommon.h (props changed) stable/12/contrib/llvm/include/llvm/Support/FormatProviders.h (props changed) stable/12/contrib/llvm/include/llvm/Support/GlobPattern.h (props changed) stable/12/contrib/llvm/include/llvm/Support/NativeFormatting.h (props changed) stable/12/contrib/llvm/include/llvm/Support/Printable.h (props changed) stable/12/contrib/llvm/include/llvm/Support/ReverseIteration.h (props changed) stable/12/contrib/llvm/include/llvm/Support/SHA1.h (props changed) stable/12/contrib/llvm/include/llvm/Support/Solaris/sys/regset.h (props changed) stable/12/contrib/llvm/include/llvm/Support/TarWriter.h (props changed) stable/12/contrib/llvm/include/llvm/Support/TrigramIndex.h (props changed) stable/12/contrib/llvm/include/llvm/Support/TypeName.h (props changed) stable/12/contrib/llvm/include/llvm/Support/raw_sha1_ostream.h (props changed) stable/12/contrib/llvm/include/llvm/Support/thread.h (props changed) stable/12/contrib/llvm/include/llvm/ToolDrivers/llvm-dlltool/DlltoolDriver.h (props changed) stable/12/contrib/llvm/include/llvm/ToolDrivers/llvm-lib/LibDriver.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Coroutines.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/CalledValuePropagation.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/ConstantMerge.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/CrossDSOCFI.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/ElimAvailExtern.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/FunctionAttrs.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/GlobalDCE.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/GlobalOpt.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/GlobalSplit.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/InferFunctionAttrs.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/Internalize.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/PartialInlining.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/SCCP.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/StripDeadPrototypes.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/IPO/ThinLTOBitcodeWriter.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/ADCE.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/BDCE.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/DCE.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/DeadStoreElimination.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/DivRemPairs.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/Float2Int.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/GuardWidening.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/IVUsersPrinter.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/IndVarSimplify.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LICM.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopDeletion.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopDistribute.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopInstSimplify.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopLoadElimination.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopPredication.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopRotation.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopSimplifyCFG.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopSink.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopStrengthReduce.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LowerAtomic.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/NaryReassociate.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/RewriteStatepointsForGC.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/Sink.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Scalar/TailRecursionElimination.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/AddDiscriminators.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/BreakCriticalEdges.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/CallPromotionUtils.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/EscapeEnumerator.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/LCSSA.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/LibCallsShrinkWrap.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/LowerInvoke.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/LowerMemIntrinsics.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/Mem2Reg.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/NameAnonGlobals.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/SanitizerStats.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/SplitModule.h (props changed) stable/12/contrib/llvm/include/llvm/Transforms/Utils/VNCoercion.h (props changed) stable/12/contrib/llvm/include/llvm/WindowsManifest/WindowsManifestMerger.h (props changed) stable/12/contrib/llvm/include/llvm/WindowsResource/ResourceProcessor.h (props changed) stable/12/contrib/llvm/include/llvm/WindowsResource/ResourceScriptToken.h (props changed) stable/12/contrib/llvm/include/llvm/WindowsResource/ResourceScriptTokenList.h (props changed) stable/12/contrib/llvm/include/llvm/XRay/Graph.h (props changed) stable/12/contrib/llvm/include/llvm/XRay/InstrumentationMap.h (props changed) stable/12/contrib/llvm/include/llvm/XRay/Trace.h (props changed) stable/12/contrib/llvm/lib/Analysis/AliasAnalysisSummary.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/AssumptionCache.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/CallPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/CmpInstAnalysis.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/MemDerefPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/OptimizationRemarkEmitter.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/ScopedNoAliasAA.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/TypeMetadataUtils.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/ValueLattice.cpp (props changed) stable/12/contrib/llvm/lib/Analysis/ValueLatticeUtils.cpp (props changed) stable/12/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.h (props changed) stable/12/contrib/llvm/lib/Bitcode/Reader/ValueList.h (props changed) stable/12/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocStream.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/FEntryInserter.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/GlobalISel/GlobalISel.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/LiveRangeUtils.h (props changed) stable/12/contrib/llvm/lib/CodeGen/LiveStacks.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/LowLevelType.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/PostRAHazardRecognizer.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/SafeStackColoring.h (props changed) stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGTargetInfo.cpp (props changed) stable/12/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.h (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/CodeViewError.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/ContinuationRecordBuilder.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugInlineeLinesSubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugLinesSubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugSubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugSymbolRVASubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/EnumTables.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/Formatters.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/Line.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeIndex.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFGdbIndex.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/MSF/MSFError.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/MSF/MappedBlockStream.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIADataStream.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumDebugStreams.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumLineNumbers.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSourceFiles.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSymbols.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumTables.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAError.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIALineNumber.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASourceFile.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/DIA/DIATable.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/IPDBSourceFile.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleList.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/EnumTables.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/GlobalsStream.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/Hash.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/ModuleDebugStream.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeBuiltinSymbol.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeCompilandSymbol.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumModules.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumSymbol.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumTypes.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/NativeExeSymbol.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/PublicsStream.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/RawError.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/SymbolStream.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/TpiHashing.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDB.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBContext.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymDumper.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolBlock.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolExe.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolLabel.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolThunk.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/PDB/UDTLayout.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/Symbolize/DIPrinter.cpp (props changed) stable/12/contrib/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.h (props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp (props changed) stable/12/contrib/llvm/lib/ExecutionEngine/Orc/RPCUtils.cpp (props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp (props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.h (props changed) stable/12/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCheckerImpl.h (props changed) stable/12/contrib/llvm/lib/FuzzMutate/OpDescriptor.cpp (props changed) stable/12/contrib/llvm/lib/FuzzMutate/Operations.cpp (props changed) stable/12/contrib/llvm/lib/FuzzMutate/RandomIRBuilder.cpp (props changed) stable/12/contrib/llvm/lib/IR/MetadataImpl.h (props changed) stable/12/contrib/llvm/lib/IR/Statepoint.cpp (props changed) stable/12/contrib/llvm/lib/LTO/UpdateCompilerUsed.cpp (props changed) stable/12/contrib/llvm/lib/Linker/LinkDiagnosticInfo.h (props changed) stable/12/contrib/llvm/lib/MC/MCAsmInfoWasm.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCCodePadder.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCDisassembler/MCDisassembler.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCDisassembler/MCRelocationInfo.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCDisassembler/MCSymbolizer.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCInstrDesc.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCSectionWasm.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCSymbolELF.cpp (props changed) stable/12/contrib/llvm/lib/MC/MCWinEH.cpp (props changed) stable/12/contrib/llvm/lib/Object/Decompressor.cpp (props changed) stable/12/contrib/llvm/lib/ObjectYAML/CodeViewYAMLDebugSections.cpp (props changed) stable/12/contrib/llvm/lib/ObjectYAML/DWARFVisitor.cpp (props changed) stable/12/contrib/llvm/lib/ObjectYAML/DWARFYAML.cpp (props changed) stable/12/contrib/llvm/lib/ObjectYAML/MachOYAML.cpp (props changed) stable/12/contrib/llvm/lib/ObjectYAML/ObjectYAML.cpp (props changed) stable/12/contrib/llvm/lib/ObjectYAML/YAML.cpp (props changed) stable/12/contrib/llvm/lib/Support/BinaryStreamError.cpp (props changed) stable/12/contrib/llvm/lib/Support/BinaryStreamReader.cpp (props changed) stable/12/contrib/llvm/lib/Support/BinaryStreamWriter.cpp (props changed) stable/12/contrib/llvm/lib/Support/FormatVariadic.cpp (props changed) stable/12/contrib/llvm/lib/Support/GlobPattern.cpp (props changed) stable/12/contrib/llvm/lib/Support/JamCRC.cpp (props changed) stable/12/contrib/llvm/lib/Support/KnownBits.cpp (props changed) stable/12/contrib/llvm/lib/Support/LowLevelType.cpp (props changed) stable/12/contrib/llvm/lib/Support/MathExtras.cpp (props changed) stable/12/contrib/llvm/lib/Support/Options.cpp (props changed) stable/12/contrib/llvm/lib/Support/ScopedPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Support/ThreadPool.cpp (props changed) stable/12/contrib/llvm/lib/Support/TrigramIndex.cpp (props changed) stable/12/contrib/llvm/lib/Support/Unix/COM.inc (props changed) stable/12/contrib/llvm/lib/Support/Unix/DynamicLibrary.inc (props changed) stable/12/contrib/llvm/lib/Support/Windows/COM.inc (props changed) stable/12/contrib/llvm/lib/Support/Windows/Threading.inc (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.h (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.h (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64MacroFusion.h (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64PBQPRegAlloc.h (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUFrameLowering.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUMacroFusion.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUPTNote.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPURegAsmNames.inc.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/GCNIterativeScheduler.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUFixupKinds.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600FrameLowering.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600FrameLowering.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.h (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp (props changed) stable/12/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARC.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCExpandPseudos.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCFrameLowering.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCISelDAGToDAG.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCInstrInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCMachineFunctionInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCRegisterInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCSubtarget.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCSubtarget.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCTargetMachine.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCTargetMachine.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCTargetStreamer.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/ARCTargetTransformInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCAsmInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCAsmInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.h (props changed) stable/12/contrib/llvm/lib/Target/ARC/TargetInfo/ARCTargetInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMBasicBlockInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMCallLowering.h (props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMComputeBlockSize.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMMacroFusion.h (props changed) stable/12/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARM/ThumbRegisterInfo.h (props changed) stable/12/contrib/llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/ARM/Utils/ARMBaseInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRAsmPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRFrameLowering.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRFrameLowering.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRISelLowering.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRInstrInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRMCInstLower.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRMCInstLower.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRMachineFunctionInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRRelaxMemOperations.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRSelectionDAGInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRSubtarget.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRSubtarget.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRTargetMachine.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRTargetObjectFile.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/AVRTargetObjectFile.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/Disassembler/AVRDisassembler.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/InstPrinter/AVRInstPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/InstPrinter/AVRInstPrinter.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRFixupKinds.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRTargetStreamer.cpp (props changed) stable/12/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRTargetStreamer.h (props changed) stable/12/contrib/llvm/lib/Target/AVR/TargetInfo/AVRTargetInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFAsmPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFFrameLowering.cpp (props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFFrameLowering.h (props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFMCInstLower.cpp (props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFMCInstLower.h (props changed) stable/12/contrib/llvm/lib/Target/BPF/BPFTargetMachine.h (props changed) stable/12/contrib/llvm/lib/Target/BPF/InstPrinter/BPFInstPrinter.h (props changed) stable/12/contrib/llvm/lib/Target/BPF/TargetInfo/BPFTargetInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonBlockRanges.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepITypes.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonDepTimingClasses.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonGenExtract.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonOptimizeSZextends.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/HexagonTargetStreamer.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonFixupKinds.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCChecker.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCChecker.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCShuffler.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFCopy.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFDeadCode.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFGraph.h (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFRegisters.cpp (props changed) stable/12/contrib/llvm/lib/Target/Hexagon/RDFRegisters.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/InstPrinter/LanaiInstPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/InstPrinter/LanaiInstPrinter.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/Lanai.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiAluCode.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiCondCode.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiFrameLowering.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiFrameLowering.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiMCInstLower.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiMCInstLower.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiMachineFunctionInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiMachineFunctionInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiRegisterInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiRegisterInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiSelectionDAGInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiSelectionDAGInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiSubtarget.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiSubtarget.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiTargetMachine.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiTargetObjectFile.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiBaseInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiFixupKinds.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCAsmInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCAsmInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.cpp (props changed) stable/12/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.h (props changed) stable/12/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Mips/MipsCCState.cpp (props changed) stable/12/contrib/llvm/lib/Target/Mips/MipsCCState.h (props changed) stable/12/contrib/llvm/lib/Target/Mips/Relocation.txt (props changed) stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp (props changed) stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp (props changed) stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXPeephole.cpp (props changed) stable/12/contrib/llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2BaseInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2FixupKinds.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2AsmPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2MCInstLower.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.h (props changed) stable/12/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.cpp (props changed) stable/12/contrib/llvm/lib/Target/Nios2/TargetInfo/Nios2TargetInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCCCState.cpp (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCCCState.h (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.h (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCQPXLoadSplat.cpp (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCTOCRegDeps.cpp (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/PPCVSXCopy.cpp (props changed) stable/12/contrib/llvm/lib/Target/PowerPC/README_P9.txt (props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h (props changed) stable/12/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h (props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVSubtarget.cpp (props changed) stable/12/contrib/llvm/lib/Target/RISCV/RISCVTargetMachine.h (props changed) stable/12/contrib/llvm/lib/Target/RISCV/TargetInfo/RISCVTargetInfo.cpp (props changed) stable/12/contrib/llvm/lib/Target/Sparc/LeonPasses.cpp (props changed) stable/12/contrib/llvm/lib/Target/Sparc/LeonPasses.h (props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp (props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTDC.cpp (props changed) stable/12/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h (props changed) stable/12/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyFixupKinds.h (props changed) stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h (props changed) stable/12/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp (props changed) stable/12/contrib/llvm/lib/Target/X86/X86CallLowering.h (props changed) stable/12/contrib/llvm/lib/Target/X86/X86CallingConv.cpp (props changed) stable/12/contrib/llvm/lib/Target/X86/X86FixupSetCC.cpp (props changed) stable/12/contrib/llvm/lib/Target/X86/X86LegalizerInfo.h (props changed) stable/12/contrib/llvm/lib/Target/X86/X86MacroFusion.h (props changed) stable/12/contrib/llvm/lib/Target/X86/X86RegisterBankInfo.h (props changed) stable/12/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp (props changed) stable/12/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h (props changed) stable/12/contrib/llvm/lib/Target/XCore/XCoreTargetTransformInfo.h (props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroCleanup.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Coroutines/CoroInstr.h (props changed) stable/12/contrib/llvm/lib/Transforms/IPO/ElimAvailExtern.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/IPO/GlobalSplit.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/IPO/InferFunctionAttrs.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysisEvaluator.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/DivRemPairs.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/IVUsersPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopAccessAnalysisPrinter.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LoopPassManager.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Utils/NameAnonGlobals.cpp (props changed) stable/12/contrib/llvm/lib/Transforms/Utils/SanitizerStats.cpp (props changed) stable/12/contrib/llvm/lib/WindowsManifest/WindowsManifestMerger.cpp (props changed) stable/12/contrib/llvm/lib/XRay/InstrumentationMap.cpp (props changed) stable/12/contrib/llvm/tools/clang/include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/OSLog.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Analysis/BodyFarm.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/MemoryBufferCache.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/PragmaKinds.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/SanitizerBlacklist.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Basic/SanitizerSpecialCaseList.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/ConstantInitFuture.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTUDiagnostic.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Index/CodegenNameGenerator.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Lex/HeaderMapTypes.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Sema/CleanupInfo.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/MPIFunctionClassifier.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopUnrolling.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValVisitor.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/ASTDiff/ASTDiff.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/ASTDiff/ASTDiffInternal.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Core/Lookup.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/ASTSelection.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Extract/Extract.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringAction.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRuleRequirements.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRules.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRulesInternal.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringDiagnostic.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringOption.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringOptionVisitor.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringOptions.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringRuleContext.h (props changed) stable/12/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/SymbolOccurrences.h (props changed) stable/12/contrib/llvm/tools/clang/lib/AST/DataCollection.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/AST/ExprObjC.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/AST/Linkage.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Analysis/CodeInjector.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Analysis/OSLog.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/MemoryBufferCache.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/SanitizerBlacklist.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/SanitizerSpecialCaseList.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Le64.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Le64.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/MSP430.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/MSP430.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/PNaCl.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/PNaCl.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/SPIR.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/TCE.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/TCE.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/XCore.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Basic/Targets/XCore.h (props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/Address.h (props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/SanitizerMetadata.h (props changed) stable/12/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.h (props changed) stable/12/contrib/llvm/tools/clang/lib/CrossTU/CrossTranslationUnit.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/AVR.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/AVR.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Ananas.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Sparc.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/SystemZ.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/SystemZ.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/X86.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Contiki.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/DragonFly.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/DragonFly.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVCSetupApi.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Minix.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/Minix.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/TCE.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/TCE.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/XCore.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Driver/ToolChains/XCore.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Frontend/TestModuleFileExtension.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_cmath.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_complex_builtins.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_math_forward_declares.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/__stddef_max_align_t.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/adxintrin.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/arm64intr.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/armintr.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/htmintrin.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/inttypes.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/msa.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/s390intrin.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/stdatomic.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/vadefs.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Headers/vecintrin.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Index/CodegenNameGenerator.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Serialization/ModuleFileExtension.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.h (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIFunctionClassifier.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPITypes.h (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Core/Diagnostic.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Core/Lookup.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/FixIt.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/ASTSelection.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/ASTSelectionRequirements.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/SourceExtraction.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/SourceExtraction.h (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/RefactoringActions.cpp (props changed) stable/12/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/SymbolOccurrences.cpp (props changed) stable/12/contrib/llvm/tools/clang/utils/TableGen/ClangDataCollectorsEmitter.cpp (props changed) stable/12/contrib/llvm/tools/lld/CMakeLists.txt (props changed) stable/12/contrib/llvm/tools/lld/CODE_OWNERS.TXT (props changed) stable/12/contrib/llvm/tools/lld/COFF/MapFile.h (props changed) stable/12/contrib/llvm/tools/lld/COFF/MinGW.h (props changed) stable/12/contrib/llvm/tools/lld/Common/Memory.cpp (props changed) stable/12/contrib/llvm/tools/lld/Common/Reproduce.cpp (props changed) stable/12/contrib/llvm/tools/lld/Common/Threads.cpp (props changed) stable/12/contrib/llvm/tools/lld/Common/Version.cpp (props changed) stable/12/contrib/llvm/tools/lld/ELF/Arch/AVR.cpp (props changed) stable/12/contrib/llvm/tools/lld/ELF/Bits.h (props changed) stable/12/contrib/llvm/tools/lld/ELF/EhFrame.h (props changed) stable/12/contrib/llvm/tools/lld/ELF/Filesystem.h (props changed) stable/12/contrib/llvm/tools/lld/ELF/ScriptLexer.h (props changed) stable/12/contrib/llvm/tools/lld/ELF/ScriptParser.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Args.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/LLVM.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Memory.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Reproduce.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Threads.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Common/Version.inc.in (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/AbsoluteAtom.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/ArchiveLibraryFile.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Atom.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Error.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Node.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Pass.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/Reference.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/SharedLibraryAtom.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/SharedLibraryFile.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/Core/UndefinedAtom.h (props changed) stable/12/contrib/llvm/tools/lld/include/lld/ReaderWriter/YamlContext.h (props changed) stable/12/contrib/llvm/tools/lld/lib/CMakeLists.txt (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/CMakeLists.txt (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/DefinedAtom.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/Error.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/File.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/Reader.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/Resolver.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/SymbolTable.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/Core/Writer.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/CMakeLists.txt (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_arm.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_arm64.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_x86.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/Atoms.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/DebugInfo.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ExecutableAtoms.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/File.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/FlatNamespaceFile.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/GOTPass.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/LayoutPass.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFile.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryReader.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileYAML.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachOPasses.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ObjCPass.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/SectCreateFile.h (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ShimPass.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/StubsPass.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/TLVPass.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/WriterMachO.cpp (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/YAML/CMakeLists.txt (props changed) stable/12/contrib/llvm/tools/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp (props changed) stable/12/contrib/llvm/tools/lld/tools/lld/CMakeLists.txt (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBAttachInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpointName.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBExecutionContext.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBLanguageRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfoList.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBProcessInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBQueue.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBQueueItem.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBThreadCollection.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBThreadPlan.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBTrace.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBTraceOptions.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBTypeEnumMember.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBUnixSignals.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/API/SBVariablesOptions.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/DumpDataExtractor.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/StructuredDataImpl.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseMap.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeSTLVector.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultCast.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/CXXFunctionPointer.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersHelpers.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/LanguageCategory.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/DataFormatters/VectorType.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/DiagnosticManager.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Expression/REPL.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/ConnectionFileDescriptor.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostGetOpt.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeProcess.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeProcessBase.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThread.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadBase.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadForward.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/LockFile.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/LockFileBase.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/OptionParser.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Pipe.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/PipeBase.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/ProcessLauncher.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/ThreadLauncher.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/Time.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpointList.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeWatchpointList.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/SoftwareBreakpoint.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/TCPSocket.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/common/UDPSocket.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/openbsd/HostInfoOpenBSD.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/DomainSocket.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/Fcntl.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostProcessPosix.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostThreadPosix.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/LockFilePosix.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Host/posix/ProcessLauncherPosixFork.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializer.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializerCommon.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemLifetimeManager.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueChar.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ArmUnwindInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangUtil.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerDecl.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerDeclContext.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/DebugMacros.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/JavaASTContext.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/OCamlASTContext.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Symbol/TypeMap.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/FileAction.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntimeStopInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/JITLoaderList.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/MemoryHistory.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/StructuredDataPlugin.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallOnFunctionExit.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanPython.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Either.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Endian.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/FastDemangle.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/IOObject.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/LLDBAssert.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/Logging.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/NameMatches.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamCallback.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamGDBRemote.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StreamString.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/TraceOptions.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/UriParser.h (props changed) stable/12/contrib/llvm/tools/lldb/include/lldb/Utility/VASPrintf.h (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBBreakpointOptionCommon.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBBreakpointOptionCommon.h (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBExecutionContext.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBLanguageRuntime.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfoList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBProcessInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBQueue.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBStructuredData.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBThreadCollection.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBTrace.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBTraceOptions.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBUnixSignals.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/API/SBVariablesOptions.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointName.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectLanguage.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Commands/CommandObjectLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultCast.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/CXXFunctionPointer.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/DumpValueObjectOptions.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/FormattersHelpers.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/LanguageCategory.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/DataFormatters/TypeValidator.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/Expression.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Expression/UtilityFunction.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/FileSystem.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/GetOptInc.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/HostNativeThreadBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/HostProcess.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/HostThread.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/LockFileBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/NativeWatchpointList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/OptionParser.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/PipeBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/ProcessRunLock.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/StringConvert.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/common/ThreadLauncher.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/openbsd/HostInfoOpenBSD.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/DomainSocket.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/HostProcessPosix.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Host/posix/LockFilePosix.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Initialization/SystemInitializer.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Initialization/SystemLifetimeManager.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Interpreter/CommandOptionValidators.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTDumper.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTDumper.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangDiagnostic.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionHelper.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoAST.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/gen_go_ast.py (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ASan/ASanRuntime.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ASan/ASanRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/MainThreadChecker/MainThreadCheckerRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/UBSan/UBSanRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxBitset.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CoreMedia.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CoreMedia.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSArray.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptScriptGroup.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFBundle.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFBundle.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFString.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFUtils.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/DarwinProcessLauncher.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/LaunchFlavor.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/MachException.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadDarwin.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadListDarwin.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/POSIXStopInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/CrashReason.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NativeRegisterContextRegisterInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_s390x.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_s390x.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_x86_64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_i386.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_i386.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_x86_64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_mips.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_powerpc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_s390x.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_ppc64le.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_ppc64le.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_powerpc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64le.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_s390x.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-arm-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-arm64-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-mips-freebsd-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-mips-linux-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-ppc64le-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-s390x-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_s390x.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_s390x.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterUtilities.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterUtilities.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/NtStructures.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonExceptionState.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacro.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacro.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/ClangUtil.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/CompilerDecl.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/CompilerDeclContext.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/DebugMacros.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/JavaASTContext.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/OCamlASTContext.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Symbol/TypeSystem.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/FileAction.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/InstrumentationRuntime.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/InstrumentationRuntimeStopInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/JITLoaderList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/Language.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/MemoryHistory.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/Queue.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/QueueItem.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/QueueList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/RegisterNumber.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/StructuredDataPlugin.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/SystemRuntime.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/ThreadCollection.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunctionUsingABI.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/ARM64_ehframe_Registers.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/ARM_ehframe_Registers.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/Baton.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/Connection.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/DataBufferLLVM.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/IOObject.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/LLDBAssert.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/Logging.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/NameMatches.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/PPC64LE_DWARF_Registers.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/PPC64LE_ehframe_Registers.h (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/StreamCallback.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/StreamGDBRemote.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/StreamString.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/StringLexer.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/StringList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/Timer.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/UriParser.cpp (props changed) stable/12/contrib/llvm/tools/lldb/source/Utility/UserID.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/argdumper/argdumper.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/compact-unwind/compact-unwind-dumper.c (props changed) stable/12/contrib/llvm/tools/lldb/tools/driver/Platform.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/driver/Platform.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgContext.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgContext.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgSet.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgSet.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValConsume.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValConsume.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValFile.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValFile.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListBase.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListOfN.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListOfN.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValNumber.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValNumber.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionLong.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionLong.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionShort.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionShort.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValPrintValues.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValPrintValues.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValString.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValString.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValThreadGrp.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmd.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmd.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdBreak.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdEnviro.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdEnviro.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdFile.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdFile.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbThread.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbThread.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdMiscellanous.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdMiscellanous.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdStack.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdStack.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportInfo.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportList.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTarget.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdThread.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdThread.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTrace.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTrace.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdVar.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdVar.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCommands.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCommands.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdData.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdData.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdFactory.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdFactory.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInterpreter.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInterpreter.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInvoker.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInvoker.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgr.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgr.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgrSetCmdDeleteCallback.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgrSetCmdDeleteCallback.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnBase.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnConfig.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBBroadcaster.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBBroadcaster.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfo.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugger.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugger.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBProxySBValue.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBProxySBValue.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBUtilSBValue.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBUtilSBValue.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLog.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLog.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLogMediumFile.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLogMediumFile.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIOutOfBandRecord.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIOutOfBandRecord.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIResultRecord.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIResultRecord.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValue.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValue.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueConst.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueConst.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueList.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueList.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueResult.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueResult.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueTuple.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueTuple.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStderr.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStderr.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdout.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdout.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnThreadMgrStd.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnThreadMgrStd.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDataTypes.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverBase.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverBase.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMgr.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIExtensions.txt (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDateTimeStd.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDateTimeStd.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilMapIdToVariant.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilMapIdToVariant.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilSingletonBase.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilString.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilString.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilThreadBaseStd.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilThreadBaseStd.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilVariant.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilVariant.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-mi/Platform.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/Acceptor.cpp (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/Acceptor.h (props changed) stable/12/contrib/llvm/tools/lldb/tools/lldb-server/LLDBServerUtilities.h (props changed) stable/12/contrib/llvm/tools/llvm-cov/CoverageSummaryInfo.cpp (props changed) stable/12/contrib/llvm/tools/llvm-cov/gcov.cpp (props changed) stable/12/contrib/llvm/tools/llvm-cxxdump/Error.h (props changed) stable/12/contrib/llvm/tools/llvm-cxxdump/llvm-cxxdump.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/Analyze.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/BytesOutputStyle.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/BytesOutputStyle.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/FormatUtil.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/FormatUtil.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/LinePrinter.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/LinePrinter.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/OutputStyle.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PdbYaml.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PdbYaml.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyBuiltinDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyClassLayoutGraphicalDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyEnumDumper.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyEnumDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyExternalSymbolDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyFunctionDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyTypedefDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/PrettyVariableDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp (props changed) stable/12/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.h (props changed) stable/12/contrib/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp (props changed) stable/12/contrib/llvm/tools/llvm-readobj/WindowsResourceDumper.h (props changed) stable/12/contrib/llvm/tools/llvm-xray/trie-node.h (props changed) stable/12/contrib/llvm/tools/llvm-xray/xray-color-helper.h (props changed) stable/12/contrib/llvm/tools/llvm-xray/xray-converter.h (props changed) stable/12/contrib/llvm/tools/llvm-xray/xray-graph-diff.h (props changed) stable/12/contrib/llvm/tools/llvm-xray/xray-registry.h (props changed) stable/12/contrib/llvm/utils/TableGen/Attributes.cpp (props changed) stable/12/contrib/llvm/utils/TableGen/CodeGenHwModes.cpp (props changed) stable/12/contrib/llvm/utils/TableGen/CodeGenHwModes.h (props changed) stable/12/contrib/llvm/utils/TableGen/SDNodeProperties.cpp (props changed) stable/12/contrib/llvm/utils/TableGen/SDNodeProperties.h (props changed) stable/12/contrib/llvm/utils/TableGen/Types.cpp (props changed) stable/12/contrib/llvm/utils/TableGen/Types.h (props changed) Modified: stable/12/ObsoleteFiles.inc ============================================================================== --- stable/12/ObsoleteFiles.inc Sat Feb 16 12:49:55 2019 (r344211) +++ stable/12/ObsoleteFiles.inc Sat Feb 16 15:43:49 2019 (r344212) @@ -38,6 +38,142 @@ # xargs -n1 | sort | uniq -d; # done +# 20190216: new clang import which bumps version from 6.0.1 to 7.0.1. +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/allocator_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/asan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/common_interface_defs.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/coverage_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/dfsan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/esan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/hwasan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/linux_syscall_hooks.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/lsan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/msan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/scudo_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/tsan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/tsan_interface_atomic.h +OLD_DIRS+=usr/lib/clang/6.0.1/include/sanitizer +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_builtin_vars.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_cmath.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_complex_builtins.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_intrinsics.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_math_forward_declares.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_runtime_wrapper.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__stddef_max_align_t.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__wmmintrin_aes.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__wmmintrin_pclmul.h +OLD_FILES+=usr/lib/clang/6.0.1/include/adxintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/altivec.h +OLD_FILES+=usr/lib/clang/6.0.1/include/ammintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/arm64intr.h +OLD_FILES+=usr/lib/clang/6.0.1/include/arm_acle.h +OLD_FILES+=usr/lib/clang/6.0.1/include/arm_neon.h +OLD_FILES+=usr/lib/clang/6.0.1/include/armintr.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512bitalgintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512bwintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512cdintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512dqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512erintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512fintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512ifmaintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512ifmavlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512pfintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vbmi2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vbmiintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vbmivlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlbitalgintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlbwintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlcdintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vldqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlvbmi2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlvnniintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vnniintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vpopcntdqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vpopcntdqvlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avxintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/bmi2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/bmiintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/cetintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/clflushoptintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/clwbintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/clzerointrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/cpuid.h +OLD_FILES+=usr/lib/clang/6.0.1/include/emmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/f16cintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/fma4intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/fmaintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/fxsrintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/gfniintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/htmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/htmxlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/ia32intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/immintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/lwpintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/lzcntintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mm3dnow.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mm_malloc.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/module.modulemap +OLD_FILES+=usr/lib/clang/6.0.1/include/msa.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mwaitxintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/nmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/opencl-c.h +OLD_FILES+=usr/lib/clang/6.0.1/include/pkuintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/pmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/popcntintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/prfchwintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/rdseedintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/rtmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/s390intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/shaintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/smmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/tbmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/tmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vadefs.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vaesintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vecintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vpclmulqdqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/wmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/x86intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xopintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsavecintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsaveintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsaveoptintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsavesintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xtestintrin.h +OLD_DIRS+=usr/lib/clang/6.0.1/include +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-i386.so +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-preinit-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-preinit-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-x86_64.so +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan_cxx-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-arm.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-armhf.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.safestack-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.safestack-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats_client-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats_client-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.tsan-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_minimal-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a +OLD_DIRS+=usr/lib/clang/6.0.1/lib/freebsd +OLD_DIRS+=usr/lib/clang/6.0.1/lib +OLD_DIRS+=usr/lib/clang/6.0.1 # 20181116: Rename test file. OLD_FILES+=usr/tests/sys/netinet/reuseport_lb # 20181030: malloc_domain(9) KPI change Modified: stable/12/UPDATING ============================================================================== --- stable/12/UPDATING Sat Feb 16 12:49:55 2019 (r344211) +++ stable/12/UPDATING Sat Feb 16 15:43:49 2019 (r344212) @@ -16,6 +16,12 @@ from older versions of FreeBSD, try WITHOUT_CLANG and the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. +20190216: + Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to + 7.0.1. Please see the 20141231 entry below for information about + prerequisites and upgrading, if you are not already using clang 3.5.0 + or higher. + 20190214: Iflib is no longer unconditionally compiled into the kernel. Drivers using iflib and statically compiled into the kernel, now require Modified: stable/12/contrib/compiler-rt/LICENSE.TXT ============================================================================== --- stable/12/contrib/compiler-rt/LICENSE.TXT Sat Feb 16 12:49:55 2019 (r344211) +++ stable/12/contrib/compiler-rt/LICENSE.TXT Sat Feb 16 15:43:49 2019 (r344212) @@ -14,7 +14,7 @@ Full text of the relevant licenses is included below. University of Illinois/NCSA Open Source License -Copyright (c) 2009-2016 by the contributors listed in CREDITS.TXT +Copyright (c) 2009-2018 by the contributors listed in CREDITS.TXT All rights reserved. Modified: stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h ============================================================================== --- stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h Sat Feb 16 12:49:55 2019 (r344211) +++ stable/12/contrib/compiler-rt/include/sanitizer/common_interface_defs.h Sat Feb 16 15:43:49 2019 (r344212) @@ -65,6 +65,11 @@ extern "C" { void __sanitizer_unaligned_store32(void *p, uint32_t x); void __sanitizer_unaligned_store64(void *p, uint64_t x); + // Returns 1 on the first call, then returns 0 thereafter. Called by the tool + // to ensure only one report is printed when multiple errors occur + // simultaneously. + int __sanitizer_acquire_crash_state(); + // Annotate the current state of a contiguous container, such as // std::vector, std::string or similar. // A contiguous container is a container that keeps all of its elements Modified: stable/12/contrib/compiler-rt/include/sanitizer/msan_interface.h ============================================================================== --- stable/12/contrib/compiler-rt/include/sanitizer/msan_interface.h Sat Feb 16 12:49:55 2019 (r344211) +++ stable/12/contrib/compiler-rt/include/sanitizer/msan_interface.h Sat Feb 16 15:43:49 2019 (r344212) @@ -104,6 +104,14 @@ extern "C" { copy. Source and destination regions can overlap. */ void __msan_copy_shadow(const volatile void *dst, const volatile void *src, size_t size); + + /* Disables uninitialized memory checks in interceptors. */ + void __msan_scoped_disable_interceptor_checks(void); + + /* Re-enables uninitialized memory checks in interceptors after a previous + call to __msan_scoped_disable_interceptor_checks. */ + void __msan_scoped_enable_interceptor_checks(void); + #ifdef __cplusplus } // extern "C" #endif Copied: stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h (from r341825, head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h Sat Feb 16 15:43:49 2019 (r344212, copy of r341825, head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h) @@ -0,0 +1,4734 @@ +//===-- netbsd_syscall_hooks.h --------------------------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file is a part of public sanitizer interface. +// +// System call handlers. +// +// Interface methods declared in this header implement pre- and post- syscall +// actions for the active sanitizer. +// Usage: +// __sanitizer_syscall_pre_getfoo(...args...); +// long long res = syscall(SYS_getfoo, ...args...); +// __sanitizer_syscall_post_getfoo(res, ...args...); +// +// DO NOT EDIT! THIS FILE HAS BEEN GENERATED! +// +// Generated with: generate_netbsd_syscalls.awk +// Generated date: 2018-03-03 +// Generated from: syscalls.master,v 1.291 2018/01/06 16:41:23 kamil Exp +// +//===----------------------------------------------------------------------===// +#ifndef SANITIZER_NETBSD_SYSCALL_HOOKS_H +#define SANITIZER_NETBSD_SYSCALL_HOOKS_H + +#define __sanitizer_syscall_pre_syscall(code, arg0, arg1, arg2, arg3, arg4, \ + arg5, arg6, arg7) \ + __sanitizer_syscall_pre_impl_syscall( \ + (long long)(code), (long long)(arg0), (long long)(arg1), \ + (long long)(arg2), (long long)(arg3), (long long)(arg4), \ + (long long)(arg5), (long long)(arg6), (long long)(arg7)) +#define __sanitizer_syscall_post_syscall(res, code, arg0, arg1, arg2, arg3, \ + arg4, arg5, arg6, arg7) \ + __sanitizer_syscall_post_impl_syscall( \ + res, (long long)(code), (long long)(arg0), (long long)(arg1), \ + (long long)(arg2), (long long)(arg3), (long long)(arg4), \ + (long long)(arg5), (long long)(arg6), (long long)(arg7)) +#define __sanitizer_syscall_pre_exit(rval) \ + __sanitizer_syscall_pre_impl_exit((long long)(rval)) +#define __sanitizer_syscall_post_exit(res, rval) \ + __sanitizer_syscall_post_impl_exit(res, (long long)(rval)) +#define __sanitizer_syscall_pre_fork() __sanitizer_syscall_pre_impl_fork() +#define __sanitizer_syscall_post_fork(res) \ + __sanitizer_syscall_post_impl_fork(res) +#define __sanitizer_syscall_pre_read(fd, buf, nbyte) \ + __sanitizer_syscall_pre_impl_read((long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_post_read(res, fd, buf, nbyte) \ + __sanitizer_syscall_post_impl_read(res, (long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_pre_write(fd, buf, nbyte) \ + __sanitizer_syscall_pre_impl_write((long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_post_write(res, fd, buf, nbyte) \ + __sanitizer_syscall_post_impl_write(res, (long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_pre_open(path, flags, mode) \ + __sanitizer_syscall_pre_impl_open((long long)(path), (long long)(flags), \ + (long long)(mode)) +#define __sanitizer_syscall_post_open(res, path, flags, mode) \ + __sanitizer_syscall_post_impl_open(res, (long long)(path), \ + (long long)(flags), (long long)(mode)) +#define __sanitizer_syscall_pre_close(fd) \ + __sanitizer_syscall_pre_impl_close((long long)(fd)) +#define __sanitizer_syscall_post_close(res, fd) \ + __sanitizer_syscall_post_impl_close(res, (long long)(fd)) +#define __sanitizer_syscall_pre_compat_50_wait4(pid, status, options, rusage) \ + __sanitizer_syscall_pre_impl_compat_50_wait4( \ + (long long)(pid), (long long)(status), (long long)(options), \ + (long long)(rusage)) +#define __sanitizer_syscall_post_compat_50_wait4(res, pid, status, options, \ + rusage) \ + __sanitizer_syscall_post_impl_compat_50_wait4( \ + res, (long long)(pid), (long long)(status), (long long)(options), \ + (long long)(rusage)) +#define __sanitizer_syscall_pre_compat_43_ocreat(path, mode) \ + __sanitizer_syscall_pre_impl_compat_43_ocreat((long long)(path), \ + (long long)(mode)) +#define __sanitizer_syscall_post_compat_43_ocreat(res, path, mode) \ + __sanitizer_syscall_post_impl_compat_43_ocreat(res, (long long)(path), \ + (long long)(mode)) +#define __sanitizer_syscall_pre_link(path, link) \ + __sanitizer_syscall_pre_impl_link((long long)(path), (long long)(link)) +#define __sanitizer_syscall_post_link(res, path, link) \ + __sanitizer_syscall_post_impl_link(res, (long long)(path), (long long)(link)) +#define __sanitizer_syscall_pre_unlink(path) \ + __sanitizer_syscall_pre_impl_unlink((long long)(path)) +#define __sanitizer_syscall_post_unlink(res, path) \ + __sanitizer_syscall_post_impl_unlink(res, (long long)(path)) +/* syscall 11 has been skipped */ +#define __sanitizer_syscall_pre_chdir(path) \ + __sanitizer_syscall_pre_impl_chdir((long long)(path)) +#define __sanitizer_syscall_post_chdir(res, path) \ + __sanitizer_syscall_post_impl_chdir(res, (long long)(path)) +#define __sanitizer_syscall_pre_fchdir(fd) \ + __sanitizer_syscall_pre_impl_fchdir((long long)(fd)) +#define __sanitizer_syscall_post_fchdir(res, fd) \ + __sanitizer_syscall_post_impl_fchdir(res, (long long)(fd)) +#define __sanitizer_syscall_pre_compat_50_mknod(path, mode, dev) \ + __sanitizer_syscall_pre_impl_compat_50_mknod( \ + (long long)(path), (long long)(mode), (long long)(dev)) +#define __sanitizer_syscall_post_compat_50_mknod(res, path, mode, dev) \ + __sanitizer_syscall_post_impl_compat_50_mknod( \ + res, (long long)(path), (long long)(mode), (long long)(dev)) +#define __sanitizer_syscall_pre_chmod(path, mode) \ + __sanitizer_syscall_pre_impl_chmod((long long)(path), (long long)(mode)) +#define __sanitizer_syscall_post_chmod(res, path, mode) \ + __sanitizer_syscall_post_impl_chmod(res, (long long)(path), (long long)(mode)) +#define __sanitizer_syscall_pre_chown(path, uid, gid) \ + __sanitizer_syscall_pre_impl_chown((long long)(path), (long long)(uid), \ + (long long)(gid)) +#define __sanitizer_syscall_post_chown(res, path, uid, gid) \ + __sanitizer_syscall_post_impl_chown(res, (long long)(path), \ + (long long)(uid), (long long)(gid)) +#define __sanitizer_syscall_pre_break(nsize) \ + __sanitizer_syscall_pre_impl_break((long long)(nsize)) +#define __sanitizer_syscall_post_break(res, nsize) \ + __sanitizer_syscall_post_impl_break(res, (long long)(nsize)) +#define __sanitizer_syscall_pre_compat_20_getfsstat(buf, bufsize, flags) \ + __sanitizer_syscall_pre_impl_compat_20_getfsstat( \ + (long long)(buf), (long long)(bufsize), (long long)(flags)) +#define __sanitizer_syscall_post_compat_20_getfsstat(res, buf, bufsize, flags) \ + __sanitizer_syscall_post_impl_compat_20_getfsstat( \ + res, (long long)(buf), (long long)(bufsize), (long long)(flags)) +#define __sanitizer_syscall_pre_compat_43_olseek(fd, offset, whence) \ + __sanitizer_syscall_pre_impl_compat_43_olseek( \ + (long long)(fd), (long long)(offset), (long long)(whence)) +#define __sanitizer_syscall_post_compat_43_olseek(res, fd, offset, whence) \ + __sanitizer_syscall_post_impl_compat_43_olseek( \ + res, (long long)(fd), (long long)(offset), (long long)(whence)) +#define __sanitizer_syscall_pre_getpid() __sanitizer_syscall_pre_impl_getpid() +#define __sanitizer_syscall_post_getpid(res) \ + __sanitizer_syscall_post_impl_getpid(res) +#define __sanitizer_syscall_pre_compat_40_mount(type, path, flags, data) \ + __sanitizer_syscall_pre_impl_compat_40_mount( \ + (long long)(type), (long long)(path), (long long)(flags), \ + (long long)(data)) +#define __sanitizer_syscall_post_compat_40_mount(res, type, path, flags, data) \ + __sanitizer_syscall_post_impl_compat_40_mount( \ + res, (long long)(type), (long long)(path), (long long)(flags), \ + (long long)(data)) +#define __sanitizer_syscall_pre_unmount(path, flags) \ + __sanitizer_syscall_pre_impl_unmount((long long)(path), (long long)(flags)) +#define __sanitizer_syscall_post_unmount(res, path, flags) \ + __sanitizer_syscall_post_impl_unmount(res, (long long)(path), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_setuid(uid) \ + __sanitizer_syscall_pre_impl_setuid((long long)(uid)) +#define __sanitizer_syscall_post_setuid(res, uid) \ + __sanitizer_syscall_post_impl_setuid(res, (long long)(uid)) +#define __sanitizer_syscall_pre_getuid() __sanitizer_syscall_pre_impl_getuid() +#define __sanitizer_syscall_post_getuid(res) \ + __sanitizer_syscall_post_impl_getuid(res) +#define __sanitizer_syscall_pre_geteuid() __sanitizer_syscall_pre_impl_geteuid() +#define __sanitizer_syscall_post_geteuid(res) \ + __sanitizer_syscall_post_impl_geteuid(res) +#define __sanitizer_syscall_pre_ptrace(req, pid, addr, data) \ + __sanitizer_syscall_pre_impl_ptrace((long long)(req), (long long)(pid), \ + (long long)(addr), (long long)(data)) +#define __sanitizer_syscall_post_ptrace(res, req, pid, addr, data) \ + __sanitizer_syscall_post_impl_ptrace(res, (long long)(req), \ + (long long)(pid), (long long)(addr), \ + (long long)(data)) +#define __sanitizer_syscall_pre_recvmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_recvmsg((long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_post_recvmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_recvmsg(res, (long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_sendmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_sendmsg((long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_post_sendmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_sendmsg(res, (long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_recvfrom(s, buf, len, flags, from, \ + fromlenaddr) \ + __sanitizer_syscall_pre_impl_recvfrom( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags), \ + (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_post_recvfrom(res, s, buf, len, flags, from, \ + fromlenaddr) \ + __sanitizer_syscall_post_impl_recvfrom( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags), (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_pre_accept(s, name, anamelen) \ + __sanitizer_syscall_pre_impl_accept((long long)(s), (long long)(name), \ + (long long)(anamelen)) +#define __sanitizer_syscall_post_accept(res, s, name, anamelen) \ + __sanitizer_syscall_post_impl_accept(res, (long long)(s), (long long)(name), \ + (long long)(anamelen)) +#define __sanitizer_syscall_pre_getpeername(fdes, asa, alen) \ + __sanitizer_syscall_pre_impl_getpeername( \ + (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_getpeername(res, fdes, asa, alen) \ + __sanitizer_syscall_post_impl_getpeername( \ + res, (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_pre_getsockname(fdes, asa, alen) \ + __sanitizer_syscall_pre_impl_getsockname( \ + (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_getsockname(res, fdes, asa, alen) \ + __sanitizer_syscall_post_impl_getsockname( \ + res, (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_pre_access(path, flags) \ + __sanitizer_syscall_pre_impl_access((long long)(path), (long long)(flags)) +#define __sanitizer_syscall_post_access(res, path, flags) \ + __sanitizer_syscall_post_impl_access(res, (long long)(path), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_chflags(path, flags) \ + __sanitizer_syscall_pre_impl_chflags((long long)(path), (long long)(flags)) +#define __sanitizer_syscall_post_chflags(res, path, flags) \ + __sanitizer_syscall_post_impl_chflags(res, (long long)(path), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_fchflags(fd, flags) \ + __sanitizer_syscall_pre_impl_fchflags((long long)(fd), (long long)(flags)) +#define __sanitizer_syscall_post_fchflags(res, fd, flags) \ + __sanitizer_syscall_post_impl_fchflags(res, (long long)(fd), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_sync() __sanitizer_syscall_pre_impl_sync() +#define __sanitizer_syscall_post_sync(res) \ + __sanitizer_syscall_post_impl_sync(res) +#define __sanitizer_syscall_pre_kill(pid, signum) \ + __sanitizer_syscall_pre_impl_kill((long long)(pid), (long long)(signum)) +#define __sanitizer_syscall_post_kill(res, pid, signum) \ + __sanitizer_syscall_post_impl_kill(res, (long long)(pid), (long long)(signum)) +#define __sanitizer_syscall_pre_compat_43_stat43(path, ub) \ + __sanitizer_syscall_pre_impl_compat_43_stat43((long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_post_compat_43_stat43(res, path, ub) \ + __sanitizer_syscall_post_impl_compat_43_stat43(res, (long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_pre_getppid() __sanitizer_syscall_pre_impl_getppid() +#define __sanitizer_syscall_post_getppid(res) \ + __sanitizer_syscall_post_impl_getppid(res) +#define __sanitizer_syscall_pre_compat_43_lstat43(path, ub) \ + __sanitizer_syscall_pre_impl_compat_43_lstat43((long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_post_compat_43_lstat43(res, path, ub) \ + __sanitizer_syscall_post_impl_compat_43_lstat43(res, (long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_pre_dup(fd) \ + __sanitizer_syscall_pre_impl_dup((long long)(fd)) +#define __sanitizer_syscall_post_dup(res, fd) \ + __sanitizer_syscall_post_impl_dup(res, (long long)(fd)) +#define __sanitizer_syscall_pre_pipe() __sanitizer_syscall_pre_impl_pipe() +#define __sanitizer_syscall_post_pipe(res) \ + __sanitizer_syscall_post_impl_pipe(res) +#define __sanitizer_syscall_pre_getegid() __sanitizer_syscall_pre_impl_getegid() +#define __sanitizer_syscall_post_getegid(res) \ + __sanitizer_syscall_post_impl_getegid(res) +#define __sanitizer_syscall_pre_profil(samples, size, offset, scale) \ + __sanitizer_syscall_pre_impl_profil((long long)(samples), (long long)(size), \ + (long long)(offset), (long long)(scale)) +#define __sanitizer_syscall_post_profil(res, samples, size, offset, scale) \ + __sanitizer_syscall_post_impl_profil(res, (long long)(samples), \ + (long long)(size), (long long)(offset), \ + (long long)(scale)) +#define __sanitizer_syscall_pre_ktrace(fname, ops, facs, pid) \ + __sanitizer_syscall_pre_impl_ktrace((long long)(fname), (long long)(ops), \ + (long long)(facs), (long long)(pid)) +#define __sanitizer_syscall_post_ktrace(res, fname, ops, facs, pid) \ + __sanitizer_syscall_post_impl_ktrace(res, (long long)(fname), \ + (long long)(ops), (long long)(facs), \ + (long long)(pid)) +#define __sanitizer_syscall_pre_compat_13_sigaction13(signum, nsa, osa) \ + __sanitizer_syscall_pre_impl_compat_13_sigaction13( \ + (long long)(signum), (long long)(nsa), (long long)(osa)) +#define __sanitizer_syscall_post_compat_13_sigaction13(res, signum, nsa, osa) \ + __sanitizer_syscall_post_impl_compat_13_sigaction13( \ + res, (long long)(signum), (long long)(nsa), (long long)(osa)) +#define __sanitizer_syscall_pre_getgid() __sanitizer_syscall_pre_impl_getgid() +#define __sanitizer_syscall_post_getgid(res) \ + __sanitizer_syscall_post_impl_getgid(res) +#define __sanitizer_syscall_pre_compat_13_sigprocmask13(how, mask) \ + __sanitizer_syscall_pre_impl_compat_13_sigprocmask13((long long)(how), \ + (long long)(mask)) +#define __sanitizer_syscall_post_compat_13_sigprocmask13(res, how, mask) \ + __sanitizer_syscall_post_impl_compat_13_sigprocmask13(res, (long long)(how), \ + (long long)(mask)) +#define __sanitizer_syscall_pre___getlogin(namebuf, namelen) \ + __sanitizer_syscall_pre_impl___getlogin((long long)(namebuf), \ + (long long)(namelen)) +#define __sanitizer_syscall_post___getlogin(res, namebuf, namelen) \ + __sanitizer_syscall_post_impl___getlogin(res, (long long)(namebuf), \ + (long long)(namelen)) +#define __sanitizer_syscall_pre___setlogin(namebuf) \ + __sanitizer_syscall_pre_impl___setlogin((long long)(namebuf)) +#define __sanitizer_syscall_post___setlogin(res, namebuf) \ + __sanitizer_syscall_post_impl___setlogin(res, (long long)(namebuf)) +#define __sanitizer_syscall_pre_acct(path) \ + __sanitizer_syscall_pre_impl_acct((long long)(path)) +#define __sanitizer_syscall_post_acct(res, path) \ + __sanitizer_syscall_post_impl_acct(res, (long long)(path)) +#define __sanitizer_syscall_pre_compat_13_sigpending13() \ + __sanitizer_syscall_pre_impl_compat_13_sigpending13() +#define __sanitizer_syscall_post_compat_13_sigpending13(res) \ + __sanitizer_syscall_post_impl_compat_13_sigpending13(res) +#define __sanitizer_syscall_pre_compat_13_sigaltstack13(nss, oss) \ + __sanitizer_syscall_pre_impl_compat_13_sigaltstack13((long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_post_compat_13_sigaltstack13(res, nss, oss) \ + __sanitizer_syscall_post_impl_compat_13_sigaltstack13(res, (long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_pre_ioctl(fd, com, data) \ + __sanitizer_syscall_pre_impl_ioctl((long long)(fd), (long long)(com), \ + (long long)(data)) +#define __sanitizer_syscall_post_ioctl(res, fd, com, data) \ + __sanitizer_syscall_post_impl_ioctl(res, (long long)(fd), (long long)(com), \ + (long long)(data)) +#define __sanitizer_syscall_pre_compat_12_oreboot(opt) \ + __sanitizer_syscall_pre_impl_compat_12_oreboot((long long)(opt)) +#define __sanitizer_syscall_post_compat_12_oreboot(res, opt) \ + __sanitizer_syscall_post_impl_compat_12_oreboot(res, (long long)(opt)) +#define __sanitizer_syscall_pre_revoke(path) \ + __sanitizer_syscall_pre_impl_revoke((long long)(path)) +#define __sanitizer_syscall_post_revoke(res, path) \ + __sanitizer_syscall_post_impl_revoke(res, (long long)(path)) +#define __sanitizer_syscall_pre_symlink(path, link) \ + __sanitizer_syscall_pre_impl_symlink((long long)(path), (long long)(link)) +#define __sanitizer_syscall_post_symlink(res, path, link) \ + __sanitizer_syscall_post_impl_symlink(res, (long long)(path), \ + (long long)(link)) +#define __sanitizer_syscall_pre_readlink(path, buf, count) \ + __sanitizer_syscall_pre_impl_readlink((long long)(path), (long long)(buf), \ + (long long)(count)) +#define __sanitizer_syscall_post_readlink(res, path, buf, count) \ + __sanitizer_syscall_post_impl_readlink(res, (long long)(path), \ + (long long)(buf), (long long)(count)) +#define __sanitizer_syscall_pre_execve(path, argp, envp) \ + __sanitizer_syscall_pre_impl_execve((long long)(path), (long long)(argp), \ + (long long)(envp)) +#define __sanitizer_syscall_post_execve(res, path, argp, envp) \ + __sanitizer_syscall_post_impl_execve(res, (long long)(path), \ + (long long)(argp), (long long)(envp)) +#define __sanitizer_syscall_pre_umask(newmask) \ + __sanitizer_syscall_pre_impl_umask((long long)(newmask)) +#define __sanitizer_syscall_post_umask(res, newmask) \ + __sanitizer_syscall_post_impl_umask(res, (long long)(newmask)) +#define __sanitizer_syscall_pre_chroot(path) \ + __sanitizer_syscall_pre_impl_chroot((long long)(path)) +#define __sanitizer_syscall_post_chroot(res, path) \ + __sanitizer_syscall_post_impl_chroot(res, (long long)(path)) +#define __sanitizer_syscall_pre_compat_43_fstat43(fd, sb) \ + __sanitizer_syscall_pre_impl_compat_43_fstat43((long long)(fd), \ + (long long)(sb)) +#define __sanitizer_syscall_post_compat_43_fstat43(res, fd, sb) \ + __sanitizer_syscall_post_impl_compat_43_fstat43(res, (long long)(fd), \ + (long long)(sb)) +#define __sanitizer_syscall_pre_compat_43_ogetkerninfo(op, where, size, arg) \ + __sanitizer_syscall_pre_impl_compat_43_ogetkerninfo( \ + (long long)(op), (long long)(where), (long long)(size), \ + (long long)(arg)) +#define __sanitizer_syscall_post_compat_43_ogetkerninfo(res, op, where, size, \ + arg) \ + __sanitizer_syscall_post_impl_compat_43_ogetkerninfo( \ + res, (long long)(op), (long long)(where), (long long)(size), \ + (long long)(arg)) +#define __sanitizer_syscall_pre_compat_43_ogetpagesize() \ + __sanitizer_syscall_pre_impl_compat_43_ogetpagesize() +#define __sanitizer_syscall_post_compat_43_ogetpagesize(res) \ + __sanitizer_syscall_post_impl_compat_43_ogetpagesize(res) +#define __sanitizer_syscall_pre_compat_12_msync(addr, len) \ + __sanitizer_syscall_pre_impl_compat_12_msync((long long)(addr), \ + (long long)(len)) +#define __sanitizer_syscall_post_compat_12_msync(res, addr, len) \ + __sanitizer_syscall_post_impl_compat_12_msync(res, (long long)(addr), \ + (long long)(len)) +#define __sanitizer_syscall_pre_vfork() __sanitizer_syscall_pre_impl_vfork() +#define __sanitizer_syscall_post_vfork(res) \ + __sanitizer_syscall_post_impl_vfork(res) +/* syscall 67 has been skipped */ +/* syscall 68 has been skipped */ +/* syscall 69 has been skipped */ +/* syscall 70 has been skipped */ +#define __sanitizer_syscall_pre_compat_43_ommap(addr, len, prot, flags, fd, \ + pos) \ + __sanitizer_syscall_pre_impl_compat_43_ommap( \ + (long long)(addr), (long long)(len), (long long)(prot), \ + (long long)(flags), (long long)(fd), (long long)(pos)) +#define __sanitizer_syscall_post_compat_43_ommap(res, addr, len, prot, flags, \ + fd, pos) \ + __sanitizer_syscall_post_impl_compat_43_ommap( \ + res, (long long)(addr), (long long)(len), (long long)(prot), \ + (long long)(flags), (long long)(fd), (long long)(pos)) +#define __sanitizer_syscall_pre_vadvise(anom) \ + __sanitizer_syscall_pre_impl_vadvise((long long)(anom)) +#define __sanitizer_syscall_post_vadvise(res, anom) \ + __sanitizer_syscall_post_impl_vadvise(res, (long long)(anom)) +#define __sanitizer_syscall_pre_munmap(addr, len) \ + __sanitizer_syscall_pre_impl_munmap((long long)(addr), (long long)(len)) +#define __sanitizer_syscall_post_munmap(res, addr, len) \ + __sanitizer_syscall_post_impl_munmap(res, (long long)(addr), (long long)(len)) +#define __sanitizer_syscall_pre_mprotect(addr, len, prot) \ + __sanitizer_syscall_pre_impl_mprotect((long long)(addr), (long long)(len), \ + (long long)(prot)) +#define __sanitizer_syscall_post_mprotect(res, addr, len, prot) \ + __sanitizer_syscall_post_impl_mprotect(res, (long long)(addr), \ + (long long)(len), (long long)(prot)) +#define __sanitizer_syscall_pre_madvise(addr, len, behav) \ + __sanitizer_syscall_pre_impl_madvise((long long)(addr), (long long)(len), \ + (long long)(behav)) +#define __sanitizer_syscall_post_madvise(res, addr, len, behav) \ + __sanitizer_syscall_post_impl_madvise(res, (long long)(addr), \ + (long long)(len), (long long)(behav)) +/* syscall 76 has been skipped */ +/* syscall 77 has been skipped */ +#define __sanitizer_syscall_pre_mincore(addr, len, vec) \ + __sanitizer_syscall_pre_impl_mincore((long long)(addr), (long long)(len), \ + (long long)(vec)) +#define __sanitizer_syscall_post_mincore(res, addr, len, vec) \ + __sanitizer_syscall_post_impl_mincore(res, (long long)(addr), \ + (long long)(len), (long long)(vec)) +#define __sanitizer_syscall_pre_getgroups(gidsetsize, gidset) \ + __sanitizer_syscall_pre_impl_getgroups((long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_post_getgroups(res, gidsetsize, gidset) \ + __sanitizer_syscall_post_impl_getgroups(res, (long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_pre_setgroups(gidsetsize, gidset) \ + __sanitizer_syscall_pre_impl_setgroups((long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_post_setgroups(res, gidsetsize, gidset) \ + __sanitizer_syscall_post_impl_setgroups(res, (long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_pre_getpgrp() __sanitizer_syscall_pre_impl_getpgrp() +#define __sanitizer_syscall_post_getpgrp(res) \ + __sanitizer_syscall_post_impl_getpgrp(res) +#define __sanitizer_syscall_pre_setpgid(pid, pgid) \ + __sanitizer_syscall_pre_impl_setpgid((long long)(pid), (long long)(pgid)) +#define __sanitizer_syscall_post_setpgid(res, pid, pgid) \ + __sanitizer_syscall_post_impl_setpgid(res, (long long)(pid), \ + (long long)(pgid)) +#define __sanitizer_syscall_pre_compat_50_setitimer(which, itv, oitv) \ + __sanitizer_syscall_pre_impl_compat_50_setitimer( \ + (long long)(which), (long long)(itv), (long long)(oitv)) +#define __sanitizer_syscall_post_compat_50_setitimer(res, which, itv, oitv) \ + __sanitizer_syscall_post_impl_compat_50_setitimer( \ + res, (long long)(which), (long long)(itv), (long long)(oitv)) +#define __sanitizer_syscall_pre_compat_43_owait() \ + __sanitizer_syscall_pre_impl_compat_43_owait() +#define __sanitizer_syscall_post_compat_43_owait(res) \ + __sanitizer_syscall_post_impl_compat_43_owait(res) +#define __sanitizer_syscall_pre_compat_12_oswapon(name) \ + __sanitizer_syscall_pre_impl_compat_12_oswapon((long long)(name)) +#define __sanitizer_syscall_post_compat_12_oswapon(res, name) \ + __sanitizer_syscall_post_impl_compat_12_oswapon(res, (long long)(name)) +#define __sanitizer_syscall_pre_compat_50_getitimer(which, itv) \ + __sanitizer_syscall_pre_impl_compat_50_getitimer((long long)(which), \ + (long long)(itv)) +#define __sanitizer_syscall_post_compat_50_getitimer(res, which, itv) \ + __sanitizer_syscall_post_impl_compat_50_getitimer(res, (long long)(which), \ + (long long)(itv)) +#define __sanitizer_syscall_pre_compat_43_ogethostname(hostname, len) \ + __sanitizer_syscall_pre_impl_compat_43_ogethostname((long long)(hostname), \ + (long long)(len)) +#define __sanitizer_syscall_post_compat_43_ogethostname(res, hostname, len) \ + __sanitizer_syscall_post_impl_compat_43_ogethostname( \ + res, (long long)(hostname), (long long)(len)) +#define __sanitizer_syscall_pre_compat_43_osethostname(hostname, len) \ + __sanitizer_syscall_pre_impl_compat_43_osethostname((long long)(hostname), \ + (long long)(len)) +#define __sanitizer_syscall_post_compat_43_osethostname(res, hostname, len) \ + __sanitizer_syscall_post_impl_compat_43_osethostname( \ + res, (long long)(hostname), (long long)(len)) +#define __sanitizer_syscall_pre_compat_43_ogetdtablesize() \ + __sanitizer_syscall_pre_impl_compat_43_ogetdtablesize() +#define __sanitizer_syscall_post_compat_43_ogetdtablesize(res) \ + __sanitizer_syscall_post_impl_compat_43_ogetdtablesize(res) +#define __sanitizer_syscall_pre_dup2(from, to) \ + __sanitizer_syscall_pre_impl_dup2((long long)(from), (long long)(to)) +#define __sanitizer_syscall_post_dup2(res, from, to) \ + __sanitizer_syscall_post_impl_dup2(res, (long long)(from), (long long)(to)) +/* syscall 91 has been skipped */ +#define __sanitizer_syscall_pre_fcntl(fd, cmd, arg) \ + __sanitizer_syscall_pre_impl_fcntl((long long)(fd), (long long)(cmd), \ + (long long)(arg)) +#define __sanitizer_syscall_post_fcntl(res, fd, cmd, arg) \ + __sanitizer_syscall_post_impl_fcntl(res, (long long)(fd), (long long)(cmd), \ + (long long)(arg)) +#define __sanitizer_syscall_pre_compat_50_select(nd, in, ou, ex, tv) \ + __sanitizer_syscall_pre_impl_compat_50_select( \ + (long long)(nd), (long long)(in), (long long)(ou), (long long)(ex), \ + (long long)(tv)) +#define __sanitizer_syscall_post_compat_50_select(res, nd, in, ou, ex, tv) \ + __sanitizer_syscall_post_impl_compat_50_select( \ + res, (long long)(nd), (long long)(in), (long long)(ou), (long long)(ex), \ + (long long)(tv)) +/* syscall 94 has been skipped */ +#define __sanitizer_syscall_pre_fsync(fd) \ + __sanitizer_syscall_pre_impl_fsync((long long)(fd)) +#define __sanitizer_syscall_post_fsync(res, fd) \ + __sanitizer_syscall_post_impl_fsync(res, (long long)(fd)) +#define __sanitizer_syscall_pre_setpriority(which, who, prio) \ + __sanitizer_syscall_pre_impl_setpriority( \ + (long long)(which), (long long)(who), (long long)(prio)) +#define __sanitizer_syscall_post_setpriority(res, which, who, prio) \ + __sanitizer_syscall_post_impl_setpriority( \ + res, (long long)(which), (long long)(who), (long long)(prio)) +#define __sanitizer_syscall_pre_compat_30_socket(domain, type, protocol) \ + __sanitizer_syscall_pre_impl_compat_30_socket( \ + (long long)(domain), (long long)(type), (long long)(protocol)) +#define __sanitizer_syscall_post_compat_30_socket(res, domain, type, protocol) \ + __sanitizer_syscall_post_impl_compat_30_socket( \ + res, (long long)(domain), (long long)(type), (long long)(protocol)) +#define __sanitizer_syscall_pre_connect(s, name, namelen) \ + __sanitizer_syscall_pre_impl_connect((long long)(s), (long long)(name), \ + (long long)(namelen)) +#define __sanitizer_syscall_post_connect(res, s, name, namelen) \ + __sanitizer_syscall_post_impl_connect( \ + res, (long long)(s), (long long)(name), (long long)(namelen)) +#define __sanitizer_syscall_pre_compat_43_oaccept(s, name, anamelen) \ + __sanitizer_syscall_pre_impl_compat_43_oaccept( \ + (long long)(s), (long long)(name), (long long)(anamelen)) +#define __sanitizer_syscall_post_compat_43_oaccept(res, s, name, anamelen) \ + __sanitizer_syscall_post_impl_compat_43_oaccept( \ + res, (long long)(s), (long long)(name), (long long)(anamelen)) +#define __sanitizer_syscall_pre_getpriority(which, who) \ + __sanitizer_syscall_pre_impl_getpriority((long long)(which), (long long)(who)) +#define __sanitizer_syscall_post_getpriority(res, which, who) \ + __sanitizer_syscall_post_impl_getpriority(res, (long long)(which), \ + (long long)(who)) +#define __sanitizer_syscall_pre_compat_43_osend(s, buf, len, flags) \ + __sanitizer_syscall_pre_impl_compat_43_osend( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_osend(res, s, buf, len, flags) \ + __sanitizer_syscall_post_impl_compat_43_osend( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_compat_43_orecv(s, buf, len, flags) \ + __sanitizer_syscall_pre_impl_compat_43_orecv( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_orecv(res, s, buf, len, flags) \ + __sanitizer_syscall_post_impl_compat_43_orecv( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_compat_13_sigreturn13(sigcntxp) \ + __sanitizer_syscall_pre_impl_compat_13_sigreturn13((long long)(sigcntxp)) +#define __sanitizer_syscall_post_compat_13_sigreturn13(res, sigcntxp) \ + __sanitizer_syscall_post_impl_compat_13_sigreturn13(res, \ + (long long)(sigcntxp)) +#define __sanitizer_syscall_pre_bind(s, name, namelen) \ + __sanitizer_syscall_pre_impl_bind((long long)(s), (long long)(name), \ + (long long)(namelen)) +#define __sanitizer_syscall_post_bind(res, s, name, namelen) \ + __sanitizer_syscall_post_impl_bind(res, (long long)(s), (long long)(name), \ + (long long)(namelen)) +#define __sanitizer_syscall_pre_setsockopt(s, level, name, val, valsize) \ + __sanitizer_syscall_pre_impl_setsockopt((long long)(s), (long long)(level), \ + (long long)(name), (long long)(val), \ + (long long)(valsize)) +#define __sanitizer_syscall_post_setsockopt(res, s, level, name, val, valsize) \ + __sanitizer_syscall_post_impl_setsockopt( \ + res, (long long)(s), (long long)(level), (long long)(name), \ + (long long)(val), (long long)(valsize)) +#define __sanitizer_syscall_pre_listen(s, backlog) \ + __sanitizer_syscall_pre_impl_listen((long long)(s), (long long)(backlog)) +#define __sanitizer_syscall_post_listen(res, s, backlog) \ + __sanitizer_syscall_post_impl_listen(res, (long long)(s), \ + (long long)(backlog)) +/* syscall 107 has been skipped */ +#define __sanitizer_syscall_pre_compat_43_osigvec(signum, nsv, osv) \ + __sanitizer_syscall_pre_impl_compat_43_osigvec( \ + (long long)(signum), (long long)(nsv), (long long)(osv)) +#define __sanitizer_syscall_post_compat_43_osigvec(res, signum, nsv, osv) \ + __sanitizer_syscall_post_impl_compat_43_osigvec( \ + res, (long long)(signum), (long long)(nsv), (long long)(osv)) +#define __sanitizer_syscall_pre_compat_43_osigblock(mask) \ + __sanitizer_syscall_pre_impl_compat_43_osigblock((long long)(mask)) +#define __sanitizer_syscall_post_compat_43_osigblock(res, mask) \ + __sanitizer_syscall_post_impl_compat_43_osigblock(res, (long long)(mask)) +#define __sanitizer_syscall_pre_compat_43_osigsetmask(mask) \ + __sanitizer_syscall_pre_impl_compat_43_osigsetmask((long long)(mask)) +#define __sanitizer_syscall_post_compat_43_osigsetmask(res, mask) \ + __sanitizer_syscall_post_impl_compat_43_osigsetmask(res, (long long)(mask)) +#define __sanitizer_syscall_pre_compat_13_sigsuspend13(mask) \ + __sanitizer_syscall_pre_impl_compat_13_sigsuspend13((long long)(mask)) +#define __sanitizer_syscall_post_compat_13_sigsuspend13(res, mask) \ + __sanitizer_syscall_post_impl_compat_13_sigsuspend13(res, (long long)(mask)) +#define __sanitizer_syscall_pre_compat_43_osigstack(nss, oss) \ + __sanitizer_syscall_pre_impl_compat_43_osigstack((long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_post_compat_43_osigstack(res, nss, oss) \ + __sanitizer_syscall_post_impl_compat_43_osigstack(res, (long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_pre_compat_43_orecvmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_compat_43_orecvmsg( \ + (long long)(s), (long long)(msg), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_orecvmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_compat_43_orecvmsg( \ + res, (long long)(s), (long long)(msg), (long long)(flags)) +#define __sanitizer_syscall_pre_compat_43_osendmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_compat_43_osendmsg( \ + (long long)(s), (long long)(msg), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_osendmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_compat_43_osendmsg( \ + res, (long long)(s), (long long)(msg), (long long)(flags)) +/* syscall 115 has been skipped */ +#define __sanitizer_syscall_pre_compat_50_gettimeofday(tp, tzp) \ + __sanitizer_syscall_pre_impl_compat_50_gettimeofday((long long)(tp), \ + (long long)(tzp)) +#define __sanitizer_syscall_post_compat_50_gettimeofday(res, tp, tzp) \ + __sanitizer_syscall_post_impl_compat_50_gettimeofday(res, (long long)(tp), \ + (long long)(tzp)) +#define __sanitizer_syscall_pre_compat_50_getrusage(who, rusage) \ + __sanitizer_syscall_pre_impl_compat_50_getrusage((long long)(who), \ + (long long)(rusage)) +#define __sanitizer_syscall_post_compat_50_getrusage(res, who, rusage) \ + __sanitizer_syscall_post_impl_compat_50_getrusage(res, (long long)(who), \ + (long long)(rusage)) +#define __sanitizer_syscall_pre_getsockopt(s, level, name, val, avalsize) \ + __sanitizer_syscall_pre_impl_getsockopt((long long)(s), (long long)(level), \ + (long long)(name), (long long)(val), \ + (long long)(avalsize)) +#define __sanitizer_syscall_post_getsockopt(res, s, level, name, val, \ + avalsize) \ + __sanitizer_syscall_post_impl_getsockopt( \ + res, (long long)(s), (long long)(level), (long long)(name), \ + (long long)(val), (long long)(avalsize)) +/* syscall 119 has been skipped */ +#define __sanitizer_syscall_pre_readv(fd, iovp, iovcnt) \ + __sanitizer_syscall_pre_impl_readv((long long)(fd), (long long)(iovp), \ + (long long)(iovcnt)) +#define __sanitizer_syscall_post_readv(res, fd, iovp, iovcnt) \ + __sanitizer_syscall_post_impl_readv(res, (long long)(fd), (long long)(iovp), \ + (long long)(iovcnt)) +#define __sanitizer_syscall_pre_writev(fd, iovp, iovcnt) \ + __sanitizer_syscall_pre_impl_writev((long long)(fd), (long long)(iovp), \ + (long long)(iovcnt)) +#define __sanitizer_syscall_post_writev(res, fd, iovp, iovcnt) \ + __sanitizer_syscall_post_impl_writev(res, (long long)(fd), \ + (long long)(iovp), (long long)(iovcnt)) +#define __sanitizer_syscall_pre_compat_50_settimeofday(tv, tzp) \ + __sanitizer_syscall_pre_impl_compat_50_settimeofday((long long)(tv), \ + (long long)(tzp)) +#define __sanitizer_syscall_post_compat_50_settimeofday(res, tv, tzp) \ + __sanitizer_syscall_post_impl_compat_50_settimeofday(res, (long long)(tv), \ + (long long)(tzp)) +#define __sanitizer_syscall_pre_fchown(fd, uid, gid) \ + __sanitizer_syscall_pre_impl_fchown((long long)(fd), (long long)(uid), \ + (long long)(gid)) +#define __sanitizer_syscall_post_fchown(res, fd, uid, gid) \ + __sanitizer_syscall_post_impl_fchown(res, (long long)(fd), (long long)(uid), \ + (long long)(gid)) +#define __sanitizer_syscall_pre_fchmod(fd, mode) \ + __sanitizer_syscall_pre_impl_fchmod((long long)(fd), (long long)(mode)) +#define __sanitizer_syscall_post_fchmod(res, fd, mode) \ + __sanitizer_syscall_post_impl_fchmod(res, (long long)(fd), (long long)(mode)) +#define __sanitizer_syscall_pre_compat_43_orecvfrom(s, buf, len, flags, from, \ + fromlenaddr) \ + __sanitizer_syscall_pre_impl_compat_43_orecvfrom( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags), \ + (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_post_compat_43_orecvfrom(res, s, buf, len, flags, \ + from, fromlenaddr) \ + __sanitizer_syscall_post_impl_compat_43_orecvfrom( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags), (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_pre_setreuid(ruid, euid) \ + __sanitizer_syscall_pre_impl_setreuid((long long)(ruid), (long long)(euid)) +#define __sanitizer_syscall_post_setreuid(res, ruid, euid) \ + __sanitizer_syscall_post_impl_setreuid(res, (long long)(ruid), \ + (long long)(euid)) +#define __sanitizer_syscall_pre_setregid(rgid, egid) \ + __sanitizer_syscall_pre_impl_setregid((long long)(rgid), (long long)(egid)) +#define __sanitizer_syscall_post_setregid(res, rgid, egid) \ + __sanitizer_syscall_post_impl_setregid(res, (long long)(rgid), \ + (long long)(egid)) +#define __sanitizer_syscall_pre_rename(from, to) \ + __sanitizer_syscall_pre_impl_rename((long long)(from), (long long)(to)) +#define __sanitizer_syscall_post_rename(res, from, to) \ + __sanitizer_syscall_post_impl_rename(res, (long long)(from), (long long)(to)) +#define __sanitizer_syscall_pre_compat_43_otruncate(path, length) \ + __sanitizer_syscall_pre_impl_compat_43_otruncate((long long)(path), \ + (long long)(length)) +#define __sanitizer_syscall_post_compat_43_otruncate(res, path, length) \ + __sanitizer_syscall_post_impl_compat_43_otruncate(res, (long long)(path), \ + (long long)(length)) +#define __sanitizer_syscall_pre_compat_43_oftruncate(fd, length) \ + __sanitizer_syscall_pre_impl_compat_43_oftruncate((long long)(fd), \ + (long long)(length)) +#define __sanitizer_syscall_post_compat_43_oftruncate(res, fd, length) \ + __sanitizer_syscall_post_impl_compat_43_oftruncate(res, (long long)(fd), \ + (long long)(length)) +#define __sanitizer_syscall_pre_flock(fd, how) \ + __sanitizer_syscall_pre_impl_flock((long long)(fd), (long long)(how)) +#define __sanitizer_syscall_post_flock(res, fd, how) \ + __sanitizer_syscall_post_impl_flock(res, (long long)(fd), (long long)(how)) +#define __sanitizer_syscall_pre_mkfifo(path, mode) \ + __sanitizer_syscall_pre_impl_mkfifo((long long)(path), (long long)(mode)) +#define __sanitizer_syscall_post_mkfifo(res, path, mode) \ + __sanitizer_syscall_post_impl_mkfifo(res, (long long)(path), \ + (long long)(mode)) +#define __sanitizer_syscall_pre_sendto(s, buf, len, flags, to, tolen) \ + __sanitizer_syscall_pre_impl_sendto((long long)(s), (long long)(buf), \ + (long long)(len), (long long)(flags), \ + (long long)(to), (long long)(tolen)) +#define __sanitizer_syscall_post_sendto(res, s, buf, len, flags, to, tolen) \ + __sanitizer_syscall_post_impl_sendto(res, (long long)(s), (long long)(buf), \ + (long long)(len), (long long)(flags), \ + (long long)(to), (long long)(tolen)) +#define __sanitizer_syscall_pre_shutdown(s, how) \ + __sanitizer_syscall_pre_impl_shutdown((long long)(s), (long long)(how)) +#define __sanitizer_syscall_post_shutdown(res, s, how) \ + __sanitizer_syscall_post_impl_shutdown(res, (long long)(s), (long long)(how)) +#define __sanitizer_syscall_pre_socketpair(domain, type, protocol, rsv) \ + __sanitizer_syscall_pre_impl_socketpair( \ + (long long)(domain), (long long)(type), (long long)(protocol), \ + (long long)(rsv)) +#define __sanitizer_syscall_post_socketpair(res, domain, type, protocol, rsv) \ + __sanitizer_syscall_post_impl_socketpair( \ + res, (long long)(domain), (long long)(type), (long long)(protocol), \ + (long long)(rsv)) +#define __sanitizer_syscall_pre_mkdir(path, mode) \ + __sanitizer_syscall_pre_impl_mkdir((long long)(path), (long long)(mode)) +#define __sanitizer_syscall_post_mkdir(res, path, mode) \ + __sanitizer_syscall_post_impl_mkdir(res, (long long)(path), (long long)(mode)) +#define __sanitizer_syscall_pre_rmdir(path) \ + __sanitizer_syscall_pre_impl_rmdir((long long)(path)) +#define __sanitizer_syscall_post_rmdir(res, path) \ + __sanitizer_syscall_post_impl_rmdir(res, (long long)(path)) +#define __sanitizer_syscall_pre_compat_50_utimes(path, tptr) \ + __sanitizer_syscall_pre_impl_compat_50_utimes((long long)(path), \ + (long long)(tptr)) +#define __sanitizer_syscall_post_compat_50_utimes(res, path, tptr) \ + __sanitizer_syscall_post_impl_compat_50_utimes(res, (long long)(path), \ + (long long)(tptr)) +/* syscall 139 has been skipped */ +#define __sanitizer_syscall_pre_compat_50_adjtime(delta, olddelta) \ + __sanitizer_syscall_pre_impl_compat_50_adjtime((long long)(delta), \ + (long long)(olddelta)) +#define __sanitizer_syscall_post_compat_50_adjtime(res, delta, olddelta) \ + __sanitizer_syscall_post_impl_compat_50_adjtime(res, (long long)(delta), \ + (long long)(olddelta)) +#define __sanitizer_syscall_pre_compat_43_ogetpeername(fdes, asa, alen) \ + __sanitizer_syscall_pre_impl_compat_43_ogetpeername( \ + (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_compat_43_ogetpeername(res, fdes, asa, alen) \ + __sanitizer_syscall_post_impl_compat_43_ogetpeername( \ + res, (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_pre_compat_43_ogethostid() \ + __sanitizer_syscall_pre_impl_compat_43_ogethostid() +#define __sanitizer_syscall_post_compat_43_ogethostid(res) \ + __sanitizer_syscall_post_impl_compat_43_ogethostid(res) +#define __sanitizer_syscall_pre_compat_43_osethostid(hostid) \ + __sanitizer_syscall_pre_impl_compat_43_osethostid((long long)(hostid)) +#define __sanitizer_syscall_post_compat_43_osethostid(res, hostid) \ + __sanitizer_syscall_post_impl_compat_43_osethostid(res, (long long)(hostid)) +#define __sanitizer_syscall_pre_compat_43_ogetrlimit(which, rlp) \ + __sanitizer_syscall_pre_impl_compat_43_ogetrlimit((long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_post_compat_43_ogetrlimit(res, which, rlp) \ + __sanitizer_syscall_post_impl_compat_43_ogetrlimit(res, (long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_pre_compat_43_osetrlimit(which, rlp) \ + __sanitizer_syscall_pre_impl_compat_43_osetrlimit((long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_post_compat_43_osetrlimit(res, which, rlp) \ + __sanitizer_syscall_post_impl_compat_43_osetrlimit(res, (long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_pre_compat_43_okillpg(pgid, signum) \ + __sanitizer_syscall_pre_impl_compat_43_okillpg((long long)(pgid), \ + (long long)(signum)) +#define __sanitizer_syscall_post_compat_43_okillpg(res, pgid, signum) \ + __sanitizer_syscall_post_impl_compat_43_okillpg(res, (long long)(pgid), \ + (long long)(signum)) +#define __sanitizer_syscall_pre_setsid() __sanitizer_syscall_pre_impl_setsid() +#define __sanitizer_syscall_post_setsid(res) \ + __sanitizer_syscall_post_impl_setsid(res) +#define __sanitizer_syscall_pre_compat_50_quotactl(path, cmd, uid, arg) \ + __sanitizer_syscall_pre_impl_compat_50_quotactl( \ + (long long)(path), (long long)(cmd), (long long)(uid), (long long)(arg)) +#define __sanitizer_syscall_post_compat_50_quotactl(res, path, cmd, uid, arg) \ + __sanitizer_syscall_post_impl_compat_50_quotactl( \ + res, (long long)(path), (long long)(cmd), (long long)(uid), \ + (long long)(arg)) +#define __sanitizer_syscall_pre_compat_43_oquota() \ + __sanitizer_syscall_pre_impl_compat_43_oquota() +#define __sanitizer_syscall_post_compat_43_oquota(res) \ + __sanitizer_syscall_post_impl_compat_43_oquota(res) +#define __sanitizer_syscall_pre_compat_43_ogetsockname(fdec, asa, alen) \ + __sanitizer_syscall_pre_impl_compat_43_ogetsockname( \ + (long long)(fdec), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_compat_43_ogetsockname(res, fdec, asa, alen) \ + __sanitizer_syscall_post_impl_compat_43_ogetsockname( \ + res, (long long)(fdec), (long long)(asa), (long long)(alen)) +/* syscall 151 has been skipped */ +/* syscall 152 has been skipped */ +/* syscall 153 has been skipped */ +/* syscall 154 has been skipped */ +#define __sanitizer_syscall_pre_nfssvc(flag, argp) \ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Sat Feb 16 12:49:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B921B14E41E2; Sat, 16 Feb 2019 12:49:56 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 58E56891F2; Sat, 16 Feb 2019 12:49:56 +0000 (UTC) (envelope-from emaste@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4BC506CAB; Sat, 16 Feb 2019 12:49:56 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GCnuQ0054997; Sat, 16 Feb 2019 12:49:56 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GCnuuv054996; Sat, 16 Feb 2019 12:49:56 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201902161249.x1GCnuuv054996@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Sat, 16 Feb 2019 12:49:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344211 - head/usr.sbin/wlandebug X-SVN-Group: head X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: head/usr.sbin/wlandebug X-SVN-Commit-Revision: 344211 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 58E56891F2 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.950,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 12:49:56 -0000 Author: emaste Date: Sat Feb 16 12:49:55 2019 New Revision: 344211 URL: https://svnweb.freebsd.org/changeset/base/344211 Log: wlandebug: disable PIE to fix build failure libifconfig is built as a static-only PRIVATELIB (and there is no _pie.a version) so disable PIE in libifconfig's consumer. Sponsored by: The FreeBSD Foundation Modified: head/usr.sbin/wlandebug/Makefile Modified: head/usr.sbin/wlandebug/Makefile ============================================================================== --- head/usr.sbin/wlandebug/Makefile Sat Feb 16 09:50:17 2019 (r344210) +++ head/usr.sbin/wlandebug/Makefile Sat Feb 16 12:49:55 2019 (r344211) @@ -2,6 +2,7 @@ PROG= wlandebug MAN= wlandebug.8 +MK_PIE:= no LIBADD+= ifconfig From owner-svn-src-all@freebsd.org Sat Feb 16 15:57:40 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B266D14EBE90; Sat, 16 Feb 2019 15:57:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A7C008FCFE; Sat, 16 Feb 2019 15:57:36 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 911E68CB8; Sat, 16 Feb 2019 15:57:36 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GFvaMo054055; Sat, 16 Feb 2019 15:57:36 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GFvZ3L054047; Sat, 16 Feb 2019 15:57:35 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902161557.x1GFvZ3L054047@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 16 Feb 2019 15:57:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344213 - in stable/11: . contrib/compiler-rt contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray contrib/compiler-rt/lib/BlocksRuntime contrib/compiler-rt/lib/asan c... X-SVN-Group: stable-11 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable/11: . contrib/compiler-rt contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray contrib/compiler-rt/lib/BlocksRuntime contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/bu... X-SVN-Commit-Revision: 344213 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: A7C008FCFE X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.96)[-0.958,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 15:57:40 -0000 Author: dim Date: Sat Feb 16 15:57:29 2019 New Revision: 344213 URL: https://svnweb.freebsd.org/changeset/base/344213 Log: Merge clang 7.0.1 and several follow-up changes MFC r318594: Add libc++experimental.a for std::experimental support This adds a separate library for supporting std::experimental features. It is purposefully static, and must be explicitly linked into programs using -lc++experimental. PLEASE NOTE: there is NO WARRANTY as to any stability or continuing existence of the features in the std::experimental parts of the C++ library! Reviewed by: ed Differential Revision: https://reviews.freebsd.org/D10840 MFC r318598: Add PICFLAG to build libc++experimental.a, so it can be used in all situations. Noticed by: kib r336969 | emaste | 2018-07-31 16:12:09 +0200 (Tue, 31 Jul 2018) | 13 lines llvm: [ELF][ARM] Add Arm ABI names for float ABI ELF Header flags The ELF for the Arm architecture document defines, for EF_ARM_EABI_VER5 and above, the flags EF_ARM_ABI_FLOAT_HARD and EF_ARM_ABI_FLOAT_SOFT. These have been defined to be compatible with the existing EF_ARM_VFP_FLOAT and EF_ARM_SOFT_FLOAT used by gcc for EF_ARM_EABI_UNKNOWN. This patch adds the flags in addition to the existing ones so that any code depending on the old names will still work. Obtained from: llvm r338370 by Peter Smith r336970 | emaste | 2018-07-31 16:14:41 +0200 (Tue, 31 Jul 2018) | 9 lines llvm: [ARM] Complete enumeration values for Tag_ABI_VFP_args The LLD implementation of Tag_ABI_VFP_args needs to check the rarely seen values of 3 (toolchain specific) and 4 compatible with both Base and VFP. Add the missing enumeration values so that LLD can refer to them without having to use the raw numbers. Obtained from: llvm r338373 by Peter Smith r336972 | emaste | 2018-07-31 17:25:03 +0200 (Tue, 31 Jul 2018) | 37 lines lld: [ELF][ARM] Implement support for Tag_ABI_VFP_args The Tag_ABI_VFP_args build attribute controls the procedure call standard used for floating point parameters on ARM. The values are: 0 - Base AAPCS (FP Parameters passed in Core (Integer) registers 1 - VFP AAPCS (FP Parameters passed in FP registers) 2 - Toolchain specific (Neither Base or VFP) 3 - Compatible with all (No use of floating point parameters) If the Tag_ABI_VFP_args build attribute is missing it has an implicit value of 0. We use the attribute in two ways: * Detect a clash in calling convention between Base, VFP and Toolchain. we follow ld.bfd's lead and do not error if there is a clash between an implicit Base AAPCS caused by a missing attribute. Many projects including the hard-float (VFP AAPCS) version of glibc contain assembler files that do not use floating point but do not have Tag_ABI_VFP_args. * Set the EF_ARM_ABI_FLOAT_SOFT or EF_ARM_ABI_FLOAT_HARD ELF header flag for Base or VFP AAPCS respectively. This flag is used by some ELF loaders. References: * Addenda to, and Errata in, the ABI for the ARM Architecture for Tag_ABI_VFP_args * Elf for the ARM Architecture for ELF header flags Fixes LLVM PR36009 PR: 229050 Obtained from: llvm r338377 by Peter Smith r337282 | alc | 2018-08-04 04:30:51 +0200 (Sat, 04 Aug 2018) | 7 lines Set the default image base on arm64 and i386 to a superpage-aligned address. Reviewed by: emaste, markj Discussed with: dim Differential Revision: https://reviews.freebsd.org/D16385 r339304 | emaste | 2018-10-11 15:19:17 +0200 (Thu, 11 Oct 2018) | 13 lines lld: set sh_link and sh_info for .rela.plt sections ELF spec says that for SHT_REL and SHT_RELA sh_link should reference the associated string table and sh_info should reference the "section to which the relocation applies." ELF Tool Chain's elfcopy / strip use this (in part) to control whether or not the relocation entry is copied to the output. LLVM PR 37538 https://bugs.llvm.org/show_bug.cgi?id=37538 Approved by: re (kib) Obtained from: llvm r344226 (backported for 6.0) MFC r341825: Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to the upstream release_70 branch r348686 (effectively, 7.0.1 rc3). The release will follow very soon, but no more functional changes are expected. Release notes for llvm, clang and lld 7.0.0 are available here: PR: 230240, 230355 Relnotes: yes MFC r342123: Update clang, llvm, lld, lldb, compiler-rt and libc++ version number to 7.0.1 release r349250. There were no functional changes since the 7.0.1 rc3 import. PR: 230240, 230355 Relnotes: yes r343429 | emaste | 2019-01-25 15:46:13 +0100 (Fri, 25 Jan 2019) | 16 lines clang: default to DWARF 4 as of FreeBSD 13 FreeBSD previously defaulted to DWARF 2 because several tools (gdb, ctfconvert, etc.) did not support later versions. These have either been fixed or are deprecated. Note that gdb 6 still exists but has been moved out of $PATH into /usr/libexec and is intended only for use by crashinfo(8). The kernel build sets the DWARF version explicitly via -gdwarf2, so this should have no effect there. PR: 234887 [exp-run] Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D17930 MFC r343916: Pull in r352607 from upstream llvm trunk (by Craig Topper): [X86] Add FPSW as a Def on some FP instructions that were missing it. Pull in r353141 from upstream llvm trunk (by Craig Topper): [X86] Connect the default fpsr and dirflag clobbers in inline assembly to the registers we have defined for them. Summary: We don't currently map these constraints to physical register numbers so they don't make it to the MachineIR representation of inline assembly. This could have problems for proper dependency tracking in the machine schedulers though I don't have a test case that shows that. Reviewers: rnk Reviewed By: rnk Subscribers: eraman, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D57641 Pull in r353489 from upstream llvm trunk (by Craig Topper): [X86] Add FPCW as a register and start using it as an implicit use on floating point instructions. Summary: FPCW contains the rounding mode control which we manipulate to implement fp to integer conversion by changing the roudning mode, storing the value to the stack, and then changing the rounding mode back. Because we didn't model FPCW and its dependency chain, other instructions could be scheduled into the middle of the sequence. This patch introduces the register and adds it as an implciit def of FLDCW and implicit use of the FP binary arithmetic instructions and store instructions. There are more instructions that need to be updated, but this is a good start. I believe this fixes at least the reduced test case from PR40529. Reviewers: RKSimon, spatel, rnk, efriedma, andrew.w.kaylor Subscribers: dim, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D57735 These should fix a problem in clang 7.0 where it would sometimes emit long double floating point instructions in a slightly wrong order, leading to failures in our libm tests. In particular, the cbrt_test test case 'cbrtl_powl' and the trig_test test case 'reduction'. Also bump __FreeBSD_cc_version, to be able to detect this in our test suite. Reported by: lwhsu PR: 234040 Upstream PR: https://bugs.llvm.org/show_bug.cgi?id=40206 MFC r344056: Pull in r339734 from upstream llvm trunk (by Eli Friedman): [ARM] Make PerformSHLSimplify add nodes to the DAG worklist correctly. Intentionally excluding nodes from the DAGCombine worklist is likely to lead to weird optimizations and infinite loops, so it's generally a bad idea. To avoid the infinite loops, fix DAGCombine to use the isDesirableToCommuteWithShift target hook before performing the transforms in question, and implement the target hook in the ARM backend disable the transforms in question. Fixes https://bugs.llvm.org/show_bug.cgi?id=38530 . (I don't have a reduced testcase for that bug. But we should have sufficient test coverage for PerformSHLSimplify given that we're not playing weird tricks with the worklist. I can try to bugpoint it if necessary, though.) Differential Revision: https://reviews.llvm.org/D50667 This should fix a possible hang when compiling sys/dev/nxge/if_nxge.c (which exists now only in the stable/11 branch) for arm. Added: stable/11/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h - copied unchanged from r341825, head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h stable/11/contrib/compiler-rt/lib/asan/asan_malloc_local.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/asan/asan_malloc_local.h stable/11/contrib/compiler-rt/lib/asan/asan_mapping_myriad.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/asan/asan_mapping_myriad.h stable/11/contrib/compiler-rt/lib/asan/asan_rtems.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/asan/asan_rtems.cc stable/11/contrib/compiler-rt/lib/builtins/arm/chkstk.S - copied unchanged from r341825, head/contrib/compiler-rt/lib/builtins/arm/chkstk.S stable/11/contrib/compiler-rt/lib/builtins/hexagon/ - copied from r341825, head/contrib/compiler-rt/lib/builtins/hexagon/ stable/11/contrib/compiler-rt/lib/builtins/riscv/ - copied from r341825, head/contrib/compiler-rt/lib/builtins/riscv/ - copied from r341825, head/contrib/compiler-rt/lib/fuzzer/ stable/11/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cc stable/11/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.h stable/11/contrib/compiler-rt/lib/hwasan/hwasan_mapping.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_mapping.h stable/11/contrib/compiler-rt/lib/hwasan/hwasan_report.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/hwasan/hwasan_report.h stable/11/contrib/compiler-rt/lib/msan/msan_report.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/msan/msan_report.h stable/11/contrib/compiler-rt/lib/profile/InstrProfilingPlatformFuchsia.c - copied unchanged from r341825, head/contrib/compiler-rt/lib/profile/InstrProfilingPlatformFuchsia.c stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_report.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_openbsd.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_openbsd.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_markup.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_markup.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscalls_netbsd.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscalls_netbsd.inc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cc stable/11/contrib/compiler-rt/lib/scudo/scudo_errors.cpp - copied unchanged from r341825, head/contrib/compiler-rt/lib/scudo/scudo_errors.cpp stable/11/contrib/compiler-rt/lib/scudo/scudo_errors.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/scudo/scudo_errors.h stable/11/contrib/compiler-rt/lib/scudo/scudo_malloc.cpp - copied unchanged from r341825, head/contrib/compiler-rt/lib/scudo/scudo_malloc.cpp stable/11/contrib/compiler-rt/lib/ubsan/ubsan_init_standalone_preinit.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/ubsan/ubsan_init_standalone_preinit.cc stable/11/contrib/compiler-rt/lib/ubsan/ubsan_monitor.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/ubsan/ubsan_monitor.cc stable/11/contrib/compiler-rt/lib/ubsan/ubsan_monitor.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/ubsan/ubsan_monitor.h stable/11/contrib/compiler-rt/lib/xray/xray_allocator.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_allocator.h stable/11/contrib/compiler-rt/lib/xray/xray_basic_flags.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_flags.cc stable/11/contrib/compiler-rt/lib/xray/xray_basic_flags.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_flags.h stable/11/contrib/compiler-rt/lib/xray/xray_basic_flags.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_flags.inc stable/11/contrib/compiler-rt/lib/xray/xray_basic_logging.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_logging.cc stable/11/contrib/compiler-rt/lib/xray/xray_basic_logging.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_basic_logging.h stable/11/contrib/compiler-rt/lib/xray/xray_fdr_flags.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_fdr_flags.cc stable/11/contrib/compiler-rt/lib/xray/xray_fdr_flags.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_fdr_flags.h stable/11/contrib/compiler-rt/lib/xray/xray_fdr_flags.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_fdr_flags.inc stable/11/contrib/compiler-rt/lib/xray/xray_function_call_trie.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_function_call_trie.h stable/11/contrib/compiler-rt/lib/xray/xray_profile_collector.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profile_collector.cc stable/11/contrib/compiler-rt/lib/xray/xray_profile_collector.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profile_collector.h stable/11/contrib/compiler-rt/lib/xray/xray_profiling.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling.cc stable/11/contrib/compiler-rt/lib/xray/xray_profiling_flags.cc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling_flags.cc stable/11/contrib/compiler-rt/lib/xray/xray_profiling_flags.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling_flags.h stable/11/contrib/compiler-rt/lib/xray/xray_profiling_flags.inc - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_profiling_flags.inc stable/11/contrib/compiler-rt/lib/xray/xray_recursion_guard.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_recursion_guard.h stable/11/contrib/compiler-rt/lib/xray/xray_segmented_array.h - copied unchanged from r341825, head/contrib/compiler-rt/lib/xray/xray_segmented_array.h stable/11/contrib/libc++/include/__errc - copied unchanged from r341825, head/contrib/libc++/include/__errc stable/11/contrib/libc++/include/__node_handle - copied unchanged from r341825, head/contrib/libc++/include/__node_handle stable/11/contrib/libc++/include/charconv - copied unchanged from r341825, head/contrib/libc++/include/charconv stable/11/contrib/libc++/include/compare - copied unchanged from r341825, head/contrib/libc++/include/compare stable/11/contrib/libc++/include/experimental/simd - copied unchanged from r341825, head/contrib/libc++/include/experimental/simd stable/11/contrib/libc++/include/filesystem - copied unchanged from r341825, head/contrib/libc++/include/filesystem stable/11/contrib/libc++/include/span - copied unchanged from r341825, head/contrib/libc++/include/span stable/11/contrib/libc++/include/version - copied unchanged from r341825, head/contrib/libc++/include/version stable/11/contrib/libc++/src/charconv.cpp - copied unchanged from r341825, head/contrib/libc++/src/charconv.cpp stable/11/contrib/libc++/src/filesystem/ - copied from r341825, head/contrib/libc++/src/filesystem/ stable/11/contrib/libc++/src/include/apple_availability.h - copied unchanged from r341825, head/contrib/libc++/src/include/apple_availability.h stable/11/contrib/llvm/include/llvm-c/Comdat.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/Comdat.h stable/11/contrib/llvm/include/llvm-c/DataTypes.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/DataTypes.h stable/11/contrib/llvm/include/llvm-c/DisassemblerTypes.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/DisassemblerTypes.h stable/11/contrib/llvm/include/llvm-c/Transforms/InstCombine.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/Transforms/InstCombine.h stable/11/contrib/llvm/include/llvm-c/Transforms/Utils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm-c/Transforms/Utils.h stable/11/contrib/llvm/include/llvm/ADT/Any.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ADT/Any.h stable/11/contrib/llvm/include/llvm/ADT/FunctionExtras.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ADT/FunctionExtras.h stable/11/contrib/llvm/include/llvm/Analysis/MustExecute.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Analysis/MustExecute.h stable/11/contrib/llvm/include/llvm/Analysis/PhiValues.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Analysis/PhiValues.h stable/11/contrib/llvm/include/llvm/Analysis/SyntheticCountsUtils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Analysis/SyntheticCountsUtils.h stable/11/contrib/llvm/include/llvm/Analysis/Utils/ - copied from r341825, head/contrib/llvm/include/llvm/Analysis/Utils/ stable/11/contrib/llvm/include/llvm/BinaryFormat/DynamicTags.def - copied unchanged from r341825, head/contrib/llvm/include/llvm/BinaryFormat/DynamicTags.def stable/11/contrib/llvm/include/llvm/CodeGen/AccelTable.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/AccelTable.h stable/11/contrib/llvm/include/llvm/CodeGen/CommandFlags.inc - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/CommandFlags.inc stable/11/contrib/llvm/include/llvm/CodeGen/ExecutionDomainFix.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/ExecutionDomainFix.h stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/Combiner.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/Combiner.h stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h stable/11/contrib/llvm/include/llvm/CodeGen/LoopTraversal.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/LoopTraversal.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineOutliner.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/MachineOutliner.h stable/11/contrib/llvm/include/llvm/CodeGen/ReachingDefAnalysis.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/ReachingDefAnalysis.h stable/11/contrib/llvm/include/llvm/CodeGen/WasmEHFuncInfo.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/CodeGen/WasmEHFuncInfo.h stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAddr.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAddr.h stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRnglists.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRnglists.h stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumInjectedSources.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumInjectedSources.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSectionContribs.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSectionContribs.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAInjectedSource.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAInjectedSource.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASectionContrib.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASectionContrib.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAUtils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAUtils.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBInjectedSource.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBInjectedSource.h stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSectionContrib.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSectionContrib.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/Core.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Core.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/Layer.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Layer.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/Legacy.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Legacy.h stable/11/contrib/llvm/include/llvm/IR/DomTreeUpdater.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/IR/DomTreeUpdater.h stable/11/contrib/llvm/include/llvm/IR/RuntimeLibcalls.def - copied unchanged from r341825, head/contrib/llvm/include/llvm/IR/RuntimeLibcalls.def stable/11/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.inc - copied unchanged from r341825, head/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.inc stable/11/contrib/llvm/include/llvm/Object/CVDebugRecord.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Object/CVDebugRecord.h stable/11/contrib/llvm/include/llvm/Object/WasmTraits.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Object/WasmTraits.h stable/11/contrib/llvm/include/llvm/Passes/PassPlugin.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Passes/PassPlugin.h stable/11/contrib/llvm/include/llvm/Support/AMDHSAKernelDescriptor.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/AMDHSAKernelDescriptor.h stable/11/contrib/llvm/include/llvm/Support/CheckedArithmetic.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/CheckedArithmetic.h stable/11/contrib/llvm/include/llvm/Support/DJB.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/DJB.h stable/11/contrib/llvm/include/llvm/Support/DataTypes.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/DataTypes.h stable/11/contrib/llvm/include/llvm/Support/InitLLVM.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/InitLLVM.h stable/11/contrib/llvm/include/llvm/Support/JSON.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/JSON.h stable/11/contrib/llvm/include/llvm/Support/MachineValueType.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/MachineValueType.h stable/11/contrib/llvm/include/llvm/Support/MemAlloc.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/MemAlloc.h stable/11/contrib/llvm/include/llvm/Support/SmallVectorMemoryBuffer.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/SmallVectorMemoryBuffer.h stable/11/contrib/llvm/include/llvm/Support/TargetOpcodes.def - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/TargetOpcodes.def stable/11/contrib/llvm/include/llvm/Support/TaskQueue.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/TaskQueue.h stable/11/contrib/llvm/include/llvm/Support/VersionTuple.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/VersionTuple.h stable/11/contrib/llvm/include/llvm/Support/WithColor.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/WithColor.h stable/11/contrib/llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h stable/11/contrib/llvm/include/llvm/Target/CodeGenCWrappers.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Target/CodeGenCWrappers.h stable/11/contrib/llvm/include/llvm/Target/TargetInstrPredicate.td - copied unchanged from r341825, head/contrib/llvm/include/llvm/Target/TargetInstrPredicate.td stable/11/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h stable/11/contrib/llvm/include/llvm/Transforms/AggressiveInstCombine/ - copied from r341825, head/contrib/llvm/include/llvm/Transforms/AggressiveInstCombine/ stable/11/contrib/llvm/include/llvm/Transforms/IPO/SampleProfile.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/IPO/SampleProfile.h stable/11/contrib/llvm/include/llvm/Transforms/IPO/SyntheticCountsPropagation.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/IPO/SyntheticCountsPropagation.h stable/11/contrib/llvm/include/llvm/Transforms/Instrumentation/CGProfile.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/CGProfile.h stable/11/contrib/llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h stable/11/contrib/llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h stable/11/contrib/llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h stable/11/contrib/llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h stable/11/contrib/llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h stable/11/contrib/llvm/include/llvm/Transforms/Utils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Utils.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h stable/11/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h - copied unchanged from r341825, head/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h stable/11/contrib/llvm/lib/Analysis/MustExecute.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Analysis/MustExecute.cpp stable/11/contrib/llvm/lib/Analysis/PhiValues.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Analysis/PhiValues.cpp stable/11/contrib/llvm/lib/Analysis/SyntheticCountsUtils.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Analysis/SyntheticCountsUtils.cpp stable/11/contrib/llvm/lib/BinaryFormat/Wasm.cpp - copied unchanged from r341825, head/contrib/llvm/lib/BinaryFormat/Wasm.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h stable/11/contrib/llvm/lib/CodeGen/BreakFalseDeps.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/BreakFalseDeps.cpp stable/11/contrib/llvm/lib/CodeGen/CFIInstrInserter.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/CFIInstrInserter.cpp stable/11/contrib/llvm/lib/CodeGen/ExecutionDomainFix.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/ExecutionDomainFix.cpp stable/11/contrib/llvm/lib/CodeGen/GlobalISel/Combiner.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/Combiner.cpp stable/11/contrib/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp stable/11/contrib/llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp stable/11/contrib/llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp stable/11/contrib/llvm/lib/CodeGen/LoopTraversal.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/LoopTraversal.cpp stable/11/contrib/llvm/lib/CodeGen/ReachingDefAnalysis.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/ReachingDefAnalysis.cpp stable/11/contrib/llvm/lib/CodeGen/ValueTypes.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/ValueTypes.cpp stable/11/contrib/llvm/lib/CodeGen/WasmEHPrepare.cpp - copied unchanged from r341825, head/contrib/llvm/lib/CodeGen/WasmEHPrepare.cpp stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAddr.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAddr.cpp stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumInjectedSources.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumInjectedSources.cpp stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSectionContribs.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSectionContribs.cpp stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAInjectedSource.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAInjectedSource.cpp stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp - copied unchanged from r341825, head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp stable/11/contrib/llvm/lib/Demangle/Compiler.h - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/Compiler.h stable/11/contrib/llvm/lib/Demangle/MicrosoftDemangle.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/MicrosoftDemangle.cpp stable/11/contrib/llvm/lib/Demangle/StringView.h - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/StringView.h stable/11/contrib/llvm/lib/Demangle/Utility.h - copied unchanged from r341825, head/contrib/llvm/lib/Demangle/Utility.h stable/11/contrib/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/Core.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/Core.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/Layer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/Layer.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/Legacy.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/Legacy.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp stable/11/contrib/llvm/lib/ExecutionEngine/PerfJITEvents/ - copied from r341825, head/contrib/llvm/lib/ExecutionEngine/PerfJITEvents/ stable/11/contrib/llvm/lib/IR/DomTreeUpdater.cpp - copied unchanged from r341825, head/contrib/llvm/lib/IR/DomTreeUpdater.cpp stable/11/contrib/llvm/lib/MC/MCAsmMacro.cpp - copied unchanged from r341825, head/contrib/llvm/lib/MC/MCAsmMacro.cpp stable/11/contrib/llvm/lib/Passes/PassPlugin.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Passes/PassPlugin.cpp stable/11/contrib/llvm/lib/Support/DJB.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/DJB.cpp stable/11/contrib/llvm/lib/Support/InitLLVM.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/InitLLVM.cpp stable/11/contrib/llvm/lib/Support/JSON.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/JSON.cpp stable/11/contrib/llvm/lib/Support/UnicodeCaseFold.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/UnicodeCaseFold.cpp stable/11/contrib/llvm/lib/Support/VersionTuple.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/VersionTuple.cpp stable/11/contrib/llvm/lib/Support/WithColor.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Support/WithColor.cpp stable/11/contrib/llvm/lib/TableGen/JSONBackend.cpp - copied unchanged from r341825, head/contrib/llvm/lib/TableGen/JSONBackend.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM1.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM1.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUFeatures.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUFeatures.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUGISel.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUGISel.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/R600.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600.td stable/11/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600AsmPrinter.h stable/11/contrib/llvm/lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/SIProgramInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/SIProgramInfo.h stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.h stable/11/contrib/llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMParallelDSP.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/ARM/ARMParallelDSP.cpp stable/11/contrib/llvm/lib/Target/BPF/BPFMIPeephole.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/BPF/BPFMIPeephole.cpp stable/11/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp stable/11/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/BPF/BPFSelectionDAGInfo.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonCallingConv.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/Hexagon/HexagonCallingConv.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonPatternsHVX.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/Hexagon/HexagonPatternsHVX.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonVExtract.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Hexagon/HexagonVExtract.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsBranchExpansion.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsBranchExpansion.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsCallLowering.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsCallLowering.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsCallLowering.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsCallLowering.h stable/11/contrib/llvm/lib/Target/Mips/MipsExpandPseudo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsExpandPseudo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsInstructionSelector.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsInstructionSelector.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.h stable/11/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.h stable/11/contrib/llvm/lib/Target/Mips/MipsRegisterBanks.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/Mips/MipsRegisterBanks.td stable/11/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp stable/11/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500.td stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h stable/11/contrib/llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp stable/11/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp stable/11/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/RISCV/RISCVTargetObjectFile.h stable/11/contrib/llvm/lib/Target/WebAssembly/AsmParser/ - copied from r341825, head/contrib/llvm/lib/Target/WebAssembly/AsmParser/ stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.h stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrExceptRef.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrExceptRef.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.cpp stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/InstPrinter/X86InstPrinterCommon.h stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCExpr.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCExpr.h stable/11/contrib/llvm/lib/Target/X86/ShadowCallStack.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/ShadowCallStack.cpp stable/11/contrib/llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp stable/11/contrib/llvm/lib/Target/X86/X86IndirectBranchTracking.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86IndirectBranchTracking.cpp stable/11/contrib/llvm/lib/Target/X86/X86InstrFoldTables.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86InstrFoldTables.cpp stable/11/contrib/llvm/lib/Target/X86/X86InstrFoldTables.h - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86InstrFoldTables.h stable/11/contrib/llvm/lib/Target/X86/X86PfmCounters.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86PfmCounters.td stable/11/contrib/llvm/lib/Target/X86/X86SchedPredicates.td - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86SchedPredicates.td stable/11/contrib/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp stable/11/contrib/llvm/lib/Transforms/AggressiveInstCombine/ - copied from r341825, head/contrib/llvm/lib/Transforms/AggressiveInstCombine/ stable/11/contrib/llvm/lib/Transforms/IPO/BlockExtractor.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/IPO/BlockExtractor.cpp stable/11/contrib/llvm/lib/Transforms/IPO/SCCP.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/IPO/SCCP.cpp stable/11/contrib/llvm/lib/Transforms/IPO/SyntheticCountsPropagation.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/IPO/SyntheticCountsPropagation.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineTables.td - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/InstCombine/InstCombineTables.td stable/11/contrib/llvm/lib/Transforms/Instrumentation/CGProfile.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Instrumentation/CGProfile.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/InstSimplifyPass.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Scalar/InstSimplifyPass.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LoopRotationUtils.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Utils/LoopRotationUtils.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp stable/11/contrib/llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h stable/11/contrib/llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.h stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.h stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanLoopInfo.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanLoopInfo.h stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.h - copied unchanged from r341825, head/contrib/llvm/lib/Transforms/Vectorize/VPlanVerifier.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ComparisonCategories.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/AST/ComparisonCategories.h stable/11/contrib/llvm/tools/clang/include/clang/AST/NonTrivialTypeVisitor.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/AST/NonTrivialTypeVisitor.h stable/11/contrib/llvm/tools/clang/include/clang/AST/PrettyDeclStackTrace.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/AST/PrettyDeclStackTrace.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/ConstructionContext.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Analysis/ConstructionContext.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/BitmaskEnum.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/BitmaskEnum.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Features.def - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/Features.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/Stack.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/Stack.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/XRayInstr.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/XRayInstr.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/arm_fp16.td - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/arm_fp16.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/arm_neon_incl.td - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Basic/arm_neon_incl.td stable/11/contrib/llvm/tools/clang/include/clang/Sema/ParsedAttr.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Sema/ParsedAttr.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/TemplateInstCallback.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Sema/TemplateInstCallback.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTContext.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTContext.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTExpr.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTExpr.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSolver.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSolver.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSort.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSort.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/AllTUsExecution.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/include/clang/Tooling/AllTUsExecution.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Inclusions/ - copied from r341825, head/contrib/llvm/tools/clang/include/clang/Tooling/Inclusions/ stable/11/contrib/llvm/tools/clang/lib/AST/ComparisonCategories.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/AST/ComparisonCategories.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ConstructionContext.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Analysis/ConstructionContext.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Basic/Targets/RISCV.h stable/11/contrib/llvm/tools/clang/lib/Basic/XRayInstr.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Basic/XRayInstr.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/RISCV.h stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.h stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.h stable/11/contrib/llvm/tools/clang/lib/Frontend/FrontendTiming.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Frontend/FrontendTiming.cpp stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_device_functions.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_device_functions.h stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_libdevice_declares.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_libdevice_declares.h stable/11/contrib/llvm/tools/clang/lib/Headers/cldemoteintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/cldemoteintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/invpcidintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/invpcidintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/movdirintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/movdirintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/pconfigintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/pconfigintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/ptwriteintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/ptwriteintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/sgxintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/sgxintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/waitpkgintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/waitpkgintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/wbnoinvdintrin.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Headers/wbnoinvdintrin.h stable/11/contrib/llvm/tools/clang/lib/Sema/ParsedAttr.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Sema/ParsedAttr.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationState.h - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationState.h stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TrustNonnullChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TrustNonnullChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObjectChecker.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObjectChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/WorkList.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/WorkList.cpp stable/11/contrib/llvm/tools/clang/lib/Tooling/AllTUsExecution.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Tooling/AllTUsExecution.cpp stable/11/contrib/llvm/tools/clang/lib/Tooling/Inclusions/ - copied from r341825, head/contrib/llvm/tools/clang/lib/Tooling/Inclusions/ stable/11/contrib/llvm/tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp stable/11/contrib/llvm/tools/clang/tools/driver/cc1gen_reproducer_main.cpp - copied unchanged from r341825, head/contrib/llvm/tools/clang/tools/driver/cc1gen_reproducer_main.cpp stable/11/contrib/llvm/tools/lld/COFF/ICF.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/COFF/ICF.h stable/11/contrib/llvm/tools/lld/COFF/MarkLive.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/COFF/MarkLive.h stable/11/contrib/llvm/tools/lld/Common/Timer.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lld/Common/Timer.cpp stable/11/contrib/llvm/tools/lld/ELF/Arch/Hexagon.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/Arch/Hexagon.cpp stable/11/contrib/llvm/tools/lld/ELF/CallGraphSort.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/CallGraphSort.cpp stable/11/contrib/llvm/tools/lld/ELF/CallGraphSort.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/CallGraphSort.h stable/11/contrib/llvm/tools/lld/ELF/MarkLive.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/ELF/MarkLive.h stable/11/contrib/llvm/tools/lld/docs/ - copied from r341825, head/contrib/llvm/tools/lld/docs/ stable/11/contrib/llvm/tools/lld/include/lld/Common/Timer.h - copied unchanged from r341825, head/contrib/llvm/tools/lld/include/lld/Common/Timer.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/DumpRegisterValue.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Core/DumpRegisterValue.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionArgParser.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionArgParser.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Args.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/Args.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/CompletionRequest.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/CompletionRequest.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Environment.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/Environment.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractorGDBRemote.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractorGDBRemote.h stable/11/contrib/llvm/tools/lldb/include/lldb/module.modulemap - copied unchanged from r341825, head/contrib/llvm/tools/lldb/include/lldb/module.modulemap stable/11/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.h stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Commands/CommandObjectStats.h stable/11/contrib/llvm/tools/lldb/source/Core/DumpRegisterValue.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Core/DumpRegisterValue.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionArgParser.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Interpreter/OptionArgParser.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Architecture/PPC64/ - copied from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Architecture/PPC64/ stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/ - copied from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/ stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwinConstants.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwinConstants.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-ppc64-register-enums.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-ppc64-register-enums.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFBaseDIE.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.h stable/11/contrib/llvm/tools/lldb/source/Utility/Args.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/Args.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/CompletionRequest.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/CompletionRequest.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/Environment.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/Environment.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/PPC64_DWARF_Registers.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/source/Utility/PPC64_DWARF_Registers.h stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/module.modulemap - copied unchanged from r341825, head/contrib/llvm/tools/lldb/tools/lldb-mi/module.modulemap stable/11/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.cpp - copied unchanged from r341825, head/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.cpp stable/11/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.h - copied unchanged from r341825, head/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.h stable/11/contrib/llvm/tools/llvm-cov/CoverageExporter.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-cov/CoverageExporter.h stable/11/contrib/llvm/tools/llvm-cov/CoverageExporterJson.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-cov/CoverageExporterJson.h stable/11/contrib/llvm/tools/llvm-mca/ - copied from r341825, head/contrib/llvm/tools/llvm-mca/ stable/11/contrib/llvm/tools/llvm-objcopy/ObjcopyOpts.td - copied unchanged from r341825, head/contrib/llvm/tools/llvm-objcopy/ObjcopyOpts.td stable/11/contrib/llvm/tools/llvm-objcopy/StripOpts.td - copied unchanged from r341825, head/contrib/llvm/tools/llvm-objcopy/StripOpts.td stable/11/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp stable/11/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-pdbutil/ExplainOutputStyle.h stable/11/contrib/llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h - copied unchanged from r341825, head/contrib/llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h stable/11/contrib/llvm/tools/llvm-xray/func-id-helper.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/func-id-helper.cpp stable/11/contrib/llvm/tools/llvm-xray/llvm-xray.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/llvm-xray.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-account.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-account.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-color-helper.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-color-helper.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-converter.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-converter.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-extract.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-extract.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-graph-diff.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-graph-diff.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-graph.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-graph.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-registry.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-registry.cpp stable/11/contrib/llvm/tools/llvm-xray/xray-stacks.cpp - copied unchanged from r341825, head/contrib/llvm/tools/llvm-xray/xray-stacks.cpp stable/11/contrib/llvm/tools/opt/Debugify.h - copied unchanged from r341825, head/contrib/llvm/tools/opt/Debugify.h stable/11/contrib/llvm/utils/TableGen/PredicateExpander.cpp - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/PredicateExpander.cpp stable/11/contrib/llvm/utils/TableGen/PredicateExpander.h - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/PredicateExpander.h stable/11/contrib/llvm/utils/TableGen/RISCVCompressInstEmitter.cpp - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/RISCVCompressInstEmitter.cpp stable/11/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.cpp - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.cpp stable/11/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.h - copied unchanged from r341825, head/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.h stable/11/lib/libc++experimental/ - copied from r318594, head/lib/libc++experimental/ stable/11/lib/libc++fs/ - copied from r341825, head/lib/libc++fs/ stable/11/lib/libclang_rt/fuzzer/ - copied from r341825, head/lib/libclang_rt/fuzzer/ stable/11/lib/libclang_rt/fuzzer_no_main/ - copied from r341825, head/lib/libclang_rt/fuzzer_no_main/ stable/11/lib/libclang_rt/msan/ - copied from r341825, head/lib/libclang_rt/msan/ stable/11/lib/libclang_rt/msan_cxx/ - copied from r341825, head/lib/libclang_rt/msan_cxx/ stable/11/usr.bin/clang/llvm-mca/ - copied from r341825, head/usr.bin/clang/llvm-mca/ Directory Properties: stable/11/contrib/compiler-rt/lib/fuzzer/ (props changed) Deleted: stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_freebsd.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.cc stable/11/contrib/compiler-rt/lib/scudo/scudo_interceptors.cpp stable/11/contrib/compiler-rt/lib/xray/xray_fdr_logging_impl.h stable/11/contrib/compiler-rt/lib/xray/xray_inmemory_log.cc stable/11/contrib/compiler-rt/lib/xray/xray_inmemory_log.h stable/11/contrib/libc++/src/experimental/filesystem/directory_iterator.cpp stable/11/contrib/libc++/src/experimental/filesystem/filesystem_time_helper.h stable/11/contrib/libc++/src/experimental/filesystem/operations.cpp stable/11/contrib/libc++/src/experimental/filesystem/path.cpp stable/11/contrib/llvm/include/llvm/Analysis/ObjectUtils.h stable/11/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/WebAssembly.def stable/11/contrib/llvm/include/llvm/CodeGen/CommandFlags.def stable/11/contrib/llvm/include/llvm/CodeGen/ExecutionDepsFix.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineValueType.h stable/11/contrib/llvm/include/llvm/CodeGen/RuntimeLibcalls.def stable/11/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFile.h stable/11/contrib/llvm/include/llvm/CodeGen/TargetOpcodes.def stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CVDebugRecord.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/ObjectMemoryBuffer.h stable/11/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.def stable/11/contrib/llvm/include/llvm/Support/AMDGPUKernelDescriptor.h stable/11/contrib/llvm/include/llvm/Support/CodeGenCWrappers.h stable/11/contrib/llvm/include/llvm/Transforms/GCOVProfiler.h stable/11/contrib/llvm/include/llvm/Transforms/InstrProfiling.h stable/11/contrib/llvm/include/llvm/Transforms/PGOInstrumentation.h stable/11/contrib/llvm/include/llvm/Transforms/SampleProfile.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/SimplifyInstructions.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.h stable/11/contrib/llvm/lib/CodeGen/ExecutionDepsFix.cpp stable/11/contrib/llvm/lib/DebugInfo/DWARF/SyntaxHighlighting.cpp stable/11/contrib/llvm/lib/DebugInfo/DWARF/SyntaxHighlighting.h stable/11/contrib/llvm/lib/ExecutionEngine/MCJIT/ObjectBuffer.h stable/11/contrib/llvm/lib/IR/ValueTypes.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedM1.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUOpenCLImageTypeLoweringPass.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUHSAMetadataStreamer.cpp stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUHSAMetadataStreamer.h stable/11/contrib/llvm/lib/Target/AMDGPU/Processors.td stable/11/contrib/llvm/lib/Target/AMDGPU/R600Intrinsics.td stable/11/contrib/llvm/lib/Target/AMDGPU/SIInsertWaits.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepDecoders.h stable/11/contrib/llvm/lib/Target/Mips/MipsHazardSchedule.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsLongBranch.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXSection.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCMachineBasicBlockUtils.h stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h stable/11/contrib/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanBuilder.h stable/11/contrib/llvm/patches/ stable/11/contrib/llvm/tools/clang/include/clang/Basic/VersionTuple.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/AttributeList.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/PrettyDeclStackTrace.h stable/11/contrib/llvm/tools/clang/lib/Basic/VersionTuple.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/AttributeList.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.h stable/11/contrib/llvm/tools/lld/COFF/Strings.cpp stable/11/contrib/llvm/tools/lld/COFF/Strings.h stable/11/contrib/llvm/tools/lld/ELF/Strings.cpp stable/11/contrib/llvm/tools/lld/ELF/Strings.h stable/11/contrib/llvm/tools/lld/lib/Support/ stable/11/contrib/llvm/tools/lld/tools/linker-script-test/ stable/11/contrib/llvm/tools/lldb/include/lldb/API/SystemInitializerFull.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/Args.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/History.h stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.h stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectSyntax.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectSyntax.h stable/11/contrib/llvm/tools/lldb/source/Interpreter/Args.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/AddressSanitizer/ stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/UndefinedBehaviorSanitizer/ stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/win-minidump/ stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnames.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnames.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnamesSet.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnamesSet.h stable/11/contrib/llvm/tools/lldb/source/Utility/History.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.h stable/11/contrib/llvm/tools/lldb/tools/intel-mpx/ stable/11/contrib/llvm/tools/lli/OrcLazyJIT.cpp stable/11/contrib/llvm/tools/lli/OrcLazyJIT.h stable/11/contrib/llvm/tools/llvm-pdbutil/Diff.cpp stable/11/contrib/llvm/tools/llvm-pdbutil/Diff.h stable/11/contrib/llvm/tools/llvm-pdbutil/DiffPrinter.cpp stable/11/contrib/llvm/tools/llvm-pdbutil/DiffPrinter.h stable/11/contrib/llvm/tools/llvm-xray/func-id-helper.cc stable/11/contrib/llvm/tools/llvm-xray/llvm-xray.cc stable/11/contrib/llvm/tools/llvm-xray/xray-account.cc stable/11/contrib/llvm/tools/llvm-xray/xray-color-helper.cc stable/11/contrib/llvm/tools/llvm-xray/xray-converter.cc stable/11/contrib/llvm/tools/llvm-xray/xray-extract.cc stable/11/contrib/llvm/tools/llvm-xray/xray-graph-diff.cc stable/11/contrib/llvm/tools/llvm-xray/xray-graph.cc stable/11/contrib/llvm/tools/llvm-xray/xray-registry.cc stable/11/contrib/llvm/tools/llvm-xray/xray-stacks.cc stable/11/lib/clang/include/llvm/Support/DataTypes.h stable/11/usr.bin/clang/lld/ld.lld.1 Modified: stable/11/ObsoleteFiles.inc stable/11/UPDATING stable/11/contrib/compiler-rt/LICENSE.TXT stable/11/contrib/compiler-rt/include/sanitizer/common_interface_defs.h stable/11/contrib/compiler-rt/include/sanitizer/msan_interface.h stable/11/contrib/compiler-rt/include/sanitizer/scudo_interface.h (contents, props changed) stable/11/contrib/compiler-rt/include/xray/xray_interface.h (contents, props changed) stable/11/contrib/compiler-rt/include/xray/xray_log_interface.h (contents, props changed) stable/11/contrib/compiler-rt/include/xray/xray_records.h (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_allocator.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_allocator.h stable/11/contrib/compiler-rt/lib/asan/asan_debugging.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_descriptions.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_descriptions.h (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_errors.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_errors.h (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_flags.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_flags.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_globals.cc stable/11/contrib/compiler-rt/lib/asan/asan_globals_win.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_interceptors.cc stable/11/contrib/compiler-rt/lib/asan/asan_interceptors.h stable/11/contrib/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_interceptors_memintrinsics.h (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_internal.h stable/11/contrib/compiler-rt/lib/asan/asan_mac.cc stable/11/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc stable/11/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc stable/11/contrib/compiler-rt/lib/asan/asan_mapping.h stable/11/contrib/compiler-rt/lib/asan/asan_memory_profile.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_new_delete.cc stable/11/contrib/compiler-rt/lib/asan/asan_poisoning.cc stable/11/contrib/compiler-rt/lib/asan/asan_poisoning.h stable/11/contrib/compiler-rt/lib/asan/asan_report.cc stable/11/contrib/compiler-rt/lib/asan/asan_report.h stable/11/contrib/compiler-rt/lib/asan/asan_rtl.cc stable/11/contrib/compiler-rt/lib/asan/asan_shadow_setup.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/asan/asan_thread.cc stable/11/contrib/compiler-rt/lib/asan/asan_win.cc stable/11/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/clear_cache.c (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/clzdi2.c (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/cpu_model.c (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/ctzdi2.c (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/emutls.c (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/int_types.h (contents, props changed) stable/11/contrib/compiler-rt/lib/builtins/os_version_check.c (contents, props changed) stable/11/contrib/compiler-rt/lib/cfi/cfi.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/cfi/cfi_blacklist.txt (contents, props changed) stable/11/contrib/compiler-rt/lib/dfsan/dfsan.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/dfsan/dfsan_custom.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/dfsan/done_abilist.txt (contents, props changed) stable/11/contrib/compiler-rt/lib/esan/esan.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/esan/esan_interceptors.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/esan/esan_sideline_linux.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan.h (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_allocator.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_flags.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_interceptors.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_interface_internal.h (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_linux.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_new_delete.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_report.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_thread.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_thread.h (contents, props changed) stable/11/contrib/compiler-rt/lib/interception/interception.h stable/11/contrib/compiler-rt/lib/interception/interception_linux.cc stable/11/contrib/compiler-rt/lib/interception/interception_linux.h stable/11/contrib/compiler-rt/lib/interception/interception_win.cc stable/11/contrib/compiler-rt/lib/lsan/lsan.cc stable/11/contrib/compiler-rt/lib/lsan/lsan_allocator.cc stable/11/contrib/compiler-rt/lib/lsan/lsan_allocator.h stable/11/contrib/compiler-rt/lib/lsan/lsan_common.cc stable/11/contrib/compiler-rt/lib/lsan/lsan_common.h stable/11/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/lsan/lsan_interceptors.cc stable/11/contrib/compiler-rt/lib/lsan/lsan_malloc_mac.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/lsan/lsan_thread.cc stable/11/contrib/compiler-rt/lib/msan/msan.cc stable/11/contrib/compiler-rt/lib/msan/msan.h stable/11/contrib/compiler-rt/lib/msan/msan_allocator.cc stable/11/contrib/compiler-rt/lib/msan/msan_interceptors.cc stable/11/contrib/compiler-rt/lib/msan/msan_interface_internal.h stable/11/contrib/compiler-rt/lib/msan/msan_linux.cc stable/11/contrib/compiler-rt/lib/msan/msan_new_delete.cc stable/11/contrib/compiler-rt/lib/msan/msan_poisoning.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/msan/msan_report.cc stable/11/contrib/compiler-rt/lib/profile/GCDAProfiling.c stable/11/contrib/compiler-rt/lib/profile/InstrProfData.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfiling.h (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingFile.c (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingMerge.c (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingMergeFile.c (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingPort.h (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingUtil.c (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingUtil.h (contents, props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingValue.c (contents, props changed) stable/11/contrib/compiler-rt/lib/safestack/safestack.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_bytemap.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_checks.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_combined.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_internal.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_local_cache.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_size_class_map.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_stats.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_other.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_nolibc.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_fuchsia.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector2.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_errno.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_file.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_getauxval.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libc.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libc.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libignore.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_s390.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mutex.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_printf.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_quarantine.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_report_decorator.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepot.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_suppressions.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_win.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_generic.inc stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_linux_libcdep.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_vector.h (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc stable/11/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh (contents, props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_allocator.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_allocator.h (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_allocator_combined.h (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_allocator_secondary.h (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_flags.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_interface_internal.h (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_new_delete.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_platform.h (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_termination.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_tsd.h (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_tsd_exclusive.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_tsd_exclusive.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_tsd_shared.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_tsd_shared.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_utils.cpp (contents, props changed) stable/11/contrib/compiler-rt/lib/stats/stats.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/go/test.c stable/11/contrib/compiler-rt/lib/tsan/go/tsan_go.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_debugging.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_interface.h stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_malloc_mac.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_mman.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_platform.h stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_posix.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.h stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_mutex.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_stack_trace.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_stack_trace.h (contents, props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_suppressions.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_symbolize.cc stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_sync.cc stable/11/contrib/compiler-rt/lib/ubsan/ubsan_checks.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_diag.cc stable/11/contrib/compiler-rt/lib/ubsan/ubsan_diag.h stable/11/contrib/compiler-rt/lib/ubsan/ubsan_flags.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_flags.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_handlers.cc stable/11/contrib/compiler-rt/lib/ubsan/ubsan_handlers.h stable/11/contrib/compiler-rt/lib/ubsan/ubsan_handlers_cxx.cc stable/11/contrib/compiler-rt/lib/ubsan/ubsan_interface.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_platform.h (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_signals_standalone.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_win_weak_interception.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_AArch64.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_arm.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_buffer_queue.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_buffer_queue.h (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_fdr_log_records.h (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_fdr_logging.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_flags.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_flags.h (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_flags.inc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_init.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_interface.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_interface_internal.h (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_log_interface.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_mips.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_mips64.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_powerpc64.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_x86_64.S (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_utils.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_utils.h (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_x86_64.cc (contents, props changed) stable/11/contrib/compiler-rt/lib/xray/xray_x86_64.inc (contents, props changed) stable/11/contrib/libc++/include/__bsd_locale_fallbacks.h (contents, props changed) stable/11/contrib/libc++/include/__config stable/11/contrib/libc++/include/__functional_03 stable/11/contrib/libc++/include/__functional_base stable/11/contrib/libc++/include/__hash_table stable/11/contrib/libc++/include/__libcpp_version stable/11/contrib/libc++/include/__locale stable/11/contrib/libc++/include/__mutex_base stable/11/contrib/libc++/include/__nullptr stable/11/contrib/libc++/include/__sso_allocator stable/11/contrib/libc++/include/__string stable/11/contrib/libc++/include/__threading_support stable/11/contrib/libc++/include/__tree stable/11/contrib/libc++/include/algorithm stable/11/contrib/libc++/include/any stable/11/contrib/libc++/include/array stable/11/contrib/libc++/include/atomic stable/11/contrib/libc++/include/cfloat stable/11/contrib/libc++/include/chrono stable/11/contrib/libc++/include/cmath stable/11/contrib/libc++/include/codecvt stable/11/contrib/libc++/include/complex stable/11/contrib/libc++/include/cstdlib stable/11/contrib/libc++/include/ctime stable/11/contrib/libc++/include/deque stable/11/contrib/libc++/include/exception stable/11/contrib/libc++/include/experimental/__config stable/11/contrib/libc++/include/experimental/algorithm stable/11/contrib/libc++/include/experimental/any stable/11/contrib/libc++/include/experimental/chrono stable/11/contrib/libc++/include/experimental/coroutine stable/11/contrib/libc++/include/experimental/dynarray stable/11/contrib/libc++/include/experimental/filesystem stable/11/contrib/libc++/include/experimental/functional stable/11/contrib/libc++/include/experimental/memory_resource stable/11/contrib/libc++/include/experimental/numeric stable/11/contrib/libc++/include/experimental/optional stable/11/contrib/libc++/include/experimental/propagate_const stable/11/contrib/libc++/include/experimental/ratio stable/11/contrib/libc++/include/experimental/string_view stable/11/contrib/libc++/include/experimental/system_error stable/11/contrib/libc++/include/experimental/tuple stable/11/contrib/libc++/include/experimental/type_traits stable/11/contrib/libc++/include/float.h (contents, props changed) stable/11/contrib/libc++/include/forward_list stable/11/contrib/libc++/include/fstream stable/11/contrib/libc++/include/functional stable/11/contrib/libc++/include/future stable/11/contrib/libc++/include/initializer_list stable/11/contrib/libc++/include/ios stable/11/contrib/libc++/include/istream stable/11/contrib/libc++/include/iterator stable/11/contrib/libc++/include/list stable/11/contrib/libc++/include/locale stable/11/contrib/libc++/include/map stable/11/contrib/libc++/include/math.h (contents, props changed) stable/11/contrib/libc++/include/memory stable/11/contrib/libc++/include/module.modulemap stable/11/contrib/libc++/include/new stable/11/contrib/libc++/include/numeric stable/11/contrib/libc++/include/optional stable/11/contrib/libc++/include/ostream stable/11/contrib/libc++/include/queue stable/11/contrib/libc++/include/random stable/11/contrib/libc++/include/regex stable/11/contrib/libc++/include/set stable/11/contrib/libc++/include/shared_mutex stable/11/contrib/libc++/include/stack stable/11/contrib/libc++/include/stdexcept stable/11/contrib/libc++/include/stdio.h (contents, props changed) stable/11/contrib/libc++/include/streambuf stable/11/contrib/libc++/include/string stable/11/contrib/libc++/include/string_view stable/11/contrib/libc++/include/system_error stable/11/contrib/libc++/include/tgmath.h (contents, props changed) stable/11/contrib/libc++/include/thread stable/11/contrib/libc++/include/tuple stable/11/contrib/libc++/include/type_traits stable/11/contrib/libc++/include/typeinfo stable/11/contrib/libc++/include/unordered_map stable/11/contrib/libc++/include/unordered_set stable/11/contrib/libc++/include/utility stable/11/contrib/libc++/include/valarray stable/11/contrib/libc++/include/variant stable/11/contrib/libc++/include/vector stable/11/contrib/libc++/src/any.cpp (contents, props changed) stable/11/contrib/libc++/src/bind.cpp (contents, props changed) stable/11/contrib/libc++/src/chrono.cpp (contents, props changed) stable/11/contrib/libc++/src/experimental/memory_resource.cpp (contents, props changed) stable/11/contrib/libc++/src/future.cpp (contents, props changed) stable/11/contrib/libc++/src/include/config_elast.h (contents, props changed) stable/11/contrib/libc++/src/locale.cpp (contents, props changed) stable/11/contrib/libc++/src/memory.cpp (contents, props changed) stable/11/contrib/libc++/src/mutex.cpp (contents, props changed) stable/11/contrib/libc++/src/new.cpp (contents, props changed) stable/11/contrib/libc++/src/optional.cpp (contents, props changed) stable/11/contrib/libc++/src/shared_mutex.cpp (contents, props changed) stable/11/contrib/libc++/src/support/runtime/exception_msvc.ipp stable/11/contrib/libc++/src/support/runtime/exception_pointer_msvc.ipp stable/11/contrib/libc++/src/system_error.cpp (contents, props changed) stable/11/contrib/libc++/src/typeinfo.cpp (contents, props changed) stable/11/contrib/libc++/src/utility.cpp (contents, props changed) stable/11/contrib/llvm/LICENSE.TXT stable/11/contrib/llvm/include/llvm-c/Core.h stable/11/contrib/llvm/include/llvm-c/DebugInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm-c/Disassembler.h stable/11/contrib/llvm/include/llvm-c/ExecutionEngine.h stable/11/contrib/llvm/include/llvm-c/Initialization.h stable/11/contrib/llvm/include/llvm-c/OrcBindings.h (contents, props changed) stable/11/contrib/llvm/include/llvm-c/Support.h stable/11/contrib/llvm/include/llvm-c/TargetMachine.h stable/11/contrib/llvm/include/llvm-c/Transforms/Scalar.h stable/11/contrib/llvm/include/llvm-c/Transforms/Vectorize.h stable/11/contrib/llvm/include/llvm-c/Types.h (contents, props changed) stable/11/contrib/llvm/include/llvm-c/lto.h stable/11/contrib/llvm/include/llvm/ADT/APFloat.h stable/11/contrib/llvm/include/llvm/ADT/APInt.h stable/11/contrib/llvm/include/llvm/ADT/APSInt.h stable/11/contrib/llvm/include/llvm/ADT/ArrayRef.h stable/11/contrib/llvm/include/llvm/ADT/BitVector.h stable/11/contrib/llvm/include/llvm/ADT/CachedHashString.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ADT/DenseMapInfo.h stable/11/contrib/llvm/include/llvm/ADT/DenseSet.h stable/11/contrib/llvm/include/llvm/ADT/DepthFirstIterator.h stable/11/contrib/llvm/include/llvm/ADT/EpochTracker.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ADT/GraphTraits.h stable/11/contrib/llvm/include/llvm/ADT/Hashing.h stable/11/contrib/llvm/include/llvm/ADT/ImmutableList.h stable/11/contrib/llvm/include/llvm/ADT/ImmutableMap.h stable/11/contrib/llvm/include/llvm/ADT/ImmutableSet.h stable/11/contrib/llvm/include/llvm/ADT/MapVector.h stable/11/contrib/llvm/include/llvm/ADT/None.h stable/11/contrib/llvm/include/llvm/ADT/Optional.h stable/11/contrib/llvm/include/llvm/ADT/PackedVector.h stable/11/contrib/llvm/include/llvm/ADT/PointerUnion.h stable/11/contrib/llvm/include/llvm/ADT/SCCIterator.h stable/11/contrib/llvm/include/llvm/ADT/STLExtras.h stable/11/contrib/llvm/include/llvm/ADT/ScopeExit.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ADT/SetVector.h stable/11/contrib/llvm/include/llvm/ADT/SmallPtrSet.h stable/11/contrib/llvm/include/llvm/ADT/SmallSet.h stable/11/contrib/llvm/include/llvm/ADT/SmallVector.h stable/11/contrib/llvm/include/llvm/ADT/SparseMultiSet.h stable/11/contrib/llvm/include/llvm/ADT/SparseSet.h stable/11/contrib/llvm/include/llvm/ADT/Statistic.h stable/11/contrib/llvm/include/llvm/ADT/StringExtras.h stable/11/contrib/llvm/include/llvm/ADT/StringMap.h stable/11/contrib/llvm/include/llvm/ADT/StringRef.h stable/11/contrib/llvm/include/llvm/ADT/StringSwitch.h stable/11/contrib/llvm/include/llvm/ADT/TinyPtrVector.h stable/11/contrib/llvm/include/llvm/ADT/Triple.h stable/11/contrib/llvm/include/llvm/ADT/UniqueVector.h stable/11/contrib/llvm/include/llvm/ADT/VariadicFunction.h stable/11/contrib/llvm/include/llvm/ADT/edit_distance.h stable/11/contrib/llvm/include/llvm/ADT/ilist.h stable/11/contrib/llvm/include/llvm/ADT/ilist_node.h stable/11/contrib/llvm/include/llvm/ADT/ilist_node_options.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ADT/iterator.h stable/11/contrib/llvm/include/llvm/ADT/iterator_range.h stable/11/contrib/llvm/include/llvm/Analysis/AliasAnalysis.h stable/11/contrib/llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h stable/11/contrib/llvm/include/llvm/Analysis/AssumptionCache.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/BasicAliasAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfo.h stable/11/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h stable/11/contrib/llvm/include/llvm/Analysis/BranchProbabilityInfo.h stable/11/contrib/llvm/include/llvm/Analysis/CFG.h stable/11/contrib/llvm/include/llvm/Analysis/CFLAndersAliasAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/CFLSteensAliasAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h stable/11/contrib/llvm/include/llvm/Analysis/CallGraph.h stable/11/contrib/llvm/include/llvm/Analysis/CaptureTracking.h stable/11/contrib/llvm/include/llvm/Analysis/CodeMetrics.h stable/11/contrib/llvm/include/llvm/Analysis/ConstantFolding.h stable/11/contrib/llvm/include/llvm/Analysis/DOTGraphTraitsPass.h stable/11/contrib/llvm/include/llvm/Analysis/DemandedBits.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h stable/11/contrib/llvm/include/llvm/Analysis/DivergenceAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/DominanceFrontier.h stable/11/contrib/llvm/include/llvm/Analysis/DominanceFrontierImpl.h stable/11/contrib/llvm/include/llvm/Analysis/EHPersonalities.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/IndirectCallPromotionAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/InlineCost.h stable/11/contrib/llvm/include/llvm/Analysis/IteratedDominanceFrontier.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/LazyBranchProbabilityInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/LazyValueInfo.h stable/11/contrib/llvm/include/llvm/Analysis/Lint.h stable/11/contrib/llvm/include/llvm/Analysis/LoopAccessAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/LoopAnalysisManager.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/LoopInfo.h stable/11/contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h stable/11/contrib/llvm/include/llvm/Analysis/LoopIterator.h stable/11/contrib/llvm/include/llvm/Analysis/LoopUnrollAnalyzer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h stable/11/contrib/llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h stable/11/contrib/llvm/include/llvm/Analysis/MemoryLocation.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/MemorySSA.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/MemorySSAUpdater.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/ObjCARCInstKind.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/OptimizationRemarkEmitter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/OrderedBasicBlock.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/PHITransAddr.h stable/11/contrib/llvm/include/llvm/Analysis/Passes.h stable/11/contrib/llvm/include/llvm/Analysis/PostDominators.h stable/11/contrib/llvm/include/llvm/Analysis/ProfileSummaryInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/PtrUseVisitor.h stable/11/contrib/llvm/include/llvm/Analysis/RegionInfo.h stable/11/contrib/llvm/include/llvm/Analysis/RegionInfoImpl.h stable/11/contrib/llvm/include/llvm/Analysis/RegionIterator.h stable/11/contrib/llvm/include/llvm/Analysis/RegionPass.h stable/11/contrib/llvm/include/llvm/Analysis/RegionPrinter.h stable/11/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h stable/11/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h stable/11/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h stable/11/contrib/llvm/include/llvm/Analysis/SparsePropagation.h stable/11/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.def stable/11/contrib/llvm/include/llvm/Analysis/TargetTransformInfo.h stable/11/contrib/llvm/include/llvm/Analysis/TargetTransformInfoImpl.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/TypeMetadataUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/ValueLattice.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Analysis/ValueTracking.h stable/11/contrib/llvm/include/llvm/Analysis/VectorUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/AsmParser/Parser.h stable/11/contrib/llvm/include/llvm/BinaryFormat/COFF.h (contents, props changed) stable/11/contrib/llvm/include/llvm/BinaryFormat/Dwarf.def stable/11/contrib/llvm/include/llvm/BinaryFormat/Dwarf.h (contents, props changed) stable/11/contrib/llvm/include/llvm/BinaryFormat/ELF.h (contents, props changed) stable/11/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/PowerPC64.def stable/11/contrib/llvm/include/llvm/BinaryFormat/MachO.h (contents, props changed) stable/11/contrib/llvm/include/llvm/BinaryFormat/Magic.h (contents, props changed) stable/11/contrib/llvm/include/llvm/BinaryFormat/Wasm.h (contents, props changed) stable/11/contrib/llvm/include/llvm/BinaryFormat/WasmRelocs.def stable/11/contrib/llvm/include/llvm/Bitcode/BitcodeWriter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Bitcode/BitcodeWriterPass.h stable/11/contrib/llvm/include/llvm/Bitcode/BitstreamReader.h stable/11/contrib/llvm/include/llvm/Bitcode/BitstreamWriter.h stable/11/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h stable/11/contrib/llvm/include/llvm/CodeGen/Analysis.h stable/11/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h stable/11/contrib/llvm/include/llvm/CodeGen/AtomicExpandUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/BasicTTIImpl.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/CalcSpillWeights.h stable/11/contrib/llvm/include/llvm/CodeGen/CallingConvLower.h stable/11/contrib/llvm/include/llvm/CodeGen/CostTable.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/DIE.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/DwarfStringPoolEntry.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/FastISel.h stable/11/contrib/llvm/include/llvm/CodeGen/FunctionLoweringInfo.h stable/11/contrib/llvm/include/llvm/CodeGen/GCStrategy.h stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/Localizer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegisterBank.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegisterBankInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/Utils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h stable/11/contrib/llvm/include/llvm/CodeGen/LatencyPriorityQueue.h stable/11/contrib/llvm/include/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/LiveInterval.h stable/11/contrib/llvm/include/llvm/CodeGen/LiveIntervalUnion.h stable/11/contrib/llvm/include/llvm/CodeGen/LiveIntervals.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h stable/11/contrib/llvm/include/llvm/CodeGen/LiveRangeEdit.h stable/11/contrib/llvm/include/llvm/CodeGen/LiveRegMatrix.h stable/11/contrib/llvm/include/llvm/CodeGen/LiveRegUnits.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MIRParser/MIRParser.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MIRPrinter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MIRYamlMapping.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MachORelocation.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineConstantPool.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineDominanceFrontier.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineDominators.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineFunction.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineInstr.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineLoopInfo.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineMemOperand.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineModuleInfo.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineOperand.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MachineRegisterInfo.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineSSAUpdater.h stable/11/contrib/llvm/include/llvm/CodeGen/MachineScheduler.h stable/11/contrib/llvm/include/llvm/CodeGen/MacroFusion.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/PBQP/Graph.h stable/11/contrib/llvm/include/llvm/CodeGen/PBQP/Math.h stable/11/contrib/llvm/include/llvm/CodeGen/PBQP/ReductionRules.h stable/11/contrib/llvm/include/llvm/CodeGen/PBQP/Solution.h stable/11/contrib/llvm/include/llvm/CodeGen/PBQPRAConstraint.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/ParallelCG.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/Passes.h stable/11/contrib/llvm/include/llvm/CodeGen/RegAllocPBQP.h stable/11/contrib/llvm/include/llvm/CodeGen/RegisterPressure.h stable/11/contrib/llvm/include/llvm/CodeGen/RegisterScavenging.h stable/11/contrib/llvm/include/llvm/CodeGen/RegisterUsageInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/ResourcePriorityQueue.h stable/11/contrib/llvm/include/llvm/CodeGen/RuntimeLibcalls.h stable/11/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h stable/11/contrib/llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h stable/11/contrib/llvm/include/llvm/CodeGen/ScheduleDFS.h stable/11/contrib/llvm/include/llvm/CodeGen/ScoreboardHazardRecognizer.h stable/11/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h stable/11/contrib/llvm/include/llvm/CodeGen/SelectionDAGISel.h stable/11/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h stable/11/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h stable/11/contrib/llvm/include/llvm/CodeGen/StackMaps.h stable/11/contrib/llvm/include/llvm/CodeGen/StackProtector.h stable/11/contrib/llvm/include/llvm/CodeGen/TargetCallingConv.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetFrameLowering.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetInstrInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetLowering.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h stable/11/contrib/llvm/include/llvm/CodeGen/TargetOpcodes.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetPassConfig.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetRegisterInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TargetSchedule.h stable/11/contrib/llvm/include/llvm/CodeGen/TargetSubtargetInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/CodeGen/ValueTypes.h stable/11/contrib/llvm/include/llvm/CodeGen/ValueTypes.td stable/11/contrib/llvm/include/llvm/CodeGen/VirtRegMap.h stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CVRecord.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeView.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewRegisters.def stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewTypes.def stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugStringTableSubsection.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecord.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DIContext.h stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDataExtractor.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugPubTable.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFExpression.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFFormValue.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFObject.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFTypeUnit.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/MSF/MSFBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/MSF/MSFCommon.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASession.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASupport.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSession.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStreamBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GlobalsStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/HashTable.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/InfoStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/InfoStreamBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/ModuleDebugStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NamedStreamMap.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeRawSymbol.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSession.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawConstants.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawTypes.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBExtras.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBTypes.h (contents, props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Demangle/Demangle.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/JITSymbol.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/GlobalMappingLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRCompileLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRTransformLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/LambdaResolver.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/NullResolver.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcError.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/RemoteObjectLayer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/RTDyldMemoryManager.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h stable/11/contrib/llvm/include/llvm/ExecutionEngine/SectionMemoryManager.h stable/11/contrib/llvm/include/llvm/FuzzMutate/FuzzerCLI.h (contents, props changed) stable/11/contrib/llvm/include/llvm/FuzzMutate/OpDescriptor.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/Attributes.h stable/11/contrib/llvm/include/llvm/IR/Attributes.td stable/11/contrib/llvm/include/llvm/IR/AutoUpgrade.h stable/11/contrib/llvm/include/llvm/IR/BasicBlock.h stable/11/contrib/llvm/include/llvm/IR/CFG.h stable/11/contrib/llvm/include/llvm/IR/CallSite.h stable/11/contrib/llvm/include/llvm/IR/CallingConv.h stable/11/contrib/llvm/include/llvm/IR/Comdat.h stable/11/contrib/llvm/include/llvm/IR/Constant.h stable/11/contrib/llvm/include/llvm/IR/ConstantRange.h stable/11/contrib/llvm/include/llvm/IR/Constants.h stable/11/contrib/llvm/include/llvm/IR/DIBuilder.h stable/11/contrib/llvm/include/llvm/IR/DataLayout.h stable/11/contrib/llvm/include/llvm/IR/DebugInfo.h stable/11/contrib/llvm/include/llvm/IR/DebugInfoFlags.def stable/11/contrib/llvm/include/llvm/IR/DebugInfoMetadata.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/DebugLoc.h stable/11/contrib/llvm/include/llvm/IR/DerivedTypes.h stable/11/contrib/llvm/include/llvm/IR/DiagnosticHandler.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/DiagnosticInfo.h stable/11/contrib/llvm/include/llvm/IR/DiagnosticPrinter.h stable/11/contrib/llvm/include/llvm/IR/Dominators.h stable/11/contrib/llvm/include/llvm/IR/Function.h stable/11/contrib/llvm/include/llvm/IR/GlobalObject.h stable/11/contrib/llvm/include/llvm/IR/GlobalValue.h stable/11/contrib/llvm/include/llvm/IR/GlobalVariable.h stable/11/contrib/llvm/include/llvm/IR/IRBuilder.h stable/11/contrib/llvm/include/llvm/IR/IRPrintingPasses.h stable/11/contrib/llvm/include/llvm/IR/InstVisitor.h stable/11/contrib/llvm/include/llvm/IR/InstrTypes.h stable/11/contrib/llvm/include/llvm/IR/Instruction.h stable/11/contrib/llvm/include/llvm/IR/Instructions.h stable/11/contrib/llvm/include/llvm/IR/IntrinsicInst.h stable/11/contrib/llvm/include/llvm/IR/Intrinsics.h stable/11/contrib/llvm/include/llvm/IR/Intrinsics.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsAArch64.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsAMDGPU.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsARM.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsHexagon.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsNVVM.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsPowerPC.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsWebAssembly.td stable/11/contrib/llvm/include/llvm/IR/IntrinsicsX86.td stable/11/contrib/llvm/include/llvm/IR/LLVMContext.h stable/11/contrib/llvm/include/llvm/IR/LegacyPassManagers.h stable/11/contrib/llvm/include/llvm/IR/MDBuilder.h stable/11/contrib/llvm/include/llvm/IR/Mangler.h stable/11/contrib/llvm/include/llvm/IR/Metadata.def stable/11/contrib/llvm/include/llvm/IR/Metadata.h stable/11/contrib/llvm/include/llvm/IR/Module.h stable/11/contrib/llvm/include/llvm/IR/ModuleSummaryIndex.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/ModuleSummaryIndexYAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/Operator.h stable/11/contrib/llvm/include/llvm/IR/OptBisect.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/PassManager.h stable/11/contrib/llvm/include/llvm/IR/PassManagerInternal.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/PatternMatch.h stable/11/contrib/llvm/include/llvm/IR/ProfileSummary.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/Statepoint.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/TrackingMDRef.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/Type.h stable/11/contrib/llvm/include/llvm/IR/Use.h stable/11/contrib/llvm/include/llvm/IR/UseListOrder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/IR/User.h stable/11/contrib/llvm/include/llvm/IR/Value.h stable/11/contrib/llvm/include/llvm/IR/ValueHandle.h stable/11/contrib/llvm/include/llvm/IR/ValueMap.h stable/11/contrib/llvm/include/llvm/IR/ValueSymbolTable.h stable/11/contrib/llvm/include/llvm/IR/Verifier.h stable/11/contrib/llvm/include/llvm/IRReader/IRReader.h stable/11/contrib/llvm/include/llvm/InitializePasses.h stable/11/contrib/llvm/include/llvm/LTO/Caching.h (contents, props changed) stable/11/contrib/llvm/include/llvm/LTO/Config.h (contents, props changed) stable/11/contrib/llvm/include/llvm/LTO/LTO.h (contents, props changed) stable/11/contrib/llvm/include/llvm/LTO/legacy/ThinLTOCodeGenerator.h (contents, props changed) stable/11/contrib/llvm/include/llvm/LinkAllIR.h stable/11/contrib/llvm/include/llvm/LinkAllPasses.h stable/11/contrib/llvm/include/llvm/Linker/Linker.h stable/11/contrib/llvm/include/llvm/MC/MCAsmBackend.h stable/11/contrib/llvm/include/llvm/MC/MCAsmInfo.h stable/11/contrib/llvm/include/llvm/MC/MCAsmLayout.h stable/11/contrib/llvm/include/llvm/MC/MCAsmMacro.h stable/11/contrib/llvm/include/llvm/MC/MCAssembler.h stable/11/contrib/llvm/include/llvm/MC/MCCodePadder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCCodeView.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCContext.h stable/11/contrib/llvm/include/llvm/MC/MCDisassembler/MCExternalSymbolizer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCDisassembler/MCRelocationInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCDisassembler/MCSymbolizer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCDwarf.h stable/11/contrib/llvm/include/llvm/MC/MCELFObjectWriter.h stable/11/contrib/llvm/include/llvm/MC/MCELFStreamer.h stable/11/contrib/llvm/include/llvm/MC/MCExpr.h stable/11/contrib/llvm/include/llvm/MC/MCFixup.h stable/11/contrib/llvm/include/llvm/MC/MCFixupKindInfo.h stable/11/contrib/llvm/include/llvm/MC/MCFragment.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCInst.h stable/11/contrib/llvm/include/llvm/MC/MCInstBuilder.h stable/11/contrib/llvm/include/llvm/MC/MCInstPrinter.h stable/11/contrib/llvm/include/llvm/MC/MCInstrAnalysis.h stable/11/contrib/llvm/include/llvm/MC/MCInstrDesc.h stable/11/contrib/llvm/include/llvm/MC/MCInstrInfo.h stable/11/contrib/llvm/include/llvm/MC/MCInstrItineraries.h stable/11/contrib/llvm/include/llvm/MC/MCLabel.h stable/11/contrib/llvm/include/llvm/MC/MCMachObjectWriter.h stable/11/contrib/llvm/include/llvm/MC/MCObjectFileInfo.h stable/11/contrib/llvm/include/llvm/MC/MCObjectStreamer.h stable/11/contrib/llvm/include/llvm/MC/MCObjectWriter.h stable/11/contrib/llvm/include/llvm/MC/MCParser/AsmCond.h stable/11/contrib/llvm/include/llvm/MC/MCParser/MCAsmLexer.h stable/11/contrib/llvm/include/llvm/MC/MCParser/MCAsmParser.h stable/11/contrib/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h stable/11/contrib/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCRegisterInfo.h stable/11/contrib/llvm/include/llvm/MC/MCSchedule.h stable/11/contrib/llvm/include/llvm/MC/MCSection.h stable/11/contrib/llvm/include/llvm/MC/MCSectionWasm.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCStreamer.h stable/11/contrib/llvm/include/llvm/MC/MCSubtargetInfo.h stable/11/contrib/llvm/include/llvm/MC/MCSymbol.h stable/11/contrib/llvm/include/llvm/MC/MCSymbolMachO.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCSymbolWasm.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCTargetOptions.h stable/11/contrib/llvm/include/llvm/MC/MCValue.h stable/11/contrib/llvm/include/llvm/MC/MCWasmObjectWriter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCWasmStreamer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/MC/MCWinCOFFObjectWriter.h stable/11/contrib/llvm/include/llvm/MC/MCWinCOFFStreamer.h stable/11/contrib/llvm/include/llvm/MC/StringTableBuilder.h stable/11/contrib/llvm/include/llvm/Object/Archive.h stable/11/contrib/llvm/include/llvm/Object/Binary.h stable/11/contrib/llvm/include/llvm/Object/COFF.h stable/11/contrib/llvm/include/llvm/Object/COFFImportFile.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Object/Decompressor.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Object/ELF.h stable/11/contrib/llvm/include/llvm/Object/ELFObjectFile.h stable/11/contrib/llvm/include/llvm/Object/ELFTypes.h stable/11/contrib/llvm/include/llvm/Object/IRObjectFile.h stable/11/contrib/llvm/include/llvm/Object/MachO.h stable/11/contrib/llvm/include/llvm/Object/MachOUniversal.h stable/11/contrib/llvm/include/llvm/Object/ModuleSymbolTable.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Object/ObjectFile.h stable/11/contrib/llvm/include/llvm/Object/RelocVisitor.h stable/11/contrib/llvm/include/llvm/Object/Wasm.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/COFFYAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLTypeHashing.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLTypes.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/DWARFEmitter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/DWARFYAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/ELFYAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/MachOYAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/WasmYAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/YAML.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Option/Arg.h stable/11/contrib/llvm/include/llvm/Option/ArgList.h stable/11/contrib/llvm/include/llvm/Option/OptTable.h stable/11/contrib/llvm/include/llvm/Option/Option.h stable/11/contrib/llvm/include/llvm/Pass.h stable/11/contrib/llvm/include/llvm/PassAnalysisSupport.h stable/11/contrib/llvm/include/llvm/PassRegistry.h stable/11/contrib/llvm/include/llvm/Passes/PassBuilder.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMappingReader.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMappingWriter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/GCOV.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/InstrProf.h stable/11/contrib/llvm/include/llvm/ProfileData/InstrProfData.inc (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/InstrProfReader.h stable/11/contrib/llvm/include/llvm/ProfileData/ProfileCommon.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/SampleProf.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/SampleProfReader.h (contents, props changed) stable/11/contrib/llvm/include/llvm/ProfileData/SampleProfWriter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/AArch64TargetParser.def stable/11/contrib/llvm/include/llvm/Support/AMDGPUMetadata.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/ARMBuildAttributes.h stable/11/contrib/llvm/include/llvm/Support/ARMTargetParser.def stable/11/contrib/llvm/include/llvm/Support/AlignOf.h stable/11/contrib/llvm/include/llvm/Support/Allocator.h stable/11/contrib/llvm/include/llvm/Support/AtomicOrdering.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryByteStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryStream.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryStreamArray.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryStreamReader.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryStreamRef.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryStreamWriter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/BlockFrequency.h stable/11/contrib/llvm/include/llvm/Support/BranchProbability.h stable/11/contrib/llvm/include/llvm/Support/CachePruning.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Casting.h stable/11/contrib/llvm/include/llvm/Support/CodeGenCoverage.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/CommandLine.h stable/11/contrib/llvm/include/llvm/Support/Compiler.h stable/11/contrib/llvm/include/llvm/Support/ConvertUTF.h stable/11/contrib/llvm/include/llvm/Support/CrashRecoveryContext.h stable/11/contrib/llvm/include/llvm/Support/DataExtractor.h stable/11/contrib/llvm/include/llvm/Support/Debug.h stable/11/contrib/llvm/include/llvm/Support/DebugCounter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/DynamicLibrary.h stable/11/contrib/llvm/include/llvm/Support/Endian.h stable/11/contrib/llvm/include/llvm/Support/EndianStream.h stable/11/contrib/llvm/include/llvm/Support/Errc.h stable/11/contrib/llvm/include/llvm/Support/Errno.h stable/11/contrib/llvm/include/llvm/Support/Error.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/ErrorHandling.h stable/11/contrib/llvm/include/llvm/Support/ErrorOr.h stable/11/contrib/llvm/include/llvm/Support/FileOutputBuffer.h stable/11/contrib/llvm/include/llvm/Support/FileSystem.h stable/11/contrib/llvm/include/llvm/Support/FormatAdapters.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/FormatVariadic.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/FormatVariadicDetails.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/GenericDomTree.h stable/11/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h stable/11/contrib/llvm/include/llvm/Support/GraphWriter.h stable/11/contrib/llvm/include/llvm/Support/Host.h stable/11/contrib/llvm/include/llvm/Support/JamCRC.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/KnownBits.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/LEB128.h stable/11/contrib/llvm/include/llvm/Support/LineIterator.h stable/11/contrib/llvm/include/llvm/Support/LockFileManager.h stable/11/contrib/llvm/include/llvm/Support/LowLevelTypeImpl.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/MD5.h stable/11/contrib/llvm/include/llvm/Support/MathExtras.h stable/11/contrib/llvm/include/llvm/Support/Memory.h stable/11/contrib/llvm/include/llvm/Support/MemoryBuffer.h stable/11/contrib/llvm/include/llvm/Support/MipsABIFlags.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Mutex.h stable/11/contrib/llvm/include/llvm/Support/MutexGuard.h stable/11/contrib/llvm/include/llvm/Support/OnDiskHashTable.h stable/11/contrib/llvm/include/llvm/Support/Options.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Parallel.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Path.h stable/11/contrib/llvm/include/llvm/Support/PointerLikeTypeTraits.h stable/11/contrib/llvm/include/llvm/Support/Process.h stable/11/contrib/llvm/include/llvm/Support/Program.h stable/11/contrib/llvm/include/llvm/Support/RWMutex.h stable/11/contrib/llvm/include/llvm/Support/Regex.h stable/11/contrib/llvm/include/llvm/Support/SMLoc.h stable/11/contrib/llvm/include/llvm/Support/SaveAndRestore.h stable/11/contrib/llvm/include/llvm/Support/ScaledNumber.h stable/11/contrib/llvm/include/llvm/Support/ScopedPrinter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Signals.h stable/11/contrib/llvm/include/llvm/Support/SourceMgr.h stable/11/contrib/llvm/include/llvm/Support/StringSaver.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/SystemUtils.h stable/11/contrib/llvm/include/llvm/Support/TargetParser.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/TargetRegistry.h stable/11/contrib/llvm/include/llvm/Support/ThreadLocal.h stable/11/contrib/llvm/include/llvm/Support/ThreadPool.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Threading.h stable/11/contrib/llvm/include/llvm/Support/Timer.h stable/11/contrib/llvm/include/llvm/Support/ToolOutputFile.h stable/11/contrib/llvm/include/llvm/Support/TrailingObjects.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Unicode.h stable/11/contrib/llvm/include/llvm/Support/UnicodeCharRanges.h stable/11/contrib/llvm/include/llvm/Support/UniqueLock.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Support/Win64EH.h stable/11/contrib/llvm/include/llvm/Support/X86TargetParser.def stable/11/contrib/llvm/include/llvm/Support/YAMLParser.h stable/11/contrib/llvm/include/llvm/Support/YAMLTraits.h stable/11/contrib/llvm/include/llvm/Support/raw_ostream.h stable/11/contrib/llvm/include/llvm/Support/type_traits.h stable/11/contrib/llvm/include/llvm/Support/xxhash.h (contents, props changed) stable/11/contrib/llvm/include/llvm/TableGen/Record.h stable/11/contrib/llvm/include/llvm/TableGen/SearchableTable.td stable/11/contrib/llvm/include/llvm/Target/GenericOpcodes.td stable/11/contrib/llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td stable/11/contrib/llvm/include/llvm/Target/GlobalISel/Target.td stable/11/contrib/llvm/include/llvm/Target/Target.td stable/11/contrib/llvm/include/llvm/Target/TargetCallingConv.td stable/11/contrib/llvm/include/llvm/Target/TargetItinerary.td stable/11/contrib/llvm/include/llvm/Target/TargetMachine.h stable/11/contrib/llvm/include/llvm/Target/TargetOptions.h stable/11/contrib/llvm/include/llvm/Target/TargetSchedule.td stable/11/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td stable/11/contrib/llvm/include/llvm/Testing/Support/Error.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Testing/Support/SupportHelpers.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO.h stable/11/contrib/llvm/include/llvm/Transforms/IPO/AlwaysInliner.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/ArgumentPromotion.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/FunctionImport.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/Inliner.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/LowerTypeTests.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/InstCombine/InstCombine.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/InstCombine/InstCombineWorklist.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Instrumentation.h stable/11/contrib/llvm/include/llvm/Transforms/Scalar.h stable/11/contrib/llvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/CallSiteSplitting.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/EarlyCSE.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/GVN.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/GVNExpression.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/JumpThreading.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopDataPrefetch.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LowerExpectIntrinsic.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/NewGVN.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/Reassociate.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/SCCP.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/SROA.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/SimplifyCFG.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/SpeculateAroundPHIs.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/SpeculativeExecution.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/BuildLibCalls.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/CodeExtractor.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/Evaluator.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/FunctionComparator.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/ImportedFunctionsInliningStatistics.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/IntegerDivision.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/Local.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/LoopSimplify.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/LoopVersioning.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/ModuleUtils.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/OrderedInstructions.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/PredicateInfo.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdater.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h stable/11/contrib/llvm/include/llvm/Transforms/Utils/SymbolRewriter.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/UnrollLoop.h stable/11/contrib/llvm/include/llvm/Transforms/Vectorize.h stable/11/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h (contents, props changed) stable/11/contrib/llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h (contents, props changed) stable/11/contrib/llvm/include/llvm/XRay/XRayRecord.h (contents, props changed) stable/11/contrib/llvm/include/llvm/XRay/YAMLXRayRecord.h (contents, props changed) stable/11/contrib/llvm/include/llvm/module.modulemap stable/11/contrib/llvm/lib/Analysis/AliasAnalysis.cpp stable/11/contrib/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp stable/11/contrib/llvm/lib/Analysis/AliasAnalysisSummary.h (contents, props changed) stable/11/contrib/llvm/lib/Analysis/AliasSetTracker.cpp stable/11/contrib/llvm/lib/Analysis/Analysis.cpp stable/11/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp stable/11/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp stable/11/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp stable/11/contrib/llvm/lib/Analysis/CFGPrinter.cpp stable/11/contrib/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/CFLGraph.h (contents, props changed) stable/11/contrib/llvm/lib/Analysis/CFLSteensAliasAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp stable/11/contrib/llvm/lib/Analysis/CallGraph.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/CallGraphSCCPass.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/CaptureTracking.cpp stable/11/contrib/llvm/lib/Analysis/CodeMetrics.cpp stable/11/contrib/llvm/lib/Analysis/ConstantFolding.cpp stable/11/contrib/llvm/lib/Analysis/Delinearization.cpp stable/11/contrib/llvm/lib/Analysis/DemandedBits.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp stable/11/contrib/llvm/lib/Analysis/DivergenceAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/DominanceFrontier.cpp stable/11/contrib/llvm/lib/Analysis/EHPersonalities.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/GlobalsModRef.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/IVUsers.cpp stable/11/contrib/llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/InlineCost.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/InstructionSimplify.cpp stable/11/contrib/llvm/lib/Analysis/IteratedDominanceFrontier.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/LazyBlockFrequencyInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/LazyBranchProbabilityInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/LazyCallGraph.cpp stable/11/contrib/llvm/lib/Analysis/LazyValueInfo.cpp stable/11/contrib/llvm/lib/Analysis/Lint.cpp stable/11/contrib/llvm/lib/Analysis/Loads.cpp stable/11/contrib/llvm/lib/Analysis/LoopAccessAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/LoopAnalysisManager.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/LoopInfo.cpp stable/11/contrib/llvm/lib/Analysis/LoopPass.cpp stable/11/contrib/llvm/lib/Analysis/LoopUnrollAnalyzer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/MemDepPrinter.cpp stable/11/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp stable/11/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp stable/11/contrib/llvm/lib/Analysis/MemoryLocation.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/MemorySSA.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/MemorySSAUpdater.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/ObjCARCAnalysisUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/ObjCARCInstKind.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/OrderedBasicBlock.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/PHITransAddr.cpp stable/11/contrib/llvm/lib/Analysis/PostDominators.cpp stable/11/contrib/llvm/lib/Analysis/ProfileSummaryInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/RegionInfo.cpp stable/11/contrib/llvm/lib/Analysis/RegionPass.cpp stable/11/contrib/llvm/lib/Analysis/ScalarEvolution.cpp stable/11/contrib/llvm/lib/Analysis/ScalarEvolutionExpander.cpp stable/11/contrib/llvm/lib/Analysis/StratifiedSets.h (contents, props changed) stable/11/contrib/llvm/lib/Analysis/TargetLibraryInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Analysis/TargetTransformInfo.cpp stable/11/contrib/llvm/lib/Analysis/Trace.cpp stable/11/contrib/llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp stable/11/contrib/llvm/lib/Analysis/ValueTracking.cpp stable/11/contrib/llvm/lib/Analysis/VectorUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/AsmParser/LLLexer.cpp stable/11/contrib/llvm/lib/AsmParser/LLLexer.h stable/11/contrib/llvm/lib/AsmParser/LLParser.cpp stable/11/contrib/llvm/lib/AsmParser/LLParser.h stable/11/contrib/llvm/lib/AsmParser/LLToken.h stable/11/contrib/llvm/lib/AsmParser/Parser.cpp stable/11/contrib/llvm/lib/BinaryFormat/Dwarf.cpp (contents, props changed) stable/11/contrib/llvm/lib/BinaryFormat/Magic.cpp (contents, props changed) stable/11/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp stable/11/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.cpp (contents, props changed) stable/11/contrib/llvm/lib/Bitcode/Reader/ValueList.cpp (contents, props changed) stable/11/contrib/llvm/lib/Bitcode/Writer/BitWriter.cpp stable/11/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp stable/11/contrib/llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp stable/11/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp stable/11/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp stable/11/contrib/llvm/lib/CodeGen/AllocationOrder.cpp stable/11/contrib/llvm/lib/CodeGen/Analysis.cpp stable/11/contrib/llvm/lib/CodeGen/AntiDepBreaker.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/ARMException.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/ByteStreamer.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DIEHash.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocStream.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/AtomicExpandPass.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/BranchFolding.cpp stable/11/contrib/llvm/lib/CodeGen/BranchFolding.h stable/11/contrib/llvm/lib/CodeGen/BranchRelaxation.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/BuiltinGCs.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/CalcSpillWeights.cpp stable/11/contrib/llvm/lib/CodeGen/CodeGen.cpp stable/11/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp stable/11/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp stable/11/contrib/llvm/lib/CodeGen/DFAPacketizer.cpp stable/11/contrib/llvm/lib/CodeGen/DeadMachineInstructionElim.cpp stable/11/contrib/llvm/lib/CodeGen/DetectDeadLanes.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/DwarfEHPrepare.cpp stable/11/contrib/llvm/lib/CodeGen/EarlyIfConversion.cpp stable/11/contrib/llvm/lib/CodeGen/ExpandMemCmp.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp stable/11/contrib/llvm/lib/CodeGen/ExpandReductions.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/FaultMaps.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/FuncletLayout.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GCMetadata.cpp stable/11/contrib/llvm/lib/CodeGen/GCRootLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/CallLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/Localizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/RegisterBank.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/Utils.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalMerge.cpp stable/11/contrib/llvm/lib/CodeGen/IfConversion.cpp stable/11/contrib/llvm/lib/CodeGen/ImplicitNullChecks.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/InlineSpiller.cpp stable/11/contrib/llvm/lib/CodeGen/InterferenceCache.cpp stable/11/contrib/llvm/lib/CodeGen/InterleavedAccessPass.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/IntrinsicLowering.cpp stable/11/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp stable/11/contrib/llvm/lib/CodeGen/LatencyPriorityQueue.cpp stable/11/contrib/llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/LexicalScopes.cpp stable/11/contrib/llvm/lib/CodeGen/LiveDebugValues.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/LiveDebugVariables.cpp stable/11/contrib/llvm/lib/CodeGen/LiveInterval.cpp stable/11/contrib/llvm/lib/CodeGen/LiveIntervalUnion.cpp stable/11/contrib/llvm/lib/CodeGen/LiveIntervals.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp stable/11/contrib/llvm/lib/CodeGen/LiveRangeCalc.cpp stable/11/contrib/llvm/lib/CodeGen/LiveRangeCalc.h stable/11/contrib/llvm/lib/CodeGen/LiveRangeEdit.cpp stable/11/contrib/llvm/lib/CodeGen/LiveRangeShrink.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/LiveRegMatrix.cpp stable/11/contrib/llvm/lib/CodeGen/LiveRegUnits.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/LiveVariables.cpp stable/11/contrib/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp stable/11/contrib/llvm/lib/CodeGen/LowerEmuTLS.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRCanonicalizerPass.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRParser/MILexer.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRParser/MILexer.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRParser/MIParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRParser/MIParser.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRParser/MIRParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MIRPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp stable/11/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp stable/11/contrib/llvm/lib/CodeGen/MachineCSE.cpp stable/11/contrib/llvm/lib/CodeGen/MachineCombiner.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachineCopyPropagation.cpp stable/11/contrib/llvm/lib/CodeGen/MachineDominators.cpp stable/11/contrib/llvm/lib/CodeGen/MachineFrameInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachineFunction.cpp stable/11/contrib/llvm/lib/CodeGen/MachineFunctionPass.cpp stable/11/contrib/llvm/lib/CodeGen/MachineInstr.cpp stable/11/contrib/llvm/lib/CodeGen/MachineLICM.cpp stable/11/contrib/llvm/lib/CodeGen/MachineLoopInfo.cpp stable/11/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp stable/11/contrib/llvm/lib/CodeGen/MachineOperand.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachineOptimizationRemarkEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachineOutliner.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachinePipeliner.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/MachineRegionInfo.cpp stable/11/contrib/llvm/lib/CodeGen/MachineRegisterInfo.cpp stable/11/contrib/llvm/lib/CodeGen/MachineSSAUpdater.cpp stable/11/contrib/llvm/lib/CodeGen/MachineScheduler.cpp stable/11/contrib/llvm/lib/CodeGen/MachineSink.cpp stable/11/contrib/llvm/lib/CodeGen/MachineTraceMetrics.cpp stable/11/contrib/llvm/lib/CodeGen/MachineVerifier.cpp stable/11/contrib/llvm/lib/CodeGen/MacroFusion.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/OptimizePHIs.cpp stable/11/contrib/llvm/lib/CodeGen/PHIElimination.cpp stable/11/contrib/llvm/lib/CodeGen/ParallelCG.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/PatchableFunction.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/PeepholeOptimizer.cpp stable/11/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp stable/11/contrib/llvm/lib/CodeGen/ProcessImplicitDefs.cpp stable/11/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp stable/11/contrib/llvm/lib/CodeGen/RegAllocBase.cpp stable/11/contrib/llvm/lib/CodeGen/RegAllocBasic.cpp stable/11/contrib/llvm/lib/CodeGen/RegAllocFast.cpp stable/11/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp stable/11/contrib/llvm/lib/CodeGen/RegAllocPBQP.cpp stable/11/contrib/llvm/lib/CodeGen/RegUsageInfoCollector.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/RegUsageInfoPropagate.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/RegisterClassInfo.cpp stable/11/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp stable/11/contrib/llvm/lib/CodeGen/RegisterPressure.cpp stable/11/contrib/llvm/lib/CodeGen/RegisterScavenging.cpp stable/11/contrib/llvm/lib/CodeGen/RegisterUsageInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/RenameIndependentSubregs.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/ResetMachineFunctionPass.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SafeStack.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SafeStackColoring.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SafeStackLayout.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SafeStackLayout.h (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp stable/11/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp stable/11/contrib/llvm/lib/CodeGen/ScheduleDAGPrinter.cpp stable/11/contrib/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.h stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp stable/11/contrib/llvm/lib/CodeGen/ShadowStackGCLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/ShrinkWrap.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/SjLjEHPrepare.cpp stable/11/contrib/llvm/lib/CodeGen/SlotIndexes.cpp stable/11/contrib/llvm/lib/CodeGen/SpillPlacement.cpp stable/11/contrib/llvm/lib/CodeGen/SplitKit.cpp stable/11/contrib/llvm/lib/CodeGen/SplitKit.h stable/11/contrib/llvm/lib/CodeGen/StackColoring.cpp stable/11/contrib/llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp stable/11/contrib/llvm/lib/CodeGen/StackMaps.cpp stable/11/contrib/llvm/lib/CodeGen/StackProtector.cpp stable/11/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp stable/11/contrib/llvm/lib/CodeGen/TailDuplication.cpp stable/11/contrib/llvm/lib/CodeGen/TailDuplicator.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp stable/11/contrib/llvm/lib/CodeGen/TargetInstrInfo.cpp stable/11/contrib/llvm/lib/CodeGen/TargetLoweringBase.cpp stable/11/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp stable/11/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/TargetRegisterInfo.cpp stable/11/contrib/llvm/lib/CodeGen/TargetSchedule.cpp stable/11/contrib/llvm/lib/CodeGen/TargetSubtargetInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp stable/11/contrib/llvm/lib/CodeGen/VirtRegMap.cpp stable/11/contrib/llvm/lib/CodeGen/WinEHPrepare.cpp (contents, props changed) stable/11/contrib/llvm/lib/CodeGen/XRayInstrumentation.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugChecksumsSubsection.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugCrossImpSubsection.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugStringTableSubsection.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/GlobalTypeTableBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/RecordName.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeHashing.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeRecordMapping.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFCompileUnit.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDataExtractor.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugMacro.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugPubTable.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRangeList.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFFormValue.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFTypeUnit.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/MSF/MSFBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/MSF/MSFCommon.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/GenericError.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptor.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStream.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/HashTable.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/InfoStream.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/InfoStreamBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NamedStreamMap.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/PDBStringTable.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/PDBStringTableBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBExtras.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolData.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp (contents, props changed) stable/11/contrib/llvm/lib/DebugInfo/Symbolize/Symbolize.cpp (contents, props changed) stable/11/contrib/llvm/lib/Demangle/ItaniumDemangle.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/ExecutionEngine.cpp stable/11/contrib/llvm/lib/ExecutionEngine/ExecutionEngineBindings.cpp stable/11/contrib/llvm/lib/ExecutionEngine/GDBRegistrationListener.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp stable/11/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h stable/11/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c stable/11/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h stable/11/contrib/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.h stable/11/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp stable/11/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h stable/11/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp stable/11/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileWrapper.cpp stable/11/contrib/llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/NullResolver.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindings.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/OrcError.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.h (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFI386.h (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldELFMips.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldELFMips.h (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOAArch64.h stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOI386.h stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOX86_64.h stable/11/contrib/llvm/lib/ExecutionEngine/SectionMemoryManager.cpp (contents, props changed) stable/11/contrib/llvm/lib/ExecutionEngine/TargetSelect.cpp stable/11/contrib/llvm/lib/FuzzMutate/FuzzerCLI.cpp (contents, props changed) stable/11/contrib/llvm/lib/FuzzMutate/IRMutator.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/AsmWriter.cpp stable/11/contrib/llvm/lib/IR/AttributeImpl.h stable/11/contrib/llvm/lib/IR/Attributes.cpp stable/11/contrib/llvm/lib/IR/AutoUpgrade.cpp stable/11/contrib/llvm/lib/IR/BasicBlock.cpp stable/11/contrib/llvm/lib/IR/Comdat.cpp stable/11/contrib/llvm/lib/IR/ConstantFold.cpp stable/11/contrib/llvm/lib/IR/ConstantRange.cpp stable/11/contrib/llvm/lib/IR/Constants.cpp stable/11/contrib/llvm/lib/IR/ConstantsContext.h stable/11/contrib/llvm/lib/IR/Core.cpp stable/11/contrib/llvm/lib/IR/DIBuilder.cpp stable/11/contrib/llvm/lib/IR/DataLayout.cpp stable/11/contrib/llvm/lib/IR/DebugInfo.cpp stable/11/contrib/llvm/lib/IR/DebugInfoMetadata.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/DebugLoc.cpp stable/11/contrib/llvm/lib/IR/DiagnosticHandler.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/DiagnosticInfo.cpp stable/11/contrib/llvm/lib/IR/Dominators.cpp stable/11/contrib/llvm/lib/IR/Function.cpp stable/11/contrib/llvm/lib/IR/Globals.cpp stable/11/contrib/llvm/lib/IR/IRBuilder.cpp stable/11/contrib/llvm/lib/IR/IRPrintingPasses.cpp stable/11/contrib/llvm/lib/IR/InlineAsm.cpp stable/11/contrib/llvm/lib/IR/Instruction.cpp stable/11/contrib/llvm/lib/IR/Instructions.cpp stable/11/contrib/llvm/lib/IR/IntrinsicInst.cpp stable/11/contrib/llvm/lib/IR/LLVMContext.cpp stable/11/contrib/llvm/lib/IR/LLVMContextImpl.cpp stable/11/contrib/llvm/lib/IR/LLVMContextImpl.h stable/11/contrib/llvm/lib/IR/LegacyPassManager.cpp stable/11/contrib/llvm/lib/IR/MDBuilder.cpp stable/11/contrib/llvm/lib/IR/Mangler.cpp stable/11/contrib/llvm/lib/IR/Metadata.cpp stable/11/contrib/llvm/lib/IR/Module.cpp stable/11/contrib/llvm/lib/IR/ModuleSummaryIndex.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/Operator.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/OptBisect.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/Pass.cpp stable/11/contrib/llvm/lib/IR/ProfileSummary.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/SafepointIRVerifier.cpp (contents, props changed) stable/11/contrib/llvm/lib/IR/SymbolTableListTraitsImpl.h stable/11/contrib/llvm/lib/IR/Type.cpp stable/11/contrib/llvm/lib/IR/TypeFinder.cpp stable/11/contrib/llvm/lib/IR/Value.cpp stable/11/contrib/llvm/lib/IR/ValueSymbolTable.cpp stable/11/contrib/llvm/lib/IR/Verifier.cpp stable/11/contrib/llvm/lib/IRReader/IRReader.cpp stable/11/contrib/llvm/lib/LTO/Caching.cpp (contents, props changed) stable/11/contrib/llvm/lib/LTO/LTO.cpp (contents, props changed) stable/11/contrib/llvm/lib/LTO/LTOBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp stable/11/contrib/llvm/lib/LTO/LTOModule.cpp stable/11/contrib/llvm/lib/LTO/ThinLTOCodeGenerator.cpp (contents, props changed) stable/11/contrib/llvm/lib/Linker/IRMover.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/ELFObjectWriter.cpp stable/11/contrib/llvm/lib/MC/MCAsmBackend.cpp stable/11/contrib/llvm/lib/MC/MCAsmInfo.cpp stable/11/contrib/llvm/lib/MC/MCAsmInfoCOFF.cpp stable/11/contrib/llvm/lib/MC/MCAsmStreamer.cpp stable/11/contrib/llvm/lib/MC/MCAssembler.cpp stable/11/contrib/llvm/lib/MC/MCCodeView.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/MCContext.cpp stable/11/contrib/llvm/lib/MC/MCDisassembler/Disassembler.cpp stable/11/contrib/llvm/lib/MC/MCDisassembler/Disassembler.h stable/11/contrib/llvm/lib/MC/MCDwarf.cpp stable/11/contrib/llvm/lib/MC/MCELFStreamer.cpp stable/11/contrib/llvm/lib/MC/MCExpr.cpp stable/11/contrib/llvm/lib/MC/MCFragment.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/MCInst.cpp stable/11/contrib/llvm/lib/MC/MCInstrAnalysis.cpp stable/11/contrib/llvm/lib/MC/MCLabel.cpp stable/11/contrib/llvm/lib/MC/MCLinkerOptimizationHint.cpp stable/11/contrib/llvm/lib/MC/MCMachOStreamer.cpp stable/11/contrib/llvm/lib/MC/MCNullStreamer.cpp stable/11/contrib/llvm/lib/MC/MCObjectFileInfo.cpp stable/11/contrib/llvm/lib/MC/MCObjectStreamer.cpp stable/11/contrib/llvm/lib/MC/MCParser/AsmParser.cpp stable/11/contrib/llvm/lib/MC/MCParser/COFFAsmParser.cpp stable/11/contrib/llvm/lib/MC/MCParser/DarwinAsmParser.cpp stable/11/contrib/llvm/lib/MC/MCParser/ELFAsmParser.cpp stable/11/contrib/llvm/lib/MC/MCParser/MCAsmLexer.cpp stable/11/contrib/llvm/lib/MC/MCParser/MCAsmParser.cpp stable/11/contrib/llvm/lib/MC/MCSchedule.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/MCSection.cpp stable/11/contrib/llvm/lib/MC/MCSectionCOFF.cpp stable/11/contrib/llvm/lib/MC/MCSectionELF.cpp stable/11/contrib/llvm/lib/MC/MCStreamer.cpp stable/11/contrib/llvm/lib/MC/MCSubtargetInfo.cpp stable/11/contrib/llvm/lib/MC/MCSymbol.cpp stable/11/contrib/llvm/lib/MC/MCValue.cpp stable/11/contrib/llvm/lib/MC/MCWasmObjectTargetWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/MCWasmStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/MCWinCOFFStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/MachObjectWriter.cpp stable/11/contrib/llvm/lib/MC/StringTableBuilder.cpp stable/11/contrib/llvm/lib/MC/SubtargetFeature.cpp stable/11/contrib/llvm/lib/MC/WasmObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/MC/WinCOFFObjectWriter.cpp stable/11/contrib/llvm/lib/Object/Archive.cpp stable/11/contrib/llvm/lib/Object/ArchiveWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/Binary.cpp stable/11/contrib/llvm/lib/Object/COFFImportFile.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/COFFModuleDefinition.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/COFFObjectFile.cpp stable/11/contrib/llvm/lib/Object/ELF.cpp stable/11/contrib/llvm/lib/Object/ELFObjectFile.cpp stable/11/contrib/llvm/lib/Object/IRSymtab.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/MachOObjectFile.cpp stable/11/contrib/llvm/lib/Object/ModuleSymbolTable.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/Object.cpp stable/11/contrib/llvm/lib/Object/ObjectFile.cpp stable/11/contrib/llvm/lib/Object/RecordStreamer.cpp stable/11/contrib/llvm/lib/Object/RecordStreamer.h stable/11/contrib/llvm/lib/Object/SymbolSize.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/SymbolicFile.cpp stable/11/contrib/llvm/lib/Object/WasmObjectFile.cpp (contents, props changed) stable/11/contrib/llvm/lib/Object/WindowsResource.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/COFFYAML.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/CodeViewYAMLTypeHashing.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/CodeViewYAMLTypes.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/DWARFEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/DWARFVisitor.h (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/ELFYAML.cpp (contents, props changed) stable/11/contrib/llvm/lib/ObjectYAML/WasmYAML.cpp (contents, props changed) stable/11/contrib/llvm/lib/Option/Arg.cpp stable/11/contrib/llvm/lib/Option/ArgList.cpp stable/11/contrib/llvm/lib/Option/OptTable.cpp stable/11/contrib/llvm/lib/Option/Option.cpp stable/11/contrib/llvm/lib/Passes/PassBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/Passes/PassRegistry.def stable/11/contrib/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/GCOV.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/InstrProf.cpp stable/11/contrib/llvm/lib/ProfileData/InstrProfReader.cpp stable/11/contrib/llvm/lib/ProfileData/InstrProfWriter.cpp stable/11/contrib/llvm/lib/ProfileData/ProfileSummaryBuilder.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/SampleProf.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/SampleProfReader.cpp (contents, props changed) stable/11/contrib/llvm/lib/ProfileData/SampleProfWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/AMDGPUMetadata.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/APFloat.cpp stable/11/contrib/llvm/lib/Support/APInt.cpp stable/11/contrib/llvm/lib/Support/ARMAttributeParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/BinaryStreamRef.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/BranchProbability.cpp stable/11/contrib/llvm/lib/Support/COM.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/CachePruning.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/Chrono.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/CodeGenCoverage.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/CommandLine.cpp stable/11/contrib/llvm/lib/Support/ConvertUTF.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/CrashRecoveryContext.cpp stable/11/contrib/llvm/lib/Support/DAGDeltaAlgorithm.cpp stable/11/contrib/llvm/lib/Support/Debug.cpp stable/11/contrib/llvm/lib/Support/DebugCounter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/DynamicLibrary.cpp stable/11/contrib/llvm/lib/Support/Errno.cpp stable/11/contrib/llvm/lib/Support/Error.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/ErrorHandling.cpp stable/11/contrib/llvm/lib/Support/FileOutputBuffer.cpp stable/11/contrib/llvm/lib/Support/FoldingSet.cpp stable/11/contrib/llvm/lib/Support/FormattedStream.cpp stable/11/contrib/llvm/lib/Support/GraphWriter.cpp stable/11/contrib/llvm/lib/Support/Host.cpp stable/11/contrib/llvm/lib/Support/Locale.cpp stable/11/contrib/llvm/lib/Support/LockFileManager.cpp stable/11/contrib/llvm/lib/Support/MD5.cpp stable/11/contrib/llvm/lib/Support/ManagedStatic.cpp stable/11/contrib/llvm/lib/Support/Memory.cpp stable/11/contrib/llvm/lib/Support/MemoryBuffer.cpp stable/11/contrib/llvm/lib/Support/Mutex.cpp stable/11/contrib/llvm/lib/Support/NativeFormatting.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/Parallel.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/Path.cpp stable/11/contrib/llvm/lib/Support/PrettyStackTrace.cpp stable/11/contrib/llvm/lib/Support/Process.cpp stable/11/contrib/llvm/lib/Support/Program.cpp stable/11/contrib/llvm/lib/Support/RWMutex.cpp stable/11/contrib/llvm/lib/Support/RandomNumberGenerator.cpp stable/11/contrib/llvm/lib/Support/Regex.cpp stable/11/contrib/llvm/lib/Support/SHA1.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/Signals.cpp stable/11/contrib/llvm/lib/Support/SmallPtrSet.cpp stable/11/contrib/llvm/lib/Support/SmallVector.cpp stable/11/contrib/llvm/lib/Support/SourceMgr.cpp stable/11/contrib/llvm/lib/Support/Statistic.cpp stable/11/contrib/llvm/lib/Support/StringExtras.cpp stable/11/contrib/llvm/lib/Support/StringMap.cpp stable/11/contrib/llvm/lib/Support/StringPool.cpp stable/11/contrib/llvm/lib/Support/StringRef.cpp stable/11/contrib/llvm/lib/Support/StringSaver.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/TarWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/TargetParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Support/TargetRegistry.cpp stable/11/contrib/llvm/lib/Support/ThreadLocal.cpp stable/11/contrib/llvm/lib/Support/Threading.cpp stable/11/contrib/llvm/lib/Support/Timer.cpp stable/11/contrib/llvm/lib/Support/Triple.cpp stable/11/contrib/llvm/lib/Support/Twine.cpp stable/11/contrib/llvm/lib/Support/Unix/Host.inc stable/11/contrib/llvm/lib/Support/Unix/Memory.inc stable/11/contrib/llvm/lib/Support/Unix/Path.inc stable/11/contrib/llvm/lib/Support/Unix/Process.inc stable/11/contrib/llvm/lib/Support/Unix/Program.inc stable/11/contrib/llvm/lib/Support/Unix/Signals.inc stable/11/contrib/llvm/lib/Support/Unix/ThreadLocal.inc stable/11/contrib/llvm/lib/Support/Unix/Threading.inc (contents, props changed) stable/11/contrib/llvm/lib/Support/Unix/Unix.h stable/11/contrib/llvm/lib/Support/Unix/Watchdog.inc stable/11/contrib/llvm/lib/Support/Watchdog.cpp stable/11/contrib/llvm/lib/Support/Windows/DynamicLibrary.inc stable/11/contrib/llvm/lib/Support/Windows/Host.inc stable/11/contrib/llvm/lib/Support/Windows/Path.inc stable/11/contrib/llvm/lib/Support/Windows/Process.inc stable/11/contrib/llvm/lib/Support/Windows/Program.inc stable/11/contrib/llvm/lib/Support/Windows/RWMutex.inc stable/11/contrib/llvm/lib/Support/Windows/Signals.inc stable/11/contrib/llvm/lib/Support/Windows/WindowsSupport.h stable/11/contrib/llvm/lib/Support/YAMLParser.cpp stable/11/contrib/llvm/lib/Support/YAMLTraits.cpp stable/11/contrib/llvm/lib/Support/circular_raw_ostream.cpp stable/11/contrib/llvm/lib/Support/raw_ostream.cpp stable/11/contrib/llvm/lib/Support/regcomp.c stable/11/contrib/llvm/lib/Support/regengine.inc stable/11/contrib/llvm/lib/Support/regex_impl.h stable/11/contrib/llvm/lib/Support/xxhash.cpp (contents, props changed) stable/11/contrib/llvm/lib/TableGen/Error.cpp stable/11/contrib/llvm/lib/TableGen/Main.cpp stable/11/contrib/llvm/lib/TableGen/Record.cpp stable/11/contrib/llvm/lib/TableGen/StringMatcher.cpp stable/11/contrib/llvm/lib/TableGen/TGLexer.cpp stable/11/contrib/llvm/lib/TableGen/TGLexer.h stable/11/contrib/llvm/lib/TableGen/TGParser.cpp stable/11/contrib/llvm/lib/TableGen/TGParser.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64FalkorHWPFFix.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64InstrAtomics.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64InstrFormats.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64MacroFusion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64PBQPRegAlloc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedA53.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedFalkor.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedFalkorDetails.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedKryo.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedThunderX.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64SchedThunderX2T99.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64SystemOperands.td stable/11/contrib/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.h stable/11/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp stable/11/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp stable/11/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp stable/11/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp stable/11/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp stable/11/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.h stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.h stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AArch64/SVEInstrFormats.td stable/11/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp stable/11/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPU.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUFrameLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInline.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsics.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULibFunc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerIntrinsics.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMacroFusion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBanks.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.td stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDKernelCodeT.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/BUFInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/DSInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/EvergreenInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/FLATInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNILPSched.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNMinRegStrategy.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNProcessors.td stable/11/contrib/llvm/lib/Target/AMDGPU/GCNRegPressure.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNRegPressure.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNSchedStrategy.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MIMGInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/R600ClauseMergePass.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600Defines.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600ISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600InstrFormats.td stable/11/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600Instructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/R600MachineScheduler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600MachineScheduler.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600OptimizeVectorRegisters.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600Packetizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600Processors.td stable/11/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.td stable/11/contrib/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIDebuggerInsertNops.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIDefines.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIFixVGPRCopies.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIFixWWMLiveness.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIInsertSkips.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIInstrFormats.td stable/11/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.td stable/11/contrib/llvm/lib/Target/AMDGPU/SIInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIMachineScheduler.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td stable/11/contrib/llvm/lib/Target/AMDGPU/SISchedule.td stable/11/contrib/llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/SMInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/SOPInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/TargetInfo/AMDGPUTargetInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/VOP1Instructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/VOP2Instructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/VOP3Instructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/VOP3PInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/VOPCInstructions.td stable/11/contrib/llvm/lib/Target/AMDGPU/VOPInstructions.td stable/11/contrib/llvm/lib/Target/ARC/ARCAsmPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCBranchFinalize.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCFrameLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCInstrFormats.td stable/11/contrib/llvm/lib/Target/ARC/ARCInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCInstrInfo.td stable/11/contrib/llvm/lib/Target/ARC/ARCMCInstLower.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCMCInstLower.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCMachineFunctionInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCRegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/Disassembler/ARCDisassembler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/A15SDOptimizer.cpp stable/11/contrib/llvm/lib/Target/ARM/ARM.h stable/11/contrib/llvm/lib/Target/ARM/ARM.td stable/11/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.h stable/11/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h stable/11/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h stable/11/contrib/llvm/lib/Target/ARM/ARMCallLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMCallingConv.h stable/11/contrib/llvm/lib/Target/ARM/ARMCallingConv.td stable/11/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.h stable/11/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMFrameLowering.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMFrameLowering.h stable/11/contrib/llvm/lib/Target/ARM/ARMHazardRecognizer.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMISelLowering.h stable/11/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td stable/11/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMInstrInfo.h stable/11/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td stable/11/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td stable/11/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td stable/11/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td stable/11/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td stable/11/contrib/llvm/lib/Target/ARM/ARMInstructionSelector.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMMachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/ARM/ARMMacroFusion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMRegisterBanks.td stable/11/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.td stable/11/contrib/llvm/lib/Target/ARM/ARMScheduleA57.td stable/11/contrib/llvm/lib/Target/ARM/ARMScheduleA9.td stable/11/contrib/llvm/lib/Target/ARM/ARMScheduleR52.td stable/11/contrib/llvm/lib/Target/ARM/ARMScheduleSwift.td stable/11/contrib/llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMSubtarget.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMSubtarget.h stable/11/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMTargetMachine.h stable/11/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.h stable/11/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp stable/11/contrib/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp stable/11/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp stable/11/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendELF.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendWinCOFF.h (contents, props changed) stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp stable/11/contrib/llvm/lib/Target/ARM/MLxExpansionPass.cpp stable/11/contrib/llvm/lib/Target/ARM/Thumb1FrameLowering.cpp stable/11/contrib/llvm/lib/Target/ARM/Thumb1InstrInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp stable/11/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.cpp stable/11/contrib/llvm/lib/Target/ARM/Thumb2SizeReduction.cpp stable/11/contrib/llvm/lib/Target/ARM/ThumbRegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AVR.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRInstrInfo.td stable/11/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRTargetMachine.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCELFStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCELFStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPF.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPF.td stable/11/contrib/llvm/lib/Target/BPF/BPFCallingConv.td stable/11/contrib/llvm/lib/Target/BPF/BPFISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFInstrInfo.td stable/11/contrib/llvm/lib/Target/BPF/BPFRegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFRegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFSubtarget.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFSubtarget.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFTargetMachine.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/InstPrinter/BPFInstPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCAsmInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/BitTracker.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/BitTracker.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/Hexagon.h stable/11/contrib/llvm/lib/Target/Hexagon/Hexagon.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonBitTracker.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonBitTracker.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonBlockRanges.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonBranchRelaxation.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepIICScalar.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepInstrInfo.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepMappings.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonFixupHwLoops.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonGatherPacketize.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonGenInsert.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonGenMux.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonGenPredicate.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonHazardRecognizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonHazardRecognizer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV60.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsics.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV5.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonMapAsm2IntrinV65.gen.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonPatterns.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonPseudo.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.td stable/11/contrib/llvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonSplitDouble.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonStoreWidening.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.h stable/11/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp stable/11/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonVectorPrint.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCompound.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCDuplexInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCShuffler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFCopy.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFDeadCode.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFGraph.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFLiveness.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFLiveness.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Hexagon/TargetInfo/HexagonTargetInfo.cpp stable/11/contrib/llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiDelaySlotFiller.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiInstrFormats.td stable/11/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.td stable/11/contrib/llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiTargetObjectFile.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.h stable/11/contrib/llvm/lib/Target/MSP430/MSP430BranchSelector.cpp stable/11/contrib/llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp stable/11/contrib/llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp stable/11/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.cpp stable/11/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsFixupKinds.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.h stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp stable/11/contrib/llvm/lib/Target/Mips/MicroMips32r6InstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MicroMipsDSPInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MicroMipsDSPInstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td stable/11/contrib/llvm/lib/Target/Mips/MicroMipsInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MicroMipsInstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Mips/Mips.h stable/11/contrib/llvm/lib/Target/Mips/Mips.td stable/11/contrib/llvm/lib/Target/Mips/Mips16FrameLowering.cpp stable/11/contrib/llvm/lib/Target/Mips/Mips16HardFloat.cpp stable/11/contrib/llvm/lib/Target/Mips/Mips16ISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.h stable/11/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/Mips64InstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/Mips64r6InstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsCondMov.td stable/11/contrib/llvm/lib/Target/Mips/MipsConstantIslandPass.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsDSPInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MipsDSPInstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsEVAInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MipsEVAInstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsFrameLowering.h stable/11/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.h stable/11/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsISelLowering.h stable/11/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td stable/11/contrib/llvm/lib/Target/Mips/MipsInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MipsInstrInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsInstrInfo.h stable/11/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MipsMCInstLower.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsMCInstLower.h stable/11/contrib/llvm/lib/Target/Mips/MipsMSAInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MipsMSAInstrInfo.td stable/11/contrib/llvm/lib/Target/Mips/MipsMTInstrFormats.td stable/11/contrib/llvm/lib/Target/Mips/MipsMachineFunction.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsModuleISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsOs16.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.h stable/11/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.h stable/11/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.h stable/11/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.h stable/11/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.h stable/11/contrib/llvm/lib/Target/Mips/MipsSERegisterInfo.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsSchedule.td stable/11/contrib/llvm/lib/Target/Mips/MipsScheduleGeneric.td stable/11/contrib/llvm/lib/Target/Mips/MipsScheduleP5600.td stable/11/contrib/llvm/lib/Target/Mips/MipsSubtarget.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsSubtarget.h stable/11/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp stable/11/contrib/llvm/lib/Target/Mips/MipsTargetMachine.h stable/11/contrib/llvm/lib/Target/Mips/MipsTargetStreamer.h stable/11/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp stable/11/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.h stable/11/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTX.td stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXFrameLowering.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXFrameLowering.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.td stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXIntrinsics.td stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXPrologEpilogPass.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXSubtarget.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXTargetObjectFile.h stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/NVPTX/NVVMReflect.cpp stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2ELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2TargetStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2ISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2InstrFormats.td stable/11/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.td stable/11/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.h (contents, props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2TargetStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp stable/11/contrib/llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp stable/11/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp stable/11/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.h stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMachObjectWriter.cpp stable/11/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.h stable/11/contrib/llvm/lib/Target/PowerPC/P9InstrResources.td stable/11/contrib/llvm/lib/Target/PowerPC/PPC.h stable/11/contrib/llvm/lib/Target/PowerPC/PPC.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCBranchCoalescing.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCBranchSelector.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCEarlyReturn.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCExpandISEL.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCFastISel.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrFormats.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrQPX.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrSPE.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCLoopPreIncPrep.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCMIPeephole.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCSchedule.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCScheduleP9.td stable/11/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCTargetObjectFile.h stable/11/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp stable/11/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCVSXSwapRemoval.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCV.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCV.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVCallingConv.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVFrameLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVFrameLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrFormats.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoA.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoC.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoD.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoF.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoM.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVMCInstLower.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVRegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVRegisterInfo.td stable/11/contrib/llvm/lib/Target/RISCV/RISCVSubtarget.h (contents, props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp stable/11/contrib/llvm/lib/Target/Sparc/DelaySlotFiller.cpp stable/11/contrib/llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp stable/11/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp stable/11/contrib/llvm/lib/Target/Sparc/LeonFeatures.td stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h stable/11/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h stable/11/contrib/llvm/lib/Target/Sparc/Sparc.h stable/11/contrib/llvm/lib/Target/Sparc/Sparc.td stable/11/contrib/llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp stable/11/contrib/llvm/lib/Target/Sparc/SparcISelLowering.h stable/11/contrib/llvm/lib/Target/Sparc/SparcInstrAliases.td stable/11/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.cpp stable/11/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td stable/11/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.h stable/11/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp stable/11/contrib/llvm/lib/Target/Sparc/SparcSubtarget.h stable/11/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp stable/11/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp stable/11/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp stable/11/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.h stable/11/contrib/llvm/lib/Target/SystemZ/SystemZ.h stable/11/contrib/llvm/lib/Target/SystemZ/SystemZ.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.h stable/11/contrib/llvm/lib/Target/SystemZ/SystemZCallingConv.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZElimCompare.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZExpandPseudo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZFeatures.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZFrameLowering.h stable/11/contrib/llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZHazardRecognizer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h stable/11/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZInstrFormats.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZMachineScheduler.h (contents, props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZOperands.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZOperators.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.h stable/11/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZSchedule.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ13.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ196.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td stable/11/contrib/llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp stable/11/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/Target.cpp stable/11/contrib/llvm/lib/Target/TargetLoweringObjectFile.cpp stable/11/contrib/llvm/lib/Target/TargetMachine.cpp stable/11/contrib/llvm/lib/Target/TargetMachineC.cpp stable/11/contrib/llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCCodeEmitter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/README.txt (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssembly.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssembly.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyArgumentMove.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCallIndirectFixup.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISD.def stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrConv.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFormats.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInteger.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrMemory.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerBrUnless.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerGlobalDtors.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeLiveIntervals.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeReturned.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPrepareForLiveIntervals.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.td stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyReplacePhysRegs.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetObjectFile.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetObjectFile.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h (contents, props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/known_gcc_test_failures.txt (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp stable/11/contrib/llvm/lib/Target/X86/AsmParser/X86Operand.h stable/11/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp stable/11/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp stable/11/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86InstComments.h stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp stable/11/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86FixupKinds.h stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp stable/11/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.cpp stable/11/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.h stable/11/contrib/llvm/lib/Target/X86/X86.h stable/11/contrib/llvm/lib/Target/X86/X86.td stable/11/contrib/llvm/lib/Target/X86/X86AsmPrinter.cpp stable/11/contrib/llvm/lib/Target/X86/X86AsmPrinter.h stable/11/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp stable/11/contrib/llvm/lib/Target/X86/X86CallLowering.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86CallingConv.h stable/11/contrib/llvm/lib/Target/X86/X86CallingConv.td stable/11/contrib/llvm/lib/Target/X86/X86CmovConversion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86DomainReassignment.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86EvexToVex.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86ExpandPseudo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86FastISel.cpp stable/11/contrib/llvm/lib/Target/X86/X86FixupBWInsts.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp stable/11/contrib/llvm/lib/Target/X86/X86FlagsCopyLowering.cpp stable/11/contrib/llvm/lib/Target/X86/X86FloatingPoint.cpp stable/11/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp stable/11/contrib/llvm/lib/Target/X86/X86FrameLowering.h stable/11/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp stable/11/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp stable/11/contrib/llvm/lib/Target/X86/X86ISelLowering.h stable/11/contrib/llvm/lib/Target/X86/X86Instr3DNow.td stable/11/contrib/llvm/lib/Target/X86/X86InstrAVX512.td stable/11/contrib/llvm/lib/Target/X86/X86InstrArithmetic.td stable/11/contrib/llvm/lib/Target/X86/X86InstrCMovSetCC.td stable/11/contrib/llvm/lib/Target/X86/X86InstrCompiler.td stable/11/contrib/llvm/lib/Target/X86/X86InstrControl.td stable/11/contrib/llvm/lib/Target/X86/X86InstrExtension.td stable/11/contrib/llvm/lib/Target/X86/X86InstrFMA.td stable/11/contrib/llvm/lib/Target/X86/X86InstrFMA3Info.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86InstrFMA3Info.h (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86InstrFPStack.td stable/11/contrib/llvm/lib/Target/X86/X86InstrFormats.td stable/11/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td stable/11/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp stable/11/contrib/llvm/lib/Target/X86/X86InstrInfo.h stable/11/contrib/llvm/lib/Target/X86/X86InstrInfo.td stable/11/contrib/llvm/lib/Target/X86/X86InstrMMX.td stable/11/contrib/llvm/lib/Target/X86/X86InstrMPX.td stable/11/contrib/llvm/lib/Target/X86/X86InstrSGX.td stable/11/contrib/llvm/lib/Target/X86/X86InstrSSE.td stable/11/contrib/llvm/lib/Target/X86/X86InstrSVM.td stable/11/contrib/llvm/lib/Target/X86/X86InstrShiftRotate.td stable/11/contrib/llvm/lib/Target/X86/X86InstrSystem.td stable/11/contrib/llvm/lib/Target/X86/X86InstrVMX.td stable/11/contrib/llvm/lib/Target/X86/X86InstrVecCompiler.td stable/11/contrib/llvm/lib/Target/X86/X86InstrXOP.td stable/11/contrib/llvm/lib/Target/X86/X86InstructionSelector.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86InterleavedAccess.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86IntrinsicsInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86LegalizerInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86MCInstLower.cpp stable/11/contrib/llvm/lib/Target/X86/X86MachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/X86/X86MacroFusion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86OptimizeLEAs.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86PadShortFunction.cpp stable/11/contrib/llvm/lib/Target/X86/X86RegisterBankInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86RegisterInfo.cpp stable/11/contrib/llvm/lib/Target/X86/X86RegisterInfo.td stable/11/contrib/llvm/lib/Target/X86/X86RetpolineThunks.cpp stable/11/contrib/llvm/lib/Target/X86/X86SchedBroadwell.td stable/11/contrib/llvm/lib/Target/X86/X86SchedHaswell.td stable/11/contrib/llvm/lib/Target/X86/X86SchedSandyBridge.td stable/11/contrib/llvm/lib/Target/X86/X86SchedSkylakeClient.td stable/11/contrib/llvm/lib/Target/X86/X86SchedSkylakeServer.td stable/11/contrib/llvm/lib/Target/X86/X86Schedule.td stable/11/contrib/llvm/lib/Target/X86/X86ScheduleAtom.td stable/11/contrib/llvm/lib/Target/X86/X86ScheduleBtVer2.td stable/11/contrib/llvm/lib/Target/X86/X86ScheduleSLM.td stable/11/contrib/llvm/lib/Target/X86/X86ScheduleZnver1.td stable/11/contrib/llvm/lib/Target/X86/X86Subtarget.cpp stable/11/contrib/llvm/lib/Target/X86/X86Subtarget.h stable/11/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp stable/11/contrib/llvm/lib/Target/X86/X86TargetObjectFile.cpp stable/11/contrib/llvm/lib/Target/X86/X86TargetObjectFile.h stable/11/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp stable/11/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.h (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86VZeroUpper.cpp stable/11/contrib/llvm/lib/Target/X86/X86WinAllocaExpander.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/X86/X86WinEHState.cpp (contents, props changed) stable/11/contrib/llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp stable/11/contrib/llvm/lib/Target/XCore/InstPrinter/XCoreInstPrinter.h stable/11/contrib/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreMCInstLower.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreMCInstLower.h stable/11/contrib/llvm/lib/Target/XCore/XCoreMachineFunctionInfo.h stable/11/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.cpp stable/11/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.h stable/11/contrib/llvm/lib/Target/XCore/XCoreSubtarget.h stable/11/contrib/llvm/lib/Testing/Support/Error.cpp (contents, props changed) stable/11/contrib/llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp (contents, props changed) stable/11/contrib/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp (contents, props changed) stable/11/contrib/llvm/lib/ToolDrivers/llvm-lib/Options.td stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroEarly.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroElide.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroFrame.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroInternal.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroSplit.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/Coroutines.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/AlwaysInliner.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp stable/11/contrib/llvm/lib/Transforms/IPO/BarrierNoopPass.cpp stable/11/contrib/llvm/lib/Transforms/IPO/CalledValuePropagation.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/CrossDSOCFI.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp stable/11/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp stable/11/contrib/llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp stable/11/contrib/llvm/lib/Transforms/IPO/FunctionImport.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp stable/11/contrib/llvm/lib/Transforms/IPO/IPConstantPropagation.cpp stable/11/contrib/llvm/lib/Transforms/IPO/IPO.cpp stable/11/contrib/llvm/lib/Transforms/IPO/InlineSimple.cpp stable/11/contrib/llvm/lib/Transforms/IPO/Inliner.cpp stable/11/contrib/llvm/lib/Transforms/IPO/Internalize.cpp stable/11/contrib/llvm/lib/Transforms/IPO/LoopExtractor.cpp stable/11/contrib/llvm/lib/Transforms/IPO/LowerTypeTests.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp stable/11/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp stable/11/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp stable/11/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp stable/11/contrib/llvm/lib/Transforms/IPO/SampleProfile.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/StripSymbols.cpp stable/11/contrib/llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineInternal.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp stable/11/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp stable/11/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp stable/11/contrib/llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp stable/11/contrib/llvm/lib/Transforms/Instrumentation/CFGMST.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp stable/11/contrib/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp stable/11/contrib/llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp stable/11/contrib/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/PGOMemOPSizeOpt.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp stable/11/contrib/llvm/lib/Transforms/ObjCARC/BlotMapVector.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/ObjCARC/DependencyAnalysis.h stable/11/contrib/llvm/lib/Transforms/ObjCARC/ObjCARC.h stable/11/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp stable/11/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp stable/11/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCExpand.cpp stable/11/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp stable/11/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysis.cpp stable/11/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysis.h stable/11/contrib/llvm/lib/Transforms/ObjCARC/PtrState.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/ObjCARC/PtrState.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/ADCE.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/BDCE.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/ConstantProp.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/DCE.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/FlattenCFGPass.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/Float2Int.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/GVN.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/GVNHoist.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/GVNSink.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/GuardWidening.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LICM.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopDeletion.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopDistribute.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopInterchange.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopPredication.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopRerollPass.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopSink.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/MergeICmps.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/NaryReassociate.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/NewGVN.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/Reg2Mem.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/SROA.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/Scalar.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/Sink.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/StructurizeCFG.cpp stable/11/contrib/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp stable/11/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp stable/11/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp stable/11/contrib/llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp stable/11/contrib/llvm/lib/Transforms/Utils/BuildLibCalls.cpp stable/11/contrib/llvm/lib/Transforms/Utils/BypassSlowDivision.cpp stable/11/contrib/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp stable/11/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp stable/11/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp stable/11/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp stable/11/contrib/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp stable/11/contrib/llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/EscapeEnumerator.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/Evaluator.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/FlattenCFG.cpp stable/11/contrib/llvm/lib/Transforms/Utils/FunctionComparator.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/GlobalStatus.cpp stable/11/contrib/llvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp stable/11/contrib/llvm/lib/Transforms/Utils/InstructionNamer.cpp stable/11/contrib/llvm/lib/Transforms/Utils/IntegerDivision.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LCSSA.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/Local.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LoopUnroll.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LoopUnrollPeel.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/LoopVersioning.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/LowerInvoke.cpp stable/11/contrib/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/LowerSwitch.cpp stable/11/contrib/llvm/lib/Transforms/Utils/Mem2Reg.cpp stable/11/contrib/llvm/lib/Transforms/Utils/MetaRenamer.cpp stable/11/contrib/llvm/lib/Transforms/Utils/OrderedInstructions.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/PredicateInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp stable/11/contrib/llvm/lib/Transforms/Utils/SSAUpdater.cpp stable/11/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp stable/11/contrib/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp stable/11/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp stable/11/contrib/llvm/lib/Transforms/Utils/SplitModule.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/StripGCRelocates.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/StripNonLineTableDebugInfo.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/SymbolRewriter.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp stable/11/contrib/llvm/lib/Transforms/Utils/Utils.cpp stable/11/contrib/llvm/lib/Transforms/Utils/VNCoercion.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlan.cpp (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlan.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Vectorize/VPlanValue.h (contents, props changed) stable/11/contrib/llvm/lib/Transforms/Vectorize/Vectorize.cpp stable/11/contrib/llvm/lib/XRay/Trace.cpp (contents, props changed) stable/11/contrib/llvm/tools/bugpoint/BugDriver.cpp stable/11/contrib/llvm/tools/bugpoint/BugDriver.h stable/11/contrib/llvm/tools/bugpoint/CrashDebugger.cpp stable/11/contrib/llvm/tools/bugpoint/ExecutionDriver.cpp stable/11/contrib/llvm/tools/bugpoint/ExtractFunction.cpp stable/11/contrib/llvm/tools/bugpoint/FindBugs.cpp stable/11/contrib/llvm/tools/bugpoint/Miscompilation.cpp stable/11/contrib/llvm/tools/bugpoint/OptimizerDriver.cpp stable/11/contrib/llvm/tools/bugpoint/ToolRunner.cpp stable/11/contrib/llvm/tools/bugpoint/bugpoint.cpp stable/11/contrib/llvm/tools/clang/LICENSE.TXT stable/11/contrib/llvm/tools/clang/include/clang-c/BuildSystem.h stable/11/contrib/llvm/tools/clang/include/clang-c/CXCompilationDatabase.h stable/11/contrib/llvm/tools/clang/include/clang-c/CXErrorCode.h stable/11/contrib/llvm/tools/clang/include/clang-c/CXString.h stable/11/contrib/llvm/tools/clang/include/clang-c/Documentation.h stable/11/contrib/llvm/tools/clang/include/clang-c/Index.h stable/11/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMT.h stable/11/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMTActions.h stable/11/contrib/llvm/tools/clang/include/clang/ARCMigrate/FileRemapper.h stable/11/contrib/llvm/tools/clang/include/clang/AST/APValue.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTDiagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTFwd.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTImporter.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTLambda.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTMutationListener.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTStructuralEquivalence.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTTypeTraits.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ASTUnresolvedSet.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Attr.h stable/11/contrib/llvm/tools/clang/include/clang/AST/AttrIterator.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Availability.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/BaseSubobject.h stable/11/contrib/llvm/tools/clang/include/clang/AST/BuiltinTypes.def stable/11/contrib/llvm/tools/clang/include/clang/AST/CXXInheritance.h stable/11/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h stable/11/contrib/llvm/tools/clang/include/clang/AST/CharUnits.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Comment.h stable/11/contrib/llvm/tools/clang/include/clang/AST/CommentBriefParser.h stable/11/contrib/llvm/tools/clang/include/clang/AST/CommentCommandTraits.h stable/11/contrib/llvm/tools/clang/include/clang/AST/CommentLexer.h stable/11/contrib/llvm/tools/clang/include/clang/AST/CommentSema.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DataCollection.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/Decl.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclContextInternals.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclFriend.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclLookups.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclOpenMP.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclVisitor.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h stable/11/contrib/llvm/tools/clang/include/clang/AST/DependentDiagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/AST/EvaluatedExprVisitor.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Expr.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ExprObjC.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ExprOpenMP.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/ExternalASTMerger.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/ExternalASTSource.h stable/11/contrib/llvm/tools/clang/include/clang/AST/GlobalDecl.h stable/11/contrib/llvm/tools/clang/include/clang/AST/LambdaCapture.h stable/11/contrib/llvm/tools/clang/include/clang/AST/LocInfoType.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/Mangle.h stable/11/contrib/llvm/tools/clang/include/clang/AST/MangleNumberingContext.h stable/11/contrib/llvm/tools/clang/include/clang/AST/NSAPI.h stable/11/contrib/llvm/tools/clang/include/clang/AST/NestedNameSpecifier.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ODRHash.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h stable/11/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.def stable/11/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.h stable/11/contrib/llvm/tools/clang/include/clang/AST/ParentMap.h stable/11/contrib/llvm/tools/clang/include/clang/AST/PrettyPrinter.h stable/11/contrib/llvm/tools/clang/include/clang/AST/QualTypeNames.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/RawCommentList.h stable/11/contrib/llvm/tools/clang/include/clang/AST/RecordLayout.h stable/11/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Redeclarable.h stable/11/contrib/llvm/tools/clang/include/clang/AST/SelectorLocationsKind.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Stmt.h stable/11/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h stable/11/contrib/llvm/tools/clang/include/clang/AST/StmtIterator.h stable/11/contrib/llvm/tools/clang/include/clang/AST/StmtObjC.h stable/11/contrib/llvm/tools/clang/include/clang/AST/StmtOpenMP.h stable/11/contrib/llvm/tools/clang/include/clang/AST/StmtVisitor.h stable/11/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h stable/11/contrib/llvm/tools/clang/include/clang/AST/TemplateName.h stable/11/contrib/llvm/tools/clang/include/clang/AST/Type.h stable/11/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h stable/11/contrib/llvm/tools/clang/include/clang/AST/TypeNodes.def stable/11/contrib/llvm/tools/clang/include/clang/AST/TypeOrdering.h stable/11/contrib/llvm/tools/clang/include/clang/AST/TypeVisitor.h stable/11/contrib/llvm/tools/clang/include/clang/AST/UnresolvedSet.h stable/11/contrib/llvm/tools/clang/include/clang/AST/VTTBuilder.h stable/11/contrib/llvm/tools/clang/include/clang/AST/VTableBuilder.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchFinder.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersMacros.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Diagnostics.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Parser.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Registry.h stable/11/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/CFGReachabilityAnalysis.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/Consumed.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/Dominators.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/FormatString.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/LiveVariables.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/PostOrderCFGView.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ReachableCode.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafety.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/UninitializedValues.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisDeclContext.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Analysis/CFG.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/CFGStmtMap.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/CallGraph.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/CloneDetection.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Analysis/CodeInjector.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Analysis/DomainSpecific/CocoaConventions.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/DomainSpecific/ObjCNoReturn.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Support/BumpVector.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/ABI.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/AddressSpaces.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/AlignedAllocation.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/AllDiagnostics.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Attr.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/AttrKinds.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/AttrSubjectMatchRules.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/Attributes.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/Builtins.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAArch64.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAMDGPU.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsHexagon.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNEON.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNVPTX.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsPPC.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsWebAssembly.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86_64.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/CapturedStmt.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/CharInfo.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/CommentOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Cuda.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/DebugInfoOptions.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommentKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticError.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticIDs.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerializationKinds.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/ExceptionSpecificationType.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/ExpressionTraits.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/FileManager.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/FileSystemOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/FileSystemStatCache.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/LLVM.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Lambda.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Linkage.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/MacroBuilder.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Module.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensions.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/OpenCLOptions.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/OperatorKinds.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/OperatorPrecedence.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/PartialDiagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/PrettyStackTrace.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/SourceManagerInternals.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td stable/11/contrib/llvm/tools/clang/include/clang/Basic/SyncScope.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/TargetBuiltins.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/TargetCXXABI.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/TemplateKinds.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Version.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/Visibility.h stable/11/contrib/llvm/tools/clang/include/clang/Basic/X86Target.def stable/11/contrib/llvm/tools/clang/include/clang/Basic/XRayLists.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td stable/11/contrib/llvm/tools/clang/include/clang/CodeGen/BackendUtil.h stable/11/contrib/llvm/tools/clang/include/clang/CodeGen/CGFunctionInfo.h stable/11/contrib/llvm/tools/clang/include/clang/CodeGen/ConstantInitBuilder.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/CodeGen/SwiftCallingConv.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTranslationUnit.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Driver/Action.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td stable/11/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td stable/11/contrib/llvm/tools/clang/include/clang/Driver/Compilation.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/Distro.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Driver/Driver.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/Job.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/Multilib.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/Options.td stable/11/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/Tool.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/Types.def stable/11/contrib/llvm/tools/clang/include/clang/Driver/Types.h stable/11/contrib/llvm/tools/clang/include/clang/Driver/XRayArgs.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Edit/Commit.h stable/11/contrib/llvm/tools/clang/include/clang/Edit/EditedSource.h stable/11/contrib/llvm/tools/clang/include/clang/Edit/EditsReceiver.h stable/11/contrib/llvm/tools/clang/include/clang/Edit/FileOffset.h stable/11/contrib/llvm/tools/clang/include/clang/Edit/Rewriters.h stable/11/contrib/llvm/tools/clang/include/clang/Format/Format.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/ASTConsumers.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/ChainedDiagnosticConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def stable/11/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/CommandLineSourceLoc.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInvocation.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/DependencyOutputOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/DiagnosticRenderer.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/FrontendAction.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/FrontendActions.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/FrontendPluginRegistry.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def stable/11/contrib/llvm/tools/clang/include/clang/Frontend/LayoutOverrideSource.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/LogDiagnosticPrinter.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/MultiplexConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Frontend/PrecompiledPreamble.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnosticReader.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnostics.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticBuffer.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/Utils.h stable/11/contrib/llvm/tools/clang/include/clang/Frontend/VerifyDiagnosticConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/FrontendTool/Utils.h stable/11/contrib/llvm/tools/clang/include/clang/Index/IndexDataConsumer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Index/IndexSymbol.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Index/IndexingAction.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Index/USRGeneration.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/CodeCompletionHandler.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/DirectoryLookup.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/ExternalPreprocessorSource.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearch.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearchOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/Lexer.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/LiteralSupport.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/MacroArgs.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/ModuleLoader.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/MultipleIncludeOpt.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/PPCallbacks.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/PPConditionalDirectiveRecord.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/PTHLexer.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/Pragma.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/PreprocessingRecord.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorLexer.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/Token.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/TokenConcatenation.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/TokenLexer.h stable/11/contrib/llvm/tools/clang/include/clang/Lex/VariadicMacroSupport.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Parse/ParseAST.h stable/11/contrib/llvm/tools/clang/include/clang/Parse/Parser.h stable/11/contrib/llvm/tools/clang/include/clang/Parse/RAIIObjectsForParser.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Core/DeltaTree.h stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Core/HTMLRewrite.h stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Core/RewriteBuffer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Core/RewriteRope.h stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Core/Rewriter.h stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Core/TokenRewriter.h stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/FixItRewriter.h stable/11/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/FrontendActions.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/AnalysisBasedWarnings.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteOptions.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/DelayedDiagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/ExternalSemaSource.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/IdentifierResolver.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Lookup.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/ObjCMethodList.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Overload.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Ownership.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/ParsedTemplate.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Scope.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Sema.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/SemaConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/SemaFixItUtils.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/SemaInternal.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/SemaLambda.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Template.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/TemplateDeduction.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/TypoCorrection.h stable/11/contrib/llvm/tools/clang/include/clang/Sema/Weak.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ASTDeserializationListener.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ContinuousRangeMap.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/GlobalModuleIndex.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/Module.h stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ModuleFileExtension.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Serialization/ModuleManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/Checkers.td stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerOptInfo.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerRegistry.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/IssueHash.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BlockCounter.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SimpleConstraintManager.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/StoreRef.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SummaryManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintTag.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/ModelConsumer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/ArgumentsAdjusters.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/CommonOptionsParser.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabase.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabasePluginRegistry.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Core/Diagnostic.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Core/Replacement.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/DiagnosticsYaml.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Execution.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/FileMatchTrie.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/FixIt.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/JSONCompilationDatabase.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/AtomicChange.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRule.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringResultConsumer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/RenamingAction.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/SymbolName.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/USRFinder.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/USRFindingAction.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/USRLocFinder.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/RefactoringCallbacks.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/ReplacementsYaml.h stable/11/contrib/llvm/tools/clang/include/clang/Tooling/StandaloneExecution.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/ToolExecutorPluginRegistry.h (contents, props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Tooling.h stable/11/contrib/llvm/tools/clang/include/clang/module.modulemap stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/ARCMT.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/FileRemapper.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/Internals.h stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/ObjCMT.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/PlistReporter.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransARCAssign.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransAutoreleasePool.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransBlockObjCVariable.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransEmptyStatementsAndDealloc.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCAttrs.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransProperties.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransProtectedScope.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransUnbridgedCasts.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransZeroOutPropsInDealloc.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/TransformActions.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.cpp stable/11/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.h stable/11/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ASTDiagnostic.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ASTStructuralEquivalence.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp stable/11/contrib/llvm/tools/clang/lib/AST/Comment.cpp stable/11/contrib/llvm/tools/clang/lib/AST/CommentBriefParser.cpp stable/11/contrib/llvm/tools/clang/lib/AST/CommentLexer.cpp stable/11/contrib/llvm/tools/clang/lib/AST/CommentSema.cpp stable/11/contrib/llvm/tools/clang/lib/AST/Decl.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclFriend.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclOpenMP.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp stable/11/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp stable/11/contrib/llvm/tools/clang/lib/AST/Expr.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ExternalASTMerger.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/ExternalASTSource.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ItaniumCXXABI.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp stable/11/contrib/llvm/tools/clang/lib/AST/Mangle.cpp stable/11/contrib/llvm/tools/clang/lib/AST/MicrosoftCXXABI.cpp stable/11/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp stable/11/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp stable/11/contrib/llvm/tools/clang/lib/AST/NestedNameSpecifier.cpp stable/11/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/OpenMPClause.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/ParentMap.cpp stable/11/contrib/llvm/tools/clang/lib/AST/QualTypeNames.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/RawCommentList.cpp stable/11/contrib/llvm/tools/clang/lib/AST/RecordLayout.cpp stable/11/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp stable/11/contrib/llvm/tools/clang/lib/AST/Stmt.cpp stable/11/contrib/llvm/tools/clang/lib/AST/StmtCXX.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/StmtObjC.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/StmtOpenMP.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp stable/11/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp stable/11/contrib/llvm/tools/clang/lib/AST/TemplateBase.cpp stable/11/contrib/llvm/tools/clang/lib/AST/TemplateName.cpp stable/11/contrib/llvm/tools/clang/lib/AST/Type.cpp stable/11/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp stable/11/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp stable/11/contrib/llvm/tools/clang/lib/AST/VTTBuilder.cpp stable/11/contrib/llvm/tools/clang/lib/AST/VTableBuilder.cpp stable/11/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp stable/11/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp stable/11/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h stable/11/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Parser.cpp stable/11/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Registry.cpp stable/11/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/VariantValue.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/AnalysisDeclContext.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/CFGReachabilityAnalysis.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/CFGStmtMap.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/CloneDetection.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Analysis/CocoaConventions.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/Consumed.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/Dominators.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/FormatString.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/FormatStringParsing.h stable/11/contrib/llvm/tools/clang/lib/Analysis/LiveVariables.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ObjCNoReturn.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/PostOrderCFGView.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/PrintfFormatString.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ProgramPoint.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ScanfFormatString.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ThreadSafety.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp stable/11/contrib/llvm/tools/clang/lib/Analysis/UninitializedValues.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Builtins.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Cuda.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/DiagnosticOptions.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/FileSystemStatCache.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/LangOptions.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Module.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/ObjCRuntime.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/OpenMPKinds.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/OperatorPrecedence.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Sanitizers.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/SourceLocation.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Targets.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Targets.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/ARM.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/ARM.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/AVR.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/AVR.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/BPF.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/BPF.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Hexagon.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Hexagon.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Lanai.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Lanai.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/NVPTX.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/NVPTX.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/SPIR.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Sparc.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Sparc.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/SystemZ.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/SystemZ.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/X86.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/X86.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Version.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/Warnings.cpp stable/11/contrib/llvm/tools/clang/lib/Basic/XRayLists.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/ABIInfo.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGBuilder.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCall.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGCoroutine.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGGPUBuiltin.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayout.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGVTT.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypeCache.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/ConstantEmitter.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/ConstantInitBuilder.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/SanitizerMetadata.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/SwiftCallingConv.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp stable/11/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.h stable/11/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/Action.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/Compilation.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/Distro.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/Driver.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/Job.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Ananas.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Sparc.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/X86.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/BareMetal.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/BareMetal.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/CloudABI.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/CloudABI.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Contiki.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Fuchsia.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Fuchsia.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Haiku.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Haiku.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Lanai.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MipsLinux.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MipsLinux.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Myriad.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Myriad.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/NaCl.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/NaCl.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/PS4CPU.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/PS4CPU.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Solaris.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Solaris.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/Types.cpp stable/11/contrib/llvm/tools/clang/lib/Driver/XRayArgs.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Edit/Commit.cpp stable/11/contrib/llvm/tools/clang/lib/Edit/EditedSource.cpp stable/11/contrib/llvm/tools/clang/lib/Edit/RewriteObjCFoundationAPI.cpp stable/11/contrib/llvm/tools/clang/lib/Format/AffectedRangeManager.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/AffectedRangeManager.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/BreakableToken.cpp stable/11/contrib/llvm/tools/clang/lib/Format/BreakableToken.h stable/11/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp stable/11/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.h stable/11/contrib/llvm/tools/clang/lib/Format/Encoding.h stable/11/contrib/llvm/tools/clang/lib/Format/Format.cpp stable/11/contrib/llvm/tools/clang/lib/Format/FormatInternal.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/FormatToken.cpp stable/11/contrib/llvm/tools/clang/lib/Format/FormatToken.h stable/11/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/SortJavaScriptImports.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/SortJavaScriptImports.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/TokenAnalyzer.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/TokenAnalyzer.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp stable/11/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.h stable/11/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp stable/11/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.h stable/11/contrib/llvm/tools/clang/lib/Format/UsingDeclarationsSorter.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/UsingDeclarationsSorter.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp stable/11/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.h stable/11/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/ASTMerge.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/CacheTokens.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/ChainedIncludesSource.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/CodeGenOptions.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/DependencyFile.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/DependencyGraph.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/DiagnosticRenderer.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/FrontendOptions.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/HeaderIncludeGen.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/LayoutOverrideSource.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/PCHContainerOperations.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Frontend/PrecompiledPreamble.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/Rewrite/FixItRewriter.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/Rewrite/FrontendActions.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/Rewrite/HTMLPrint.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/Rewrite/InclusionRewriter.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/SerializedDiagnosticPrinter.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/SerializedDiagnosticReader.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Frontend/TestModuleFileExtension.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Frontend/TextDiagnostic.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticBuffer.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticPrinter.cpp stable/11/contrib/llvm/tools/clang/lib/Frontend/VerifyDiagnosticConsumer.cpp stable/11/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_builtin_vars.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_intrinsics.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_runtime_wrapper.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_aes.h stable/11/contrib/llvm/tools/clang/lib/Headers/__wmmintrin_pclmul.h stable/11/contrib/llvm/tools/clang/lib/Headers/altivec.h stable/11/contrib/llvm/tools/clang/lib/Headers/ammintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/avx512bitalgintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512bwintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512cdintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512erintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512fintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512ifmaintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512ifmavlintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512pfintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vbmi2intrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vbmiintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vbmivlintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vlbitalgintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vlbwintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vlcdintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vldqintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vlintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vlvbmi2intrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vlvnniintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vnniintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vpopcntdqintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avx512vpopcntdqvlintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/avxintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/bmiintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/cetintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/clflushoptintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/clwbintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/clzerointrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/cpuid.h stable/11/contrib/llvm/tools/clang/lib/Headers/cuda_wrappers/algorithm stable/11/contrib/llvm/tools/clang/lib/Headers/emmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/f16cintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/fma4intrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/fmaintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/fxsrintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/gfniintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/htmxlintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/ia32intrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/immintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/intrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/lwpintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/lzcntintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/mm3dnow.h stable/11/contrib/llvm/tools/clang/lib/Headers/mmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/module.modulemap stable/11/contrib/llvm/tools/clang/lib/Headers/mwaitxintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/nmmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/opencl-c.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/pkuintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/pmmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/popcntintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/prfchwintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/rdseedintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/shaintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/smmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/stdint.h stable/11/contrib/llvm/tools/clang/lib/Headers/tmmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/unwind.h stable/11/contrib/llvm/tools/clang/lib/Headers/vaesintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/vpclmulqdqintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/wmmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/x86intrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/xopintrin.h stable/11/contrib/llvm/tools/clang/lib/Headers/xsavecintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/xsaveintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/xsaveoptintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/xsavesintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/xtestintrin.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexBody.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexDecl.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexSymbol.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexTypeSourceInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexingAction.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexingContext.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/IndexingContext.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Index/SimpleFormatContext.h stable/11/contrib/llvm/tools/clang/lib/Index/USRGeneration.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/LiteralSupport.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/MacroArgs.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PPExpressions.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PPLexerChange.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PTHLexer.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PreprocessingRecord.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/PreprocessorLexer.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp stable/11/contrib/llvm/tools/clang/lib/Lex/TokenLexer.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseOpenMP.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp stable/11/contrib/llvm/tools/clang/lib/Parse/Parser.cpp stable/11/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp stable/11/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp stable/11/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp stable/11/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp stable/11/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/CoroutineStmtBuilder.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Sema/DeclSpec.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/DelayedDiagnostic.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/IdentifierResolver.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/JumpDiagnostics.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/Sema.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaAccess.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaCUDA.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaCoroutine.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaOpenMP.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp stable/11/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h stable/11/contrib/llvm/tools/clang/lib/Sema/TypeLocBuilder.h stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.h stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTReaderInternals.h stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/GlobalModuleIndex.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/Module.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp stable/11/contrib/llvm/tools/clang/lib/Serialization/MultiOnDiskHashTable.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationDiagnostics.h stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GTestChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonnullGlobalConstantsChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NumberObjectConversionChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerContext.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerRegistry.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ConstraintManager.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/DynamicTypeMap.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Environment.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/FunctionSummary.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/IssueHash.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/LoopWidening.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SVals.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelConsumer.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelInjector.h (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/ASTDiff/ASTDiff.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/ArgumentsAdjusters.cpp stable/11/contrib/llvm/tools/clang/lib/Tooling/CompilationDatabase.cpp stable/11/contrib/llvm/tools/clang/lib/Tooling/Core/Replacement.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Execution.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/FileMatchTrie.cpp stable/11/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/AtomicChange.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/Extract.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/StandaloneExecution.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp stable/11/contrib/llvm/tools/clang/tools/clang-format/ClangFormat.cpp stable/11/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp stable/11/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp stable/11/contrib/llvm/tools/clang/tools/driver/driver.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/ClangOptionDocEmitter.cpp (contents, props changed) stable/11/contrib/llvm/tools/clang/utils/TableGen/ClangSACheckersEmitter.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/NeonEmitter.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp stable/11/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h stable/11/contrib/llvm/tools/llc/llc.cpp stable/11/contrib/llvm/tools/lld/COFF/CMakeLists.txt (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Chunks.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Chunks.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Config.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/DLL.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/DLL.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Driver.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Driver.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/DriverUtils.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/ICF.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/InputFiles.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/InputFiles.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/LTO.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/LTO.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/MapFile.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/MarkLive.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/MinGW.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Options.td stable/11/contrib/llvm/tools/lld/COFF/PDB.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/PDB.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/SymbolTable.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/SymbolTable.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Symbols.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Symbols.h (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Writer.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/COFF/Writer.h (contents, props changed) stable/11/contrib/llvm/tools/lld/Common/Args.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/Common/CMakeLists.txt (contents, props changed) stable/11/contrib/llvm/tools/lld/Common/ErrorHandler.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/Common/Strings.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/Common/TargetOptionsCommandFlags.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/AArch64ErrataFix.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/AArch64ErrataFix.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/AArch64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/AMDGPU.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/ARM.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/Mips.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/MipsArchTree.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/PPC.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/SPARCV9.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/X86.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/X86_64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/CMakeLists.txt (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Config.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Driver.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Driver.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/DriverUtils.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/EhFrame.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Filesystem.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/GdbIndex.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/GdbIndex.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/ICF.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/ICF.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/InputFiles.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/InputFiles.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/InputSection.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/InputSection.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/LTO.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/LTO.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/LinkerScript.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/LinkerScript.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/MapFile.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/MapFile.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/MarkLive.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Options.td stable/11/contrib/llvm/tools/lld/ELF/OutputSections.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/OutputSections.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Relocations.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Relocations.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/ScriptLexer.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/ScriptParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/SymbolTable.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/SymbolTable.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Symbols.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Symbols.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/SyntheticSections.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/SyntheticSections.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Target.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Target.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Thunks.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Thunks.h (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Writer.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/ELF/Writer.h (contents, props changed) stable/11/contrib/llvm/tools/lld/LICENSE.TXT (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Driver.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/ErrorHandler.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Strings.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/TargetOptionsCommandFlags.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Version.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/DefinedAtom.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/File.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Instrumentation.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/LinkingContext.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/PassManager.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Reader.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Resolver.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Simple.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/SymbolTable.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/TODO.txt (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Writer.h (contents, props changed) stable/11/contrib/llvm/tools/lld/include/lld/ReaderWriter/MachOLinkingContext.h (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/Core/LinkingContext.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/Driver/CMakeLists.txt (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/Driver/DarwinLdDriver.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/Driver/DarwinLdOptions.td stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/FileArchive.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/CMakeLists.txt (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/LayoutPass.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryUtils.h (contents, props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp (contents, props changed) stable/11/contrib/llvm/tools/lld/tools/lld/lld.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBAddress.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBBroadcaster.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBCommandInterpreter.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBCommandReturnObject.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBData.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBDebugger.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBExpressionOptions.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBFrame.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBInstruction.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBInstructionList.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBLaunchInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBModule.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBProcess.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBStream.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBStructuredData.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBSymbol.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBTarget.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBThread.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBValue.h stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBValueList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Breakpoint.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointID.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointIDList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocation.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationCollection.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointName.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointOptions.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolver.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverAddress.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileLine.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverName.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSite.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSiteList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/StoppointCallbackContext.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/StoppointLocation.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Watchpoint.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointOptions.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Address.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/AddressRange.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolver.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverFileLine.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverName.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Architecture.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Broadcaster.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Communication.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Debugger.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Disassembler.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/EmulateInstruction.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Event.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/FileLineResolver.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/FileSpecList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/FormatEntity.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/IOHandler.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/LoadedModuleInfoList.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Mangled.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/MappedHash.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Module.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ModuleChild.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ModuleList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ModuleSpec.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/PluginManager.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/RangeMap.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/RegisterValue.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/STLUtils.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Scalar.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/SearchFilter.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Section.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/SourceManager.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/StreamBuffer.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseSet.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeValue.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/UniqueCStringMap.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/UserSettingsController.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/Value.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ValueObject.h stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DataVisualization.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatClasses.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatManager.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersContainer.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/StringPrinter.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeFormat.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSummary.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSynthetic.h stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeValidator.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/ValueObjectPrinter.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/VectorIterator.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/DWARFExpression.h stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/Expression.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionParser.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionSourceCode.h stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionTypeSystemHelper.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionVariable.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/FunctionCaller.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/IRDynamicChecks.h stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/IRExecutionUnit.h stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/IRInterpreter.h stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/IRMemoryMap.h stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/LLVMUserExpression.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/UserExpression.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/UtilityFunction.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Config.h.cmake stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Debug.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Editline.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/File.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Host.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostThread.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/MainLoop.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/MainLoopBase.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/MonitoringProcessLauncher.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/PosixApi.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Predicate.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/ProcessRunLock.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/PseudoTerminal.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/SocketAddress.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/StringConvert.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Symbols.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/TaskPool.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Terminal.h stable/11/contrib/llvm/tools/lldb/include/lldb/Host/XML.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/GetOptInc.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpoint.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeRegisterContext.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeThreadProtocol.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/freebsd/HostInfoFreeBSD.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/netbsd/HostInfoNetBSD.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/ConnectionFileDescriptorPosix.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostInfoPosix.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/PipePosix.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandAlias.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandCompletions.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandInterpreter.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObject.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectMultiword.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectRegexCommand.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupBoolean.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupPlatform.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValue.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArch.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArray.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueBoolean.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueEnumeration.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFileSpec.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormatEntity.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueProperties.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUInt64.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUUID.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/Options.h stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreter.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/Block.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTContext.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTImporter.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/CompactUnwindInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/CompileUnit.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerType.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/DWARFCallFrameInfo.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/DeclVendor.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/Declaration.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/FuncUnwinders.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/Function.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/GoASTContext.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/LineEntry.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/LineTable.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectContainer.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectFile.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/Symbol.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContextScope.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolFile.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolVendor.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/Type.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/TypeSystem.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindPlan.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindTable.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/Variable.h stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/VariableList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ABI.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/DynamicLoader.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContext.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContextScope.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/JITLoader.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Language.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/LanguageRuntime.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Memory.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ModuleCache.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ObjCLanguageRuntime.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/OperatingSystem.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/PathMappingList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Platform.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Process.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ProcessInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ProcessStructReader.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Queue.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/QueueItem.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/QueueList.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/RegisterCheckpoint.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/RegisterContext.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/RegisterNumber.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadHistory.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/StackFrame.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/StackID.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/StopInfo.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/SystemRuntime.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Target.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/Thread.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadCollection.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadList.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlan.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunction.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanShouldStopHere.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepRange.h stable/11/contrib/llvm/tools/lldb/include/lldb/Target/UnixSignals.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/AnsiTerminal.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/ArchSpec.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Baton.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/CleanUp.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Connection.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/ConstString.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/DataBuffer.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferHeap.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferLLVM.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/DataEncoder.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/DataExtractor.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/FileSpec.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Flags.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/JSON.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Log.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/RegularExpression.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/SelectHelper.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/SharedCluster.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/SharingPtr.h stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Status.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Stream.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StreamTee.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractor.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StringList.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StructuredData.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/TildeExpressionResolver.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Timeout.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Timer.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/UUID.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/UserID.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/VMRange.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-defines.h stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-enumerations.h stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-forward.h stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-private-defines.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-private-enumerations.h stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-private-types.h stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-types.h stable/11/contrib/llvm/tools/lldb/include/lldb/lldb-versioning.h stable/11/contrib/llvm/tools/lldb/source/API/SBAddress.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBAttachInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBBreakpointName.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBCommandInterpreter.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBDebugger.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBEvent.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBFrame.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBHostOS.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBInstruction.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBInstructionList.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBLaunchInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBModule.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBModuleSpec.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBPlatform.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBProcess.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBQueueItem.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBStream.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBTarget.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBThread.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBThreadPlan.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBType.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBTypeCategory.cpp stable/11/contrib/llvm/tools/lldb/source/API/SBValue.cpp stable/11/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointID.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointIDList.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointList.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocation.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationList.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointOptions.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolver.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverAddress.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileLine.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverName.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSiteList.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/Watchpoint.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointList.cpp stable/11/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointOptions.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandCompletions.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectApropos.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.h stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectFrame.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.h stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectMultiword.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectTarget.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.cpp stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Address.cpp stable/11/contrib/llvm/tools/lldb/source/Core/AddressResolverName.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Broadcaster.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Communication.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Debugger.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Disassembler.cpp stable/11/contrib/llvm/tools/lldb/source/Core/DumpDataExtractor.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Core/DynamicLoader.cpp stable/11/contrib/llvm/tools/lldb/source/Core/EmulateInstruction.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Event.cpp stable/11/contrib/llvm/tools/lldb/source/Core/FileLineResolver.cpp stable/11/contrib/llvm/tools/lldb/source/Core/FileSpecList.cpp stable/11/contrib/llvm/tools/lldb/source/Core/FormatEntity.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Core/Listener.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Mangled.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Module.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ModuleList.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Opcode.cpp stable/11/contrib/llvm/tools/lldb/source/Core/PluginManager.cpp stable/11/contrib/llvm/tools/lldb/source/Core/RegisterValue.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Scalar.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Section.cpp stable/11/contrib/llvm/tools/lldb/source/Core/SourceManager.cpp stable/11/contrib/llvm/tools/lldb/source/Core/Value.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObject.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectCast.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectChild.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectDynamicValue.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectList.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectMemory.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectSyntheticFilter.cpp stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectVariable.cpp stable/11/contrib/llvm/tools/lldb/source/DataFormatters/FormatManager.cpp stable/11/contrib/llvm/tools/lldb/source/DataFormatters/StringPrinter.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/TypeFormat.cpp stable/11/contrib/llvm/tools/lldb/source/DataFormatters/ValueObjectPrinter.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/VectorType.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/DWARFExpression.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/DiagnosticManager.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/ExpressionSourceCode.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/ExpressionVariable.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/FunctionCaller.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/IRDynamicChecks.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/IRExecutionUnit.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/IRInterpreter.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/IRMemoryMap.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/LLVMUserExpression.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/Materializer.cpp stable/11/contrib/llvm/tools/lldb/source/Expression/REPL.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/UserExpression.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/Editline.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/File.cpp stable/11/contrib/llvm/tools/lldb/source/Host/common/Host.cpp stable/11/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/MainLoop.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/MonitoringProcessLauncher.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/NativeRegisterContext.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/PseudoTerminal.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/Symbols.cpp stable/11/contrib/llvm/tools/lldb/source/Host/common/TCPSocket.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/TaskPool.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/Terminal.cpp stable/11/contrib/llvm/tools/lldb/source/Host/common/UDPSocket.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/XML.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/freebsd/Host.cpp stable/11/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/netbsd/Host.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/netbsd/HostInfoNetBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/openbsd/Host.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/FileSystem.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/HostInfoPosix.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/HostThreadPosix.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/PipePosix.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Initialization/SystemInitializerCommon.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandAlias.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandInterpreter.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandObject.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectRegexCommand.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.h stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandReturnObject.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupBoolean.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFormat.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupPlatform.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupVariable.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupWatchpoint.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValue.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArch.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArgs.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArray.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueBoolean.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueChar.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueDictionary.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueEnumeration.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpec.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpecLIst.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormat.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormatEntity.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueLanguage.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValuePathMappings.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueProperties.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueSInt64.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueString.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUUID.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/Options.cpp stable/11/contrib/llvm/tools/lldb/source/Interpreter/Property.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.h stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.h stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/MainThreadChecker/MainThreadCheckerRuntime.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/UBSan/UBSanRuntime.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSError.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSException.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptScriptGroup.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.h stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFString.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/DarwinProcessLauncher.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/MachException.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadDarwin.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadListDarwin.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/POSIXStopInfo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIX.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/CrashReason.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryThread.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/InstructionUtils.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ThreadMemory.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonExceptionState.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DIERef.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DIERef.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDataExtractor.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDataExtractor.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAbbrev.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfo.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfo.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDeclContext.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/NameToDIE.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwoDwp.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwoDwp.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/UniqueDWARFASTType.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp stable/11/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/ArmUnwindInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/Block.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/ClangASTContext.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/ClangASTImporter.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/CompactUnwindInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/CompileUnit.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/CompilerType.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/DWARFCallFrameInfo.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/Declaration.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/FuncUnwinders.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/Function.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/GoASTContext.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/LineEntry.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/LineTable.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/ObjectFile.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/Symbol.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/SymbolFile.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/SymbolVendor.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/Symtab.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/Type.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/TypeList.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/TypeMap.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/UnwindPlan.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/UnwindTable.cpp stable/11/contrib/llvm/tools/lldb/source/Symbol/Variable.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ABI.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ExecutionContext.cpp stable/11/contrib/llvm/tools/lldb/source/Target/Memory.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ModuleCache.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Target/ObjCLanguageRuntime.cpp stable/11/contrib/llvm/tools/lldb/source/Target/PathMappingList.cpp stable/11/contrib/llvm/tools/lldb/source/Target/Platform.cpp stable/11/contrib/llvm/tools/lldb/source/Target/Process.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Target/RegisterContext.cpp stable/11/contrib/llvm/tools/lldb/source/Target/SectionLoadHistory.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Target/SectionLoadList.cpp stable/11/contrib/llvm/tools/lldb/source/Target/StackFrame.cpp stable/11/contrib/llvm/tools/lldb/source/Target/StackFrameList.cpp stable/11/contrib/llvm/tools/lldb/source/Target/StackID.cpp stable/11/contrib/llvm/tools/lldb/source/Target/StopInfo.cpp stable/11/contrib/llvm/tools/lldb/source/Target/Target.cpp stable/11/contrib/llvm/tools/lldb/source/Target/TargetList.cpp stable/11/contrib/llvm/tools/lldb/source/Target/Thread.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadList.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlan.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanBase.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunction.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallOnFunctionExit.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallUserExpression.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanPython.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanRunToAddress.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanShouldStopHere.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInRange.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInstruction.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOut.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverRange.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepRange.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepThrough.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepUntil.cpp stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanTracer.cpp stable/11/contrib/llvm/tools/lldb/source/Target/UnixSignals.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/ArchSpec.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/ConstString.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/DataBufferHeap.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/DataEncoder.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/DataExtractor.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/FastDemangle.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/FileSpec.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/JSON.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/Log.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/RegularExpression.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/SelectHelper.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/SharingPtr.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/Status.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/Stream.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/StringExtractor.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.cpp stable/11/contrib/llvm/tools/lldb/source/Utility/StructuredData.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/TildeExpressionResolver.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/UUID.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/VASprintf.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/VMRange.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/driver/Driver.cpp stable/11/contrib/llvm/tools/lldb/tools/driver/Driver.h stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdBreak.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdExec.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdExec.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSymbol.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSymbol.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTarget.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfo.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMain.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMgr.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIReadMe.txt (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilSingletonHelper.h (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/LLDBServerUtilities.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/lldb-gdbserver.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/lldb-platform.cpp (contents, props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/lldb-server.cpp (contents, props changed) stable/11/contrib/llvm/tools/lli/RemoteJITUtils.h (contents, props changed) stable/11/contrib/llvm/tools/lli/lli.cpp stable/11/contrib/llvm/tools/llvm-ar/llvm-ar.cpp stable/11/contrib/llvm/tools/llvm-as/llvm-as.cpp stable/11/contrib/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp stable/11/contrib/llvm/tools/llvm-cov/CodeCoverage.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageExporterJson.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageFilters.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageFilters.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageReport.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageReport.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageSummaryInfo.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageViewOptions.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/RenderingSupport.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/SourceCoverageView.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/SourceCoverageView.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/SourceCoverageViewHTML.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/SourceCoverageViewText.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/SourceCoverageViewText.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/TestingSupport.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cov/llvm-cov.cpp stable/11/contrib/llvm/tools/llvm-cxxdump/Error.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cxxdump/llvm-cxxdump.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-diff/DifferenceEngine.cpp stable/11/contrib/llvm/tools/llvm-dis/llvm-dis.cpp stable/11/contrib/llvm/tools/llvm-dwarfdump/Statistics.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp stable/11/contrib/llvm/tools/llvm-extract/llvm-extract.cpp stable/11/contrib/llvm/tools/llvm-link/llvm-link.cpp stable/11/contrib/llvm/tools/llvm-lto/llvm-lto.cpp stable/11/contrib/llvm/tools/llvm-lto2/llvm-lto2.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-mc/llvm-mc.cpp stable/11/contrib/llvm/tools/llvm-modextract/llvm-modextract.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-nm/llvm-nm.cpp stable/11/contrib/llvm/tools/llvm-objcopy/Object.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-objcopy/Object.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-objdump/COFFDump.cpp stable/11/contrib/llvm/tools/llvm-objdump/ELFDump.cpp stable/11/contrib/llvm/tools/llvm-objdump/MachODump.cpp stable/11/contrib/llvm/tools/llvm-objdump/WasmDump.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp stable/11/contrib/llvm/tools/llvm-objdump/llvm-objdump.h stable/11/contrib/llvm/tools/llvm-pdbutil/Analyze.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/InputFile.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/InputFile.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyBuiltinDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyClassLayoutGraphicalDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyExternalSymbolDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyFunctionDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyTypedefDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyVariableDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/StreamUtil.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/StreamUtil.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-profdata/llvm-profdata.cpp stable/11/contrib/llvm/tools/llvm-readobj/ARMEHABIPrinter.h stable/11/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp stable/11/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp stable/11/contrib/llvm/tools/llvm-readobj/COFFImportDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-readobj/ELFDumper.cpp stable/11/contrib/llvm/tools/llvm-readobj/MachODumper.cpp stable/11/contrib/llvm/tools/llvm-readobj/ObjDumper.cpp stable/11/contrib/llvm/tools/llvm-readobj/ObjDumper.h stable/11/contrib/llvm/tools/llvm-readobj/StackMapPrinter.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-readobj/WasmDumper.cpp (contents, props changed) stable/11/contrib/llvm/tools/llvm-readobj/llvm-readobj.cpp stable/11/contrib/llvm/tools/llvm-readobj/llvm-readobj.h stable/11/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp stable/11/contrib/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp stable/11/contrib/llvm/tools/llvm-xray/func-id-helper.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-xray/xray-account.h (contents, props changed) stable/11/contrib/llvm/tools/llvm-xray/xray-graph.h (contents, props changed) stable/11/contrib/llvm/tools/opt/BreakpointPrinter.cpp stable/11/contrib/llvm/tools/opt/BreakpointPrinter.h stable/11/contrib/llvm/tools/opt/Debugify.cpp (contents, props changed) stable/11/contrib/llvm/tools/opt/NewPMDriver.cpp stable/11/contrib/llvm/tools/opt/NewPMDriver.h stable/11/contrib/llvm/tools/opt/PassPrinters.cpp stable/11/contrib/llvm/tools/opt/PassPrinters.h stable/11/contrib/llvm/tools/opt/opt.cpp stable/11/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp stable/11/contrib/llvm/utils/TableGen/AsmWriterEmitter.cpp stable/11/contrib/llvm/utils/TableGen/CTagsEmitter.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.h stable/11/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenInstruction.h stable/11/contrib/llvm/utils/TableGen/CodeGenIntrinsics.h stable/11/contrib/llvm/utils/TableGen/CodeGenMapTable.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenRegisters.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenRegisters.h stable/11/contrib/llvm/utils/TableGen/CodeGenSchedule.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenSchedule.h stable/11/contrib/llvm/utils/TableGen/CodeGenTarget.cpp stable/11/contrib/llvm/utils/TableGen/CodeGenTarget.h stable/11/contrib/llvm/utils/TableGen/DAGISelEmitter.cpp stable/11/contrib/llvm/utils/TableGen/DAGISelMatcher.h stable/11/contrib/llvm/utils/TableGen/DAGISelMatcherGen.cpp stable/11/contrib/llvm/utils/TableGen/DAGISelMatcherOpt.cpp stable/11/contrib/llvm/utils/TableGen/DFAPacketizerEmitter.cpp stable/11/contrib/llvm/utils/TableGen/DisassemblerEmitter.cpp stable/11/contrib/llvm/utils/TableGen/FastISelEmitter.cpp stable/11/contrib/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp stable/11/contrib/llvm/utils/TableGen/GlobalISelEmitter.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/InfoByHwMode.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/InfoByHwMode.h (contents, props changed) stable/11/contrib/llvm/utils/TableGen/InstrDocsEmitter.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp stable/11/contrib/llvm/utils/TableGen/IntrinsicEmitter.cpp stable/11/contrib/llvm/utils/TableGen/PseudoLoweringEmitter.cpp stable/11/contrib/llvm/utils/TableGen/RegisterBankEmitter.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/RegisterInfoEmitter.cpp stable/11/contrib/llvm/utils/TableGen/SearchableTableEmitter.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp stable/11/contrib/llvm/utils/TableGen/SubtargetFeatureInfo.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/SubtargetFeatureInfo.h (contents, props changed) stable/11/contrib/llvm/utils/TableGen/TableGen.cpp stable/11/contrib/llvm/utils/TableGen/TableGenBackends.h stable/11/contrib/llvm/utils/TableGen/X86DisassemblerShared.h stable/11/contrib/llvm/utils/TableGen/X86DisassemblerTables.cpp stable/11/contrib/llvm/utils/TableGen/X86DisassemblerTables.h stable/11/contrib/llvm/utils/TableGen/X86EVEX2VEXTablesEmitter.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/X86FoldTablesEmitter.cpp (contents, props changed) stable/11/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp stable/11/contrib/llvm/utils/TableGen/X86RecognizableInstr.h stable/11/etc/mtree/BSD.debug.dist stable/11/etc/mtree/BSD.usr.dist stable/11/lib/Makefile stable/11/lib/clang/freebsd_cc_version.h stable/11/lib/clang/headers/Makefile stable/11/lib/clang/include/clang/Basic/Version.inc stable/11/lib/clang/include/clang/Config/config.h stable/11/lib/clang/include/lld/Common/Version.inc stable/11/lib/clang/include/lldb/Host/Config.h stable/11/lib/clang/include/llvm/Config/config.h stable/11/lib/clang/include/llvm/Config/llvm-config.h stable/11/lib/clang/include/llvm/Support/VCSRevision.h stable/11/lib/clang/libclang/Makefile stable/11/lib/clang/liblldb/Makefile stable/11/lib/clang/libllvm/Makefile stable/11/lib/clang/libllvmminimal/Makefile stable/11/lib/libc++/Makefile stable/11/lib/libc++experimental/Makefile stable/11/lib/libclang_rt/Makefile stable/11/lib/libclang_rt/Makefile.inc stable/11/lib/libclang_rt/asan/Makefile stable/11/lib/libclang_rt/asan_dynamic/Makefile stable/11/lib/libclang_rt/include/Makefile stable/11/lib/libclang_rt/safestack/Makefile stable/11/lib/libclang_rt/stats/Makefile stable/11/lib/libclang_rt/tsan/Makefile stable/11/lib/libclang_rt/tsan_cxx/Makefile stable/11/lib/libclang_rt/ubsan_standalone/Makefile stable/11/share/mk/bsd.sys.mk stable/11/sys/conf/files stable/11/sys/conf/kern.mk stable/11/sys/conf/ldscript.i386 stable/11/sys/i386/i386/locore.s stable/11/sys/modules/fxp/Makefile stable/11/tools/build/mk/OptionalObsoleteFiles.inc stable/11/usr.bin/clang/Makefile stable/11/usr.bin/clang/bugpoint/bugpoint.1 stable/11/usr.bin/clang/clang/Makefile stable/11/usr.bin/clang/clang/clang.1 stable/11/usr.bin/clang/llc/llc.1 stable/11/usr.bin/clang/lld/Makefile stable/11/usr.bin/clang/lli/Makefile stable/11/usr.bin/clang/lli/lli.1 stable/11/usr.bin/clang/llvm-ar/llvm-ar.1 stable/11/usr.bin/clang/llvm-as/llvm-as.1 stable/11/usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1 stable/11/usr.bin/clang/llvm-cov/llvm-cov.1 stable/11/usr.bin/clang/llvm-diff/llvm-diff.1 stable/11/usr.bin/clang/llvm-dis/llvm-dis.1 stable/11/usr.bin/clang/llvm-dwarfdump/llvm-dwarfdump.1 stable/11/usr.bin/clang/llvm-extract/llvm-extract.1 stable/11/usr.bin/clang/llvm-link/llvm-link.1 stable/11/usr.bin/clang/llvm-nm/llvm-nm.1 stable/11/usr.bin/clang/llvm-objcopy/Makefile stable/11/usr.bin/clang/llvm-pdbutil/Makefile stable/11/usr.bin/clang/llvm-pdbutil/llvm-pdbutil.1 stable/11/usr.bin/clang/llvm-profdata/llvm-profdata.1 stable/11/usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1 stable/11/usr.bin/clang/llvm-tblgen/Makefile stable/11/usr.bin/clang/llvm-tblgen/llvm-tblgen.1 stable/11/usr.bin/clang/llvm-xray/Makefile stable/11/usr.bin/clang/opt/Makefile stable/11/usr.bin/clang/opt/opt.1 Directory Properties: stable/11/ (props changed) stable/11/contrib/compiler-rt/include/sanitizer/allocator_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/coverage_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/dfsan_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/esan_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/hwasan_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/lsan_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/tsan_interface.h (props changed) stable/11/contrib/compiler-rt/include/sanitizer/tsan_interface_atomic.h (props changed) stable/11/contrib/compiler-rt/lib/BlocksRuntime/Block.h (props changed) stable/11/contrib/compiler-rt/lib/BlocksRuntime/Block_private.h (props changed) stable/11/contrib/compiler-rt/lib/BlocksRuntime/data.c (props changed) stable/11/contrib/compiler-rt/lib/BlocksRuntime/runtime.c (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_activation.cc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_activation.h (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_activation_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_fuchsia.cc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_init_version.h (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_interface.inc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_premap_shadow.cc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_premap_shadow.h (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_scariness_score.h (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_suppressions.cc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_suppressions.h (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_win_dynamic_runtime_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/asan/asan_win_weak_interception.cc (props changed) stable/11/contrib/compiler-rt/lib/asan/weak_symbols.txt (props changed) stable/11/contrib/compiler-rt/lib/builtins/README.txt (props changed) stable/11/contrib/compiler-rt/lib/builtins/aarch64/chkstk.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/absvdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/absvsi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/absvti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/adddf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/addsf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/addtf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/addvdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/addvsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/addvti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/apple_versioning.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/adddf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/addsf3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/addsf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmpeq_check_nan.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmpeq_check_nan.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_dcmp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_div0.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_drsub.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_fcmp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_frsub.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_idivmod.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_ldivmod.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_memcmp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_memcpy.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_memmove.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_memset.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_uidivmod.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/aeabi_uldivmod.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/bswapdi2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/bswapsi2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/clzdi2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/clzsi2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/comparesf2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/divdf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/divmodsi4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/divsf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/divsi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/eqdf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/eqsf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/extendsfdf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/fixdfsivfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/fixsfsivfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/fixunsdfsivfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/fixunssfsivfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/floatsidfvfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/floatsisfvfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/floatunssidfvfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/floatunssisfvfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/gedf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/gesf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/gtdf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/gtsf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/ledf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/lesf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/ltdf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/ltsf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/modsi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/muldf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/mulsf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/nedf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/negdf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/negsf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/nesf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/restore_vfp_d8_d15_regs.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/save_vfp_d8_d15_regs.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/subdf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/subsf3vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/switch16.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/switch32.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/switch8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/switchu8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync-ops.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_add_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_add_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_and_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_and_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_max_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_max_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_min_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_min_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_nand_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_nand_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_or_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_or_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_sub_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_sub_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umax_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umax_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umin_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_umin_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_xor_4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_fetch_and_xor_8.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/sync_synchronize.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/truncdfsf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/udivmodsi4.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/udivsi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/umodsi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/unorddf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/arm/unordsf2vfp.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/ashldi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ashlti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ashrdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ashrti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/assembly.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic_flag_clear.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic_flag_clear_explicit.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic_flag_test_and_set.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic_flag_test_and_set_explicit.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic_signal_fence.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/atomic_thread_fence.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/bswapdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/bswapsi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/clzsi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/clzti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/cmpdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/cmpti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/comparedf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/comparesf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/comparetf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ctzsi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ctzti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divdc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divdf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divmoddi4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divmodsi4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divsc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divsf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divtc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divtf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/divxc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/enable_execute_stack.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/eprintf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/extenddftf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/extendhfsf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/extendsfdf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/extendsftf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ffsdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ffssi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ffsti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixdfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixdfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixdfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixsfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixsfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixsfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixtfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixtfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixtfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunsdfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunsdfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunsdfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunssfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunssfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunssfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunstfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunstfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunstfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunsxfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunsxfsi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixunsxfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixxfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fixxfti.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatdidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatdisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatditf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatdixf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatsidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatsisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatsitf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floattidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floattisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floattitf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floattixf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatundidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatundisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatunditf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatundixf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatunsidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatunsisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatunsitf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatuntidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatuntisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatuntitf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/floatuntixf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_add_impl.inc (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_extend.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_extend_impl.inc (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_fixint_impl.inc (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_fixuint_impl.inc (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_lib.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_mul_impl.inc (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_trunc.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/fp_trunc_impl.inc (props changed) stable/11/contrib/compiler-rt/lib/builtins/gcc_personality_v0.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/ashldi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/ashrdi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/chkstk.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/chkstk2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/divdi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/floatdidf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/floatdisf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/floatdixf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/floatundidf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/floatundisf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/floatundixf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/lshrdi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/moddi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/muldi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/udivdi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/i386/umoddi3.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/int_endianness.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/int_lib.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/int_math.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/int_util.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/int_util.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/lshrdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/lshrti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mingw_fixfloat.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/moddi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/modsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/modti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/muldc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/muldf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/muldi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulodi4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulosi4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/muloti4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulsc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulsf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/multf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/multi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulvdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulvsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulvti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/mulxc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negdf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negsf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negvdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negvsi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/negvti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/paritydi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/paritysi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/parityti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/popcountdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/popcountsi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/popcountti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/powidf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/powisf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/powitf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/powixf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/DD.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/divtc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/fixtfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/fixunstfdi.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/floatditf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/floatunditf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/gcc_qadd.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/gcc_qdiv.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/gcc_qmul.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/gcc_qsub.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/multc3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/restFP.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/ppc/saveFP.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/subdf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/subsf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/subtf3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/subvdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/subvsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/subvti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/trampoline_setup.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/truncdfhf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/truncdfsf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/truncsfhf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/trunctfdf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/trunctfsf2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ucmpdi2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/ucmpti2.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/udivdi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/udivmoddi4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/udivmodsi4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/udivmodti4.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/udivsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/udivti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/umoddi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/umodsi3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/umodti3.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/unwind-ehabi-helpers.h (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/chkstk.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/chkstk2.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/floatdidf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/floatdisf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/floatdixf.c (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/floatundidf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/floatundisf.S (props changed) stable/11/contrib/compiler-rt/lib/builtins/x86_64/floatundixf.S (props changed) stable/11/contrib/compiler-rt/lib/dfsan/dfsan.h (props changed) stable/11/contrib/compiler-rt/lib/dfsan/dfsan_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/dfsan/dfsan_interceptors.cc (props changed) stable/11/contrib/compiler-rt/lib/dfsan/dfsan_platform.h (props changed) stable/11/contrib/compiler-rt/lib/dfsan/libc_ubuntu1404_abilist.txt (props changed) stable/11/contrib/compiler-rt/lib/esan/cache_frag.cpp (props changed) stable/11/contrib/compiler-rt/lib/esan/cache_frag.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_circular_buffer.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_flags.cpp (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_flags.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_hashtable.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_interface.cpp (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_interface_internal.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_linux.cpp (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_shadow.h (props changed) stable/11/contrib/compiler-rt/lib/esan/esan_sideline.h (props changed) stable/11/contrib/compiler-rt/lib/esan/working_set.cpp (props changed) stable/11/contrib/compiler-rt/lib/esan/working_set.h (props changed) stable/11/contrib/compiler-rt/lib/esan/working_set_posix.cpp (props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_allocator.h (props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_blacklist.txt (props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_flags.h (props changed) stable/11/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.h (props changed) stable/11/contrib/compiler-rt/lib/lsan/lsan_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/lsan/lsan_linux.cc (props changed) stable/11/contrib/compiler-rt/lib/lsan/lsan_mac.cc (props changed) stable/11/contrib/compiler-rt/lib/lsan/lsan_preinit.cc (props changed) stable/11/contrib/compiler-rt/lib/lsan/weak_symbols.txt (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_allocator.h (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_chained_origin_depot.cc (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_chained_origin_depot.h (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_origin.h (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_poisoning.h (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_thread.cc (props changed) stable/11/contrib/compiler-rt/lib/msan/msan_thread.h (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfiling.c (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingBuffer.c (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingInternal.h (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingNameVar.c (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingPlatformOther.c (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingRuntime.cc (props changed) stable/11/contrib/compiler-rt/lib/profile/InstrProfilingWriter.c (props changed) stable/11/contrib/compiler-rt/lib/profile/WindowsMMap.c (props changed) stable/11/contrib/compiler-rt/lib/profile/WindowsMMap.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sancov_begin.S (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sancov_end.S (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sancov_flags.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sancov_flags.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sancov_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_addrhashmap.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_checks.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_interface.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_asm.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_mips.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_bitvector.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_bvgraph.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_format.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interface_posix.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_interface.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dll_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_dynamic_runtime_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_sections.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_weak_interception.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_dbghelp.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector1.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_deadlock_detector_interface.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_errno.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_errno_codes.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_file.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_freebsd.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_mips64.S (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_x86_64.S (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac_libcdep.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_persistent_allocator.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_persistent_allocator.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_linux.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_linux.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_signal_interceptors.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_solaris.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepotbase.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_libcdep.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_mac.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_suppressions.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_internal.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libbacktrace.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libbacktrace.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_aarch64.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_arm.inc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_termination.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_defs.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_dynamic_runtime_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_symbolize.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cc (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/ar_to_bc.sh (props changed) stable/11/contrib/compiler-rt/lib/sanitizer_common/weak_symbols.txt (props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_crc32.cpp (props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_crc32.h (props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_flags.h (props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/scudo/scudo_utils.h (props changed) stable/11/contrib/compiler-rt/lib/stats/stats.h (props changed) stable/11/contrib/compiler-rt/lib/stats/stats_client.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/dd/dd_interceptors.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/dd/dd_rtl.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/dd/dd_rtl.h (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_dense_alloc.h (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_external.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_flags.inc (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_ignoreset.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_ignoreset.h (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.h (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_ppc_regs.h (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_preinit.cc (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_aarch64.S (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_mips64.S (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_ppc64.S (props changed) stable/11/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_proc.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_diag_standalone.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_flags.h (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_init.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_init.h (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_init_standalone.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_signals_standalone.h (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_type_hash_win.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_win_dll_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/ubsan_win_dynamic_runtime_thunk.cc (props changed) stable/11/contrib/compiler-rt/lib/ubsan/weak_symbols.txt (props changed) stable/11/contrib/compiler-rt/lib/xray/weak_symbols.txt (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_always_instrument.txt (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_defs.h (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_fdr_logging.h (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_never_instrument.txt (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_powerpc64.inc (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_AArch64.S (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_arm.S (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_mips.S (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_mips64.S (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_powerpc64.cc (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_trampoline_powerpc64_asm.S (props changed) stable/11/contrib/compiler-rt/lib/xray/xray_tsc.h (props changed) stable/11/contrib/libc++/include/__bsd_locale_defaults.h (props changed) stable/11/contrib/libc++/include/complex.h (props changed) stable/11/contrib/libc++/include/ctype.h (props changed) stable/11/contrib/libc++/include/errno.h (props changed) stable/11/contrib/libc++/include/inttypes.h (props changed) stable/11/contrib/libc++/include/limits.h (props changed) stable/11/contrib/libc++/include/locale.h (props changed) stable/11/contrib/libc++/include/setjmp.h (props changed) stable/11/contrib/libc++/include/stdbool.h (props changed) stable/11/contrib/libc++/include/stddef.h (props changed) stable/11/contrib/libc++/include/stdint.h (props changed) stable/11/contrib/libc++/include/stdlib.h (props changed) stable/11/contrib/libc++/include/string.h (props changed) stable/11/contrib/libc++/include/wchar.h (props changed) stable/11/contrib/libc++/include/wctype.h (props changed) stable/11/contrib/libc++/src/algorithm.cpp (props changed) stable/11/contrib/libc++/src/condition_variable.cpp (props changed) stable/11/contrib/libc++/src/debug.cpp (props changed) stable/11/contrib/libc++/src/exception.cpp (props changed) stable/11/contrib/libc++/src/functional.cpp (props changed) stable/11/contrib/libc++/src/hash.cpp (props changed) stable/11/contrib/libc++/src/include/atomic_support.h (props changed) stable/11/contrib/libc++/src/include/refstring.h (props changed) stable/11/contrib/libc++/src/ios.cpp (props changed) stable/11/contrib/libc++/src/iostream.cpp (props changed) stable/11/contrib/libc++/src/random.cpp (props changed) stable/11/contrib/libc++/src/regex.cpp (props changed) stable/11/contrib/libc++/src/stdexcept.cpp (props changed) stable/11/contrib/libc++/src/string.cpp (props changed) stable/11/contrib/libc++/src/strstream.cpp (props changed) stable/11/contrib/libc++/src/thread.cpp (props changed) stable/11/contrib/libc++/src/valarray.cpp (props changed) stable/11/contrib/libc++/src/variant.cpp (props changed) stable/11/contrib/libc++/src/vector.cpp (props changed) stable/11/contrib/llvm/include/llvm-c/ErrorHandling.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/AllocatorList.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/BitmaskEnum.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/BreadthFirstIterator.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/PointerEmbeddedInt.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/PointerSumType.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/PriorityWorklist.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/Sequence.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/ilist_base.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/ilist_iterator.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/ilist_node_base.h (props changed) stable/11/contrib/llvm/include/llvm/ADT/simple_ilist.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/CFLAliasAnalysisUtils.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/CmpInstAnalysis.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/GlobalsModRef.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/IndirectCallSiteVisitor.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/ModuleSummaryAnalysis.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/ScalarEvolutionAliasAnalysis.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/ScopedNoAliasAA.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/TypeBasedAliasAnalysis.h (props changed) stable/11/contrib/llvm/include/llvm/Analysis/ValueLatticeUtils.h (props changed) stable/11/contrib/llvm/include/llvm/AsmParser/SlotMapping.h (props changed) stable/11/contrib/llvm/include/llvm/Bitcode/BitcodeReader.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/ExpandReductions.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/FaultMaps.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelWorkList.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/GlobalISel/Types.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/LiveStacks.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/LowLevelType.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MachineCombinerPattern.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/MachineInstrBundleIterator.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/ScheduleDAGMutation.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/SelectionDAGAddressAnalysis.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/TailDuplicator.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/UnreachableBlockElim.h (props changed) stable/11/contrib/llvm/include/llvm/CodeGen/WinEHFuncInfo.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewError.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/ContinuationRecordBuilder.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugCrossExSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugInlineeLinesSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugLinesSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSymbolRVASubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugUnknownSubsection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/EnumTables.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/Formatters.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/FunctionId.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/GUID.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/Line.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/MergingTypeTableBuilder.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/RecordName.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SimpleTypeSerializer.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/StringsAndChecksums.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDeserializer.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumpDelegate.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecordMapping.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolSerializer.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolVisitorCallbackPipeline.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolVisitorCallbacks.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolVisitorDelegate.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeCollection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndexDiscovery.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecordMapping.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeSymbolEmitter.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeTableCollection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAttribute.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugMacro.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFGdbIndex.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFSection.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnitIndex.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/MSF/IMSFFile.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/MSF/MSFError.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/MSF/MappedBlockStream.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIADataStream.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumTables.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAError.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIALineNumber.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASourceFile.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIATable.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/GenericError.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBDataStream.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBEnumChildren.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBLineNumber.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSourceFile.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBTable.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleList.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/EnumTables.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/Formatters.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GSIStreamBuilder.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/Hash.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/ISectionContribVisitor.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeBuiltinSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumModules.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumTypes.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeExeSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBFile.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTable.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PublicsStream.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawError.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/SymbolStream.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiHashing.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDB.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBContext.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymDumper.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolExe.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/PDB/UDTLayout.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/Symbolize/DIPrinter.h (props changed) stable/11/contrib/llvm/include/llvm/DebugInfo/Symbolize/SymbolizableModule.h (props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h (props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/Orc/RawByteChannel.h (props changed) stable/11/contrib/llvm/include/llvm/ExecutionEngine/OrcMCJITReplacement.h (props changed) stable/11/contrib/llvm/include/llvm/FuzzMutate/IRMutator.h (props changed) stable/11/contrib/llvm/include/llvm/FuzzMutate/Operations.h (props changed) stable/11/contrib/llvm/include/llvm/FuzzMutate/Random.h (props changed) stable/11/contrib/llvm/include/llvm/FuzzMutate/RandomIRBuilder.h (props changed) stable/11/contrib/llvm/include/llvm/IR/DerivedUser.h (props changed) stable/11/contrib/llvm/include/llvm/IR/GlobalIFunc.h (props changed) stable/11/contrib/llvm/include/llvm/IR/GlobalIndirectSymbol.h (props changed) stable/11/contrib/llvm/include/llvm/IR/ModuleSlotTracker.h (props changed) stable/11/contrib/llvm/include/llvm/IR/SafepointIRVerifier.h (props changed) stable/11/contrib/llvm/include/llvm/LTO/LTOBackend.h (props changed) stable/11/contrib/llvm/include/llvm/LTO/legacy/LTOCodeGenerator.h (props changed) stable/11/contrib/llvm/include/llvm/LTO/legacy/LTOModule.h (props changed) stable/11/contrib/llvm/include/llvm/LTO/legacy/UpdateCompilerUsed.h (props changed) stable/11/contrib/llvm/include/llvm/Linker/IRMover.h (props changed) stable/11/contrib/llvm/include/llvm/MC/LaneBitmask.h (props changed) stable/11/contrib/llvm/include/llvm/MC/MCAsmInfoWasm.h (props changed) stable/11/contrib/llvm/include/llvm/MC/MCDisassembler/MCDisassembler.h (props changed) stable/11/contrib/llvm/include/llvm/MC/MCParser/MCAsmParserUtils.h (props changed) stable/11/contrib/llvm/include/llvm/MC/MCSymbolCOFF.h (props changed) stable/11/contrib/llvm/include/llvm/MC/MCSymbolELF.h (props changed) stable/11/contrib/llvm/include/llvm/Object/ArchiveWriter.h (props changed) stable/11/contrib/llvm/include/llvm/Object/COFFModuleDefinition.h (props changed) stable/11/contrib/llvm/include/llvm/Object/IRSymtab.h (props changed) stable/11/contrib/llvm/include/llvm/Object/StackMapParser.h (props changed) stable/11/contrib/llvm/include/llvm/Object/SymbolSize.h (props changed) stable/11/contrib/llvm/include/llvm/Object/WindowsResource.h (props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLDebugSections.h (props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/CodeViewYAMLSymbols.h (props changed) stable/11/contrib/llvm/include/llvm/ObjectYAML/ObjectYAML.h (props changed) stable/11/contrib/llvm/include/llvm/Support/ARMAttributeParser.h (props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryItemStream.h (props changed) stable/11/contrib/llvm/include/llvm/Support/BinaryStreamError.h (props changed) stable/11/contrib/llvm/include/llvm/Support/COM.h (props changed) stable/11/contrib/llvm/include/llvm/Support/Chrono.h (props changed) stable/11/contrib/llvm/include/llvm/Support/FormatCommon.h (props changed) stable/11/contrib/llvm/include/llvm/Support/FormatProviders.h (props changed) stable/11/contrib/llvm/include/llvm/Support/GlobPattern.h (props changed) stable/11/contrib/llvm/include/llvm/Support/NativeFormatting.h (props changed) stable/11/contrib/llvm/include/llvm/Support/Printable.h (props changed) stable/11/contrib/llvm/include/llvm/Support/ReverseIteration.h (props changed) stable/11/contrib/llvm/include/llvm/Support/SHA1.h (props changed) stable/11/contrib/llvm/include/llvm/Support/Solaris/sys/regset.h (props changed) stable/11/contrib/llvm/include/llvm/Support/TarWriter.h (props changed) stable/11/contrib/llvm/include/llvm/Support/TrigramIndex.h (props changed) stable/11/contrib/llvm/include/llvm/Support/TypeName.h (props changed) stable/11/contrib/llvm/include/llvm/Support/raw_sha1_ostream.h (props changed) stable/11/contrib/llvm/include/llvm/Support/thread.h (props changed) stable/11/contrib/llvm/include/llvm/ToolDrivers/llvm-dlltool/DlltoolDriver.h (props changed) stable/11/contrib/llvm/include/llvm/ToolDrivers/llvm-lib/LibDriver.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Coroutines.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/CalledValuePropagation.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/ConstantMerge.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/CrossDSOCFI.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/ElimAvailExtern.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/FunctionAttrs.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/GlobalDCE.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/GlobalOpt.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/GlobalSplit.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/InferFunctionAttrs.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/Internalize.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/PartialInlining.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/SCCP.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/StripDeadPrototypes.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/IPO/ThinLTOBitcodeWriter.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/ADCE.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/BDCE.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/DCE.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/DeadStoreElimination.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/DivRemPairs.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/Float2Int.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/GuardWidening.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/IVUsersPrinter.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/IndVarSimplify.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LICM.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopDeletion.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopDistribute.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopInstSimplify.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopLoadElimination.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopPredication.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopRotation.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopSimplifyCFG.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopSink.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopStrengthReduce.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LowerAtomic.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/NaryReassociate.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/RewriteStatepointsForGC.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/Sink.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Scalar/TailRecursionElimination.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/AddDiscriminators.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/BreakCriticalEdges.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/CallPromotionUtils.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/EscapeEnumerator.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/LCSSA.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/LibCallsShrinkWrap.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/LowerInvoke.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/LowerMemIntrinsics.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/Mem2Reg.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/NameAnonGlobals.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/SanitizerStats.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/SplitModule.h (props changed) stable/11/contrib/llvm/include/llvm/Transforms/Utils/VNCoercion.h (props changed) stable/11/contrib/llvm/include/llvm/WindowsManifest/WindowsManifestMerger.h (props changed) stable/11/contrib/llvm/include/llvm/WindowsResource/ResourceProcessor.h (props changed) stable/11/contrib/llvm/include/llvm/WindowsResource/ResourceScriptToken.h (props changed) stable/11/contrib/llvm/include/llvm/WindowsResource/ResourceScriptTokenList.h (props changed) stable/11/contrib/llvm/include/llvm/XRay/Graph.h (props changed) stable/11/contrib/llvm/include/llvm/XRay/InstrumentationMap.h (props changed) stable/11/contrib/llvm/include/llvm/XRay/Trace.h (props changed) stable/11/contrib/llvm/lib/Analysis/AliasAnalysisSummary.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/AssumptionCache.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/CallPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/CmpInstAnalysis.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/MemDerefPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/OptimizationRemarkEmitter.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/ScopedNoAliasAA.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/TypeMetadataUtils.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/ValueLattice.cpp (props changed) stable/11/contrib/llvm/lib/Analysis/ValueLatticeUtils.cpp (props changed) stable/11/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.h (props changed) stable/11/contrib/llvm/lib/Bitcode/Reader/ValueList.h (props changed) stable/11/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocStream.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/FEntryInserter.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/GlobalISel/GlobalISel.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/LiveRangeUtils.h (props changed) stable/11/contrib/llvm/lib/CodeGen/LiveStacks.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/LowLevelType.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/PostRAHazardRecognizer.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/SafeStackColoring.h (props changed) stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGTargetInfo.cpp (props changed) stable/11/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.h (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/AppendingTypeTableBuilder.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/CodeViewError.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/ContinuationRecordBuilder.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugCrossExSubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugInlineeLinesSubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugLinesSubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugSubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugSubsectionRecord.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugSubsectionVisitor.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugSymbolRVASubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/DebugSymbolsSubsection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/EnumTables.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/Formatters.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/Line.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/RecordSerialization.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/SimpleTypeSerializer.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/StringsAndChecksums.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/SymbolSerializer.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeIndex.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFGdbIndex.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/MSF/MSFError.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/MSF/MappedBlockStream.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIADataStream.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumDebugStreams.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumLineNumbers.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSourceFiles.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSymbols.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumTables.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAError.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIALineNumber.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASourceFile.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/DIA/DIATable.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/IPDBSourceFile.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleList.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/EnumTables.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/GlobalsStream.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/Hash.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/ModuleDebugStream.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeBuiltinSymbol.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeCompilandSymbol.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumModules.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumSymbol.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumTypes.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/NativeExeSymbol.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/PublicsStream.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/RawError.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/SymbolStream.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/TpiHashing.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDB.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBContext.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymDumper.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolBlock.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCustom.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolExe.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolLabel.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolThunk.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/PDB/UDTLayout.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/Symbolize/DIPrinter.cpp (props changed) stable/11/contrib/llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.h (props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp (props changed) stable/11/contrib/llvm/lib/ExecutionEngine/Orc/RPCUtils.cpp (props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp (props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.h (props changed) stable/11/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCheckerImpl.h (props changed) stable/11/contrib/llvm/lib/FuzzMutate/OpDescriptor.cpp (props changed) stable/11/contrib/llvm/lib/FuzzMutate/Operations.cpp (props changed) stable/11/contrib/llvm/lib/FuzzMutate/RandomIRBuilder.cpp (props changed) stable/11/contrib/llvm/lib/IR/MetadataImpl.h (props changed) stable/11/contrib/llvm/lib/IR/Statepoint.cpp (props changed) stable/11/contrib/llvm/lib/LTO/UpdateCompilerUsed.cpp (props changed) stable/11/contrib/llvm/lib/Linker/LinkDiagnosticInfo.h (props changed) stable/11/contrib/llvm/lib/MC/MCAsmInfoWasm.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCCodePadder.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCDisassembler/MCDisassembler.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCDisassembler/MCRelocationInfo.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCDisassembler/MCSymbolizer.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCInstrDesc.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCSectionWasm.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCSymbolELF.cpp (props changed) stable/11/contrib/llvm/lib/MC/MCWinEH.cpp (props changed) stable/11/contrib/llvm/lib/Object/Decompressor.cpp (props changed) stable/11/contrib/llvm/lib/ObjectYAML/CodeViewYAMLDebugSections.cpp (props changed) stable/11/contrib/llvm/lib/ObjectYAML/DWARFVisitor.cpp (props changed) stable/11/contrib/llvm/lib/ObjectYAML/DWARFYAML.cpp (props changed) stable/11/contrib/llvm/lib/ObjectYAML/MachOYAML.cpp (props changed) stable/11/contrib/llvm/lib/ObjectYAML/ObjectYAML.cpp (props changed) stable/11/contrib/llvm/lib/ObjectYAML/YAML.cpp (props changed) stable/11/contrib/llvm/lib/Support/BinaryStreamError.cpp (props changed) stable/11/contrib/llvm/lib/Support/BinaryStreamReader.cpp (props changed) stable/11/contrib/llvm/lib/Support/BinaryStreamWriter.cpp (props changed) stable/11/contrib/llvm/lib/Support/FormatVariadic.cpp (props changed) stable/11/contrib/llvm/lib/Support/GlobPattern.cpp (props changed) stable/11/contrib/llvm/lib/Support/JamCRC.cpp (props changed) stable/11/contrib/llvm/lib/Support/KnownBits.cpp (props changed) stable/11/contrib/llvm/lib/Support/LowLevelType.cpp (props changed) stable/11/contrib/llvm/lib/Support/MathExtras.cpp (props changed) stable/11/contrib/llvm/lib/Support/Options.cpp (props changed) stable/11/contrib/llvm/lib/Support/ScopedPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Support/ThreadPool.cpp (props changed) stable/11/contrib/llvm/lib/Support/TrigramIndex.cpp (props changed) stable/11/contrib/llvm/lib/Support/Unix/COM.inc (props changed) stable/11/contrib/llvm/lib/Support/Unix/DynamicLibrary.inc (props changed) stable/11/contrib/llvm/lib/Support/Windows/COM.inc (props changed) stable/11/contrib/llvm/lib/Support/Windows/Threading.inc (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.h (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.h (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64MacroFusion.h (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64PBQPRegAlloc.h (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUFrameLowering.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUMacroFusion.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUPTNote.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPURegAsmNames.inc.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/GCNIterativeScheduler.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUFixupKinds.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600FrameLowering.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600FrameLowering.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.h (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp (props changed) stable/11/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARC.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCExpandPseudos.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCFrameLowering.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCISelDAGToDAG.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCInstrInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCMachineFunctionInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCRegisterInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCSubtarget.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCSubtarget.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCTargetMachine.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCTargetMachine.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCTargetStreamer.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/ARCTargetTransformInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCAsmInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCAsmInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.h (props changed) stable/11/contrib/llvm/lib/Target/ARC/TargetInfo/ARCTargetInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMBasicBlockInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMCallLowering.h (props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMComputeBlockSize.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMMacroFusion.h (props changed) stable/11/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARM/ThumbRegisterInfo.h (props changed) stable/11/contrib/llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/ARM/Utils/ARMBaseInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRAsmPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRFrameLowering.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRFrameLowering.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRISelLowering.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRInstrInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRMCInstLower.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRMCInstLower.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRMachineFunctionInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRRelaxMemOperations.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRSelectionDAGInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRSubtarget.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRSubtarget.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRTargetMachine.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRTargetObjectFile.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/AVRTargetObjectFile.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/Disassembler/AVRDisassembler.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/InstPrinter/AVRInstPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/InstPrinter/AVRInstPrinter.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRFixupKinds.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRTargetStreamer.cpp (props changed) stable/11/contrib/llvm/lib/Target/AVR/MCTargetDesc/AVRTargetStreamer.h (props changed) stable/11/contrib/llvm/lib/Target/AVR/TargetInfo/AVRTargetInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFAsmPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFFrameLowering.cpp (props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFFrameLowering.h (props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFMCInstLower.cpp (props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFMCInstLower.h (props changed) stable/11/contrib/llvm/lib/Target/BPF/BPFTargetMachine.h (props changed) stable/11/contrib/llvm/lib/Target/BPF/InstPrinter/BPFInstPrinter.h (props changed) stable/11/contrib/llvm/lib/Target/BPF/TargetInfo/BPFTargetInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonBlockRanges.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepITypes.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonDepTimingClasses.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonGenExtract.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonOptimizeSZextends.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/HexagonTargetStreamer.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonFixupKinds.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCChecker.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCChecker.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCShuffler.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFCopy.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFDeadCode.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFGraph.h (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFRegisters.cpp (props changed) stable/11/contrib/llvm/lib/Target/Hexagon/RDFRegisters.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/InstPrinter/LanaiInstPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/InstPrinter/LanaiInstPrinter.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/Lanai.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiAluCode.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiCondCode.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiFrameLowering.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiFrameLowering.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiMCInstLower.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiMCInstLower.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiMachineFunctionInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiMachineFunctionInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiRegisterInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiRegisterInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiSelectionDAGInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiSelectionDAGInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiSubtarget.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiSubtarget.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiTargetMachine.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiTargetObjectFile.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiBaseInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiFixupKinds.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCAsmInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCAsmInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.cpp (props changed) stable/11/contrib/llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.h (props changed) stable/11/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Mips/MipsCCState.cpp (props changed) stable/11/contrib/llvm/lib/Target/Mips/MipsCCState.h (props changed) stable/11/contrib/llvm/lib/Target/Mips/Relocation.txt (props changed) stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp (props changed) stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp (props changed) stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXPeephole.cpp (props changed) stable/11/contrib/llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2BaseInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2FixupKinds.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2AsmPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2MCInstLower.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.h (props changed) stable/11/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.cpp (props changed) stable/11/contrib/llvm/lib/Target/Nios2/TargetInfo/Nios2TargetInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCCCState.cpp (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCCCState.h (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.h (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCQPXLoadSplat.cpp (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCTOCRegDeps.cpp (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/PPCVSXCopy.cpp (props changed) stable/11/contrib/llvm/lib/Target/PowerPC/README_P9.txt (props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h (props changed) stable/11/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h (props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVSubtarget.cpp (props changed) stable/11/contrib/llvm/lib/Target/RISCV/RISCVTargetMachine.h (props changed) stable/11/contrib/llvm/lib/Target/RISCV/TargetInfo/RISCVTargetInfo.cpp (props changed) stable/11/contrib/llvm/lib/Target/Sparc/LeonPasses.cpp (props changed) stable/11/contrib/llvm/lib/Target/Sparc/LeonPasses.h (props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp (props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZTDC.cpp (props changed) stable/11/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h (props changed) stable/11/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyFixupKinds.h (props changed) stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h (props changed) stable/11/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp (props changed) stable/11/contrib/llvm/lib/Target/X86/X86CallLowering.h (props changed) stable/11/contrib/llvm/lib/Target/X86/X86CallingConv.cpp (props changed) stable/11/contrib/llvm/lib/Target/X86/X86FixupSetCC.cpp (props changed) stable/11/contrib/llvm/lib/Target/X86/X86LegalizerInfo.h (props changed) stable/11/contrib/llvm/lib/Target/X86/X86MacroFusion.h (props changed) stable/11/contrib/llvm/lib/Target/X86/X86RegisterBankInfo.h (props changed) stable/11/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp (props changed) stable/11/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h (props changed) stable/11/contrib/llvm/lib/Target/XCore/XCoreTargetTransformInfo.h (props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroCleanup.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Coroutines/CoroInstr.h (props changed) stable/11/contrib/llvm/lib/Transforms/IPO/ElimAvailExtern.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/IPO/GlobalSplit.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/IPO/InferFunctionAttrs.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysisEvaluator.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/DivRemPairs.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/IVUsersPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopAccessAnalysisPrinter.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LoopPassManager.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Utils/NameAnonGlobals.cpp (props changed) stable/11/contrib/llvm/lib/Transforms/Utils/SanitizerStats.cpp (props changed) stable/11/contrib/llvm/lib/WindowsManifest/WindowsManifestMerger.cpp (props changed) stable/11/contrib/llvm/lib/XRay/InstrumentationMap.cpp (props changed) stable/11/contrib/llvm/tools/clang/include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/OSLog.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Analysis/BodyFarm.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/MemoryBufferCache.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/PragmaKinds.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/SanitizerBlacklist.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Basic/SanitizerSpecialCaseList.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/CodeGen/ConstantInitFuture.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTUDiagnostic.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Index/CodegenNameGenerator.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Lex/HeaderMapTypes.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Sema/CleanupInfo.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/MPIFunctionClassifier.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopUnrolling.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValVisitor.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/ASTDiff/ASTDiff.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/ASTDiff/ASTDiffInternal.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Core/Lookup.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/ASTSelection.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Extract/Extract.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringAction.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRuleRequirements.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRules.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringActionRulesInternal.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringDiagnostic.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringOption.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringOptionVisitor.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringOptions.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringRuleContext.h (props changed) stable/11/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/Rename/SymbolOccurrences.h (props changed) stable/11/contrib/llvm/tools/clang/lib/AST/DataCollection.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/AST/ExprObjC.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/AST/Linkage.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Analysis/CodeInjector.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Analysis/OSLog.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/MemoryBufferCache.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/SanitizerBlacklist.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/SanitizerSpecialCaseList.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Le64.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Le64.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/MSP430.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/MSP430.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/PNaCl.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/PNaCl.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/SPIR.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/TCE.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/TCE.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/XCore.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Basic/Targets/XCore.h (props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/Address.h (props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/SanitizerMetadata.h (props changed) stable/11/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.h (props changed) stable/11/contrib/llvm/tools/clang/lib/CrossTU/CrossTranslationUnit.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/AVR.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/AVR.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Ananas.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Sparc.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/SystemZ.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/SystemZ.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/X86.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Contiki.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/DragonFly.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/DragonFly.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVCSetupApi.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Minix.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/Minix.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/TCE.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/TCE.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/XCore.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Driver/ToolChains/XCore.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Frontend/TestModuleFileExtension.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_cmath.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_complex_builtins.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_math_forward_declares.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/__stddef_max_align_t.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/adxintrin.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/arm64intr.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/armintr.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/htmintrin.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/inttypes.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/msa.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/s390intrin.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/stdatomic.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/vadefs.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Headers/vecintrin.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Index/CodegenNameGenerator.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Serialization/ModuleFileExtension.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.h (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIFunctionClassifier.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPITypes.h (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Core/Diagnostic.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Core/Lookup.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/FixIt.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/ASTSelection.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/ASTSelectionRequirements.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/SourceExtraction.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/SourceExtraction.h (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/RefactoringActions.cpp (props changed) stable/11/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/SymbolOccurrences.cpp (props changed) stable/11/contrib/llvm/tools/clang/utils/TableGen/ClangDataCollectorsEmitter.cpp (props changed) stable/11/contrib/llvm/tools/lld/CMakeLists.txt (props changed) stable/11/contrib/llvm/tools/lld/CODE_OWNERS.TXT (props changed) stable/11/contrib/llvm/tools/lld/COFF/MapFile.h (props changed) stable/11/contrib/llvm/tools/lld/COFF/MinGW.h (props changed) stable/11/contrib/llvm/tools/lld/Common/Memory.cpp (props changed) stable/11/contrib/llvm/tools/lld/Common/Reproduce.cpp (props changed) stable/11/contrib/llvm/tools/lld/Common/Threads.cpp (props changed) stable/11/contrib/llvm/tools/lld/Common/Version.cpp (props changed) stable/11/contrib/llvm/tools/lld/ELF/Arch/AVR.cpp (props changed) stable/11/contrib/llvm/tools/lld/ELF/Bits.h (props changed) stable/11/contrib/llvm/tools/lld/ELF/EhFrame.h (props changed) stable/11/contrib/llvm/tools/lld/ELF/Filesystem.h (props changed) stable/11/contrib/llvm/tools/lld/ELF/ScriptLexer.h (props changed) stable/11/contrib/llvm/tools/lld/ELF/ScriptParser.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Args.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/LLVM.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Memory.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Reproduce.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Threads.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Common/Version.inc.in (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/AbsoluteAtom.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/ArchiveLibraryFile.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Atom.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Error.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Node.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Pass.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/Reference.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/SharedLibraryAtom.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/SharedLibraryFile.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/Core/UndefinedAtom.h (props changed) stable/11/contrib/llvm/tools/lld/include/lld/ReaderWriter/YamlContext.h (props changed) stable/11/contrib/llvm/tools/lld/lib/CMakeLists.txt (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/CMakeLists.txt (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/DefinedAtom.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/Error.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/File.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/Reader.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/Resolver.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/SymbolTable.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/Core/Writer.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/CMakeLists.txt (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_arm.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_arm64.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_x86.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/Atoms.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/DebugInfo.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ExecutableAtoms.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/File.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/FlatNamespaceFile.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/GOTPass.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/LayoutPass.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFile.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryReader.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachONormalizedFileYAML.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachOPasses.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ObjCPass.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/SectCreateFile.h (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ShimPass.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/StubsPass.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/TLVPass.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/WriterMachO.cpp (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/YAML/CMakeLists.txt (props changed) stable/11/contrib/llvm/tools/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp (props changed) stable/11/contrib/llvm/tools/lld/tools/lld/CMakeLists.txt (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBAttachInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpointName.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBExecutionContext.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBLanguageRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfoList.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBProcessInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBQueue.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBQueueItem.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBThreadCollection.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBThreadPlan.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBTrace.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBTraceOptions.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBTypeEnumMember.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBUnixSignals.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/API/SBVariablesOptions.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/DumpDataExtractor.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/StructuredDataImpl.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseMap.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeSTLVector.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultCast.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/CXXFunctionPointer.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersHelpers.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/LanguageCategory.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/DataFormatters/VectorType.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/DiagnosticManager.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Expression/REPL.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/ConnectionFileDescriptor.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostGetOpt.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeProcess.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeProcessBase.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThread.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadBase.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadForward.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/LockFile.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/LockFileBase.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/OptionParser.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Pipe.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/PipeBase.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/ProcessLauncher.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/ThreadLauncher.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/Time.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpointList.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeWatchpointList.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/SoftwareBreakpoint.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/TCPSocket.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/common/UDPSocket.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/openbsd/HostInfoOpenBSD.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/DomainSocket.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/Fcntl.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostProcessPosix.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostThreadPosix.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/LockFilePosix.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Host/posix/ProcessLauncherPosixFork.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializer.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializerCommon.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemLifetimeManager.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueChar.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ArmUnwindInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangUtil.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerDecl.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerDeclContext.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/DebugMacros.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/JavaASTContext.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/OCamlASTContext.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Symbol/TypeMap.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/FileAction.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntimeStopInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/JITLoaderList.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/MemoryHistory.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/StructuredDataPlugin.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallOnFunctionExit.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanPython.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Either.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Endian.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/FastDemangle.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/IOObject.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/LLDBAssert.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/Logging.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/NameMatches.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StreamCallback.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StreamGDBRemote.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StreamString.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/TraceOptions.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/UriParser.h (props changed) stable/11/contrib/llvm/tools/lldb/include/lldb/Utility/VASPrintf.h (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBBreakpointOptionCommon.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBBreakpointOptionCommon.h (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBExecutionContext.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBLanguageRuntime.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfoList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBProcessInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBQueue.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBStructuredData.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBThreadCollection.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBTrace.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBTraceOptions.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBUnixSignals.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/API/SBVariablesOptions.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointName.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectLanguage.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Commands/CommandObjectLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultCast.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/CXXFunctionPointer.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/DumpValueObjectOptions.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/FormattersHelpers.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/LanguageCategory.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/DataFormatters/TypeValidator.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/Expression.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Expression/UtilityFunction.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/FileSystem.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/GetOptInc.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/HostNativeThreadBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/HostProcess.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/HostThread.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/LockFileBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/NativeWatchpointList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/OptionParser.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/PipeBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/ProcessRunLock.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/StringConvert.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/common/ThreadLauncher.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/openbsd/HostInfoOpenBSD.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/DomainSocket.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/HostProcessPosix.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Host/posix/LockFilePosix.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Initialization/SystemInitializer.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Initialization/SystemLifetimeManager.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Interpreter/CommandOptionValidators.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTDumper.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTDumper.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangDiagnostic.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionHelper.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoAST.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/gen_go_ast.py (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ASan/ASanRuntime.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ASan/ASanRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/MainThreadChecker/MainThreadCheckerRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/UBSan/UBSanRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxBitset.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CoreMedia.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CoreMedia.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSArray.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptScriptGroup.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFBundle.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFBundle.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFString.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/CFUtils.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/DarwinProcessLauncher.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/LaunchFlavor.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/MachException.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadDarwin.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadListDarwin.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/POSIXStopInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/CrashReason.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NativeRegisterContextRegisterInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_s390x.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_s390x.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_x86_64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_i386.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_i386.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_x86_64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextOpenBSD_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_mips.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_powerpc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_s390x.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_ppc64le.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_ppc64le.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_powerpc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64le.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_s390x.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-arm-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-arm64-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-mips-freebsd-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-mips-linux-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-ppc64le-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-s390x-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_s390x.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_s390x.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterUtilities.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterUtilities.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/NtStructures.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonExceptionState.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacro.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacro.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/ClangUtil.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/CompilerDecl.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/CompilerDeclContext.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/DebugMacros.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/JavaASTContext.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/OCamlASTContext.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Symbol/TypeSystem.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/FileAction.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/InstrumentationRuntime.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/InstrumentationRuntimeStopInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/JITLoaderList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/Language.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/MemoryHistory.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/Queue.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/QueueItem.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/QueueList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/RegisterNumber.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/StructuredDataPlugin.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/SystemRuntime.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/ThreadCollection.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunctionUsingABI.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/ARM64_ehframe_Registers.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/ARM_ehframe_Registers.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/Baton.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/Connection.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/DataBufferLLVM.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/IOObject.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/LLDBAssert.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/Logging.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/NameMatches.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/PPC64LE_DWARF_Registers.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/PPC64LE_ehframe_Registers.h (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/StreamCallback.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/StreamGDBRemote.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/StreamString.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/StringLexer.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/StringList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/Timer.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/UriParser.cpp (props changed) stable/11/contrib/llvm/tools/lldb/source/Utility/UserID.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/argdumper/argdumper.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/compact-unwind/compact-unwind-dumper.c (props changed) stable/11/contrib/llvm/tools/lldb/tools/driver/Platform.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/driver/Platform.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgContext.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgContext.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgSet.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgSet.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValConsume.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValConsume.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValFile.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValFile.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListBase.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListOfN.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValListOfN.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValNumber.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValNumber.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionLong.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionLong.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionShort.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionShort.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValPrintValues.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValPrintValues.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValString.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValString.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValThreadGrp.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmd.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmd.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdBreak.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdEnviro.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdEnviro.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdFile.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdFile.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbThread.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbThread.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdMiscellanous.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdMiscellanous.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdStack.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdStack.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportInfo.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportList.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTarget.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdThread.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdThread.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTrace.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTrace.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdVar.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdVar.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCommands.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCommands.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdData.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdData.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdFactory.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdFactory.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInterpreter.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInterpreter.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInvoker.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdInvoker.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgr.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgr.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgrSetCmdDeleteCallback.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdMgrSetCmdDeleteCallback.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnBase.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnConfig.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBBroadcaster.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBBroadcaster.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfo.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugger.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugger.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBProxySBValue.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBProxySBValue.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBUtilSBValue.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBUtilSBValue.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLog.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLog.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLogMediumFile.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLogMediumFile.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIOutOfBandRecord.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIOutOfBandRecord.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIResultRecord.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIResultRecord.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValue.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValue.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueConst.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueConst.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueList.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueList.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueResult.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueResult.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueTuple.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnMIValueTuple.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStderr.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStderr.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdout.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdout.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnThreadMgrStd.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnThreadMgrStd.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDataTypes.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverBase.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverBase.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMgr.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIExtensions.txt (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDateTimeStd.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDateTimeStd.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilMapIdToVariant.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilMapIdToVariant.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilSingletonBase.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilString.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilString.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilThreadBaseStd.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilThreadBaseStd.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilVariant.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilVariant.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-mi/Platform.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/Acceptor.cpp (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/Acceptor.h (props changed) stable/11/contrib/llvm/tools/lldb/tools/lldb-server/LLDBServerUtilities.h (props changed) stable/11/contrib/llvm/tools/llvm-cov/CoverageSummaryInfo.cpp (props changed) stable/11/contrib/llvm/tools/llvm-cov/gcov.cpp (props changed) stable/11/contrib/llvm/tools/llvm-cxxdump/Error.h (props changed) stable/11/contrib/llvm/tools/llvm-cxxdump/llvm-cxxdump.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/Analyze.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/BytesOutputStyle.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/BytesOutputStyle.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/FormatUtil.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/FormatUtil.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/LinePrinter.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/LinePrinter.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/OutputStyle.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PdbYaml.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PdbYaml.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyBuiltinDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyClassLayoutGraphicalDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyEnumDumper.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyEnumDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyExternalSymbolDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyFunctionDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyTypedefDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/PrettyVariableDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp (props changed) stable/11/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.h (props changed) stable/11/contrib/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp (props changed) stable/11/contrib/llvm/tools/llvm-readobj/WindowsResourceDumper.h (props changed) stable/11/contrib/llvm/tools/llvm-xray/trie-node.h (props changed) stable/11/contrib/llvm/tools/llvm-xray/xray-color-helper.h (props changed) stable/11/contrib/llvm/tools/llvm-xray/xray-converter.h (props changed) stable/11/contrib/llvm/tools/llvm-xray/xray-graph-diff.h (props changed) stable/11/contrib/llvm/tools/llvm-xray/xray-registry.h (props changed) stable/11/contrib/llvm/utils/TableGen/Attributes.cpp (props changed) stable/11/contrib/llvm/utils/TableGen/CodeGenHwModes.cpp (props changed) stable/11/contrib/llvm/utils/TableGen/CodeGenHwModes.h (props changed) stable/11/contrib/llvm/utils/TableGen/SDNodeProperties.cpp (props changed) stable/11/contrib/llvm/utils/TableGen/SDNodeProperties.h (props changed) stable/11/contrib/llvm/utils/TableGen/Types.cpp (props changed) stable/11/contrib/llvm/utils/TableGen/Types.h (props changed) Modified: stable/11/ObsoleteFiles.inc ============================================================================== --- stable/11/ObsoleteFiles.inc Sat Feb 16 15:43:49 2019 (r344212) +++ stable/11/ObsoleteFiles.inc Sat Feb 16 15:57:29 2019 (r344213) @@ -38,6 +38,142 @@ # xargs -n1 | sort | uniq -d; # done +# 20190216: new clang import which bumps version from 6.0.1 to 7.0.1. +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/allocator_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/asan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/common_interface_defs.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/coverage_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/dfsan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/esan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/hwasan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/linux_syscall_hooks.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/lsan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/msan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/scudo_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/tsan_interface.h +OLD_FILES+=usr/lib/clang/6.0.1/include/sanitizer/tsan_interface_atomic.h +OLD_DIRS+=usr/lib/clang/6.0.1/include/sanitizer +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_builtin_vars.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_cmath.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_complex_builtins.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_intrinsics.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_math_forward_declares.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__clang_cuda_runtime_wrapper.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__stddef_max_align_t.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__wmmintrin_aes.h +OLD_FILES+=usr/lib/clang/6.0.1/include/__wmmintrin_pclmul.h +OLD_FILES+=usr/lib/clang/6.0.1/include/adxintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/altivec.h +OLD_FILES+=usr/lib/clang/6.0.1/include/ammintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/arm64intr.h +OLD_FILES+=usr/lib/clang/6.0.1/include/arm_acle.h +OLD_FILES+=usr/lib/clang/6.0.1/include/arm_neon.h +OLD_FILES+=usr/lib/clang/6.0.1/include/armintr.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512bitalgintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512bwintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512cdintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512dqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512erintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512fintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512ifmaintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512ifmavlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512pfintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vbmi2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vbmiintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vbmivlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlbitalgintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlbwintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlcdintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vldqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlvbmi2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vlvnniintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vnniintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vpopcntdqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avx512vpopcntdqvlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/avxintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/bmi2intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/bmiintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/cetintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/clflushoptintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/clwbintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/clzerointrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/cpuid.h +OLD_FILES+=usr/lib/clang/6.0.1/include/emmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/f16cintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/fma4intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/fmaintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/fxsrintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/gfniintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/htmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/htmxlintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/ia32intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/immintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/lwpintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/lzcntintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mm3dnow.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mm_malloc.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/module.modulemap +OLD_FILES+=usr/lib/clang/6.0.1/include/msa.h +OLD_FILES+=usr/lib/clang/6.0.1/include/mwaitxintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/nmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/opencl-c.h +OLD_FILES+=usr/lib/clang/6.0.1/include/pkuintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/pmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/popcntintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/prfchwintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/rdseedintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/rtmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/s390intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/shaintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/smmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/tbmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/tmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vadefs.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vaesintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vecintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/vpclmulqdqintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/wmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/x86intrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xmmintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xopintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsavecintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsaveintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsaveoptintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xsavesintrin.h +OLD_FILES+=usr/lib/clang/6.0.1/include/xtestintrin.h +OLD_DIRS+=usr/lib/clang/6.0.1/include +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-i386.so +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-preinit-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-preinit-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan-x86_64.so +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan_cxx-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.asan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-arm.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-armhf.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.profile-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.safestack-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.safestack-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats_client-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.stats_client-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.tsan-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_minimal-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a +OLD_FILES+=usr/lib/clang/6.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a +OLD_DIRS+=usr/lib/clang/6.0.1/lib/freebsd +OLD_DIRS+=usr/lib/clang/6.0.1/lib +OLD_DIRS+=usr/lib/clang/6.0.1 # 20180812: move of libmlx5.so.1 and libibverbs.so.1 OLD_LIBS+=usr/lib/libmlx5.so.1 OLD_LIBS+=usr/lib/libibverbs.so.1 Modified: stable/11/UPDATING ============================================================================== --- stable/11/UPDATING Sat Feb 16 15:43:49 2019 (r344212) +++ stable/11/UPDATING Sat Feb 16 15:57:29 2019 (r344213) @@ -16,6 +16,12 @@ from older versions of FreeBSD, try WITHOUT_CLANG and the tip of head, and then rebuild without this option. The bootstrap process from older version of current across the gcc/clang cutover is a bit fragile. +20190216: + Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to + 7.0.1. Please see the 20141231 entry below for information about + prerequisites and upgrading, if you are not already using clang 3.5.0 + or higher. + 20181228: r342562 modifies the NFSv4 server so that it obeys vfs.nfsd.nfs_privport in the same as it is applied to NFSv2 and 3. This implies that NFSv4 Modified: stable/11/contrib/compiler-rt/LICENSE.TXT ============================================================================== --- stable/11/contrib/compiler-rt/LICENSE.TXT Sat Feb 16 15:43:49 2019 (r344212) +++ stable/11/contrib/compiler-rt/LICENSE.TXT Sat Feb 16 15:57:29 2019 (r344213) @@ -14,7 +14,7 @@ Full text of the relevant licenses is included below. University of Illinois/NCSA Open Source License -Copyright (c) 2009-2016 by the contributors listed in CREDITS.TXT +Copyright (c) 2009-2018 by the contributors listed in CREDITS.TXT All rights reserved. Modified: stable/11/contrib/compiler-rt/include/sanitizer/common_interface_defs.h ============================================================================== --- stable/11/contrib/compiler-rt/include/sanitizer/common_interface_defs.h Sat Feb 16 15:43:49 2019 (r344212) +++ stable/11/contrib/compiler-rt/include/sanitizer/common_interface_defs.h Sat Feb 16 15:57:29 2019 (r344213) @@ -65,6 +65,11 @@ extern "C" { void __sanitizer_unaligned_store32(void *p, uint32_t x); void __sanitizer_unaligned_store64(void *p, uint64_t x); + // Returns 1 on the first call, then returns 0 thereafter. Called by the tool + // to ensure only one report is printed when multiple errors occur + // simultaneously. + int __sanitizer_acquire_crash_state(); + // Annotate the current state of a contiguous container, such as // std::vector, std::string or similar. // A contiguous container is a container that keeps all of its elements Modified: stable/11/contrib/compiler-rt/include/sanitizer/msan_interface.h ============================================================================== --- stable/11/contrib/compiler-rt/include/sanitizer/msan_interface.h Sat Feb 16 15:43:49 2019 (r344212) +++ stable/11/contrib/compiler-rt/include/sanitizer/msan_interface.h Sat Feb 16 15:57:29 2019 (r344213) @@ -104,6 +104,14 @@ extern "C" { copy. Source and destination regions can overlap. */ void __msan_copy_shadow(const volatile void *dst, const volatile void *src, size_t size); + + /* Disables uninitialized memory checks in interceptors. */ + void __msan_scoped_disable_interceptor_checks(void); + + /* Re-enables uninitialized memory checks in interceptors after a previous + call to __msan_scoped_disable_interceptor_checks. */ + void __msan_scoped_enable_interceptor_checks(void); + #ifdef __cplusplus } // extern "C" #endif Copied: stable/11/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h (from r341825, head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/11/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h Sat Feb 16 15:57:29 2019 (r344213, copy of r341825, head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h) @@ -0,0 +1,4734 @@ +//===-- netbsd_syscall_hooks.h --------------------------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file is a part of public sanitizer interface. +// +// System call handlers. +// +// Interface methods declared in this header implement pre- and post- syscall +// actions for the active sanitizer. +// Usage: +// __sanitizer_syscall_pre_getfoo(...args...); +// long long res = syscall(SYS_getfoo, ...args...); +// __sanitizer_syscall_post_getfoo(res, ...args...); +// +// DO NOT EDIT! THIS FILE HAS BEEN GENERATED! +// +// Generated with: generate_netbsd_syscalls.awk +// Generated date: 2018-03-03 +// Generated from: syscalls.master,v 1.291 2018/01/06 16:41:23 kamil Exp +// +//===----------------------------------------------------------------------===// +#ifndef SANITIZER_NETBSD_SYSCALL_HOOKS_H +#define SANITIZER_NETBSD_SYSCALL_HOOKS_H + +#define __sanitizer_syscall_pre_syscall(code, arg0, arg1, arg2, arg3, arg4, \ + arg5, arg6, arg7) \ + __sanitizer_syscall_pre_impl_syscall( \ + (long long)(code), (long long)(arg0), (long long)(arg1), \ + (long long)(arg2), (long long)(arg3), (long long)(arg4), \ + (long long)(arg5), (long long)(arg6), (long long)(arg7)) +#define __sanitizer_syscall_post_syscall(res, code, arg0, arg1, arg2, arg3, \ + arg4, arg5, arg6, arg7) \ + __sanitizer_syscall_post_impl_syscall( \ + res, (long long)(code), (long long)(arg0), (long long)(arg1), \ + (long long)(arg2), (long long)(arg3), (long long)(arg4), \ + (long long)(arg5), (long long)(arg6), (long long)(arg7)) +#define __sanitizer_syscall_pre_exit(rval) \ + __sanitizer_syscall_pre_impl_exit((long long)(rval)) +#define __sanitizer_syscall_post_exit(res, rval) \ + __sanitizer_syscall_post_impl_exit(res, (long long)(rval)) +#define __sanitizer_syscall_pre_fork() __sanitizer_syscall_pre_impl_fork() +#define __sanitizer_syscall_post_fork(res) \ + __sanitizer_syscall_post_impl_fork(res) +#define __sanitizer_syscall_pre_read(fd, buf, nbyte) \ + __sanitizer_syscall_pre_impl_read((long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_post_read(res, fd, buf, nbyte) \ + __sanitizer_syscall_post_impl_read(res, (long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_pre_write(fd, buf, nbyte) \ + __sanitizer_syscall_pre_impl_write((long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_post_write(res, fd, buf, nbyte) \ + __sanitizer_syscall_post_impl_write(res, (long long)(fd), (long long)(buf), \ + (long long)(nbyte)) +#define __sanitizer_syscall_pre_open(path, flags, mode) \ + __sanitizer_syscall_pre_impl_open((long long)(path), (long long)(flags), \ + (long long)(mode)) +#define __sanitizer_syscall_post_open(res, path, flags, mode) \ + __sanitizer_syscall_post_impl_open(res, (long long)(path), \ + (long long)(flags), (long long)(mode)) +#define __sanitizer_syscall_pre_close(fd) \ + __sanitizer_syscall_pre_impl_close((long long)(fd)) +#define __sanitizer_syscall_post_close(res, fd) \ + __sanitizer_syscall_post_impl_close(res, (long long)(fd)) +#define __sanitizer_syscall_pre_compat_50_wait4(pid, status, options, rusage) \ + __sanitizer_syscall_pre_impl_compat_50_wait4( \ + (long long)(pid), (long long)(status), (long long)(options), \ + (long long)(rusage)) +#define __sanitizer_syscall_post_compat_50_wait4(res, pid, status, options, \ + rusage) \ + __sanitizer_syscall_post_impl_compat_50_wait4( \ + res, (long long)(pid), (long long)(status), (long long)(options), \ + (long long)(rusage)) +#define __sanitizer_syscall_pre_compat_43_ocreat(path, mode) \ + __sanitizer_syscall_pre_impl_compat_43_ocreat((long long)(path), \ + (long long)(mode)) +#define __sanitizer_syscall_post_compat_43_ocreat(res, path, mode) \ + __sanitizer_syscall_post_impl_compat_43_ocreat(res, (long long)(path), \ + (long long)(mode)) +#define __sanitizer_syscall_pre_link(path, link) \ + __sanitizer_syscall_pre_impl_link((long long)(path), (long long)(link)) +#define __sanitizer_syscall_post_link(res, path, link) \ + __sanitizer_syscall_post_impl_link(res, (long long)(path), (long long)(link)) +#define __sanitizer_syscall_pre_unlink(path) \ + __sanitizer_syscall_pre_impl_unlink((long long)(path)) +#define __sanitizer_syscall_post_unlink(res, path) \ + __sanitizer_syscall_post_impl_unlink(res, (long long)(path)) +/* syscall 11 has been skipped */ +#define __sanitizer_syscall_pre_chdir(path) \ + __sanitizer_syscall_pre_impl_chdir((long long)(path)) +#define __sanitizer_syscall_post_chdir(res, path) \ + __sanitizer_syscall_post_impl_chdir(res, (long long)(path)) +#define __sanitizer_syscall_pre_fchdir(fd) \ + __sanitizer_syscall_pre_impl_fchdir((long long)(fd)) +#define __sanitizer_syscall_post_fchdir(res, fd) \ + __sanitizer_syscall_post_impl_fchdir(res, (long long)(fd)) +#define __sanitizer_syscall_pre_compat_50_mknod(path, mode, dev) \ + __sanitizer_syscall_pre_impl_compat_50_mknod( \ + (long long)(path), (long long)(mode), (long long)(dev)) +#define __sanitizer_syscall_post_compat_50_mknod(res, path, mode, dev) \ + __sanitizer_syscall_post_impl_compat_50_mknod( \ + res, (long long)(path), (long long)(mode), (long long)(dev)) +#define __sanitizer_syscall_pre_chmod(path, mode) \ + __sanitizer_syscall_pre_impl_chmod((long long)(path), (long long)(mode)) +#define __sanitizer_syscall_post_chmod(res, path, mode) \ + __sanitizer_syscall_post_impl_chmod(res, (long long)(path), (long long)(mode)) +#define __sanitizer_syscall_pre_chown(path, uid, gid) \ + __sanitizer_syscall_pre_impl_chown((long long)(path), (long long)(uid), \ + (long long)(gid)) +#define __sanitizer_syscall_post_chown(res, path, uid, gid) \ + __sanitizer_syscall_post_impl_chown(res, (long long)(path), \ + (long long)(uid), (long long)(gid)) +#define __sanitizer_syscall_pre_break(nsize) \ + __sanitizer_syscall_pre_impl_break((long long)(nsize)) +#define __sanitizer_syscall_post_break(res, nsize) \ + __sanitizer_syscall_post_impl_break(res, (long long)(nsize)) +#define __sanitizer_syscall_pre_compat_20_getfsstat(buf, bufsize, flags) \ + __sanitizer_syscall_pre_impl_compat_20_getfsstat( \ + (long long)(buf), (long long)(bufsize), (long long)(flags)) +#define __sanitizer_syscall_post_compat_20_getfsstat(res, buf, bufsize, flags) \ + __sanitizer_syscall_post_impl_compat_20_getfsstat( \ + res, (long long)(buf), (long long)(bufsize), (long long)(flags)) +#define __sanitizer_syscall_pre_compat_43_olseek(fd, offset, whence) \ + __sanitizer_syscall_pre_impl_compat_43_olseek( \ + (long long)(fd), (long long)(offset), (long long)(whence)) +#define __sanitizer_syscall_post_compat_43_olseek(res, fd, offset, whence) \ + __sanitizer_syscall_post_impl_compat_43_olseek( \ + res, (long long)(fd), (long long)(offset), (long long)(whence)) +#define __sanitizer_syscall_pre_getpid() __sanitizer_syscall_pre_impl_getpid() +#define __sanitizer_syscall_post_getpid(res) \ + __sanitizer_syscall_post_impl_getpid(res) +#define __sanitizer_syscall_pre_compat_40_mount(type, path, flags, data) \ + __sanitizer_syscall_pre_impl_compat_40_mount( \ + (long long)(type), (long long)(path), (long long)(flags), \ + (long long)(data)) +#define __sanitizer_syscall_post_compat_40_mount(res, type, path, flags, data) \ + __sanitizer_syscall_post_impl_compat_40_mount( \ + res, (long long)(type), (long long)(path), (long long)(flags), \ + (long long)(data)) +#define __sanitizer_syscall_pre_unmount(path, flags) \ + __sanitizer_syscall_pre_impl_unmount((long long)(path), (long long)(flags)) +#define __sanitizer_syscall_post_unmount(res, path, flags) \ + __sanitizer_syscall_post_impl_unmount(res, (long long)(path), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_setuid(uid) \ + __sanitizer_syscall_pre_impl_setuid((long long)(uid)) +#define __sanitizer_syscall_post_setuid(res, uid) \ + __sanitizer_syscall_post_impl_setuid(res, (long long)(uid)) +#define __sanitizer_syscall_pre_getuid() __sanitizer_syscall_pre_impl_getuid() +#define __sanitizer_syscall_post_getuid(res) \ + __sanitizer_syscall_post_impl_getuid(res) +#define __sanitizer_syscall_pre_geteuid() __sanitizer_syscall_pre_impl_geteuid() +#define __sanitizer_syscall_post_geteuid(res) \ + __sanitizer_syscall_post_impl_geteuid(res) +#define __sanitizer_syscall_pre_ptrace(req, pid, addr, data) \ + __sanitizer_syscall_pre_impl_ptrace((long long)(req), (long long)(pid), \ + (long long)(addr), (long long)(data)) +#define __sanitizer_syscall_post_ptrace(res, req, pid, addr, data) \ + __sanitizer_syscall_post_impl_ptrace(res, (long long)(req), \ + (long long)(pid), (long long)(addr), \ + (long long)(data)) +#define __sanitizer_syscall_pre_recvmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_recvmsg((long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_post_recvmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_recvmsg(res, (long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_sendmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_sendmsg((long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_post_sendmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_sendmsg(res, (long long)(s), (long long)(msg), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_recvfrom(s, buf, len, flags, from, \ + fromlenaddr) \ + __sanitizer_syscall_pre_impl_recvfrom( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags), \ + (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_post_recvfrom(res, s, buf, len, flags, from, \ + fromlenaddr) \ + __sanitizer_syscall_post_impl_recvfrom( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags), (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_pre_accept(s, name, anamelen) \ + __sanitizer_syscall_pre_impl_accept((long long)(s), (long long)(name), \ + (long long)(anamelen)) +#define __sanitizer_syscall_post_accept(res, s, name, anamelen) \ + __sanitizer_syscall_post_impl_accept(res, (long long)(s), (long long)(name), \ + (long long)(anamelen)) +#define __sanitizer_syscall_pre_getpeername(fdes, asa, alen) \ + __sanitizer_syscall_pre_impl_getpeername( \ + (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_getpeername(res, fdes, asa, alen) \ + __sanitizer_syscall_post_impl_getpeername( \ + res, (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_pre_getsockname(fdes, asa, alen) \ + __sanitizer_syscall_pre_impl_getsockname( \ + (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_getsockname(res, fdes, asa, alen) \ + __sanitizer_syscall_post_impl_getsockname( \ + res, (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_pre_access(path, flags) \ + __sanitizer_syscall_pre_impl_access((long long)(path), (long long)(flags)) +#define __sanitizer_syscall_post_access(res, path, flags) \ + __sanitizer_syscall_post_impl_access(res, (long long)(path), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_chflags(path, flags) \ + __sanitizer_syscall_pre_impl_chflags((long long)(path), (long long)(flags)) +#define __sanitizer_syscall_post_chflags(res, path, flags) \ + __sanitizer_syscall_post_impl_chflags(res, (long long)(path), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_fchflags(fd, flags) \ + __sanitizer_syscall_pre_impl_fchflags((long long)(fd), (long long)(flags)) +#define __sanitizer_syscall_post_fchflags(res, fd, flags) \ + __sanitizer_syscall_post_impl_fchflags(res, (long long)(fd), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_sync() __sanitizer_syscall_pre_impl_sync() +#define __sanitizer_syscall_post_sync(res) \ + __sanitizer_syscall_post_impl_sync(res) +#define __sanitizer_syscall_pre_kill(pid, signum) \ + __sanitizer_syscall_pre_impl_kill((long long)(pid), (long long)(signum)) +#define __sanitizer_syscall_post_kill(res, pid, signum) \ + __sanitizer_syscall_post_impl_kill(res, (long long)(pid), (long long)(signum)) +#define __sanitizer_syscall_pre_compat_43_stat43(path, ub) \ + __sanitizer_syscall_pre_impl_compat_43_stat43((long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_post_compat_43_stat43(res, path, ub) \ + __sanitizer_syscall_post_impl_compat_43_stat43(res, (long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_pre_getppid() __sanitizer_syscall_pre_impl_getppid() +#define __sanitizer_syscall_post_getppid(res) \ + __sanitizer_syscall_post_impl_getppid(res) +#define __sanitizer_syscall_pre_compat_43_lstat43(path, ub) \ + __sanitizer_syscall_pre_impl_compat_43_lstat43((long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_post_compat_43_lstat43(res, path, ub) \ + __sanitizer_syscall_post_impl_compat_43_lstat43(res, (long long)(path), \ + (long long)(ub)) +#define __sanitizer_syscall_pre_dup(fd) \ + __sanitizer_syscall_pre_impl_dup((long long)(fd)) +#define __sanitizer_syscall_post_dup(res, fd) \ + __sanitizer_syscall_post_impl_dup(res, (long long)(fd)) +#define __sanitizer_syscall_pre_pipe() __sanitizer_syscall_pre_impl_pipe() +#define __sanitizer_syscall_post_pipe(res) \ + __sanitizer_syscall_post_impl_pipe(res) +#define __sanitizer_syscall_pre_getegid() __sanitizer_syscall_pre_impl_getegid() +#define __sanitizer_syscall_post_getegid(res) \ + __sanitizer_syscall_post_impl_getegid(res) +#define __sanitizer_syscall_pre_profil(samples, size, offset, scale) \ + __sanitizer_syscall_pre_impl_profil((long long)(samples), (long long)(size), \ + (long long)(offset), (long long)(scale)) +#define __sanitizer_syscall_post_profil(res, samples, size, offset, scale) \ + __sanitizer_syscall_post_impl_profil(res, (long long)(samples), \ + (long long)(size), (long long)(offset), \ + (long long)(scale)) +#define __sanitizer_syscall_pre_ktrace(fname, ops, facs, pid) \ + __sanitizer_syscall_pre_impl_ktrace((long long)(fname), (long long)(ops), \ + (long long)(facs), (long long)(pid)) +#define __sanitizer_syscall_post_ktrace(res, fname, ops, facs, pid) \ + __sanitizer_syscall_post_impl_ktrace(res, (long long)(fname), \ + (long long)(ops), (long long)(facs), \ + (long long)(pid)) +#define __sanitizer_syscall_pre_compat_13_sigaction13(signum, nsa, osa) \ + __sanitizer_syscall_pre_impl_compat_13_sigaction13( \ + (long long)(signum), (long long)(nsa), (long long)(osa)) +#define __sanitizer_syscall_post_compat_13_sigaction13(res, signum, nsa, osa) \ + __sanitizer_syscall_post_impl_compat_13_sigaction13( \ + res, (long long)(signum), (long long)(nsa), (long long)(osa)) +#define __sanitizer_syscall_pre_getgid() __sanitizer_syscall_pre_impl_getgid() +#define __sanitizer_syscall_post_getgid(res) \ + __sanitizer_syscall_post_impl_getgid(res) +#define __sanitizer_syscall_pre_compat_13_sigprocmask13(how, mask) \ + __sanitizer_syscall_pre_impl_compat_13_sigprocmask13((long long)(how), \ + (long long)(mask)) +#define __sanitizer_syscall_post_compat_13_sigprocmask13(res, how, mask) \ + __sanitizer_syscall_post_impl_compat_13_sigprocmask13(res, (long long)(how), \ + (long long)(mask)) +#define __sanitizer_syscall_pre___getlogin(namebuf, namelen) \ + __sanitizer_syscall_pre_impl___getlogin((long long)(namebuf), \ + (long long)(namelen)) +#define __sanitizer_syscall_post___getlogin(res, namebuf, namelen) \ + __sanitizer_syscall_post_impl___getlogin(res, (long long)(namebuf), \ + (long long)(namelen)) +#define __sanitizer_syscall_pre___setlogin(namebuf) \ + __sanitizer_syscall_pre_impl___setlogin((long long)(namebuf)) +#define __sanitizer_syscall_post___setlogin(res, namebuf) \ + __sanitizer_syscall_post_impl___setlogin(res, (long long)(namebuf)) +#define __sanitizer_syscall_pre_acct(path) \ + __sanitizer_syscall_pre_impl_acct((long long)(path)) +#define __sanitizer_syscall_post_acct(res, path) \ + __sanitizer_syscall_post_impl_acct(res, (long long)(path)) +#define __sanitizer_syscall_pre_compat_13_sigpending13() \ + __sanitizer_syscall_pre_impl_compat_13_sigpending13() +#define __sanitizer_syscall_post_compat_13_sigpending13(res) \ + __sanitizer_syscall_post_impl_compat_13_sigpending13(res) +#define __sanitizer_syscall_pre_compat_13_sigaltstack13(nss, oss) \ + __sanitizer_syscall_pre_impl_compat_13_sigaltstack13((long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_post_compat_13_sigaltstack13(res, nss, oss) \ + __sanitizer_syscall_post_impl_compat_13_sigaltstack13(res, (long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_pre_ioctl(fd, com, data) \ + __sanitizer_syscall_pre_impl_ioctl((long long)(fd), (long long)(com), \ + (long long)(data)) +#define __sanitizer_syscall_post_ioctl(res, fd, com, data) \ + __sanitizer_syscall_post_impl_ioctl(res, (long long)(fd), (long long)(com), \ + (long long)(data)) +#define __sanitizer_syscall_pre_compat_12_oreboot(opt) \ + __sanitizer_syscall_pre_impl_compat_12_oreboot((long long)(opt)) +#define __sanitizer_syscall_post_compat_12_oreboot(res, opt) \ + __sanitizer_syscall_post_impl_compat_12_oreboot(res, (long long)(opt)) +#define __sanitizer_syscall_pre_revoke(path) \ + __sanitizer_syscall_pre_impl_revoke((long long)(path)) +#define __sanitizer_syscall_post_revoke(res, path) \ + __sanitizer_syscall_post_impl_revoke(res, (long long)(path)) +#define __sanitizer_syscall_pre_symlink(path, link) \ + __sanitizer_syscall_pre_impl_symlink((long long)(path), (long long)(link)) +#define __sanitizer_syscall_post_symlink(res, path, link) \ + __sanitizer_syscall_post_impl_symlink(res, (long long)(path), \ + (long long)(link)) +#define __sanitizer_syscall_pre_readlink(path, buf, count) \ + __sanitizer_syscall_pre_impl_readlink((long long)(path), (long long)(buf), \ + (long long)(count)) +#define __sanitizer_syscall_post_readlink(res, path, buf, count) \ + __sanitizer_syscall_post_impl_readlink(res, (long long)(path), \ + (long long)(buf), (long long)(count)) +#define __sanitizer_syscall_pre_execve(path, argp, envp) \ + __sanitizer_syscall_pre_impl_execve((long long)(path), (long long)(argp), \ + (long long)(envp)) +#define __sanitizer_syscall_post_execve(res, path, argp, envp) \ + __sanitizer_syscall_post_impl_execve(res, (long long)(path), \ + (long long)(argp), (long long)(envp)) +#define __sanitizer_syscall_pre_umask(newmask) \ + __sanitizer_syscall_pre_impl_umask((long long)(newmask)) +#define __sanitizer_syscall_post_umask(res, newmask) \ + __sanitizer_syscall_post_impl_umask(res, (long long)(newmask)) +#define __sanitizer_syscall_pre_chroot(path) \ + __sanitizer_syscall_pre_impl_chroot((long long)(path)) +#define __sanitizer_syscall_post_chroot(res, path) \ + __sanitizer_syscall_post_impl_chroot(res, (long long)(path)) +#define __sanitizer_syscall_pre_compat_43_fstat43(fd, sb) \ + __sanitizer_syscall_pre_impl_compat_43_fstat43((long long)(fd), \ + (long long)(sb)) +#define __sanitizer_syscall_post_compat_43_fstat43(res, fd, sb) \ + __sanitizer_syscall_post_impl_compat_43_fstat43(res, (long long)(fd), \ + (long long)(sb)) +#define __sanitizer_syscall_pre_compat_43_ogetkerninfo(op, where, size, arg) \ + __sanitizer_syscall_pre_impl_compat_43_ogetkerninfo( \ + (long long)(op), (long long)(where), (long long)(size), \ + (long long)(arg)) +#define __sanitizer_syscall_post_compat_43_ogetkerninfo(res, op, where, size, \ + arg) \ + __sanitizer_syscall_post_impl_compat_43_ogetkerninfo( \ + res, (long long)(op), (long long)(where), (long long)(size), \ + (long long)(arg)) +#define __sanitizer_syscall_pre_compat_43_ogetpagesize() \ + __sanitizer_syscall_pre_impl_compat_43_ogetpagesize() +#define __sanitizer_syscall_post_compat_43_ogetpagesize(res) \ + __sanitizer_syscall_post_impl_compat_43_ogetpagesize(res) +#define __sanitizer_syscall_pre_compat_12_msync(addr, len) \ + __sanitizer_syscall_pre_impl_compat_12_msync((long long)(addr), \ + (long long)(len)) +#define __sanitizer_syscall_post_compat_12_msync(res, addr, len) \ + __sanitizer_syscall_post_impl_compat_12_msync(res, (long long)(addr), \ + (long long)(len)) +#define __sanitizer_syscall_pre_vfork() __sanitizer_syscall_pre_impl_vfork() +#define __sanitizer_syscall_post_vfork(res) \ + __sanitizer_syscall_post_impl_vfork(res) +/* syscall 67 has been skipped */ +/* syscall 68 has been skipped */ +/* syscall 69 has been skipped */ +/* syscall 70 has been skipped */ +#define __sanitizer_syscall_pre_compat_43_ommap(addr, len, prot, flags, fd, \ + pos) \ + __sanitizer_syscall_pre_impl_compat_43_ommap( \ + (long long)(addr), (long long)(len), (long long)(prot), \ + (long long)(flags), (long long)(fd), (long long)(pos)) +#define __sanitizer_syscall_post_compat_43_ommap(res, addr, len, prot, flags, \ + fd, pos) \ + __sanitizer_syscall_post_impl_compat_43_ommap( \ + res, (long long)(addr), (long long)(len), (long long)(prot), \ + (long long)(flags), (long long)(fd), (long long)(pos)) +#define __sanitizer_syscall_pre_vadvise(anom) \ + __sanitizer_syscall_pre_impl_vadvise((long long)(anom)) +#define __sanitizer_syscall_post_vadvise(res, anom) \ + __sanitizer_syscall_post_impl_vadvise(res, (long long)(anom)) +#define __sanitizer_syscall_pre_munmap(addr, len) \ + __sanitizer_syscall_pre_impl_munmap((long long)(addr), (long long)(len)) +#define __sanitizer_syscall_post_munmap(res, addr, len) \ + __sanitizer_syscall_post_impl_munmap(res, (long long)(addr), (long long)(len)) +#define __sanitizer_syscall_pre_mprotect(addr, len, prot) \ + __sanitizer_syscall_pre_impl_mprotect((long long)(addr), (long long)(len), \ + (long long)(prot)) +#define __sanitizer_syscall_post_mprotect(res, addr, len, prot) \ + __sanitizer_syscall_post_impl_mprotect(res, (long long)(addr), \ + (long long)(len), (long long)(prot)) +#define __sanitizer_syscall_pre_madvise(addr, len, behav) \ + __sanitizer_syscall_pre_impl_madvise((long long)(addr), (long long)(len), \ + (long long)(behav)) +#define __sanitizer_syscall_post_madvise(res, addr, len, behav) \ + __sanitizer_syscall_post_impl_madvise(res, (long long)(addr), \ + (long long)(len), (long long)(behav)) +/* syscall 76 has been skipped */ +/* syscall 77 has been skipped */ +#define __sanitizer_syscall_pre_mincore(addr, len, vec) \ + __sanitizer_syscall_pre_impl_mincore((long long)(addr), (long long)(len), \ + (long long)(vec)) +#define __sanitizer_syscall_post_mincore(res, addr, len, vec) \ + __sanitizer_syscall_post_impl_mincore(res, (long long)(addr), \ + (long long)(len), (long long)(vec)) +#define __sanitizer_syscall_pre_getgroups(gidsetsize, gidset) \ + __sanitizer_syscall_pre_impl_getgroups((long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_post_getgroups(res, gidsetsize, gidset) \ + __sanitizer_syscall_post_impl_getgroups(res, (long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_pre_setgroups(gidsetsize, gidset) \ + __sanitizer_syscall_pre_impl_setgroups((long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_post_setgroups(res, gidsetsize, gidset) \ + __sanitizer_syscall_post_impl_setgroups(res, (long long)(gidsetsize), \ + (long long)(gidset)) +#define __sanitizer_syscall_pre_getpgrp() __sanitizer_syscall_pre_impl_getpgrp() +#define __sanitizer_syscall_post_getpgrp(res) \ + __sanitizer_syscall_post_impl_getpgrp(res) +#define __sanitizer_syscall_pre_setpgid(pid, pgid) \ + __sanitizer_syscall_pre_impl_setpgid((long long)(pid), (long long)(pgid)) +#define __sanitizer_syscall_post_setpgid(res, pid, pgid) \ + __sanitizer_syscall_post_impl_setpgid(res, (long long)(pid), \ + (long long)(pgid)) +#define __sanitizer_syscall_pre_compat_50_setitimer(which, itv, oitv) \ + __sanitizer_syscall_pre_impl_compat_50_setitimer( \ + (long long)(which), (long long)(itv), (long long)(oitv)) +#define __sanitizer_syscall_post_compat_50_setitimer(res, which, itv, oitv) \ + __sanitizer_syscall_post_impl_compat_50_setitimer( \ + res, (long long)(which), (long long)(itv), (long long)(oitv)) +#define __sanitizer_syscall_pre_compat_43_owait() \ + __sanitizer_syscall_pre_impl_compat_43_owait() +#define __sanitizer_syscall_post_compat_43_owait(res) \ + __sanitizer_syscall_post_impl_compat_43_owait(res) +#define __sanitizer_syscall_pre_compat_12_oswapon(name) \ + __sanitizer_syscall_pre_impl_compat_12_oswapon((long long)(name)) +#define __sanitizer_syscall_post_compat_12_oswapon(res, name) \ + __sanitizer_syscall_post_impl_compat_12_oswapon(res, (long long)(name)) +#define __sanitizer_syscall_pre_compat_50_getitimer(which, itv) \ + __sanitizer_syscall_pre_impl_compat_50_getitimer((long long)(which), \ + (long long)(itv)) +#define __sanitizer_syscall_post_compat_50_getitimer(res, which, itv) \ + __sanitizer_syscall_post_impl_compat_50_getitimer(res, (long long)(which), \ + (long long)(itv)) +#define __sanitizer_syscall_pre_compat_43_ogethostname(hostname, len) \ + __sanitizer_syscall_pre_impl_compat_43_ogethostname((long long)(hostname), \ + (long long)(len)) +#define __sanitizer_syscall_post_compat_43_ogethostname(res, hostname, len) \ + __sanitizer_syscall_post_impl_compat_43_ogethostname( \ + res, (long long)(hostname), (long long)(len)) +#define __sanitizer_syscall_pre_compat_43_osethostname(hostname, len) \ + __sanitizer_syscall_pre_impl_compat_43_osethostname((long long)(hostname), \ + (long long)(len)) +#define __sanitizer_syscall_post_compat_43_osethostname(res, hostname, len) \ + __sanitizer_syscall_post_impl_compat_43_osethostname( \ + res, (long long)(hostname), (long long)(len)) +#define __sanitizer_syscall_pre_compat_43_ogetdtablesize() \ + __sanitizer_syscall_pre_impl_compat_43_ogetdtablesize() +#define __sanitizer_syscall_post_compat_43_ogetdtablesize(res) \ + __sanitizer_syscall_post_impl_compat_43_ogetdtablesize(res) +#define __sanitizer_syscall_pre_dup2(from, to) \ + __sanitizer_syscall_pre_impl_dup2((long long)(from), (long long)(to)) +#define __sanitizer_syscall_post_dup2(res, from, to) \ + __sanitizer_syscall_post_impl_dup2(res, (long long)(from), (long long)(to)) +/* syscall 91 has been skipped */ +#define __sanitizer_syscall_pre_fcntl(fd, cmd, arg) \ + __sanitizer_syscall_pre_impl_fcntl((long long)(fd), (long long)(cmd), \ + (long long)(arg)) +#define __sanitizer_syscall_post_fcntl(res, fd, cmd, arg) \ + __sanitizer_syscall_post_impl_fcntl(res, (long long)(fd), (long long)(cmd), \ + (long long)(arg)) +#define __sanitizer_syscall_pre_compat_50_select(nd, in, ou, ex, tv) \ + __sanitizer_syscall_pre_impl_compat_50_select( \ + (long long)(nd), (long long)(in), (long long)(ou), (long long)(ex), \ + (long long)(tv)) +#define __sanitizer_syscall_post_compat_50_select(res, nd, in, ou, ex, tv) \ + __sanitizer_syscall_post_impl_compat_50_select( \ + res, (long long)(nd), (long long)(in), (long long)(ou), (long long)(ex), \ + (long long)(tv)) +/* syscall 94 has been skipped */ +#define __sanitizer_syscall_pre_fsync(fd) \ + __sanitizer_syscall_pre_impl_fsync((long long)(fd)) +#define __sanitizer_syscall_post_fsync(res, fd) \ + __sanitizer_syscall_post_impl_fsync(res, (long long)(fd)) +#define __sanitizer_syscall_pre_setpriority(which, who, prio) \ + __sanitizer_syscall_pre_impl_setpriority( \ + (long long)(which), (long long)(who), (long long)(prio)) +#define __sanitizer_syscall_post_setpriority(res, which, who, prio) \ + __sanitizer_syscall_post_impl_setpriority( \ + res, (long long)(which), (long long)(who), (long long)(prio)) +#define __sanitizer_syscall_pre_compat_30_socket(domain, type, protocol) \ + __sanitizer_syscall_pre_impl_compat_30_socket( \ + (long long)(domain), (long long)(type), (long long)(protocol)) +#define __sanitizer_syscall_post_compat_30_socket(res, domain, type, protocol) \ + __sanitizer_syscall_post_impl_compat_30_socket( \ + res, (long long)(domain), (long long)(type), (long long)(protocol)) +#define __sanitizer_syscall_pre_connect(s, name, namelen) \ + __sanitizer_syscall_pre_impl_connect((long long)(s), (long long)(name), \ + (long long)(namelen)) +#define __sanitizer_syscall_post_connect(res, s, name, namelen) \ + __sanitizer_syscall_post_impl_connect( \ + res, (long long)(s), (long long)(name), (long long)(namelen)) +#define __sanitizer_syscall_pre_compat_43_oaccept(s, name, anamelen) \ + __sanitizer_syscall_pre_impl_compat_43_oaccept( \ + (long long)(s), (long long)(name), (long long)(anamelen)) +#define __sanitizer_syscall_post_compat_43_oaccept(res, s, name, anamelen) \ + __sanitizer_syscall_post_impl_compat_43_oaccept( \ + res, (long long)(s), (long long)(name), (long long)(anamelen)) +#define __sanitizer_syscall_pre_getpriority(which, who) \ + __sanitizer_syscall_pre_impl_getpriority((long long)(which), (long long)(who)) +#define __sanitizer_syscall_post_getpriority(res, which, who) \ + __sanitizer_syscall_post_impl_getpriority(res, (long long)(which), \ + (long long)(who)) +#define __sanitizer_syscall_pre_compat_43_osend(s, buf, len, flags) \ + __sanitizer_syscall_pre_impl_compat_43_osend( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_osend(res, s, buf, len, flags) \ + __sanitizer_syscall_post_impl_compat_43_osend( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_compat_43_orecv(s, buf, len, flags) \ + __sanitizer_syscall_pre_impl_compat_43_orecv( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_orecv(res, s, buf, len, flags) \ + __sanitizer_syscall_post_impl_compat_43_orecv( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags)) +#define __sanitizer_syscall_pre_compat_13_sigreturn13(sigcntxp) \ + __sanitizer_syscall_pre_impl_compat_13_sigreturn13((long long)(sigcntxp)) +#define __sanitizer_syscall_post_compat_13_sigreturn13(res, sigcntxp) \ + __sanitizer_syscall_post_impl_compat_13_sigreturn13(res, \ + (long long)(sigcntxp)) +#define __sanitizer_syscall_pre_bind(s, name, namelen) \ + __sanitizer_syscall_pre_impl_bind((long long)(s), (long long)(name), \ + (long long)(namelen)) +#define __sanitizer_syscall_post_bind(res, s, name, namelen) \ + __sanitizer_syscall_post_impl_bind(res, (long long)(s), (long long)(name), \ + (long long)(namelen)) +#define __sanitizer_syscall_pre_setsockopt(s, level, name, val, valsize) \ + __sanitizer_syscall_pre_impl_setsockopt((long long)(s), (long long)(level), \ + (long long)(name), (long long)(val), \ + (long long)(valsize)) +#define __sanitizer_syscall_post_setsockopt(res, s, level, name, val, valsize) \ + __sanitizer_syscall_post_impl_setsockopt( \ + res, (long long)(s), (long long)(level), (long long)(name), \ + (long long)(val), (long long)(valsize)) +#define __sanitizer_syscall_pre_listen(s, backlog) \ + __sanitizer_syscall_pre_impl_listen((long long)(s), (long long)(backlog)) +#define __sanitizer_syscall_post_listen(res, s, backlog) \ + __sanitizer_syscall_post_impl_listen(res, (long long)(s), \ + (long long)(backlog)) +/* syscall 107 has been skipped */ +#define __sanitizer_syscall_pre_compat_43_osigvec(signum, nsv, osv) \ + __sanitizer_syscall_pre_impl_compat_43_osigvec( \ + (long long)(signum), (long long)(nsv), (long long)(osv)) +#define __sanitizer_syscall_post_compat_43_osigvec(res, signum, nsv, osv) \ + __sanitizer_syscall_post_impl_compat_43_osigvec( \ + res, (long long)(signum), (long long)(nsv), (long long)(osv)) +#define __sanitizer_syscall_pre_compat_43_osigblock(mask) \ + __sanitizer_syscall_pre_impl_compat_43_osigblock((long long)(mask)) +#define __sanitizer_syscall_post_compat_43_osigblock(res, mask) \ + __sanitizer_syscall_post_impl_compat_43_osigblock(res, (long long)(mask)) +#define __sanitizer_syscall_pre_compat_43_osigsetmask(mask) \ + __sanitizer_syscall_pre_impl_compat_43_osigsetmask((long long)(mask)) +#define __sanitizer_syscall_post_compat_43_osigsetmask(res, mask) \ + __sanitizer_syscall_post_impl_compat_43_osigsetmask(res, (long long)(mask)) +#define __sanitizer_syscall_pre_compat_13_sigsuspend13(mask) \ + __sanitizer_syscall_pre_impl_compat_13_sigsuspend13((long long)(mask)) +#define __sanitizer_syscall_post_compat_13_sigsuspend13(res, mask) \ + __sanitizer_syscall_post_impl_compat_13_sigsuspend13(res, (long long)(mask)) +#define __sanitizer_syscall_pre_compat_43_osigstack(nss, oss) \ + __sanitizer_syscall_pre_impl_compat_43_osigstack((long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_post_compat_43_osigstack(res, nss, oss) \ + __sanitizer_syscall_post_impl_compat_43_osigstack(res, (long long)(nss), \ + (long long)(oss)) +#define __sanitizer_syscall_pre_compat_43_orecvmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_compat_43_orecvmsg( \ + (long long)(s), (long long)(msg), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_orecvmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_compat_43_orecvmsg( \ + res, (long long)(s), (long long)(msg), (long long)(flags)) +#define __sanitizer_syscall_pre_compat_43_osendmsg(s, msg, flags) \ + __sanitizer_syscall_pre_impl_compat_43_osendmsg( \ + (long long)(s), (long long)(msg), (long long)(flags)) +#define __sanitizer_syscall_post_compat_43_osendmsg(res, s, msg, flags) \ + __sanitizer_syscall_post_impl_compat_43_osendmsg( \ + res, (long long)(s), (long long)(msg), (long long)(flags)) +/* syscall 115 has been skipped */ +#define __sanitizer_syscall_pre_compat_50_gettimeofday(tp, tzp) \ + __sanitizer_syscall_pre_impl_compat_50_gettimeofday((long long)(tp), \ + (long long)(tzp)) +#define __sanitizer_syscall_post_compat_50_gettimeofday(res, tp, tzp) \ + __sanitizer_syscall_post_impl_compat_50_gettimeofday(res, (long long)(tp), \ + (long long)(tzp)) +#define __sanitizer_syscall_pre_compat_50_getrusage(who, rusage) \ + __sanitizer_syscall_pre_impl_compat_50_getrusage((long long)(who), \ + (long long)(rusage)) +#define __sanitizer_syscall_post_compat_50_getrusage(res, who, rusage) \ + __sanitizer_syscall_post_impl_compat_50_getrusage(res, (long long)(who), \ + (long long)(rusage)) +#define __sanitizer_syscall_pre_getsockopt(s, level, name, val, avalsize) \ + __sanitizer_syscall_pre_impl_getsockopt((long long)(s), (long long)(level), \ + (long long)(name), (long long)(val), \ + (long long)(avalsize)) +#define __sanitizer_syscall_post_getsockopt(res, s, level, name, val, \ + avalsize) \ + __sanitizer_syscall_post_impl_getsockopt( \ + res, (long long)(s), (long long)(level), (long long)(name), \ + (long long)(val), (long long)(avalsize)) +/* syscall 119 has been skipped */ +#define __sanitizer_syscall_pre_readv(fd, iovp, iovcnt) \ + __sanitizer_syscall_pre_impl_readv((long long)(fd), (long long)(iovp), \ + (long long)(iovcnt)) +#define __sanitizer_syscall_post_readv(res, fd, iovp, iovcnt) \ + __sanitizer_syscall_post_impl_readv(res, (long long)(fd), (long long)(iovp), \ + (long long)(iovcnt)) +#define __sanitizer_syscall_pre_writev(fd, iovp, iovcnt) \ + __sanitizer_syscall_pre_impl_writev((long long)(fd), (long long)(iovp), \ + (long long)(iovcnt)) +#define __sanitizer_syscall_post_writev(res, fd, iovp, iovcnt) \ + __sanitizer_syscall_post_impl_writev(res, (long long)(fd), \ + (long long)(iovp), (long long)(iovcnt)) +#define __sanitizer_syscall_pre_compat_50_settimeofday(tv, tzp) \ + __sanitizer_syscall_pre_impl_compat_50_settimeofday((long long)(tv), \ + (long long)(tzp)) +#define __sanitizer_syscall_post_compat_50_settimeofday(res, tv, tzp) \ + __sanitizer_syscall_post_impl_compat_50_settimeofday(res, (long long)(tv), \ + (long long)(tzp)) +#define __sanitizer_syscall_pre_fchown(fd, uid, gid) \ + __sanitizer_syscall_pre_impl_fchown((long long)(fd), (long long)(uid), \ + (long long)(gid)) +#define __sanitizer_syscall_post_fchown(res, fd, uid, gid) \ + __sanitizer_syscall_post_impl_fchown(res, (long long)(fd), (long long)(uid), \ + (long long)(gid)) +#define __sanitizer_syscall_pre_fchmod(fd, mode) \ + __sanitizer_syscall_pre_impl_fchmod((long long)(fd), (long long)(mode)) +#define __sanitizer_syscall_post_fchmod(res, fd, mode) \ + __sanitizer_syscall_post_impl_fchmod(res, (long long)(fd), (long long)(mode)) +#define __sanitizer_syscall_pre_compat_43_orecvfrom(s, buf, len, flags, from, \ + fromlenaddr) \ + __sanitizer_syscall_pre_impl_compat_43_orecvfrom( \ + (long long)(s), (long long)(buf), (long long)(len), (long long)(flags), \ + (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_post_compat_43_orecvfrom(res, s, buf, len, flags, \ + from, fromlenaddr) \ + __sanitizer_syscall_post_impl_compat_43_orecvfrom( \ + res, (long long)(s), (long long)(buf), (long long)(len), \ + (long long)(flags), (long long)(from), (long long)(fromlenaddr)) +#define __sanitizer_syscall_pre_setreuid(ruid, euid) \ + __sanitizer_syscall_pre_impl_setreuid((long long)(ruid), (long long)(euid)) +#define __sanitizer_syscall_post_setreuid(res, ruid, euid) \ + __sanitizer_syscall_post_impl_setreuid(res, (long long)(ruid), \ + (long long)(euid)) +#define __sanitizer_syscall_pre_setregid(rgid, egid) \ + __sanitizer_syscall_pre_impl_setregid((long long)(rgid), (long long)(egid)) +#define __sanitizer_syscall_post_setregid(res, rgid, egid) \ + __sanitizer_syscall_post_impl_setregid(res, (long long)(rgid), \ + (long long)(egid)) +#define __sanitizer_syscall_pre_rename(from, to) \ + __sanitizer_syscall_pre_impl_rename((long long)(from), (long long)(to)) +#define __sanitizer_syscall_post_rename(res, from, to) \ + __sanitizer_syscall_post_impl_rename(res, (long long)(from), (long long)(to)) +#define __sanitizer_syscall_pre_compat_43_otruncate(path, length) \ + __sanitizer_syscall_pre_impl_compat_43_otruncate((long long)(path), \ + (long long)(length)) +#define __sanitizer_syscall_post_compat_43_otruncate(res, path, length) \ + __sanitizer_syscall_post_impl_compat_43_otruncate(res, (long long)(path), \ + (long long)(length)) +#define __sanitizer_syscall_pre_compat_43_oftruncate(fd, length) \ + __sanitizer_syscall_pre_impl_compat_43_oftruncate((long long)(fd), \ + (long long)(length)) +#define __sanitizer_syscall_post_compat_43_oftruncate(res, fd, length) \ + __sanitizer_syscall_post_impl_compat_43_oftruncate(res, (long long)(fd), \ + (long long)(length)) +#define __sanitizer_syscall_pre_flock(fd, how) \ + __sanitizer_syscall_pre_impl_flock((long long)(fd), (long long)(how)) +#define __sanitizer_syscall_post_flock(res, fd, how) \ + __sanitizer_syscall_post_impl_flock(res, (long long)(fd), (long long)(how)) +#define __sanitizer_syscall_pre_mkfifo(path, mode) \ + __sanitizer_syscall_pre_impl_mkfifo((long long)(path), (long long)(mode)) +#define __sanitizer_syscall_post_mkfifo(res, path, mode) \ + __sanitizer_syscall_post_impl_mkfifo(res, (long long)(path), \ + (long long)(mode)) +#define __sanitizer_syscall_pre_sendto(s, buf, len, flags, to, tolen) \ + __sanitizer_syscall_pre_impl_sendto((long long)(s), (long long)(buf), \ + (long long)(len), (long long)(flags), \ + (long long)(to), (long long)(tolen)) +#define __sanitizer_syscall_post_sendto(res, s, buf, len, flags, to, tolen) \ + __sanitizer_syscall_post_impl_sendto(res, (long long)(s), (long long)(buf), \ + (long long)(len), (long long)(flags), \ + (long long)(to), (long long)(tolen)) +#define __sanitizer_syscall_pre_shutdown(s, how) \ + __sanitizer_syscall_pre_impl_shutdown((long long)(s), (long long)(how)) +#define __sanitizer_syscall_post_shutdown(res, s, how) \ + __sanitizer_syscall_post_impl_shutdown(res, (long long)(s), (long long)(how)) +#define __sanitizer_syscall_pre_socketpair(domain, type, protocol, rsv) \ + __sanitizer_syscall_pre_impl_socketpair( \ + (long long)(domain), (long long)(type), (long long)(protocol), \ + (long long)(rsv)) +#define __sanitizer_syscall_post_socketpair(res, domain, type, protocol, rsv) \ + __sanitizer_syscall_post_impl_socketpair( \ + res, (long long)(domain), (long long)(type), (long long)(protocol), \ + (long long)(rsv)) +#define __sanitizer_syscall_pre_mkdir(path, mode) \ + __sanitizer_syscall_pre_impl_mkdir((long long)(path), (long long)(mode)) +#define __sanitizer_syscall_post_mkdir(res, path, mode) \ + __sanitizer_syscall_post_impl_mkdir(res, (long long)(path), (long long)(mode)) +#define __sanitizer_syscall_pre_rmdir(path) \ + __sanitizer_syscall_pre_impl_rmdir((long long)(path)) +#define __sanitizer_syscall_post_rmdir(res, path) \ + __sanitizer_syscall_post_impl_rmdir(res, (long long)(path)) +#define __sanitizer_syscall_pre_compat_50_utimes(path, tptr) \ + __sanitizer_syscall_pre_impl_compat_50_utimes((long long)(path), \ + (long long)(tptr)) +#define __sanitizer_syscall_post_compat_50_utimes(res, path, tptr) \ + __sanitizer_syscall_post_impl_compat_50_utimes(res, (long long)(path), \ + (long long)(tptr)) +/* syscall 139 has been skipped */ +#define __sanitizer_syscall_pre_compat_50_adjtime(delta, olddelta) \ + __sanitizer_syscall_pre_impl_compat_50_adjtime((long long)(delta), \ + (long long)(olddelta)) +#define __sanitizer_syscall_post_compat_50_adjtime(res, delta, olddelta) \ + __sanitizer_syscall_post_impl_compat_50_adjtime(res, (long long)(delta), \ + (long long)(olddelta)) +#define __sanitizer_syscall_pre_compat_43_ogetpeername(fdes, asa, alen) \ + __sanitizer_syscall_pre_impl_compat_43_ogetpeername( \ + (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_compat_43_ogetpeername(res, fdes, asa, alen) \ + __sanitizer_syscall_post_impl_compat_43_ogetpeername( \ + res, (long long)(fdes), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_pre_compat_43_ogethostid() \ + __sanitizer_syscall_pre_impl_compat_43_ogethostid() +#define __sanitizer_syscall_post_compat_43_ogethostid(res) \ + __sanitizer_syscall_post_impl_compat_43_ogethostid(res) +#define __sanitizer_syscall_pre_compat_43_osethostid(hostid) \ + __sanitizer_syscall_pre_impl_compat_43_osethostid((long long)(hostid)) +#define __sanitizer_syscall_post_compat_43_osethostid(res, hostid) \ + __sanitizer_syscall_post_impl_compat_43_osethostid(res, (long long)(hostid)) +#define __sanitizer_syscall_pre_compat_43_ogetrlimit(which, rlp) \ + __sanitizer_syscall_pre_impl_compat_43_ogetrlimit((long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_post_compat_43_ogetrlimit(res, which, rlp) \ + __sanitizer_syscall_post_impl_compat_43_ogetrlimit(res, (long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_pre_compat_43_osetrlimit(which, rlp) \ + __sanitizer_syscall_pre_impl_compat_43_osetrlimit((long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_post_compat_43_osetrlimit(res, which, rlp) \ + __sanitizer_syscall_post_impl_compat_43_osetrlimit(res, (long long)(which), \ + (long long)(rlp)) +#define __sanitizer_syscall_pre_compat_43_okillpg(pgid, signum) \ + __sanitizer_syscall_pre_impl_compat_43_okillpg((long long)(pgid), \ + (long long)(signum)) +#define __sanitizer_syscall_post_compat_43_okillpg(res, pgid, signum) \ + __sanitizer_syscall_post_impl_compat_43_okillpg(res, (long long)(pgid), \ + (long long)(signum)) +#define __sanitizer_syscall_pre_setsid() __sanitizer_syscall_pre_impl_setsid() +#define __sanitizer_syscall_post_setsid(res) \ + __sanitizer_syscall_post_impl_setsid(res) +#define __sanitizer_syscall_pre_compat_50_quotactl(path, cmd, uid, arg) \ + __sanitizer_syscall_pre_impl_compat_50_quotactl( \ + (long long)(path), (long long)(cmd), (long long)(uid), (long long)(arg)) +#define __sanitizer_syscall_post_compat_50_quotactl(res, path, cmd, uid, arg) \ + __sanitizer_syscall_post_impl_compat_50_quotactl( \ + res, (long long)(path), (long long)(cmd), (long long)(uid), \ + (long long)(arg)) +#define __sanitizer_syscall_pre_compat_43_oquota() \ + __sanitizer_syscall_pre_impl_compat_43_oquota() +#define __sanitizer_syscall_post_compat_43_oquota(res) \ + __sanitizer_syscall_post_impl_compat_43_oquota(res) +#define __sanitizer_syscall_pre_compat_43_ogetsockname(fdec, asa, alen) \ + __sanitizer_syscall_pre_impl_compat_43_ogetsockname( \ + (long long)(fdec), (long long)(asa), (long long)(alen)) +#define __sanitizer_syscall_post_compat_43_ogetsockname(res, fdec, asa, alen) \ + __sanitizer_syscall_post_impl_compat_43_ogetsockname( \ + res, (long long)(fdec), (long long)(asa), (long long)(alen)) +/* syscall 151 has been skipped */ +/* syscall 152 has been skipped */ +/* syscall 153 has been skipped */ +/* syscall 154 has been skipped */ +#define __sanitizer_syscall_pre_nfssvc(flag, argp) \ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Sat Feb 16 16:01:24 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8469114EC128; Sat, 16 Feb 2019 16:01:24 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 27A7290099; Sat, 16 Feb 2019 16:01:24 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0BA288E0E; Sat, 16 Feb 2019 16:01:24 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GG1No6057347; Sat, 16 Feb 2019 16:01:23 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GG1Nrb057346; Sat, 16 Feb 2019 16:01:23 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902161601.x1GG1Nrb057346@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 16:01:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344214 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 344214 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 27A7290099 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 16:01:24 -0000 Author: avos Date: Sat Feb 16 16:01:23 2019 New Revision: 344214 URL: https://svnweb.freebsd.org/changeset/base/344214 Log: Refresh OptionalObsoleteFiles.inc for MK_PMC: - Add missing /usr/sbin/pmc, pmcformat.h, libpmcstat.h and pmc.haswellxeon.3 to the list. - Correct man page section for pmcstudy.8. - Include recently added libipt and libopencsd for corresponding TARGET_ARCH MFC after: 5 days Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 15:57:29 2019 (r344213) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 16:01:23 2019 (r344214) @@ -7763,8 +7763,76 @@ OLD_FILES+=usr/share/man/man7/pkg.7.gz .if ${MK_PMC} == no OLD_FILES+=usr/bin/pmcstudy +.if ${TARGET_ARCH} == "amd64" +OLD_FILES+=usr/include/libipt/pt_last_ip.h +OLD_FILES+=usr/include/libipt/intel-pt.h +OLD_FILES+=usr/include/libipt/pt_time.h +OLD_FILES+=usr/include/libipt/pt_cpu.h +OLD_FILES+=usr/include/libipt/pt_compiler.h +OLD_DIRS+=usr/include/libipt +.endif +.if ${TARGET_ARCH} == "aarch64" +OLD_FILES+=usr/include/opencsd/c_api/opencsd_c_api.h +OLD_FILES+=usr/include/opencsd/c_api/ocsd_c_api_cust_impl.h +OLD_FILES+=usr/include/opencsd/c_api/ocsd_c_api_types.h +OLD_FILES+=usr/include/opencsd/c_api/ocsd_c_api_cust_fact.h +OLD_FILES+=usr/include/opencsd/c_api/ocsd_c_api_custom.h +OLD_DIRS+=usr/include/opencsd/c_api +OLD_FILES+=usr/include/opencsd/ocsd_if_types.h +OLD_FILES+=usr/include/opencsd/ptm/trc_dcd_mngr_ptm.h +OLD_FILES+=usr/include/opencsd/ptm/trc_pkt_proc_ptm.h +OLD_FILES+=usr/include/opencsd/ptm/trc_cmp_cfg_ptm.h +OLD_FILES+=usr/include/opencsd/ptm/ptm_decoder.h +OLD_FILES+=usr/include/opencsd/ptm/trc_pkt_elem_ptm.h +OLD_FILES+=usr/include/opencsd/ptm/trc_pkt_decode_ptm.h +OLD_FILES+=usr/include/opencsd/ptm/trc_pkt_types_ptm.h +OLD_DIRS+=usr/include/opencsd/ptm +OLD_FILES+=usr/include/opencsd/trc_gen_elem_types.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_pkt_proc_etmv4.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_etmv4_stack_elem.h +OLD_FILES+=usr/include/opencsd/etmv4/etmv4_decoder.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_pkt_elem_etmv4i.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_dcd_mngr_etmv4i.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_pkt_types_etmv4.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_pkt_elem_etmv4d.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_pkt_decode_etmv4i.h +OLD_FILES+=usr/include/opencsd/etmv4/trc_cmp_cfg_etmv4.h +OLD_DIRS+=usr/include/opencsd/etmv4 +OLD_FILES+=usr/include/opencsd/etmv3/trc_pkt_decode_etmv3.h +OLD_FILES+=usr/include/opencsd/etmv3/trc_cmp_cfg_etmv3.h +OLD_FILES+=usr/include/opencsd/etmv3/etmv3_decoder.h +OLD_FILES+=usr/include/opencsd/etmv3/trc_pkt_proc_etmv3.h +OLD_FILES+=usr/include/opencsd/etmv3/trc_pkt_elem_etmv3.h +OLD_FILES+=usr/include/opencsd/etmv3/trc_pkt_types_etmv3.h +OLD_FILES+=usr/include/opencsd/etmv3/trc_dcd_mngr_etmv3.h +OLD_DIRS+=usr/include/opencsd/etmv3 +OLD_FILES+=usr/include/opencsd/trc_pkt_types.h +OLD_FILES+=usr/include/opencsd/stm/trc_pkt_proc_stm.h +OLD_FILES+=usr/include/opencsd/stm/trc_pkt_types_stm.h +OLD_FILES+=usr/include/opencsd/stm/stm_decoder.h +OLD_FILES+=usr/include/opencsd/stm/trc_dcd_mngr_stm.h +OLD_FILES+=usr/include/opencsd/stm/trc_cmp_cfg_stm.h +OLD_FILES+=usr/include/opencsd/stm/trc_pkt_elem_stm.h +OLD_FILES+=usr/include/opencsd/stm/trc_pkt_decode_stm.h +OLD_DIRS+=usr/include/opencsd/stm +OLD_DIRS+=usr/include/opencsd +.endif OLD_FILES+=usr/include/pmc.h OLD_FILES+=usr/include/pmclog.h +OLD_FILES+=usr/include/pmcformat.h +OLD_FILES+=usr/include/libpmcstat.h +.if ${TARGET_ARCH} == "amd64" +OLD_FILES+=usr/lib/libipt.a +OLD_FILES+=usr/lib/libipt.so +OLD_LIBS+=lib/libipt.so.0 +OLD_FILES+=usr/lib/libipt_p.a +.endif +.if ${TARGET_ARCH} == "aarch64" +OLD_FILES+=usr/lib/libopencsd.a +OLD_FILES+=usr/lib/libopencsd.so +OLD_LIBS+=lib/libopencsd.so.0 +OLD_FILES+=usr/lib/libopencsd_p.a +.endif OLD_FILES+=usr/lib/libpmc.a OLD_FILES+=usr/lib/libpmc.so OLD_LIBS+=usr/lib/libpmc.so.5 @@ -7773,10 +7841,10 @@ OLD_FILES+=usr/lib32/libpmc.a OLD_FILES+=usr/lib32/libpmc.so OLD_LIBS+=usr/lib32/libpmc.so.5 OLD_FILES+=usr/lib32/libpmc_p.a +OLD_FILES+=usr/sbin/pmc OLD_FILES+=usr/sbin/pmcannotate OLD_FILES+=usr/sbin/pmccontrol OLD_FILES+=usr/sbin/pmcstat -OLD_FILES+=usr/share/man/man1/pmcstudy.1.gz OLD_FILES+=usr/share/man/man3/pmc.3.gz OLD_FILES+=usr/share/man/man3/pmc.atom.3.gz OLD_FILES+=usr/share/man/man3/pmc.atomsilvermont.3.gz @@ -7786,6 +7854,7 @@ OLD_FILES+=usr/share/man/man3/pmc.corei7.3.gz OLD_FILES+=usr/share/man/man3/pmc.corei7uc.3.gz OLD_FILES+=usr/share/man/man3/pmc.haswell.3.gz OLD_FILES+=usr/share/man/man3/pmc.haswelluc.3.gz +OLD_FILES+=usr/share/man/man3/pmc.haswellxeon.3.gz OLD_FILES+=usr/share/man/man3/pmc.iaf.3.gz OLD_FILES+=usr/share/man/man3/pmc.ivybridge.3.gz OLD_FILES+=usr/share/man/man3/pmc.ivybridgexeon.3.gz @@ -7845,6 +7914,7 @@ OLD_FILES+=usr/share/man/man3/pmclog_read.3.gz OLD_FILES+=usr/share/man/man8/pmcannotate.8.gz OLD_FILES+=usr/share/man/man8/pmccontrol.8.gz OLD_FILES+=usr/share/man/man8/pmcstat.8.gz +OLD_FILES+=usr/share/man/man8/pmcstudy.8.gz .endif .if ${MK_PORTSNAP} == no From owner-svn-src-all@freebsd.org Sat Feb 16 15:58:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9159A14EBFCD; Sat, 16 Feb 2019 15:58:55 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail106.syd.optusnet.com.au (mail106.syd.optusnet.com.au [211.29.132.42]) by mx1.freebsd.org (Postfix) with ESMTP id D05078FE70; Sat, 16 Feb 2019 15:58:54 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from [192.168.0.102] (c110-21-101-228.carlnfd1.nsw.optusnet.com.au [110.21.101.228]) by mail106.syd.optusnet.com.au (Postfix) with ESMTPS id AD2133D6A25; Sun, 17 Feb 2019 02:58:44 +1100 (AEDT) Date: Sun, 17 Feb 2019 02:58:43 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Gleb Smirnoff cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r344188 - in head: lib/libc/sys sys/vm In-Reply-To: <201902152336.x1FNaNUo039321@repo.freebsd.org> Message-ID: <20190217011341.S833@besplex.bde.org> References: <201902152336.x1FNaNUo039321@repo.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=UJetJGXy c=1 sm=1 tr=0 a=PalzARQSbocsUSjMRkwAPg==:117 a=PalzARQSbocsUSjMRkwAPg==:17 a=kj9zAlcOel0A:10 a=rIghn2sLRP4XmOax0QwA:9 a=ndpOQZv3nH62j9tc:21 a=Py1cOSI7qLZDITEX:21 a=CjuIK1q_8ugA:10 X-Rspamd-Queue-Id: D05078FE70 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.96 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.96)[-0.961,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 15:58:55 -0000 On Fri, 15 Feb 2019, Gleb Smirnoff wrote: > Log: > For 32-bit machines rollback the default number of vnode pager pbufs > back to the lever before r343030. For 64-bit machines reduce it slightly, > too. Together with r343030 I bumped the limit up to the value we use at > Netflix to serve 100 Gbit/s of sendfile traffic, and it probably isn't a > good default. This is only a rollback for the vnode pager pbufs sub-pool. Total resource usage (preallocated kva and maximum on RAM that can be mapped into this kva) is still about 5/2 times higher than before in my configuration. It would be 7/2 times higher if I configured fuse and smbfs. r343030 changed the allocation methods in all subsystems except out-of-tree modules, and broke at least the KBI for these modules (*), so it is easy to find the full expansion except for these modules by looking at the diffs (I found the use in fuse and smbfs by grepping some subtrees). Also, the user's and vfs_bio's resource limit is still broken by expanding it by this factor of 5/2 or more. In the old allocation method, there was a single pool of pbufs of size nswbuf which normally has its normal limiting value of 256, where this magic 256 is hard-coded in vfs_bio.c, but if the user somehow knows about this and the tunable kern.nswbuf, then it can be overridden. The limit of 256 was documented in pbuf(9), but the tunable was never documented AFAIK. The variable nswbuf for this was documented in pbuf(9). The 256 entries are shared between any number of subsystems. Most subsystems limited themselves to nswbuf/2 entries, and the man page recommended this. This gave overcommit by a factor of about 5/2 in my configuration (there are 7 subsystems, but some of these have a smaller limit). Now there each subsystem has a separate pool. The size of the sub-pool is still usually nswbuf / 2. This gives overallocation by a factor of about 5/2 in my configuration. The overcommit only causes minor performance problems. 2 subsystems might use all of the buffers, and then all all the other subsystems have to wait, but it is rare for even 2 subsystems to be under load at the same time. It is more of a problem that the limit is too small for a single subsystem. The overallocation gives worse problems such as crashing at boot time or a little later when the user or auto-tuning has maxed out nswbuf. > Provide a loader tunable to change vnode pager pbufs count. Document it. This only controls 1 of the subsystems. It is too much to have a sysctl for each of the subsystems. Some users don't even know about the global sysctl kern.nswbuf that was enough for sendfile on larger (mostly 64-bit) systems. Just increase nswbuf a lot. This wastes kva for most of the subsystems, but kva is cheap if the address space is large. Now the user has to know even more arcane details to limit the kva, and it is impossible to recover the old behaviour. To get the old limit, kern.nswbuf must be set to (256 * 2 / 5) in my configuration, but that significantly decreases the number of buffers for each subsystem. Users might already have set kern.nswbuf to a large value. Since most subsystems used to use half of that many buffers, the wastage from setting it large for the benefit of 1 subsystem was at most a factor of 2. Now the limit can't be increased as much without running out of kva, and the safe increase is more arcane and machine-dependent (starting with the undocumented default being 8 times higher for 64-bit systems, but only for 1 of the subsystems). (*) The KBI wa getpbuf(), trypbuf() and relpbuf(), and this was very easy to (ab)use. Any number of subsystems can try to use the shared pool. This is abused because a small fixed-size pool can't support an unbounded number of subsystems. Now getpbuf() doesn't exist (but is still referred to in swap_pager.c), and there is no man page for the new allocation method. The boot-time preallocation can't work for modules loaded later, and leaves unusable allocations for modules unloaded later. Modules apparently have to do their own preallocation. They should probably not use pbufs at all, and do their own allocations too. It is now clear that there has always been a problem with the default limits. The magic number of 256 hasn't been changed since before FreeBSD-1. There were no pbufs in FreeBSD-1, but there was nswbuf and it dynamically tuned but limited to 256. I think 256 meant "ininity" in 1992, but it wasn't large enough even then. Before r343030 it was even smaller, since there are more subsystems then than in FreeBSD-1. nswbuf needs to be very large to support slow devices. By the very nature of slow devices, the i/o queue tends to fill up with buffers for the slowest device, and if there is a buffer shortage then everything else has to wait for this device to free the buffers. Slowness is relative. In FreeBSD-1, floppy disk devices were still in use and were especially slow. Now hard disks are slow relative to fast SSDs. But the number of buffers was unchanged. It is still essentially unchanged except for vn pager pbufs. The hard disks can complete 128 i/o's for a full queue much faster than a floppy disk, so the relative slowness might be similar, but now there are more subsystems and some systems have many more disks. I have seen this queueing problem before mainly for DVD disks, but thought it was more in the buffer cache than in pbufs. Testing this by increasing and decreasing kern.nswbuf didn't show much change in makeworld benchmarks. They still have idle time with large variance, as if something waits for buffers and doesn't get woken up promptly. Only clpbufs are used much. The counts now available in uma statistics show the strange behaviour that the free count rarely reaches the limit, but with larger limits the free count goes above smaller limits. Bruce From owner-svn-src-all@freebsd.org Sat Feb 16 16:17:47 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 978A314ECD7B; Sat, 16 Feb 2019 16:17:47 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3996190BDD; Sat, 16 Feb 2019 16:17:47 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 25E249021; Sat, 16 Feb 2019 16:17:47 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GGHkZu064094; Sat, 16 Feb 2019 16:17:46 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GGHkmr064093; Sat, 16 Feb 2019 16:17:46 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902161617.x1GGHkmr064093@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 16:17:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344215 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 344215 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3996190BDD X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 16:17:47 -0000 Author: avos Date: Sat Feb 16 16:17:46 2019 New Revision: 344215 URL: https://svnweb.freebsd.org/changeset/base/344215 Log: Remove corresponding lib32/ files when WITHOUT_OFED=1 is set MFC after: 5 days MFC with: 344207 Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 16:01:23 2019 (r344214) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 16:17:46 2019 (r344215) @@ -7407,6 +7407,56 @@ OLD_FILES+=usr/lib/librdmacm.a OLD_FILES+=usr/lib/librdmacm.so OLD_LIBS+=usr/lib/librdmacm.so.1 OLD_FILES+=usr/lib/librdmacm_p.a +.if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "powerpc64" +OLD_FILES+=usr/lib32/libcxgb4.a +OLD_FILES+=usr/lib32/libcxgb4.so +OLD_LIBS+=usr/lib32/libcxgb4.so.1 +OLD_FILES+=usr/lib32/libcxgb4_p.a +OLD_FILES+=usr/lib32/libibcm.a +OLD_FILES+=usr/lib32/libibcm.so +OLD_LIBS+=usr/lib32/libibcm.so.1 +OLD_FILES+=usr/lib32/libibcm_p.a +OLD_FILES+=usr/lib32/libibmad.a +OLD_FILES+=usr/lib32/libibmad.so +OLD_LIBS+=usr/lib32/libibmad.so.5 +OLD_FILES+=usr/lib32/libibmad_p.a +OLD_FILES+=usr/lib32/libibnetdisc.a +OLD_FILES+=usr/lib32/libibnetdisc.so +OLD_LIBS+=usr/lib32/libibnetdisc.so.5 +OLD_FILES+=usr/lib32/libibnetdisc_p.a +OLD_FILES+=usr/lib32/libibumad.a +OLD_FILES+=usr/lib32/libibumad.so +OLD_LIBS+=usr/lib32/libibumad.so.1 +OLD_FILES+=usr/lib32/libibumad_p.a +OLD_FILES+=usr/lib32/libibverbs.a +OLD_FILES+=usr/lib32/libibverbs.so +OLD_LIBS+=usr/lib32/libibverbs.so.1 +OLD_FILES+=usr/lib32/libibverbs_p.a +OLD_FILES+=usr/lib32/libmlx4.a +OLD_FILES+=usr/lib32/libmlx4.so +OLD_LIBS+=usr/lib32/libmlx4.so.1 +OLD_FILES+=usr/lib32/libmlx4_p.a +OLD_FILES+=usr/lib32/libmlx5.a +OLD_FILES+=usr/lib32/libmlx5.so +OLD_LIBS+=usr/lib32/libmlx5.so.1 +OLD_FILES+=usr/lib32/libmlx5_p.a +OLD_FILES+=usr/lib32/libopensm.a +OLD_FILES+=usr/lib32/libopensm.so +OLD_LIBS+=usr/lib32/libopensm.so.5 +OLD_FILES+=usr/lib32/libopensm_p.a +OLD_FILES+=usr/lib32/libosmcomp.a +OLD_FILES+=usr/lib32/libosmcomp.so +OLD_LIBS+=usr/lib32/libosmcomp.so.3 +OLD_FILES+=usr/lib32/libosmcomp_p.a +OLD_FILES+=usr/lib32/libosmvendor.a +OLD_FILES+=usr/lib32/libosmvendor.so +OLD_LIBS+=usr/lib32/libosmvendor.so.4 +OLD_FILES+=usr/lib32/libosmvendor_p.a +OLD_FILES+=usr/lib32/librdmacm.a +OLD_FILES+=usr/lib32/librdmacm.so +OLD_LIBS+=usr/lib32/librdmacm.so.1 +OLD_FILES+=usr/lib32/librdmacm_p.a +.endif OLD_FILES+=usr/share/man/man1/ibv_asyncwatch.1.gz OLD_FILES+=usr/share/man/man1/ibv_devices.1.gz OLD_FILES+=usr/share/man/man1/ibv_devinfo.1.gz From owner-svn-src-all@freebsd.org Sat Feb 16 16:34:25 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6AFFC14ED7EA; Sat, 16 Feb 2019 16:34:25 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E7EE69162B; Sat, 16 Feb 2019 16:34:23 +0000 (UTC) (envelope-from avos@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D25B3936A; Sat, 16 Feb 2019 16:34:23 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GGYNUB074653; Sat, 16 Feb 2019 16:34:23 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GGYNdl074652; Sat, 16 Feb 2019 16:34:23 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201902161634.x1GGYNdl074652@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Sat, 16 Feb 2019 16:34:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344216 - head/tools/build/mk X-SVN-Group: head X-SVN-Commit-Author: avos X-SVN-Commit-Paths: head/tools/build/mk X-SVN-Commit-Revision: 344216 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E7EE69162B X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.952,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 16:34:25 -0000 Author: avos Date: Sat Feb 16 16:34:23 2019 New Revision: 344216 URL: https://svnweb.freebsd.org/changeset/base/344216 Log: Few more corrections to WITHOUT_OFED=1 make delete-old removal: - Drop profile libraries; MK_PROFILE=no is set in all Makefile's. - Correct library path to libmlx5.so.1 and libibverbs.so.1 MFC after: 5 days MFC with: 344207 Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 16:17:46 2019 (r344215) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Sat Feb 16 16:34:23 2019 (r344216) @@ -7362,100 +7362,76 @@ OLD_DIRS+=usr/include/infiniband OLD_FILES+=usr/lib/libcxgb4.a OLD_FILES+=usr/lib/libcxgb4.so OLD_LIBS+=usr/lib/libcxgb4.so.1 -OLD_FILES+=usr/lib/libcxgb4_p.a OLD_FILES+=usr/lib/libibcm.a OLD_FILES+=usr/lib/libibcm.so OLD_LIBS+=usr/lib/libibcm.so.1 -OLD_FILES+=usr/lib/libibcm_p.a OLD_FILES+=usr/lib/libibmad.a OLD_FILES+=usr/lib/libibmad.so OLD_LIBS+=usr/lib/libibmad.so.5 -OLD_FILES+=usr/lib/libibmad_p.a OLD_FILES+=usr/lib/libibnetdisc.a OLD_FILES+=usr/lib/libibnetdisc.so OLD_LIBS+=usr/lib/libibnetdisc.so.5 -OLD_FILES+=usr/lib/libibnetdisc_p.a OLD_FILES+=usr/lib/libibumad.a OLD_FILES+=usr/lib/libibumad.so OLD_LIBS+=usr/lib/libibumad.so.1 -OLD_FILES+=usr/lib/libibumad_p.a OLD_FILES+=usr/lib/libibverbs.a OLD_FILES+=usr/lib/libibverbs.so -OLD_LIBS+=usr/lib/libibverbs.so.1 -OLD_FILES+=usr/lib/libibverbs_p.a +OLD_LIBS+=lib/libibverbs.so.1 OLD_FILES+=usr/lib/libmlx4.a OLD_FILES+=usr/lib/libmlx4.so OLD_LIBS+=usr/lib/libmlx4.so.1 -OLD_FILES+=usr/lib/libmlx4_p.a OLD_FILES+=usr/lib/libmlx5.a OLD_FILES+=usr/lib/libmlx5.so -OLD_LIBS+=usr/lib/libmlx5.so.1 -OLD_FILES+=usr/lib/libmlx5_p.a +OLD_LIBS+=lib/libmlx5.so.1 OLD_FILES+=usr/lib/libopensm.a OLD_FILES+=usr/lib/libopensm.so OLD_LIBS+=usr/lib/libopensm.so.5 -OLD_FILES+=usr/lib/libopensm_p.a OLD_FILES+=usr/lib/libosmcomp.a OLD_FILES+=usr/lib/libosmcomp.so OLD_LIBS+=usr/lib/libosmcomp.so.3 -OLD_FILES+=usr/lib/libosmcomp_p.a OLD_FILES+=usr/lib/libosmvendor.a OLD_FILES+=usr/lib/libosmvendor.so OLD_LIBS+=usr/lib/libosmvendor.so.4 -OLD_FILES+=usr/lib/libosmvendor_p.a OLD_FILES+=usr/lib/librdmacm.a OLD_FILES+=usr/lib/librdmacm.so OLD_LIBS+=usr/lib/librdmacm.so.1 -OLD_FILES+=usr/lib/librdmacm_p.a .if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "powerpc64" OLD_FILES+=usr/lib32/libcxgb4.a OLD_FILES+=usr/lib32/libcxgb4.so OLD_LIBS+=usr/lib32/libcxgb4.so.1 -OLD_FILES+=usr/lib32/libcxgb4_p.a OLD_FILES+=usr/lib32/libibcm.a OLD_FILES+=usr/lib32/libibcm.so OLD_LIBS+=usr/lib32/libibcm.so.1 -OLD_FILES+=usr/lib32/libibcm_p.a OLD_FILES+=usr/lib32/libibmad.a OLD_FILES+=usr/lib32/libibmad.so OLD_LIBS+=usr/lib32/libibmad.so.5 -OLD_FILES+=usr/lib32/libibmad_p.a OLD_FILES+=usr/lib32/libibnetdisc.a OLD_FILES+=usr/lib32/libibnetdisc.so OLD_LIBS+=usr/lib32/libibnetdisc.so.5 -OLD_FILES+=usr/lib32/libibnetdisc_p.a OLD_FILES+=usr/lib32/libibumad.a OLD_FILES+=usr/lib32/libibumad.so OLD_LIBS+=usr/lib32/libibumad.so.1 -OLD_FILES+=usr/lib32/libibumad_p.a OLD_FILES+=usr/lib32/libibverbs.a OLD_FILES+=usr/lib32/libibverbs.so OLD_LIBS+=usr/lib32/libibverbs.so.1 -OLD_FILES+=usr/lib32/libibverbs_p.a OLD_FILES+=usr/lib32/libmlx4.a OLD_FILES+=usr/lib32/libmlx4.so OLD_LIBS+=usr/lib32/libmlx4.so.1 -OLD_FILES+=usr/lib32/libmlx4_p.a OLD_FILES+=usr/lib32/libmlx5.a OLD_FILES+=usr/lib32/libmlx5.so OLD_LIBS+=usr/lib32/libmlx5.so.1 -OLD_FILES+=usr/lib32/libmlx5_p.a OLD_FILES+=usr/lib32/libopensm.a OLD_FILES+=usr/lib32/libopensm.so OLD_LIBS+=usr/lib32/libopensm.so.5 -OLD_FILES+=usr/lib32/libopensm_p.a OLD_FILES+=usr/lib32/libosmcomp.a OLD_FILES+=usr/lib32/libosmcomp.so OLD_LIBS+=usr/lib32/libosmcomp.so.3 -OLD_FILES+=usr/lib32/libosmcomp_p.a OLD_FILES+=usr/lib32/libosmvendor.a OLD_FILES+=usr/lib32/libosmvendor.so OLD_LIBS+=usr/lib32/libosmvendor.so.4 -OLD_FILES+=usr/lib32/libosmvendor_p.a OLD_FILES+=usr/lib32/librdmacm.a OLD_FILES+=usr/lib32/librdmacm.so OLD_LIBS+=usr/lib32/librdmacm.so.1 -OLD_FILES+=usr/lib32/librdmacm_p.a .endif OLD_FILES+=usr/share/man/man1/ibv_asyncwatch.1.gz OLD_FILES+=usr/share/man/man1/ibv_devices.1.gz From owner-svn-src-all@freebsd.org Sat Feb 16 17:08:37 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ED93B14EE9A5 for ; Sat, 16 Feb 2019 17:08:36 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound2m.ore.mailhop.org (outbound2m.ore.mailhop.org [54.149.155.156]) (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 6C7C2927F5 for ; Sat, 16 Feb 2019 17:08:36 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1550336852; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=henHUf6VFkdwnmr76G8G50qRCuAHNwRkSw2kaRcYK0yCnQbBH8SDijkiAq1XEYu/7Na+ORHE4Ckwr F9j5ikuLyklgQ8cmAxRrlUYCice8+UR9oJZnAxjG28La/8hmOsnuXpDVV0OCGZmKBwGGedtjKbd9WT x9p5kU+Eep6Z2X2/Jiqh/V9PipeK34TeMx7wzyHi/OSs8mrJ7Yj0R9jY+4L2CcIXqGF4ecSFcTzl1N iuhugetEbKy8OEjW35P8/SUCm6kRlYuWUMxqxr+CtEfiPbrh2gKxNhy6WQVfuHEoH9cuPl7Hq1MFEY ZXxfXut7pbOGKlRdSgK6MXS1+Fi1m1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:cc:to:from:subject:message-id:dkim-signature:from; bh=YGyRdnV7WGIpWjQsL1LIzz+eccunxi3pgOy7dO5VpB0=; b=OVwK+VDR3z+1RWkO0O426kuB6SPoScySQbkN1shGdF59YKtHJiR3I7lr5t6+cxwlRanBiWM8dYbFN /5XIaHblJO4TbFCPvvO0LnPEtEE31CXfNyeqzzNcUvhcdNWDCWbWO2sef/k4cJ1KbfjmGwNyL5EgFx YiInA+RKLKeJ2OhTpR92T7ag6oTnn8CzkQntksBZGyZBBF8Q/tcLNwxASuj6/dqCyk1uWpjh0VmQIn xsZ7l500XvJfWIO4FDtf5s0O5ayEJCdPUqQ1mxbGlVN8qVMRJXlo+dweu4320Xd7n8PVkff3TVGdK+ 2SMgQcMoi9zMQdcJ46QDFdvG0ZHhrmA== ARC-Authentication-Results: i=1; outbound4.ore.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:cc:to:from:subject:message-id:from; bh=YGyRdnV7WGIpWjQsL1LIzz+eccunxi3pgOy7dO5VpB0=; b=uXracKMj92CKtK0ddv27+US78a3mHEH22S+A13Yk+2SEj/sNhGXZ5xzFS51V6dRlNi0N02fiVMgX2 W+FBcDAG9xnDir2T+QIdEo05jP2vnliXe9pGq6s1z7yFNeZ0AG9Cq2EQ517QaPj7xYdvePwRm4Nmo7 dfXvFve/JNSAgMtSQSNWQ9YQAYFiPEJMBXaLHFSVXCcTrGfDzK3D9KJB61lvWD7/pg3xb9s82Glxvd Yz2AQVWj1OegiQt4U8HR29J9fY5ARhIhgIf/x7+umLYRmidZRBNyLpM3YVcg8aoUrfJ9kr1g88g8eN ruX8TdeMnYvnSjJ/6Wn4491BH+Jo86Q== X-MHO-RoutePath: aGlwcGll X-MHO-User: 57cb0605-320d-11e9-befd-af03bedce89f X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [67.177.211.60]) by outbound4.ore.mailhop.org (Halon) with ESMTPSA id 57cb0605-320d-11e9-befd-af03bedce89f; Sat, 16 Feb 2019 17:07:31 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id x1GH8WrC072882; Sat, 16 Feb 2019 10:08:32 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <259b30371291398891b48c38fc8231e7422f47e4.camel@freebsd.org> Subject: Re: svn commit: r344188 - in head: lib/libc/sys sys/vm From: Ian Lepore To: Bruce Evans , Gleb Smirnoff Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Date: Sat, 16 Feb 2019 10:08:32 -0700 In-Reply-To: <20190217011341.S833@besplex.bde.org> References: <201902152336.x1FNaNUo039321@repo.freebsd.org> <20190217011341.S833@besplex.bde.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 6C7C2927F5 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.98 / 15.00]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.98)[-0.983,0]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 17:08:37 -0000 On Sun, 2019-02-17 at 02:58 +1100, Bruce Evans wrote: > Slowness is relative. In FreeBSD-1, floppy disk devices were still in > use and were especially slow. Now hard disks are slow relative to fast > SSDs. But the number of buffers was unchanged. It is still essentially > unchanged except for vn pager pbufs. The hard disks can complete 128 > i/o's for a full queue much faster than a floppy disk, so the relative > slowness might be similar, but now there are more subsystems and some > systems have many more disks. The modern replacement for a floppy disk in this regard is an sdcard. When doing large numbers of random writes, such as untarring a snapshot of rootfs to a ufs filesystem on sdcard, gstat will show ms/w values anywhere from 30,000 to 90,000 depending on the card. It stays that way throughout the operation, and IO to all other disks on the system essentially comes to a standstill. This is true whether the card is in a native sdhci controller or a usb-attached multiformat reader/burner. -- Ian From owner-svn-src-all@freebsd.org Sat Feb 16 18:14:55 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E104014F0781 for ; Sat, 16 Feb 2019 18:14:54 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qt1-x841.google.com (mail-qt1-x841.google.com [IPv6:2607:f8b0:4864:20::841]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 75BDA94FAD for ; Sat, 16 Feb 2019 18:14:54 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qt1-x841.google.com with SMTP id j36so14698676qta.7 for ; Sat, 16 Feb 2019 10:14:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=cBPFuAXCQazm2hk/+9iVwqxJG9guIwkqXTeMazMsowk=; b=l7eElwIZkg6TCBYqhVLhFDi8Cm4FXsXNYev5YCSViRXR8Zk/bJt+b3f/ir04EDIlOh dGFq1xM545Eu5NEsQZChwFUxINOhG+zGNiHNbxeGMUCN3vdj91o++E4ztKAEdzp762e/ M6w8WRNLcxCCGvAxofBLF82waaJ/LD8LgEnKlfvnomIRit3qNs/tYCAAPQy8zw8e+621 lsnzwYePTm2MgyS36jQKfj8kxZ9ZDUnPVP/l5At2ENap5LQD2jBGUSd+Q3OVhKmWzmfi Rlbu/6rPAPsZlsWoSbpcSw9pu7aOeajMLZfAolBESbthrYjj0/3VqkU8nx2Dgvwhz+Et ItcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=cBPFuAXCQazm2hk/+9iVwqxJG9guIwkqXTeMazMsowk=; b=PXPGIZ9+28BsvpNDqe7yOzBTEllipOvBLrSkCNbTAa5ErRWV4LtGu+pYgzusEDHet4 tXghxApqL2KKGy8kWoAgmoi9IrJDMGRl99esrZc/Tt9DGLUzpnbfeR7T625+99+TRmkC ivgr/xSTCM5vuXANmT0Vi8gUY5OPygzDIwXTA8wYHD84/q4xMcjZmR7k/JhaCbf5H4Df KFJB1lsa+154z3zJgvjYjfV+TPaP1/axe4Nf8aLNxH38vZnqkMNPaveuL7Ee5Z/aI71F g48t2X+fLVwVaF4gyrevms5n4ztZ7l1YyU8d6T6UVHFEH41eFtd3L+VabB+SuQY/RHxL dUuA== X-Gm-Message-State: AHQUAubbgTi7l8vf+AljoWm17rfUxs3j/dg0xwngc/weMpfhc1NgN2qj eff+PVJfvo76M1iGwBSqZL/uy1C4Hfi5JRKGpHjIfQ== X-Google-Smtp-Source: AHgI3IbwGt8zFq//Tq8MFyoVEeLER0GqnagUNKZzTIbBIjzZKgN5b6nYHIo7xPZZs+b+eJK+rAjg/N6u/s1wZsxuqU8= X-Received: by 2002:ac8:35f8:: with SMTP id l53mr12666526qtb.15.1550340892619; Sat, 16 Feb 2019 10:14:52 -0800 (PST) MIME-Version: 1.0 References: <201902152336.x1FNaNUo039321@repo.freebsd.org> <20190217011341.S833@besplex.bde.org> <259b30371291398891b48c38fc8231e7422f47e4.camel@freebsd.org> In-Reply-To: <259b30371291398891b48c38fc8231e7422f47e4.camel@freebsd.org> From: Warner Losh Date: Sat, 16 Feb 2019 11:14:40 -0700 Message-ID: Subject: Re: svn commit: r344188 - in head: lib/libc/sys sys/vm To: Ian Lepore Cc: Bruce Evans , Gleb Smirnoff , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 75BDA94FAD X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.97 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.969,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 18:14:55 -0000 On Sat, Feb 16, 2019, 10:08 AM Ian Lepore On Sun, 2019-02-17 at 02:58 +1100, Bruce Evans wrote: > > Slowness is relative. In FreeBSD-1, floppy disk devices were still in > > use and were especially slow. Now hard disks are slow relative to fast > > SSDs. But the number of buffers was unchanged. It is still essentially > > unchanged except for vn pager pbufs. The hard disks can complete 128 > > i/o's for a full queue much faster than a floppy disk, so the relative > > slowness might be similar, but now there are more subsystems and some > > systems have many more disks. > > The modern replacement for a floppy disk in this regard is an sdcard. > When doing large numbers of random writes, such as untarring a snapshot > of rootfs to a ufs filesystem on sdcard, gstat will show ms/w values > anywhere from 30,000 to 90,000 depending on the card. It stays that way > throughout the operation, and IO to all other disks on the system > essentially comes to a standstill. This is true whether the card is in > a native sdhci controller or a usb-attached multiformat reader/burner. > NAND FTL quality determines a lot of this. There are some things that can be done to make it better, but still not great. SD cards have crap FTLs, so are the worst. We should be smarter about how the upper layers schedule the IO down the stack. The way we do it now is turned for a narrow range of workloads and the SD card case is a significant outlier. IO times north of a second tend to hit the pathetic runningbuf limits which slows down writes to all devices, which is another factor in play in the random io sdcard case. I've done some incomplete work to help runningbufs that helps. Maybe it helps more now that the underlying allocation dynamics have shifted. Warner > From owner-svn-src-all@freebsd.org Sat Feb 16 19:49:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 25C1014F2C19; Sat, 16 Feb 2019 19:49:14 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BF33868369; Sat, 16 Feb 2019 19:49:13 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AFD9CB36B; Sat, 16 Feb 2019 19:49:13 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GJnDP7076046; Sat, 16 Feb 2019 19:49:13 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GJnDEa076045; Sat, 16 Feb 2019 19:49:13 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902161949.x1GJnDEa076045@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 16 Feb 2019 19:49:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r344217 - in stable: 11/contrib/llvm/lib/MC 12/contrib/llvm/lib/MC X-SVN-Group: stable-11 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable: 11/contrib/llvm/lib/MC 12/contrib/llvm/lib/MC X-SVN-Commit-Revision: 344217 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: BF33868369 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 19:49:14 -0000 Author: dim Date: Sat Feb 16 19:49:12 2019 New Revision: 344217 URL: https://svnweb.freebsd.org/changeset/base/344217 Log: MFC r344112: Pull in r353907 from upstream llvm trunk (by Reid Kleckner): [MC] Make symbol version errors non-fatal We stil don't have a source location, which is pretty lame, but at least we won't tell the user to file a clang bug report anymore. Fixes PR40712 This will make errors for symbols with @@ versions that are not defined non-fatal. For example: void f(void) { __asm__(".symver foo,bar@@baz"); } will now result in: error: versioned symbol bar@@baz must be defined instead of clang crashing with a diagnostic report. PR: 234671 Upstream PR: https://bugs.llvm.org/show_bug.cgi?id=40712 Modified: stable/11/contrib/llvm/lib/MC/ELFObjectWriter.cpp Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp Directory Properties: stable/12/ (props changed) Modified: stable/11/contrib/llvm/lib/MC/ELFObjectWriter.cpp ============================================================================== --- stable/11/contrib/llvm/lib/MC/ELFObjectWriter.cpp Sat Feb 16 16:34:23 2019 (r344216) +++ stable/11/contrib/llvm/lib/MC/ELFObjectWriter.cpp Sat Feb 16 19:49:12 2019 (r344217) @@ -1258,14 +1258,20 @@ void ELFObjectWriter::executePostLayoutBinding(MCAssem if (!Symbol.isUndefined() && !Rest.startswith("@@@")) continue; - // FIXME: produce a better error message. + // FIXME: Get source locations for these errors or diagnose them earlier. if (Symbol.isUndefined() && Rest.startswith("@@") && - !Rest.startswith("@@@")) - report_fatal_error("A @@ version cannot be undefined"); + !Rest.startswith("@@@")) { + Asm.getContext().reportError(SMLoc(), "versioned symbol " + AliasName + + " must be defined"); + continue; + } - if (Renames.count(&Symbol) && Renames[&Symbol] != Alias) - report_fatal_error(llvm::Twine("Multiple symbol versions defined for ") + - Symbol.getName()); + if (Renames.count(&Symbol) && Renames[&Symbol] != Alias) { + Asm.getContext().reportError( + SMLoc(), llvm::Twine("multiple symbol versions defined for ") + + Symbol.getName()); + continue; + } Renames.insert(std::make_pair(&Symbol, Alias)); } From owner-svn-src-all@freebsd.org Sat Feb 16 19:49:14 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EB16314F2C18; Sat, 16 Feb 2019 19:49:13 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 863C968368; Sat, 16 Feb 2019 19:49:13 +0000 (UTC) (envelope-from dim@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7705AB36A; Sat, 16 Feb 2019 19:49:13 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GJnDTM076040; Sat, 16 Feb 2019 19:49:13 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GJnDi0076039; Sat, 16 Feb 2019 19:49:13 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201902161949.x1GJnDi0076039@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 16 Feb 2019 19:49:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r344217 - in stable: 11/contrib/llvm/lib/MC 12/contrib/llvm/lib/MC X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable: 11/contrib/llvm/lib/MC 12/contrib/llvm/lib/MC X-SVN-Commit-Revision: 344217 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 863C968368 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.98)[-0.977,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-0.999,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 19:49:14 -0000 Author: dim Date: Sat Feb 16 19:49:12 2019 New Revision: 344217 URL: https://svnweb.freebsd.org/changeset/base/344217 Log: MFC r344112: Pull in r353907 from upstream llvm trunk (by Reid Kleckner): [MC] Make symbol version errors non-fatal We stil don't have a source location, which is pretty lame, but at least we won't tell the user to file a clang bug report anymore. Fixes PR40712 This will make errors for symbols with @@ versions that are not defined non-fatal. For example: void f(void) { __asm__(".symver foo,bar@@baz"); } will now result in: error: versioned symbol bar@@baz must be defined instead of clang crashing with a diagnostic report. PR: 234671 Upstream PR: https://bugs.llvm.org/show_bug.cgi?id=40712 Modified: stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/contrib/llvm/lib/MC/ELFObjectWriter.cpp Directory Properties: stable/11/ (props changed) Modified: stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp ============================================================================== --- stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp Sat Feb 16 16:34:23 2019 (r344216) +++ stable/12/contrib/llvm/lib/MC/ELFObjectWriter.cpp Sat Feb 16 19:49:12 2019 (r344217) @@ -1258,14 +1258,20 @@ void ELFObjectWriter::executePostLayoutBinding(MCAssem if (!Symbol.isUndefined() && !Rest.startswith("@@@")) continue; - // FIXME: produce a better error message. + // FIXME: Get source locations for these errors or diagnose them earlier. if (Symbol.isUndefined() && Rest.startswith("@@") && - !Rest.startswith("@@@")) - report_fatal_error("A @@ version cannot be undefined"); + !Rest.startswith("@@@")) { + Asm.getContext().reportError(SMLoc(), "versioned symbol " + AliasName + + " must be defined"); + continue; + } - if (Renames.count(&Symbol) && Renames[&Symbol] != Alias) - report_fatal_error(llvm::Twine("Multiple symbol versions defined for ") + - Symbol.getName()); + if (Renames.count(&Symbol) && Renames[&Symbol] != Alias) { + Asm.getContext().reportError( + SMLoc(), llvm::Twine("multiple symbol versions defined for ") + + Symbol.getName()); + continue; + } Renames.insert(std::make_pair(&Symbol, Alias)); } From owner-svn-src-all@freebsd.org Sat Feb 16 23:57:39 2019 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C74214D817D; Sat, 16 Feb 2019 23:57:39 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1B24073324; Sat, 16 Feb 2019 23:57:39 +0000 (UTC) (envelope-from kevans@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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 01973DF58; Sat, 16 Feb 2019 23:57:38 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x1GNvcSI014299; Sat, 16 Feb 2019 23:57:38 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x1GNvckC014298; Sat, 16 Feb 2019 23:57:38 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201902162357.x1GNvckC014298@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Sat, 16 Feb 2019 23:57:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r344218 - head/sbin/mdmfs X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/sbin/mdmfs X-SVN-Commit-Revision: 344218 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1B24073324 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.97 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.97)[-0.973,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2019 23:57:39 -0000 Author: kevans Date: Sat Feb 16 23:57:38 2019 New Revision: 344218 URL: https://svnweb.freebsd.org/changeset/base/344218 Log: mdmfs(8): use -o reserve with malloc-backed md(4) Mentioned in mdconfig(8), malloc-backed md(4) can be unstable unless required memory is allocated up front with -o reserve. Furthermore, panics have been observed with md used in fstab on 12.0-RELEASE. Choose the stable route and pass -o reserve. Submitted by: Paul Vixie MFC after: 1 week Modified: head/sbin/mdmfs/mdmfs.c Modified: head/sbin/mdmfs/mdmfs.c ============================================================================== --- head/sbin/mdmfs/mdmfs.c Sat Feb 16 19:49:12 2019 (r344217) +++ head/sbin/mdmfs/mdmfs.c Sat Feb 16 23:57:38 2019 (r344218) @@ -196,6 +196,7 @@ main(int argc, char **argv) usage(); mdtype = MD_MALLOC; have_mdtype = true; + argappend(&mdconfig_arg, "-o reserve"); break; case 'm': argappend(&newfs_arg, "-m %s", optarg);