Date: Fri, 14 Nov 2025 16:04:48 GMT From: Gleb Smirnoff <glebius@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 82d8a5029a80 - main - unix/stream: fix instant panic w/o INVARIANTS Message-ID: <202511141604.5AEG4mNt027362@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=82d8a5029a80a77166dca098b8fedb10d84e4e38 commit 82d8a5029a80a77166dca098b8fedb10d84e4e38 Author: Gleb Smirnoff <glebius@FreeBSD.org> AuthorDate: 2025-11-14 16:01:47 +0000 Commit: Gleb Smirnoff <glebius@FreeBSD.org> CommitDate: 2025-11-14 16:01:47 +0000 unix/stream: fix instant panic w/o INVARIANTS A stupid microoptimization I made leaving empty STAILQ inconsistent is a brainfart that is related to much earlier version of this code, where it was safe to do so. Pointy hat to: glebius Fixes: 69f61cee2efb1eec0640ca7de9b2d51599569a5d --- sys/kern/uipc_usrreq.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index b1cb6de98b5b..6996f3d447bd 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -1492,11 +1492,10 @@ restart: } if (!peek) { - STAILQ_FIRST(&sb->uxst_mbq) = next; -#ifdef INVARIANTS if (next == NULL) STAILQ_INIT(&sb->uxst_mbq); -#endif + else + STAILQ_FIRST(&sb->uxst_mbq) = next; MPASS(sb->sb_acc >= datalen); sb->sb_acc -= datalen; sb->sb_ccc -= datalen;home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202511141604.5AEG4mNt027362>
