From nobody Mon Feb 10 14:52:35 2025 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 4Ys6xc5cbDz5mGdT; Mon, 10 Feb 2025 14:52:36 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Ys6xc3vb8z4LPX; Mon, 10 Feb 2025 14:52:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1739199156; 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=9NcLr/S5xr54SCTIlY2X6oqFJoW3Px2wtH98gl6cJmk=; b=gagYfmHwyM270iEk5htpeW9/NWGyHu3mWQZuI55cmjKs+A6YWxUjFjSxxqUKjzhUjTBcQq 1lGkdZVt2pxcauuP4NkMtVpGBXgnls5Ca855pEJq4IVfn+Eiu+EBO9a87L3bqyDwHGrPU2 hQ/a37arVzeJZc9hR/NF0DJUo/YmI1UhJAdybAZkEzMqj4I2/fnKbm7dET5Ma3/h9EGqOe WJaj0vfeDvWRg7t2t3bX0UXzjs3EYBqakBRY8TMIWiaz+gkrBDH1tjaW0CH1ZD3YHo8Rr6 Ko1J6vG+AlH2l4KYJ9dsrtfcNbJBnTi4rVQPJEylTbaE7TlthVKO81Nm4Dot9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1739199156; 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=9NcLr/S5xr54SCTIlY2X6oqFJoW3Px2wtH98gl6cJmk=; b=o+9BPxhrlVoCQo2xdMt4sTM0DjHMbR2SSv9DrVtf/r5c2B1SB5hMtfTmSJSw2vmyRkJ9HV DGc/qeFAqc4d9VPlB5sSdALXJxOqjFpwmuKTfXupHBij/sVD3o0hrwH3EIEIHRyFm9vF0E ftjbeSWs84/YSeZ+Yi3zPvfLvPf+EVWWpBONETrQvdAqKSaveE3zews76Z30FAa/fFkXeC TjwxP++3JwIQ2CzzIp3/FB0d/WmfLMkjUHNGS5LathyZR18ryg+qMJrSV6H3i6hCpK/0hQ 65lpgS4nzEjxFNMElTVhOn0tIlcrajsqtvICsQxpc/A1UAIXL5QZk99XGb4AyA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1739199156; a=rsa-sha256; cv=none; b=wLmWFvc3gjcL/f58NhMpnYEK7awJ1+vsDP+PgcpaAV3F7cdaoR3gA5eHVhd8RjkbDK2Kkv yXhZBo8oCX2OuBSY9CA2w+01gxk20XVBA2F2FP8/FIjM0V1NBsvK2P6LCBiBqIOh9eODi3 b7YFJ9EPLh1bem4e97bGJIL/TRsu5YIbu8bYFk7UDFc960rNVC2iaj71nwUBsGAz1hpWKV dRLypsDjyU93aHpanqRz4TSMyYztWN1YNOS5iVbGBTfH2ekN/yG3BSQ3EOC05HeFH8mSeJ zDHxkjOQf3KpmyFR5izuSqimiDKrzOPiZTKp1m7/AoIEKkoKWQLDhlfNFX+yOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4Ys6xb3sktzWgR; Mon, 10 Feb 2025 14:52:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 51AEqZbv027696; Mon, 10 Feb 2025 14:52:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 51AEqZRP027693; Mon, 10 Feb 2025 14:52:35 GMT (envelope-from git) Date: Mon, 10 Feb 2025 14:52:35 GMT Message-Id: <202502101452.51AEqZRP027693@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 25017e9971d6 - stable/14 - LinuxKPI: firmware: change order filenames trying to load firmware 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 25017e9971d6fe56618dcb5a5fb999f1c1d9e5fe Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=25017e9971d6fe56618dcb5a5fb999f1c1d9e5fe commit 25017e9971d6fe56618dcb5a5fb999f1c1d9e5fe Author: Bjoern A. Zeeb AuthorDate: 2024-11-20 13:12:06 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-02-10 14:52:08 +0000 LinuxKPI: firmware: change order filenames trying to load firmware Given we have the support in main and stable/14 to load plain firmware files from /boot/firmware/ make use of that. Switch the order to try the original unmangled filename and path first before trying any replacements. This reduces time and console noise (especially under bootverbose). Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D47682 (cherry picked from commit 30d2f84ef2cba12c67c62a9fe4e1d8e22cf27bf9) --- sys/compat/linuxkpi/common/src/linux_firmware.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_firmware.c b/sys/compat/linuxkpi/common/src/linux_firmware.c index 17da91381280..12658df5ce83 100644 --- a/sys/compat/linuxkpi/common/src/linux_firmware.c +++ b/sys/compat/linuxkpi/common/src/linux_firmware.c @@ -88,17 +88,17 @@ _linuxkpi_request_firmware(const char *fw_name, const struct linuxkpi_firmware * * way rather than adding more name-mangling-hacks here in the future * (though we could if needed). */ - /* (1) Try any name removed of path. */ - fwimg = strrchr(fw_name, '/'); - if (fwimg != NULL) - fwimg++; - if (fwimg == NULL || *fwimg == '\0') - fwimg = fw_name; - fbdfw = firmware_get_flags(fwimg, flags); - /* (2) Try the original name if we have not yet. */ - if (fbdfw == NULL && fwimg != fw_name) { - fwimg = fw_name; - fbdfw = firmware_get_flags(fwimg, flags); + /* (1) Try the original name. */ + fbdfw = firmware_get_flags(fw_name, flags); + /* (2) Try any name removed of path, if we have not yet. */ + if (fbdfw == NULL) { + fwimg = strrchr(fw_name, '/'); + if (fwimg != NULL) + fwimg++; + if (fwimg == NULL || *fwimg == '\0') + fwimg = fw_name; + if (fwimg != fw_name) + fbdfw = firmware_get_flags(fwimg, flags); } /* (3) Flatten '/', '.' and '-' to '_' and try with adjusted name. */ if (fbdfw == NULL &&