When a cell is cleared after having been moved, we cannot reuse its
extended data, because that may still be in use. Add a flag to
grid_clear_cell to indicate this. Fixes irritating problems with ICH
(CSI @) mostly visible in emacs.
Hoist mips64 CPU accounting to get multiple softnet threads on MP systems
Increment ncpus (hw.ncpu) in mips64 cpuattach() instead of octeon/loongson
hw_cpu_hatch() running before, not after MI sofnet_percpu(), respectively.
This matches what arm64, macppc and powerpc64 do.
Local traffic may now be distributed across multiple threads, while physical
drivers like cnmac(4/octeon) still lack multiqueue support to do so.
loongson was not tested, but should behave the same.
initial report Jordan Geoghegan
tests kirill bluhm Janne Johansson
feedback miod bluhm kettenis
OK kirill visa
Implement support for the Zicbom and Svpbmt extensions. Rework the cache
flushing code to operate on virtual addresses instead of physical
addresses. Seems the Zicbom implementation on the SpacemiT X60 cores
doesn't flush the caches if the mapping is non-cachable. So adjust
_pmap_kenter_pa() to use a temporary cachable mapping to clean a page we
want to map non-cachable.
ok jca@
xwayland-satellite would fail unable to find -lgcc while linking
tb@ pointed out that MODCLANG_COMPILER_LINKS=no might help on this
and similar failures on other ports.
Confirmed that this fixes the build on sparc64
Brad Smith immediately provided a patch for archivers/libmpq (moving
it to using ports-gcc) that allows devilutionx to actually build and
package on sparc64.
So remove BROKEN-sparc64
Move archivers/libmpq to ports-gcc because it uses
builtins (__builtin_bswap16/32/64) that end up missing during linking of
consumers such as games/devilutionx.
Switching to ports-gcc produces a library that allows consumers such
as games/devilutionx to link successfully.
Patch provided by Brad Smith
Broken on sparc64 for multiple releases.
Dies during linking:
/usr/local/lib/libmpq.so.0.0: undefined reference to `__builtin_bswap16'
/usr/local/lib/libmpq.so.0.0: undefined reference to `__builtin_bswap32'
/usr/local/lib/libmpq.so.0.0: undefined reference to `__builtin_bswap64'
Mark BROKEN-sparc64
netgroup_mkdb(8) calls abort() when _ng_parse() returns
_NG_ERROR for a malformed netgroup entry. Make this code
exit via the same paradigm as other errors (errx).
From Renaud Allard, thanks!
ok op@