From 7c0ad00ef7d7c6579bbdc9557fd808ed6fab9934 Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Wed, 3 Apr 2024 14:30:38 -0700 Subject: [PATCH 1/4] patches: Drop patches that were applied in the latest series of stable releases These have all been released in 6.8.3, 6.6.24, and 6.1.84. Signed-off-by: Nathan Chancellor --- ...0786c481d5ced9283ff42de5c69b65e5ed13.patch | 45 ------------ patches/6.1/series | 1 - ...7e46aa93ebad1dfbed4f82dc3bf779423a6e.patch | 58 ---------------- ...0786c481d5ced9283ff42de5c69b65e5ed13.patch | 45 ------------ ...ab134bb5f657ef7979a59106dce0657e8d87.patch | 69 ------------------- patches/6.6/series | 3 - ...0786c481d5ced9283ff42de5c69b65e5ed13.patch | 45 ------------ ...ab134bb5f657ef7979a59106dce0657e8d87.patch | 69 ------------------- patches/stable/series | 2 - 9 files changed, 337 deletions(-) delete mode 100644 patches/6.1/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch delete mode 100644 patches/6.1/series delete mode 100644 patches/6.6/1a807e46aa93ebad1dfbed4f82dc3bf779423a6e.patch delete mode 100644 patches/6.6/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch delete mode 100644 patches/6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch delete mode 100644 patches/stable/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch delete mode 100644 patches/stable/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch diff --git a/patches/6.1/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch b/patches/6.1/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch deleted file mode 100644 index 389ee9aa..00000000 --- a/patches/6.1/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 35f20786c481d5ced9283ff42de5c69b65e5ed13 Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Sat, 27 Jan 2024 11:07:43 -0700 -Subject: powerpc: xor_vmx: Add '-mhard-float' to CFLAGS - -arch/powerpc/lib/xor_vmx.o is built with '-msoft-float' (from the main -powerpc Makefile) and '-maltivec' (from its CFLAGS), which causes an -error when building with clang after a recent change in main: - - error: option '-msoft-float' cannot be specified with '-maltivec' - make[6]: *** [scripts/Makefile.build:243: arch/powerpc/lib/xor_vmx.o] Error 1 - -Explicitly add '-mhard-float' before '-maltivec' in xor_vmx.o's CFLAGS -to override the previous inclusion of '-msoft-float' (as the last option -wins), which matches how other areas of the kernel use '-maltivec', such -as AMDGPU. - -Cc: stable@vger.kernel.org -Closes: https://github.com/ClangBuiltLinux/linux/issues/1986 -Link: https://github.com/llvm/llvm-project/commit/4792f912b232141ecba4cbae538873be3c28556c -Signed-off-by: Nathan Chancellor -Signed-off-by: Michael Ellerman -Link: https://msgid.link/20240127-ppc-xor_vmx-drop-msoft-float-v1-1-f24140e81376@kernel.org ---- -Link: https://git.kernel.org/powerpc/c/35f20786c481d5ced9283ff42de5c69b65e5ed13 ---- - arch/powerpc/lib/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile -index 6eac63e79a8995..0ab65eeb93ee3a 100644 ---- a/arch/powerpc/lib/Makefile -+++ b/arch/powerpc/lib/Makefile -@@ -76,7 +76,7 @@ obj-$(CONFIG_PPC_LIB_RHEAP) += rheap.o - obj-$(CONFIG_FTR_FIXUP_SELFTEST) += feature-fixups-test.o - - obj-$(CONFIG_ALTIVEC) += xor_vmx.o xor_vmx_glue.o --CFLAGS_xor_vmx.o += -maltivec $(call cc-option,-mabi=altivec) -+CFLAGS_xor_vmx.o += -mhard-float -maltivec $(call cc-option,-mabi=altivec) - # Enable - CFLAGS_xor_vmx.o += -isystem $(shell $(CC) -print-file-name=include) - --- -cgit 1.2.3-korg - diff --git a/patches/6.1/series b/patches/6.1/series deleted file mode 100644 index 1c22d852..00000000 --- a/patches/6.1/series +++ /dev/null @@ -1 +0,0 @@ -35f20786c481d5ced9283ff42de5c69b65e5ed13.patch diff --git a/patches/6.6/1a807e46aa93ebad1dfbed4f82dc3bf779423a6e.patch b/patches/6.6/1a807e46aa93ebad1dfbed4f82dc3bf779423a6e.patch deleted file mode 100644 index 0623a28d..00000000 --- a/patches/6.6/1a807e46aa93ebad1dfbed4f82dc3bf779423a6e.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 1a807e46aa93ebad1dfbed4f82dc3bf779423a6e Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Wed, 21 Feb 2024 14:46:21 -0700 -Subject: xfrm: Avoid clang fortify warning in copy_to_user_tmpl() - -After a couple recent changes in LLVM, there is a warning (or error with -CONFIG_WERROR=y or W=e) from the compile time fortify source routines, -specifically the memset() in copy_to_user_tmpl(). - - In file included from net/xfrm/xfrm_user.c:14: - ... - include/linux/fortify-string.h:438:4: error: call to '__write_overflow_field' declared with 'warning' attribute: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror,-Wattribute-warning] - 438 | __write_overflow_field(p_size_field, size); - | ^ - 1 error generated. - -While ->xfrm_nr has been validated against XFRM_MAX_DEPTH when its value -is first assigned in copy_templates() by calling validate_tmpl() first -(so there should not be any issue in practice), LLVM/clang cannot really -deduce that across the boundaries of these functions. Without that -knowledge, it cannot assume that the loop stops before i is greater than -XFRM_MAX_DEPTH, which would indeed result a stack buffer overflow in the -memset(). - -To make the bounds of ->xfrm_nr clear to the compiler and add additional -defense in case copy_to_user_tmpl() is ever used in a path where -->xfrm_nr has not been properly validated against XFRM_MAX_DEPTH first, -add an explicit bound check and early return, which clears up the -warning. - -Cc: stable@vger.kernel.org -Link: https://github.com/ClangBuiltLinux/linux/issues/1985 -Signed-off-by: Nathan Chancellor -Reviewed-by: Kees Cook -Signed-off-by: Steffen Klassert ---- -Link: https://git.kernel.org/linus/1a807e46aa93ebad1dfbed4f82dc3bf779423a6e ---- - net/xfrm/xfrm_user.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c -index ad01997c3aa9dd..444e58bc3f4401 100644 ---- a/net/xfrm/xfrm_user.c -+++ b/net/xfrm/xfrm_user.c -@@ -2017,6 +2017,9 @@ static int copy_to_user_tmpl(struct xfrm_policy *xp, struct sk_buff *skb) - if (xp->xfrm_nr == 0) - return 0; - -+ if (xp->xfrm_nr > XFRM_MAX_DEPTH) -+ return -ENOBUFS; -+ - for (i = 0; i < xp->xfrm_nr; i++) { - struct xfrm_user_tmpl *up = &vec[i]; - struct xfrm_tmpl *kp = &xp->xfrm_vec[i]; --- -cgit 1.2.3-korg - diff --git a/patches/6.6/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch b/patches/6.6/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch deleted file mode 100644 index 389ee9aa..00000000 --- a/patches/6.6/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 35f20786c481d5ced9283ff42de5c69b65e5ed13 Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Sat, 27 Jan 2024 11:07:43 -0700 -Subject: powerpc: xor_vmx: Add '-mhard-float' to CFLAGS - -arch/powerpc/lib/xor_vmx.o is built with '-msoft-float' (from the main -powerpc Makefile) and '-maltivec' (from its CFLAGS), which causes an -error when building with clang after a recent change in main: - - error: option '-msoft-float' cannot be specified with '-maltivec' - make[6]: *** [scripts/Makefile.build:243: arch/powerpc/lib/xor_vmx.o] Error 1 - -Explicitly add '-mhard-float' before '-maltivec' in xor_vmx.o's CFLAGS -to override the previous inclusion of '-msoft-float' (as the last option -wins), which matches how other areas of the kernel use '-maltivec', such -as AMDGPU. - -Cc: stable@vger.kernel.org -Closes: https://github.com/ClangBuiltLinux/linux/issues/1986 -Link: https://github.com/llvm/llvm-project/commit/4792f912b232141ecba4cbae538873be3c28556c -Signed-off-by: Nathan Chancellor -Signed-off-by: Michael Ellerman -Link: https://msgid.link/20240127-ppc-xor_vmx-drop-msoft-float-v1-1-f24140e81376@kernel.org ---- -Link: https://git.kernel.org/powerpc/c/35f20786c481d5ced9283ff42de5c69b65e5ed13 ---- - arch/powerpc/lib/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile -index 6eac63e79a8995..0ab65eeb93ee3a 100644 ---- a/arch/powerpc/lib/Makefile -+++ b/arch/powerpc/lib/Makefile -@@ -76,7 +76,7 @@ obj-$(CONFIG_PPC_LIB_RHEAP) += rheap.o - obj-$(CONFIG_FTR_FIXUP_SELFTEST) += feature-fixups-test.o - - obj-$(CONFIG_ALTIVEC) += xor_vmx.o xor_vmx_glue.o --CFLAGS_xor_vmx.o += -maltivec $(call cc-option,-mabi=altivec) -+CFLAGS_xor_vmx.o += -mhard-float -maltivec $(call cc-option,-mabi=altivec) - # Enable - CFLAGS_xor_vmx.o += -isystem $(shell $(CC) -print-file-name=include) - --- -cgit 1.2.3-korg - diff --git a/patches/6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch b/patches/6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch deleted file mode 100644 index 7fc750f8..00000000 --- a/patches/6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 75b5ab134bb5f657ef7979a59106dce0657e8d87 Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Tue, 5 Mar 2024 15:12:47 -0700 -Subject: kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1 - -Clang enables -Wenum-enum-conversion and -Wenum-compare-conditional -under -Wenum-conversion. A recent change in Clang strengthened these -warnings and they appear frequently in common builds, primarily due to -several instances in common headers but there are quite a few drivers -that have individual instances as well. - - include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] - 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + - | ~~~~~~~~~~~~~~~~~~~~~ ^ - 509 | item]; - | ~~~~ - - drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:955:24: warning: conditional expression between different enumeration types ('enum iwl_mac_beacon_flags' and 'enum iwl_mac_beacon_flags_v1') [-Wenum-compare-conditional] - 955 | flags |= is_new_rate ? IWL_MAC_BEACON_CCK - | ^ ~~~~~~~~~~~~~~~~~~ - 956 | : IWL_MAC_BEACON_CCK_V1; - | ~~~~~~~~~~~~~~~~~~~~~ - drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:1120:21: warning: conditional expression between different enumeration types ('enum iwl_mac_beacon_flags' and 'enum iwl_mac_beacon_flags_v1') [-Wenum-compare-conditional] - 1120 | 0) > 10 ? - | ^ - 1121 | IWL_MAC_BEACON_FILS : - | ~~~~~~~~~~~~~~~~~~~ - 1122 | IWL_MAC_BEACON_FILS_V1; - | ~~~~~~~~~~~~~~~~~~~~~~ - -Doing arithmetic between or returning two different types of enums could -be a bug, so each of the instance of the warning needs to be evaluated. -Unfortunately, as mentioned above, there are many instances of this -warning in many different configurations, which can break the build when -CONFIG_WERROR is enabled. - -To avoid introducing new instances of the warnings while cleaning up the -disruption for the majority of users, disable these warnings for the -default build while leaving them on for W=1 builds. - -Cc: stable@vger.kernel.org -Closes: https://github.com/ClangBuiltLinux/linux/issues/2002 -Link: https://github.com/llvm/llvm-project/commit/8c2ae42b3e1c6aa7c18f873edcebff7c0b45a37e -Acked-by: Yonghong Song -Signed-off-by: Nathan Chancellor -Acked-by: Arnd Bergmann -Signed-off-by: Masahiro Yamada ---- -Link: https://git.kernel.org/masahiroy/linux-kbuild/c/75b5ab134bb5f657ef7979a59106dce0657e8d87 ---- - scripts/Makefile.extrawarn | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn -index a9e552a1e9105b..2f25a1de129d10 100644 ---- a/scripts/Makefile.extrawarn -+++ b/scripts/Makefile.extrawarn -@@ -132,6 +132,8 @@ KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast) - KBUILD_CFLAGS += -Wno-tautological-constant-out-of-range-compare - KBUILD_CFLAGS += $(call cc-disable-warning, unaligned-access) - KBUILD_CFLAGS += $(call cc-disable-warning, cast-function-type-strict) -+KBUILD_CFLAGS += -Wno-enum-compare-conditional -+KBUILD_CFLAGS += -Wno-enum-enum-conversion - endif - - endif --- -cgit 1.2.3-korg - diff --git a/patches/6.6/series b/patches/6.6/series index 599d8b97..fdcfafa0 100644 --- a/patches/6.6/series +++ b/patches/6.6/series @@ -1,4 +1 @@ -1a807e46aa93ebad1dfbed4f82dc3bf779423a6e.patch -35f20786c481d5ced9283ff42de5c69b65e5ed13.patch -75b5ab134bb5f657ef7979a59106dce0657e8d87.patch v2_20240305_nathan_media_mxl5xx_move_xpt_structures_off_stack.patch diff --git a/patches/stable/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch b/patches/stable/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch deleted file mode 100644 index 389ee9aa..00000000 --- a/patches/stable/35f20786c481d5ced9283ff42de5c69b65e5ed13.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 35f20786c481d5ced9283ff42de5c69b65e5ed13 Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Sat, 27 Jan 2024 11:07:43 -0700 -Subject: powerpc: xor_vmx: Add '-mhard-float' to CFLAGS - -arch/powerpc/lib/xor_vmx.o is built with '-msoft-float' (from the main -powerpc Makefile) and '-maltivec' (from its CFLAGS), which causes an -error when building with clang after a recent change in main: - - error: option '-msoft-float' cannot be specified with '-maltivec' - make[6]: *** [scripts/Makefile.build:243: arch/powerpc/lib/xor_vmx.o] Error 1 - -Explicitly add '-mhard-float' before '-maltivec' in xor_vmx.o's CFLAGS -to override the previous inclusion of '-msoft-float' (as the last option -wins), which matches how other areas of the kernel use '-maltivec', such -as AMDGPU. - -Cc: stable@vger.kernel.org -Closes: https://github.com/ClangBuiltLinux/linux/issues/1986 -Link: https://github.com/llvm/llvm-project/commit/4792f912b232141ecba4cbae538873be3c28556c -Signed-off-by: Nathan Chancellor -Signed-off-by: Michael Ellerman -Link: https://msgid.link/20240127-ppc-xor_vmx-drop-msoft-float-v1-1-f24140e81376@kernel.org ---- -Link: https://git.kernel.org/powerpc/c/35f20786c481d5ced9283ff42de5c69b65e5ed13 ---- - arch/powerpc/lib/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile -index 6eac63e79a8995..0ab65eeb93ee3a 100644 ---- a/arch/powerpc/lib/Makefile -+++ b/arch/powerpc/lib/Makefile -@@ -76,7 +76,7 @@ obj-$(CONFIG_PPC_LIB_RHEAP) += rheap.o - obj-$(CONFIG_FTR_FIXUP_SELFTEST) += feature-fixups-test.o - - obj-$(CONFIG_ALTIVEC) += xor_vmx.o xor_vmx_glue.o --CFLAGS_xor_vmx.o += -maltivec $(call cc-option,-mabi=altivec) -+CFLAGS_xor_vmx.o += -mhard-float -maltivec $(call cc-option,-mabi=altivec) - # Enable - CFLAGS_xor_vmx.o += -isystem $(shell $(CC) -print-file-name=include) - --- -cgit 1.2.3-korg - diff --git a/patches/stable/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch b/patches/stable/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch deleted file mode 100644 index 7fc750f8..00000000 --- a/patches/stable/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 75b5ab134bb5f657ef7979a59106dce0657e8d87 Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Tue, 5 Mar 2024 15:12:47 -0700 -Subject: kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1 - -Clang enables -Wenum-enum-conversion and -Wenum-compare-conditional -under -Wenum-conversion. A recent change in Clang strengthened these -warnings and they appear frequently in common builds, primarily due to -several instances in common headers but there are quite a few drivers -that have individual instances as well. - - include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] - 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + - | ~~~~~~~~~~~~~~~~~~~~~ ^ - 509 | item]; - | ~~~~ - - drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:955:24: warning: conditional expression between different enumeration types ('enum iwl_mac_beacon_flags' and 'enum iwl_mac_beacon_flags_v1') [-Wenum-compare-conditional] - 955 | flags |= is_new_rate ? IWL_MAC_BEACON_CCK - | ^ ~~~~~~~~~~~~~~~~~~ - 956 | : IWL_MAC_BEACON_CCK_V1; - | ~~~~~~~~~~~~~~~~~~~~~ - drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:1120:21: warning: conditional expression between different enumeration types ('enum iwl_mac_beacon_flags' and 'enum iwl_mac_beacon_flags_v1') [-Wenum-compare-conditional] - 1120 | 0) > 10 ? - | ^ - 1121 | IWL_MAC_BEACON_FILS : - | ~~~~~~~~~~~~~~~~~~~ - 1122 | IWL_MAC_BEACON_FILS_V1; - | ~~~~~~~~~~~~~~~~~~~~~~ - -Doing arithmetic between or returning two different types of enums could -be a bug, so each of the instance of the warning needs to be evaluated. -Unfortunately, as mentioned above, there are many instances of this -warning in many different configurations, which can break the build when -CONFIG_WERROR is enabled. - -To avoid introducing new instances of the warnings while cleaning up the -disruption for the majority of users, disable these warnings for the -default build while leaving them on for W=1 builds. - -Cc: stable@vger.kernel.org -Closes: https://github.com/ClangBuiltLinux/linux/issues/2002 -Link: https://github.com/llvm/llvm-project/commit/8c2ae42b3e1c6aa7c18f873edcebff7c0b45a37e -Acked-by: Yonghong Song -Signed-off-by: Nathan Chancellor -Acked-by: Arnd Bergmann -Signed-off-by: Masahiro Yamada ---- -Link: https://git.kernel.org/masahiroy/linux-kbuild/c/75b5ab134bb5f657ef7979a59106dce0657e8d87 ---- - scripts/Makefile.extrawarn | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn -index a9e552a1e9105b..2f25a1de129d10 100644 ---- a/scripts/Makefile.extrawarn -+++ b/scripts/Makefile.extrawarn -@@ -132,6 +132,8 @@ KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast) - KBUILD_CFLAGS += -Wno-tautological-constant-out-of-range-compare - KBUILD_CFLAGS += $(call cc-disable-warning, unaligned-access) - KBUILD_CFLAGS += $(call cc-disable-warning, cast-function-type-strict) -+KBUILD_CFLAGS += -Wno-enum-compare-conditional -+KBUILD_CFLAGS += -Wno-enum-enum-conversion - endif - - endif --- -cgit 1.2.3-korg - diff --git a/patches/stable/series b/patches/stable/series index bc0e9b6e..fdcfafa0 100644 --- a/patches/stable/series +++ b/patches/stable/series @@ -1,3 +1 @@ -35f20786c481d5ced9283ff42de5c69b65e5ed13.patch -75b5ab134bb5f657ef7979a59106dce0657e8d87.patch v2_20240305_nathan_media_mxl5xx_move_xpt_structures_off_stack.patch From 87582338b241a4aa1b34b588b3fa45a1f165cf8e Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Wed, 3 Apr 2024 15:27:01 -0700 Subject: [PATCH 2/4] patches: Add fix for clang-19 __bad_copy_from() error Link: https://github.com/ClangBuiltLinux/linux/issues/2007 Link: https://git.kernel.org/bluetooth/bluetooth-next/c/7d80e7ebf9e333dc5463a48a914f55caef15f62f Signed-off-by: Nathan Chancellor --- ...e7ebf9e333dc5463a48a914f55caef15f62f.patch | 130 ++++++++++++++++++ patches/6.1/series | 1 + ...e7ebf9e333dc5463a48a914f55caef15f62f.patch | 130 ++++++++++++++++++ patches/6.6/series | 1 + ...e7ebf9e333dc5463a48a914f55caef15f62f.patch | 130 ++++++++++++++++++ patches/mainline/series | 1 + ...e7ebf9e333dc5463a48a914f55caef15f62f.patch | 130 ++++++++++++++++++ patches/stable/series | 1 + ...e7ebf9e333dc5463a48a914f55caef15f62f.patch | 130 ++++++++++++++++++ patches/tip/series | 1 + 10 files changed, 655 insertions(+) create mode 100644 patches/6.1/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch create mode 100644 patches/6.1/series create mode 100644 patches/6.6/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch create mode 100644 patches/mainline/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch create mode 100644 patches/stable/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch create mode 100644 patches/tip/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch create mode 100644 patches/tip/series diff --git a/patches/6.1/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch b/patches/6.1/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch new file mode 100644 index 00000000..dae5625d --- /dev/null +++ b/patches/6.1/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch @@ -0,0 +1,130 @@ +From 7d80e7ebf9e333dc5463a48a914f55caef15f62f Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Mon, 1 Apr 2024 11:24:17 -0700 +Subject: Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old() + +After an innocuous optimization change in LLVM main (19.0.0), x86_64 +allmodconfig (which enables CONFIG_KCSAN / -fsanitize=thread) fails to +build due to the checks in check_copy_size(): + + In file included from net/bluetooth/sco.c:27: + In file included from include/linux/module.h:13: + In file included from include/linux/stat.h:19: + In file included from include/linux/time.h:60: + In file included from include/linux/time32.h:13: + In file included from include/linux/timex.h:67: + In file included from arch/x86/include/asm/timex.h:6: + In file included from arch/x86/include/asm/tsc.h:10: + In file included from arch/x86/include/asm/msr.h:15: + In file included from include/linux/percpu.h:7: + In file included from include/linux/smp.h:118: + include/linux/thread_info.h:244:4: error: call to '__bad_copy_from' + declared with 'error' attribute: copy source size is too small + 244 | __bad_copy_from(); + | ^ + +The same exact error occurs in l2cap_sock.c. The copy_to_user() +statements that are failing come from l2cap_sock_getsockopt_old() and +sco_sock_getsockopt_old(). This does not occur with GCC with or without +KCSAN or Clang without KCSAN enabled. + +len is defined as an 'int' because it is assigned from +'__user int *optlen'. However, it is clamped against the result of +sizeof(), which has a type of 'size_t' ('unsigned long' for 64-bit +platforms). This is done with min_t() because min() requires compatible +types, which results in both len and the result of sizeof() being casted +to 'unsigned int', meaning len changes signs and the result of sizeof() +is truncated. From there, len is passed to copy_to_user(), which has a +third parameter type of 'unsigned long', so it is widened and changes +signs again. This excessive casting in combination with the KCSAN +instrumentation causes LLVM to fail to eliminate the __bad_copy_from() +call, failing the build. + +The official recommendation from LLVM developers is to consistently use +long types for all size variables to avoid the unnecessary casting in +the first place. Change the type of len to size_t in both +l2cap_sock_getsockopt_old() and sco_sock_getsockopt_old(). This clears +up the error while allowing min_t() to be replaced with min(), resulting +in simpler code with no casts and fewer implicit conversions. While len +is a different type than optlen now, it should result in no functional +change because the result of sizeof() will clamp all values of optlen in +the same manner as before. + +Cc: stable@vger.kernel.org +Closes: https://github.com/ClangBuiltLinux/linux/issues/2007 +Link: https://github.com/llvm/llvm-project/issues/85647 +Signed-off-by: Nathan Chancellor +Reviewed-by: Justin Stitt +Signed-off-by: Luiz Augusto von Dentz +--- + net/bluetooth/l2cap_sock.c | 7 ++++--- + net/bluetooth/sco.c | 7 ++++--- + 2 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c +index 9a9f933a748b8..7846a068bf60b 100644 +--- a/net/bluetooth/l2cap_sock.c ++++ b/net/bluetooth/l2cap_sock.c +@@ -439,7 +439,8 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + struct l2cap_chan *chan = l2cap_pi(sk)->chan; + struct l2cap_options opts; + struct l2cap_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + u32 opt; + + BT_DBG("sk %p", sk); +@@ -486,7 +487,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mode 0x%2.2x", chan->mode); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *) &opts, len)) + err = -EFAULT; + +@@ -536,7 +537,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = chan->conn->hcon->handle; + memcpy(cinfo.dev_class, chan->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *) &cinfo, len)) + err = -EFAULT; + +diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c +index b3c2af7c7d678..99c2b713d8268 100644 +--- a/net/bluetooth/sco.c ++++ b/net/bluetooth/sco.c +@@ -982,7 +982,8 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + struct sock *sk = sock->sk; + struct sco_options opts; + struct sco_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + + BT_DBG("sk %p", sk); + +@@ -1004,7 +1005,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mtu %u", opts.mtu); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *)&opts, len)) + err = -EFAULT; + +@@ -1022,7 +1023,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = sco_pi(sk)->conn->hcon->handle; + memcpy(cinfo.dev_class, sco_pi(sk)->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *)&cinfo, len)) + err = -EFAULT; + +-- +cgit 1.2.3-korg + diff --git a/patches/6.1/series b/patches/6.1/series new file mode 100644 index 00000000..135d0238 --- /dev/null +++ b/patches/6.1/series @@ -0,0 +1 @@ +7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch diff --git a/patches/6.6/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch b/patches/6.6/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch new file mode 100644 index 00000000..dae5625d --- /dev/null +++ b/patches/6.6/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch @@ -0,0 +1,130 @@ +From 7d80e7ebf9e333dc5463a48a914f55caef15f62f Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Mon, 1 Apr 2024 11:24:17 -0700 +Subject: Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old() + +After an innocuous optimization change in LLVM main (19.0.0), x86_64 +allmodconfig (which enables CONFIG_KCSAN / -fsanitize=thread) fails to +build due to the checks in check_copy_size(): + + In file included from net/bluetooth/sco.c:27: + In file included from include/linux/module.h:13: + In file included from include/linux/stat.h:19: + In file included from include/linux/time.h:60: + In file included from include/linux/time32.h:13: + In file included from include/linux/timex.h:67: + In file included from arch/x86/include/asm/timex.h:6: + In file included from arch/x86/include/asm/tsc.h:10: + In file included from arch/x86/include/asm/msr.h:15: + In file included from include/linux/percpu.h:7: + In file included from include/linux/smp.h:118: + include/linux/thread_info.h:244:4: error: call to '__bad_copy_from' + declared with 'error' attribute: copy source size is too small + 244 | __bad_copy_from(); + | ^ + +The same exact error occurs in l2cap_sock.c. The copy_to_user() +statements that are failing come from l2cap_sock_getsockopt_old() and +sco_sock_getsockopt_old(). This does not occur with GCC with or without +KCSAN or Clang without KCSAN enabled. + +len is defined as an 'int' because it is assigned from +'__user int *optlen'. However, it is clamped against the result of +sizeof(), which has a type of 'size_t' ('unsigned long' for 64-bit +platforms). This is done with min_t() because min() requires compatible +types, which results in both len and the result of sizeof() being casted +to 'unsigned int', meaning len changes signs and the result of sizeof() +is truncated. From there, len is passed to copy_to_user(), which has a +third parameter type of 'unsigned long', so it is widened and changes +signs again. This excessive casting in combination with the KCSAN +instrumentation causes LLVM to fail to eliminate the __bad_copy_from() +call, failing the build. + +The official recommendation from LLVM developers is to consistently use +long types for all size variables to avoid the unnecessary casting in +the first place. Change the type of len to size_t in both +l2cap_sock_getsockopt_old() and sco_sock_getsockopt_old(). This clears +up the error while allowing min_t() to be replaced with min(), resulting +in simpler code with no casts and fewer implicit conversions. While len +is a different type than optlen now, it should result in no functional +change because the result of sizeof() will clamp all values of optlen in +the same manner as before. + +Cc: stable@vger.kernel.org +Closes: https://github.com/ClangBuiltLinux/linux/issues/2007 +Link: https://github.com/llvm/llvm-project/issues/85647 +Signed-off-by: Nathan Chancellor +Reviewed-by: Justin Stitt +Signed-off-by: Luiz Augusto von Dentz +--- + net/bluetooth/l2cap_sock.c | 7 ++++--- + net/bluetooth/sco.c | 7 ++++--- + 2 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c +index 9a9f933a748b8..7846a068bf60b 100644 +--- a/net/bluetooth/l2cap_sock.c ++++ b/net/bluetooth/l2cap_sock.c +@@ -439,7 +439,8 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + struct l2cap_chan *chan = l2cap_pi(sk)->chan; + struct l2cap_options opts; + struct l2cap_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + u32 opt; + + BT_DBG("sk %p", sk); +@@ -486,7 +487,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mode 0x%2.2x", chan->mode); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *) &opts, len)) + err = -EFAULT; + +@@ -536,7 +537,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = chan->conn->hcon->handle; + memcpy(cinfo.dev_class, chan->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *) &cinfo, len)) + err = -EFAULT; + +diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c +index b3c2af7c7d678..99c2b713d8268 100644 +--- a/net/bluetooth/sco.c ++++ b/net/bluetooth/sco.c +@@ -982,7 +982,8 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + struct sock *sk = sock->sk; + struct sco_options opts; + struct sco_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + + BT_DBG("sk %p", sk); + +@@ -1004,7 +1005,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mtu %u", opts.mtu); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *)&opts, len)) + err = -EFAULT; + +@@ -1022,7 +1023,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = sco_pi(sk)->conn->hcon->handle; + memcpy(cinfo.dev_class, sco_pi(sk)->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *)&cinfo, len)) + err = -EFAULT; + +-- +cgit 1.2.3-korg + diff --git a/patches/6.6/series b/patches/6.6/series index fdcfafa0..b2a1166d 100644 --- a/patches/6.6/series +++ b/patches/6.6/series @@ -1 +1,2 @@ +7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch v2_20240305_nathan_media_mxl5xx_move_xpt_structures_off_stack.patch diff --git a/patches/mainline/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch b/patches/mainline/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch new file mode 100644 index 00000000..dae5625d --- /dev/null +++ b/patches/mainline/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch @@ -0,0 +1,130 @@ +From 7d80e7ebf9e333dc5463a48a914f55caef15f62f Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Mon, 1 Apr 2024 11:24:17 -0700 +Subject: Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old() + +After an innocuous optimization change in LLVM main (19.0.0), x86_64 +allmodconfig (which enables CONFIG_KCSAN / -fsanitize=thread) fails to +build due to the checks in check_copy_size(): + + In file included from net/bluetooth/sco.c:27: + In file included from include/linux/module.h:13: + In file included from include/linux/stat.h:19: + In file included from include/linux/time.h:60: + In file included from include/linux/time32.h:13: + In file included from include/linux/timex.h:67: + In file included from arch/x86/include/asm/timex.h:6: + In file included from arch/x86/include/asm/tsc.h:10: + In file included from arch/x86/include/asm/msr.h:15: + In file included from include/linux/percpu.h:7: + In file included from include/linux/smp.h:118: + include/linux/thread_info.h:244:4: error: call to '__bad_copy_from' + declared with 'error' attribute: copy source size is too small + 244 | __bad_copy_from(); + | ^ + +The same exact error occurs in l2cap_sock.c. The copy_to_user() +statements that are failing come from l2cap_sock_getsockopt_old() and +sco_sock_getsockopt_old(). This does not occur with GCC with or without +KCSAN or Clang without KCSAN enabled. + +len is defined as an 'int' because it is assigned from +'__user int *optlen'. However, it is clamped against the result of +sizeof(), which has a type of 'size_t' ('unsigned long' for 64-bit +platforms). This is done with min_t() because min() requires compatible +types, which results in both len and the result of sizeof() being casted +to 'unsigned int', meaning len changes signs and the result of sizeof() +is truncated. From there, len is passed to copy_to_user(), which has a +third parameter type of 'unsigned long', so it is widened and changes +signs again. This excessive casting in combination with the KCSAN +instrumentation causes LLVM to fail to eliminate the __bad_copy_from() +call, failing the build. + +The official recommendation from LLVM developers is to consistently use +long types for all size variables to avoid the unnecessary casting in +the first place. Change the type of len to size_t in both +l2cap_sock_getsockopt_old() and sco_sock_getsockopt_old(). This clears +up the error while allowing min_t() to be replaced with min(), resulting +in simpler code with no casts and fewer implicit conversions. While len +is a different type than optlen now, it should result in no functional +change because the result of sizeof() will clamp all values of optlen in +the same manner as before. + +Cc: stable@vger.kernel.org +Closes: https://github.com/ClangBuiltLinux/linux/issues/2007 +Link: https://github.com/llvm/llvm-project/issues/85647 +Signed-off-by: Nathan Chancellor +Reviewed-by: Justin Stitt +Signed-off-by: Luiz Augusto von Dentz +--- + net/bluetooth/l2cap_sock.c | 7 ++++--- + net/bluetooth/sco.c | 7 ++++--- + 2 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c +index 9a9f933a748b8..7846a068bf60b 100644 +--- a/net/bluetooth/l2cap_sock.c ++++ b/net/bluetooth/l2cap_sock.c +@@ -439,7 +439,8 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + struct l2cap_chan *chan = l2cap_pi(sk)->chan; + struct l2cap_options opts; + struct l2cap_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + u32 opt; + + BT_DBG("sk %p", sk); +@@ -486,7 +487,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mode 0x%2.2x", chan->mode); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *) &opts, len)) + err = -EFAULT; + +@@ -536,7 +537,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = chan->conn->hcon->handle; + memcpy(cinfo.dev_class, chan->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *) &cinfo, len)) + err = -EFAULT; + +diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c +index b3c2af7c7d678..99c2b713d8268 100644 +--- a/net/bluetooth/sco.c ++++ b/net/bluetooth/sco.c +@@ -982,7 +982,8 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + struct sock *sk = sock->sk; + struct sco_options opts; + struct sco_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + + BT_DBG("sk %p", sk); + +@@ -1004,7 +1005,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mtu %u", opts.mtu); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *)&opts, len)) + err = -EFAULT; + +@@ -1022,7 +1023,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = sco_pi(sk)->conn->hcon->handle; + memcpy(cinfo.dev_class, sco_pi(sk)->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *)&cinfo, len)) + err = -EFAULT; + +-- +cgit 1.2.3-korg + diff --git a/patches/mainline/series b/patches/mainline/series index fdcfafa0..b2a1166d 100644 --- a/patches/mainline/series +++ b/patches/mainline/series @@ -1 +1,2 @@ +7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch v2_20240305_nathan_media_mxl5xx_move_xpt_structures_off_stack.patch diff --git a/patches/stable/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch b/patches/stable/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch new file mode 100644 index 00000000..dae5625d --- /dev/null +++ b/patches/stable/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch @@ -0,0 +1,130 @@ +From 7d80e7ebf9e333dc5463a48a914f55caef15f62f Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Mon, 1 Apr 2024 11:24:17 -0700 +Subject: Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old() + +After an innocuous optimization change in LLVM main (19.0.0), x86_64 +allmodconfig (which enables CONFIG_KCSAN / -fsanitize=thread) fails to +build due to the checks in check_copy_size(): + + In file included from net/bluetooth/sco.c:27: + In file included from include/linux/module.h:13: + In file included from include/linux/stat.h:19: + In file included from include/linux/time.h:60: + In file included from include/linux/time32.h:13: + In file included from include/linux/timex.h:67: + In file included from arch/x86/include/asm/timex.h:6: + In file included from arch/x86/include/asm/tsc.h:10: + In file included from arch/x86/include/asm/msr.h:15: + In file included from include/linux/percpu.h:7: + In file included from include/linux/smp.h:118: + include/linux/thread_info.h:244:4: error: call to '__bad_copy_from' + declared with 'error' attribute: copy source size is too small + 244 | __bad_copy_from(); + | ^ + +The same exact error occurs in l2cap_sock.c. The copy_to_user() +statements that are failing come from l2cap_sock_getsockopt_old() and +sco_sock_getsockopt_old(). This does not occur with GCC with or without +KCSAN or Clang without KCSAN enabled. + +len is defined as an 'int' because it is assigned from +'__user int *optlen'. However, it is clamped against the result of +sizeof(), which has a type of 'size_t' ('unsigned long' for 64-bit +platforms). This is done with min_t() because min() requires compatible +types, which results in both len and the result of sizeof() being casted +to 'unsigned int', meaning len changes signs and the result of sizeof() +is truncated. From there, len is passed to copy_to_user(), which has a +third parameter type of 'unsigned long', so it is widened and changes +signs again. This excessive casting in combination with the KCSAN +instrumentation causes LLVM to fail to eliminate the __bad_copy_from() +call, failing the build. + +The official recommendation from LLVM developers is to consistently use +long types for all size variables to avoid the unnecessary casting in +the first place. Change the type of len to size_t in both +l2cap_sock_getsockopt_old() and sco_sock_getsockopt_old(). This clears +up the error while allowing min_t() to be replaced with min(), resulting +in simpler code with no casts and fewer implicit conversions. While len +is a different type than optlen now, it should result in no functional +change because the result of sizeof() will clamp all values of optlen in +the same manner as before. + +Cc: stable@vger.kernel.org +Closes: https://github.com/ClangBuiltLinux/linux/issues/2007 +Link: https://github.com/llvm/llvm-project/issues/85647 +Signed-off-by: Nathan Chancellor +Reviewed-by: Justin Stitt +Signed-off-by: Luiz Augusto von Dentz +--- + net/bluetooth/l2cap_sock.c | 7 ++++--- + net/bluetooth/sco.c | 7 ++++--- + 2 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c +index 9a9f933a748b8..7846a068bf60b 100644 +--- a/net/bluetooth/l2cap_sock.c ++++ b/net/bluetooth/l2cap_sock.c +@@ -439,7 +439,8 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + struct l2cap_chan *chan = l2cap_pi(sk)->chan; + struct l2cap_options opts; + struct l2cap_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + u32 opt; + + BT_DBG("sk %p", sk); +@@ -486,7 +487,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mode 0x%2.2x", chan->mode); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *) &opts, len)) + err = -EFAULT; + +@@ -536,7 +537,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = chan->conn->hcon->handle; + memcpy(cinfo.dev_class, chan->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *) &cinfo, len)) + err = -EFAULT; + +diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c +index b3c2af7c7d678..99c2b713d8268 100644 +--- a/net/bluetooth/sco.c ++++ b/net/bluetooth/sco.c +@@ -982,7 +982,8 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + struct sock *sk = sock->sk; + struct sco_options opts; + struct sco_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + + BT_DBG("sk %p", sk); + +@@ -1004,7 +1005,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mtu %u", opts.mtu); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *)&opts, len)) + err = -EFAULT; + +@@ -1022,7 +1023,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = sco_pi(sk)->conn->hcon->handle; + memcpy(cinfo.dev_class, sco_pi(sk)->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *)&cinfo, len)) + err = -EFAULT; + +-- +cgit 1.2.3-korg + diff --git a/patches/stable/series b/patches/stable/series index fdcfafa0..b2a1166d 100644 --- a/patches/stable/series +++ b/patches/stable/series @@ -1 +1,2 @@ +7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch v2_20240305_nathan_media_mxl5xx_move_xpt_structures_off_stack.patch diff --git a/patches/tip/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch b/patches/tip/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch new file mode 100644 index 00000000..dae5625d --- /dev/null +++ b/patches/tip/7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch @@ -0,0 +1,130 @@ +From 7d80e7ebf9e333dc5463a48a914f55caef15f62f Mon Sep 17 00:00:00 2001 +From: Nathan Chancellor +Date: Mon, 1 Apr 2024 11:24:17 -0700 +Subject: Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old() + +After an innocuous optimization change in LLVM main (19.0.0), x86_64 +allmodconfig (which enables CONFIG_KCSAN / -fsanitize=thread) fails to +build due to the checks in check_copy_size(): + + In file included from net/bluetooth/sco.c:27: + In file included from include/linux/module.h:13: + In file included from include/linux/stat.h:19: + In file included from include/linux/time.h:60: + In file included from include/linux/time32.h:13: + In file included from include/linux/timex.h:67: + In file included from arch/x86/include/asm/timex.h:6: + In file included from arch/x86/include/asm/tsc.h:10: + In file included from arch/x86/include/asm/msr.h:15: + In file included from include/linux/percpu.h:7: + In file included from include/linux/smp.h:118: + include/linux/thread_info.h:244:4: error: call to '__bad_copy_from' + declared with 'error' attribute: copy source size is too small + 244 | __bad_copy_from(); + | ^ + +The same exact error occurs in l2cap_sock.c. The copy_to_user() +statements that are failing come from l2cap_sock_getsockopt_old() and +sco_sock_getsockopt_old(). This does not occur with GCC with or without +KCSAN or Clang without KCSAN enabled. + +len is defined as an 'int' because it is assigned from +'__user int *optlen'. However, it is clamped against the result of +sizeof(), which has a type of 'size_t' ('unsigned long' for 64-bit +platforms). This is done with min_t() because min() requires compatible +types, which results in both len and the result of sizeof() being casted +to 'unsigned int', meaning len changes signs and the result of sizeof() +is truncated. From there, len is passed to copy_to_user(), which has a +third parameter type of 'unsigned long', so it is widened and changes +signs again. This excessive casting in combination with the KCSAN +instrumentation causes LLVM to fail to eliminate the __bad_copy_from() +call, failing the build. + +The official recommendation from LLVM developers is to consistently use +long types for all size variables to avoid the unnecessary casting in +the first place. Change the type of len to size_t in both +l2cap_sock_getsockopt_old() and sco_sock_getsockopt_old(). This clears +up the error while allowing min_t() to be replaced with min(), resulting +in simpler code with no casts and fewer implicit conversions. While len +is a different type than optlen now, it should result in no functional +change because the result of sizeof() will clamp all values of optlen in +the same manner as before. + +Cc: stable@vger.kernel.org +Closes: https://github.com/ClangBuiltLinux/linux/issues/2007 +Link: https://github.com/llvm/llvm-project/issues/85647 +Signed-off-by: Nathan Chancellor +Reviewed-by: Justin Stitt +Signed-off-by: Luiz Augusto von Dentz +--- + net/bluetooth/l2cap_sock.c | 7 ++++--- + net/bluetooth/sco.c | 7 ++++--- + 2 files changed, 8 insertions(+), 6 deletions(-) + +diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c +index 9a9f933a748b8..7846a068bf60b 100644 +--- a/net/bluetooth/l2cap_sock.c ++++ b/net/bluetooth/l2cap_sock.c +@@ -439,7 +439,8 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + struct l2cap_chan *chan = l2cap_pi(sk)->chan; + struct l2cap_options opts; + struct l2cap_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + u32 opt; + + BT_DBG("sk %p", sk); +@@ -486,7 +487,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mode 0x%2.2x", chan->mode); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *) &opts, len)) + err = -EFAULT; + +@@ -536,7 +537,7 @@ static int l2cap_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = chan->conn->hcon->handle; + memcpy(cinfo.dev_class, chan->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *) &cinfo, len)) + err = -EFAULT; + +diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c +index b3c2af7c7d678..99c2b713d8268 100644 +--- a/net/bluetooth/sco.c ++++ b/net/bluetooth/sco.c +@@ -982,7 +982,8 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + struct sock *sk = sock->sk; + struct sco_options opts; + struct sco_conninfo cinfo; +- int len, err = 0; ++ int err = 0; ++ size_t len; + + BT_DBG("sk %p", sk); + +@@ -1004,7 +1005,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + + BT_DBG("mtu %u", opts.mtu); + +- len = min_t(unsigned int, len, sizeof(opts)); ++ len = min(len, sizeof(opts)); + if (copy_to_user(optval, (char *)&opts, len)) + err = -EFAULT; + +@@ -1022,7 +1023,7 @@ static int sco_sock_getsockopt_old(struct socket *sock, int optname, + cinfo.hci_handle = sco_pi(sk)->conn->hcon->handle; + memcpy(cinfo.dev_class, sco_pi(sk)->conn->hcon->dev_class, 3); + +- len = min_t(unsigned int, len, sizeof(cinfo)); ++ len = min(len, sizeof(cinfo)); + if (copy_to_user(optval, (char *)&cinfo, len)) + err = -EFAULT; + +-- +cgit 1.2.3-korg + diff --git a/patches/tip/series b/patches/tip/series new file mode 100644 index 00000000..135d0238 --- /dev/null +++ b/patches/tip/series @@ -0,0 +1 @@ +7d80e7ebf9e333dc5463a48a914f55caef15f62f.patch From a47428eb87f418e59f594bcde4dae4074d1a0390 Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Thu, 4 Apr 2024 09:15:19 -0700 Subject: [PATCH 3/4] patches: Drop chromeos-6.6 This is now available in chromeos-6.6 via the 6.6.24 merge: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/298d316c45aa2a6c0dbc27a37546437981db6c12 Signed-off-by: Nathan Chancellor --- ...ab134bb5f657ef7979a59106dce0657e8d87.patch | 69 ------------------- patches/chromeos-6.6/series | 1 - 2 files changed, 70 deletions(-) delete mode 100644 patches/chromeos-6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch delete mode 100644 patches/chromeos-6.6/series diff --git a/patches/chromeos-6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch b/patches/chromeos-6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch deleted file mode 100644 index 7fc750f8..00000000 --- a/patches/chromeos-6.6/75b5ab134bb5f657ef7979a59106dce0657e8d87.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 75b5ab134bb5f657ef7979a59106dce0657e8d87 Mon Sep 17 00:00:00 2001 -From: Nathan Chancellor -Date: Tue, 5 Mar 2024 15:12:47 -0700 -Subject: kbuild: Move -Wenum-{compare-conditional,enum-conversion} into W=1 - -Clang enables -Wenum-enum-conversion and -Wenum-compare-conditional -under -Wenum-conversion. A recent change in Clang strengthened these -warnings and they appear frequently in common builds, primarily due to -several instances in common headers but there are quite a few drivers -that have individual instances as well. - - include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] - 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + - | ~~~~~~~~~~~~~~~~~~~~~ ^ - 509 | item]; - | ~~~~ - - drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:955:24: warning: conditional expression between different enumeration types ('enum iwl_mac_beacon_flags' and 'enum iwl_mac_beacon_flags_v1') [-Wenum-compare-conditional] - 955 | flags |= is_new_rate ? IWL_MAC_BEACON_CCK - | ^ ~~~~~~~~~~~~~~~~~~ - 956 | : IWL_MAC_BEACON_CCK_V1; - | ~~~~~~~~~~~~~~~~~~~~~ - drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c:1120:21: warning: conditional expression between different enumeration types ('enum iwl_mac_beacon_flags' and 'enum iwl_mac_beacon_flags_v1') [-Wenum-compare-conditional] - 1120 | 0) > 10 ? - | ^ - 1121 | IWL_MAC_BEACON_FILS : - | ~~~~~~~~~~~~~~~~~~~ - 1122 | IWL_MAC_BEACON_FILS_V1; - | ~~~~~~~~~~~~~~~~~~~~~~ - -Doing arithmetic between or returning two different types of enums could -be a bug, so each of the instance of the warning needs to be evaluated. -Unfortunately, as mentioned above, there are many instances of this -warning in many different configurations, which can break the build when -CONFIG_WERROR is enabled. - -To avoid introducing new instances of the warnings while cleaning up the -disruption for the majority of users, disable these warnings for the -default build while leaving them on for W=1 builds. - -Cc: stable@vger.kernel.org -Closes: https://github.com/ClangBuiltLinux/linux/issues/2002 -Link: https://github.com/llvm/llvm-project/commit/8c2ae42b3e1c6aa7c18f873edcebff7c0b45a37e -Acked-by: Yonghong Song -Signed-off-by: Nathan Chancellor -Acked-by: Arnd Bergmann -Signed-off-by: Masahiro Yamada ---- -Link: https://git.kernel.org/masahiroy/linux-kbuild/c/75b5ab134bb5f657ef7979a59106dce0657e8d87 ---- - scripts/Makefile.extrawarn | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn -index a9e552a1e9105b..2f25a1de129d10 100644 ---- a/scripts/Makefile.extrawarn -+++ b/scripts/Makefile.extrawarn -@@ -132,6 +132,8 @@ KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast) - KBUILD_CFLAGS += -Wno-tautological-constant-out-of-range-compare - KBUILD_CFLAGS += $(call cc-disable-warning, unaligned-access) - KBUILD_CFLAGS += $(call cc-disable-warning, cast-function-type-strict) -+KBUILD_CFLAGS += -Wno-enum-compare-conditional -+KBUILD_CFLAGS += -Wno-enum-enum-conversion - endif - - endif --- -cgit 1.2.3-korg - diff --git a/patches/chromeos-6.6/series b/patches/chromeos-6.6/series deleted file mode 100644 index eba20a8f..00000000 --- a/patches/chromeos-6.6/series +++ /dev/null @@ -1 +0,0 @@ -75b5ab134bb5f657ef7979a59106dce0657e8d87.patch From 61edf5e1996638a6e83048432159ad3230479ce6 Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Wed, 3 Apr 2024 14:31:45 -0700 Subject: [PATCH 4/4] ci: Regenerate GitHub Actions workflow and TuxSuite files Signed-off-by: Nathan Chancellor --- .github/workflows/chromeos-6.6-clang-12.yml | 2 +- .github/workflows/chromeos-6.6-clang-13.yml | 2 +- .github/workflows/chromeos-6.6-clang-14.yml | 2 +- .github/workflows/chromeos-6.6-clang-15.yml | 2 +- .github/workflows/chromeos-6.6-clang-16.yml | 2 +- .github/workflows/chromeos-6.6-clang-17.yml | 2 +- .github/workflows/chromeos-6.6-clang-18.yml | 2 +- .github/workflows/chromeos-6.6-clang-19.yml | 2 +- .github/workflows/tip-clang-12.yml | 4 ++-- .github/workflows/tip-clang-13.yml | 4 ++-- .github/workflows/tip-clang-14.yml | 4 ++-- .github/workflows/tip-clang-15.yml | 4 ++-- .github/workflows/tip-clang-16.yml | 4 ++-- .github/workflows/tip-clang-17.yml | 4 ++-- .github/workflows/tip-clang-18.yml | 4 ++-- .github/workflows/tip-clang-19.yml | 4 ++-- tuxsuite/chromeos-6.6-clang-12.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-13.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-14.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-15.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-16.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-17.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-18.tux.yml | 3 +-- tuxsuite/chromeos-6.6-clang-19.tux.yml | 3 +-- tuxsuite/tip-clang-12.tux.yml | 3 ++- tuxsuite/tip-clang-13.tux.yml | 3 ++- tuxsuite/tip-clang-14.tux.yml | 3 ++- tuxsuite/tip-clang-15.tux.yml | 3 ++- tuxsuite/tip-clang-16.tux.yml | 3 ++- tuxsuite/tip-clang-17.tux.yml | 3 ++- tuxsuite/tip-clang-18.tux.yml | 3 ++- tuxsuite/tip-clang-19.tux.yml | 3 ++- 32 files changed, 48 insertions(+), 48 deletions(-) diff --git a/.github/workflows/chromeos-6.6-clang-12.yml b/.github/workflows/chromeos-6.6-clang-12.yml index ee8042d5..94a4a1ec 100644 --- a/.github/workflows/chromeos-6.6-clang-12.yml +++ b/.github/workflows/chromeos-6.6-clang-12.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-12.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-12.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-13.yml b/.github/workflows/chromeos-6.6-clang-13.yml index e150f525..e4b437ee 100644 --- a/.github/workflows/chromeos-6.6-clang-13.yml +++ b/.github/workflows/chromeos-6.6-clang-13.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-13.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-13.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-14.yml b/.github/workflows/chromeos-6.6-clang-14.yml index 46ae28bc..06f766ae 100644 --- a/.github/workflows/chromeos-6.6-clang-14.yml +++ b/.github/workflows/chromeos-6.6-clang-14.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-14.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-14.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-15.yml b/.github/workflows/chromeos-6.6-clang-15.yml index ff03976e..21e6358c 100644 --- a/.github/workflows/chromeos-6.6-clang-15.yml +++ b/.github/workflows/chromeos-6.6-clang-15.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-15.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-15.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-16.yml b/.github/workflows/chromeos-6.6-clang-16.yml index 2ff4f5f1..bcab9a84 100644 --- a/.github/workflows/chromeos-6.6-clang-16.yml +++ b/.github/workflows/chromeos-6.6-clang-16.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-16.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-16.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-17.yml b/.github/workflows/chromeos-6.6-clang-17.yml index 0065af83..c7ad7be7 100644 --- a/.github/workflows/chromeos-6.6-clang-17.yml +++ b/.github/workflows/chromeos-6.6-clang-17.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-17.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-17.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-18.yml b/.github/workflows/chromeos-6.6-clang-18.yml index f358beb1..1ae36dbb 100644 --- a/.github/workflows/chromeos-6.6-clang-18.yml +++ b/.github/workflows/chromeos-6.6-clang-18.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-18.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-18.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/chromeos-6.6-clang-19.yml b/.github/workflows/chromeos-6.6-clang-19.yml index c376164b..9fab680f 100644 --- a/.github/workflows/chromeos-6.6-clang-19.yml +++ b/.github/workflows/chromeos-6.6-clang-19.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-19.tux.yml || true + run: tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-19.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-12.yml b/.github/workflows/tip-clang-12.yml index cc54dd29..9919d38d 100644 --- a/.github/workflows/tip-clang-12.yml +++ b/.github/workflows/tip-clang-12.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-12.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-12.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-12.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-12.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-13.yml b/.github/workflows/tip-clang-13.yml index 162cdd98..618a01b3 100644 --- a/.github/workflows/tip-clang-13.yml +++ b/.github/workflows/tip-clang-13.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-13.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-13.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-13.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-13.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-14.yml b/.github/workflows/tip-clang-14.yml index a71fbcd3..bedfc358 100644 --- a/.github/workflows/tip-clang-14.yml +++ b/.github/workflows/tip-clang-14.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-14.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-14.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-14.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-14.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-15.yml b/.github/workflows/tip-clang-15.yml index 46e82a4b..121ff185 100644 --- a/.github/workflows/tip-clang-15.yml +++ b/.github/workflows/tip-clang-15.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-15.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-15.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-15.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-15.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-16.yml b/.github/workflows/tip-clang-16.yml index f3f42bde..9374be46 100644 --- a/.github/workflows/tip-clang-16.yml +++ b/.github/workflows/tip-clang-16.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-16.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-16.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-16.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-16.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-17.yml b/.github/workflows/tip-clang-17.yml index 32004cf0..67c1547d 100644 --- a/.github/workflows/tip-clang-17.yml +++ b/.github/workflows/tip-clang-17.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-17.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-17.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-17.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-17.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-18.yml b/.github/workflows/tip-clang-18.yml index eca124fb..f85800b5 100644 --- a/.github/workflows/tip-clang-18.yml +++ b/.github/workflows/tip-clang-18.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-18.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-18.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-18.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-18.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/.github/workflows/tip-clang-19.yml b/.github/workflows/tip-clang-19.yml index 9211320d..9761bae4 100644 --- a/.github/workflows/tip-clang-19.yml +++ b/.github/workflows/tip-clang-19.yml @@ -57,7 +57,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-19.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-19.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py @@ -154,7 +154,7 @@ jobs: if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - name: tuxsuite if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} - run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json tuxsuite/tip-clang-19.tux.yml || true + run: tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name allconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-19.tux.yml || true - name: Update Cache Build Status if: ${{ needs.check_cache.outputs.output == 'failure' || github.event_name == 'workflow_dispatch' }} run: python caching/update.py diff --git a/tuxsuite/chromeos-6.6-clang-12.tux.yml b/tuxsuite/chromeos-6.6-clang-12.tux.yml index f1100c19..4e24ab0f 100644 --- a/tuxsuite/chromeos-6.6-clang-12.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-12.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-12.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-12.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-12.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-13.tux.yml b/tuxsuite/chromeos-6.6-clang-13.tux.yml index e0cabf85..984b34de 100644 --- a/tuxsuite/chromeos-6.6-clang-13.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-13.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-13.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-13.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-13.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-14.tux.yml b/tuxsuite/chromeos-6.6-clang-14.tux.yml index 2dbacbc1..b7817407 100644 --- a/tuxsuite/chromeos-6.6-clang-14.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-14.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-14.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-14.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-14.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-15.tux.yml b/tuxsuite/chromeos-6.6-clang-15.tux.yml index 1ae9524f..4306b8e5 100644 --- a/tuxsuite/chromeos-6.6-clang-15.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-15.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-15.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-15.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-15.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-16.tux.yml b/tuxsuite/chromeos-6.6-clang-16.tux.yml index 4faf4e7c..1f16910e 100644 --- a/tuxsuite/chromeos-6.6-clang-16.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-16.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-16.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-16.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-16.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-17.tux.yml b/tuxsuite/chromeos-6.6-clang-17.tux.yml index b048d8e0..7737c146 100644 --- a/tuxsuite/chromeos-6.6-clang-17.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-17.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-17.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-17.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-17.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-18.tux.yml b/tuxsuite/chromeos-6.6-clang-18.tux.yml index 1489afd2..35998fdf 100644 --- a/tuxsuite/chromeos-6.6-clang-18.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-18.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-18.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-18.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-18.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/chromeos-6.6-clang-19.tux.yml b/tuxsuite/chromeos-6.6-clang-19.tux.yml index 7be05d8e..7f3c4fa0 100644 --- a/tuxsuite/chromeos-6.6-clang-19.tux.yml +++ b/tuxsuite/chromeos-6.6-clang-19.tux.yml @@ -2,10 +2,9 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py chromeos-6.6 # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json --patch-series patches/chromeos-6.6 tuxsuite/chromeos-6.6-clang-19.tux.yml +# $ tuxsuite plan --git-repo https://chromium.googlesource.com/chromiumos/third_party/kernel.git --git-ref chromeos-6.6 --job-name defconfigs --json-out builds.json tuxsuite/chromeos-6.6-clang-19.tux.yml # Invoke locally via: # $ git clone -b chromeos-6.6 --depth=1 https://chromium.googlesource.com/chromiumos/third_party/kernel.git linux -# $ git -C linux quiltimport --patches ../patches/chromeos-6.6 # $ scripts/build-local.py -C linux -f tuxsuite/chromeos-6.6-clang-19.tux.yml -j defconfigs version: 1 name: https://chromium.googlesource.com/chromiumos/third_party/kernel.git at chromeos-6.6 diff --git a/tuxsuite/tip-clang-12.tux.yml b/tuxsuite/tip-clang-12.tux.yml index 17360ebe..53b443e4 100644 --- a/tuxsuite/tip-clang-12.tux.yml +++ b/tuxsuite/tip-clang-12.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-12.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-12.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-12.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-13.tux.yml b/tuxsuite/tip-clang-13.tux.yml index 33f43ccd..7131ef58 100644 --- a/tuxsuite/tip-clang-13.tux.yml +++ b/tuxsuite/tip-clang-13.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-13.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-13.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-13.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-14.tux.yml b/tuxsuite/tip-clang-14.tux.yml index 13e5cf66..7c55fcfe 100644 --- a/tuxsuite/tip-clang-14.tux.yml +++ b/tuxsuite/tip-clang-14.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-14.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-14.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-14.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-15.tux.yml b/tuxsuite/tip-clang-15.tux.yml index ca45ef2c..900de9b2 100644 --- a/tuxsuite/tip-clang-15.tux.yml +++ b/tuxsuite/tip-clang-15.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-15.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-15.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-15.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-16.tux.yml b/tuxsuite/tip-clang-16.tux.yml index fe8618bc..17e41c7e 100644 --- a/tuxsuite/tip-clang-16.tux.yml +++ b/tuxsuite/tip-clang-16.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-16.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-16.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-16.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-17.tux.yml b/tuxsuite/tip-clang-17.tux.yml index e76d20a9..c274384b 100644 --- a/tuxsuite/tip-clang-17.tux.yml +++ b/tuxsuite/tip-clang-17.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-17.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-17.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-17.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-18.tux.yml b/tuxsuite/tip-clang-18.tux.yml index 74e5905a..e63286ec 100644 --- a/tuxsuite/tip-clang-18.tux.yml +++ b/tuxsuite/tip-clang-18.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-18.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-18.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-18.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master diff --git a/tuxsuite/tip-clang-19.tux.yml b/tuxsuite/tip-clang-19.tux.yml index b39f5df5..406ed8ae 100644 --- a/tuxsuite/tip-clang-19.tux.yml +++ b/tuxsuite/tip-clang-19.tux.yml @@ -2,9 +2,10 @@ # This file has been autogenerated by invoking: # $ ./generate_tuxsuite.py tip # Invoke tuxsuite via: -# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json tuxsuite/tip-clang-19.tux.yml +# $ tuxsuite plan --git-repo https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git --git-ref master --job-name defconfigs --json-out builds.json --patch-series patches/tip tuxsuite/tip-clang-19.tux.yml # Invoke locally via: # $ git clone -b master --depth=1 https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git linux +# $ git -C linux quiltimport --patches ../patches/tip # $ scripts/build-local.py -C linux -f tuxsuite/tip-clang-19.tux.yml -j defconfigs version: 1 name: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git at master