read 'ed', because its value is past the end of the buffer, and we thus
perform out-of-bounds accesses.
Detected thanks to vHCI+KASAN. First bug found by USB fuzzing.
Reported-by: syzbot+59e7f6b3f353584ac810@syzkaller.appspotmail.com
* Leases are stored outside the chroot again
* The chroot directory can now be (and should be) empty [1]
* ARP is now per address rather than per interface
* Filter allowed ioctls in the privileged actioneer
* Filter allowed UDP ports used by sendto(2) in the privileged actioneer
* Filter allowed file paths in the privileged actioneer
* route socket is now drained on overflow as it cannot be
re-opened by the unpriviledged user
* hostname can no longer be clobbered by SLAAC
* grep is no longer used by the test hook
* Interface hardware address type changes are now picked up
* Fixed some RA timing issues
* Fixed nd_* option parsing in dhcpcd.conf
* Allow SIGPIPE in scripts
* Default dhcpcd.conf no longer sends the current hostname
* Default dhcpcd.conf no longer sends a vendorclassid
This is intended for 68060:
- GCC does not emit __muldi3() for 68020-40, that have 32 * 32 --> 64 mulul
- mulsl (and moveml), used in this code, are not implemented for 68010
In comparison with that from compiler_rt, this version saves:
- 12% of processing time
- 12 bytes of stack
- 50 bytes of code size
Also, slightly faster, memory saving, and smaller than libgcc version.
By examining with evcnt(9), __muldi3() is invoked more than 1000 times per
sec by kernel, which should justify to introduce assembler version of this
function.
Kernel freeze with heavy load is significantly mitigated (fixed?),
in which I could not even enter DDB from console.
XXX
There is still inconsistency in usage of two PVO pools.
I will send-pr later.
XXX
pullup to netbsd-[987]
DDB can be running in the interrupt context, e.g., when activated from
console. Therefore, we use kmem_intr_alloc(9) and friends in order to
avoid assertion failure.
XXX
DDB can be running in the interrupt context, e.g., when activated from
console. Therefore, use kmem_intr_alloc(9) instead of kmem_alloc(9).
Frame size, e.g. for m68k, becomes:
9212 (oops!) --> 0
observed with acpicpu. C1 (MWAIT) is the deepest sleep currently enabled so
there should be no functional change. Also, the computed nap time is run
through hztoms() which seems incorrect as the ACPI timer is running in the
MHz range.
"build.sh release" on my test system:
- Crossing mount points during lookup is slow because the set up for, and
act of doing VFS_ROOT() is quite involved. Use the name cache to help
with this. Cache an "impossible" zero-length name with covered vnodes,
that points to the root of the file system mounted there. Use it to cross
mounts. When cache_purge() is called on either of the vnodes involved the
cache entry will disappear. All of the needed calls for that are already
in place (vnode reclaim, unmount, etc).
- In lookup_fastforward(), if the the last component has been found and the
parent directory (searchdir) is not going to be returned, then don't get a
reference to it.
- If the lookup fails return with the same lock held. There's no bug here
because either parent or child's lock is sufficient to prevent both from
disappearing into thin air, but may as well be correct.
- if FSCRED is passed in then skip the auth check.