Commit 9af832c0a76e for kernel

commit 9af832c0a76eedce169c4c6360e4e20d8a0c9ab1
Author: Zhao Mengmeng <zhaomengmeng@kylinos.cn>
Date:   Tue Mar 3 15:23:15 2026 +0800

    tools/sched_ext: Add -fms-extensions to bpf build flags

    Similar to commit 835a50753579 ("selftests/bpf: Add -fms-extensions to
    bpf build flags") and commit 639f58a0f480 ("bpftool: Fix build warnings
    due to MS extensions")

    The kernel is now built with -fms-extensions, therefore
    generated vmlinux.h contains types like:
    struct aes_key {
            struct aes_enckey;
            union aes_invkey_arch inv_k;
    };

    struct ns_common {
            ...
            union {
                    struct ns_tree;
                    struct callback_head ns_rcu;
            };
    };

    Which raise warning like below when building scx scheduler:

    tools/sched_ext/build/include/vmlinux.h:50533:3: warning:
    declaration does not declare anything [-Wmissing-declarations]
     50533 |                 struct ns_tree;
           |                 ^
    Fix it by using -fms-extensions and -Wno-microsoft-anon-tag flags
    to build bpf programs that #include "vmlinux.h"

    Signed-off-by: Zhao Mengmeng <zhaomengmeng@kylinos.cn>
    Reviewed-by: Andrea Righi <arighi@nvidia.com>
    Signed-off-by: Tejun Heo <tj@kernel.org>

diff --git a/tools/sched_ext/Makefile b/tools/sched_ext/Makefile
index 47ad7444677e..21554f089692 100644
--- a/tools/sched_ext/Makefile
+++ b/tools/sched_ext/Makefile
@@ -122,6 +122,8 @@ BPF_CFLAGS = -g -D__TARGET_ARCH_$(SRCARCH)					\
 	     -I../../include							\
 	     $(call get_sys_includes,$(CLANG))					\
 	     -Wall -Wno-compare-distinct-pointer-types				\
+	     -Wno-microsoft-anon-tag						\
+	     -fms-extensions							\
 	     -O2 -mcpu=v3

 # sort removes libbpf duplicates when not cross-building