]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
5 years agofuse(4): add tests for some mount options.
asomers [Mon, 18 Mar 2019 18:05:19 +0000 (18:05 +0000)]
fuse(4): add tests for some mount options.

This commit adds tests for the default_permissions and push_symlinks_in
mount options.  It doesn't add tests for allow_other, because I'm not sure
how that will interact with Kyua (the test will need to drop privileges).
All of the other mount options are undocumented.

PR: 216391
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for the FOPEN_KEEP_CACHE option
asomers [Fri, 15 Mar 2019 22:47:20 +0000 (22:47 +0000)]
fuse(4): add tests for the FOPEN_KEEP_CACHE option

PR: 236560
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for the FUSE_ASYNC_READ option
asomers [Fri, 15 Mar 2019 20:16:35 +0000 (20:16 +0000)]
fuse(4): add tests for the FUSE_ASYNC_READ option

Sponsored by: The FreeBSD Foundation

5 years agoVOP_INACTIVE(9): clarify wording
asomers [Fri, 15 Mar 2019 18:50:36 +0000 (18:50 +0000)]
VOP_INACTIVE(9): clarify wording

Reviewed by: kib, 0mp
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D19596

5 years agofuse(4): add tests for ENOSYS special cases
asomers [Fri, 15 Mar 2019 18:06:51 +0000 (18:06 +0000)]
fuse(4): add tests for ENOSYS special cases

PR: 236557
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): combine common code in the tests
asomers [Fri, 15 Mar 2019 17:04:33 +0000 (17:04 +0000)]
fuse(4): combine common code in the tests

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add some miscellaneous test cases that I had overlooked
asomers [Fri, 15 Mar 2019 16:16:50 +0000 (16:16 +0000)]
fuse(4): add some miscellaneous test cases that I had overlooked

* Test that FUSE_FLUSH and FUSE_RELEASE release POSIX file locks
* Test that FUSE_SETATTR's attr caching feature works
* Fix some minor mistakes in the posix file lock tests

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for FUSE_DESTROY, FUSE_FORGET, and unlinking open files
asomers [Fri, 15 Mar 2019 14:49:27 +0000 (14:49 +0000)]
fuse(4): add tests for FUSE_DESTROY, FUSE_FORGET, and unlinking open files

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for extended attributes
asomers [Thu, 14 Mar 2019 23:05:59 +0000 (23:05 +0000)]
fuse(4): add tests for extended attributes

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for FUSE_INTERRUPT
asomers [Thu, 14 Mar 2019 17:20:24 +0000 (17:20 +0000)]
fuse(4): add tests for FUSE_INTERRUPT

This required changing the way that all operations are mocked.  Previously
MockFS::process had one input argument and one output argument.  Now, it
returns a vector of zero or more responses.  This allows tests to simulate
conditions where the filesystem daemon has a queue depth > 1.

PR: 236530
Sponsored by: The FreeBSD Foundation

5 years agofuse(4) tests: minor tweaks
asomers [Thu, 14 Mar 2019 15:07:46 +0000 (15:07 +0000)]
fuse(4) tests: minor tweaks

* better debugging for FUSE_SETATTR
* Move a big variable from stack to heap

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): skip the Write.append test unless vfs.fuse.sync_resize==0
asomers [Thu, 14 Mar 2019 14:59:59 +0000 (14:59 +0000)]
fuse(4): skip the Write.append test unless vfs.fuse.sync_resize==0

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): combine common code in the tests
asomers [Thu, 14 Mar 2019 00:12:59 +0000 (00:12 +0000)]
fuse(4): combine common code in the tests

Combine a bunch of mostly similar expect_* methods into utils.cc, and only
define FH in a single place.

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for POSIX file locking operations
asomers [Wed, 13 Mar 2019 22:16:00 +0000 (22:16 +0000)]
fuse(4): add tests for POSIX file locking operations

PR: 234581
Sponsored by: The FreeBSD Foundation

5 years agofues(4): add tests for FUSE_RELEASEDIR
asomers [Wed, 13 Mar 2019 13:41:05 +0000 (13:41 +0000)]
fues(4): add tests for FUSE_RELEASEDIR

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for opendir and readdir
asomers [Tue, 12 Mar 2019 22:25:59 +0000 (22:25 +0000)]
fuse(4): add tests for opendir and readdir

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for FUSE_OPENDIR, FUSE_FSYNC, and FUSE_FSYNCDIR
asomers [Mon, 11 Mar 2019 22:29:56 +0000 (22:29 +0000)]
fuse(4): add tests for FUSE_OPENDIR, FUSE_FSYNC, and FUSE_FSYNCDIR

And one more for FUSE_WRITE, too.

PR: 236379
PR: 236473
PR: 236474
Sponsored by: The FreeBSD Foundation

5 years agoUpdate copyright info in fuse tests
asomers [Mon, 11 Mar 2019 19:10:48 +0000 (19:10 +0000)]
Update copyright info in fuse tests

* Add SPDX tags
* Remove "All Rights Reserved", with permission of emaste (FBSD Foundation)

Reported by: emaste
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for FUSE_READ
asomers [Mon, 11 Mar 2019 18:28:20 +0000 (18:28 +0000)]
fuse(4): add tests for FUSE_READ

PR: 236379
PR: 236466
PR: 236472
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): Add some tests for FUSE_FLUSH
asomers [Fri, 8 Mar 2019 23:07:51 +0000 (23:07 +0000)]
fuse(4): Add some tests for FUSE_FLUSH

PR: 236405
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for FUSE_WRITE and FUSE_RELEASE
asomers [Fri, 8 Mar 2019 19:01:31 +0000 (19:01 +0000)]
fuse(4): add tests for FUSE_WRITE and FUSE_RELEASE

And a few definitions needed for upcoming FUSE_READ tests

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add dtrace probe for illegal short writes
asomers [Fri, 8 Mar 2019 02:00:49 +0000 (02:00 +0000)]
fuse(4): add dtrace probe for illegal short writes

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests relating to open(2) flags
asomers [Thu, 7 Mar 2019 18:12:34 +0000 (18:12 +0000)]
fuse(4): add tests relating to open(2) flags

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for unlink, rmdir, and statfs
asomers [Wed, 6 Mar 2019 00:38:10 +0000 (00:38 +0000)]
fuse(4): add tests for unlink, rmdir, and statfs

