Pull up following revision(s) (requested by hgutch in ticket #292):
external/mit/xorg/tools/fc-cache/Makefile: revision 1.24
Build fc-cache tool with -std=gnu99 instead of -std=c99 to get necessary
function prototypes on gcc-14/glibc build hosts.
Pull up following revision(s) (requested by isaki in ticket #1268):
etc/etc.luna68k/MAKEDEV.conf: revision 1.12
luna68k: Add missing audio devices to MAKEDEV.
Pull up following revision(s) (requested by isaki in ticket #291):
etc/etc.luna68k/MAKEDEV.conf: revision 1.12
luna68k: Add missing audio devices to MAKEDEV.
Pull up following revision(s) (requested by riastradh in ticket #289):
usr.bin/ruptime/ruptime.c: revision 1.16
usr.sbin/inetd/ratelimit.c: revision 1.3
fix a couple of "allocate too little" issues GCC 14 pointed out.
both ruptime and inetd allocate a less-than-struct-sized space and
assign it to a struct pointer. neither of them actually use more
than the allocated memory, but this is still dodgy and technically
wrong. just allocate the right size.
Pull up following revision(s) (requested by christos in ticket #288):
crypto/external/bsd/openssh/dist/sshd-session.c: revision 1.13
crypto/external/bsd/openssh/dist/sshd-auth.c: revision 1.6
PR/60270: Jose Luis Duran: Add back accidentally removed probes.
PR bin/60275 discard even less arriving signals
Avoid signals arriving immediately after a fork() (or vfork())
by blocking everything (everything possible) while the fork()
happens, in the parent, for (close to) the minimum possible time,
in the child, until it has its state init'd enough that it is
safe for signals to arrive.
Further, if a signal does arrive (in a child) which was trapped
in the parent, but hasn't been cleaned up fully yet, instead of
simply ignoring it, send it to ourselves, after setting its state
to SIG_DFL (which is what would eventually happen to a trapped
signal anyway). If that doesn't kill us, then we will end up
(harmlessly) setting the state to SIG_DFL again later as would happen
if the signal hadn't arrived in this short window; we cannot record that
it happened to avoid that, as we might be in a vforked child, and
anything recorded by that would be visible back in the parent later
(where the signal action was not changed).
[12 lines not shown]
Pull up following revision(s) (requested by mrg in ticket #2012):
sys/fs/cd9660/cd9660_rrip.c: revision 1.19
cd9660: make sure that NM records are at least 5 bytes long.
avoids an integer underflow when this length has 5 subtracted from it
for a later path.
Reported by Adam Crosser, Praetorian
Pull up following revision(s) (requested by mrg in ticket #1267):
sys/fs/cd9660/cd9660_rrip.c: revision 1.19
cd9660: make sure that NM records are at least 5 bytes long.
avoids an integer underflow when this length has 5 subtracted from it
for a later path.
Reported by Adam Crosser, Praetorian
build.sh: Make MAKEVERBOSE tests consistent.
- Use "${MAKEVERBOSE}" to avoid trouble in case it has spaces or
asterisks or whatever in the environment.
- Default to 2 if it's not defined or empty.
Should fix build.sh pkg=... without any -N argument or any
MAKEVERBOSE set in the environment.
PR bin/60275 discard less arriving signals
If the signal state is returned to the default state (SIG_DFL)
while sh has a pending signal for the process, that it is not
yet ready to process, then forget the pending signal, and instead
send it to ourself, so the kernel can take whatever is the default
action for that signal (if it is just ignored, then we just keep
on processing, if it kills us, well, it was nice while it lasted!)
sys/atomic.h: Nix const qualifiers on temporaries added in previous.
The temporaries aren't modified, so in principle const is correct,
but on some ports (notably, sparc) we pass pointers to them through
__UNVOLATILE which objects to the const qualifier:
> In file included from /home/source/ab/HEAD/src/lib/librump/../../sys/rump/librump/rumpkern/sleepq.c:28:
> /home/source/ab/HEAD/src/lib/librump/../../sys/rump/librump/rumpkern/sleepq.c: In function 'lwp_unlock_to':
> /home/source/ab/HEAD/src/lib/librump/../../sys/rump/../sys/cdefs.h:202:49: error: cast discards 'const' qualifier from pointer target type [-Werror=cast-qual]
> 202 | #define __UNVOLATILE(a) ((void *)(unsigned long)(volatile void *)(a))
> | ^
> /home/source/ab/HEAD/src/lib/librump/../../sys/rump/../sys/atomic.h:448:30: note: in expansion of macro '__UNVOLATILE'
> 448 | __do_atomic_store(p, __UNVOLATILE(&v), sizeof(v))
> | ^~~~~~~~~~~~
> /home/source/ab/HEAD/src/lib/librump/../../sys/rump/../sys/atomic.h:495:9: note: in expansion of macro '__DO_ATOMIC_STORE'
> 495 | __DO_ATOMIC_STORE(__as_ptr, __as_val); \
> | ^~~~~~~~~~~~~~~~~
> /home/source/ab/HEAD/src/lib/librump/../../sys/rump/librump/rumpkern/sleepq.c:187:9: note: in expansion of macro 'atomic_store_release'
> 187 | atomic_store_release(&l->l_mutex, new);
[4 lines not shown]