| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
| |
|
|
|
|
| |
ok phessler, deraadt
|
|
|
|
|
|
|
|
| |
This also modifies the backoff logic to only back off what is requested
and not a "mimimum" amount. Tested by me, benno@, tedu@ anda ports build
by naddy@.
ok tedu@
|
|
|
|
|
| |
We don't get any benefit from having separate queues (yet), and the tx
completion queue seems to stall sometimes if it's on its own.
|
| |
|
|
|
|
|
|
| |
or tx completion stalling.
(also replace a line dlg didn't mean to remove)
|
|
|
|
|
|
|
| |
this will probably change as the rx handling grows to cope with the
hardware max mru.
ok jmatthew@
|
|
|
|
|
|
| |
PAGE_SIZE might be the same, but isn't on sparc64 at least.
ok jmatthew@
|
|
|
|
| |
a part of the free memory list, terminating it prematurely.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
detection broke while changing the owner of a lock from struct proc to struct
filedesc/file. Instead of keeping track of the owning proc for each lock,
introduce a new list for all pending blocked locks. This list is scanned before
waiting on a blocking lock in order to determine if sleeping would cause a
deadlock.
The new implementation is serialized by the recently added locking to the same
subsystem, meaning that acquiring the kernel lock is no longer necessary.
ok visa@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make sure that any preceding stores become visible to other CPUs before
setting the AST flag in need_resched() and signotify(). This should
prevent a very unlikely case with inter-CPU ASTs where the receiving
CPU uses stale state.
When clearing the AST flag in ast(), ensure that the clearing store
is performed before any other memory accesses in the AST handler.
Otherwise, there is a slight risk of losing an AST request that gets
posted while the handler is running.
OK guenther@
|
|
|
|
|
|
|
|
| |
The barrier ensures that any lockless state changes become visible
to other CPUs before the IPI is sent. Otherwise, a receiving CPU
might still observe an old state when it processes the interrupt.
OK guenther@
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make the interrupt and trap return paths check for ASTs with interrupts
disabled. If there is no pending request, interrupts are kept disabled
until return to userspace. This fixes delayed processing of an AST
request that arrives from another CPU after the AST flag has been
checked but before the CPU has finished the return path. The IPI that
follows the setting of the AST flag forces kernel re-entry and recheck
of AST.
Noticed by guenther@
|
| |
|
|
|
|
| |
Pointed out by Jerome Pinot
|
|
|
|
| |
Pointed out by Jerome Pinot
|
|
|
|
| |
Pointed out by Jerome Pinot
|
|
|
|
| |
Pointed out by Jerome Pinot
|
|
|
|
| |
Pointed out by Jerome Pinot
|
|
|
|
| |
Pointed out by Jerome Pinot
|
|
|
|
| |
Pointed out by Jerome Pinot
|
| |
|
|
|
|
|
|
| |
random data into the buffer that we feed the kernel.
ok deraadt@, mlarkin@
|
|
|
|
|
|
|
|
| |
region is properly allocated by the firmware.
Move the .bss clearing to locore.S because the section has to be ready
when the stack is taken into use. This additionally makes the
C environment more consistent at the start of mips_init().
|
|
|
|
| |
other architectures.
|
| |
|
| |
|
|
|
|
| |
ok jsg@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With some gritty work up to 254 bytes can be discovered. More details at
https://svnweb.freebsd.org/changeset/base/347066
The impact on OpenBSD is very limited:
1 - such stack bytes can be found in raw-device reads, from group operator.
If you can read the raw disks you can undertake other more powerful actions.
2 - read(2) upon directory fd was disabled July 1997 because I didn't like
how grep * would display garbage and mess up the tty, and applying vis(3)
for just directory reads seemed silly. read(2) was changed to return
0 (EOF). Sep 2016 this was further changed to EISDIR, so you still cannot
see the bad bytes.
3 - In 2013 when guenther adapted the getdents(2) directory-reading system
call to 64-bit ino_t, the userland data format changed to 8-byte-alignment,
making it incompatible with the 4-byte-alignment UFS on-disk format. As
a result of code refactoring the bad bytes were not copied to userland.
Bad bytes will remain in old directories on old filesystems, but nothing makes
those bytes user visible. There will be no errata or syspatch issued. I
urge other systems which do expose the information to userland to issue
errata quickly, since this is a 254 byte infoleak of the stack which is great
for ROP-chain building to attack some other bug. Especially if the kernel
has no layout/link-order randomization ...
ok kettenis jca millert otto ...
|
|
|
|
| |
AGP-capable chipsets and probably never will.
|
|
|
|
| |
ok patrick@
|
|
|
|
| |
ok millert otto kettenis
|
|
|
|
| |
Should be revisited once logwakeup() is fixed.
|
|
|
|
|
|
|
| |
Use splassert_fail() instead, please set kern.splassert to 2 and report
the corresponding stack trace if you see a warning.
ok dlg@
|
|
|
|
| |
ok dlg@
|
|
|
|
|
|
|
|
|
|
| |
From Thomas Preston
6e0473633af059a559ce7b4cbaa51e389c94085e in mainline linux
Makes inteldrm(4) work on James Hastings's 'HP Stream Laptop 14-cb1XX'
a Gemini Lake system where finding the VBT fails.
ok kettenis@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
when we have a serial console by introducing the notion of a "primary"
graphics device. The primary graphics device is the one set up and
used by firmware (BIOS, UEFI).
The goal is to make sure that wsdisplay0 and drm0 reliably attach to
the primary graphics device such that X works out of the box even
if you have multiple cards or if you are using a serial console.
This also fixes the situation where inteldrm(4) or radeondrm(4) would
take over the console on UEFI systems even if the kernel was booted
with a serial console.
ok jsg@
|
|
|
|
|
|
| |
From Noralf Tronnes
c5eb9a424ebd2d9f9e3cccdf2bfbb415c2921261 in linux 4.19.y/4.19.39
3f04e0a6cfebf48152ac64502346cdc258811f79 in mainline linux
|
|
|
|
|
|
|
| |
controllers, written by dlg@ and me based on the cut down non-NDA
programming reference manual Mellanox were nice enough to release.
ok dlg@ deraadt@
|
| |
|
|
|
|
|
|
| |
caused a hanging "ifconfig bridge0 destroy" and a subsequent uvm
fault.
reported and tested by Hrvoje Popovski; OK visa@
|
|
|
|
|
|
|
|
|
|
|
| |
All non-dummy implementations of VOP_ADVLOCK() rely on lf_advlock()
which is now safe to use without the kernel lock. Because VOP_ADVLOCK()
does not make the vnode dirty, it is unnecessary to keep track of
in-flight vnode lock operations and the updating of vnode->v_inflight
can be dropped from VOP_ADVLOCK(). This makes VOP_ADVLOCK() safe to use
without the kernel lock.
OK tedu@ mpi@
|
|
|
|
|
|
| |
From Dave Airlie
2bc7ce32eb21b094b3ae3e489017fabfe72b4dda in linux 4.19.y/4.19.38
9fa246256e09dc30820524401cdbeeaadee94025 in mainline linux
|
|
|
|
|
|
| |
just like we do for simplebus(4).
ok patrick@, visa@
|
|
|
|
|
|
|
|
|
| |
The Realtek DASH ehci(4) doesn't have a properly set SBRN register which
prevents us from fully attaching the device. This would result in a panic
during suspend because the activate function will access register that
aren't mapped.
ok deraadt@
|
|
|
|
| |
Prevent use-after-free reported by Hrvoje Popovski.
|
|
|
|
| |
ok deraadt@, mlarkin@
|