Also, combine some common code for sending cacheable negative lookup
responses.

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add test cases for FUSE_LINK and FUSE_RENAME
asomers [Tue, 5 Mar 2019 21:40:08 +0000 (21:40 +0000)]
fuse(4): add test cases for FUSE_LINK and FUSE_RENAME

Also, add a FUSE_LOOKUP test case for subdirectories, and improve debugging
output.

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for FUSE_MKDIR and FUSE_ACCESS
asomers [Tue, 5 Mar 2019 18:53:28 +0000 (18:53 +0000)]
fuse(4): add tests for FUSE_MKDIR and FUSE_ACCESS

PR: 236291
PR: 236231
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): combine some common code in the tests
asomers [Tue, 5 Mar 2019 03:27:32 +0000 (03:27 +0000)]
fuse(4): combine some common code in the tests

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests related to FUSE_MKNOD
asomers [Tue, 5 Mar 2019 00:27:54 +0000 (00:27 +0000)]
fuse(4): add tests related to FUSE_MKNOD

PR: 236236
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for CREATE, OPEN, READLINK, SETATTR and SYMLINK
asomers [Mon, 4 Mar 2019 22:07:33 +0000 (22:07 +0000)]
fuse(4): add tests for CREATE, OPEN, READLINK, SETATTR and SYMLINK

The new SETATTR tests deal with already-open files.

PR: 235775
PR: 236231
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): fix the entry_cache_negative_timeout test
asomers [Mon, 4 Mar 2019 22:03:09 +0000 (22:03 +0000)]
fuse(4): fix the entry_cache_negative_timeout test

I committed too soon in r344775; the test actually passes when I write it
correctly.

PR: 236226
Sponsored by: The FreeBSD Foundation

5 years agofuse(4): add tests for negative lookups
asomers [Mon, 4 Mar 2019 19:10:22 +0000 (19:10 +0000)]
fuse(4): add tests for negative lookups

PR: 236226
Sponsored by: The FreeBSD Foundation

5 years agofuse(4) use a global environment check.
asomers [Sat, 2 Mar 2019 16:28:29 +0000 (16:28 +0000)]
fuse(4) use a global environment check.

This is marginally faster than using an environment check in each test case.
Also, if the global check fails then all of the tests are skipped.  Oddly,
it's not possible to skip a test in any other way.

Also, allow the test to run as a normal user if vfs.usermount=1 and
/dev/fuse is accessible.

Reported by: ngie
Sponsored by: The FreeBSD Foundation

5 years agoAdd some fuse(4) tests for FUSE_SETATTR
asomers [Sat, 2 Mar 2019 15:32:20 +0000 (15:32 +0000)]
Add some fuse(4) tests for FUSE_SETATTR

Sponsored by: The FreeBSD Foundation

5 years agoBegin a fuse(4) test suite
asomers [Fri, 1 Mar 2019 23:53:05 +0000 (23:53 +0000)]
Begin a fuse(4) test suite

It only tests the kernel portion of fuse, not the userspace portion (which
comes from sysutils/fusefs-libs).  The kernel-userspace interface is
de-facto standardized, and this test suite seeks to validate FreeBSD's
implementation.

It uses GoogleMock to substitute for a userspace daemon and validate the
kernel's behavior in response to filesystem access.  GoogleMock is
convenient because it can validate the order, number, and arguments of each
operation, and return canned responses.

But that also means that the test suite must use GoogleTest, since
GoogleMock is incompatible with atf-c++ and atf.test.mk does not allow C++
programs to use atf-c.

This commit adds the first 10 test cases out of an estimated 130 total.

PR: 235775, 235773
Sponsored by: The FreeBSD Foundation

5 years agoFix typos from r344664
asomers [Fri, 1 Mar 2019 15:49:11 +0000 (15:49 +0000)]
Fix typos from r344664

Sponsored by: The FreeBSD Foundation

5 years agofuse(4): convert debug printfs into dtrace probes
asomers [Thu, 28 Feb 2019 19:27:54 +0000 (19:27 +0000)]
fuse(4): convert debug printfs into dtrace probes

fuse(4) was heavily instrumented with debug printf statements that could
only be enabled with compile-time flags.  They fell into three basic groups:

1) Totally redundant with dtrace FBT probes.  These I deleted.
2) Print textual information, usually error messages.  These I converted to
   SDT probes of the form fuse:fuse:FILE:trace.  They work just like the old
   printf statements except they can be enabled at runtime with dtrace.
   They can be filtered by FILE and/or by priority.
3) More complicated probes that print detailed information.  These I
   converted into ad-hoc SDT probes.

Sponsored by: The FreeBSD Foundation

5 years agoCreate a project branch for fuse(4) work.
asomers [Tue, 26 Feb 2019 03:28:14 +0000 (03:28 +0000)]
Create a project branch for fuse(4) work.

The branch will be used for a new test suite, bug fixes, and various other
enhancements to fuse.

Sponsored by: The FreeBSD Foundation

5 years agoSet maximum bus clock speed from hints when attaching hinted spibus(4) children.
ian [Mon, 25 Feb 2019 23:49:58 +0000 (23:49 +0000)]
Set maximum bus clock speed from hints when attaching hinted spibus(4) children.

Some devices (such as spigen(4)) document that this works, but it appears that the
code to implement it never got added.

5 years agoImprove error handling: bail out if one of the files scheduled
sobomax [Mon, 25 Feb 2019 23:45:36 +0000 (23:45 +0000)]
Improve error handling: bail out if one of the files scheduled
to go to the FS image we are making cannot be read (e.g. EPERM).
Current behaviour when we issue waring but still proceeed and
return success is definitely not correct: masking out error
condition as well as making a slighly inconsistent FS where
attempt to access the file in question ends up in EBADF. See
linked DR for details.

MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D18584

