]> Pileus Git - ~andy/linux/blobdiff - arch/ia64/include/asm/percpu.h
ia64: add sparse annotation to __ia64_per_cpu_var()
[~andy/linux] / arch / ia64 / include / asm / percpu.h
index 30cf46534dd23f1aa386d0168cbcc0022cbecf6d..1bd4082656940709a715b69b339b86ea3b80db1e 100644 (file)
@@ -9,7 +9,7 @@
 #define PERCPU_ENOUGH_ROOM PERCPU_PAGE_SIZE
 
 #ifdef __ASSEMBLY__
-# define THIS_CPU(var) (per_cpu__##var)  /* use this to mark accesses to per-CPU variables... */
+# define THIS_CPU(var) (var)  /* use this to mark accesses to per-CPU variables... */
 #else /* !__ASSEMBLY__ */
 
 
@@ -39,7 +39,10 @@ extern void *per_cpu_init(void);
  * On the positive side, using __ia64_per_cpu_var() instead of __get_cpu_var() is slightly
  * more efficient.
  */
-#define __ia64_per_cpu_var(var)        per_cpu__##var
+#define __ia64_per_cpu_var(var) (*({                                   \
+       __verify_pcpu_ptr(&(var));                                      \
+       ((typeof(var) __kernel __force *)&(var));                       \
+}))
 
 #include <asm-generic/percpu.h>