From nobody Tue Apr 9 04:14:03 2024 X-Original-To: dev-commits-src-all@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 4VDCJX1JRqz5GYJh; Tue, 9 Apr 2024 04:14:04 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VDCJX09X1z40tG; Tue, 9 Apr 2024 04:14:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1712636044; 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=ASeIW4DS9PPYxBcmwARocuXylRQdBNyIP2nIJcyrlZA=; b=iY2BS2Xf1ukHik6RwScBWEr4Q+IlE+No7CbMVRCYemPFTR21TaIgrjpXRDz6M/VnRs8BZb Qpgkjj+f1ygpmcfgYdVdLl+8STGWRzld0tjFfJMLMefP/PbUFpLDY4q2luoZVaut40JR2Z 6qte21IHNIG9ievbDUk3gcyF9z+vDXEdWxtd/OY8Iv5DYZS4y2ordTaAGhaKkE3V9NPRzx ioLBsNBzbtZEA2pdb7T/7XpUMMjev4E7Mujfw2PH4JilzFbpxdECDTjcbUWpSGZLx5MJD+ H4POGm3n3jaPKJKe2ddmAGMCnxj2ZBaly5f+z+frfzIybIavc27jm5epJnIM1Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1712636044; a=rsa-sha256; cv=none; b=p4nvCXz9ur4sIjFGkHm1p1k9G1+YV7P6tpvxVXTDhXnA5tXAc6rOwIPXGkEwVsovpZGQmv +fDSBYYFLBcKmIK4zgxT8Or1xLp4djkpao0ky0UT2V1d2si/0my5RKN7Iz8ZP3tEreXHdf W72YNANkjioJwLZ88D85Q1pfJlKF+2jMG7pNLLuD+WqWSni0LFKf4tIFSsWZpLLHkDo15E bPTFJMJ1yMdHm+qNTXVYAlI0CfqYpAsk9aSRdZn2yKa+E6aqq5uHM7Qsmf6VrAdgNFUM4N pvpPiXWla2HSTWqXo96dAWxmZRycQ1Xu5TQT3bY/3pmvn864XNitpw+lcXo4ig== 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=1712636044; 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=ASeIW4DS9PPYxBcmwARocuXylRQdBNyIP2nIJcyrlZA=; b=v+ptOvkycFiAD00FwWcmShFEfcpeQ4IIfWfuTjBoNjR6XC9TLIfcDo9z+tGTsQRLgJCzxc 7uutB0gt9A3ILQzcs0wLhyBoTKPN8t19MqaAMwzhlob0trV0UvSm5qKu8IOlIqvWPFQ/5T hgYvG/1/P9IcsK2vixTHTo9RbE9ajNekgFEa2DkQcx+/6GS3pCksgW0euP7o5sXT2erwkS /YqmpD4VOyCGgYxl8xplnSGfAsJPIyRstqaDEfePqbgIi4oBLAwf51nGB9t5TpeKjB0JdJ Juxfu+9nsb/dPjJ7oO1aHzK3qsUcRm/4n10OMRHa9+W+UpBKP6cEooKNJxUZ4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VDCJW6vQRzftx; Tue, 9 Apr 2024 04:14:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 4394E3Rd039561; Tue, 9 Apr 2024 04:14:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4394E32R039558; Tue, 9 Apr 2024 04:14:03 GMT (envelope-from git) Date: Tue, 9 Apr 2024 04:14:03 GMT Message-Id: <202404090414.4394E32R039558@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: a7b2c455505a - stable/13 - kern linker: Do not touch userrefs of the kernel file List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a7b2c455505ab472dabe84788ceb2109138664f1 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=a7b2c455505ab472dabe84788ceb2109138664f1 commit a7b2c455505ab472dabe84788ceb2109138664f1 Author: Zhenlei Huang AuthorDate: 2024-03-26 08:47:02 +0000 Commit: Zhenlei Huang CommitDate: 2024-04-09 04:13:19 +0000 kern linker: Do not touch userrefs of the kernel file A nonzero `userrefs` of a linker file indicates that the file, either loaded from kldload(2) or preloaded, can be unloaded via kldunload(2). As for the kernel file, it can be unloaded by the loader but should not be after initialization. This change fixes regression from d9ce8a41eac9 which incidentally increases `userrefs` of the kernel file. Reviewed by: dfr, dab, jhb Fixes: d9ce8a41eac9 kern_linker: Handle module-loading failures in preloaded .ko files MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D42530 (cherry picked from commit 39450eba8e6cd5b83def724481127b58ecc1fcc1) (cherry picked from commit 7da45efb0921e9937353992226f34b25ae197545) --- sys/kern/kern_linker.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/kern/kern_linker.c b/sys/kern/kern_linker.c index 8f83fc4c474f..5271d002fba4 100644 --- a/sys/kern/kern_linker.c +++ b/sys/kern/kern_linker.c @@ -1771,6 +1771,9 @@ linker_preload_finish(void *arg) sx_xlock(&kld_sx); TAILQ_FOREACH_SAFE(lf, &linker_files, link, nlf) { + if (lf == linker_kernel_file) + continue; + /* * If all of the modules in this file failed to load, unload * the file and return an error of ENOEXEC. (Parity with