5 years agoAfter r344530, remove leading slashes from libprivateifconfig lines in
dim [Mon, 25 Feb 2019 22:11:44 +0000 (22:11 +0000)]
After r344530, remove leading slashes from libprivateifconfig lines in
ObsoleteFiles.inc.

5 years agoasmc: Add support for Mac mini 2,1
dab [Mon, 25 Feb 2019 21:59:01 +0000 (21:59 +0000)]
asmc: Add support for Mac mini 2,1

PR: 235798
Submitted by: Trev <fbsdbugs4@sentry.org>
Reported by: Trev <fbsdbugs4@sentry.org>
MFC after: 1 week

5 years agoAfter a crash, a file that extends into indirect blocks may end up
mckusick [Mon, 25 Feb 2019 21:58:19 +0000 (21:58 +0000)]
After a crash, a file that extends into indirect blocks may end up
shorter than its size resulting in a hole as its final block (which
is a violation of the invarients of the UFS filesystem).

Soft updates will always ensure that the file size is correct when
writing inodes to disk for files that contain only direct block
pointers. However soft updates does not roll back sizes for files
with indirect blocks that it has set to unallocated because their
contents have not yet been written to disk. Hence, the file can
appear to have a hole at its end because the block pointer has been
rolled back to zero when its inode was written to disk. Thus,
fsck_ffs calculates the last allocated block in the file. For files
that extend into indirect blocks, fsck_ffs checks for a size past
the last allocated block of the file and if that is found, shortens
the file to reference the last allocated block thus avoiding having
it reference a hole at its end.

Submitted by: Chuck Silvers <chs@netflix.com>
Tested by:    Chuck Silvers <chs@netflix.com>
MFC after:    1 week
Sponsored by: Netflix

5 years agoFix handling of rights on stdio streams, take two.
markj [Mon, 25 Feb 2019 19:47:27 +0000 (19:47 +0000)]
Fix handling of rights on stdio streams, take two.

Split the rights-limiting code into two cases: if one of the input
files isn't a regular file, use caph_limit_stream(3) instead of
open-coding the same logic; if both input files are regular files,
and the initial attempts to map them succeed, we limit the rights on
those files to CAP_MMAP_R.

Add a regression test for PR 234885.

PR: 234885
Reviewed by: delphij
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D19216

5 years agoImprove vmem tuning for platforms without a direct map.
markj [Mon, 25 Feb 2019 19:22:13 +0000 (19:22 +0000)]
Improve vmem tuning for platforms without a direct map.

On platforms without a direct map (i.e., platforms without
UMA_MD_SMALL_ALLOC defined), the boundary tag allocator reserves a
number of tags for use when allocating a new slab of boundary tags,
as such platforms require free boundary tags in order to allocate
boundary tags.  r327899 increased the number of boundary tags required
for a KVA allocation in the worst case, and the aforementioned
reservation was not updated accordingly.  In some cases, this could
lead to a system hang.  Fix the problem by increasing this reservation.

Also reduce KVA_QUANTUM on systems lacking superpage support.
The previous import quantum (4MB with a 4KB page size) was quite large
for systems with limited KVA, and fragmentation in kernel_arena could
cause kernel memory allocation failures even with a substantial amount
of free KVA.

Reported and tested by: jhibbits
Reviewed by: alc, kib
No objections: jeff
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D19337

5 years agoFix another bug introduced during the review process of r344140:
sef [Mon, 25 Feb 2019 19:14:16 +0000 (19:14 +0000)]
Fix another bug introduced during the review process of r344140:
the tag wasn't being computed properly due to chaning a >= comparison
to an == comparison.

