diff options
| author | Thomas Gleixner <tglx@kernel.org> | 2026-01-18 15:45:40 +0100 |
|---|---|---|
| committer | Thomas Gleixner <tglx@kernel.org> | 2026-01-18 15:54:17 +0100 |
| commit | bbef8e2c29c32f048fac8e07f884f827d028f1da (patch) | |
| tree | 1ae9ff25582094f1d7ca5a560b804dcf07991fbb /arch | |
| parent | fd69b2f7d5f4e1d89cea4cdfa6f15e7fa53d8358 (diff) | |
x86/percpu: Make CONFIG_USE_X86_SEG_SUPPORT work with sparse
Now that sparse builds enforce the usage of typeof_unqual() the casts in
__raw_cpu_read/write() cause sparse to emit tons of false postive
warnings:
warning: cast removes address space '__percpu' of expression
Address this by annotating the casts with __force.
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Link: https://patch.msgid.link/87v7gz0yjv.ffs@tglx
Closes: https://lore.kernel.org/oe-kbuild-all/202601181733.YZOf9XU3-lkp@intel.com/
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/x86/include/asm/percpu.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h index 725d0eff7acd..c55058f3d75e 100644 --- a/arch/x86/include/asm/percpu.h +++ b/arch/x86/include/asm/percpu.h @@ -137,12 +137,12 @@ #define __raw_cpu_read(size, qual, pcp) \ ({ \ - *(qual __my_cpu_type(pcp) *)__my_cpu_ptr(&(pcp)); \ + *(qual __my_cpu_type(pcp) * __force)__my_cpu_ptr(&(pcp)); \ }) -#define __raw_cpu_write(size, qual, pcp, val) \ -do { \ - *(qual __my_cpu_type(pcp) *)__my_cpu_ptr(&(pcp)) = (val); \ +#define __raw_cpu_write(size, qual, pcp, val) \ +do { \ + *(qual __my_cpu_type(pcp) * __force)__my_cpu_ptr(&(pcp)) = (val); \ } while (0) #define __raw_cpu_read_const(pcp) __raw_cpu_read(, , pcp) |
