aboutsummaryrefslogtreecommitdiff
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Merge OpenZFS support in to HEAD.Matt Macy2020-08-251-18/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The primary benefit is maintaining a completely shared code base with the community allowing FreeBSD to receive new features sooner and with less effort. I would advise against doing 'zpool upgrade' or creating indispensable pools using new features until this change has had a month+ to soak. Work on merging FreeBSD support in to what was at the time "ZFS on Linux" began in August 2018. I first publicly proposed transitioning FreeBSD to (new) OpenZFS on December 18th, 2018. FreeBSD support in OpenZFS was finally completed in December 2019. A CFT for downstreaming OpenZFS support in to FreeBSD was first issued on July 8th. All issues that were reported have been addressed or, for a couple of less critical matters there are pull requests in progress with OpenZFS. iXsystems has tested and dogfooded extensively internally. The TrueNAS 12 release is based on OpenZFS with some additional features that have not yet made it upstream. Improvements include: project quotas, encrypted datasets, allocation classes, vectorized raidz, vectorized checksums, various command line improvements, zstd compression. Thanks to those who have helped along the way: Ryan Moeller, Allan Jude, Zack Welch, and many others. Sponsored by: iXsystems, Inc. Differential Revision: https://reviews.freebsd.org/D25872 Notes: svn path=/head/; revision=364746
* When copying over the binaries, use '-p' to preserve date/timeWarner Losh2020-08-241-3/+3
| | | | | | | | | | | Although I can't reproduce it, others are seeing different lex/yacc programs always regenerated after my change to copy rather than symlink the files. The reported fix is to add '-p' to the copies. Since it doesn't hurt, go head and add it, though the reasons for this mattering remain at best obscure and poorly articulated. Notes: svn path=/head/; revision=364701
* Update OptionalObsoleteFiles.inc for added and removed clang 11.0.0Dimitry Andric2020-08-151-267/+281
| | | | | | | internal headers. Notes: svn path=/projects/clang1100-import/; revision=364252
* - Update to Unicode CLDR v35 (Unicode 12.0).Hiroki Sato2020-08-158-112/+819
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Update tools/tools/locale to add make targets to automatically generate locale source files. With this change, just typing "make obj && make -j4" will rebuild them. Check README for more details. - Fix issues in ja_JP ctypedef and range specification support in utf8-rollup.pl. - Add a temporary patch for UnicodeData.txt to fix code ranges of CJK Ideograph Extension A and Extension B. - tools/cldr2def.pl: Use eucJP for ja_JP ctypedef because eucJP is not compatible with UTF-8. - tools/convert_map.pl: Add a verbose error message. - tools/utf8-rollup.pl: Normalize entries to use Unicode, not UTF-8. Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D25503 Notes: svn path=/head/; revision=364245
* crunchgen: use pwd -P without envAlex Richardson2020-08-141-1/+1
| | | | | | | | | | | | The -P flag is required by POSIX so we don't have to care whether pwd is a shell builtin or not. This also allows removing pwd from the list of bootstrap tools since all shells we care about for building have a builtin pwd command. This effectively reverts r364190. Suggested By: rgrimes, jrtc27 Notes: svn path=/head/; revision=364234
* Add pwd to the list of tools that are linked to $WORLDTMP/legacyAlex Richardson2020-08-131-2/+2
| | | | | | | | | After r364166 and r364174, crunchgen needs a pwd binary in $PATH instead of using a hardcoded absolute path. This commit is needed for BUILD_WITH_STRICT_TMPPATH builds (currently not on by default). Notes: svn path=/head/; revision=364190
* since kld_deb.py was removed a while back, this script isn't usefulJohn-Mark Gurney2020-08-111-67/+0
| | | | | | | anymore... Notes: svn path=/head/; revision=364132
* Fix bootstrapping ldd after r362152Alex Richardson2020-08-111-0/+6
| | | | | | | | r362152 started using DF_1_PIE, which is not present in older versions of sys/elf_common.h. To fix this include the ELF headers as part of -legacy. Notes: svn path=/head/; revision=364120
* Move ifconfig SFP status functionality into libifconfigRyan Moeller2020-08-091-0/+652
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libifconfig_sfp.h provides an API in libifconfig for querying SFP module properties, operational status, and vendor strings, as well as descriptions of the various fields, string conversions, and other useful helpers for implementing user interfaces. SFP module status is obtained by reading registers via an I2C interface. Descriptions of these registers and the values therein have been collected in a Lua table which is used to generate all the boilerplace C headers and source files for accessing these values, their names, and descriptions. The generated code is fully commented and readable. This is the first use of libifconfig in ifconfig itself. For now, the scope remains very limited. Over time, more of ifconfig will be replaced with libifconfig. Some minor changes to the formatting of ifconfig output have been made: - Module memory hex dumps are indented one extra space as a result of using hexdump(3) instead of a bespoke hex dump function. - Media descriptions have an added two-character short-name in parenthesis. - QSFP modules were incorrectly displaying TX bias current as power. Now TX channels display bias current, and this change has been made for both SFP and QSFP modules for consistency. A Lua binding for libifconfig including this functionality is implemented but has not been included in this commit. The plan is for it to be committed after dynamic module loading has been enabled in flua. Reviewed by: kp, melifaro Relnotes: yes Differential Revision: https://reviews.freebsd.org/D25494 Notes: svn path=/head/; revision=364058
* The practice of creating symbolic links is somewhat fragile. AlwaysWarner Losh2020-08-071-14/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | make copies instead. There's too many times that we can't run the new binaries with old libraries. Making the links when things are known to be 'safe' is a nice optimization, but a copy of all the binaries is only 30MB, so saving the copies at the cost of increased support when new symbols are added and used as part of the bootstrap seems to be unwise. There may be additional optimizations possible here, especially for !FreeBSD hosts. However, that's beyond the scope of the problem I'm trying to fix with make failing mid-way through an installworld across change r363679. This optimization there caused us to run a new binary with an old library once a new make was installed due to the symbolic link. One could just copy make, but then other binaries fail as well, so rather than play whack-a-mole, I opted to take us back to the old way. Before r340157 or so we did copies (thogh of a lot fewer artifacts), and we didn't have issues like this. Reviewed by: arichards@ Differential Revision: https://reviews.freebsd.org/D25967 Notes: svn path=/head/; revision=364030
* Fix the smrstress build after r358400.Mark Johnston2020-08-051-1/+1
| | | | | | | Reported by: pho Notes: svn path=/head/; revision=363925
* add script to help figure out what man pages need MLINKS updated...John-Mark Gurney2020-07-163-0/+59
| | | | Notes: svn path=/head/; revision=363265
* Fix BUILD_WITH_STRICT_TMPPATH buildsAlex Richardson2020-07-151-1/+1
| | | | | | | | | We need dd in $PATH for some of the MK_BOOT code and some tests also use it. Obtained from: CheriBSD Notes: svn path=/head/; revision=363219
* Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmpDimitry Andric2020-06-281-0/+6
| | | | | | | | | | | | | | | | llvmorg-10.0.1-rc2-0-g77d76b71d7d. Also add a few more llvm utilities under WITH_CLANG_EXTRAS: * llvm-dwp, a utility for merging DWARF 5 Split DWARF .dwo files into .dwp (DWARF package files) * llvm-size, a size(1) replacement * llvm-strings, a strings(1) replacement MFC after: 3 weeks Notes: svn path=/head/; revision=362719
* Follow-up to r362679, add more entries to OptionalObsoleteFiles.incDimitry Andric2020-06-271-0/+4
| | | | | | | | MFC after: 3 days X-MFC-With: r362679 Notes: svn path=/head/; revision=362680
* Regenerate ReStructuredText based manpages for llvm-project tools:Dimitry Andric2020-06-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bugpoint.1 * clang.1 * llc.1 * lldb.1 * lli.1 * llvm-ar.1 * llvm-as.1 * llvm-bcanalyzer.1 * llvm-cov.1 * llvm-diff.1 * llvm-dis.1 * llvm-dwarfdump.1 * llvm-extract.1 * llvm-link.1 * llvm-mca.1 * llvm-nm.1 * llvm-pdbutil.1 * llvm-profdata.1 * llvm-symbolizer.1 * llvm-tblgen.1 * opt.1 Add newly generated manpages for: * llvm-addr2line.1 (this is an alias of llvm-symbolizer) * llvm-cxxfilt.1 * llvm-objcopy.1 * llvm-ranlib.1 (this is an alias of llvm-ar) Note that llvm-objdump.1 is an exception, as upstream has both a plain .1 file, and a .rst variant. These will have to be reconciled upstream first. MFC after: 3 days Notes: svn path=/head/; revision=362679
* Add WITH_CLANG_FORMAT optionConrad Meyer2020-06-242-1/+6
| | | | | | | | | | | | | | | clang-format is enabled conditional on either WITH_CLANG_EXTRAS or WITH_CLANG_FORMAT. Some sources in libclang are build conditional on either rule, and obviously the clang-format binary itself depends on the rule. clang-format could still use a manual page. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D25427 Notes: svn path=/head/; revision=362587
* flua: add ucl libraryRyan Moeller2020-06-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | libucl comes with a Lua library binding. Build it into flua. This lets us parse/generate config files in the various formats supported by libucl with flua. For example, the following script will detect the format of an object written to stdin as one of UCL config, JSON, or YAML and write it to stdout as pretty-printed JSON: local ucl = require('ucl') local parser = ucl.parser() parser:parse_string(io.read('*a')) local obj = parser:get_object() print(ucl.to_format(obj, 'json')) Reviewed by: kevans, pstef Approved by: mmacy (mentor) Relnotes: yes Differential Revision: https://reviews.freebsd.org/D25009 Notes: svn path=/head/; revision=362477
* Move font related data structured to sys/font.c and update vtfontcvtToomas Soome2020-06-142-34/+23
| | | | | | | | | | | | | | | Prepare support to be able to handle font data in loader, consolidate data structures to sys/font.h and update vtfontcvt. vtfontcvt update is about to output set of glyphs in form of C source, the implementation does allow to output compressed or uncompressed font bitmaps. Reviewed by: bcr Differential Revision: https://reviews.freebsd.org/D24189 Notes: svn path=/head/; revision=362172
* [wlanstats] Add the per-node amsdu hardware decap'ed receive stats.Adrian Chadd2020-06-122-2/+10
| | | | | | | | | | | | | This is useful for tracking hardware provided AMSDU frames to see when we're (a) seeing them, and (b) seeing the split between intermediary and final frames. Tested: * QCA9880 (athp) - AP mode Notes: svn path=/head/; revision=362085
* Retire BINUTILS and BINUTILS_BOOTSTRAP optionsEd Maste2020-06-075-225/+0
| | | | | | | | | | | | | As of r361857 all BINUTILS options are disabled by default - ports have been changed to depend on binutils if they require GNU as, and all base system assembly files have been switched to use Clang's integrated assembler. Relnotes: Yes Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=361880
* Update SYSTEM_LINKER descriptions wrt BINUTILSEd Maste2020-06-062-6/+2
| | | | | | | GNU ld hasn't been built with the BINUTILS option for some time. Notes: svn path=/head/; revision=361876
* Add deprecation notice to WITH_BINUTILS option descriptionEd Maste2020-05-301-0/+2
| | | | Notes: svn path=/head/; revision=361650
* ice(4): Introduce new driver for Intel E800 Ethernet controllersEric Joyner2020-05-261-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The ice(4) driver is the driver for the Intel E8xx series Ethernet controllers; currently with codenames Columbiaville and Columbia Park. These new controllers support 100G speeds, as well as introducing more queues, better virtualization support, and more offload capabilities. Future work will enable virtual functions (like in ixl(4)) and the other functionality outlined above. For full functionality, the kernel should be compiled with "device ice_ddp" like in the amd64 NOTES file, and/or ice_ddp_load="YES" should be added to /boot/loader.conf so that the DDP package file included in this commit can be downloaded to the adapter. Otherwise, the adapter will fall back to a single queue mode with limited functionality. A man page for this driver will be forthcoming. MFC after: 1 month Relnotes: yes Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D21959 Notes: svn path=/head/; revision=361541
* Expand coverage of different buffer sizes.John Baldwin2020-05-251-79/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | - When -z is used, include small buffers from 1 to 32 bytes to test stream ciphers. Note that while AES-XTS claims to support a block size of 1 in OpenSSL, it does require a minimum of 1 block of cipher text as it is not a stream cipher but depends on CTS to pad out the final partial block. - Permit multiple AAD sizes to be set via multiple -A options, or via -z. When -z is set, use small buffers from 0 to 32 bytes followed by powers of 2 up to 256. When multiple sizes are specified, the ETA and AEAD algorithms perform the full matrix of AAD sizes by payload sizes. - Only warn on unchanged ciphertext instead of erroring. The currently generated plaintext and key for a couple of AES-CTR tests with a buffer size of 1 results in ciphertext that matches the plaintext. Reviewed by: cem Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D25006 Notes: svn path=/head/; revision=361487
* copystr(9): Move to deprecate (attempt #2)Conrad Meyer2020-05-251-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reapplies logical r360944 and r360946 (reverting r360955), with fixed copystr() stand-in replacement macro. Eventually the goal is to convert consumers and kill the macro, but for a first step it helps if the macro is correct. Prior commit message: Unlike the other copy*() functions, it does not serve to copy from one address space to another or protect against potential faults. It's just an older incarnation of the now-more-common strlcpy(). Add a coccinelle script to tools/ which can be used to mechanically convert existing instances where replacement with strlcpy is trivial. In the two cases which matched, fuse_vfsops.c and union_vfsops.c, the code was further refactored manually to simplify. Replace the declaration of copystr() in systm.h with a small macro wrapper around strlcpy (with correction from brooks@ -- thanks). Remove N redundant MI implementations of copystr. For MIPS, this entailed inlining the assembler copystr into the only consumer, copyinstr, and making the latter a leaf function. Reviewed by: jhb (earlier version) Discussed with: brooks (thanks!) Differential Revision: https://reviews.freebsd.org/D24672 Notes: svn path=/head/; revision=361466
* Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmpDimitry Andric2020-05-231-267/+267
| | | | | | | | | llvmorg-10.0.1-rc1-0-gf79cd71e145 (aka 10.0.1 rc1). MFC after: 3 weeks Notes: svn path=/head/; revision=361410
* Update GNU_DIFF knob descriptionsEd Maste2020-05-202-4/+0
| | | | | | | | | | After r317209 the WITH_/WITHOUT_GNU_DIFF knob controls only diff3; diff is always BSD diff. MFC after: 1 week Notes: svn path=/head/; revision=361282
* [ath] Flip athratestats to use two columns for now.Adrian Chadd2020-05-161-1/+11
| | | | | | | Yeah I have too many rates on the screen now... Notes: svn path=/head/; revision=361115
* [ath] ok ok, fix the indenting now that I have 5 column packet sizes.Adrian Chadd2020-05-161-2/+2
| | | | | | | | Now things line up nicely again. There's a lot of them, and I don't have a long enough screen right now, but they at least line up right. Notes: svn path=/head/; revision=361107
* libalias: retire cuseeme supportEd Maste2020-05-161-1/+0
| | | | | | | | | | | | | | The CU-SeeMe videoconferencing client and associated protocol is at this point a historical artifact; there is no need to retain support for this protocol today. Reviewed by: philip, markj, allanjude Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24790 Notes: svn path=/head/; revision=361099
* Don't remove ubsec(4) manual page for WITHOUT_USB=yes.John Baldwin2020-05-151-1/+0
| | | | | | | | | | In head this manpage has been removed entirely, but ubsec(4) is a PCI device and not a USB device. MFC after: 1 week Notes: svn path=/head/; revision=361093
* Remove Doxyfile for sys/dev/ubsec since it has been removed.John Baldwin2020-05-151-21/+0
| | | | Notes: svn path=/head/; revision=361092
* Remove the ubsecstats tool since ubsec(4) has been removed.John Baldwin2020-05-152-76/+1
| | | | | | | Reported by: markj Notes: svn path=/head/; revision=361091
* [ath] Extend the colours to 4, not 2.Adrian Chadd2020-05-141-10/+9
| | | | | | | | There's 8 bins in the upcoming changeset to ath/ath_rate, so I need more colours. Yeah, I know. Notes: svn path=/head/; revision=361025
* [ath] Prepare for .. more sample rate control entriesAdrian Chadd2020-05-131-7/+5
| | | | | | | | | | | | | This is in preparation for me bumping how many size buckets are used for ath_rate_sample statistics. * Bump buffer size to 64k * Don't waste 4 lines per bucket size, condense it to two * Alternate colours; my logic made everything after the first two just be black. Oops. Notes: svn path=/head/; revision=361009
* Revert r360944 and r360946 until reported issues can be resolvedConrad Meyer2020-05-121-39/+0
| | | | | | | Reported by: cy Notes: svn path=/head/; revision=360955
* [ar9300] Fix up this tool after test compiling it with LLVM. Le oops.Adrian Chadd2020-05-121-7/+7
| | | | Notes: svn path=/head/; revision=360951
* [ar9300] Update the ar9300 eeprom dump utility to include target power and CTL.Adrian Chadd2020-05-121-0/+278
| | | | | | | | | | This lets me easily see what the EEPROM target power and regulatory compliance table limits are. (Yeah, should've done this in 2013..) Notes: svn path=/head/; revision=360950
* copystr(9): Move to deprecate [2/2]Conrad Meyer2020-05-111-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | Unlike the other copy*() functions, it does not serve to copy from one address space to another or protect against potential faults. It's just an older incarnation of the now-more-common strlcpy(). Add a coccinelle script to tools/ which can be used to mechanically convert existing instances where replacement with strlcpy is trivial. In the two cases which matched, fuse_vfsops.c and union_vfsops.c, the code was further refactored manually to simplify. Replace the declaration of copystr() in systm.h with a small macro wrapper around strlcpy. Remove N redundant MI implementations of copystr. For MIPS, this entailed inlining the assembler copystr into the only consumer, copyinstr, and making the latter a leaf function. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D24672 Notes: svn path=/head/; revision=360944
* Add pkgbase METALOG parse/check toolEd Maste2020-05-102-0/+582
| | | | | | | | | | | | | | | | | `metalog.lua` is a script that reads METALOG file created by pkgbase (make packages) and generates reports about the installed system and issues. This was developed as part of Yang's W2020 University of Waterloo co- operative education term with the FreeBSD Foundation. kevans provided some initial review; we will iterate on it in the tree. Submitted by: Yang Wang <2333@outlook.jp> Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D24563 Notes: svn path=/head/; revision=360877
* OptionalObsoleteFiles.inc: remove objdumpEd Maste2020-05-071-2/+0
| | | | | | | objdump is removed unconditionally in ObsoleteFiles.inc Notes: svn path=/head/; revision=360791
* update WITH_/WITHOUT_BINUTILS descriptions for objdump removalEd Maste2020-05-062-5/+1
| | | | Notes: svn path=/head/; revision=360699
* Initial support for bhyve save and restore.John Baldwin2020-05-051-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Save and restore (also known as suspend and resume) permits a snapshot to be taken of a guest's state that can later be resumed. In the current implementation, bhyve(8) creates a UNIX domain socket that is used by bhyvectl(8) to send a request to save a snapshot (and optionally exit after the snapshot has been taken). A snapshot currently consists of two files: the first holds a copy of guest RAM, and the second file holds other guest state such as vCPU register values and device model state. To resume a guest, bhyve(8) must be started with a matching pair of command line arguments to instantiate the same set of device models as well as a pointer to the saved snapshot. While the current implementation is useful for several uses cases, it has a few limitations. The file format for saving the guest state is tied to the ABI of internal bhyve structures and is not self-describing (in that it does not communicate the set of device models present in the system). In addition, the state saved for some device models closely matches the internal data structures which might prove a challenge for compatibility of snapshot files across a range of bhyve versions. The file format also does not currently support versioning of individual chunks of state. As a result, the current file format is not a fixed binary format and future revisions to save and restore will break binary compatiblity of snapshot files. The goal is to move to a more flexible format that adds versioning, etc. and at that point to commit to providing a reasonable level of compatibility. As a result, the current implementation is not enabled by default. It can be enabled via the WITH_BHYVE_SNAPSHOT=yes option for userland builds, and the kernel option BHYVE_SHAPSHOT. Submitted by: Mihai Tiganus, Flavius Anton, Darius Mihai Submitted by: Elena Mihailescu, Mihai Carabas, Sergiu Weisz Relnotes: yes Sponsored by: University Politehnica of Bucharest Sponsored by: Matthew Grooms (student scholarships) Sponsored by: iXsystems Differential Revision: https://reviews.freebsd.org/D19495 Notes: svn path=/head/; revision=360648
* Spell LOADER correctly so we test lua build.Warner Losh2020-05-011-1/+1
| | | | Notes: svn path=/head/; revision=360541
* Catch up to arm/arm and sparc64 removal.Warner Losh2020-05-011-13/+2
| | | | Notes: svn path=/head/; revision=360539
* When we have an invalid build option, don't rm -rf the currentWarner Losh2020-05-011-1/+12
| | | | | | | | | | | directory. Add a quick sanity check to objdir before using it. It must start with /. If there was a make error getting it, report that and continue with the next target. If there was anything else, bail out. Notes: svn path=/head/; revision=360538
* Remove the SYMVER build option.John Baldwin2020-04-301-2/+0
| | | | | | | | | | | | | | This option was added as a transition aide when symbol versioning was first added. It was enabled by default in 2007 and is supported even by the old GPLv2 binutils. Trying to disable it currently fails to build in libc and at this point it isn't worth fixing the build. Reported by: Michael Dexter Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D24637 Notes: svn path=/head/; revision=360511
* Due to popular demand, revert r360102.Cy Schubert2020-04-191-7/+4
| | | | | | | Reported by: many Notes: svn path=/head/; revision=360106
* Conditionally install Kerberos rc files based on MK_KERBEROS_SCRIPTSCy Schubert2020-04-191-4/+7
| | | | | | | | | | | | | | instead of MK_KERBEROS. The reason for this change is some users prefer to build FreeBSD WITHOUT_KERBEROS, wanting to retain the Kerberos rc scripts to start/stop MIT Kerberos or Heimdal from ports. PR: 197337 Reported by: Adam McDougall <ebay at looksharp.net> Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D24252 Notes: svn path=/head/; revision=360102