Specifically:  CBC-MAC encodes the length of the authorization data
into the the stream to be encrypted/hashed.  For short data, this is
two bytes (big-endian 16 bit value); for larger data, it's 6 bytes
(a prefix of 0xff, 0xfe, followed by a 32-bit big-endian length).  And
there's a larger size, which is 10 bytes.  These extra bytes weren't
being accounted for with the post-review code.  The other bit that then came
into play was that OCF only calls the Update code with blksiz=16, which
meant that I had to ignore the length variable.  (It also means that it
can't be called with a single buffer containing the AAD and payload;
however, OCF doesn't do this for the software-only algorithsm.)

I tested with this script:

ALG=aes-ccm
DEV=soft

for aad in 0 1 2 3 4 14 16 24 30 32 34 36 1020
do
        for dln in 16 32 1024 2048 10240
        do
                echo "Testing AAD length ${aad} data length ${dln}"
                /root/cryptocheck -A ${aad} -a ${ALG} -d ${DEV} ${dln}
        done
done

Reviewed by: cem
Sponsored by: iXsystems Inc.

5 years agoIncrease ctfconvert buffer size
luporl [Mon, 25 Feb 2019 18:52:47 +0000 (18:52 +0000)]
Increase ctfconvert buffer size

Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D19353

5 years agoUpgrade to OpenPAM Tabebuia.
des [Mon, 25 Feb 2019 18:41:16 +0000 (18:41 +0000)]
Upgrade to OpenPAM Tabebuia.

5 years agoRevert r344211: wlandebug: disable PIE to fix build failure
emaste [Mon, 25 Feb 2019 18:27:19 +0000 (18:27 +0000)]
Revert r344211: wlandebug: disable PIE to fix build failure

As of r344530 libifconfig is built as a standard INTERNALLIB and the
wlandebug PIE workaround from r344211 can be removed.

5 years agoRemove unintend change to capability.h from r344530
emaste [Mon, 25 Feb 2019 18:25:53 +0000 (18:25 +0000)]
Remove unintend change to capability.h from r344530

I expect to remove capability.h in the near future, but it should not
have been part of this commit.

5 years agoMake libifconfig INTERNALLIB
emaste [Mon, 25 Feb 2019 18:22:20 +0000 (18:22 +0000)]
Make libifconfig INTERNALLIB

Instead of PRIVATELIB + NO_PIC.  This avoids the need for the wlandebug
PIE special case added in r344211, and provides a stronger guarantee
against 3rd party software coming to depend on the API or ABI.

If / when we declare the API/ABI to be stable we can make it a normal
library.

Discussed with: bapt
Sponsored by: The FreeBSD Foundation

5 years agoFix a paste-o that broke the build on all arches.
ian [Mon, 25 Feb 2019 18:11:59 +0000 (18:11 +0000)]
Fix a paste-o that broke the build on all arches.

Reported by: many
Pointy hat: ian@

5 years agoarm64: rockchip: clk: Set the write mask when setting the clock mux
manu [Mon, 25 Feb 2019 17:40:00 +0000 (17:40 +0000)]
arm64: rockchip: clk: Set the write mask when setting the clock mux

RockChip clocks have a write mask in the upper 16bits of the mux register
which wasn't set in the set_mux function.
Also the wrong parent was tested instead of the real current one, when
switch parent, test with the current one before.

Pointy Hat:    manu
MFC after: 1 week

5 years agoResolve a name conflict when both SpiFlash and DataFlash devices are present.
ian [Mon, 25 Feb 2019 17:30:01 +0000 (17:30 +0000)]
Resolve a name conflict when both SpiFlash and DataFlash devices are present.

Both SpiFlash (mx25l) and DataFlash (at45d) drivers create a disk device
with a name of /dev/flash/spiN where N is the driver's unit number.  If
both types of devices are present in the same system, this creates a fatal
conflict that prevents attachment of whichever device attaches second
(because mx25l0 and at45d0 both try to create a spi0).

This gives each type of device a unique name (mx25lN or at45dN respectively)
and also adds an alias of spiN for compatibility.  When both device types
appear in the same system, only the first to attach gets the spiN alias.
When the second device attaches there is a non-fatal warning that the alias
can't be created, but both devices are still accessible via their primary
names (and there is no need for the spiN name to work for backwards
compatibility on such a system, because it has never been possible to use
the spiN names when both devices exist).

5 years agoAdd a metadata entry for the AT45DB641E chip. This chip has the same 3-byte
ian [Mon, 25 Feb 2019 16:40:10 +0000 (16:40 +0000)]
Add a metadata entry for the AT45DB641E chip.  This chip has the same 3-byte
jedec ID as its older cousin the AT45DB642D, but uses a different page size.
The only way to distinguish between the two chips is that the 2D chip has
0 bytes of extended ID info and the new 1E has 1 byte of extended ID.  The
actual value of the extended ID byte is all zeroes.  In other words, it's
the presence of the extended info that identifies this chip. (Presumably
a future upgrade might define non-zero values for the extended ID byte.)

5 years agocxgbe(4): Updates to the default and hashfilter configurations.
np [Mon, 25 Feb 2019 16:28:13 +0000 (16:28 +0000)]
cxgbe(4): Updates to the default and hashfilter configurations.

- Do not use nvf = 4 as it is not really supported by the firmware.
  Firmwares 1.23.3.0 and above will ignore it silently.
- Increase PF4's share of the VIs and let it use all of the RSS table.

MFC after: 2 weeks
Sponsored by: Chelsio Communications

5 years agoInclude the jedec "extended device information string" in the criteria used
ian [Mon, 25 Feb 2019 16:20:58 +0000 (16:20 +0000)]
Include the jedec "extended device information string" in the criteria used
to match a chip to our table of metadata describing the chips. At least one
new DataFlash chip has a 3-byte jedec ID identical to its predecessors and
differs only in the extended info, and it has different metadata requiring a
unique entry in the table.  This paves the way for supporting such chips.

The metadata table now includes two new fields, extmask and extid.  The two
bytes of extended info obtained from the chip are ANDed with extmask then
compared to extid, so it's possible to use only a subset of the extended
info in the matching.

We now always read 6 bytes of jedec ID info. Most chips don't return any
extended info, and the values read back for those two bytes may be
indeterminate, but such chips have extmask and extid values of 0x0000 in the
table, so the extid effectively doesn't participate in the matching on those
chips and it doesn't matter what they return in the extended info bytes.

5 years agocxgbe(4): Use correct port_info in the call to is_bt().
np [Mon, 25 Feb 2019 15:47:22 +0000 (15:47 +0000)]
cxgbe(4): Use correct port_info in the call to is_bt().

This fixes a panic during configuration if the tx channel of a port
isn't the same as its port id.

Reported by: Fabrice Bruel
MFC after: 1 week
Sponsored by: Chelsio Communications

5 years agoAdd missing types to the sysctl(9) manual page
0mp [Mon, 25 Feb 2019 15:03:50 +0000 (15:03 +0000)]
Add missing types to the sysctl(9) manual page

Update the diff to include other missing sysctl types found in sysctl.h.

Some of these sysctls are already documented in other pages (e.g counter(9)
and ZONE(9)), but they should at least be mentioned here for completeness.

This patch now documents all of the following:
- SYSCTL_BOOL/SYSCTL_ADD_BOOL
- SYSCTL_COUNTER_U64/SYSCTL_ADD_COUNTER_U64
- SYSCTL_COUNTER_U64_ARRAY/SYSCTL_ADD_COUNTER_U64_ARRAY
- SYSCTL_SBINTIME_MSEC/SYSCTL_ADD_SBINTIME_MSEC
- SYSCTL_SBINTIME_USEC/SYSCTL_ADD_SBINTIME_USEC
- SYSCTL_UMA_CUR/SYSCTL_ADD_UMA_CUR
- SYSCTL_UMA_MAX/SYSCTL_ADD_UMA_MAX

Submitted by: mhorne063_gmail.com
Reviewed by: bcr, hselasky
Approved by: bcr (doc), hselasky (src)
Approved by: krion (mentor, implicit), mat (mentor, implicit)
Differential Revision: https://reviews.freebsd.org/D19272

5 years agoCheck the index hasn't changed after writing the cmp entry.
andrew [Mon, 25 Feb 2019 13:15:34 +0000 (13:15 +0000)]
Check the index hasn't changed after writing the cmp entry.

If an interrupt fires while writing the cmp entry we may have a partial
entry. Work around this by using atomic_cmpset to set the new index. If it
fails we need to set the previous index value and try again as the entry
may be in an inconsistent state.

This fixes messages similar to the following from syzkaller:
bad comp 224 type 2163727253

Reviewed by: tuexen
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D19287

5 years agonetmap: remove redundant call to nm_set_native_flags()
vmaffione [Mon, 25 Feb 2019 09:57:06 +0000 (09:57 +0000)]
netmap: remove redundant call to nm_set_native_flags()

This redundant call was introduced by mistake in r343772.

MFC after: 3 days
Sponsored by: Sunny Valley Networks

5 years agoSwitch to using config_intrhook_oneshot(). That allows the error handling
ian [Mon, 25 Feb 2019 03:29:12 +0000 (03:29 +0000)]
Switch to using config_intrhook_oneshot().  That allows the error handling
in the delayed attach to use early returns, which allows reducing the level
of indentation.  So all in all, what looks like a lot of changes is really
no change in behavior, mostly just moving whitespace around.

5 years agoAdd support for probing/attaching on FDT-based systems.
ian [Sun, 24 Feb 2019 23:16:33 +0000 (23:16 +0000)]
Add support for probing/attaching on FDT-based systems.

5 years agoAdd a functional detach() implementation to make module unloading possible.
ian [Sun, 24 Feb 2019 23:08:53 +0000 (23:08 +0000)]
Add a functional detach() implementation to make module unloading possible.

5 years agoMake arp code return (more) errors.
bz [Sun, 24 Feb 2019 22:49:56 +0000 (22:49 +0000)]
Make arp code return (more) errors.

arprequest() is a void function and in case of error we simply
return without any feedback. In case of any local operation
or *if_output() failing no feedback is send up the stack for the
packet which triggered the arp request to be sent.
arpresolve_full() has three pre-canned possible errors returned
(if we have not yet sent enough arp requests or if we tried
often enough without success) otherwise "no error" is returned.

Make arprequest() an "internal" function arprequest_internal() which
does return a possible error to the caller. Preserve arprequest()
as a void wrapper function for external consumers.
In arpresolve_full() add an extra error checking. Use the
arprequest_internal() function and only return an error if non
of the three ones (mentioend above) are already set.

This will return possible errors all the way up the stack and
allows functions and programs to react on the send errors rather
than leaving them in the dark. Also they might get more detailed
feedback of why packets cannot be sent and they will receive it
quicker.

Reviewed by: karels, hselasky
Differential Revision: https://reviews.freebsd.org/D18904

5 years agoPull in r354756 from upstream llvm trunk (by Craig Topper):
dim [Sun, 24 Feb 2019 21:22:16 +0000 (21:22 +0000)]
Pull in r354756 from upstream llvm trunk (by Craig Topper):

  [X86] Fix tls variable lowering issue with large code model

  Summary:
  The problem here is the lowering for tls variable. Below is the DAG
  for the code. SelectionDAG has 11 nodes:

  t0: ch = EntryToken
t8: i64,ch = load<(load 8 from `i8 addrspace(257)* null`,
addrspace 257)> t0, Constant:i64<0>, undef:i64
  t10: i64 = X86ISD::WrapperRIP TargetGlobalTLSAddress:i64<i32*
  @x> 0 [TF=10]
t11: i64,ch = load<(load 8 from got)> t0, t10, undef:i64
      t12: i64 = add t8, t11
    t4: i32,ch = load<(dereferenceable load 4 from @x)> t0, t12,
    undef:i64
  t6: ch = CopyToReg t0, Register:i32 %0, t4

  And when mcmodel is large, below instruction can NOT be folded.

    t10: i64 = X86ISD::WrapperRIP TargetGlobalTLSAddress:i64<i32* @x> 0
    [TF=10]
  t11: i64,ch = load<(load 8 from got)> t0, t10, undef:i64

  So "t11: i64,ch = load<(load 8 from got)> t0, t10, undef:i64" is
  lowered to " Morphed node: t11: i64,ch = MOV64rm<Mem:(load 8 from
  got)> t10, TargetConstant:i8<1>, Register:i64 $noreg,
  TargetConstant:i32<0>, Register:i32 $noreg, t0"

  When llvm start to lower "t10: i64 = X86ISD::WrapperRIP
  TargetGlobalTLSAddress:i64<i32* @x> 0 [TF=10]", it fails.

  The patch is to fold the load and X86ISD::WrapperRIP.

  Fixes PR26906

  Patch by LuoYuanke

  Reviewers: craig.topper, rnk, annita.zhang, wxiao3

  Reviewed By: rnk

  Subscribers: llvm-commits

  Tags: #llvm

  Differential Revision: https://reviews.llvm.org/D58336

