This chapter introduced the following kernel symbols:
The configuration file for modprobe and depmod. It is used to configure demand loading and is described in the man pages for the two programs.
#include <linux/kerneld.h>
,
int request_module(const char *name);
,
int release_module(const char *name, int waitflag);
,
int delayed_release_module(const char *name);
,
int cancel_release_module(const char *name);
These functions perform demand loading of modules by means of the kerneld daemon.
#include <linux/autoconf.h>
,
CONFIG_MODVERSIONS
This macro is defined only if the current kernel has been compiled to support versioned symbols.
#ifdef MODVERSIONS
,
#include <linux/modversions.h>
This header, which exists only if CONFIG_MODVERSIONS
is valid, contains the versioned
names for all the symbols exported by the kernel.
EXPORT_SYMTAB
If version support is used, this macro must be defined if your module uses register_symtab to export symbols of its own.
__GENKSYMS__
This macro is defined by make when preprocessing
files to be read by genksyms to build new version codes.
It is used to conditionally prevent inclusion of
<linux/modversions.h>
when building new
checksums.
int set_persist(char *key, void *value, size_t length);
,
int get_persist(char *key, void *value, size_t length);
Support for persistent storage of module data relies on
these two functions, which are defined in
<linux/kerneld.h>
.
18.117.158.47