diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-04-21 12:46:39 +0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-04-21 12:46:54 +0400 |
| commit | 8ecee4620e76aae418bfa0e8cc830e92cb559bbb (patch) | |
| tree | 49a36784c0a26c8494a37087e37502101013b35d /include/linux/kmod.h | |
| parent | 6424fb38667fffbbb1b90be0ffd9a0c540db6a4b (diff) | |
| parent | a939b96cccdb65df80a52447ec8e4a6d79c56dbb (diff) | |
| download | linux-8ecee4620e76aae418bfa0e8cc830e92cb559bbb.tar.xz | |
Merge branch 'linus' into x86/mm
Merge reason: refresh the topic: there's been 290 non-merges commits upstream
to arch/x86 alone.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/kmod.h')
| -rw-r--r-- | include/linux/kmod.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/include/linux/kmod.h b/include/linux/kmod.h index 92213a9194e1..384ca8bbf1ac 100644 --- a/include/linux/kmod.h +++ b/include/linux/kmod.h @@ -29,10 +29,15 @@ #ifdef CONFIG_MODULES /* modprobe exit status on success, -ve on error. Return value * usually useless though. */ -extern int request_module(const char * name, ...) __attribute__ ((format (printf, 1, 2))); -#define try_then_request_module(x, mod...) ((x) ?: (request_module(mod), (x))) +extern int __request_module(bool wait, const char *name, ...) \ + __attribute__((format(printf, 2, 3))); +#define request_module(mod...) __request_module(true, mod) +#define request_module_nowait(mod...) __request_module(false, mod) +#define try_then_request_module(x, mod...) \ + ((x) ?: (__request_module(true, mod), (x))) #else -static inline int request_module(const char * name, ...) { return -ENOSYS; } +static inline int request_module(const char *name, ...) { return -ENOSYS; } +static inline int request_module_nowait(const char *name, ...) { return -ENOSYS; } #define try_then_request_module(x, mod...) (x) #endif |
