non port: emulators/qemu-user-static/distinfo |
Number of commits found: 14 |
Friday, 7 Jan 2022
|
22:46 Warner Losh (imp)
emulators/qemu-user-static: Update for 13.x stable
swapoff was MFC'd Dec 20th to stable/13, pull in changes to fix that.
Sponsored by: Netflix
4617d31 |
04:32 Colin Percival (cperciva)
emulators/qemu-user-static: Fix build on recent FreeBSD
The swapoff(2) syscall recently changed from taking a single
argument to taking two (adding a field used for a "force" flag);
this broke qemu-user, since it translates system calls from
guest to host architecture.
Thanks to: imp
With hat: re@
Sponsored by: https://www.patreon.com/cperciva
688bd02 |
Wednesday, 12 May 2021
|
00:44 Kyle Evans (kevans)
emulators/qemu-user-static{,-devel}: fix build on recent FreeBSD
This updates both to 6ffee39fe2e4, which pulls in some patches to fix
the build after a recent commit to main that was MFC'd to stable/13.
While we're here, update qemu-user-static-devel to point to the current
upstream. qemu-user-static-devel will likely be updated in the near
future to point to imp's 6.0 rebase branch for Q/A.
MFH: 2021Q2
f2b487a |
Friday, 12 Mar 2021
|
13:59 kevans
emulators/qemu-user-static: update to fix copy_file_range() bug
MFH: 2021Q1
|
Friday, 26 Feb 2021
|
04:53 kevans
emulators/qemu-user-static: update to f7fd10d7677c
This features a number of fixes; highlights:
- Handle aarch64 YIELD instructions
- Bump ARG_MAX to match the FreeBSD default on LP64 platforms
- Implement __specialfd(2) and copy_file_range(2)
- Style fixes
- Fix an issue with binary execution[0]
- Fix page fault handling for self-modifying binaries[1]
- Suppress noise from CIOGSESSION usage and restore CRIOGET handling
- Patch _umtx_op(2) through to the kernel where possible[2]
[0] Attempting to execute a binary by name was broken when there was an
unrelated entry by the same name in PWD. The report below observed it in the
cluster while building games/dobutsu, which tried to execute `xz` in a directory
that had an `xz` directory inside of it.
[1] From the fixing commit, qemu mprotect()s pages contained translated code
to PROT_READ | PROT_EXEC and upgrades protections as needed upon page fault.
This was broken in a previous commit that misidentified by the trap # that
should have been observed. The observed issue a broken JIT compiler in
libpcre.
[2] _umtx_op can now be handled by the kernel in cases where the target long
size is not longer than the host, and the target and host are the same
endianness. This is much more reliable than our previous emulation of these
operations, and should reduce hangs sometimes observed in threaded applications.
Note that this requires a recent stable/12 or 13.x/-CURRENT.
PR: 253375 [0]
PR: 253335 [1]
MFH: 2021Q1
|
Saturday, 19 Dec 2020
|
03:35 kevans
emulators/qemu-user-static: update to 39244526c0af
Highlights:
- Various ppc target fixes (courtesy of bdragon@)
- Fix for hw.ncpu on mips (courtesy of Dan Nelson)
- Switch to the new qemu-bsd-user/qemu-bsd-user upstream
|
Friday, 4 Dec 2020
|
02:35 kevans
emulators/qemu-user-static: fix the build after base r368005
r368005 removed CRIOGET, breaking the qemu-user-static build. We didn't
actually implement it anyways, so this update simply ripped it out rather
than trying to maintain it for old branches.
While here, bring qemu-user-static-devel up to parity with qemu-user-static.
We should be soon approaching the point where we can rebase the former
forward to a newer qemu.
Reported by: gjb
|
Sunday, 22 Nov 2020
|
03:40 kevans
emulators/qemu-user-static: update to 6f1319e1138c
Highlights:
- Fix stack allocation to behave more like FreeBSD really does[*].
- Raised the stack size on ARM, which should solve some limited cases of
mysterious segfaults (e.g. lang/gcc9).
- Provide hw.ncpu and AT_NCPUS based on cpu affinity to more effectively
limit cpu usage under qemu-user-static.
[*] We start out with a limited initial stack size, then login(1) raises
the stack size up to the maximum possible for the system (arch-based).
qemu-user-static will now calculate a maximum stack size based on the
host's configured rlimit and the qemu-bsd-user specified max for the arch
in question, then immediately raise the stack allocation size to the
maximum. This is especially important because we don't actually handle
stack growth.
post-patch is also dropped entirely, as these sed invocations have done
nothing since versions of qemu back in ~2007, AFAICT. CFLAGS/LDFLAGS get
sucked in during configure and qemu's built with -fno-strict-aliasing as
a default for even longer.
|
Friday, 13 Nov 2020
|
18:46 kevans
emulators/qemu-bsd-user: update to 4ee077c
Highlight:
- Properly fixed consistent segfaults at runtime on processors w/o AVX{,2}
support (previously worked around).
- Fixed RISC-V threading support; we can now build up to gdb at the very
least.
- AT_HWCAP is now populated, ARM reflects VFP support properly
- Fixed more regressions in signal handling
- Fixed freebsd11_kevent emulation (used by lang/go)
- Handful of fixes for warnings in the bsd-user build
|
Monday, 9 Nov 2020
|
01:01 kevans
emulators/qemu-user-static: update to d618de655
Primarily fixes qemu-user-static with the upstream switch to enabling
ARM_FEATURE_EL3 by default (I note that this actually eventually gets
reverted on its own just for CONFIG_USER in later revisions of qemu).
It also fixes some really fundamental breakage that was observed in, e.g.,
grep and most other applications. The official armv7 builder, beefy12, was
seeing an incredibly similar failure.
|
Wednesday, 4 Nov 2020
|
03:38 kevans
emulators/qemu-user-static: update to 269a4ac93
Fixes:
- Fixed recently broken execution of PIE binaries (not zero'ing .bss)[0]
- Fixed handling of signals during pselect(2)/ppoll(2)
- Fixed nanosleep(2) (was writing out time remaining only on success)
- Fixed swapcontext(2)/setcontext(2)
- Fixed a lot of ktimer handling issues
- Fixed direct exec of rtld
Improvements:
- Implemented clock_nanosleep(2)
- Implemented msgget(2) and, more generally, fixed SysV msg support
- Refactored ELF loading (much easier to read, less easy to break)
Investigated by: Andrew Gierth <andrew tao11 riddles org uk> [0]
|
Friday, 30 Oct 2020
|
03:26 kevans
emulators/qemu-user-static: update to latest bsd-user-rebase-3.1
This fixes the recent ELF fix by properly initializing the extension to the
PT_LOAD segment rather than filling it with file garbage.
While here, disable capstone -- this part of the build is subject to
external pollution (= death), and we don't use it in qemu-user-static
anyways.
|
Monday, 19 Oct 2020
|
20:34 kevans
emulators/qemu-user-static: update to latest with more fixes
This fixes a little more fallout from the signal refactoring that wasn't
immediately obvious, and fixes a longstanding bug in ELF loading that
resulted in rtld segfaults.
|
Monday, 14 Sep 2020
|
18:39 kevans
emulator/qemu-user-static: fix major regression from signal refactor
Excellent diagnosis by Andrew Gierth revealed the exact nature of the
regression from previous signal handling fixes; gobject-introspection now
builds, and we should be able to once again build a pretty large chunk of
the ports tree.
The configure script patch has been incorporated into our tree, so the patch
may be removed.
As mentioned previously, qemu-user-static and qemu-user-static-devel will
not always be updated in lockstep; future changes will land to
qemu-user-static-devel first followed by qemu-user-static.
|
Number of commits found: 14 |