diff --git a/disabled-vect-optimization-in-bpf-rule-add-function.patch b/disabled-vect-optimization-in-bpf-rule-add-function.patch new file mode 100644 index 0000000000000000000000000000000000000000..3a505a21e297508057c39206e16fb5b000b10c8b --- /dev/null +++ b/disabled-vect-optimization-in-bpf-rule-add-function.patch @@ -0,0 +1,35 @@ +diff -ru a/src/db.c b/src/db.c +--- a/src/db.c 2022-04-21 21:23:06.975553369 +0800 ++++ b/src/db.c 2025-11-28 14:33:37.261453565 +0800 +@@ -2319,21 +2319,18 @@ + chain[arg_num].op = arg_data.op; + /* TODO: we should check datum/mask size against the + * arch definition, e.g. 64 bit datum on x86 */ +- switch (chain[arg_num].op) { +- case SCMP_CMP_NE: +- case SCMP_CMP_LT: +- case SCMP_CMP_LE: +- case SCMP_CMP_EQ: +- case SCMP_CMP_GE: +- case SCMP_CMP_GT: +- chain[arg_num].mask = DATUM_MAX; +- chain[arg_num].datum = arg_data.datum_a; +- break; +- case SCMP_CMP_MASKED_EQ: ++ if (chain[arg_num].op == SCMP_CMP_MASKED_EQ) { + chain[arg_num].mask = arg_data.datum_a; + chain[arg_num].datum = arg_data.datum_b; +- break; +- default: ++ } else if (chain[arg_num].op == SCMP_CMP_NE || ++ chain[arg_num].op == SCMP_CMP_LT || ++ chain[arg_num].op == SCMP_CMP_LE || ++ chain[arg_num].op == SCMP_CMP_EQ || ++ chain[arg_num].op == SCMP_CMP_GE || ++ chain[arg_num].op == SCMP_CMP_GT) { ++ chain[arg_num].mask = DATUM_MAX; ++ chain[arg_num].datum = arg_data.datum_a; ++ } else { + rc = -EINVAL; + goto add_return; + } diff --git a/libseccomp.spec b/libseccomp.spec index 3f684a7e6d7f10a7b5d59e0ecb0b44d614f73d24..05deeb74a810f7427c53b1e2e20138ac6eb19048 100644 --- a/libseccomp.spec +++ b/libseccomp.spec @@ -1,4 +1,4 @@ -%define anolis_release 5 +%define anolis_release 6 Name: libseccomp Version: 2.5.4 @@ -10,6 +10,8 @@ Source0: https://github.com/seccomp/libseccomp/releases/download/v%{versi Patch001: add-loongarch64-for-libseccomp.patch Patch002: syscalls.csv-add-loongarch-support.patch +# [Bugfix] GCC 14.3 SLP vectorize optimization, remove when gcc fixed +Patch003: disabled-vect-optimization-in-bpf-rule-add-function.patch BuildRequires: gcc BuildRequires: gperf @@ -91,6 +93,9 @@ autoreconf %{_libdir}/libseccomp.a %changelog +* Fri Nov 14 2025 Yihao Yan - 2.5.4-6 +- disabled vect optimization in bpf rule add function + * Tue Nov 04 2025 Maeve - 2.5.4-5 - rebuild on riscv64