This should fix "fatal error: error in backend: Cannot select" messages
when compiling <ctype.h> functions using -mcmodel=large.

Reported by: phk
PR: 233143
MFC after: 3 days

5 years agosh: Add set -o pipefail
jilles [Sun, 24 Feb 2019 21:05:13 +0000 (21:05 +0000)]
sh: Add set -o pipefail

The pipefail option allows checking the exit status of all commands in a
pipeline more easily, at a limited cost of complexity in sh itself. It works
similarly to the option in bash, ksh93 and mksh.

Like ksh93 and unlike bash and mksh, the state of the option is saved when a
pipeline is started. Therefore, even in the case of commands like
  A | B &
a later change of the option does not change the exit status, the same way
  (A | B) &
works.

Since SIGPIPE is not handled specially, more work in the script is required
for a proper exit status for pipelines containing commands such as head that
may terminate successfully without reading all input. This can be something
like

(
        cmd1
        r=$?
        if [ "$r" -gt 128 ] && [ "$(kill -l "$r")" = PIPE ]; then
                exit 0
        else
                exit "$r"
        fi
) | head

PR: 224270
Relnotes: yes

5 years agoVendor import of OpenPAM Tabebuia.
des [Sun, 24 Feb 2019 20:54:06 +0000 (20:54 +0000)]
Vendor import of OpenPAM Tabebuia.

5 years agoFix build when EVDEV_SUPPORT is option disabled after r344494
wulf [Sun, 24 Feb 2019 19:31:42 +0000 (19:31 +0000)]
Fix build when EVDEV_SUPPORT is option disabled after r344494

