extable.h 960 B

123456789101112131415161718192021222324252627282930313233
  1. #ifndef _LINUX_EXTABLE_H
  2. #define _LINUX_EXTABLE_H
  3. #include <linux/stddef.h> /* for NULL */
  4. #include <linux/types.h>
  5. struct module;
  6. struct exception_table_entry;
  7. const struct exception_table_entry *
  8. search_extable(const struct exception_table_entry *base,
  9. const size_t num,
  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. /* Given an address, look for it in the exception tables */
  16. const struct exception_table_entry *search_exception_tables(unsigned long add);
  17. #ifdef CONFIG_MODULES
  18. /* For extable.c to search modules' exception tables. */
  19. const struct exception_table_entry *search_module_extables(unsigned long addr);
  20. #else
  21. static inline const struct exception_table_entry *
  22. search_module_extables(unsigned long addr)
  23. {
  24. return NULL;
  25. }
  26. #endif /*CONFIG_MODULES*/
  27. #endif /* _LINUX_EXTABLE_H */