Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys/arch
Module Name: src
Committed By: nia
Date: Mon Dec 15 22:10:34 UTC 2025
Modified Files:
src/sys/arch/aarch64/include: byte_swap.h
src/sys/arch/amd64/include: byte_swap.h
src/sys/arch/arm/include: byte_swap.h
src/sys/arch/hppa/include: byte_swap.h
src/sys/arch/i386/include: byte_swap.h
src/sys/arch/m68k/include: byte_swap.h
src/sys/arch/or1k/include: byte_swap.h
src/sys/arch/riscv/include: byte_swap.h
src/sys/arch/sh3/include: byte_swap.h
src/sys/arch/vax/include: byte_swap.h
Log Message:
Eliminate recursive dependency on <sys/bswap.h> in MD <byte_swap.h>
On certain NetBSD archs, it isn't possible to include <sys/bswap.h>
directly without including <sys/endian.h> first. This has been
broken since at least before netbsd-10, but recent changes elsewhere
have made this problem more visible for some reason.
Fix this by not including <sys/types.h>, eliminating recursive
inclusion - <sys/types.h> includes <machine/endian.h>. It would
be nice to remove that line from types.h, since it's no longer
necessary, but currently the kernel assumes that <sys/endian.h> is
included from <sys/types.h> in various places (and possibly userspace
software does too).
For now we can take the less dangerous option by avoiding
including <sys/types.h> from these bswap headers. They don't need the
full header, and applications that assume transclusion aren't portable
anyway, since architectures like sparc64 don't include <sys/types.h>
via <sys/bswap.h>.
PR pkg/59839 palemoon, firefox, etc., don't build on arm64 any more
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/aarch64/include/byte_swap.h
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/amd64/include/byte_swap.h
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/include/byte_swap.h
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/hppa/include/byte_swap.h
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/i386/include/byte_swap.h
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/m68k/include/byte_swap.h
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/or1k/include/byte_swap.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/riscv/include/byte_swap.h
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/sh3/include/byte_swap.h
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/vax/include/byte_swap.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index