]> git.karo-electronics.de Git - linux-beck.git/commitdiff
x86/kexec: crash_vmclear_local_vmcss needs __rcu
authorZhang Yanfei <zhangyanfei@cn.fujitsu.com>
Tue, 11 Dec 2012 09:11:34 +0000 (17:11 +0800)
committerMarcelo Tosatti <mtosatti@redhat.com>
Tue, 11 Dec 2012 21:55:23 +0000 (19:55 -0200)
This removes the sparse warning:
arch/x86/kernel/crash.c:49:32: sparse: incompatible types in comparison expression (different address spaces)

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Zhang Yanfei <zhangyanfei@cn.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
arch/x86/include/asm/kexec.h
arch/x86/kernel/crash.c

index 28feeba2fdd62e2347e0e7e6fa8ce7f2d80d33c3..6080d2694bad07fcf3507d7a37231f00a333668e 100644 (file)
@@ -163,7 +163,8 @@ struct kimage_arch {
 };
 #endif
 
-extern void (*crash_vmclear_loaded_vmcss)(void);
+typedef void crash_vmclear_fn(void);
+extern crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss;
 
 #endif /* __ASSEMBLY__ */
 
index 2f6b8e838d18f98122c148655d657d5c4f37d07c..74467feb4dc55b2d4e8495992925efe5a51d77f7 100644 (file)
@@ -38,12 +38,12 @@ int in_crash_kexec;
  *
  * protected by rcu.
  */
-void (*crash_vmclear_loaded_vmcss)(void) = NULL;
+crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss = NULL;
 EXPORT_SYMBOL_GPL(crash_vmclear_loaded_vmcss);
 
 static inline void cpu_crash_vmclear_loaded_vmcss(void)
 {
-       void (*do_vmclear_operation)(void) = NULL;
+       crash_vmclear_fn *do_vmclear_operation = NULL;
 
        rcu_read_lock();
        do_vmclear_operation = rcu_dereference(crash_vmclear_loaded_vmcss);