insmod: clarify module_name / file_name distinction
This commit is contained in:
parent
cc5feabeba
commit
36309cf3f4
@ -1864,8 +1864,12 @@
|
|||||||
"\ninotifyd waits for PROG to exit." \
|
"\ninotifyd waits for PROG to exit." \
|
||||||
"\nWhen x event happens for all FILEs, inotifyd exits" \
|
"\nWhen x event happens for all FILEs, inotifyd exits" \
|
||||||
|
|
||||||
|
/* 2.6 style insmod has no options and required filename
|
||||||
|
* (not module name - .ko can't be omitted) */
|
||||||
#define insmod_trivial_usage \
|
#define insmod_trivial_usage \
|
||||||
USE_FEATURE_2_4_MODULES("[OPTION]... ") "MODULE [symbol=value]..."
|
USE_FEATURE_2_4_MODULES("[OPTION]... MODULE ") \
|
||||||
|
SKIP_FEATURE_2_4_MODULES("FILE ") \
|
||||||
|
"[symbol=value]..."
|
||||||
#define insmod_full_usage "\n\n" \
|
#define insmod_full_usage "\n\n" \
|
||||||
"Load the specified kernel modules into the kernel" \
|
"Load the specified kernel modules into the kernel" \
|
||||||
USE_FEATURE_2_4_MODULES( "\n" \
|
USE_FEATURE_2_4_MODULES( "\n" \
|
||||||
|
@ -16,9 +16,17 @@ int insmod_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
char *filename;
|
char *filename;
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
|
/* Compat note:
|
||||||
|
* 2.6 style insmod has no options and required filename
|
||||||
|
* (not module name - .ko can't be omitted).
|
||||||
|
* 2.4 style insmod can take module name without .ko
|
||||||
|
* and performs module search in default directories
|
||||||
|
* or in $MODPATH.
|
||||||
|
*/
|
||||||
|
|
||||||
USE_FEATURE_2_4_MODULES(
|
USE_FEATURE_2_4_MODULES(
|
||||||
getopt32(argv, INSMOD_OPTS INSMOD_ARGS);
|
getopt32(argv, INSMOD_OPTS INSMOD_ARGS);
|
||||||
argv += optind-1;
|
argv += optind - 1;
|
||||||
);
|
);
|
||||||
|
|
||||||
filename = *++argv;
|
filename = *++argv;
|
||||||
|
@ -3810,7 +3810,7 @@ static void print_load_map(struct obj_file *f UNUSED_PARAM)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int FAST_FUNC bb_init_module_24(const char *m_filename, const char *options UNUSED_PARAM)
|
int FAST_FUNC bb_init_module_24(const char *m_filename, const char *options)
|
||||||
{
|
{
|
||||||
int k_crcs;
|
int k_crcs;
|
||||||
unsigned long m_size;
|
unsigned long m_size;
|
||||||
@ -3906,13 +3906,13 @@ int FAST_FUNC bb_init_module_24(const char *m_filename, const char *options UNUS
|
|||||||
|
|
||||||
m_addr = create_module(m_name, m_size);
|
m_addr = create_module(m_name, m_size);
|
||||||
if (m_addr == (ElfW(Addr))(-1)) switch (errno) {
|
if (m_addr == (ElfW(Addr))(-1)) switch (errno) {
|
||||||
case EEXIST:
|
case EEXIST:
|
||||||
bb_error_msg_and_die("a module named %s already exists", m_name);
|
bb_error_msg_and_die("a module named %s already exists", m_name);
|
||||||
case ENOMEM:
|
case ENOMEM:
|
||||||
bb_error_msg_and_die("can't allocate kernel memory for module; needed %lu bytes",
|
bb_error_msg_and_die("can't allocate kernel memory for module; needed %lu bytes",
|
||||||
m_size);
|
m_size);
|
||||||
default:
|
default:
|
||||||
bb_perror_msg_and_die("create_module: %s", m_name);
|
bb_perror_msg_and_die("create_module: %s", m_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !LOADBITS
|
#if !LOADBITS
|
||||||
|
@ -23,7 +23,7 @@ const char *moderror(int err) FAST_FUNC;
|
|||||||
llist_t *llist_find(llist_t *first, const char *str) FAST_FUNC;
|
llist_t *llist_find(llist_t *first, const char *str) FAST_FUNC;
|
||||||
void replace(char *s, char what, char with) FAST_FUNC;
|
void replace(char *s, char what, char with) FAST_FUNC;
|
||||||
char *replace_underscores(char *s) FAST_FUNC;
|
char *replace_underscores(char *s) FAST_FUNC;
|
||||||
int string_to_llist(char *string, llist_t **llist, const char *delim) FAST_FUNC ;
|
int string_to_llist(char *string, llist_t **llist, const char *delim) FAST_FUNC;
|
||||||
char *filename2modname(const char *filename, char *modname) FAST_FUNC;
|
char *filename2modname(const char *filename, char *modname) FAST_FUNC;
|
||||||
char *parse_cmdline_module_options(char **argv) FAST_FUNC;
|
char *parse_cmdline_module_options(char **argv) FAST_FUNC;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user