Age | Commit message (Collapse) | Author |
|
|
|
|
|
sys/uvm/uvm_vnode.c. The reproducer can trigger the deadlock in matter
of seconds but only performs 100 tries by default; in order to make it a
viable part of a full `make regress' run. Running it indefinitely can be
done by passing the `-I' option.
|
|
page backed by a vnode, uvn_io() will end up being called in order to
populate newly allocated pages using I/O on the backing vnode. Before
performing the I/O, newly allocated pages are flagged as busy by
uvn_get(), that is before uvn_io() tries to lock the vnode. Such pages
could then end up being flushed by uvn_flush() which already has
acquired the vnode lock. Since such pages are flagged as busy,
uvn_flush() will wait for them to be flagged as not busy. This will
never happens as uvn_io() cannot make progress until the vnode lock is
released.
Instead, grab the vnode lock before allocating and flagging pages as
busy in uvn_get(). This does extend the scope in uvn_get() in which the
vnode is locked but resolves the deadlock.
ok mpi@
Reported-by: syzbot+e63407b35dff08dbee02@syzkaller.appspotmail.com
|
|
Found and fix by Matthias Pressfreund <mpfr @ fn de>. Thanks.
|
|
OK tb@ and kn@
|
|
reported by Simon Andersson.
|
|
ok kn
|
|
PDP pool and use the single page allocator for the PDP pool. This makes
pmap_destroy(9) mpsafe while preventing additional pressure on the
interrupt-safe kernel map.
ok mpi@
|
|
|
|
Mark the pointer used to walk the array in ksh const as well.
From Matthew Martin
ok guenther
|
|
|
|
OK tb@
Enthousiasm from Mischa Peters
|
|
|
|
As deraadt@ has pointed out, tracing timevals and timespecs before
validating them makes debugging easier.
|
|
|
|
|
|
ok martijn
|
|
ok martijn
|
|
OK deraadt@
|
|
Requested by and OK deraadt@
|
|
- Reverse byte order on big-endian architectures (except on sparc64)
- Add memory barriers
Note that sparc64 is special as we use a little-endian mapping for
PCI bus space, so we shouldn't reverse the byte order there.
ok jsg@
|
|
The text was written by an OpenBSD developer in 2018,
but i do not remember by whom.
Tweaks and OK deraadt@, OK kn@ stsp@
|
|
uninitialized and clang doesn't trip over this.
Pointed out by and OK stsp@
|
|
|
|
Suggested by and discussed with beck
|
|
context. This is what is returned in SSL_get_verify_result().
Spotted and initial diff from jeremy; discussed with jsing
ok beck
|
|
ctx->xsc->error. Will be needed in an upcoming diff.
from beck
|
|
and testing purposes.
ok beck inoguchi jsing
|
|
OK martijn@
|
|
already in the RB tree free the item we tried to add since the item form
the RB tree is used.
Memory leak found and fix provided by Felix Maurer ( felix at felix-maurer.de)
|
|
|
|
OK kettenis@
|
|
|
|
ok kettenis@
|
|
manpage-l10n project via bz#3223. feedback deraadt@, ok jmc@
|
|
uses roff(7) tabulator settings to implement tables, and it used
to leak the changed tabulator settings from tables to the subsequent
roff(7) code. In mandoc/tbl_term.c rev. 1.42 (June 17, 2017), code
was added to be bug-compatible with groff.
In commit d0e03cf6 (Oct 20, 2020), GNU tbl(1) changed behaviour
to save the tabulator settings before starting a table and restore
them afterwards. Adjust mandoc for compatibility.
Since mandoc implements tables without using roff(7) tabulator
settings, saving and restoring tabulator settings is not needed in
mandoc. Simply deleting the code that changed tabulator settings
by reverting tbl_term.c rev. 1.42 is sufficient in mandoc.
Also adjust the desired output of the regression tests
to match the new behaviour of both groff and mandoc.
|
|
as best we can.
|
|
with wording similar to the FAQ;
suggested by Filippo Valsorda <filippo at ml dot filippo dot io>;
tweak and OK jca@
|
|
PCI address space. Needed for radeondrm(4) and amdgpu(4) since Radeon GPUs
only implement 36, 40 or 44 bits of address space.
|
|
This introduces a system-wide mutex that serializes msgbuf operations.
The mutex controls access to all modifiable fields of struct msgbuf.
It also covers logsoftc.sc_state.
To avoid adding extra lock order constraints that would affect use of
printf(9), the code does not take new locks when the log mutex is held.
The code assumes that there is at most one thread using logread(). This
keeps the logic simple. If there was more than one reader, logread()
might return the same data to different readers. Also, log wakeup might
not be reliable with multiple threads.
Tested in snaps for two weeks.
OK mpi@
|
|
|
|
|
|
"I/O Space" on their PCIe host bridges and for most (all) Radeon variants
there is an alternative method to access the relevant registers.
ok jsg@
|
|
|
|
ok jsg@
|
|
|
|
|
|
|
|
MacBooks already handle the brightness through the drm driver.
Therefore only attach abl(4) to iMacs.
Issue initially reported by James Luigy.
Discussed with kettenis@, ok jung@
|