sync with OpenBSD -current

This commit is contained in:
purplerain 2024-04-19 01:38:35 +00:00
parent fe7a6999d9
commit f21e607a91
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
19 changed files with 138 additions and 64 deletions

View file

@ -1,4 +1,4 @@
/* $OpenBSD: kern_sig.c,v 1.324 2024/04/10 10:05:26 claudio Exp $ */
/* $OpenBSD: kern_sig.c,v 1.325 2024/04/18 09:06:42 claudio Exp $ */
/* $NetBSD: kern_sig.c,v 1.54 1996/04/22 01:38:32 christos Exp $ */
/*
@ -1443,6 +1443,9 @@ proc_stop(struct proc *p, int sw)
#ifdef MULTIPROCESSOR
SCHED_ASSERT_LOCKED();
#endif
/* do not stop exiting procs */
if (ISSET(p->p_flag, P_WEXIT))
return;
p->p_stat = SSTOP;
atomic_clearbits_int(&pr->ps_flags, PS_WAITED);

View file

@ -1,4 +1,4 @@
/* $OpenBSD: kern_synch.c,v 1.201 2024/03/30 13:33:20 mpi Exp $ */
/* $OpenBSD: kern_synch.c,v 1.202 2024/04/18 08:59:38 claudio Exp $ */
/* $NetBSD: kern_synch.c,v 1.37 1996/04/22 01:38:37 christos Exp $ */
/*
@ -342,6 +342,9 @@ sleep_setup(const volatile void *ident, int prio, const char *wmesg)
if (p->p_stat != SONPROC)
panic("tsleep: not SONPROC");
#endif
/* exiting processes are not allowed to catch signals */
if (p->p_flag & P_WEXIT)
CLR(prio, PCATCH);
SCHED_LOCK(s);