mirror of
https://github.com/torvalds/linux.git
synced 2026-09-25 21:21:09 -04:00
In the future usermode helper users do not need to carry in all the of kmod headers declarations. Since kmod.h still includes umh.h this change has no functional changes, each umh user can be cleaned up separately later and with time. Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Luis R. Rodriguez <[email protected]> Cc: Kees Cook <[email protected]> Cc: Dmitry Torokhov <[email protected]> Cc: Jessica Yu <[email protected]> Cc: Rusty Russell <[email protected]> Cc: Michal Marek <[email protected]> Cc: Petr Mladek <[email protected]> Cc: Miroslav Benes <[email protected]> Cc: Josh Poimboeuf <[email protected]> Cc: Guenter Roeck <[email protected]> Cc: "Eric W. Biederman" <[email protected]> Cc: Matt Redfearn <[email protected]> Cc: Dan Carpenter <[email protected]> Cc: Colin Ian King <[email protected]> Cc: Daniel Mentz <[email protected]> Cc: David Binderman <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
49 lines
1.7 KiB
C
49 lines
1.7 KiB
C
#ifndef __LINUX_KMOD_H__
|
|
#define __LINUX_KMOD_H__
|
|
|
|
/*
|
|
* include/linux/kmod.h
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
*/
|
|
|
|
#include <linux/umh.h>
|
|
#include <linux/gfp.h>
|
|
#include <linux/stddef.h>
|
|
#include <linux/errno.h>
|
|
#include <linux/compiler.h>
|
|
#include <linux/workqueue.h>
|
|
#include <linux/sysctl.h>
|
|
|
|
#define KMOD_PATH_LEN 256
|
|
|
|
#ifdef CONFIG_MODULES
|
|
extern char modprobe_path[]; /* for sysctl */
|
|
/* modprobe exit status on success, -ve on error. Return value
|
|
* usually useless though. */
|
|
extern __printf(2, 3)
|
|
int __request_module(bool wait, const char *name, ...);
|
|
#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_nowait(const char *name, ...) { return -ENOSYS; }
|
|
#define try_then_request_module(x, mod...) (x)
|
|
#endif
|
|
|
|
#endif /* __LINUX_KMOD_H__ */
|