aboutsummaryrefslogtreecommitdiff
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* iwmbtfw: Firmware loader for Intel Wireless 8260 based Bluetooth USB devicesVladimir Kondratyev2019-08-181-0/+3
| | | | | | | | | | | | | Currently supported models are: 8260, 8265, 9560, 9260 and 22161. Firmware files can be installed with comms/iwmbt-firmware port. PR: 237083 Reviewed by: hps, emax X-MFC with: r351196 Differential Revision: https://reviews.freebsd.org/D21071 Notes: svn path=/head/; revision=351197
* Remove rlogin/rsh references from src.conf(5) WITHOUT_BLACKLIST_SUPPORTEd Maste2019-08-131-2/+0
| | | | | | | | | | rcmds were removed in r324351 MFC after: 1 week Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=350980
* tools/tools/crypto: cryptokeytest: Fix build with newer OpenSSLConrad Meyer2019-08-091-61/+47
| | | | | | | Also, drag into this decade. Notes: svn path=/head/; revision=350813
* [PPC64] Don't mark ld.bfd as obsoleteLeandro Lupori2019-08-051-1/+2
| | | | | | | | | | | | | PowerPC64 still needs ld.bfd for 32-bit binaries/libraries. This will be needed when ELFv2 becomes default, but there is no harm in committing it already. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D21136 Notes: svn path=/head/; revision=350589
* Include caph_rights_limit() in libegacy if need be.Mark Johnston2019-08-011-1/+2
| | | | | | | | Reported by: jenkins Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=350519
* remove obsolete kernel debugging scriptEd Maste2019-08-011-143/+0
| | | | | | | | | | | | | For quite some time kgdb has been internally handling FreeBSD kernel module state; add-on scripts and tools are not needed. asf(8) served a similar purpose to this script and was removed in r335222. PR: 229046 Reported by: jhb Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=350506
* Save the last callout function executed on each CPUEric van Gyzen2019-07-032-0/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Save the last callout function pointer (and its argument) executed on each CPU for inspection by a debugger. Add a ddb `show callout_last` command to show these pointers. Add a kernel module that I used for testing that command. Relocate `ce_migration_cpu` to reduce padding and therefore preserve the size of `struct callout_cpu` (320 bytes on amd64) despite the added members. This should help diagnose reference-after-free bugs where the callout's mutex has already been freed when `softclock_call_cc` tries to unlock it. You might hope that the pointer would still be available, but it isn't. The argument to that function is on the stack (because `softclock_call_cc` uses it later), and that might be enough in some cases, but even then, it's very laborious. A pointer to the callout is saved right before these newly added fields, but that callout might have been freed. We still have the pointer to its associated mutex, and the name within might be enough, but it might also have been freed. Reviewed by: markj jhb MFC after: 2 weeks Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D20794 Notes: svn path=/head/; revision=349677
* Also remove lib32 versions of libradius.Tijl Coosemans2019-07-031-0/+6
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=349641
* Add support for Python 3 and make it the default.Marcel Moolenaar2019-06-303-23/+75
| | | | | | | Python 2.7 will retire on Januari 1, 2020. Notes: svn path=/head/; revision=349551
* Create a link to the ipmon.conf.5 man page as documented in ipmon.5.Cy Schubert2019-06-271-0/+1
| | | | | | | | | | Add its corresponding optional removal entry. PR: 238816 MFC after: 1 week Notes: svn path=/head/; revision=349452
* Add the ipmon.5 man page.Cy Schubert2019-06-271-0/+1
| | | | | | | | | | | PR/238816 initially addressed updates to usage() however the PR has morphed into a shopping list of updates to usage() and man pages. PR: 238816 (I added to the list during discussion) MFC after: 1 week Notes: svn path=/head/; revision=349449
* Mount and unmount devfs around calls to add packages.Warner Losh2019-06-211-1/+3
| | | | | | | | | | | | | | | | | | | pkg now uses /dev/null for some of its operations. NanoBSD's packaging stuff didn't mount that for the chroot it ran in, so any config that added packages would see the error: pkg: Cannot open /dev/null:No such file or directory when trying to actually add those packages. It's easy enough for nanobsd to mount /dev and it won't hurt anything that was already working and may help things that weren't (like this). I moved the mount/unmount pair to be in the right push/pop order from the submitted patch. PR: 238727 Submitted by: mike tancsa Tested by: Karl Denninger Notes: svn path=/head/; revision=349261
* sys: Remove DEV_RANDOM device optionConrad Meyer2019-06-218-8/+0
| | | | | | | | | | | | | | Remove 'device random' from kernel configurations that reference it (most). Replace perhaps mistaken 'nodevice random' in two MIPS configs with 'options RANDOM_LOADABLE' instead. Document removal in UPDATING; update NOTES and random.4. Reviewed by: delphij, markm (previous version) Approved by: secteam(delphij) Differential Revision: https://reviews.freebsd.org/D19918 Notes: svn path=/head/; revision=349253
* Add <sys/dnv.h> required for libnv to SYSINCS, too, apparently missedMarius Strobl2019-06-151-1/+2
| | | | | | | in r336335. Notes: svn path=/head/; revision=349054
*-----. Upgrade our copies of clang, llvm, lld, lldb, compiler-rt, libc++,Dimitry Andric2019-06-121-151/+151
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libunwind and openmp to the upstream release_80 branch r363030 (effectively, 8.0.1 rc2). The 8.0.1 release should follow this within a week or so. MFC after: 2 weeks Notes: svn path=/head/; revision=349004
| | | | * Vendor import of llvm release_80 branch r363030:vendor/llvm/llvm-release_801-r366581vendor/llvm/llvm-release_80-r364487vendor/llvm/llvm-release_80-r363030vendor/llvm-80Dimitry Andric2019-06-111-6/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://llvm.org/svn/llvm-project/llvm/branches/release_80@363030 Notes: svn path=/vendor/llvm/dist-release_80/; revision=348932 svn path=/vendor/llvm/llvm-release_801-r366581/; revision=350167; tag=vendor/llvm/llvm-release_801-r366581
| | | | * Vendor import of llvm release_80 branch r355313:vendor/llvm/llvm-release_80-r355313Dimitry Andric2019-03-041-48/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://llvm.org/svn/llvm-project/llvm/branches/release_80@355313 Notes: svn path=/vendor/llvm/dist-release_80/; revision=344765 svn path=/vendor/llvm/llvm-release_80-r355313/; revision=344766; tag=vendor/llvm/llvm-release_80-r355313
| | | | * Vendor import of llvm release_80 branch r354130:vendor/llvm/llvm-release_80-r354130Dimitry Andric2019-02-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://llvm.org/svn/llvm-project/llvm/branches/release_80@354130 Notes: svn path=/vendor/llvm/dist-release_80/; revision=344166 svn path=/vendor/llvm/llvm-release_80-r354130/; revision=344167; tag=vendor/llvm/llvm-release_80-r354130
| | | | * Vendor import of llvm trunk r351319 (just before the release_80 branchvendor/llvm/llvm-trunk-r351319Dimitry Andric2019-01-19312-11190/+14854
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | point): https://llvm.org/svn/llvm-project/llvm/trunk@351319 Notes: svn path=/vendor/llvm/dist/; revision=343171 svn path=/vendor/llvm/llvm-trunk-r351319/; revision=343172; tag=vendor/llvm/llvm-trunk-r351319
| | | * | Vendor import of lldb trunk r351319 (just before the release_80 branchvendor/lldb/lldb-trunk-r351319Dimitry Andric2019-01-19103-1471/+7072
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | point): https://llvm.org/svn/llvm-project/lldb/trunk@351319 Notes: svn path=/vendor/lldb/dist/; revision=343181 svn path=/vendor/lldb/lldb-trunk-r351319/; revision=343182; tag=vendor/lldb/lldb-trunk-r351319
| | * | | Vendor import of lld trunk r351319 (just before the release_80 branchvendor/lld/lld-trunk-r351319Dimitry Andric2019-01-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | point): https://llvm.org/svn/llvm-project/lld/trunk@351319 Notes: svn path=/vendor/lld/dist/; revision=343179 svn path=/vendor/lld/lld-trunk-r351319/; revision=343180; tag=vendor/lld/lld-trunk-r351319
| * | | | Vendor import of clang trunk r351319 (just before the release_80 branchvendor/clang/clang-trunk-r351319Dimitry Andric2019-01-1963-434/+1340
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | point): https://llvm.org/svn/llvm-project/cfe/trunk@351319 Notes: svn path=/vendor/clang/dist/; revision=343173 svn path=/vendor/clang/clang-trunk-r351319/; revision=343174; tag=vendor/clang/clang-trunk-r351319
* | | | | Move llvm-ranlib to appropriate location in OptionalObsoleteFiles.inc.Jung-uk Kim2019-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note llvm-ar is linked to llvm-ranlib since r311565. r348677 fixed "make delete-old" issue with llvm-ar but missed it somehow. Discussed with: emaste, jhb Notes: svn path=/head/; revision=348761
* | | | | [ath] [fix] athani compilation was broken by recent ath changeMichael Zhilin2019-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * This commit is going to fix build of AR724x on 13-CURRENT with additional tools like athani. See r344841 Notes: svn path=/head/; revision=348697
* | | | | Use CLANG knob to remove llvm-symbolizer man pageEd Maste2019-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r348504 moved llvm-symbolizer from the CLANG_EXTRAS knob to CLANG, but the man page was still in the CLANG_EXTRAS section in OptionalObsoleteFiles.inc. Reported by: jhb MFC after: 3 days MFC with: r348504 Notes: svn path=/head/; revision=348689
* | | | | move llvm-ar and llvm-nm to appropriate location in OptionalObsoleteFiles.incEd Maste2019-06-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After r348610 `make delete-old` was still removing llvm-ar and llvm-nm (and associated man pages). Reported by: jhb Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=348677
* | | | | llvm-symbolizer: Move out of CLANG_EXTRAS, into CLANGKyle Evans2019-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ASAN reports become a lot more useful with llvm-symbolizer in $PATH, and the build is not much more time-consuming. The added benefit is that the resulting reports will actually include symbol information; without, thread trace information includes a bunch of addresses that immediately resolve to an inline function in ^/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h and take a little more effort to examine. Reviewed by: emaste MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D20484 Notes: svn path=/head/; revision=348504
* | | | | nanobsd: exclude .git (and .hg) in the same places we exclude .svnEd Maste2019-05-242-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow support of other VCSes. Note that two other nanobsd files already had a similar case, excluding .git and .hg in addition to CVS and .svn. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=348239
* | | | | To avoid unnecessarily modifying ports, add a -lgomp symlink, since GCCDimitry Andric2019-05-191-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | does not ship a -lomp symlink. Also update OptionalObsoleteFiles for this, and add 32-bit variants while here. Submitted by: jbeich PR: 237975 MFC after: 3 days Notes: svn path=/head/; revision=347979
* | | | | Fix OptionalObsoleteFiles copy/paste mistake from r345236, whichDimitry Andric2019-05-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | connected libomp to the build. The comparison should not have been against ${MK_OPENSSH}, but against ${MK_OPENMP}, obviously. MFC after: 3 days Notes: svn path=/head/; revision=347978
* | | | | Change ed(4), ep(4), and fxp(4) examples to em(4).Brooks Davis2019-05-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ed(4) and ep(4) have been removed. fxp(4) remains popular in older systems, but isn't as future proof as em(4). Reviewed by: bz, jhb MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D20311 Notes: svn path=/head/; revision=347963
* | | | | Update beinstall to use the mergemaster/etcupdate from the source tree insteadBrad Davis2019-05-181-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of the installed one. Approved by: will (mentor) Differential Revision: https://reviews.freebsd.org/D20291 Notes: svn path=/head/; revision=347958
* | | | | revert QEMU q35 platform use from r346748Ed Maste2019-04-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It seems to be incompatible with the OVMF.fd (of unknown provenance) in use by the Cirrus-CI config. We will soon have a known OVMF build via a port/package (see review D19869) and we can switch back to q35 once packages are available. Discussed with: bcran Notes: svn path=/head/; revision=346961
* | | | | fsx: seed more randomly with the -S0 optionAlan Somers2019-04-281-13/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using -S0, seed the PRNG with the current time in nanoseconds, not seconds, so consecutive runs don't accidentally use the same seed. Also, rename some variables for clarity. Reviewed by: ngie MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D20078 Notes: svn path=/head/; revision=346847
* | | | | Fix tools/boot/ci-qemu-test.sh and make some improvementsRebecca Cran2019-04-261-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update ci-qemu-test.sh o Update the path to the OVMF file, which is now in /usr/local/share/uefi-edk2-qemu. o Use the more modern q35, pc-q35-3.0 (Q35 + ICH9, 2009) QEMU machine instead of the default, obsolete pc, pc-i440fx-3.0 (i440FX + PIIX, 1996). For example this adds ACPI support. o Specify the system firmware using the newer pflash drive syntax instead of bios. o Remove extra, unneeded devices by passing -nodefaults. o Change text to talk about 'firmware' instead of 'bios', since UEFI isn't a BIOS. Reviewed by: imp, emaste Differential Revision: https://reviews.freebsd.org/D20074 Notes: svn path=/head/; revision=346748
* | | | | For the geli-gpt-zfs test images, both bios and uefi flavors, add a dummyIan Lepore2019-04-251-10/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ufs partition as p2, and put the zfs partition at p3, to test the ability of the zfs probe code to find a zfs pool on something other than the first partition. Notes: svn path=/head/; revision=346654
* | | | | The zfs module has grown a dependency on zcl_nfs4.ko, so copy it into allIan Lepore2019-04-241-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the test images. Notes: svn path=/head/; revision=346653
* | | | | Complain and exit the script if the 'make install' phase fails. Also,Ian Lepore2019-04-241-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | there is no need to install any debug files. Notes: svn path=/head/; revision=346652
* | | | | Fix install-boot.sh and rootgen.sh UEFI bugsRebecca Cran2019-04-242-24/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tools/boot/install-boot.sh was assuming that if a device was passed in, it should operate on the current system and run efibootmgr etc. to update the boot manager. However, rootgen.sh passes a md(4) device and not a fixed disk. Add a -u option to install-boot.sh to tell it to update the system in-place and run efibootmgr etc. Also, source install-boot.sh in rootgen.sh to allow it to find and call make_esp_file etc. And pass the loader file to make_esp_file instead of a directory name. Reported by: ian Reviewed by: ian,imp,tsoome Differential Revision: https://reviews.freebsd.org/D19992 Notes: svn path=/head/; revision=346646
* | | | | As an interim measure until a more permanent solution is implementedCy Schubert2019-04-181-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | workaround the following error: /usr/src/contrib/elftoolchain/strings/strings.c:198:55: error: use of undeclared identifier 'FA_OPEN' fa = fileargs_init(argc, argv, O_RDONLY, 0, &rights, FA_OPEN); Reported by: O. Hartmann <ohartmann@walstatt.org> Reported by: Michael Butler <imb@protected-networks.net> Reported by: gjb@ & cy@ (implicit) Reviewed by: emaste@ Noted by: rgrimes@ Notes: svn path=/head/; revision=346341
* | | | | Put QEMU CI smoke test boot log in /tmp if TMPDIR not setEd Maste2019-04-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=346330
* | | | | Install some entropy for QEMU CI smoke testEd Maste2019-04-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See r346250 and followup commits and mailing list discussion. We currently fail to boot properly in the absense of boot-time entropy. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=346329
* | | | | Allow this test script to be run from within src/tools/boot dir, and createIan Lepore2019-04-171-41/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the temporary image in $TMPDIR. Allow the script to be run from the src/tools/boot directory by using make -V SRCTOP to find the top of the tree, because this script is handy for quick smoke-testing of loader changes, as well as being useful in CI testing. Also, use a temp directory in $TMPDIR to assemble the boot image, and write the boot log file to $TMPDIR. Arrange to have the temporary image clean itself up, but leave the log file in $TMPDIR for post-mortem analysis of failures when the script is run interactively. Differential Revision: https://reviews.freebsd.org/D19876 Notes: svn path=/head/; revision=346317
* | | | | Add a smoke test QEMU boot script for CIEd Maste2019-04-101-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed by: imp, lwhsu (earlier) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19661 Notes: svn path=/head/; revision=346080
* | | | | ioatcontrol(8) crc-copy flag bug and misc usage tweakTycho Nightingale2019-04-091-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed by: cem Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D19855 Notes: svn path=/head/; revision=346050
* | | | | Add option to build LLVM RISC-V targetMitchell Horne2019-04-072-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed by: emaste, dim Approved by: markj (mentor) MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D19759 Notes: svn path=/head/; revision=346016
* | | | | Add cap_fileargs.h to -legacy if needed.Mariusz Zaborski2019-04-041-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed by: arichardson Differential Revision: https://reviews.freebsd.org/D19685 Notes: svn path=/head/; revision=345870
* | | | | Create kernel module to parse Veriexec manifest based on envsMarcin Wojtas2019-04-031-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current approach of injecting manifest into mac_veriexec is to verify the integrity of it in userspace (veriexec (8)) and pass its entries into kernel using a char device (/dev/veriexec). This requires verifying root partition integrity in loader, for example by using memory disk and checking its hash. Otherwise if rootfs is compromised an attacker could inject their own data. This patch introduces an option to parse manifest in kernel based on envs. The loader sets manifest path and digest. EVENTHANDLER is used to launch the module right after the rootfs is mounted. It has to be done this way, since one might want to verify integrity of the init file. This means that manifest is required to be present on the root partition. Note that the envs have to be set right before boot to make sure that no one can spoof them. Submitted by: Kornel Duleba <mindal@semihalf.com> Reviewed by: sjg Obtained from: Semihalf Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D19281 Notes: svn path=/head/; revision=345830
* | | | | ioatcontrol(8) could exercise 8k-aligned copy with page-break, crc andTycho Nightingale2019-04-022-6/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | crc-copy modes. Reviewed by: cem Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D19780 Notes: svn path=/head/; revision=345812
* | | | | revert r302146: makeroot: zero out subsecond component of time= keywordsEd Maste2019-03-271-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After r345281 by mhorne subsecond components are supported. PR: 194703 Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=345583