summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Konovalov <andrey.konovalov@linaro.org>2012-08-20 16:36:20 +0400
committerAndrey Konovalov <andrey.konovalov@linaro.org>2012-08-20 22:45:14 +0400
commit250e09d6648d2740219bc400598c9691be0ae306 (patch)
treea551fcc0a5378fcd1c40e902f74c4ba1341e0a8b
parentc4106d89453aacc831e8a1f1c96587de1305da4b (diff)
downloadlinux-topics-250e09d6648d2740219bc400598c9691be0ae306.tar.gz
Revert bc3f32c "UBUNTU: SAUCE: ensure root is ready before running..."
Revert bc3f32c "UBUNTU: SAUCE: ensure root is ready before running usermodehelpers in it" Signed-off-by: Andrey Konovalov <andrey.konovalov@linaro.org>
-rw-r--r--include/linux/init.h2
-rw-r--r--include/linux/kmod.h2
-rw-r--r--init/initramfs.c7
-rw-r--r--init/main.c2
-rw-r--r--kernel/kmod.c2
5 files changed, 3 insertions, 12 deletions
diff --git a/include/linux/init.h b/include/linux/init.h
index d8ed250fce3..b8540f0988c 100644
--- a/include/linux/init.h
+++ b/include/linux/init.h
@@ -225,6 +225,8 @@ extern bool initcall_debug;
static initcall_t __initcall_##fn \
__used __section(.security_initcall.init) = fn
+extern struct list_head populate_rootfs_domain;
+
struct obs_kernel_param {
const char *str;
int (*setup_func)(char *);
diff --git a/include/linux/kmod.h b/include/linux/kmod.h
index 6f571b1be39..5398d580707 100644
--- a/include/linux/kmod.h
+++ b/include/linux/kmod.h
@@ -71,8 +71,6 @@ call_usermodehelper_fns(char *path, char **argv, char **envp, int wait,
int (*init)(struct subprocess_info *info, struct cred *new),
void (*cleanup)(struct subprocess_info *), void *data);
-void populate_rootfs_wait(void);
-
static inline int
call_usermodehelper(char *path, char **argv, char **envp, int wait)
{
diff --git a/init/initramfs.c b/init/initramfs.c
index c5a41234666..1ae8873570c 100644
--- a/init/initramfs.c
+++ b/init/initramfs.c
@@ -19,7 +19,6 @@
#include <linux/syscalls.h>
#include <linux/utime.h>
#include <linux/async.h>
-#include <linux/export.h>
static __initdata char *message;
static void __init error(char *x)
@@ -583,12 +582,6 @@ static void __init clean_rootfs(void)
LIST_HEAD(populate_rootfs_domain);
-void populate_rootfs_wait(void)
-{
- async_synchronize_full_domain(&populate_rootfs_domain);
-}
-EXPORT_SYMBOL(populate_rootfs_wait);
-
static void __init async_populate_rootfs(void)
{
char *err = unpack_to_rootfs(__initramfs_start, __initramfs_size);
diff --git a/init/main.c b/init/main.c
index 6d265fc4307..2deae100e2a 100644
--- a/init/main.c
+++ b/init/main.c
@@ -895,7 +895,7 @@ static int __init kernel_init(void * unused)
* We need to ensure that the filesystem is ready by this point, wait for
* async_populate_rootfs to complete.
*/
- populate_rootfs_wait();
+ async_synchronize_full_domain(&populate_rootfs_domain);
/*
* check if there is an early userspace init. If yes, let it do all
diff --git a/kernel/kmod.c b/kernel/kmod.c
index c5710b59f43..6f99aead66c 100644
--- a/kernel/kmod.c
+++ b/kernel/kmod.c
@@ -618,8 +618,6 @@ int call_usermodehelper_fns(
struct subprocess_info *info;
gfp_t gfp_mask = (wait == UMH_NO_WAIT) ? GFP_ATOMIC : GFP_KERNEL;
- populate_rootfs_wait();
-
info = call_usermodehelper_setup(path, argv, envp, gfp_mask);
if (info == NULL)