imp [Wed, 29 Nov 2017 00:46:36 +0000 (00:46 +0000)]
Import lua 5.3.4 to contrib
jeff [Tue, 28 Nov 2017 23:40:54 +0000 (23:40 +0000)]
Eliminate kmem_arena and kmem_object in preparation for further NUMA commits.
The arena argument to kmem_*() is now only used in an assert. A follow-up
commit will remove the argument altogether before we freeze the API for the
next release.
This replaces the hard limit on kmem size with a soft limit imposed by UMA. When
the soft limit is exceeded we periodically wakeup the UMA reclaim thread to
attempt to shrink KVA. On 32bit architectures this should behave much more
gracefully as we exhaust KVA. On 64bit the limits are likely never hit.
Reviewed by: markj, kib (some objections)
Discussed with: alc
Tested by: pho
Sponsored by: Netflix / Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D13187
jeff [Tue, 28 Nov 2017 23:18:35 +0000 (23:18 +0000)]
Move domain iterators into the page layer where domain selection should take
place. This makes the majority of the phys layer explicitly domain specific.
Reviewed by: markj, kib (some objections)
Discussed with: alc
Tested by: pho
Sponsored by: Netflix & Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D13014
imp [Tue, 28 Nov 2017 22:55:31 +0000 (22:55 +0000)]
Import Lua 3.5.4
Downloaded from https://www.lua.org/ftp/lua-5.3.4.tar.gz
asomers [Tue, 28 Nov 2017 20:44:10 +0000 (20:44 +0000)]
Fix fetching ntp leapfile after 325256
Submitted by: Ronald Klop <ronald-lists@klop.ws>
Reviewed by: asomers
MFC after: 3 days
X-MFC-With: 325256
arichardson [Tue, 28 Nov 2017 20:37:27 +0000 (20:37 +0000)]
Fix fabs() for MIPS when used on -0.0
It would previously return negative zero for -0.0 since -0.0 does not
compare less than 0. The issue was discovered when running the libc++
test suite on softfloat MIPS64.
I have verified that both clang and GCC generate sensible code for the
builtin. For soft float they clear the sign bit using integer operations
and in hard float mode they use abs.d.
Reviewed by: #mips, jhb, brooks, imp, emaste
Approved by: jhb (mentor)
Differential Revision: https://reviews.freebsd.org/D13135
glebius [Tue, 28 Nov 2017 19:25:01 +0000 (19:25 +0000)]
Revert r325558 as it is incorrect.
glebius [Tue, 28 Nov 2017 19:18:00 +0000 (19:18 +0000)]
Fix obvious NULL pointer dereference from r310350.
brooks [Tue, 28 Nov 2017 18:23:17 +0000 (18:23 +0000)]
Disable vim syntax highlighting.
Vim's default pick doesn't understand that ';' is a comment character
and the result looks horrible.
Reviewed by: emaste
gjb [Tue, 28 Nov 2017 18:08:14 +0000 (18:08 +0000)]
Correct a comment after r326330.
MFC after: 3 days
MFC with: r326330
Sponsored by: The FreeBSD Foundation
gjb [Tue, 28 Nov 2017 18:02:58 +0000 (18:02 +0000)]
Add a comment to release/release.conf.sample documenting
EMBEDDEDPORTS. [1]
Remove and update stale documentation from release(7) while here.
PR: 206344 [1]
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
alc [Tue, 28 Nov 2017 17:46:03 +0000 (17:46 +0000)]
When the swap pager allocates space on disk, it requests contiguous
blocks in a single call to blist_alloc(). However, when it frees
that space, it previously called blist_free() on each block, one at a
time. With this change, the swap pager identifies ranges of
contiguous blocks to be freed, and calls blist_free() once per
range. In one extreme case, that is described in the review, the time
to perform an munmap(2) was reduced by 55%.
Submitted by: Doug Moore <dougm@rice.edu>
Reviewed by: kib
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D12397
andrew [Tue, 28 Nov 2017 16:26:56 +0000 (16:26 +0000)]
Fix the direction we move the instruction to retuirn to after exiting the
kernel debugger. We should skip the breakpoint instruction, not execute the
instruction before it.
Pointy-hat to: andrew
MFC after: 1 week
Sponsored by: DARPA, AFRL
fsu [Tue, 28 Nov 2017 16:25:46 +0000 (16:25 +0000)]
Sync bsd_to_linux_errno[] table with i386 and amd64 tables in the sys directory.
Additional fix for r326282.
MFC after: 1 week
Approved by: pfg
gjb [Tue, 28 Nov 2017 16:00:27 +0000 (16:00 +0000)]
Set DISTDIR and WRKDIRPREFIX when building ports within the
chroot(8) to avoid mtime changes within the ports checkout,
which can cause checksum differences.
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
trasz [Tue, 28 Nov 2017 12:53:55 +0000 (12:53 +0000)]
Make kdb_reenter() silent when explicitly called from db_error().
This removes the useless backtrace on various ddb(4) user errors.
Reviewed by: jhb@
Obtained from: CheriBSD
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D13212
andrew [Tue, 28 Nov 2017 11:04:47 +0000 (11:04 +0000)]
When we exit the kernel debugger having entered because of a breakpoint
instruction we need to jump over the instruction. Without this we will
execute the same instruction again and enter into the debugger again.
PR: 223917
Reported by: emaste
MFC after: 1 week
Sponsored by: DARPA, AFRL
kib [Tue, 28 Nov 2017 09:34:43 +0000 (09:34 +0000)]
Fix index calculation for the page table pages for efirt 1:1 map.
Stop issuing pre-assigned number to enumerate all page table pages,
the assignment is incorrect. Instead automatically calculate the next
unused index. This index in fact does not serve any purpose except to
be unique to satisfy vm_page_grab() interface, we do not look up the
page by the index later.
Reported and tested by: emaste
Reviewed by: andrew
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
PR: 223906
Differential revision: https://reviews.freebsd.org/D13273
nwhitehorn [Tue, 28 Nov 2017 06:31:39 +0000 (06:31 +0000)]
Back out OF module installation in the event of failure. PS3 firmware gives
some ancient FDT version (2) that fails the init check in OFW_FDT. It is
still possible to make progress, but not while the OF layer is going crazy.
bryanv [Tue, 28 Nov 2017 06:21:37 +0000 (06:21 +0000)]
Correctly report the vmxnet3 link down media status
Reported by: lew@perftech.com
MFC after: 1 week
nwhitehorn [Tue, 28 Nov 2017 05:39:48 +0000 (05:39 +0000)]
Remove assertion that a CPU be present before returning a PCPU for it. It
is up to the caller to check for a NULL return value. The assert was meant
to catch buggy code that did not check the return value. Some code, however,
was smart and used the return value to see if a CPU existed, which this
broke.
Requested by: jhb@
brooks [Tue, 28 Nov 2017 01:35:28 +0000 (01:35 +0000)]
Update vis(3) the latest from NetBSD.
This adds VIS_DQ for compatiblity with OpenBSD.
Correct by an off-by-one error and a read buffer overflow detected using
asan.
MFC after: 1 day
landonf [Tue, 28 Nov 2017 00:42:44 +0000 (00:42 +0000)]
siba(4): Add support for devices have neither PMU nor PWRCTL support.
Very early BHND Wi-Fi devices (e.g. BCM4318) do not support any form of
dynamic clock control; on these devices, any PMU requests that cannot be
met by the device's fixed clock state will return an appropriate error
code.
Approved by: adrian (mentor, implicit)
Sponsored by: The FreeBSD Foundation
landonf [Tue, 28 Nov 2017 00:12:14 +0000 (00:12 +0000)]
bhndb(4): Implement bridge support for the BCM4312 and other PCI_V0 chipsets.
Very early (PCI_V0) Broadcom PCI Wi-Fi chipsets have a few quirks when
compared to later PCI(e) core revisions:
- The standard static BAR0 mapping of the PCI core registers is discontiguous,
with siba's cfg0 register block mapped distinctly from the other core
registers.
- No dedicated ChipCommon register mapping is provided; instead, the
single configurable register window must be used to access both
ChipCommon and D11 core registers. The D11 core's operational semantics
guarantee the safety of -- after disabling interrupts -- borrowing
the single dynamic register window to perform the few ChipCommon
operations required by a driver.
To support these early PCI devices:
- Allow defining multiple discontiguous BHNDB_REGWIN_T_CORE register
windows that map a single port/region, and producing bridged resource
allocations backed by those discontiguous windows.
- Support stealing existing register window allocations to fulfill indirect
bhnd(4) bus I/O requests within address ranges tagged with
BHNDB_ALLOC_FULFILL_ON_OVERCOMMIT.
- Fix an inverted test of bhndb_is_pcie_attached() that disabled
PCI-only clock bring-up required by these devices.
Approved by: adrian (mentor, implicit)
Sponsored by: The FreeBSD Foundation
landonf [Mon, 27 Nov 2017 22:38:44 +0000 (22:38 +0000)]
siba(4): fix workaround for BCM4312 D11 core backplane timeouts
The SIBA_QUIRK_PCIE_D11_SB_TIMEOUT quirk should match on all BCM4312
revisions, and backplane service timeouts must also be disabled.
Approved by: adrian (mentor, implicit)
Sponsored by: The FreeBSD Foundation
landonf [Mon, 27 Nov 2017 22:29:35 +0000 (22:29 +0000)]
bhnd(4): Print the core's hardware revision in bhnd(4)'s
BUS_PROBE_NOMATCH().
Approved by: adrian (mentor, implicit)
Sponsored by: The FreeBSD Foundation
landonf [Mon, 27 Nov 2017 22:13:30 +0000 (22:13 +0000)]
bhnd(4): Fix bcma/siba core reset behavior
Add missing support for specifying I/O control flags during core reset,
and resolve a number of siba(4)-specific reset issues:
- Add missing check for target reject flags in siba_is_hw_suspended().
- Remove incorrect wait on SIBA_TMH_BUSY when modifying any target state
register; this should only be done when waiting for initiated
transactions to clear.
- Add missing wait on SIBA_IM_BY when asserting SIBA_IM_RJ.
- Overwrite any previously set SIBA_TML_REJ flag when bringing the core
out of reset. This fixes a lockup that occured when we brought up a core
(after reboot) that had previously been placed into RESET by siba_bwn(4).
Approved by: adrian (mentor, implicit)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D13039
landonf [Mon, 27 Nov 2017 21:30:49 +0000 (21:30 +0000)]
bhnd(4) update inline documentation comments and man pages.
This includes a number of copyedits for the inline code documentation
comments, updates to the existing bhnd(4), bhndb(4), bcma(4), and siba(4)
man pages, and new man pages for bhnd_chipc(4), bhnd_pmu(4), bhndb_pci(4),
bhnd(9), and bhnd_erom(9).
Approved by: adrian (mentor)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D13021
asomers [Mon, 27 Nov 2017 21:10:50 +0000 (21:10 +0000)]
diskinfo(8): Delete dead code in slog test
Reported by: Coverity
CID: 1377556
Reviewed by: mav
MFC after: 3 weeks
Sponsored by: Spectra Logic Corp
Differential Revision: https://reviews.freebsd.org/D13275
asomers [Mon, 27 Nov 2017 20:01:58 +0000 (20:01 +0000)]
Add basic tests for ctfconvert(1), fold(1) and rs(1)
Add basic command line parsing test coverage for these utilities. The tests
were automatically generated based on their man pages. These tests can be
expanded by hand for more thorough coverage. The aim is to generate very
basic amount of test coverage for all the utilities in the base system.
Tests generated via: https://github.com/shivansh/smoketestsuite/
Submitted by: shivansh
Reviewed by: asomers
MFC after: 3 weeks
Differential Revision: https://reviews.freebsd.org/D12424
mav [Mon, 27 Nov 2017 20:01:43 +0000 (20:01 +0000)]
Fix integer overflow in SLOG test.
MFC after: 1 week
emaste [Mon, 27 Nov 2017 19:35:21 +0000 (19:35 +0000)]
efivar: add missing getopt 'u' option
markj [Mon, 27 Nov 2017 18:42:23 +0000 (18:42 +0000)]
Don't use pcpu_find() to determine if a CPU ID is valid.
This addresses assertion failures after r326218.
MFC after: 1 week
markj [Mon, 27 Nov 2017 17:54:17 +0000 (17:54 +0000)]
Revert r326181 for now.
We can't link an executable using -m32 until the lib32 phase of a
buildworld, though the build works fine when executing make from
cddl/usr.sbin/dtrace/tests. Some other solution will need to be found.
markj [Mon, 27 Nov 2017 17:46:38 +0000 (17:46 +0000)]
Avoid unnecessary lookups when initializing the vm_page array.
This gives a marginal improvement in the vm_page_array initialization
time. Also garbage-collect the now-unused vm_phys_paddr_to_segind().
Reviewed by: alc, kib
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D13270
pfg [Mon, 27 Nov 2017 17:18:31 +0000 (17:18 +0000)]
netconfig.h: sync with upstream.
Bring some comments and the license.
Add SPDX License ID tag while here.
Obtained from: NetBSD (CVS rev 1.2, 1.5, 1.6)
fsu [Mon, 27 Nov 2017 17:03:11 +0000 (17:03 +0000)]
Remap ENOATTR to ENODATA in the linuxulator.
In the linux ENOADATA is frequently #defined as ENOATTR.
The change is required for an xattrs support implementation.
MFC after: 1 week
Discussed with: netchild
Approved by: pfg
Differential Revision: https://reviews.freebsd.org/D13221
sbruno [Mon, 27 Nov 2017 16:28:28 +0000 (16:28 +0000)]
Add vmm(4) man page
PR: 205705 184046
Submitted by: Matt Macy <matt@mattmacy.io>
Reviewed by: grehan
Differential Revision: https://reviews.freebsd.org/D13062
andrew [Mon, 27 Nov 2017 16:19:00 +0000 (16:19 +0000)]
Set the kernel file name so the kern.bootfile sysctl is set. This allows
for the creation of kernel.old when running installkernel.
MFC after: 1 week
Sponsored by: DARPA, AFRL
pfg [Mon, 27 Nov 2017 15:49:00 +0000 (15:49 +0000)]
sys/kgssapi: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
No functional change intended.
manu [Mon, 27 Nov 2017 15:39:11 +0000 (15:39 +0000)]
growfs: Commit the changes after expanding the partition
This fix the problem in arm snapshot present since at least 6 months where
growfs was failing at firstboot and dropped you in a single user shell.
pfg [Mon, 27 Nov 2017 15:37:16 +0000 (15:37 +0000)]
various: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
No functional change intended.
pfg [Mon, 27 Nov 2017 15:28:26 +0000 (15:28 +0000)]
share and pc-sysinstall: adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
Commit these apart because compile testing doesn't guarantee I didn't made
some nasty mistake. No functional change intended.
pfg [Mon, 27 Nov 2017 15:25:02 +0000 (15:25 +0000)]
libexec: adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
No functional change intended.
mav [Mon, 27 Nov 2017 15:24:13 +0000 (15:24 +0000)]
Make ctlstat -n option work reasonably for sparse LUN list.
MFC after: 2 weeks
Sponsored by: iXsystems, Inc.
pfg [Mon, 27 Nov 2017 15:23:17 +0000 (15:23 +0000)]
sys: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
No functional change intended.
pfg [Mon, 27 Nov 2017 15:20:12 +0000 (15:20 +0000)]
sys/kern: adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:17:37 +0000 (15:17 +0000)]
sys/geom: adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:16:59 +0000 (15:16 +0000)]
sys/gdb: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:15:37 +0000 (15:15 +0000)]
sys/fs: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:14:46 +0000 (15:14 +0000)]
sys/ddb: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:13:23 +0000 (15:13 +0000)]
sys/compat: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:12:43 +0000 (15:12 +0000)]
sys/cam: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:11:47 +0000 (15:11 +0000)]
sys/x86: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:10:39 +0000 (15:10 +0000)]
sys/sparc64: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:09:59 +0000 (15:09 +0000)]
sys/powerpc: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:08:52 +0000 (15:08 +0000)]
sys/i386: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:07:26 +0000 (15:07 +0000)]
sys/mips: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:04:10 +0000 (15:04 +0000)]
sys/arm: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:03:07 +0000 (15:03 +0000)]
sys/amd64: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 15:01:59 +0000 (15:01 +0000)]
sys/sys: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
pfg [Mon, 27 Nov 2017 14:52:40 +0000 (14:52 +0000)]
sys/dev: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
dch [Mon, 27 Nov 2017 14:13:30 +0000 (14:13 +0000)]
add myself as ports committer, mentor jrm + swills
Approved by: jrm
Differential Revision: https://reviews.freebsd.org/D13268
trasz [Mon, 27 Nov 2017 12:50:26 +0000 (12:50 +0000)]
Add /etc/autofs/include_nis, a non-rewriting NIS map.
Submitted by: G. Paul Ziemba
Suggested by: asomers@
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
trasz [Mon, 27 Nov 2017 12:46:18 +0000 (12:46 +0000)]
Rename /etc/autofs/include_nis to /etc/autofs/include_nis_nullfs, to indicate
that this script provides nullfs map rewriting for local mounts.
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
trasz [Mon, 27 Nov 2017 12:44:03 +0000 (12:44 +0000)]
Change formatting; no functional changes.
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
trasz [Mon, 27 Nov 2017 12:39:35 +0000 (12:39 +0000)]
Update intro(6) - remove hint that doesn't work, add explicit list
of games instead, and mention the "bsdgames" port.
Reviewed by: bcr@
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D13196
trasz [Mon, 27 Nov 2017 12:37:14 +0000 (12:37 +0000)]
.Xr pmcstat(8) from kgmon(8) and gprof(1).
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
trasz [Mon, 27 Nov 2017 12:34:23 +0000 (12:34 +0000)]
Revert r326125.
It turns out kgmon(8) still works, and provides some functionality that's
not provided by pmcstat(8).
Reported by: bde@
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
phk [Mon, 27 Nov 2017 09:57:37 +0000 (09:57 +0000)]
Truncate negative lengths to zero
brd [Mon, 27 Nov 2017 04:24:48 +0000 (04:24 +0000)]
Fix another typo
Pointy hat to: oshogbo
delphij [Mon, 27 Nov 2017 04:15:03 +0000 (04:15 +0000)]
Don't assign rs as we will assign it later.
MFC after: 2 weeks
brd [Mon, 27 Nov 2017 02:28:40 +0000 (02:28 +0000)]
Fix handling -U. It does not take any arguments.
Approved by: will
mjg [Sun, 26 Nov 2017 21:10:47 +0000 (21:10 +0000)]
rw: fix runlock_hard when new readers show up
When waiters/writer spinner flags are set no new readers can show up unless
they already have a different rw rock read locked. The change in r326195 failed
to take that into account - in presence of new readers it would spin until
they all drain, which would be lead to trouble if e.g. they go off cpu and
can get scheduled because of this thread.
Reported by: pho
jhibbits [Sun, 26 Nov 2017 20:30:02 +0000 (20:30 +0000)]
Synchronize TLB1 mappings when created
This allows modules creating mappings to be loaded post-boot, after SMP has
started. Without this, the TLB1 mappings can become unsynchronized and lead
to kernel page faults when accessed on the alternate CPUs.
MFC after: 3 weeks
markj [Sun, 26 Nov 2017 19:17:55 +0000 (19:17 +0000)]
Move vm_phys_init_page() to vm_page.c.
Suggested by: kib
Reviewed by: alc, kib
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D13250
markj [Sun, 26 Nov 2017 19:16:45 +0000 (19:16 +0000)]
Remove unneeded initializations from vm_phys_init_page().
The page allocator always initializes the aflags and oflags fields.
Reviewed by: alc, kib
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D13242
tuexen [Sun, 26 Nov 2017 18:19:01 +0000 (18:19 +0000)]
Add to ipfw support for sending an SCTP packet containing an ABORT chunk.
This is similar to the TCP case. where a TCP RST segment can be sent.
There is one limitation: When sending an ABORT in response to an incoming
packet, it should be tested if there is no ABORT chunk in the received
packet. Currently, it is only checked if the first chunk is an ABORT
chunk to avoid parsing the whole packet, which could result in a DOS attack.
Thanks to Timo Voelker for helping me to test this patch.
Reviewed by: bcr@ (man page part), ae@ (generic, non-SCTP part)
Differential Revision: https://reviews.freebsd.org/D13239
mmel [Sun, 26 Nov 2017 16:41:30 +0000 (16:41 +0000)]
Addd work around for LLVM bug 35023.
Clang crashes when compiling zstd_compress.c with optimization for ARM targets.
https://bugs.llvm.org/show_bug.cgi?id=35023
imp [Sun, 26 Nov 2017 16:12:10 +0000 (16:12 +0000)]
Add efidp_format_device_path_node to format a single node in a device
path, much like efidp_format_device_path will format the entire path.
Sponsored by: Netflix
ed [Sun, 26 Nov 2017 14:56:23 +0000 (14:56 +0000)]
Add a Saved Process Status Register bit for AArch32 execution mode.
The documentation on the Saved Process Status Register (SPSR) is a bit
weird; the M[4] bit is documented separately from M[3:0]. The M[4] bit
can be toggled to switch to 32-bit execution mode. This functionality is
orthogonal to M[3:0].
Change the definition of PSR_M_MASK to no longer include M[4]. Add a new
definition, PSR_AARCH32 that can be used to toggle 32-bit independently.
This bit will be used by the cloudabi32 code to force execution of
userspace code in 32-bit mode.
Reviewed by: andrew
Differential Revision: https://reviews.freebsd.org/D13148
ed [Sun, 26 Nov 2017 14:53:56 +0000 (14:53 +0000)]
Correct some more places where TO_PTR() should be used.
These were missed in r326228.
MFC after: 2 weeks
ed [Sun, 26 Nov 2017 14:45:56 +0000 (14:45 +0000)]
Use TO_PTR() to convert integers to pointers.
For FreeBSD/arm64's cloudabi32 support, I'm going to need a TO_PTR() in
this place. Also use it for all of the other source files, so that the
difference remains as minimal as possible.
MFC after: 2 weeks
ed [Sun, 26 Nov 2017 14:28:27 +0000 (14:28 +0000)]
Make 32-bit system calls end up in svc_handler().
The nice thing about ARM64 is that it's pretty elegant to install
separate trap/exception handlers for 32-bit and 64-bit processes. That
said, for all other architectures (e.g., i386 on amd64) we always let
32-bit counterparts go through the regular system call codepath. Let's
do the same on ARM64.
Reviewed by: andrew
Differential Revision: https://reviews.freebsd.org/D13146
kib [Sun, 26 Nov 2017 10:02:43 +0000 (10:02 +0000)]
Improve sysctl(8) pretty printing of some structures.
S_vmtotal:
Use unsigned format to print unsigned memory counters from struct
vmtotal.
Remove unneeded cast, style locals declarations.
S_efi_map:
Make printing of the memory regions descriptions less MD by
using uintmax_t formats.
Noted by and discussed with: bde
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
andrew [Sun, 26 Nov 2017 09:29:34 +0000 (09:29 +0000)]
Make the arm64 pmap_invalidate functions static inline. This fixes building
with DIAGNOSTIC.
PR: 223874
Reported by: emaste
MFC after: 1 week
cy [Sun, 26 Nov 2017 06:31:34 +0000 (06:31 +0000)]
Fix spelling error (probably typo).
delphij [Sun, 26 Nov 2017 04:55:23 +0000 (04:55 +0000)]
Fill in date.
nwhitehorn [Sun, 26 Nov 2017 04:34:13 +0000 (04:34 +0000)]
Remove another extern int n_slbs made redundant by declaring this in
mmu_oea64.h.
MFC after: 3 weeks
nwhitehorn [Sun, 26 Nov 2017 03:53:20 +0000 (03:53 +0000)]
Use the cookie now set by loader to determine whether the value passed to
PowerPC kernels in r6 is actually metadata from loader(8) or gibberish
left in r6, which is not required to be anything under the
PAPR/ePAPR/CHRP/OF standards, by another boot loader.
Note that, as a result, systems need a new boot loader to boot PPC kernels
after this revision without ending up at a mountroot prompt. New boot
loaders are backwards compatible and can boot older kernels.
Reviewed by: jhibbits
MFC after: 2 months
pfg [Sun, 26 Nov 2017 02:00:33 +0000 (02:00 +0000)]
lib: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using mis-identified many licenses so this was mostly a manual - error
prone - task.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
nwhitehorn [Sat, 25 Nov 2017 23:41:05 +0000 (23:41 +0000)]
Remove some, but not all, assumptions that the BSP is CPU 0 and that CPUs
are numbered densely from there to n_cpus.
MFC after: 1 month
nwhitehorn [Sat, 25 Nov 2017 23:23:24 +0000 (23:23 +0000)]
Avoid assumptions about the BSP being CPU 0.
MFC after: 3 weeks
nwhitehorn [Sat, 25 Nov 2017 22:43:52 +0000 (22:43 +0000)]
On AIM systems, it is not actually possible to stop the CPU timer, so we
just set it to a large default value (and inherit any previously existing
value), hoping it never turns over. Instead, silently allow spurious
one-shots from rollovers.
MFC after: 10 days
nwhitehorn [Sat, 25 Nov 2017 22:42:05 +0000 (22:42 +0000)]
Return base IRQ of PIC when added and massively increase the number of
available IRQs per PIC for large systems.
MFC after: 3 weeks
nwhitehorn [Sat, 25 Nov 2017 22:15:56 +0000 (22:15 +0000)]
Missed gate on __powerpc64__ for setting LPCR in r326207.
MFC after: 3 weeks
X-MFC-with: r326207
nwhitehorn [Sat, 25 Nov 2017 22:14:30 +0000 (22:14 +0000)]
When booting from an FDT, make sure the FDT itself isn't included the range
of available memory. Boot loaders are supposed to add a reserved entry for
it, but not all do.
MFC after: 2 weeks
nwhitehorn [Sat, 25 Nov 2017 22:13:19 +0000 (22:13 +0000)]
Allow platform modules to set the size of large pizes, as potentially
discovered from firmware, and better handle highly-discontiguous memory
and CPU maps.
MFC after: 3 weeks
nwhitehorn [Sat, 25 Nov 2017 22:10:10 +0000 (22:10 +0000)]
Invalidate TLB at boot using the correct IS settings on newer-than-POWER5
CPUs.
MFC after: 3 weeks
nwhitehorn [Sat, 25 Nov 2017 22:08:40 +0000 (22:08 +0000)]
Definitions for registers and trap types found on new POWER CPUs.
MFC after: 3 weeks