From nobody Wed Apr 1 22:11:52 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E68BC3E6DEB; Wed, 1 Apr 2026 11:49:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775044141; cv=none; b=qtV259jIWnj7ODEtkwC4CMr0OV6K5hag36cjWcPpk0K4w08lYVd4Iea/8ET55YgWkObp4iHIz25aDpfQm++vu2PHJSXzkm8qB85AS916+NnQYhj5ARK/UWqGCKsvJ3CeARnywX6k2q99Qtbw1ANr+jeiQooeKLTq0vceeFDMOZw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775044141; c=relaxed/simple; bh=ItfdI64Ks8gXoHtrpj58RCfjp1hysM7VxfqZvaewK7E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ttf7MFrZpLGmHiw4bDHVaD76OR2UFFWHMeBRfR3bW6Q0GODge4NWjjBbn9GtrSkjY5tyjjVz7z5dZMCWRO3voLEUutQG42oIPAYSmmAYEX3iweITluFjiWyMC+KLmzHY9yqhVfKtCnjY+1ZQz+sl2GB662XNN6Pwlxx4UrEg0+o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=au78Fn5P; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="au78Fn5P" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3C824C116C6; Wed, 1 Apr 2026 11:48:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775044140; bh=ItfdI64Ks8gXoHtrpj58RCfjp1hysM7VxfqZvaewK7E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=au78Fn5P62QtKs+AJuvGHcFWbjilw5jy6hHRniP49H+mzNx6g15OrAt4rwU2g+0Bf tgBzQ7o2EUJfMYGsWaaiWncgiCJA8DMzQeG5Hxb97hWVuDNmyp7CXYxa9h9XPB0+72 HyKrGNgOra2twsMAAIbGarVaeaCvYqs9UnC3BNpHx/ooTRBNddV7XrpahshUBA5t4A bLhkkMuXgTC/ps+59WFJ9qjuX446UCiCI1TqDu41k8PyOf4qsSJ8c0PqM5AyOiXO5C sy02Wxq7FBpUPdnBPZ+g6kYQbEU5X+6ye5V4xHtrAdpwNgn4H15Rym/SXtIaEDW5wK btGTVejLETUPg== From: Miguel Ojeda To: Miguel Ojeda , Nathan Chancellor , Nicolas Schier , Danilo Krummrich , Andreas Hindborg , Catalin Marinas , Will Deacon , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Courbot , David Airlie , Simona Vetter , Brendan Higgins , David Gow , Greg Kroah-Hartman , =?UTF-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= , Todd Kjos , Christian Brauner , Carlos Llamas , Alice Ryhl , Jonathan Corbet Cc: Boqun Feng , Gary Guo , =?UTF-8?q?Bj=C3=B6rn=20Roy=20Baron?= , Benno Lossin , Trevor Gross , rust-for-linux@vger.kernel.org, linux-kbuild@vger.kernel.org, Lorenzo Stoakes , Vlastimil Babka , "Liam R . Howlett" , Uladzislau Rezki , linux-block@vger.kernel.org, linux-arm-kernel@lists.infradead.org (moderated for non-subscribers), Alexandre Ghiti , linux-riscv@lists.infradead.org, nouveau@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Rae Moar , linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com, Nick Desaulniers , Bill Wendling , Justin Stitt , llvm@lists.linux.dev, linux-kernel@vger.kernel.org, Shuah Khan , linux-doc@vger.kernel.org Subject: [PATCH 15/33] rust: rust_is_available: remove warning for 0.66.[01] buggy versions Date: Wed, 1 Apr 2026 13:45:22 +0200 Message-ID: <20260401114540.30108-16-ojeda@kernel.org> In-Reply-To: <20260401114540.30108-1-ojeda@kernel.org> References: <20260401114540.30108-1-ojeda@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" It is not possible anymore to fall into the issue that this warning was alerting about given the `bindgen` version bump. Thus simplify by removing the machinery behind it, including tests. Signed-off-by: Miguel Ojeda --- scripts/rust_is_available.sh | 13 ------------ scripts/rust_is_available_bindgen_0_66.h | 2 -- scripts/rust_is_available_test.py | 26 +++--------------------- 3 files changed, 3 insertions(+), 38 deletions(-) delete mode 100644 scripts/rust_is_available_bindgen_0_66.h diff --git a/scripts/rust_is_available.sh b/scripts/rust_is_available.sh index d2323de0692c..77896e31dab5 100755 --- a/scripts/rust_is_available.sh +++ b/scripts/rust_is_available.sh @@ -163,19 +163,6 @@ if [ "$rust_bindings_generator_cversion" -lt "$rust_bi= ndings_generator_min_cvers echo >&2 "***" exit 1 fi -if [ "$rust_bindings_generator_cversion" -eq 6600 ] || - [ "$rust_bindings_generator_cversion" -eq 6601 ]; then - # Distributions may have patched the issue (e.g. Debian did). - if ! "$BINDGEN" $(dirname $0)/rust_is_available_bindgen_0_66.h >/dev/null= ; then - echo >&2 "***" - echo >&2 "*** Rust bindings generator '$BINDGEN' versions 0.66.0 and 0.6= 6.1 may not" - echo >&2 "*** work due to a bug (https://github.com/rust-lang/rust-bindg= en/pull/2567)," - echo >&2 "*** unless patched (like Debian's)." - echo >&2 "*** Your version: $rust_bindings_generator_version" - echo >&2 "***" - warning=3D1 - fi -fi =20 # Check that the `libclang` used by the Rust bindings generator is suitabl= e. # diff --git a/scripts/rust_is_available_bindgen_0_66.h b/scripts/rust_is_ava= ilable_bindgen_0_66.h deleted file mode 100644 index c0431293421c..000000000000 --- a/scripts/rust_is_available_bindgen_0_66.h +++ /dev/null @@ -1,2 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#define A "\0" diff --git a/scripts/rust_is_available_test.py b/scripts/rust_is_available_= test.py index 4fcc319dea84..b66fa5933844 100755 --- a/scripts/rust_is_available_test.py +++ b/scripts/rust_is_available_test.py @@ -54,17 +54,12 @@ else: """) =20 @classmethod - def generate_bindgen(cls, version_stdout, libclang_stderr, version_0_6= 6_patched=3DFalse, libclang_concat_patched=3DFalse): + def generate_bindgen(cls, version_stdout, libclang_stderr, libclang_co= ncat_patched=3DFalse): if libclang_stderr is None: libclang_case =3D f"raise SystemExit({cls.bindgen_default_bind= gen_libclang_failure_exit_code})" else: libclang_case =3D f"print({repr(libclang_stderr)}, file=3Dsys.= stderr)" =20 - if version_0_66_patched: - version_0_66_case =3D "pass" - else: - version_0_66_case =3D "raise SystemExit(1)" - if libclang_concat_patched: libclang_concat_case =3D "print('pub static mut foofoo: ::std:= :os::raw::c_int;')" else: @@ -74,8 +69,6 @@ else: import sys if "rust_is_available_bindgen_libclang.h" in " ".join(sys.argv): {libclang_case} -elif "rust_is_available_bindgen_0_66.h" in " ".join(sys.argv): - {version_0_66_case} elif "rust_is_available_bindgen_libclang_concat.h" in " ".join(sys.argv): {libclang_concat_case} else: @@ -83,8 +76,8 @@ else: """) =20 @classmethod - def generate_bindgen_version(cls, stdout, version_0_66_patched=3DFalse= ): - return cls.generate_bindgen(stdout, cls.bindgen_default_bindgen_li= bclang_stderr, version_0_66_patched) + def generate_bindgen_version(cls, stdout): + return cls.generate_bindgen(stdout, cls.bindgen_default_bindgen_li= bclang_stderr) =20 @classmethod def generate_bindgen_libclang_failure(cls): @@ -245,19 +238,6 @@ else: result =3D self.run_script(self.Expected.FAILURE, { "BINDGEN": bin= dgen }) self.assertIn(f"Rust bindings generator '{bindgen}' is too old.", = result.stderr) =20 - def test_bindgen_bad_version_0_66_0_and_0_66_1(self): - for version in ("0.66.0", "0.66.1"): - with self.subTest(version=3Dversion): - bindgen =3D self.generate_bindgen_version(f"bindgen {versi= on}") - result =3D self.run_script(self.Expected.SUCCESS_WITH_WARN= INGS, { "BINDGEN": bindgen }) - self.assertIn(f"Rust bindings generator '{bindgen}' versio= ns 0.66.0 and 0.66.1 may not", result.stderr) - - def test_bindgen_bad_version_0_66_0_and_0_66_1_patched(self): - for version in ("0.66.0", "0.66.1"): - with self.subTest(version=3Dversion): - bindgen =3D self.generate_bindgen_version(f"bindgen {versi= on}", True) - result =3D self.run_script(self.Expected.SUCCESS, { "BINDG= EN": bindgen }) - def test_bindgen_libclang_failure(self): bindgen =3D self.generate_bindgen_libclang_failure() result =3D self.run_script(self.Expected.FAILURE, { "BINDGEN": bin= dgen }) --=20 2.53.0