mpi [Mon, 22 Jan 2018 09:05:06 +0000 (09:05 +0000)]
Do not call ip_output() recursively in vxlan_start().
ip_output() currently needs the NET_LOCK() which is not held when an
interface is added to a pf(4) queue.
Fix an issue reported by Jason Tubnor, ok dlg@
mpi [Mon, 22 Jan 2018 09:01:39 +0000 (09:01 +0000)]
Add SHT_SYMTAB_SHNDX
Required by Karel Gardas to unbreak GHC head.
jsg [Mon, 22 Jan 2018 03:14:33 +0000 (03:14 +0000)]
regen
jsg [Mon, 22 Jan 2018 03:13:09 +0000 (03:13 +0000)]
add clang-local(1) to SEE ALSO
suggested by jmc@ ok patrick@
jsg [Mon, 22 Jan 2018 02:28:09 +0000 (02:28 +0000)]
Match on Iris Pro Graphics 580 and other skylake GT4 ids and correct
the Iris Graphics P555 GT3 id.
Derived from the following linux commits:
drm/i915/skl: Add SKL GT4 PCI IDs
From Mika Kuoppala
15620206ae87ba9643ffa6f5ddb5471be7192006 in mainline linux
drm/i915: Update SKL SRV GT4 pci ids reference.
From Rodrigo Vivi
5390974f981907cd02d1cb48145b03471279877a in mainline linux
drm/i915/skl: Add missing SKL ID
From Michal Winiarski
ca7a45ba6fb9e7ceca56d10b91db29c2f3451a2e in mainline linux
Expanded version of a diff from ccardenas@.
Reported and tested by Bryan Vyhmeister.
Tested by and ok ccardenas@
kettenis [Sun, 21 Jan 2018 22:30:41 +0000 (22:30 +0000)]
Move some code back from locore0.S to locore.S that we will need to bring up
secondary CPUs. This involves adjusting get_virt_delta() to account for the
fact that it may no longer live near the start of kernel code. Heavily based
on a diff from drahn@.
ok patrick@, deraadt@
kettenis [Sun, 21 Jan 2018 21:56:02 +0000 (21:56 +0000)]
Implement ffs(3) using the CLZ instructions which has been available ever
since ARMv5. Should be much faster but more importantly it removes the
data table from .text which could introduce unwanted ROP gadgets.
Based on changes in Android/Bionic by Elliott Hughes.
ok patrick@
patrick [Sun, 21 Jan 2018 21:37:01 +0000 (21:37 +0000)]
Add missing OpenBSD CVS tag
patrick [Sun, 21 Jan 2018 21:35:34 +0000 (21:35 +0000)]
Implement network boot support in efiboot(8). This changes efiboot(8)
to recognize if it has been booted via PXE. The new TFTP file system
layer will then use the matching PXE base code protocol handle to load
the files. Since this uses the PXE base code protocol for abstraction
instead of the raw Simple Network protocol this will at this point not
work on u-boot based machines.
ok kettenis@
jasper [Sun, 21 Jan 2018 20:18:20 +0000 (20:18 +0000)]
add new '-c' option which runs a command instead of an interactive shell
from Paul de Weerd
ok ian@ job@; manpage bits are ok jmc@
halex [Sun, 21 Jan 2018 19:58:37 +0000 (19:58 +0000)]
fix error handling while fetching sets
reported by naddy@ long ago
ok rpe@
mikeb [Sun, 21 Jan 2018 18:54:46 +0000 (18:54 +0000)]
Release interrupt source if the interrupt task is already scheduled
Tested by Imre Oolberg, thanks!
mikeb [Sun, 21 Jan 2018 18:51:19 +0000 (18:51 +0000)]
Improve panic message
jmc [Sun, 21 Jan 2018 16:00:50 +0000 (16:00 +0000)]
add arch to Dt;
jmc [Sun, 21 Jan 2018 10:28:37 +0000 (10:28 +0000)]
remove the ref to gcc-local. the alternative was to add clang-local,
but i think the ref to cc should suffice for this page;
jsg [Sat, 20 Jan 2018 23:57:44 +0000 (23:57 +0000)]
use virt instructions with clang instead of equivalent raw bytes
mpf [Sat, 20 Jan 2018 23:07:58 +0000 (23:07 +0000)]
Provide a simpler example ifstated.conf.
The existing example was written over a decade ago, when carp(4) was
not supporting carpdemote and did not track it's interfaces link state itself.
OK jmc@, rob@
mpf [Sat, 20 Jan 2018 22:57:11 +0000 (22:57 +0000)]
Improve the config example.
Suggest using carpdemote instead of tweaking the advskew setting.
Also add a check for a non-carp link state.
Prodded by jmc@. OK jmc@, rob@.
mikeb [Sat, 20 Jan 2018 20:03:45 +0000 (20:03 +0000)]
Disable TCP and UDP transmit checksum offloading
In certain configurations, transmit checksum offloading doesn't
appear to work correctly, preventing correct TCP and UDP operation.
Some of these issues involving VLAN tagging are documented by the
Xen project.
Problem reported and fix tested by Imre Oolberg, thanks!
rob [Sat, 20 Jan 2018 18:49:12 +0000 (18:49 +0000)]
Fix uninitialized variable.
Ok jca@
kettenis [Sat, 20 Jan 2018 18:35:41 +0000 (18:35 +0000)]
Re-enable the code that unmaps the startup code once more now that lld is
fixed.
deraadt [Sat, 20 Jan 2018 18:11:31 +0000 (18:11 +0000)]
sync
anton [Sat, 20 Jan 2018 15:32:20 +0000 (15:32 +0000)]
Remove code that has been disabled since 1999. From Michael W. Bombardieri who
also took the time to provide an excellent explanation on why the code isn't
useful on tech@.
ok jca@
espie [Sat, 20 Jan 2018 12:01:56 +0000 (12:01 +0000)]
oops, no chomp, so get rid of the extra blank line by using print
jcs [Fri, 19 Jan 2018 18:20:38 +0000 (18:20 +0000)]
dwiic: cleanup function prototypes after ACPI/PCI split
kettenis [Fri, 19 Jan 2018 16:55:46 +0000 (16:55 +0000)]
sync
kettenis [Fri, 19 Jan 2018 16:54:54 +0000 (16:54 +0000)]
Build clang on sparc64.
ok deraadt@
kettenis [Fri, 19 Jan 2018 16:17:36 +0000 (16:17 +0000)]
Switch the default compiler on armv7 to clang.
ok patrick@
kettenis [Fri, 19 Jan 2018 16:16:09 +0000 (16:16 +0000)]
Use static inline such that the functions are guaranteed to be present when
compiled with clang.
ok visa@
bluhm [Fri, 19 Jan 2018 15:33:27 +0000 (15:33 +0000)]
In pfioctl() a pf unlock was missing in the error path.
OK lteo@ sashan@
ccardenas [Fri, 19 Jan 2018 14:23:52 +0000 (14:23 +0000)]
VMD: vioscsi - fix large ISO support in Linux
Check if n_blocks is less than UINT32_MAX and not the image size
in various places (READ_CAPACITY_* and GET_CONFIGURATION).
ok mlarkin@ and dlg@
bluhm [Fri, 19 Jan 2018 12:57:15 +0000 (12:57 +0000)]
Use the pf state key linking functions in two more places instead
of doing it manually.
OK sashan@ visa@
espie [Fri, 19 Jan 2018 11:34:41 +0000 (11:34 +0000)]
display the actual redirect message, as that's informative.
won't flood the terminal, since the first redirect changes the host
discussed with sthen
jca [Fri, 19 Jan 2018 11:10:43 +0000 (11:10 +0000)]
Partial revert of rev. 1.7, fixes build with clang
The error was:
--8<--
ffs.S:57:2: error: unsupported relocation on symbol
adrne r2, .L_ffs_table
^
-->8--
Minimal workaround suggested by deraadt@, ok guenther@ kettenis@
gsoares [Fri, 19 Jan 2018 00:19:58 +0000 (00:19 +0000)]
/etc/snmpd.conf may contain passwords or other sensitive
data. diff provided by alf <a.schlichting at lemarit.com>
ok millert
deraadt [Thu, 18 Jan 2018 23:42:13 +0000 (23:42 +0000)]
Wow, it cannot even be in .data...
otto [Thu, 18 Jan 2018 20:06:16 +0000 (20:06 +0000)]
Zap the rotor, it was a wrong idea. Cluebat applied by kshe who
came also up with this diff. Simple, no bias and benchmarks show the extra
random calls disappear in te measurement noise.
deraadt [Thu, 18 Jan 2018 18:21:01 +0000 (18:21 +0000)]
Sorry, the PIC macros cannot reach to .rodata....
ratchov [Thu, 18 Jan 2018 18:09:38 +0000 (18:09 +0000)]
Remove quirk matching all Yamaha devices, as this prevents non-MIDI
devices from attaching (ex uaudio devices).
ok mpi
bluhm [Thu, 18 Jan 2018 18:08:51 +0000 (18:08 +0000)]
While booting it does not make sense to wait for memory, there is
no other process which could free it. Better panic in malloc(9)
or pool_get(9) instead of sleeping forever.
tested by visa@ patrick@ Jan Klemkow
suggested by kettenis@; OK deraadt@
job [Thu, 18 Jan 2018 17:23:15 +0000 (17:23 +0000)]
Make URL redirection sticky in the installer
Ensures that when URL redirection takes place, the rest of the install/upgrade
session will stick to that redirected location. This should help ensure that
the fetched set of files is coherent when a load balancer emits 301/302.
With feedback from rpe@
OK sthen@ rpe@
nicm [Thu, 18 Jan 2018 14:28:11 +0000 (14:28 +0000)]
Discard all but the last line when reading from a #() command - the
callback is just going to be fired again straight away to go through all
the lines, it is better just to use the last one straight away.
visa [Thu, 18 Jan 2018 14:04:04 +0000 (14:04 +0000)]
Make the installer use the multiprocessor kernel if there is more
than one core available.
When bsd.mp is used, bsd.sp is not copied to the boot partition.
Old installations might not have enough space for all bsd.mp, bsd.sp
and bsd.rd.
OK deraadt@, krw@, pirofti@
visa [Thu, 18 Jan 2018 14:02:54 +0000 (14:02 +0000)]
Fix the computation of `ncpusfound' on !MULTIPROCESSOR kernels so that
the value matches with the number of cores that GENERIC.MP uses.
OK deraadt@, krw@, pirofti@
mikeb [Thu, 18 Jan 2018 11:43:20 +0000 (11:43 +0000)]
Fix an off-by-one uncovered by the recent free(9) change
From canacar@, thanks!
bentley [Thu, 18 Jan 2018 08:57:12 +0000 (08:57 +0000)]
Mark up mount(8) options with Cm.
otto [Thu, 18 Jan 2018 08:37:28 +0000 (08:37 +0000)]
Move to ffs(3) for bitmask scanning. I played with this earlier,
but at that time ffs function calls were generated instead of the
compiler inlining the code. Now that ffs is marked protected in
libc this is handled better. Thanks to kshe who prompted me to
look at this again.
guenther [Thu, 18 Jan 2018 08:23:44 +0000 (08:23 +0000)]
Instead of trying to handle ffs() with the normal rename-mark-hidden-and-alias
dance, mark it protected. This works better for both gcc and clang: gcc
blocks overriding of internal calls, while clang permits inlining again.
ok otto@
guenther [Thu, 18 Jan 2018 08:17:39 +0000 (08:17 +0000)]
Unlike other archs, mips64 needs ld.so to know about symbol visibility and
skip symbol lookup on protected symbols. Add visibility #defines to
<sys/exec_elf.h> to support that.
ok kettenis@ visa@
nicm [Thu, 18 Jan 2018 07:10:53 +0000 (07:10 +0000)]
Remove unused hooks_run function, from Thomas Adam.
deraadt [Wed, 17 Jan 2018 17:59:58 +0000 (17:59 +0000)]
sync
fcambus [Wed, 17 Jan 2018 16:54:19 +0000 (16:54 +0000)]
Add sizes for free() in wscons(4).
OK deraadt@, visa@, mpi@
deraadt [Wed, 17 Jan 2018 16:33:33 +0000 (16:33 +0000)]
Found a .data variable that can be in .rodata
ok mibek
stsp [Wed, 17 Jan 2018 15:52:33 +0000 (15:52 +0000)]
In cbus(4) drivers, make it easier to identify which driver is doing
debug printfs about LDC link state changes. No functional change.
ok kettenis@
patrick [Wed, 17 Jan 2018 13:35:52 +0000 (13:35 +0000)]
Remove erreneous and leftover slash that was part of the regex before
we switched to compiled regexes. Fixes fw_update(1).
Noticed by deraadt@
ok sthen@
espie [Wed, 17 Jan 2018 13:25:36 +0000 (13:25 +0000)]
Process redirection messages from http.
This will help for round-robin sites in anchoring a pkg_add session to
a single site, thus removing shearing effects.
Initial idea from job@, reworked a lot by me,
enthusiastic okay sthen@
kettenis [Wed, 17 Jan 2018 10:22:25 +0000 (10:22 +0000)]
Defend agains branch predictor target injection (Spectre "variant 2")
attacks by flushing the branch predictor cache (BTB) on context switches
and page faults in kkernel address space. Note that this relies on the
presence of firmware (such as Arm Trusted Firmware) that provides PSCI
services that flush the BTB on entry as described in Arm Trusted Firmware
Security Advisory TFV 6.
ok patrick@, visa@
kettenis [Wed, 17 Jan 2018 10:17:33 +0000 (10:17 +0000)]
Implement support for the PSCI_VERSION call and export the function such that
we can use it to defend against branch target injection attacks.
ok patrick@, visa@
patrick [Wed, 17 Jan 2018 08:46:15 +0000 (08:46 +0000)]
Implement basic padding support in libsa so we can do zero-padding
in bootloader printfs.
Feedback from and ok gerhard@
bentley [Wed, 17 Jan 2018 07:40:29 +0000 (07:40 +0000)]
Disable ACPI burst mode on the 2015 Chromebook Pixel, where it freezes.
Diff from jcs@, ok pirofti@
kettenis [Tue, 16 Jan 2018 23:04:42 +0000 (23:04 +0000)]
On armv7, remove symbols that are also present in our libc. Because of the
EABI aliases these can lead to duplicate symbol errors, especially when
mixing code compiled with gcc and clang. The intention is to revert this
once we convert armv7 to hardfloat.
ok patrick@, guenther@
jca [Tue, 16 Jan 2018 22:52:32 +0000 (22:52 +0000)]
Introduce internal_warningf() and mark internal_errorf() as noreturn
This helps tools like scan-build, and follows the example of warningf()
and errorf(). ok anton@
naddy [Tue, 16 Jan 2018 21:42:40 +0000 (21:42 +0000)]
g/c unused defines that were only used by nacl's SHA-512 implementation
ok tedu@
anton [Tue, 16 Jan 2018 20:40:43 +0000 (20:40 +0000)]
Stop constructing the ulimit optstring passed to ksh_getopt() at runtime since
it's rarely subject to change. While here, unifdef RLIMIT_VMEM.
ok jca@
benno [Tue, 16 Jan 2018 19:44:34 +0000 (19:44 +0000)]
garbage collect an unused variable
ok dlg@
jca [Tue, 16 Jan 2018 17:17:18 +0000 (17:17 +0000)]
One minor scan-build warning
emacs.c:1041:2: warning: Value stored to 'cp' is never read
cheloha [Tue, 16 Jan 2018 17:07:49 +0000 (17:07 +0000)]
Use the monotonic clock to compute the session duration.
Ensures the correct duration is logged even if the system
time is changed during the session.
ok jca@
nicm [Tue, 16 Jan 2018 17:03:18 +0000 (17:03 +0000)]
Fix drawing of ACS characters (they need to go character-at-a-time),
accidentally broken in last commit.
cheloha [Tue, 16 Jan 2018 15:57:51 +0000 (15:57 +0000)]
GETTY_SLEEP is 30 seconds, not 10
ok deraadt@
visa [Tue, 16 Jan 2018 15:50:28 +0000 (15:50 +0000)]
Fix bit.
visa [Tue, 16 Jan 2018 15:22:14 +0000 (15:22 +0000)]
Fix return value.
bluhm [Tue, 16 Jan 2018 14:51:19 +0000 (14:51 +0000)]
Enable traceroute test for incoming reply-to rule.
bluhm [Tue, 16 Jan 2018 14:48:38 +0000 (14:48 +0000)]
If pf route-to is used for locally generated packets, they may have
an invalid source address. As pf route-to happens after IP source
selection based on a different route, the address should be corrected
after pf has allocated the new route. Especially loopback addresses
must not appear at outgoing packets.
OK sashan@ visa@
mpi [Tue, 16 Jan 2018 10:33:55 +0000 (10:33 +0000)]
Recycle IFF_NOTRAILERS into IFF_STATICARP and document ownerhsip
of IFF* flags.
inputs from jmc@, ok bluhm@, visa@
nicm [Tue, 16 Jan 2018 09:00:38 +0000 (09:00 +0000)]
Add -I to pipe-pane to connect pane stdin as well as stdout, suggested
by Kristof Kovacs in GitHub issue 1186.
ccardenas [Tue, 16 Jan 2018 06:10:45 +0000 (06:10 +0000)]
VMD: vioscsi - add support for REPORT_LUNS opcode
ok mlarkin@
bluhm [Mon, 15 Jan 2018 23:58:43 +0000 (23:58 +0000)]
Add tests that unmount a file system while it is busy. On a vnd
device "cp -r" and "rm -rf" are working in the background while
"umount -f" or "mount -ur" are executed. Then "fsck -f" is used
to verify that the file system is clean.
Currently this triggers a bug quite reliably. After the mount point
has been changed to read-only, the file system check shows that not
everything was flushed and synced properly.
jca [Mon, 15 Jan 2018 22:30:38 +0000 (22:30 +0000)]
Don't try to open HISTFILE if the variable is unset.
str_val returns null, not NULL, if the variable isn't set. The
erroneous check means that we later tried to open("").
ok millert@ tb@ anton@ benno@
kettenis [Mon, 15 Jan 2018 22:24:17 +0000 (22:24 +0000)]
Switch the inteldrm(4) i2c code over to the Linux code base. This gives us
several quirks that wre absent in the old OpenBSD-specific reimplementation.
Fixes several issues with external connectors on several generations of
hardware.
ok deraadt@, benno@
deraadt [Mon, 15 Jan 2018 21:30:49 +0000 (21:30 +0000)]
mask out (ie. ignore) the bit which will be MAP_STACK in the future,
so diffs in snapshots can exercise the change in a less disruptive way
idea with sthen, ok kettenis tom others
bluhm [Mon, 15 Jan 2018 20:38:47 +0000 (20:38 +0000)]
We have no deprecated regress variables in our tree. Remove the
compatibility layer.
brynet [Mon, 15 Jan 2018 19:45:51 +0000 (19:45 +0000)]
Revert my changes in r1.60 back to nicm@'s latest for now.
Fixes "file *|grep" breakage reported by espie@
ok nicm, deraadt
mlarkin [Mon, 15 Jan 2018 18:57:59 +0000 (18:57 +0000)]
tabs vs spaces
nicm [Mon, 15 Jan 2018 15:30:03 +0000 (15:30 +0000)]
Another redundant check, GitHub issue 1219.
nicm [Mon, 15 Jan 2018 15:27:03 +0000 (15:27 +0000)]
Some unused code, GitHub issue 1219.
jca [Mon, 15 Jan 2018 14:58:05 +0000 (14:58 +0000)]
Stop pretending we support building ksh without EDIT/HISTORY support
ok anton@
kettenis [Mon, 15 Jan 2018 14:11:16 +0000 (14:11 +0000)]
Improve defense against branch predictor target injection (Spectre "variant 2")
attacks. OpenBSD/armv7 is already in pretty good shape as we have always
been flushing the branch predictor cache on context switches. This diff adds
additional flushes to page faults in kernel address space. The impact on
performance should be minimal as these page faults should only happen when
userland (deliberately or accidentally) tries to access kernel addres space
which would lead to a fatal signal (SIGSEGV or SIGBUS).
Loosely based on changes made by Marc Zyngier in Linux and based on
information in Arm Trusted Firmware Security Advisory TFV 6.
Note that for Cortex-A15 (and Cortex-A72) you will need firmware that sets
the ACTRL[0] bit for this diff to be effective. Also note that with this
diff Cortex-A57 is still vulnerable.
ok jsg@
bluhm [Mon, 15 Jan 2018 13:48:31 +0000 (13:48 +0000)]
There was an issue that dynamic path MTU discovery together with
ARP or ND timeout could delete local routes. Put an assert into
arptfree() and nd6_free() so this cannot happen again.
OK mpi@
bluhm [Mon, 15 Jan 2018 12:27:45 +0000 (12:27 +0000)]
Enable traceroute test for incoming route-to rule.
bluhm [Mon, 15 Jan 2018 12:25:03 +0000 (12:25 +0000)]
When pf(4) forwards incoming packets with route-to or reply-to,
decrement the time-to-live or hop-limit field to prevent routing
loops. Sending an ICMP time exceeded error makes traceroute work.
For outgoing packets ip_forward() has already done this.
OK visa@ sashan@
inoguchi [Mon, 15 Jan 2018 11:02:07 +0000 (11:02 +0000)]
Add s_server and s_client -tlsextdebug messages
ok sthen@ jsing@
mpi [Mon, 15 Jan 2018 09:54:48 +0000 (09:54 +0000)]
Spacing, no object change.
eric [Mon, 15 Jan 2018 08:48:40 +0000 (08:48 +0000)]
fix parsing of RDATA for TXT records
ok gilles@
jsg [Mon, 15 Jan 2018 07:47:46 +0000 (07:47 +0000)]
sync
mlarkin [Mon, 15 Jan 2018 06:53:02 +0000 (06:53 +0000)]
Add some AVX512 CPUID flags.
discussed with sf and kettenis
ccardenas [Mon, 15 Jan 2018 04:26:58 +0000 (04:26 +0000)]
VMD: vioscsi refactor
Each opcode is now handled in the respective function (vioscsi_handle_xxx)
which allows more functionality to be added easier.
No functional changes confirmed by guest testing.
ok mlarkin@
bluhm [Sun, 14 Jan 2018 22:04:47 +0000 (22:04 +0000)]
Link ed regress to build.
bluhm [Sun, 14 Jan 2018 22:01:48 +0000 (22:01 +0000)]
Run the tests provided in /usr/src/bin/ed/test with the regress
framework. Three ed tests are currently failing for unknown reasons.
They are marked as disabled for now.
from Sergey Bronnikov
kettenis [Sun, 14 Jan 2018 21:47:10 +0000 (21:47 +0000)]
Add two more ARM EABI aliases that I missed in the previous libc minor
bump.
"just go ahead -- crank" deraadt@
bluhm [Sun, 14 Jan 2018 20:15:37 +0000 (20:15 +0000)]
Make cpu_ucode_debug non static so it can be changed from ddb.
OK patrick@