The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6933fdcb547e264f756535e442b23cdf621c3360
commit 6933fdcb547e264f756535e442b23cdf621c3360 Author: Konstantin Belousov <[email protected]> AuthorDate: 2026-04-28 02:34:49 +0000 Commit: Konstantin Belousov <[email protected]> CommitDate: 2026-05-08 00:30:32 +0000 uipc_shm.c: make large page allocation interruptible (cherry picked from commit 839d3266d8c6f6471cb92a3c0ae32eb16d117427) --- sys/kern/uipc_shm.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/kern/uipc_shm.c b/sys/kern/uipc_shm.c index 1fc398e93ae6..cd79d2039ebf 100644 --- a/sys/kern/uipc_shm.c +++ b/sys/kern/uipc_shm.c @@ -867,12 +867,20 @@ shm_dotruncate_largepage(struct shmfd *shmfd, off_t length, void *rl_cookie) * object lock might allowed mapping of them. */ while (object->size < newobjsz) { + error = sig_intr(); + if (error != 0) + return (error); m = vm_page_alloc_contig(object, object->size, aflags, pagesizes[psind] / PAGE_SIZE, 0, ~0, pagesizes[psind], 0, VM_MEMATTR_DEFAULT); if (m == NULL) { VM_OBJECT_WUNLOCK(object); + error = sig_intr(); + if (error != 0) { + VM_OBJECT_WLOCK(object); + return (error); + } if (shmfd->shm_lp_alloc_policy == SHM_LARGEPAGE_ALLOC_NOWAIT || (shmfd->shm_lp_alloc_policy ==