MFC with: 344494

5 years agoevdev: export event device properties through sysctl interface
wulf [Sun, 24 Feb 2019 18:47:04 +0000 (18:47 +0000)]
evdev: export event device properties through sysctl interface

A big security advantage of Wayland is not allowing applications to read
input devices all the time. Having /dev/input/* accessible to the user
account subverts this advantage.

libudev-devd was opening the evdev devices to detect their types (mouse,
keyboard, touchpad, etc). This don't work if /dev/input/* is inaccessible.
With the kernel exposing this information as sysctls (kern.evdev.input.*),
we can work w/o /dev/input/* access, preserving the Wayland security model.

Submitted by: Greg V <greg@unrelenting.technology>
Reviewed by: wulf, imp
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D18694

5 years agopf: Small performance tweak
kp [Sun, 24 Feb 2019 17:23:55 +0000 (17:23 +0000)]
pf: Small performance tweak

Because fetching a counter is a rather expansive function we should use
counter_u64_fetch() in pf_state_expires() only when necessary. A "rdr
pass" rule should not cause more effort than separate "rdr" and "pass"
rules. For rules with adaptive timeout values the call of
counter_u64_fetch() should be accepted, but otherwise not.

From the man page:
    The adaptive timeout values can be defined both globally and for
    each rule.  When used on a per-rule basis, the values relate to the
    number of states created by the rule, otherwise to the total number
    of states.

This handling of adaptive timeouts is done in pf_state_expires().  The
calculation needs three values: start, end and states.

1. Normal rules "pass .." without adaptive setting meaning "start = 0"
   runs in the else-section and therefore takes "start" and "end" from
   the global default settings and sets "states" to pf_status.states
   (= total number of states).

2. Special rules like
   "pass .. keep state (adaptive.start 500 adaptive.end 1000)"
   have start != 0, run in the if-section and take "start" and "end"
   from the rule and set "states" to the number of states created by
   their rule using counter_u64_fetch().

Thats all ok, but there is a third case without special handling in the
above code snippet:

3. All "rdr/nat pass .." statements use together the pf_default_rule.
   Therefore we have "start != 0" in this case and we run the
   if-section but we better should run the else-section in this case and
   do not fetch the counter of the pf_default_rule but take the total
   number of states.

Submitted by: Andreas Longwitz <longwitz@incore.de>
MFC after: 2 weeks

5 years agostyle.mdoc.5: Fix a typo
0mp [Sun, 24 Feb 2019 14:20:47 +0000 (14:20 +0000)]
style.mdoc.5: Fix a typo

Reviewed by: eadler
Approved by: eadler (doc)
Approved by: krion (mentor, implicit), mat (mentor, implicit)
Differential Revision: https://reviews.freebsd.org/D19328

5 years agoAn IPv6 address matching should be fixed. Specifying an IPv6
ume [Sun, 24 Feb 2019 03:41:05 +0000 (03:41 +0000)]
An IPv6 address matching should be fixed.  Specifying an IPv6
address by the -a option was broken since r309933.

Reported by: "O. Hartmann" <ohartmann [...] walstatt.org>
MFC after: 1 week

5 years agoFree some space in struct ctl_io_hdr for better use.
mav [Sat, 23 Feb 2019 23:35:52 +0000 (23:35 +0000)]
Free some space in struct ctl_io_hdr for better use.

 - Collapse original_sc and serializing_sc fields into one, since they
are never used simultanously, we have only one local I/O and one remote.

 - Move remote_sglist and local_sglist fields into CTL_PRIV_BACKEND,
since they are used only on Originating SC in XFER mode, where requests
don't ever reach backends, so we can reuse backend's private storage.

MFC after: 2 weeks
Sponsored by: iXsystems, Inc.

5 years agoFurther refine r336195: do not even attempt to verify/update interface's
sobomax [Sat, 23 Feb 2019 23:31:13 +0000 (23:31 +0000)]
Further refine r336195: do not even attempt to verify/update interface's
MTU if we've set it once and there were no changes on the DHCP server
side since the last refresh. This is consistent I believe with how dhclient
handles other settings like IP address, mask etc.

Approved by: cem, eugen
Differential Revision: https://reviews.freebsd.org/D18546

5 years agogcov support
mmacy [Sat, 23 Feb 2019 21:14:00 +0000 (21:14 +0000)]
gcov support

add gcov support and export results as files in debugfs

Reviewed by: hps@
MFC after: 1 week
Sponsored by: iX Systems
Differential Revision: https://reviews.freebsd.org/D19260

5 years agoChange seq_read to seq_load to avoid namespace conflicts with lkpi
mmacy [Sat, 23 Feb 2019 21:04:48 +0000 (21:04 +0000)]
Change seq_read to seq_load to avoid namespace conflicts with lkpi

MFC after: 1 week
Sponsored by: iX Systems

5 years agoimport linux debugfs support
mmacy [Sat, 23 Feb 2019 20:56:41 +0000 (20:56 +0000)]
import linux debugfs support

Reviewed by: hps@
MFC after: 1 week
Sponsored by: iX Systems
Differential Revision: https://reviews.freebsd.org/D19258

5 years agolinux/fs: simplify interop and correct definition of loff_t
mmacy [Sat, 23 Feb 2019 20:45:45 +0000 (20:45 +0000)]
linux/fs: simplify interop and correct definition of loff_t

- offsets can be negative, loff_t needs to be signed, it also simplifies
  interop with the rest of the code base to use off_t than the actual linux
  definition "long long"
- don't rely on the defining "file" to "linux_file" in interface definitions
  as that causes heartache with includes

Reviewed by: hps@
MFC after: 1 week
Sponsored by: iX Systems
Differential Revision: https://reviews.freebsd.org/D19274

5 years agoFix a slew of mdoc errors and warnings.
brueffer [Sat, 23 Feb 2019 09:34:57 +0000 (09:34 +0000)]
Fix a slew of mdoc errors and warnings.

MFC after: 1 week

5 years agoSupport struct ip_mreqn as argument for IP_ADD_MEMBERSHIP. Legacy support
glebius [Sat, 23 Feb 2019 06:03:18 +0000 (06:03 +0000)]
Support struct ip_mreqn as argument for IP_ADD_MEMBERSHIP. Legacy support
for struct ip_mreq remains in place.

The struct ip_mreqn is Linux extension to classic BSD multicast API. It
has extra field allowing to specify the interface index explicitly. In
Linux it used as argument for IP_MULTICAST_IF and IP_ADD_MEMBERSHIP.
FreeBSD kernel also declares this structure and supports it as argument
to IP_MULTICAST_IF since r170613. So, we have structure declared but
not fully supported, this confused third party application configure
scripts.

Code handling IP_ADD_MEMBERSHIP was mixed together with code for
IP_ADD_SOURCE_MEMBERSHIP.  Bringing legacy and new structure support
into the mess would made the "argument switcharoo" intolerable, so
code was separated into its own switch case clause.

MFC after: 3 months
Differential Revision: https://reviews.freebsd.org/D19276

5 years agoRemove disabled CTL_LEGACY_STATS support.
mav [Sat, 23 Feb 2019 04:24:44 +0000 (04:24 +0000)]
Remove disabled CTL_LEGACY_STATS support.

It was not only disabled for quite a while, but also appeared to be broken
at r325517, when maximum number of ports was made configurable.

MFC after: 1 week

5 years agoo Get rid of silly comment which seems to have got life of its own via
sobomax [Sat, 23 Feb 2019 00:00:49 +0000 (00:00 +0000)]
o Get rid of silly comment which seems to have got life of its own via
  copy-and-paste process;

o Return geom_uzip(4) usage back to how manual page prescribes it to be
  used while I am here.

5 years agolkpi: allow late binding of linux_alloc_current
mmacy [Fri, 22 Feb 2019 23:15:32 +0000 (23:15 +0000)]
lkpi: allow late binding of linux_alloc_current

Some consumers may be loosely coupled with the lkpi.
This allows them to call linux_alloc_current without
having a static dependency.

Reviewed by: hps@
MFC after: 1 week
Sponsored by: iX Systems
Differential Revision: https://reviews.freebsd.org/D19257

5 years agoAdd new USB quirk.
hselasky [Fri, 22 Feb 2019 21:57:27 +0000 (21:57 +0000)]
Add new USB quirk.

PR: 235897
MFC after: 1 week
Sponsored by: Mellanox Technologies

5 years agonvdimm: Simple namespace support
bwidawsk [Fri, 22 Feb 2019 19:54:28 +0000 (19:54 +0000)]
nvdimm: Simple namespace support

Add support for simple NVDIMM v1.2 namespaces from the UEFI
version 2.7 specification. The combination of NVDIMM regions and
labels can lead to a wide variety of namespace layouts. Here we
support a simple subset of namespaces where each NVDIMM SPA range
is composed of a single region per member dimm.

Submitted by: D Scott Phillips <d.scott.phillips@intel.com>
Discussed with: kib
MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D18736

5 years agonvdimm: Read NVDIMM namespace labels
bwidawsk [Fri, 22 Feb 2019 19:54:24 +0000 (19:54 +0000)]
nvdimm: Read NVDIMM namespace labels

When attaching to NVDIMM devices, read and verify the namespace
labels from the special namespace label storage area. A later
change will expose NVDIMM namespaces derived from this label data.

Submitted by: D Scott Phillips <d.scott.phillips@intel.com>
Discussed with: kib
MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D18735

5 years agonvdimm: split spa dev into a separate entity
bwidawsk [Fri, 22 Feb 2019 19:54:21 +0000 (19:54 +0000)]
nvdimm: split spa dev into a separate entity

Separate code for exposing a device backed by a system physical
address range away from the NVDIMM spa code. This will allow a
future patch to add support for NVDIMM namespaces while using the
same device code.

Submitted by: D Scott Phillips <d.scott.phillips@intel.com>
Reviewed by: bwidawsk
MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D18736

5 years agoCID 1332000: Logically dead code in sys/dev/pms/RefTisa/tisa/sassata/sas/ini/itdio.c
dab [Fri, 22 Feb 2019 18:43:27 +0000 (18:43 +0000)]
CID 1332000: Logically dead code in sys/dev/pms/RefTisa/tisa/sassata/sas/ini/itdio.c

A pointer is first tested for NULL. If non-NULL, another pointer is
set equal to the first. The second pointer is then checked for NULL
and an error path taken if so. This second test and the associated
path is dead code as the pointer value, having just been checked for
NULL, cannot be NULL at this point. Remove the dead code.

Reported by: Coverity
Reviewed by: daniel.william.ryan_gmail.com, vangyzen
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D19165

5 years agoFix several Coverity-detected issues in newsyslog.
dab [Fri, 22 Feb 2019 15:31:50 +0000 (15:31 +0000)]
Fix several Coverity-detected issues in newsyslog.

- CID 1394815, CID 1305673: Dereference before null check - memory was
  allocated and the allocation checked for NULL with a call to errx()
  if it failed. Code below that was guaranteed that the pointer was
  non-NULL, but there was another check for NULL at the exit of the
  function (after the memory had already been referenced). Eliminate
  the useless NULL check.

- CID 1007452: Resource leak - Storage intended to be allocated and
  returned to the caller was never freed. This was the result of a
  regression in the function signature introduced in r208648 (2010)
  (thanks for that find, @cem!). Fixed by altering the function
  signature and passing the allocated memory to the caller as
  intended. This also fixes PR158794.

- CID 1008620: Logically dead code in newsyslog.c - This was a direct
  result of CID 1007452. Since the memory allocated as described there
  was not returned to the caller, a subsequent check for the memory
  having been allocated was dead code. Returning the memory
  re-animates the code that is the subject of this CID.

- CID 1006131: Unused value - in parsing a configuration file, a
  pointer to the end of the last field was saved, but not used after
  that. Rewrite to use the pointer value. This could have been fixed
  by avoiding the assignment altogether, but this solutions more
  closely follows the pattern used in the preceding code.

PR: 158794
Reported by: Coverity, Ken-ichi EZURA <k.ezura@gmail.com> (PR158794)
Reviewed by: cem, markj
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D19105

5 years agoRework logpage extensibility.
imp [Fri, 22 Feb 2019 15:15:36 +0000 (15:15 +0000)]
Rework logpage extensibility.

Move from using a linker set to a constructor function that's
called. This simplifies the code and is slightly more obvious.  We now
keep a list of page decoders rather than having an array we managed
before. Commands will move to something similar in the future.

Reviewed by: jhb@
Differential Revision: https://reviews.freebsd.org/D19275

5 years agoRevert r344389 & r343906 - Fix Coverity errors in newsyslog
dab [Fri, 22 Feb 2019 14:59:40 +0000 (14:59 +0000)]
Revert r344389 & r343906 - Fix Coverity errors in newsyslog

It was pointed out that a couple of the "memory leak" CIDs that I
fixed were arguably Coverity errors rather than errors in the
newsyslog code and the cure was worse than the disease. Revert both
changes. The first change, which included fixes for other Coverity
errors, will be re-worked to omit the troublesome changes and then
re-committed with the remaining fixes.

Reported by: bde
Sponsored by: Dell EMC Isilon

5 years agoQuick fix for building LINT on i386. A fix is needed on all arches and
bde [Fri, 22 Feb 2019 11:52:40 +0000 (11:52 +0000)]
Quick fix for building LINT on i386.  A fix is needed on all arches and
this one should also work on amd64 and sparc64.

LINT was broken in r312910 with the removal of pc98 support, by changing
the pathname in UKBD_DFLT_KEYBAP from a removed pc98 file to a nonexistent
file.

There are many bugs nearby.  Some are:
- the error is not properly detected and handled by make(1), because
  kbdcontrol(8) exits with status 0 after failing to find the keymap file
- UKBD_DFLT_KEYBAP is supposed to be MI, and is in MI NOTES to try enforce
  this, but 5 out of 8 arches don't support it
- LINT seems to have been broken by this in only 7 out of 8 arches.  mips
  breaks test coverage instead, by killing this option in its MD NOTES.
  arm kills ukbd but that is not enough to configure an unsupported option
  used only by ukbd.

5 years agoOops, actually fix warnings from -Wpointer-sign.
bde [Fri, 22 Feb 2019 07:00:23 +0000 (07:00 +0000)]
Oops, actually fix warnings from -Wpointer-sign.

5 years agoFix warnings from -Wpointer-sign.
bde [Fri, 22 Feb 2019 06:57:46 +0000 (06:57 +0000)]
Fix warnings from -Wpointer-sign.

5 years agoConnect the restored dumb and sc terminal emulators to the kernel build.
bde [Fri, 22 Feb 2019 06:41:47 +0000 (06:41 +0000)]
Connect the restored dumb and sc terminal emulators to the kernel build.
Add or fix options to control static and dynamic configuration.  Keep
the default of scteken, but default to statically configuring all available
emulators (now 3 instead of 1).

The dumb emulator is almost usable.  libedit and libreadline handle
dumb terminals perfectly for at least shell history.  less(1) works
as well as possible except on exit.  But curses programs make messes.
The dumb emulator has strange color support, with 2 dumb colors for
normal output but fancy colorization for the cursor, mouse pointer and
(with a non-dumb initial emulator) for low-level console output.

Using the sc emulator instead of the default of scteken fixes at least
the following bugs:
- NUL is a printing character in cons25 but not in teken
- teken doesn't support fixed colors for "reverse" video.
- The best versions of sc are about 10 times faster than scteken (for
  printing to the frame buffer).  This version is only about 5 times
  faster.

Fix configuration features:
- make SC_DFLT_TERM (for setting the initial emulator) a normal option.

Add configuration features:
- negative options SC_NO_TERM_* for omitting emulators in the static config.
  Modules for emulators might work, but I don't know of any
- vidcontrol -e shows the available emulators
- vidcontrol -E <emulator> sets the active emulator.

5 years agoAdd base to the warning threshold.
ganbold [Fri, 22 Feb 2019 03:11:27 +0000 (03:11 +0000)]
Add base to the warning threshold.

5 years agoCommit a missing piece of r344452.
markj [Thu, 21 Feb 2019 22:56:54 +0000 (22:56 +0000)]
Commit a missing piece of r344452.

MFC with: r344452

5 years agoFix a tracepoint lookup race in fasttrap_pid_probe().
markj [Thu, 21 Feb 2019 22:54:17 +0000 (22:54 +0000)]
Fix a tracepoint lookup race in fasttrap_pid_probe().

fasttrap hooks the userspace breakpoint handler; the hook looks up the
breakpoint address in a hash table of tracepoints.  It is possible for
the tracepoint to be removed by a different thread in between the
breakpoint trap and the hash table lookup, in which case SIGTRAP gets
delivered to the target process.  Fix the problem by adding a
per-process generation counter that gets incremented when a tracepoint
belonging to that process is removed.  Then, when a lookup fails, the
trapping instruction is restarted if the thread's counter doesn't match
that of the process.

Reviewed by: cem
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D19273

5 years agoFix the usage error I introduced in r344192.
sef [Thu, 21 Feb 2019 22:49:39 +0000 (22:49 +0000)]
Fix the usage error I introduced in r344192.

Specifically, I put the new option line in the wrong place, and then fixed
up the rest without realizing it.  This puts the usage statement back to
what it was, with an additional line for the new -V option.

Reported by: mav
Sponsored by: iXsystems Inc.

5 years agoDisconnect fasttrap from the 32-bit powerpc build.
markj [Thu, 21 Feb 2019 22:49:21 +0000 (22:49 +0000)]
Disconnect fasttrap from the 32-bit powerpc build.

An upcoming bug fix requires 64-bit atomics, which aren't implemented on
powerpc.  The powerpc port of fasttrap is incomplete anyway and doesn't
get loaded by dtraceall.ko on powerpc because of a missing dependency;
it's presumed that it's effectively unused.

Discussed with: jhibbits
MFC after: 2 weeks