xref: /linux-6.15/include/linux/extable.h (revision 0ef76537)
1 #ifndef _LINUX_EXTABLE_H
2 #define _LINUX_EXTABLE_H
3 
4 struct module;
5 struct exception_table_entry;
6 
7 const struct exception_table_entry *
8 search_extable(const struct exception_table_entry *first,
9 	       const struct exception_table_entry *last,
10 	       unsigned long value);
11 void sort_extable(struct exception_table_entry *start,
12 		  struct exception_table_entry *finish);
13 void sort_main_extable(void);
14 void trim_init_extable(struct module *m);
15 
16 /* Given an address, look for it in the exception tables */
17 const struct exception_table_entry *search_exception_tables(unsigned long add);
18 
19 #ifdef CONFIG_MODULES
20 /* For extable.c to search modules' exception tables. */
21 const struct exception_table_entry *search_module_extables(unsigned long addr);
22 #else
23 static inline const struct exception_table_entry *
24 search_module_extables(unsigned long addr)
25 {
26 	return NULL;
27 }
28 #endif /*CONFIG_MODULES*/
29 
30 #endif /* _LINUX_EXTABLE_H */
31