Skip to content

Commit 12cd3cd

Browse files
andy-shevkees
authored andcommitted
params: Introduce the param_unknown_fn type
Introduce a new type for the callback to parse an unknown argument. This unifies function prototypes which takes that as a parameter. Reviewed-by: Luis Chamberlain <[email protected]> Reviewed-by: Kees Cook <[email protected]> Signed-off-by: Andy Shevchenko <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Kees Cook <[email protected]>
1 parent aabf7c3 commit 12cd3cd

File tree

2 files changed

+5
-9
lines changed

2 files changed

+5
-9
lines changed

include/linux/moduleparam.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -385,16 +385,16 @@ extern bool parameq(const char *name1, const char *name2);
385385
*/
386386
extern bool parameqn(const char *name1, const char *name2, size_t n);
387387

388+
typedef int (*parse_unknown_fn)(char *param, char *val, const char *doing, void *arg);
389+
388390
/* Called on module insert or kernel boot */
389391
extern char *parse_args(const char *name,
390392
char *args,
391393
const struct kernel_param *params,
392394
unsigned num,
393395
s16 level_min,
394396
s16 level_max,
395-
void *arg,
396-
int (*unknown)(char *param, char *val,
397-
const char *doing, void *arg));
397+
void *arg, parse_unknown_fn unknown);
398398

399399
/* Called by module remove. */
400400
#ifdef CONFIG_SYSFS

kernel/params.c

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,7 @@ static int parse_one(char *param,
120120
unsigned num_params,
121121
s16 min_level,
122122
s16 max_level,
123-
void *arg,
124-
int (*handle_unknown)(char *param, char *val,
125-
const char *doing, void *arg))
123+
void *arg, parse_unknown_fn handle_unknown)
126124
{
127125
unsigned int i;
128126
int err;
@@ -165,9 +163,7 @@ char *parse_args(const char *doing,
165163
unsigned num,
166164
s16 min_level,
167165
s16 max_level,
168-
void *arg,
169-
int (*unknown)(char *param, char *val,
170-
const char *doing, void *arg))
166+
void *arg, parse_unknown_fn unknown)
171167
{
172168
char *param, *val, *err = NULL;
173169

0 commit comments

Comments
 (0)