svn commit: r352119 - head/usr.sbin/config
Author: bapt Date: Tue Sep 10 07:14:39 2019 New Revision: 352119 URL: https://svnweb.freebsd.org/changeset/base/352119 Log: config: do not link against libl, it is not needed MFC after:3 days Modified: head/usr.sbin/config/Makefile Modified: head/usr.sbin/config/Makefile == --- head/usr.sbin/config/Makefile Tue Sep 10 06:47:40 2019 (r352118) +++ head/usr.sbin/config/Makefile Tue Sep 10 07:14:39 2019 (r352119) @@ -18,7 +18,7 @@ CFLAGS+= -I. -I${SRCDIR} NO_WMISSING_VARIABLE_DECLARATIONS= -LIBADD=l nv sbuf +LIBADD=nv sbuf CLEANFILES+= kernconf.c ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352120 - head/usr.sbin/rrenumd
Author: bapt Date: Tue Sep 10 07:20:32 2019 New Revision: 352120 URL: https://svnweb.freebsd.org/changeset/base/352120 Log: by specifyng we do not use yywrap we can avoid linking to libl and liby MFC after:3 days Modified: head/usr.sbin/rrenumd/Makefile head/usr.sbin/rrenumd/lexer.l Modified: head/usr.sbin/rrenumd/Makefile == --- head/usr.sbin/rrenumd/Makefile Tue Sep 10 07:14:39 2019 (r352119) +++ head/usr.sbin/rrenumd/Makefile Tue Sep 10 07:20:32 2019 (r352120) @@ -23,7 +23,7 @@ YFLAGS= -d WARNS?=2 -LIBADD=ipsec l y +LIBADD=ipsec CLEANFILES=y.tab.h SRCS+= y.tab.h Modified: head/usr.sbin/rrenumd/lexer.l == --- head/usr.sbin/rrenumd/lexer.l Tue Sep 10 07:14:39 2019 (r352119) +++ head/usr.sbin/rrenumd/lexer.l Tue Sep 10 07:20:32 2019 (r352120) @@ -60,6 +60,7 @@ void yyerror(const char *); int yylex(void); %} +%option noyywrap %option nounput /* common section */ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352121 - head/usr.sbin/apmd
Author: bapt Date: Tue Sep 10 07:23:01 2019 New Revision: 352121 URL: https://svnweb.freebsd.org/changeset/base/352121 Log: Stop linking to libl by specifying we do not need yywrap MFC after:3 days Modified: head/usr.sbin/apmd/Makefile head/usr.sbin/apmd/apmdlex.l Modified: head/usr.sbin/apmd/Makefile == --- head/usr.sbin/apmd/Makefile Tue Sep 10 07:20:32 2019(r352120) +++ head/usr.sbin/apmd/Makefile Tue Sep 10 07:23:01 2019(r352121) @@ -10,8 +10,6 @@ PACKAGE=apm WARNS?=3 -LIBADD=l - CFLAGS+= -I${.CURDIR} test: Modified: head/usr.sbin/apmd/apmdlex.l == --- head/usr.sbin/apmd/apmdlex.lTue Sep 10 07:20:32 2019 (r352120) +++ head/usr.sbin/apmd/apmdlex.lTue Sep 10 07:23:01 2019 (r352121) @@ -44,6 +44,7 @@ int first_time; %} /* We don't need it, avoid the warning. */ +%option noyywrap %option nounput %option noinput ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352122 - head/usr.sbin/jail
Author: bapt Date: Tue Sep 10 07:25:37 2019 New Revision: 352122 URL: https://svnweb.freebsd.org/changeset/base/352122 Log: Stop linking to libl by specifying we do not need yywrap MFC after: 3 days Modified: head/usr.sbin/jail/Makefile head/usr.sbin/jail/jaillex.l Modified: head/usr.sbin/jail/Makefile == --- head/usr.sbin/jail/Makefile Tue Sep 10 07:23:01 2019(r352121) +++ head/usr.sbin/jail/Makefile Tue Sep 10 07:25:37 2019(r352122) @@ -6,7 +6,7 @@ PROG= jail MAN= jail.8 jail.conf.5 SRCS= jail.c command.c config.c state.c jailp.h jaillex.l jailparse.y y.tab.h -LIBADD=jail kvm util l +LIBADD=jail kvm util PACKAGE=jail Modified: head/usr.sbin/jail/jaillex.l == --- head/usr.sbin/jail/jaillex.lTue Sep 10 07:23:01 2019 (r352121) +++ head/usr.sbin/jail/jaillex.lTue Sep 10 07:25:37 2019 (r352122) @@ -48,6 +48,7 @@ static int lineno = 1; #define YY_DECL int yylex(void) %} +%option noyywrap %option noinput %option nounput ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352123 - head/usr.sbin/kbdcontrol
Author: bapt Date: Tue Sep 10 07:26:38 2019 New Revision: 352123 URL: https://svnweb.freebsd.org/changeset/base/352123 Log: Stop linking to libl by specifying we do not need yywrap MFC after: 3 days Modified: head/usr.sbin/kbdcontrol/Makefile head/usr.sbin/kbdcontrol/lex.l Modified: head/usr.sbin/kbdcontrol/Makefile == --- head/usr.sbin/kbdcontrol/Makefile Tue Sep 10 07:25:37 2019 (r352122) +++ head/usr.sbin/kbdcontrol/Makefile Tue Sep 10 07:26:38 2019 (r352123) @@ -8,6 +8,4 @@ SRCS= kbdcontrol.c lex.l WARNS?=4 CFLAGS+= -I${.CURDIR} -LIBADD=l - .include Modified: head/usr.sbin/kbdcontrol/lex.l == --- head/usr.sbin/kbdcontrol/lex.l Tue Sep 10 07:25:37 2019 (r352122) +++ head/usr.sbin/kbdcontrol/lex.l Tue Sep 10 07:26:38 2019 (r352123) @@ -36,6 +36,7 @@ %} +%option noyywrap %option nounput %option noinput ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352124 - in head/usr.sbin: ctld ndiscvt
Author: bapt Date: Tue Sep 10 07:28:27 2019 New Revision: 352124 URL: https://svnweb.freebsd.org/changeset/base/352124 Log: Stop linking to libl by specifying we do not need yywrap MFC after: 3 days Modified: head/usr.sbin/ctld/Makefile head/usr.sbin/ctld/token.l head/usr.sbin/ndiscvt/Makefile head/usr.sbin/ndiscvt/inf-token.l Modified: head/usr.sbin/ctld/Makefile == --- head/usr.sbin/ctld/Makefile Tue Sep 10 07:26:38 2019(r352123) +++ head/usr.sbin/ctld/Makefile Tue Sep 10 07:28:27 2019(r352124) @@ -15,7 +15,7 @@ CFLAGS+= -I${SRCTOP}/sys/dev/iscsi #CFLAGS+= -DICL_KERNEL_PROXY MAN= ctld.8 ctl.conf.5 -LIBADD=bsdxml l md sbuf util ucl m nv +LIBADD=bsdxml md sbuf util ucl m nv YFLAGS+= -v CLEANFILES=y.tab.c y.tab.h y.output Modified: head/usr.sbin/ctld/token.l == --- head/usr.sbin/ctld/token.l Tue Sep 10 07:26:38 2019(r352123) +++ head/usr.sbin/ctld/token.l Tue Sep 10 07:28:27 2019(r352124) @@ -45,6 +45,7 @@ extern intyylex(void); %} +%option noyywrap %option noinput %option nounput Modified: head/usr.sbin/ndiscvt/Makefile == --- head/usr.sbin/ndiscvt/Makefile Tue Sep 10 07:26:38 2019 (r352123) +++ head/usr.sbin/ndiscvt/Makefile Tue Sep 10 07:28:27 2019 (r352124) @@ -13,8 +13,6 @@ MAN+= ndisgen.8 WARNS?=4 NO_WCAST_ALIGN= -LIBADD=l - YFLAGS+=-v CFLAGS+=-I. -I${.CURDIR} -I${SRCTOP}/sys Modified: head/usr.sbin/ndiscvt/inf-token.l == --- head/usr.sbin/ndiscvt/inf-token.l Tue Sep 10 07:26:38 2019 (r352123) +++ head/usr.sbin/ndiscvt/inf-token.l Tue Sep 10 07:28:27 2019 (r352124) @@ -59,6 +59,7 @@ update_lineno(const char *cp) %} +%option noyywrap %option nounput %option noinput ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352126 - head/share/man/man7
Author: bapt Date: Tue Sep 10 07:40:45 2019 New Revision: 352126 URL: https://svnweb.freebsd.org/changeset/base/352126 Log: Remove reference to mklocale regarding the nls directory mklocale never had anything to do with the content of this directory MFC after:3 days Modified: head/share/man/man7/hier.7 Modified: head/share/man/man7/hier.7 == --- head/share/man/man7/hier.7 Tue Sep 10 07:29:21 2019(r352125) +++ head/share/man/man7/hier.7 Tue Sep 10 07:40:45 2019(r352126) @@ -28,7 +28,7 @@ .\"@(#)hier.7 8.1 (Berkeley) 6/5/93 .\" $FreeBSD$ .\" -.Dd December 6, 2018 +.Dd September 10, 2019 .Dt HIER 7 .Os .Sh NAME @@ -533,9 +533,7 @@ templates for make; see .Xr make 1 .It Pa nls/ -national language support files; -see -.Xr mklocale 1 +national language support files .It Pa security/ data files for security policies such as .Xr mac_lomac 4 ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352127 - head/lib/libc/locale
Author: bapt Date: Tue Sep 10 07:47:52 2019 New Revision: 352127 URL: https://svnweb.freebsd.org/changeset/base/352127 Log: In FreeBSD 11 localedef(1) has replaced the mklocale(1) and colldef(1) tools to generate the locales data. state it in the libc manpages. MFC after:3 days Modified: head/lib/libc/locale/euc.5 head/lib/libc/locale/multibyte.3 head/lib/libc/locale/setlocale.3 Modified: head/lib/libc/locale/euc.5 == --- head/lib/libc/locale/euc.5 Tue Sep 10 07:40:45 2019(r352126) +++ head/lib/libc/locale/euc.5 Tue Sep 10 07:47:52 2019(r352127) @@ -31,7 +31,7 @@ .\"@(#)euc.4 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd November 8, 2003 +.Dd September 9, 2019 .Dt EUC 5 .Os .Sh NAME @@ -58,7 +58,7 @@ .\".Ux .\"based systems. .\"See -.\".Xr mklocale 1 +.\".Xr localedef 1 .\"for a complete description of the .\".Ev LC_CTYPE .\"source file format. @@ -130,5 +130,5 @@ Notice that the global is set to 0x8080, this implies that from those 2 bits the codeset can be determined. .Sh SEE ALSO -.Xr mklocale 1 , +.Xr localedef 1 , .Xr setlocale 3 Modified: head/lib/libc/locale/multibyte.3 == --- head/lib/libc/locale/multibyte.3Tue Sep 10 07:40:45 2019 (r352126) +++ head/lib/libc/locale/multibyte.3Tue Sep 10 07:47:52 2019 (r352127) @@ -32,7 +32,7 @@ .\"@(#)multibyte.3 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd April 8, 2004 +.Dd September 9, 2019 .Dt MULTIBYTE 3 .Os .Sh NAME @@ -127,7 +127,7 @@ multibyte characters: .It Xr wctomb 3 Ta "convert a wide-character code to a character" .El .Sh SEE ALSO -.Xr mklocale 1 , +.Xr localedef 1 , .Xr setlocale 3 , .Xr stdio 3 , .Xr big5 5 , Modified: head/lib/libc/locale/setlocale.3 == --- head/lib/libc/locale/setlocale.3Tue Sep 10 07:40:45 2019 (r352126) +++ head/lib/libc/locale/setlocale.3Tue Sep 10 07:47:52 2019 (r352127) @@ -31,7 +31,7 @@ .\"@(#)setlocale.3 8.1 (Berkeley) 6/9/93 .\" $FreeBSD$ .\" -.Dd November 21, 2003 +.Dd September 9, 2019 .Dt SETLOCALE 3 .Os .Sh NAME @@ -150,8 +150,7 @@ and the category .Sh ERRORS No errors are defined. .Sh SEE ALSO -.Xr colldef 1 , -.Xr mklocale 1 , +.Xr localedef 1 , .Xr catopen 3 , .Xr ctype 3 , .Xr localeconv 3 , ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352128 - in head: . usr.bin usr.bin/colldef usr.bin/mklocale
Author: bapt Date: Tue Sep 10 07:54:49 2019 New Revision: 352128 URL: https://svnweb.freebsd.org/changeset/base/352128 Log: Remove mklocale(1) and colldef(1) which are deprecated since FreeBSD 11 In FreeBSD 11 along with the rework on the collation, mklocale(1) and colldef(1) has been replaced by localedef(1) (a note has been added to the manpage to state it). mklocale(1) and colldef(1) has been kept around to be able to build older versions of FreeBSD. None of the version requiring those tools are supported anymore so it is time to remove them from base Deleted: head/usr.bin/colldef/ head/usr.bin/mklocale/ Modified: head/ObsoleteFiles.inc head/usr.bin/Makefile Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue Sep 10 07:47:52 2019(r352127) +++ head/ObsoleteFiles.inc Tue Sep 10 07:54:49 2019(r352128) @@ -38,6 +38,11 @@ # xargs -n1 | sort | uniq -d; # done +# 20190910: mklocale(1) and colldef(1) removed +OLD_FILES+=usr.bin/mklocale +OLD_FILES+=usr/share/man/man1/mklocale.1.gz +OLD_FILES+=usr.bin/colldef +OLD_FILES+=usr/share/man/man1/colldef.1.gz # 20190904: Remove boot1.efifat OLD_FILES+=boot/boot1.efifat # 20190903: pc-sysinstall(8) removed Modified: head/usr.bin/Makefile == --- head/usr.bin/Makefile Tue Sep 10 07:47:52 2019(r352127) +++ head/usr.bin/Makefile Tue Sep 10 07:54:49 2019(r352128) @@ -20,7 +20,6 @@ SUBDIR= alias \ cksum \ cmp \ col \ - colldef \ colrm \ column \ comm \ @@ -94,7 +93,6 @@ SUBDIR= alias \ mkdep \ mkfifo \ mkimg \ - mklocale \ mktemp \ mkuzip \ mt \ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352129 - head
Author: bapt Date: Tue Sep 10 07:56:57 2019 New Revision: 352129 URL: https://svnweb.freebsd.org/changeset/base/352129 Log: Remove a blankline wrongly added in r351781 Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue Sep 10 07:54:49 2019(r352128) +++ head/ObsoleteFiles.inc Tue Sep 10 07:56:57 2019(r352129) @@ -125,7 +125,6 @@ OLD_DIRS+=usr/share/pc-sysinstall/conf/license OLD_DIRS+=usr/share/pc-sysinstall/conf OLD_DIRS+=usr/share/pc-sysinstall/doc OLD_DIRS+=usr/share/pc-sysinstall - # 20190825: zlib 1.0.4 removed from kernel OLD_FILES+=usr/include/sys/zlib.h OLD_FILES+=usr/include/sys/zutil.h ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r351918 - head/sys/kern
On Mon, Sep 09, 2019 at 01:49:50PM -0600, Warner Losh wrote: > On Mon, Sep 9, 2019, 5:56 AM Brooks Davis wrote: > > > On Sat, Sep 07, 2019 at 12:23:03PM +0800, Philip Paeps wrote: > > > On 2019-09-07 12:06:32 (+0800), Warner Losh wrote: > > > > On Fri, Sep 6, 2019 at 9:54 PM Philip Paeps > > > > wrote: > > > >> On 2019-09-06 22:18:36 (+0800), Ian Lepore wrote: > > > >>> On Fri, 2019-09-06 at 12:15 +0800, Philip Paeps wrote: > > > On 2019-09-06 11:15:12 (+0800), Ian Lepore wrote: > > > > On Fri, 2019-09-06 at 01:19 +, Philip Paeps wrote: > > > >> Log: > > > >> riscv: default to HZ=100 > > > > > > > > This seems like a bad idea. I've run a 90mhz armv4 chip with > > > > HZ=1000 and didn't notice any performance hit from doing so. > > > > Almost all arm kernel config files set HZ as an option, so that > > > > define doesn't do much for arm these days. It probably does still > > > > set HZ for various mips platforms. > > > > > > > > I would think 1000 is appropriate for anything modern running at > > > > 200mhz or more. > > > > > > > > Setting it to 100 has the bad side effect of making things like > > > > msleep(), tsleep(), and pause() (which show up in plenty of > > > > drivers) all have a minimum timeout of 10ms, which is a long long > > > > time on modern hardware. > > > > > > > > What benefit do you think you'll get from the lower number? > > > > > > On systems running at 10s of MHz (or slower, ick), with HZ=1000 you > > > spend an awful lot of time servicing the timer interrupt and not > > > very much time doing anything else. > > > > > > My rationale was that most RISC-V systems (including emulation and > > > FPGA prototypes) I've encountered are running slower than the > > > tipping point where HZ=1000 makes sense. With the default of > > > HZ=100, faster exceptions can still set HZ=1000 in their individual > > > configs. > > > > > > When the RISC-V world evolves to having more actual silicon and > > > fewer slow prototypes, I definitely agree this default should be > > > flipped again for HZ=1000 by default and HZ=100 in the config files > > > for the exceptions. > > > >>> > > > >>> Wait a second... are you saying that the riscv implementation > > > >>> doesn't support event timers and uses an old-style periodic tick > > > >>> based on HZ? > > > >> > > > >> Depending on the hardware, there may not be an event timer (yet)... > > > >> > > > >> As I wrote: I would be more than happy to revert this change when > > > >> more silicon becomes available. Presently, there is exactly one > > > >> silicon RISC-V implementation commercially available (HiFive FU540) > > > >> and even that one is kind of difficult to source. Most people > > > >> running RISC-V are doing so in emulation or on FPGAs. > > > >> > > > >> Given how long these things take to boot to userland (where you > > > >> really notice how slow things are), HZ=100 feels like a more sensible > > > >> default than HZ=1000. > > > > > > > > I think it show more that the defaults are bad for MIPS and ARM. All > > > > the MIPS files, except BERI/CHERI are 1000Hz. Well, Octeon is also > > > > 100Hz, due to the defaults, but it will be fine at 1000Hz, so maybe we > > > > need to attend to this as well. Arm !=v5 is also 1000Hz, so it should > > > > be changed... > > > > > > > >> I don't feel terribly strongly about this though. I've just been > > > >> bitten several times in the last week on a <15MHz FPGA forgetting to > > > >> set HZ=100 in config and figured I'd save others the trouble. ;-) > > > > > > > > 15MHz FPGA? FreeBSD 1.0 barely ran on 25MHz i386 machines of the > > > > time How common are these beasts and how well does FreeBSD do on > > > > them. I assume these are early prototypes? > > > > > > These are early prototypes indeed. > > > > > > FreeBSD runs remarkably well on them. Slowly of course. Booting takes > > > several minutes and running anything non-trivial can be frustrating. > > > > [More context for Warner and others following along.] > > > > I don't know what platform Philip is using here, but with architectures > > supporting CHERI (including MIPS and RISC-V), we typically run on > > sub-100Mhz FPGA implementations. > > > > We also run on simulations or models that range from 100s of MIPS to a > > few KIPS. Being able to do this is important to help validate that the > > models we're proving security properties on actually relate to the > > "more real" implementations we develop on. > > > > In all these cases, "run" is a relative thing. We certainly don't > > expect to self-host until we've got performant hardware (and to the > > extent that we care about 32-bit, we consider self-hosting an active > > non-goal.) We often expect to be able to run real software including > > things like nginx and webkit, but we mostly care about relative > > performance not int
svn commit: r352130 - head/sbin/devd
Author: bapt Date: Tue Sep 10 08:19:46 2019 New Revision: 352130 URL: https://svnweb.freebsd.org/changeset/base/352130 Log: Stop linking to libl by specifying we do not need yywrap MFC after: 3 days Modified: head/sbin/devd/Makefile head/sbin/devd/token.l Modified: head/sbin/devd/Makefile == --- head/sbin/devd/Makefile Tue Sep 10 07:56:57 2019(r352129) +++ head/sbin/devd/Makefile Tue Sep 10 08:19:46 2019(r352130) @@ -34,7 +34,7 @@ MAN= devd.8 devd.conf.5 NO_SHARED?=YES -LIBADD=l util +LIBADD=util YFLAGS+=-v CFLAGS+=-I. -I${.CURDIR} Modified: head/sbin/devd/token.l == --- head/sbin/devd/token.l Tue Sep 10 07:56:57 2019(r352129) +++ head/sbin/devd/token.l Tue Sep 10 08:19:46 2019(r352130) @@ -50,6 +50,7 @@ update_lineno(const char *cp) %} +%option noyywrap %option nounput %option noinput ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r352128 - in head: . usr.bin usr.bin/colldef usr.bin/mklocale
On 2019-09-10 09:54, Baptiste Daroussin wrote: Author: bapt Date: Tue Sep 10 07:54:49 2019 New Revision: 352128 URL: https://svnweb.freebsd.org/changeset/base/352128 Log: Remove mklocale(1) and colldef(1) which are deprecated since FreeBSD 11 In FreeBSD 11 along with the rework on the collation, mklocale(1) and colldef(1) has been replaced by localedef(1) (a note has been added to the manpage to state it). mklocale(1) and colldef(1) has been kept around to be able to build older versions of FreeBSD. None of the version requiring those tools are supported anymore so it is time to remove them from base Deleted: head/usr.bin/colldef/ head/usr.bin/mklocale/ Modified: head/ObsoleteFiles.inc head/usr.bin/Makefile Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue Sep 10 07:47:52 2019(r352127) +++ head/ObsoleteFiles.inc Tue Sep 10 07:54:49 2019(r352128) @@ -38,6 +38,11 @@ # xargs -n1 | sort | uniq -d; # done +# 20190910: mklocale(1) and colldef(1) removed +OLD_FILES+=usr.bin/mklocale ^^ should be usr/bin/mklocale +OLD_FILES+=usr/share/man/man1/mklocale.1.gz +OLD_FILES+=usr.bin/colldef ^^ should be usr/bin/colldef +OLD_FILES+=usr/share/man/man1/colldef.1.gz # 20190904: Remove boot1.efifat OLD_FILES+=boot/boot1.efifat # 20190903: pc-sysinstall(8) removed Regards -- Niclas ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352131 - head
Author: bapt Date: Tue Sep 10 08:28:44 2019 New Revision: 352131 URL: https://svnweb.freebsd.org/changeset/base/352131 Log: Fix bad path Reported by: zeising Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue Sep 10 08:19:46 2019(r352130) +++ head/ObsoleteFiles.inc Tue Sep 10 08:28:44 2019(r352131) @@ -39,9 +39,9 @@ # done # 20190910: mklocale(1) and colldef(1) removed -OLD_FILES+=usr.bin/mklocale +OLD_FILES+=usr/bin/mklocale OLD_FILES+=usr/share/man/man1/mklocale.1.gz -OLD_FILES+=usr.bin/colldef +OLD_FILES+=usr/bin/colldef OLD_FILES+=usr/share/man/man1/colldef.1.gz # 20190904: Remove boot1.efifat OLD_FILES+=boot/boot1.efifat ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352132 - head/sys/net
Author: lwhsu Date: Tue Sep 10 08:51:11 2019 New Revision: 352132 URL: https://svnweb.freebsd.org/changeset/base/352132 Log: Fix build for the platforms where db_expr_t is not long Sponsored by: The FreeBSD Foundation Modified: head/sys/net/rtsock.c Modified: head/sys/net/rtsock.c == --- head/sys/net/rtsock.c Tue Sep 10 08:28:44 2019(r352131) +++ head/sys/net/rtsock.c Tue Sep 10 08:51:11 2019(r352132) @@ -2226,7 +2226,7 @@ _DB_FUNC(_show, route, db_show_route_cmd, db_show_tabl if (af == AF_INET && db_tok_number > UINT8_MAX) { db_printf("Not a valid v4 octet: %ld\n", - db_tok_number); + (long)db_tok_number); goto exit; } hextets[i] = db_tok_number; ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r352113 - head/sys/net
On Tue, 2019-09-10 at 01:56 +, Conrad Meyer wrote: > Author: cem > Date: Tue Sep 10 01:56:47 2019 > New Revision: 352113 > URL: https://svnweb.freebsd.org/changeset/base/352113 > > Log: > Appease Clang false-positive Werrors in r352112 > > Reported by:bcran > > Modified: > head/sys/net/rtsock.c > > Modified: head/sys/net/rtsock.c > = > = > --- head/sys/net/rtsock.c Mon Sep 9 22:54:27 2019(r352112) > +++ head/sys/net/rtsock.c Tue Sep 10 01:56:47 2019(r352113) > @@ -2105,7 +2105,7 @@ rt_dumpentry_ddb(struct radix_node *rn, void > *arg __un > > if (flags != rt->rt_flags) > db_printf(","); > - db_printf(rt_flag_name(idx)); > + db_printf("%s", rt_flag_name(idx)); > > flags &= ~(1ul << idx); > } > @@ -2374,8 +2374,12 @@ _DB_FUNC(_show, route, db_show_route_cmd, > db_show_tabl > u.dest_sin6.sin6_addr.s6_addr16[i] = > htons(hextets[i]); > dstp = (void *)&u.dest_sin6; > dst_addrp = &u.dest_sin6.sin6_addr; > - } else > + } else { > MPASS(false); > + /* UNREACHABLE */ > + /* Appease Clang false positive: */ > + dstp = NULL; > + } > > bp = inet_ntop(af, dst_addrp, buf, sizeof(buf)); > if (bp != NULL) > I don't think this was a false positive. MPASS resolves to KASSERT which resolves to nothing when built without INVARIANTS defined. So that comment is misleading, the code isn't unreachable, and after falling through, dstp is going to be dereferenced a few lines later. Instead of just squelching the coverity error, I think it should lead to the question: Does it make any sense to assert in a ddb command handler? Would it make more sense to make that else block do something like db_printf("Unexpected address family %d\n", af); goto exit; ? -- Ian ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352136 - head/contrib/libedit
Author: bapt Date: Tue Sep 10 14:30:10 2019 New Revision: 352136 URL: https://svnweb.freebsd.org/changeset/base/352136 Log: Import libedit 2019-09-10 Compared to current version in base: - great improvements on the Unicode support - full support for filename completion including quoting which means we do not need anymore our custom addition) - Improved readline compatiblity Upgrading libedit has been a pain in the past, because somehow we never managed to properly cleanup the tree in lib/libedit and each merge has always been very painful. After years of fighting give up and refresh a merge from scrarch properly in contrib. Note that the switch to this version will be done in another commit. Added: head/contrib/libedit/ - copied from r352135, vendor/NetBSD/libedit/dist/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352137 - head/sys/net
Author: hselasky Date: Tue Sep 10 14:33:07 2019 New Revision: 352137 URL: https://svnweb.freebsd.org/changeset/base/352137 Log: Callout drain does not have to be followed by a callout stop call. Fix bogus code. MFC after:1 week Sponsored by: Mellanox Technologies Modified: head/sys/net/if_spppsubr.c Modified: head/sys/net/if_spppsubr.c == --- head/sys/net/if_spppsubr.c Tue Sep 10 14:30:10 2019(r352136) +++ head/sys/net/if_spppsubr.c Tue Sep 10 14:33:07 2019(r352137) @@ -1060,15 +1060,13 @@ sppp_detach(struct ifnet *ifp) KASSERT(mtx_initialized(&sp->mtx), ("sppp mutex is not initialized")); /* Stop keepalive handler. */ - if (!callout_drain(&sp->keepalive_callout)) - callout_stop(&sp->keepalive_callout); + callout_drain(&sp->keepalive_callout); for (i = 0; i < IDX_COUNT; i++) { - if (!callout_drain(&sp->ch[i])) - callout_stop(&sp->ch[i]); + callout_drain(&sp->ch[i]); } - if (!callout_drain(&sp->pap_my_to_ch)) - callout_stop(&sp->pap_my_to_ch); + callout_drain(&sp->pap_my_to_ch); + mtx_destroy(&sp->pp_cpq.ifq_mtx); mtx_destroy(&sp->pp_fastq.ifq_mtx); mtx_destroy(&sp->mtx); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352138 - in head: etc/mtree usr.bin/locale usr.bin/locale/tests
Author: yuripv Date: Tue Sep 10 15:09:46 2019 New Revision: 352138 URL: https://svnweb.freebsd.org/changeset/base/352138 Log: locale: handle day, abday, mon, abmon, am_pm keywords All of these are defined as mandatory by POSIX. While here, mark all non-standard ones as FreeBSD-only as other systems (at least, GNU/Linux and illumos) do not handle them, so we should not encourage their use. PR: 237752 Reviewed by: bapt Differential Revision:https://reviews.freebsd.org/D21490 Added: head/usr.bin/locale/tests/ head/usr.bin/locale/tests/Makefile (contents, props changed) head/usr.bin/locale/tests/k_flag_posix_messages.out (contents, props changed) head/usr.bin/locale/tests/k_flag_posix_monetary.out (contents, props changed) head/usr.bin/locale/tests/k_flag_posix_numeric.out (contents, props changed) head/usr.bin/locale/tests/k_flag_posix_time.out (contents, props changed) head/usr.bin/locale/tests/locale_test.sh (contents, props changed) Modified: head/etc/mtree/BSD.tests.dist head/usr.bin/locale/Makefile head/usr.bin/locale/locale.c Modified: head/etc/mtree/BSD.tests.dist == --- head/etc/mtree/BSD.tests.dist Tue Sep 10 14:33:07 2019 (r352137) +++ head/etc/mtree/BSD.tests.dist Tue Sep 10 15:09:46 2019 (r352138) @@ -1010,6 +1010,8 @@ .. limits .. +locale +.. m4 .. mkimg Modified: head/usr.bin/locale/Makefile == --- head/usr.bin/locale/MakefileTue Sep 10 14:33:07 2019 (r352137) +++ head/usr.bin/locale/MakefileTue Sep 10 15:09:46 2019 (r352138) @@ -1,6 +1,12 @@ # $FreeBSD$ +.include + PROG= locale CFLAGS+= -I${SRCTOP}/lib/libc/locale +LIBADD+= sbuf + +HAS_TESTS= +SUBDIR.${MK_TESTS}+= tests .include Modified: head/usr.bin/locale/locale.c == --- head/usr.bin/locale/locale.cTue Sep 10 14:33:07 2019 (r352137) +++ head/usr.bin/locale/locale.cTue Sep 10 15:09:46 2019 (r352138) @@ -39,6 +39,7 @@ #include #include +#include #include #include @@ -59,7 +60,7 @@ void list_charmaps(void); void list_locales(void); const char *lookup_localecat(int); char *kwval_lconv(int); -intkwval_lookup(const char *, char **, int *, int *); +intkwval_lookup(const char *, char **, int *, int *, int *); void showdetails(const char *); void showkeywordslist(char *substring); void showlocale(void); @@ -87,141 +88,258 @@ static const struct _lcinfo { #defineNLCINFO nitems(lcinfo) /* ids for values not referenced by nl_langinfo() */ -#defineKW_ZERO 1 -#defineKW_GROUPING (KW_ZERO+1) -#defineKW_INT_CURR_SYMBOL (KW_ZERO+2) -#defineKW_CURRENCY_SYMBOL (KW_ZERO+3) -#defineKW_MON_DECIMAL_POINT(KW_ZERO+4) -#defineKW_MON_THOUSANDS_SEP(KW_ZERO+5) -#defineKW_MON_GROUPING (KW_ZERO+6) -#defineKW_POSITIVE_SIGN(KW_ZERO+7) -#defineKW_NEGATIVE_SIGN(KW_ZERO+8) -#defineKW_INT_FRAC_DIGITS (KW_ZERO+9) -#defineKW_FRAC_DIGITS (KW_ZERO+10) -#defineKW_P_CS_PRECEDES(KW_ZERO+11) -#defineKW_P_SEP_BY_SPACE (KW_ZERO+12) -#defineKW_N_CS_PRECEDES(KW_ZERO+13) -#defineKW_N_SEP_BY_SPACE (KW_ZERO+14) -#defineKW_P_SIGN_POSN (KW_ZERO+15) -#defineKW_N_SIGN_POSN (KW_ZERO+16) -#defineKW_INT_P_CS_PRECEDES(KW_ZERO+17) -#defineKW_INT_P_SEP_BY_SPACE (KW_ZERO+18) -#defineKW_INT_N_CS_PRECEDES(KW_ZERO+19) -#defineKW_INT_N_SEP_BY_SPACE (KW_ZERO+20) -#defineKW_INT_P_SIGN_POSN (KW_ZERO+21) -#defineKW_INT_N_SIGN_POSN (KW_ZERO+22) +enum { + KW_GROUPING, + KW_INT_CURR_SYMBOL, + KW_CURRENCY_SYMBOL, + KW_MON_DECIMAL_POINT, + KW_MON_THOUSANDS_SEP, + KW_MON_GROUPING, + KW_POSITIVE_SIGN, + KW_NEGATIVE_SIGN, + KW_INT_FRAC_DIGITS, + KW_FRAC_DIGITS, + KW_P_CS_PRECEDES, + KW_P_SEP_BY_SPACE, + KW_N_CS_PRECEDES, + KW_N_SEP_BY_SPACE, + KW_P_SIGN_POSN, + KW_N_SIGN_POSN, + KW_INT_P_CS_PRECEDES, + KW_INT_P_SEP_BY_SPACE, + KW_INT_N_CS_PRECEDES, + KW_INT_N_SEP_BY_SPACE, + KW_INT_P_SIGN_POSN, + KW_INT_N_SIGN_POSN, + KW_TIME_DAY, + KW_TIME_ABDAY, + KW_TIME_MON, + KW_TIME_ABMON, + KW_TIME_AM_PM +}; +enum { + SRC_LINFO, + SRC_LCONV, + SRC_LTIME +}; + static const struct _kwinfo { const char *name; int isstr; /* true - string, false - number */
Re: svn commit: r349352 - in head: etc/mtree include lib lib/libnandfs sbin sbin/camcontrol sbin/nandfs sbin/newfs_nandfs share/man/man4 share/man/man5 share/mk stand stand/arm/uboot stand/common stan
On 2019-06-25 06:50, Warner Losh wrote: Author: imp Date: Tue Jun 25 04:50:09 2019 New Revision: 349352 URL: https://svnweb.freebsd.org/changeset/base/349352 Log: Remove NAND and NANDFS support NANDFS has been broken for years. Remove it. The NAND drivers that remain are for ancient parts that are no longer relevant. They are polled, have terrible performance and just for ancient arm hardware. NAND parts have evolved significantly from this early work and little to none of it would be relevant should someone need to update to support raw nand. This code has been off by default for years and has violated the vnode protocol leading to panics since it was committed. Numerous posts to arch@ and other locations have found no actual users for this software. Relnotes: Yes No Objection From: arch@ Differential Revision: https://reviews.freebsd.org/D20745 This change leaves behind a bunch of empty directories in SVN? Cleanup? --HPS ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352140 - head/sys/sys
Author: luporl Date: Tue Sep 10 16:16:05 2019 New Revision: 352140 URL: https://svnweb.freebsd.org/changeset/base/352140 Log: Add R_PPC_IRELATIVE relocation Pre-requisite for most ifunc related changes. Reviewed by: jhibbits Differential Revision:https://reviews.freebsd.org/D21587 Modified: head/sys/sys/elf_common.h Modified: head/sys/sys/elf_common.h == --- head/sys/sys/elf_common.h Tue Sep 10 15:42:34 2019(r352139) +++ head/sys/sys/elf_common.h Tue Sep 10 16:16:05 2019(r352140) @@ -1199,6 +1199,7 @@ typedef struct { #defineR_PPC_SECTOFF_LO34 #defineR_PPC_SECTOFF_HI35 #defineR_PPC_SECTOFF_HA36 +#defineR_PPC_IRELATIVE 248 /* * 64-bit relocations ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352141 - in head/sys/modules: nand nandfs nandsim
Author: imp Date: Tue Sep 10 16:30:06 2019 New Revision: 352141 URL: https://svnweb.freebsd.org/changeset/base/352141 Log: Remove empty directories left over from nand removal Deleted: head/sys/modules/nand/ head/sys/modules/nandfs/ head/sys/modules/nandsim/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352144 - in head: lib/libnandfs sbin/nandfs sbin/newfs_nandfs sys/dev/nand sys/fs/nandfs usr.sbin/nandsim usr.sbin/nandtool
Author: imp Date: Tue Sep 10 16:36:09 2019 New Revision: 352144 URL: https://svnweb.freebsd.org/changeset/base/352144 Log: Remove more directories left over from nand removal Deleted: head/lib/libnandfs/ head/sbin/nandfs/ head/sbin/newfs_nandfs/ head/sys/dev/nand/ head/sys/fs/nandfs/ head/usr.sbin/nandsim/ head/usr.sbin/nandtool/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352143 - in head/sys/modules: drm drm2
Author: imp Date: Tue Sep 10 16:35:31 2019 New Revision: 352143 URL: https://svnweb.freebsd.org/changeset/base/352143 Log: Remove empty directories after drm removal Deleted: head/sys/modules/drm/ head/sys/modules/drm2/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352145 - head/stand/sparc64/zfsloader
Author: imp Date: Tue Sep 10 16:37:32 2019 New Revision: 352145 URL: https://svnweb.freebsd.org/changeset/base/352145 Log: Remove empty directory aftre r336532 Deleted: head/stand/sparc64/zfsloader/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352146 - head/sys/mips/gxemul
Author: imp Date: Tue Sep 10 16:38:52 2019 New Revision: 352146 URL: https://svnweb.freebsd.org/changeset/base/352146 Log: Remove empty directory after r342256 Deleted: head/sys/mips/gxemul/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352147 - head/usr.bin/send-pr
Author: imp Date: Tue Sep 10 16:40:00 2019 New Revision: 352147 URL: https://svnweb.freebsd.org/changeset/base/352147 Log: Remove leftover usr.bin/send-pr after r338042 Deleted: head/usr.bin/send-pr/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352148 - in head/sys/modules: if_tap if_tun
Author: imp Date: Tue Sep 10 16:41:00 2019 New Revision: 352148 URL: https://svnweb.freebsd.org/changeset/base/352148 Log: Remove empty tap/tun modules directories after r347241 Deleted: head/sys/modules/if_tap/ head/sys/modules/if_tun/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352149 - in head/tools/tools/nanobsd: gateworks rescue/Pkg
Author: imp Date: Tue Sep 10 16:43:05 2019 New Revision: 352149 URL: https://svnweb.freebsd.org/changeset/base/352149 Log: Remove gateworks directories left over from r336136 Deleted: head/tools/tools/nanobsd/gateworks/ head/tools/tools/nanobsd/rescue/Pkg/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352150 - in head/contrib/netbsd-tests: crypto/libcrypto/bf crypto/libcrypto/bn crypto/libcrypto/cast crypto/libcrypto/des crypto/libcrypto/dh crypto/libcrypto/dsa crypto/libcrypto/ec c...
Author: imp Date: Tue Sep 10 16:48:49 2019 New Revision: 352150 URL: https://svnweb.freebsd.org/changeset/base/352150 Log: Remove now-empty directories after r272458 Deleted: head/contrib/netbsd-tests/crypto/libcrypto/bf/ head/contrib/netbsd-tests/crypto/libcrypto/bn/ head/contrib/netbsd-tests/crypto/libcrypto/cast/ head/contrib/netbsd-tests/crypto/libcrypto/des/ head/contrib/netbsd-tests/crypto/libcrypto/dh/ head/contrib/netbsd-tests/crypto/libcrypto/dsa/ head/contrib/netbsd-tests/crypto/libcrypto/ec/ head/contrib/netbsd-tests/crypto/libcrypto/ecdh/ head/contrib/netbsd-tests/crypto/libcrypto/ecdsa/ head/contrib/netbsd-tests/crypto/libcrypto/engine/ head/contrib/netbsd-tests/crypto/libcrypto/evp/ head/contrib/netbsd-tests/crypto/libcrypto/hmac/ head/contrib/netbsd-tests/crypto/libcrypto/idea/ head/contrib/netbsd-tests/crypto/libcrypto/lhash/ head/contrib/netbsd-tests/crypto/libcrypto/md2/ head/contrib/netbsd-tests/crypto/libcrypto/md4/ head/contrib/netbsd-tests/crypto/libcrypto/md5/ head/contrib/netbsd-tests/crypto/libcrypto/mdc2/ head/contrib/netbsd-tests/crypto/libcrypto/rand/ head/contrib/netbsd-tests/crypto/libcrypto/rc2/ head/contrib/netbsd-tests/crypto/libcrypto/rc4/ head/contrib/netbsd-tests/crypto/libcrypto/rc5/ head/contrib/netbsd-tests/crypto/libcrypto/ripemd/ head/contrib/netbsd-tests/crypto/libcrypto/rsa/ head/contrib/netbsd-tests/crypto/libcrypto/sha/ head/contrib/netbsd-tests/crypto/libcrypto/sha1/ head/contrib/netbsd-tests/crypto/libcrypto/srp/ head/contrib/netbsd-tests/crypto/libcrypto/threads/ head/contrib/netbsd-tests/crypto/libcrypto/x509v3/ head/contrib/netbsd-tests/dev/usb/libhid/ head/contrib/netbsd-tests/dev/usb/t_hid/ head/contrib/netbsd-tests/lib/libposix/bsd/ head/contrib/netbsd-tests/lib/libposix/posix1/ head/contrib/netbsd-tests/lib/libposix/posix2/ head/contrib/netbsd-tests/lib/libtre/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352151 - head/cddl/contrib/opensolaris/common/avl
Author: imp Date: Tue Sep 10 16:50:38 2019 New Revision: 352151 URL: https://svnweb.freebsd.org/changeset/base/352151 Log: Remove now-empty directory after r288337 Deleted: head/cddl/contrib/opensolaris/common/avl/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352152 - head/usr.sbin/bsdconfig/fdisk
Author: imp Date: Tue Sep 10 16:51:52 2019 New Revision: 352152 URL: https://svnweb.freebsd.org/changeset/base/352152 Log: Remove empty directory imported with r238438 Deleted: head/usr.sbin/bsdconfig/fdisk/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352153 - head/sys/gnu/dts/include/dt-bindings/genpd
Author: imp Date: Tue Sep 10 16:53:16 2019 New Revision: 352153 URL: https://svnweb.freebsd.org/changeset/base/352153 Log: Remove empty directory imported with r342935 Deleted: head/sys/gnu/dts/include/dt-bindings/genpd/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352154 - head/crypto/heimdal/lib/sqlite
Author: imp Date: Tue Sep 10 16:56:43 2019 New Revision: 352154 URL: https://svnweb.freebsd.org/changeset/base/352154 Log: Remove empty directory after r342871 Deleted: head/crypto/heimdal/lib/sqlite/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352155 - head/contrib/traceroute/lbl
Author: imp Date: Tue Sep 10 16:57:35 2019 New Revision: 352155 URL: https://svnweb.freebsd.org/changeset/base/352155 Log: Remove empty directory after r215937 Deleted: head/contrib/traceroute/lbl/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352156 - head/contrib/apr/include/private
Author: imp Date: Tue Sep 10 16:58:19 2019 New Revision: 352156 URL: https://svnweb.freebsd.org/changeset/base/352156 Log: Remove directory empty after r266735 Deleted: head/contrib/apr/include/private/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352157 - in head/contrib/wpa: patches wpa_supplicant/tests
Author: imp Date: Tue Sep 10 17:19:43 2019 New Revision: 352157 URL: https://svnweb.freebsd.org/changeset/base/352157 Log: Remove dirs empty since r336203 Deleted: head/contrib/wpa/patches/ head/contrib/wpa/wpa_supplicant/tests/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352158 - head/contrib/wpa/src/hlr_auc_gw
Author: imp Date: Tue Sep 10 17:20:24 2019 New Revision: 352158 URL: https://svnweb.freebsd.org/changeset/base/352158 Log: Remove dir empty since r214734 Deleted: head/contrib/wpa/src/hlr_auc_gw/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352159 - head/contrib/ipfilter/ipsd/Celler
Author: imp Date: Tue Sep 10 17:26:20 2019 New Revision: 352159 URL: https://svnweb.freebsd.org/changeset/base/352159 Log: Remove empty dir after r342815 Deleted: head/contrib/ipfilter/ipsd/Celler/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352160 - head/contrib/ipfilter/net
Author: imp Date: Tue Sep 10 17:26:46 2019 New Revision: 352160 URL: https://svnweb.freebsd.org/changeset/base/352160 Log: Remove empty dir after r288683 Deleted: head/contrib/ipfilter/net/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352161 - head/contrib/ipfilter/ipsd
Author: imp Date: Tue Sep 10 17:30:05 2019 New Revision: 352161 URL: https://svnweb.freebsd.org/changeset/base/352161 Log: Remove empty dir after r342815 (pt 2, oops) Deleted: head/contrib/ipfilter/ipsd/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352162 - head/contrib/libxo/m4
Author: imp Date: Tue Sep 10 17:31:06 2019 New Revision: 352162 URL: https://svnweb.freebsd.org/changeset/base/352162 Log: Remove empty directory after r297894 Deleted: head/contrib/libxo/m4/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352167 - head/contrib/compiler-rt/lib/builtins/armv6m
Author: imp Date: Tue Sep 10 17:46:30 2019 New Revision: 352167 URL: https://svnweb.freebsd.org/changeset/base/352167 Log: Remove dir empty since r276851 Deleted: head/contrib/compiler-rt/lib/builtins/armv6m/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352168 - in head/contrib/llvm: include/llvm/MC/MCAnalysis lib/ExecutionEngine/JIT lib/MC/MCAnalysis
Author: imp Date: Tue Sep 10 17:47:38 2019 New Revision: 352168 URL: https://svnweb.freebsd.org/changeset/base/352168 Log: Remove dirs empty since r280031 Deleted: head/contrib/llvm/include/llvm/MC/MCAnalysis/ head/contrib/llvm/lib/ExecutionEngine/JIT/ head/contrib/llvm/lib/MC/MCAnalysis/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352169 - head/contrib/compiler-rt/lib/sancov
Author: imp Date: Tue Sep 10 17:49:18 2019 New Revision: 352169 URL: https://svnweb.freebsd.org/changeset/base/352169 Log: Remove dir empty since r314564 Deleted: head/contrib/compiler-rt/lib/sancov/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352170 - head/contrib/llvm/include/llvm/BinaryFormat/WasmRelocs
Author: imp Date: Tue Sep 10 17:50:00 2019 New Revision: 352170 URL: https://svnweb.freebsd.org/changeset/base/352170 Log: Remove dir empty since r327952 Deleted: head/contrib/llvm/include/llvm/BinaryFormat/WasmRelocs/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352171 - in head/contrib/llvm: include/llvm/TextAPI/MachO lib/Target/Nios2 lib/TextAPI/MachO tools/lldb/source/Plugins/ExpressionParser/Go tools/lldb/source/Plugins/Language/Go tools/l...
Author: imp Date: Tue Sep 10 17:51:22 2019 New Revision: 352171 URL: https://svnweb.freebsd.org/changeset/base/352171 Log: Remove dirs (and their now-empty parents) empty since r344779 Deleted: head/contrib/llvm/include/llvm/TextAPI/MachO/ head/contrib/llvm/lib/Target/Nios2/ head/contrib/llvm/lib/TextAPI/MachO/ head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/ head/contrib/llvm/tools/lldb/source/Plugins/Language/Go/ head/contrib/llvm/tools/lldb/source/Plugins/Language/Java/ head/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/ head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/ head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/ head/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/ head/contrib/llvm/tools/llvm-mca/include/ head/contrib/llvm/tools/llvm-mca/lib/ ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352172 - head/sys/arm64/arm64
Author: kevans Date: Tue Sep 10 17:53:54 2019 New Revision: 352172 URL: https://svnweb.freebsd.org/changeset/base/352172 Log: Ignore LINT kernconf on arm64 Modified: Directory Properties: head/sys/arm64/arm64/ (props changed) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352173 - in head/sys/arm64: arm64 conf
Author: kevans Date: Tue Sep 10 17:55:07 2019 New Revision: 352173 URL: https://svnweb.freebsd.org/changeset/base/352173 Log: ... it was so easy, and I goofed it up. Correct dir Modified: Directory Properties: head/sys/arm64/arm64/ (props changed) head/sys/arm64/conf/ (props changed) ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352174 - in head/sys: cddl/contrib/opensolaris/uts/common/fs/zfs dev/drm2/ttm kern vm
Author: jeff Date: Tue Sep 10 18:27:45 2019 New Revision: 352174 URL: https://svnweb.freebsd.org/changeset/base/352174 Log: Use the sleepq lock rather than the page lock to protect against wakeup races with page busy state. The object lock is still used as an interlock to ensure that the identity stays valid. Most callers should use vm_page_sleep_if_busy() to handle the locking particulars. Reviewed by: alc, kib, markj Sponsored by: Netflix Differential Revision:https://reviews.freebsd.org/D21255 Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c head/sys/dev/drm2/ttm/ttm_bo_vm.c head/sys/kern/vfs_bio.c head/sys/vm/phys_pager.c head/sys/vm/vm_fault.c head/sys/vm/vm_object.c head/sys/vm/vm_page.c head/sys/vm/vm_page.h Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Tue Sep 10 17:55:07 2019(r352173) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Tue Sep 10 18:27:45 2019(r352174) @@ -422,10 +422,7 @@ page_busy(vnode_t *vp, int64_t start, int64_t off, int * likely to reclaim it. */ vm_page_reference(pp); - vm_page_lock(pp); - zfs_vmobject_wunlock(obj); - vm_page_busy_sleep(pp, "zfsmwb", true); - zfs_vmobject_wlock(obj); + vm_page_sleep_if_xbusy(pp, "zfsmwb"); continue; } vm_page_sbusy(pp); @@ -473,10 +470,7 @@ page_wire(vnode_t *vp, int64_t start) * likely to reclaim it. */ vm_page_reference(pp); - vm_page_lock(pp); - zfs_vmobject_wunlock(obj); - vm_page_busy_sleep(pp, "zfsmwb", true); - zfs_vmobject_wlock(obj); + vm_page_sleep_if_xbusy(pp, "zfsmwb"); continue; } Modified: head/sys/dev/drm2/ttm/ttm_bo_vm.c == --- head/sys/dev/drm2/ttm/ttm_bo_vm.c Tue Sep 10 17:55:07 2019 (r352173) +++ head/sys/dev/drm2/ttm/ttm_bo_vm.c Tue Sep 10 18:27:45 2019 (r352174) @@ -232,10 +232,7 @@ reserve: VM_OBJECT_WLOCK(vm_obj); if (vm_page_busied(m)) { - vm_page_lock(m); - VM_OBJECT_WUNLOCK(vm_obj); - vm_page_busy_sleep(m, "ttmpbs", false); - VM_OBJECT_WLOCK(vm_obj); + vm_page_sleep_if_busy(m, "ttmpbs"); ttm_mem_io_unlock(man); ttm_bo_unreserve(bo); goto retry; Modified: head/sys/kern/vfs_bio.c == --- head/sys/kern/vfs_bio.c Tue Sep 10 17:55:07 2019(r352173) +++ head/sys/kern/vfs_bio.c Tue Sep 10 18:27:45 2019(r352174) @@ -2931,12 +2931,8 @@ vfs_vmio_invalidate(struct buf *bp) presid = resid > (PAGE_SIZE - poffset) ? (PAGE_SIZE - poffset) : resid; KASSERT(presid >= 0, ("brelse: extra page")); - while (vm_page_xbusied(m)) { - vm_page_lock(m); - VM_OBJECT_WUNLOCK(obj); - vm_page_busy_sleep(m, "mbncsh", true); - VM_OBJECT_WLOCK(obj); - } + while (vm_page_xbusied(m)) + vm_page_sleep_if_xbusy(m, "mbncsh"); if (pmap_page_wired_mappings(m) == 0) vm_page_set_invalid(m, poffset, presid); vm_page_release_locked(m, flags); @@ -4565,10 +4561,7 @@ vfs_drain_busy_pages(struct buf *bp) for (; last_busied < i; last_busied++) vm_page_sbusy(bp->b_pages[last_busied]); while (vm_page_xbusied(m)) { - vm_page_lock(m); - VM_OBJECT_WUNLOCK(bp->b_bufobj->bo_object); - vm_page_busy_sleep(m, "vbpage", true); - VM_OBJECT_WLOCK(bp->b_bufobj->bo_object); + vm_page_sleep_if_xbusy(m, "vbpage"); } } } Modified: head/sys/vm/phys_pager.c == --- head/sys/vm/phys_pager.cTue Sep 10 17:55:07 2019(r352173) +++ head/sys/vm/
svn commit: r352175 - head/lib/libkvm
Author: luporl Date: Tue Sep 10 18:46:32 2019 New Revision: 352175 URL: https://svnweb.freebsd.org/changeset/base/352175 Log: Add powerpc support to libkvm probe function PowerPC kernels are of DYN type, instead of EXEC. Reviewed by: jhibbits Differential Revision:https://reviews.freebsd.org/D21583 Modified: head/lib/libkvm/kvm_private.c Modified: head/lib/libkvm/kvm_private.c == --- head/lib/libkvm/kvm_private.c Tue Sep 10 18:27:45 2019 (r352174) +++ head/lib/libkvm/kvm_private.c Tue Sep 10 18:46:32 2019 (r352175) @@ -131,7 +131,8 @@ _kvm_probe_elf_kernel(kvm_t *kd, int class, int machin { return (kd->nlehdr.e_ident[EI_CLASS] == class && - kd->nlehdr.e_type == ET_EXEC && + ((machine == EM_PPC || machine == EM_PPC64) ? +kd->nlehdr.e_type == ET_DYN : kd->nlehdr.e_type == ET_EXEC) && kd->nlehdr.e_machine == machine); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352176 - in head/sys: cddl/contrib/opensolaris/uts/common/fs/zfs compat/linuxkpi/common/src dev/drm2/ttm dev/xen/gntdev dev/xen/privcmd kern vm
Author: jeff Date: Tue Sep 10 19:08:01 2019 New Revision: 352176 URL: https://svnweb.freebsd.org/changeset/base/352176 Log: Replace redundant code with a few new vm_page_grab facilities: - VM_ALLOC_NOCREAT will grab without creating a page. - vm_page_grab_valid() will grab and page in if necessary. - vm_page_busy_acquire() automates some busy acquire loops. Discussed with: alc, kib, markj Tested by:pho (part of larger branch) Sponsored by: Netflix Differential Revision:https://reviews.freebsd.org/D21546 Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c head/sys/compat/linuxkpi/common/src/linux_page.c head/sys/dev/drm2/ttm/ttm_bo_vm.c head/sys/dev/drm2/ttm/ttm_tt.c head/sys/dev/xen/gntdev/gntdev.c head/sys/dev/xen/privcmd/privcmd.c head/sys/kern/uipc_shm.c head/sys/vm/vm_glue.c head/sys/vm/vm_object.c head/sys/vm/vm_page.c head/sys/vm/vm_page.h Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c == --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Tue Sep 10 18:46:32 2019(r352175) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Tue Sep 10 19:08:01 2019(r352176) @@ -412,33 +412,14 @@ page_busy(vnode_t *vp, int64_t start, int64_t off, int obj = vp->v_object; zfs_vmobject_assert_wlocked(obj); - for (;;) { - if ((pp = vm_page_lookup(obj, OFF_TO_IDX(start))) != NULL && - pp->valid) { - if (vm_page_xbusied(pp)) { - /* -* Reference the page before unlocking and -* sleeping so that the page daemon is less -* likely to reclaim it. -*/ - vm_page_reference(pp); - vm_page_sleep_if_xbusy(pp, "zfsmwb"); - continue; - } - vm_page_sbusy(pp); - } else if (pp != NULL) { - ASSERT(!pp->valid); - pp = NULL; - } - - if (pp != NULL) { - ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); - vm_object_pip_add(obj, 1); - pmap_remove_write(pp); - if (nbytes != 0) - vm_page_clear_dirty(pp, off, nbytes); - } - break; + vm_page_grab_valid(&pp, obj, OFF_TO_IDX(start), VM_ALLOC_NOCREAT | + VM_ALLOC_SBUSY | VM_ALLOC_NORMAL | VM_ALLOC_IGN_SBUSY); + if (pp != NULL) { + ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); + vm_object_pip_add(obj, 1); + pmap_remove_write(pp); + if (nbytes != 0) + vm_page_clear_dirty(pp, off, nbytes); } return (pp); } @@ -455,32 +436,14 @@ static vm_page_t page_wire(vnode_t *vp, int64_t start) { vm_object_t obj; - vm_page_t pp; + vm_page_t m; obj = vp->v_object; zfs_vmobject_assert_wlocked(obj); - for (;;) { - if ((pp = vm_page_lookup(obj, OFF_TO_IDX(start))) != NULL && - pp->valid) { - if (vm_page_xbusied(pp)) { - /* -* Reference the page before unlocking and -* sleeping so that the page daemon is less -* likely to reclaim it. -*/ - vm_page_reference(pp); - vm_page_sleep_if_xbusy(pp, "zfsmwb"); - continue; - } - - ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); - vm_page_wire(pp); - } else - pp = NULL; - break; - } - return (pp); + vm_page_grab_valid(&m, obj, OFF_TO_IDX(start), VM_ALLOC_NOCREAT | + VM_ALLOC_WIRED | VM_ALLOC_IGN_SBUSY | VM_ALLOC_NOBUSY); + return (m); } static void Modified: head/sys/compat/linuxkpi/common/src/linux_page.c == --- head/sys/compat/linuxkpi/common/src/linux_page.cTue Sep 10 18:46:32 2019(r352175) +++ head/sys/compat/linuxkpi/common/src/linux_page.cTue Sep 10 19:08:01 2019(r352176) @@ -286,27 +286,11 @@ linux_shmem_read_mapping_page_gfp(vm_object_t obj, int panic("GFP_NOWAIT is unimplemented"); VM_OBJECT_WLOCK(obj); - page = vm_page_grab(obj, pindex, VM_ALLOC_NORMAL | VM_ALLOC_NOBUSY | - VM_ALLOC_WIRED); - if (p
svn commit: r352177 - head/sys/kern
Author: mjg Date: Tue Sep 10 20:08:24 2019 New Revision: 352177 URL: https://svnweb.freebsd.org/changeset/base/352177 Log: cache: assorted cleanups Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/vfs_cache.c Modified: head/sys/kern/vfs_cache.c == --- head/sys/kern/vfs_cache.c Tue Sep 10 19:08:01 2019(r352176) +++ head/sys/kern/vfs_cache.c Tue Sep 10 20:08:24 2019(r352177) @@ -380,6 +380,8 @@ STATNODE_COUNTER(numfullpathfail4, "Number of fullpath STATNODE_COUNTER(numfullpathfound, "Number of successful fullpath calls"); static long zap_and_exit_bucket_fail; STATNODE_ULONG(zap_and_exit_bucket_fail, "Number of times zap_and_exit failed to lock"); +static long zap_and_exit_bucket_fail2; STATNODE_ULONG(zap_and_exit_bucket_fail2, +"Number of times zap_and_exit failed to lock"); static long cache_lock_vnodes_cel_3_failures; STATNODE_ULONG(cache_lock_vnodes_cel_3_failures, "Number of times 3-way vnode locking failed"); @@ -394,7 +396,7 @@ static int cache_yield; SYSCTL_INT(_vfs_cache, OID_AUTO, yield, CTLFLAG_RD, &cache_yield, 0, "Number of times cache called yield"); -static void +static void __noinline cache_maybe_yield(void) { @@ -453,12 +455,14 @@ cache_assert_bucket_locked(struct namecache *ncp, int #define cache_assert_bucket_locked(x, y) do { } while (0) #endif -#define cache_sort(x, y) _cache_sort((void **)(x), (void **)(y)) +#define cache_sort_vnodes(x, y)_cache_sort_vnodes((void **)(x), (void **)(y)) static void -_cache_sort(void **p1, void **p2) +_cache_sort_vnodes(void **p1, void **p2) { void *tmp; + MPASS(*p1 != NULL || *p2 != NULL); + if (*p1 > *p2) { tmp = *p2; *p2 = *p1; @@ -506,8 +510,7 @@ static int cache_trylock_vnodes(struct mtx *vlp1, struct mtx *vlp2) { - cache_sort(&vlp1, &vlp2); - MPASS(vlp2 != NULL); + cache_sort_vnodes(&vlp1, &vlp2); if (vlp1 != NULL) { if (!mtx_trylock(vlp1)) @@ -924,7 +927,7 @@ cache_zap_locked_vnode_kl2(struct namecache *ncp, stru mtx_unlock(*vlpp); *vlpp = NULL; } - cache_sort(&vlp1, &vlp2); + cache_sort_vnodes(&vlp1, &vlp2); if (vlp1 == pvlp) { mtx_lock(vlp2); to_unlock = vlp2; @@ -950,7 +953,7 @@ out_relock: return (false); } -static int +static int __noinline cache_zap_locked_vnode(struct namecache *ncp, struct vnode *vp) { struct mtx *pvlp, *vlp1, *vlp2, *to_unlock; @@ -969,7 +972,7 @@ cache_zap_locked_vnode(struct namecache *ncp, struct v blp = NCP2BUCKETLOCK(ncp); vlp1 = VP2VNODELOCK(ncp->nc_dvp); vlp2 = VP2VNODELOCK(ncp->nc_vp); - cache_sort(&vlp1, &vlp2); + cache_sort_vnodes(&vlp1, &vlp2); if (vlp1 == pvlp) { mtx_lock(vlp2); to_unlock = vlp2; @@ -1047,7 +1050,7 @@ cache_zap_wlocked_bucket_kl(struct namecache *ncp, str vlp = NULL; if (!(ncp->nc_flag & NCF_NEGATIVE)) vlp = VP2VNODELOCK(ncp->nc_vp); - cache_sort(&dvlp, &vlp); + cache_sort_vnodes(&dvlp, &vlp); if (*vlpp1 == dvlp && *vlpp2 == vlp) { cache_zap_locked(ncp, false); @@ -1194,14 +1197,13 @@ retry: goto out_no_entry; } - counter_u64_add(numposzaps, 1); - error = cache_zap_wlocked_bucket(ncp, blp); - if (error != 0) { + if (__predict_false(error != 0)) { zap_and_exit_bucket_fail++; cache_maybe_yield(); goto retry; } + counter_u64_add(numposzaps, 1); cache_free(ncp); return (0); out_no_entry: @@ -1397,8 +1399,8 @@ zap_and_exit: error = cache_zap_rlocked_bucket(ncp, blp); else error = cache_zap_locked_vnode(ncp, dvp); - if (error != 0) { - zap_and_exit_bucket_fail++; + if (__predict_false(error != 0)) { + zap_and_exit_bucket_fail2++; cache_maybe_yield(); goto retry; } @@ -1434,7 +1436,7 @@ cache_lock_vnodes_cel(struct celockstate *cel, struct vlp1 = VP2VNODELOCK(vp); vlp2 = VP2VNODELOCK(dvp); - cache_sort(&vlp1, &vlp2); + cache_sort_vnodes(&vlp1, &vlp2); if (vlp1 != NULL) { mtx_lock(vlp1); @@ -1504,7 +1506,7 @@ cache_lock_buckets_cel(struct celockstate *cel, struct MPASS(cel->blp[0] == NULL); MPASS(cel->blp[1] == NULL); - cache_sort(&blp1, &blp2); + cache_sort_vnodes(&blp1, &blp2); if (blp1 != NULL) { rw_wlock(blp1); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To u
svn commit: r352178 - head/sys/kern
Author: mjg Date: Tue Sep 10 20:11:00 2019 New Revision: 352178 URL: https://svnweb.freebsd.org/changeset/base/352178 Log: cache: change the formula for calculating lock array sizes It used to be mp_ncpus * 64, but this gives unnecessarily big values for small machines and at the same time constraints bigger ones. In particular this helps on a 104-way box for which the count is now doubled. While here make cache_purgevfs less likely. Currently it is not efficient in face of contention due to lock ordering issues. These are fixable but not worth it at the moment. Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/vfs_cache.c Modified: head/sys/kern/vfs_cache.c == --- head/sys/kern/vfs_cache.c Tue Sep 10 20:08:24 2019(r352177) +++ head/sys/kern/vfs_cache.c Tue Sep 10 20:11:00 2019(r352178) @@ -1879,19 +1879,21 @@ nchinit(void *dummy __unused) UMA_ZONE_ZINIT); nchashtbl = hashinit(desiredvnodes * 2, M_VFSCACHE, &nchash); - ncbuckethash = cache_roundup_2(mp_ncpus * 64) - 1; + ncbuckethash = cache_roundup_2(mp_ncpus * mp_ncpus) - 1; + if (ncbuckethash < 7) /* arbitrarily chosen to avoid having one lock */ + ncbuckethash = 7; if (ncbuckethash > nchash) ncbuckethash = nchash; bucketlocks = malloc(sizeof(*bucketlocks) * numbucketlocks, M_VFSCACHE, M_WAITOK | M_ZERO); for (i = 0; i < numbucketlocks; i++) rw_init_flags(&bucketlocks[i], "ncbuc", RW_DUPOK | RW_RECURSE); - ncvnodehash = cache_roundup_2(mp_ncpus * 64) - 1; + ncvnodehash = ncbuckethash; vnodelocks = malloc(sizeof(*vnodelocks) * numvnodelocks, M_VFSCACHE, M_WAITOK | M_ZERO); for (i = 0; i < numvnodelocks; i++) mtx_init(&vnodelocks[i], "ncvn", NULL, MTX_DUPOK | MTX_RECURSE); - ncpurgeminvnodes = numbucketlocks; + ncpurgeminvnodes = numbucketlocks * 2; ncneghash = 3; neglists = malloc(sizeof(*neglists) * numneglists, M_VFSCACHE, ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352183 - head/sys/kern
Author: mjg Date: Tue Sep 10 20:19:29 2019 New Revision: 352183 URL: https://svnweb.freebsd.org/changeset/base/352183 Log: cache: avoid excessive relocking on entry removal during lookup Due to lock ordering issues (bucket lock held, vnode locks wanted) the code starts with trylocking which in face of contention often fails. Prior to the change it would loop back with a possible yield. Instead note we know what locks are needed and can take them in the right order, avoiding retries. Then we can safely re-lookup and see if the entry we are looking for is still there. On a 104-way box poudriere would result in constant retries during an 11h run as seen in the vfs.cache.zap_and_exit_bucket_fail counter. before: 408866592 after : 0 However, a new stat reports: vfs.cache.zap_and_exit_bucket_relock_success: 32638 Note this is only a bandaid over current design issues. Tested by:pho Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/vfs_cache.c Modified: head/sys/kern/vfs_cache.c == --- head/sys/kern/vfs_cache.c Tue Sep 10 20:19:02 2019(r352182) +++ head/sys/kern/vfs_cache.c Tue Sep 10 20:19:29 2019(r352183) @@ -378,6 +378,8 @@ STATNODE_COUNTER(numfullpathfail2, "Number of fullpath search errors (VOP_VPTOCNP failures)"); STATNODE_COUNTER(numfullpathfail4, "Number of fullpath search errors (ENOMEM)"); STATNODE_COUNTER(numfullpathfound, "Number of successful fullpath calls"); +STATNODE_COUNTER(zap_and_exit_bucket_relock_success, +"Number of successful removals after relocking"); static long zap_and_exit_bucket_fail; STATNODE_ULONG(zap_and_exit_bucket_fail, "Number of times zap_and_exit failed to lock"); static long zap_and_exit_bucket_fail2; STATNODE_ULONG(zap_and_exit_bucket_fail2, @@ -526,6 +528,19 @@ cache_trylock_vnodes(struct mtx *vlp1, struct mtx *vlp } static void +cache_lock_vnodes(struct mtx *vlp1, struct mtx *vlp2) +{ + + MPASS(vlp1 != NULL || vlp2 != NULL); + MPASS(vlp1 <= vlp2); + + if (vlp1 != NULL) + mtx_lock(vlp1); + if (vlp2 != NULL) + mtx_lock(vlp2); +} + +static void cache_unlock_vnodes(struct mtx *vlp1, struct mtx *vlp2) { @@ -992,10 +1007,47 @@ out: return (error); } +/* + * If trylocking failed we can get here. We know enough to take all needed locks + * in the right order and re-lookup the entry. + */ static int -cache_zap_wlocked_bucket(struct namecache *ncp, struct rwlock *blp) +cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, +struct vnode *dvp, struct mtx *dvlp, struct mtx *vlp, uint32_t hash, +struct rwlock *blp) { + struct namecache *rncp; + + cache_assert_bucket_locked(ncp, RA_UNLOCKED); + + cache_sort_vnodes(&dvlp, &vlp); + cache_lock_vnodes(dvlp, vlp); + rw_wlock(blp); + LIST_FOREACH(rncp, (NCHHASH(hash)), nc_hash) { + if (rncp == ncp && rncp->nc_dvp == dvp && + rncp->nc_nlen == cnp->cn_namelen && + !bcmp(rncp->nc_name, cnp->cn_nameptr, rncp->nc_nlen)) + break; + } + if (rncp != NULL) { + cache_zap_locked(rncp, false); + rw_wunlock(blp); + cache_unlock_vnodes(dvlp, vlp); + counter_u64_add(zap_and_exit_bucket_relock_success, 1); + return (0); + } + + rw_wunlock(blp); + cache_unlock_vnodes(dvlp, vlp); + return (EAGAIN); +} + +static int __noinline +cache_zap_wlocked_bucket(struct namecache *ncp, struct componentname *cnp, +uint32_t hash, struct rwlock *blp) +{ struct mtx *dvlp, *vlp; + struct vnode *dvp; cache_assert_bucket_locked(ncp, RA_WLOCKED); @@ -1010,14 +1062,17 @@ cache_zap_wlocked_bucket(struct namecache *ncp, struct return (0); } + dvp = ncp->nc_dvp; rw_wunlock(blp); - return (EAGAIN); + return (cache_zap_unlocked_bucket(ncp, cnp, dvp, dvlp, vlp, hash, blp)); } -static int -cache_zap_rlocked_bucket(struct namecache *ncp, struct rwlock *blp) +static int __noinline +cache_zap_rlocked_bucket(struct namecache *ncp, struct componentname *cnp, +uint32_t hash, struct rwlock *blp) { struct mtx *dvlp, *vlp; + struct vnode *dvp; cache_assert_bucket_locked(ncp, RA_RLOCKED); @@ -1034,8 +1089,9 @@ cache_zap_rlocked_bucket(struct namecache *ncp, struct return (0); } + dvp = ncp->nc_dvp; rw_runlock(blp); - return (EAGAIN); + return (cache_zap_unlocked_bucket(ncp, cnp, dvp, dvlp, vlp, hash, blp)); } static int @@ -1197,7 +1253,7 @@ retry: goto out_no_entry; } - error = cache_zap_wlocked_bucket(ncp, blp); + error = cache_zap_wlocked_bucket(ncp, cnp, hash, blp); if (__pre
svn commit: r352186 - head/lib/geom/nop
Author: oshogbo Date: Tue Sep 10 20:27:44 2019 New Revision: 352186 URL: https://svnweb.freebsd.org/changeset/base/352186 Log: gnop: Fix initial value for the wdelayprob Reported by: Chuck Silvers Modified: head/lib/geom/nop/geom_nop.c Modified: head/lib/geom/nop/geom_nop.c == --- head/lib/geom/nop/geom_nop.cTue Sep 10 20:21:47 2019 (r352185) +++ head/lib/geom/nop/geom_nop.cTue Sep 10 20:27:44 2019 (r352186) @@ -53,7 +53,7 @@ struct g_command class_commands[] = { { 's', "size", "0", G_TYPE_NUMBER }, { 'S', "secsize", "0", G_TYPE_NUMBER }, { 'w', "wfailprob", "-1", G_TYPE_NUMBER }, - { 'x', "wdelayprob", "1", G_TYPE_NUMBER }, + { 'x', "wdelayprob", "-1", G_TYPE_NUMBER }, { 'z', "physpath", G_NOP_PHYSPATH_PASSTHROUGH, G_TYPE_STRING }, G_OPT_SENTINEL }, @@ -68,7 +68,7 @@ struct g_command class_commands[] = { { 'q', "rdelayprob", "-1", G_TYPE_NUMBER }, { 'r', "rfailprob", "-1", G_TYPE_NUMBER }, { 'w', "wfailprob", "-1", G_TYPE_NUMBER }, - { 'x', "wdelayprob", "1", G_TYPE_NUMBER }, + { 'x', "wdelayprob", "-1", G_TYPE_NUMBER }, G_OPT_SENTINEL }, "[-v] [-d delaymsec] [-e error] [-q rdelayprob] [-r rfailprob] " ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352191 - in head: . crypto/openssl crypto/openssl/apps crypto/openssl/crypto crypto/openssl/crypto/aes/asm crypto/openssl/crypto/asn1 crypto/openssl/crypto/bio crypto/openssl/crypto/bn...
/X509_LOOKUP_meth_new.3 head/secure/lib/libcrypto/man/X509_NAME_ENTRY_get_object.3 head/secure/lib/libcrypto/man/X509_NAME_add_entry_by_txt.3 head/secure/lib/libcrypto/man/X509_NAME_get0_der.3 head/secure/lib/libcrypto/man/X509_NAME_get_index_by_NID.3 head/secure/lib/libcrypto/man/X509_NAME_print_ex.3 head/secure/lib/libcrypto/man/X509_PUBKEY_new.3 head/secure/lib/libcrypto/man/X509_SIG_get0.3 head/secure/lib/libcrypto/man/X509_STORE_CTX_get_error.3 head/secure/lib/libcrypto/man/X509_STORE_CTX_new.3 head/secure/lib/libcrypto/man/X509_STORE_CTX_set_verify_cb.3 head/secure/lib/libcrypto/man/X509_STORE_add_cert.3 head/secure/lib/libcrypto/man/X509_STORE_get0_param.3 head/secure/lib/libcrypto/man/X509_STORE_new.3 head/secure/lib/libcrypto/man/X509_STORE_set_verify_cb_func.3 head/secure/lib/libcrypto/man/X509_VERIFY_PARAM_set_flags.3 head/secure/lib/libcrypto/man/X509_check_ca.3 head/secure/lib/libcrypto/man/X509_check_host.3 head/secure/lib/libcrypto/man/X509_check_issued.3 head/secure/lib/libcrypto/man/X509_check_private_key.3 head/secure/lib/libcrypto/man/X509_cmp_time.3 head/secure/lib/libcrypto/man/X509_digest.3 head/secure/lib/libcrypto/man/X509_dup.3 head/secure/lib/libcrypto/man/X509_get0_notBefore.3 head/secure/lib/libcrypto/man/X509_get0_signature.3 head/secure/lib/libcrypto/man/X509_get0_uids.3 head/secure/lib/libcrypto/man/X509_get_extension_flags.3 head/secure/lib/libcrypto/man/X509_get_pubkey.3 head/secure/lib/libcrypto/man/X509_get_serialNumber.3 head/secure/lib/libcrypto/man/X509_get_subject_name.3 head/secure/lib/libcrypto/man/X509_get_version.3 head/secure/lib/libcrypto/man/X509_new.3 head/secure/lib/libcrypto/man/X509_sign.3 head/secure/lib/libcrypto/man/X509_verify_cert.3 head/secure/lib/libcrypto/man/X509v3_get_ext_by_NID.3 head/secure/lib/libcrypto/man/d2i_DHparams.3 head/secure/lib/libcrypto/man/d2i_PKCS8PrivateKey_bio.3 head/secure/lib/libcrypto/man/d2i_PrivateKey.3 head/secure/lib/libcrypto/man/d2i_SSL_SESSION.3 head/secure/lib/libcrypto/man/d2i_X509.3 head/secure/lib/libcrypto/man/i2d_CMS_bio_stream.3 head/secure/lib/libcrypto/man/i2d_PKCS7_bio_stream.3 head/secure/lib/libcrypto/man/i2d_re_X509_tbs.3 head/secure/lib/libcrypto/man/o2i_SCT_LIST.3 head/secure/usr.bin/openssl/man/CA.pl.1 head/secure/usr.bin/openssl/man/asn1parse.1 head/secure/usr.bin/openssl/man/ca.1 head/secure/usr.bin/openssl/man/ciphers.1 head/secure/usr.bin/openssl/man/cms.1 head/secure/usr.bin/openssl/man/crl.1 head/secure/usr.bin/openssl/man/crl2pkcs7.1 head/secure/usr.bin/openssl/man/dgst.1 head/secure/usr.bin/openssl/man/dhparam.1 head/secure/usr.bin/openssl/man/dsa.1 head/secure/usr.bin/openssl/man/dsaparam.1 head/secure/usr.bin/openssl/man/ec.1 head/secure/usr.bin/openssl/man/ecparam.1 head/secure/usr.bin/openssl/man/enc.1 head/secure/usr.bin/openssl/man/engine.1 head/secure/usr.bin/openssl/man/errstr.1 head/secure/usr.bin/openssl/man/gendsa.1 head/secure/usr.bin/openssl/man/genpkey.1 head/secure/usr.bin/openssl/man/genrsa.1 head/secure/usr.bin/openssl/man/list.1 head/secure/usr.bin/openssl/man/nseq.1 head/secure/usr.bin/openssl/man/ocsp.1 head/secure/usr.bin/openssl/man/openssl.1 head/secure/usr.bin/openssl/man/passwd.1 head/secure/usr.bin/openssl/man/pkcs12.1 head/secure/usr.bin/openssl/man/pkcs7.1 head/secure/usr.bin/openssl/man/pkcs8.1 head/secure/usr.bin/openssl/man/pkey.1 head/secure/usr.bin/openssl/man/pkeyparam.1 head/secure/usr.bin/openssl/man/pkeyutl.1 head/secure/usr.bin/openssl/man/prime.1 head/secure/usr.bin/openssl/man/rand.1 head/secure/usr.bin/openssl/man/req.1 head/secure/usr.bin/openssl/man/rsa.1 head/secure/usr.bin/openssl/man/rsautl.1 head/secure/usr.bin/openssl/man/s_client.1 head/secure/usr.bin/openssl/man/s_server.1 head/secure/usr.bin/openssl/man/s_time.1 head/secure/usr.bin/openssl/man/sess_id.1 head/secure/usr.bin/openssl/man/smime.1 head/secure/usr.bin/openssl/man/speed.1 head/secure/usr.bin/openssl/man/spkac.1 head/secure/usr.bin/openssl/man/srp.1 head/secure/usr.bin/openssl/man/storeutl.1 head/secure/usr.bin/openssl/man/ts.1 head/secure/usr.bin/openssl/man/tsget.1 head/secure/usr.bin/openssl/man/verify.1 head/secure/usr.bin/openssl/man/version.1 head/secure/usr.bin/openssl/man/x509.1 Directory Properties: head/crypto/openssl/ (props changed) Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue Sep 10 20:55:47 2019(r352190) +++ head/ObsoleteFiles.inc Tue Sep 10 21:08:17 2019(r352191) @@ -38,6 +38,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20190910: OpenSSL 1.1.1d +OLD_FILES+=usr/share/openssl/man/man3/d2i_ECDSA_SIG.3.gz +OLD_FILES+=usr/share/openssl/man/man3/i2d_ECDSA_SIG.3.gz # 20190910: mklocale(1) and colldef(1) removed OLD_FILES+=usr/bin/mklocale OLD_FILES+=usr/share/man/man1/mklocale.1
svn commit: r352194 - head/stand/lua
Author: kevans Date: Tue Sep 10 21:30:38 2019 New Revision: 352194 URL: https://svnweb.freebsd.org/changeset/base/352194 Log: lualoader: Revert to ASCII menu frame for serial console The box drawing characters we use aren't necessarily safe with a serial console; for instance, in the report by npn@, these were causing his xterm to send back a sequence that lua picked up as input and halted the boot. This is less than ideal. Fallback to ASCII frames for console with 'comconsole' in it. This is a partial revert r338108 by imp@ -- instead of removing the menu entirely and disabling color/cursor sequences, just reverting the default frame to ASCII is enough to not break in this setup. Reported by: npn Triaged and recommended by: tsoome Modified: head/stand/lua/core.lua head/stand/lua/drawer.lua Modified: head/stand/lua/core.lua == --- head/stand/lua/core.lua Tue Sep 10 21:14:56 2019(r352193) +++ head/stand/lua/core.lua Tue Sep 10 21:30:38 2019(r352194) @@ -325,6 +325,16 @@ function core.isZFSBoot() return false end +function core.isSerialConsole() + local c = loader.getenv("console") + if c ~= nil then + if c:find("comconsole") ~= nil then + return true + end + end + return false +end + function core.isSerialBoot() local s = loader.getenv("boot_serial") if s ~= nil then Modified: head/stand/lua/drawer.lua == --- head/stand/lua/drawer.lua Tue Sep 10 21:14:56 2019(r352193) +++ head/stand/lua/drawer.lua Tue Sep 10 21:30:38 2019(r352194) @@ -144,13 +144,20 @@ local function drawmenu(menudef) return alias_table end +local function defaultframe() + if core.isSerialConsole() then + return "ascii" + end + return "double" +end + local function drawbox() local x = menu_position.x - 3 local y = menu_position.y - 1 local w = frame_size.w local h = frame_size.h - local framestyle = loader.getenv("loader_menu_frame") or "double" + local framestyle = loader.getenv("loader_menu_frame") or defaultframe() local framespec = drawer.frame_styles[framestyle] -- If we don't have a framespec for the current frame style, just don't -- draw a box. ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352195 - in head/stand/i386: libi386 loader
Author: tsoome Date: Tue Sep 10 21:53:42 2019 New Revision: 352195 URL: https://svnweb.freebsd.org/changeset/base/352195 Log: loader: vidconsole should set LINES and COLUMNS Set LINES and COLUMNS based on terminal dimensions. Modified: head/stand/i386/libi386/vidconsole.c head/stand/i386/loader/main.c Modified: head/stand/i386/libi386/vidconsole.c == --- head/stand/i386/libi386/vidconsole.cTue Sep 10 21:30:38 2019 (r352194) +++ head/stand/i386/libi386/vidconsole.cTue Sep 10 21:53:42 2019 (r352195) @@ -574,6 +574,7 @@ vidc_init(int arg) { const teken_attr_t *a; int val; + char env[8]; if (vidc_started && arg == 0) return (0); @@ -605,6 +606,11 @@ vidc_init(int arg) teken_init(&teken, &tf, NULL); teken_set_winsize(&teken, &tp); a = teken_get_defattr(&teken); + + snprintf(env, sizeof (env), "%u", tp.tp_row); + setenv("LINES", env, 1); + snprintf(env, sizeof (env), "%u", tp.tp_col); + setenv("COLUMNS", env, 1); for (int row = 0; row < tp.tp_row; row++) for (int col = 0; col < tp.tp_col; col++) { Modified: head/stand/i386/loader/main.c == --- head/stand/i386/loader/main.c Tue Sep 10 21:30:38 2019 (r352194) +++ head/stand/i386/loader/main.c Tue Sep 10 21:53:42 2019 (r352195) @@ -238,7 +238,6 @@ main(void) printf("\n%s", bootprog_info); extract_currdev(); /* set $currdev and $loaddev */ -setenv("LINES", "24", 1); /* optional */ bios_getsmap(); ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352196 - head/sys/arm/ti/am335x
Author: ian Date: Tue Sep 10 22:08:34 2019 New Revision: 352196 URL: https://svnweb.freebsd.org/changeset/base/352196 Log: In am335x_dmtpps, use a spin mutex to interlock between PPS capture and PPS ioctl(2) handling. This allows doing the pps_event() work in the polling routine, instead of using a taskqueue task to do that work. Also, add PNPINFO, and switch to using make_dev_s() to create the cdev. Using a spin mutex and calling pps_event() from the polling function works around the situation which requires more than 2 sets of timecounter timehands in a single-core system to get reliable PPS capture. That problem would happen when a single-core system is idle in cpu_idle() then gets woken up with an event timer event which was scheduled to handle a hardclock tick. That processing path would end up calling tc_windup 3 or 4 times between when the tc polling function was called and when the taskqueue task would eventually run, and with only two sets of timehands, the th_generation count would always be too old to allow the captured PPS data to be used. Modified: head/sys/arm/ti/am335x/am335x_dmtpps.c Modified: head/sys/arm/ti/am335x/am335x_dmtpps.c == --- head/sys/arm/ti/am335x/am335x_dmtpps.c Tue Sep 10 21:53:42 2019 (r352195) +++ head/sys/arm/ti/am335x/am335x_dmtpps.c Tue Sep 10 22:08:34 2019 (r352196) @@ -52,7 +52,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -79,7 +78,6 @@ struct dmtpps_softc { uint32_ttclr; /* Cached TCLR register. */ struct timecounter tc; int pps_curmode;/* Edge mode now set in hw. */ - struct task pps_task; /* For pps_event handling. */ struct cdev * pps_cdev; struct pps_statepps_state; struct mtx pps_mtx; @@ -93,6 +91,7 @@ static struct ofw_compat_data compat_data[] = { {"ti,am335x-timer-1ms", 1}, {NULL, 0}, }; +SIMPLEBUS_PNP_INFO(compat_data); /* * A table relating pad names to the hardware timer number they can be mux'd to. @@ -285,48 +284,29 @@ dmtpps_poll(struct timecounter *tc) * populates it from the current DMT_TCRR register) with the latched * value from the TCAR1 register. * -* There is no locking here, by design. pps_capture() writes into an -* area of struct pps_state which is read only by pps_event(). The -* synchronization of access to that area is temporal rather than -* interlock based... we write in this routine and trigger the task that -* will read the data, so no simultaneous access can occur. -* * Note that we don't have the TCAR interrupt enabled, but the hardware * still provides the status bits in the "RAW" status register even when * they're masked from generating an irq. However, when clearing the * TCAR status to re-arm the capture for the next second, we have to * write to the IRQ status register, not the RAW register. Quirky. +* +* We do not need to hold a lock while capturing the pps data, because +* it is captured into an area of the pps_state struct which is read +* only by pps_event(). We do need to hold a lock while calling +* pps_event(), because it manipulates data which is also accessed from +* the ioctl(2) context by userland processes. */ if (DMTIMER_READ4(sc, DMT_IRQSTATUS_RAW) & DMT_IRQ_TCAR) { pps_capture(&sc->pps_state); sc->pps_state.capcount = DMTIMER_READ4(sc, DMT_TCAR1); DMTIMER_WRITE4(sc, DMT_IRQSTATUS, DMT_IRQ_TCAR); - taskqueue_enqueue(taskqueue_fast, &sc->pps_task); + + mtx_lock_spin(&sc->pps_mtx); + pps_event(&sc->pps_state, PPS_CAPTUREASSERT); + mtx_unlock_spin(&sc->pps_mtx); } } -static void -dmtpps_event(void *arg, int pending) -{ - struct dmtpps_softc *sc; - - sc = arg; - - /* This is the task function that gets enqueued by poll_pps. Once the -* time has been captured by the timecounter polling code which runs in -* primary interrupt context, the remaining (more expensive) work to -* process the event is done later in a threaded context. -* -* Here there is an interlock that protects the event data in struct -* pps_state. That data can be accessed at any time from userland via -* ioctl() calls so we must ensure that there is no read access to -* partially updated data while pps_event() does its work. -*/ - mtx_lock(&sc->pps_mtx); - pps_event(&sc->pps_state, PPS_CAPTUREASSERT); - mtx_unlock(&sc->pps_mtx); -} - static int dmtpp
svn commit: r352197 - head
Author: jkim Date: Tue Sep 10 22:24:42 2019 New Revision: 352197 URL: https://svnweb.freebsd.org/changeset/base/352197 Log: Remove unnecessary entries from the previous commit. Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc == --- head/ObsoleteFiles.inc Tue Sep 10 22:08:34 2019(r352196) +++ head/ObsoleteFiles.inc Tue Sep 10 22:24:42 2019(r352197) @@ -38,9 +38,6 @@ # xargs -n1 | sort | uniq -d; # done -# 20190910: OpenSSL 1.1.1d -OLD_FILES+=usr/share/openssl/man/man3/d2i_ECDSA_SIG.3.gz -OLD_FILES+=usr/share/openssl/man/man3/i2d_ECDSA_SIG.3.gz # 20190910: mklocale(1) and colldef(1) removed OLD_FILES+=usr/bin/mklocale OLD_FILES+=usr/share/man/man1/mklocale.1.gz ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352199 - head/share/man/man7
Author: jgh (doc,ports committer) Date: Tue Sep 10 22:44:09 2019 New Revision: 352199 URL: https://svnweb.freebsd.org/changeset/base/352199 Log: - fix a minor typo PR: 240447 Submitted by: brigadi...@gmail.com MFC after:1 week Modified: head/share/man/man7/security.7 Modified: head/share/man/man7/security.7 == --- head/share/man/man7/security.7 Tue Sep 10 22:26:31 2019 (r352198) +++ head/share/man/man7/security.7 Tue Sep 10 22:44:09 2019 (r352199) @@ -1016,7 +1016,7 @@ hardware information leak. amd64. Controls the mitigation of L1 Terminal Fault in bhyve hypervisor. .It Dv kern.elf32.aslr.enable -Controls system-global Address Space Layour Randomization (ASLR) for +Controls system-global Address Space Layout Randomization (ASLR) for normal non-PIE (Position Independent Executable) 32bit binaries. See also .Xr proccontrol 1 ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352200 - head/sbin/camcontrol
Author: mav Date: Tue Sep 10 23:51:46 2019 New Revision: 352200 URL: https://svnweb.freebsd.org/changeset/base/352200 Log: Remove struct ata_res_pass16, unneeded after r352082. MFC after:4 days Modified: head/sbin/camcontrol/camcontrol.c Modified: head/sbin/camcontrol/camcontrol.c == --- head/sbin/camcontrol/camcontrol.c Tue Sep 10 22:44:09 2019 (r352199) +++ head/sbin/camcontrol/camcontrol.c Tue Sep 10 23:51:46 2019 (r352200) @@ -153,22 +153,6 @@ struct camcontrol_opts { const char *subopt; }; -struct ata_res_pass16 { - u_int16_t reserved[5]; - u_int8_t flags; - u_int8_t error; - u_int8_t sector_count_exp; - u_int8_t sector_count; - u_int8_t lba_low_exp; - u_int8_t lba_low; - u_int8_t lba_mid_exp; - u_int8_t lba_mid; - u_int8_t lba_high_exp; - u_int8_t lba_high; - u_int8_t device; - u_int8_t status; -}; - struct ata_set_max_pwd { u_int16_t reserved1; ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
svn commit: r352201 - in head/sys/cam: . scsi
Author: mav Date: Wed Sep 11 03:25:30 2019 New Revision: 352201 URL: https://svnweb.freebsd.org/changeset/base/352201 Log: Fix assumptions of only one device per SES slot. It is typical to have one, but no longer true for multi-actuator HDDs with separate LUN for each actuator. MFC after:4 days Sponsored by: iXsystems, Inc. Modified: head/sys/cam/cam_periph.c head/sys/cam/scsi/scsi_enc_ses.c Modified: head/sys/cam/cam_periph.c == --- head/sys/cam/cam_periph.c Tue Sep 10 23:51:46 2019(r352200) +++ head/sys/cam/cam_periph.c Wed Sep 11 03:25:30 2019(r352201) @@ -402,7 +402,9 @@ retry: } xpt_unlock_buses(); sbuf_finish(&local_sb); - sbuf_cpy(sb, sbuf_data(&local_sb)); + if (sbuf_len(sb) != 0) + sbuf_cat(sb, ","); + sbuf_cat(sb, sbuf_data(&local_sb)); sbuf_delete(&local_sb); return (count); } Modified: head/sys/cam/scsi/scsi_enc_ses.c == --- head/sys/cam/scsi/scsi_enc_ses.cTue Sep 10 23:51:46 2019 (r352200) +++ head/sys/cam/scsi/scsi_enc_ses.cWed Sep 11 03:25:30 2019 (r352201) @@ -883,6 +883,7 @@ ses_path_iter_devid_callback(enc_softc_t *enc, enc_ele struct device_match_result *device_match; struct device_match_pattern *device_pattern; ses_path_iter_args_t*args; + struct cam_path *path; args = (ses_path_iter_args_t *)arg; match_pattern.type = DEV_MATCH_DEVICE; @@ -908,23 +909,26 @@ ses_path_iter_devid_callback(enc_softc_t *enc, enc_ele cdm.match_buf_len = sizeof(match_result); cdm.matches = &match_result; - xpt_action((union ccb *)&cdm); - xpt_free_path(cdm.ccb_h.path); + do { + xpt_action((union ccb *)&cdm); - if ((cdm.ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP -|| (cdm.status != CAM_DEV_MATCH_LAST - && cdm.status != CAM_DEV_MATCH_MORE) -|| cdm.num_matches == 0) - return; + if ((cdm.ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP || + (cdm.status != CAM_DEV_MATCH_LAST && +cdm.status != CAM_DEV_MATCH_MORE) || + cdm.num_matches == 0) + break; - device_match = &match_result.result.device_result; - if (xpt_create_path(&cdm.ccb_h.path, /*periph*/NULL, -device_match->path_id, -device_match->target_id, -device_match->target_lun) != CAM_REQ_CMP) - return; + device_match = &match_result.result.device_result; + if (xpt_create_path(&path, /*periph*/NULL, + device_match->path_id, + device_match->target_id, + device_match->target_lun) == CAM_REQ_CMP) { - args->callback(enc, elem, cdm.ccb_h.path, args->callback_arg); + args->callback(enc, elem, path, args->callback_arg); + + xpt_free_path(path); + } + } while (cdm.status == CAM_DEV_MATCH_MORE); xpt_free_path(cdm.ccb_h.path); } ___ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"