- devel/binutils: Remove i386 a.out linker scripts when building
i386-binutils or a base/binutils that targets i386.
- devel/powerpc64-gcc: Remove float.h on i386 since it conflicts
with sys/x86/include/float.h.
- devel/i386-{binutils,gcc,xtoolchain}: New ports.
Reviewed by: bapt (previous version)
Differential Revision: https://reviews.freebsd.org/D16228
- Improve fallback handling for the read of pcb_size.
If for some reason kgdb has only the kernel's debug info, a read of
pcb_size will simply return 0, resulting in an exception when unwinding
the stack of a thread that was on a CPU at the time the dump was
created. In this case, fall back to using sizeof(struct pcb).
- Always supply a value for the PC register on x86.
A thread's PCB may have been swapped out, and a dummy value ensures that
we don't get an exception while enumerating threads in a dump.
- Mark all 64-bit address bits as valid for aarch64 kernels.
ARMv8 supports pointer tagging in which case the upper 8 bits of VAs are
ignored, but FreeBSD kernels are linked such that they depend on those
upper 8 bits being set to 1. GDB was stripping those bits by default
causing KVAs to be mapped to invalid addresses.
- Rework kgdb -w support to only open /dev/mem writable.
Don't depend on the gdb global 'write_files' option which tries to
rewrite the kernel binary on close which can crash. Instead, add an
optional '-w' flag to 'target vmcore' which opens the vmcore with
O_RDWR instead of O_RDONLY. Change the kgdb '-w' option to set this
flag in the nested 'target vmcore' command rather than passing the
global '-w' option to gdb.
- Garbage collect old code for reading dumptid.
- First cut at FreeBSD/arm kernel support.
Tested on live kernel on my RPi, but not against a crashdump, and only
trapframes from userland, not a nested trap.
Submitted by: markj (1, 2)
Approved by: kan
Differential Revision: https://reviews.freebsd.org/D16013
- Project has moved to GitHub
- Pass maintainership to submitter
PR: 229015
Submitted by: Trenton Schulz <trueos@norwegianrockcat.com>
Approved by: pi (mentor)
<ChangeLog>
*) Feature: the $ssl_preread_protocol variable in the
ngx_stream_ssl_preread_module.
*) Feature: now when using the "reset_timedout_connection" directive
nginx will reset connections being closed with the 444 code.
*) Change: a logging level of the "http request", "https proxy request",
"unsupported protocol", and "version too low" SSL errors has been
lowered from "crit" to "info".
*) Bugfix: DNS requests were not resent if initial sending of a request
failed.
*) Bugfix: the "reuseport" parameter of the "listen" directive was
ignored if the number of worker processes was specified after the
"listen" directive.
*) Bugfix: when using OpenSSL 1.1.0 or newer it was not possible to
switch off "ssl_prefer_server_ciphers" in a virtual server if it was
switched on in the default server.
*) Bugfix: SSL session reuse with upstream servers did not work with the
TLS 1.3 protocol.
</ChangeLog>
CONFIGURE_TARGET is used for --build which is the host performing the
build. TARGETARCH is used in powerpc64-gcc/Makefile as the target
architecture of the binaries generated by the compiler being built.
When building a non-amd64 target compiler on an amd64 host,
CONFIGURE_TARGET was set to amd64-unknown-freebsd which confused GCC
(it breaks compilation of an i386 target compiler on an amd64 host).
It would also result in setting CONFIGURE_TARGET improperly when
building an amd64 compiler on a non-amd64 host. Fix by remapping
amd64 to x86-64 if the ARCH is amd64 rather than the TARGETARCH.
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D16227
GCC's builtin <float.h> header is not compatible with
sys/x86/include/float.h. Drop the builtin header for now. If at
some point GCC's notion of floating point constants for i386 can
converge with sys/x86/include/float.h this can be restored.
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D16073