|
@@ -18,6 +18,7 @@
|
|
#include <linux/moduleparam.h>
|
|
#include <linux/moduleparam.h>
|
|
#include <linux/jump_label.h>
|
|
#include <linux/jump_label.h>
|
|
#include <linux/export.h>
|
|
#include <linux/export.h>
|
|
|
|
+#include <linux/extable.h> /* only as arch move module.h -> extable.h */
|
|
#include <linux/rbtree_latch.h>
|
|
#include <linux/rbtree_latch.h>
|
|
|
|
|
|
#include <linux/percpu.h>
|
|
#include <linux/percpu.h>
|
|
@@ -37,6 +38,7 @@ struct modversion_info {
|
|
};
|
|
};
|
|
|
|
|
|
struct module;
|
|
struct module;
|
|
|
|
+struct exception_table_entry;
|
|
|
|
|
|
struct module_kobject {
|
|
struct module_kobject {
|
|
struct kobject kobj;
|
|
struct kobject kobj;
|
|
@@ -155,18 +157,6 @@ extern void cleanup_module(void);
|
|
#define __INITRODATA_OR_MODULE __INITRODATA
|
|
#define __INITRODATA_OR_MODULE __INITRODATA
|
|
#endif /*CONFIG_MODULES*/
|
|
#endif /*CONFIG_MODULES*/
|
|
|
|
|
|
-/* Archs provide a method of finding the correct exception table. */
|
|
|
|
-struct exception_table_entry;
|
|
|
|
-
|
|
|
|
-const struct exception_table_entry *
|
|
|
|
-search_extable(const struct exception_table_entry *first,
|
|
|
|
- const struct exception_table_entry *last,
|
|
|
|
- unsigned long value);
|
|
|
|
-void sort_extable(struct exception_table_entry *start,
|
|
|
|
- struct exception_table_entry *finish);
|
|
|
|
-void sort_main_extable(void);
|
|
|
|
-void trim_init_extable(struct module *m);
|
|
|
|
-
|
|
|
|
/* Generic info of form tag = "info" */
|
|
/* Generic info of form tag = "info" */
|
|
#define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
|
|
#define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
|
|
|
|
|
|
@@ -268,9 +258,6 @@ extern const typeof(name) __mod_##type##__##name##_device_table \
|
|
* files require multiple MODULE_FIRMWARE() specifiers */
|
|
* files require multiple MODULE_FIRMWARE() specifiers */
|
|
#define MODULE_FIRMWARE(_firmware) MODULE_INFO(firmware, _firmware)
|
|
#define MODULE_FIRMWARE(_firmware) MODULE_INFO(firmware, _firmware)
|
|
|
|
|
|
-/* Given an address, look for it in the exception tables */
|
|
|
|
-const struct exception_table_entry *search_exception_tables(unsigned long add);
|
|
|
|
-
|
|
|
|
struct notifier_block;
|
|
struct notifier_block;
|
|
|
|
|
|
#ifdef CONFIG_MODULES
|
|
#ifdef CONFIG_MODULES
|
|
@@ -630,9 +617,6 @@ const char *module_address_lookup(unsigned long addr,
|
|
int lookup_module_symbol_name(unsigned long addr, char *symname);
|
|
int lookup_module_symbol_name(unsigned long addr, char *symname);
|
|
int lookup_module_symbol_attrs(unsigned long addr, unsigned long *size, unsigned long *offset, char *modname, char *name);
|
|
int lookup_module_symbol_attrs(unsigned long addr, unsigned long *size, unsigned long *offset, char *modname, char *name);
|
|
|
|
|
|
-/* For extable.c to search modules' exception tables. */
|
|
|
|
-const struct exception_table_entry *search_module_extables(unsigned long addr);
|
|
|
|
-
|
|
|
|
int register_module_notifier(struct notifier_block *nb);
|
|
int register_module_notifier(struct notifier_block *nb);
|
|
int unregister_module_notifier(struct notifier_block *nb);
|
|
int unregister_module_notifier(struct notifier_block *nb);
|
|
|
|
|
|
@@ -657,13 +641,6 @@ static inline bool is_livepatch_module(struct module *mod)
|
|
|
|
|
|
#else /* !CONFIG_MODULES... */
|
|
#else /* !CONFIG_MODULES... */
|
|
|
|
|
|
-/* Given an address, look for it in the exception tables. */
|
|
|
|
-static inline const struct exception_table_entry *
|
|
|
|
-search_module_extables(unsigned long addr)
|
|
|
|
-{
|
|
|
|
- return NULL;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static inline struct module *__module_address(unsigned long addr)
|
|
static inline struct module *__module_address(unsigned long addr)
|
|
{
|
|
{
|
|
return NULL;
|
|
return NULL;
|