From nobody Mon Jun 8 22:50:07 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gZ6gh1yJnz6gtJy for ; Mon, 08 Jun 2026 22:50:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gZ6gg6L6pz3C2H for ; Mon, 08 Jun 2026 22:50:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780959007; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a97//UTeVV73WJZ+/hRcXjpymcuVLoVh4cU0Gy6WUqE=; b=xPyOOdvPfFnQSeI3HmIFSV7KgYpmYN1y8u61kOm9LyPm12yhuNoigX2Q7nd2xPkZn5jWu7 Q4mxwOrKPAXaKYpNR5GbdugU+SMfUIG0L0Me2QtdIk0LBPEJHlOBX4/nUUK8IpjR6c1Ib+ Sxm8AHxgmdFWyqJLTk2NTpdBTh4/EZ4SJ2KVwbqI6stQfsI3dv6O8izS6NJ5d7Xu5u34a8 MfFVeJxL0Yhsz1uDyU9VEOoqOwrmROinJDjviExATxzmH9osanJPwI8hMusfivZMw5jIEL H5YudnV0sh9SGJs5tOkDE2HAduTWT+2crxs67ThfqRiCxkBhZ+8vBY62obgr+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1780959007; a=rsa-sha256; cv=none; b=J/zTLpkcZ4RgLt7VKIpKbX8/AmbxQcKcq6n35azNaTxep3qHbo/yk8fMFN2DYT67jl1Eh6 s5all7tubZ8StuUldNd0MBWpgGkKsRYHZzhyktokB+uQppPYPiBsiBTUor6DQ+R/pLJ3zC HZdw4j62K1v0OSa3+1I07OYXa9Sw+72JmqdalTkml+M0qXsoHxrgWcFchzzG83G8RBH7RN aVfdrcyw3DwgHMZFtniSr1G6BwRFw/496ct9yGzkl62PDknv0YZOuik2gWs/RMWv7wSh/f lJD+xSt/ksqE8ZlRqlwwr13KmUdc1KLsUjtQCD5zzWM11Eb1mLugxvBR24jy8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780959007; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=a97//UTeVV73WJZ+/hRcXjpymcuVLoVh4cU0Gy6WUqE=; b=uftOQyxWQuTF8dBZD8zLNMNKwAY+J8rFiVdsqKc5owyW8ccC9PSP1hl27uuLgitltOVC6Z QgBQBI53qnobDjXM+UesDuh/Ho46Q+/FcyEjmNAzPVa7yYFFY5O3uq+kqqEYeuUFSecRuT ftov0BymsIAeuufVqRabOsWMglScXN9OyX8tPYZdgISbF3YmF/o2IeoqDvSWvqXMHiHypq 8r+EoQKivtp/L3KG4ERuoNGBI5KSUCFRqEta8XSFNJdgXfM4jto6TLJmT1Kf9vCKCb6cEa BRHXtjrW4zyclnCIUrmdsTerv9LuiJyC8VJSzPUJy6JhYXUoz/jOKXaUsIr3ug== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gZ6gg5sFdz16dn for ; Mon, 08 Jun 2026 22:50:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 24e07 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Jun 2026 22:50:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 2ff705f32a20 - main - libalias: Serialize updates to the global instance list List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2ff705f32a2033201a8f83f1ade5ddbc0460387d Auto-Submitted: auto-generated Date: Mon, 08 Jun 2026 22:50:07 +0000 Message-Id: <6a27471f.24e07.100f034b@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2ff705f32a2033201a8f83f1ade5ddbc0460387d commit 2ff705f32a2033201a8f83f1ade5ddbc0460387d Author: Mark Johnston AuthorDate: 2026-06-08 22:46:32 +0000 Commit: Mark Johnston CommitDate: 2026-06-08 22:49:51 +0000 libalias: Serialize updates to the global instance list libalias maintains a global list of all libalias handles. The list was updated without any locking, but nothing prevents updates from running concurrently. MFC after: 1 week --- sys/netinet/libalias/alias_db.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c index 41f0a328daec..bc567ad2d918 100644 --- a/sys/netinet/libalias/alias_db.c +++ b/sys/netinet/libalias/alias_db.c @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -61,6 +62,10 @@ #include "alias_db.h" +#ifdef _KERNEL +static struct mtx list_mtx; +MTX_SYSINIT(libalias_list, &list_mtx, "libalias list lock", MTX_DEF); +#endif static LIST_HEAD(, libalias) instancehead = LIST_HEAD_INITIALIZER(instancehead); int LibAliasTime; @@ -2190,8 +2195,14 @@ LibAliasInit(struct libalias *la) /* kernel cleans up on module unload */ if (LIST_EMPTY(&instancehead)) atexit(finishoff); +#endif +#ifdef _KERNEL + mtx_lock(&list_mtx); #endif LIST_INSERT_HEAD(&instancehead, la, instancelist); +#ifdef _KERNEL + mtx_unlock(&list_mtx); +#endif #ifdef _KERNEL LibAliasTime = time_uptime; @@ -2259,8 +2270,14 @@ LibAliasUninit(struct libalias *la) UninitPacketAliasLog(la); #ifndef NO_FW_PUNCH UninitPunchFW(la); +#endif +#ifdef _KERNEL + mtx_lock(&list_mtx); #endif LIST_REMOVE(la, instancelist); +#ifdef _KERNEL + mtx_unlock(&list_mtx); +#endif LIBALIAS_UNLOCK(la); LIBALIAS_LOCK_DESTROY(la); free(la);