diff options
Diffstat (limited to 'include/linux/kernel.h')
| -rw-r--r-- | include/linux/kernel.h | 40 | 
1 files changed, 3 insertions, 37 deletions
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index e8696e4a45aa..968b4c4fe65b 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -9,6 +9,7 @@  #include <linux/stddef.h>  #include <linux/types.h>  #include <linux/compiler.h> +#include <linux/container_of.h>  #include <linux/bitops.h>  #include <linux/kstrtox.h>  #include <linux/log2.h> @@ -19,6 +20,7 @@  #include <linux/printk.h>  #include <linux/build_bug.h>  #include <linux/static_call_types.h> +#include <linux/instruction_pointer.h>  #include <asm/byteorder.h>  #include <uapi/linux/kernel.h> @@ -52,11 +54,6 @@  }					\  ) -#define typeof_member(T, m)	typeof(((T*)0)->m) - -#define _RET_IP_		(unsigned long)__builtin_return_address(0) -#define _THIS_IP_  ({ __label__ __here; __here: (unsigned long)&&__here; }) -  /**   * upper_32_bits - return bits 32-63 of a number   * @n: the number we're accessing @@ -228,8 +225,6 @@ extern bool parse_option_str(const char *str, const char *option);  extern char *next_arg(char *args, char **param, char **val);  extern int core_kernel_text(unsigned long addr); -extern int init_kernel_text(unsigned long addr); -extern int core_kernel_data(unsigned long addr);  extern int __kernel_text_address(unsigned long addr);  extern int kernel_text_address(unsigned long addr);  extern int func_ptr_is_kernel_text(void *ptr); @@ -247,6 +242,7 @@ extern bool early_boot_irqs_disabled;  extern enum system_states {  	SYSTEM_BOOTING,  	SYSTEM_SCHEDULING, +	SYSTEM_FREEING_INITMEM,  	SYSTEM_RUNNING,  	SYSTEM_HALT,  	SYSTEM_POWER_OFF, @@ -482,36 +478,6 @@ static inline void ftrace_dump(enum ftrace_dump_mode oops_dump_mode) { }  #define __CONCAT(a, b) a ## b  #define CONCATENATE(a, b) __CONCAT(a, b) -/** - * container_of - cast a member of a structure out to the containing structure - * @ptr:	the pointer to the member. - * @type:	the type of the container struct this is embedded in. - * @member:	the name of the member within the struct. - * - */ -#define container_of(ptr, type, member) ({				\ -	void *__mptr = (void *)(ptr);					\ -	BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) &&	\ -			 !__same_type(*(ptr), void),			\ -			 "pointer type mismatch in container_of()");	\ -	((type *)(__mptr - offsetof(type, member))); }) - -/** - * container_of_safe - cast a member of a structure out to the containing structure - * @ptr:	the pointer to the member. - * @type:	the type of the container struct this is embedded in. - * @member:	the name of the member within the struct. - * - * If IS_ERR_OR_NULL(ptr), ptr is returned unchanged. - */ -#define container_of_safe(ptr, type, member) ({				\ -	void *__mptr = (void *)(ptr);					\ -	BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) &&	\ -			 !__same_type(*(ptr), void),			\ -			 "pointer type mismatch in container_of()");	\ -	IS_ERR_OR_NULL(__mptr) ? ERR_CAST(__mptr) :			\ -		((type *)(__mptr - offsetof(type, member))); }) -  /* Rebuild everything on CONFIG_FTRACE_MCOUNT_RECORD */  #ifdef CONFIG_FTRACE_MCOUNT_RECORD  # define REBUILD_DUE_TO_FTRACE_MCOUNT_RECORD  |