83 lines
2.4 KiB
Diff
83 lines
2.4 KiB
Diff
From fa3038625d7df2a1244c5b753069e7fdf99af3b5 Mon Sep 17 00:00:00 2001
|
||
From: Ingo Molnar <mingo@elte.hu>
|
||
Date: Mon, 18 Aug 2008 12:54:00 +0200
|
||
Subject: [PATCH] warning: fix init do_mounts_md c
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=utf-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
fix warning:
|
||
|
||
init/do_mounts_md.c: In function ‘md_run_setup’:
|
||
init/do_mounts_md.c:282: warning: ISO C90 forbids mixed declarations and code
|
||
|
||
also, use the opportunity to put the RAID autodetection code
|
||
into a separate function - this also solves a checkpatch style warning.
|
||
|
||
No code changed:
|
||
|
||
md5:
|
||
aa36a35faef371b05f1974ad583bdbbd do_mounts_md.o.before.asm
|
||
aa36a35faef371b05f1974ad583bdbbd do_mounts_md.o.after.asm
|
||
|
||
Signed-off-by: Ingo Molnar <mingo@elte.hu>
|
||
---
|
||
init/do_mounts_md.c | 36 +++++++++++++++++++++---------------
|
||
1 files changed, 21 insertions(+), 15 deletions(-)
|
||
|
||
diff --git a/init/do_mounts_md.c b/init/do_mounts_md.c
|
||
index 1ec5c41..c0dfd3c 100644
|
||
--- a/init/do_mounts_md.c
|
||
+++ b/init/do_mounts_md.c
|
||
@@ -264,26 +264,32 @@ static int __init raid_setup(char *str)
|
||
__setup("raid=", raid_setup);
|
||
__setup("md=", md_setup);
|
||
|
||
+static void autodetect_raid(void)
|
||
+{
|
||
+ int fd;
|
||
+
|
||
+ /*
|
||
+ * Since we don't want to detect and use half a raid array, we need to
|
||
+ * wait for the known devices to complete their probing
|
||
+ */
|
||
+ printk(KERN_INFO "md: Waiting for all devices to be available before autodetect\n");
|
||
+ printk(KERN_INFO "md: If you don't use raid, use raid=noautodetect\n");
|
||
+ while (driver_probe_done() < 0)
|
||
+ msleep(100);
|
||
+ fd = sys_open("/dev/md0", 0, 0);
|
||
+ if (fd >= 0) {
|
||
+ sys_ioctl(fd, RAID_AUTORUN, raid_autopart);
|
||
+ sys_close(fd);
|
||
+ }
|
||
+}
|
||
+
|
||
void __init md_run_setup(void)
|
||
{
|
||
create_dev("/dev/md0", MKDEV(MD_MAJOR, 0));
|
||
|
||
if (raid_noautodetect)
|
||
printk(KERN_INFO "md: Skipping autodetection of RAID arrays. (raid=noautodetect)\n");
|
||
- else {
|
||
- /*
|
||
- * Since we don't want to detect and use half a raid array, we need to
|
||
- * wait for the known devices to complete their probing
|
||
- */
|
||
- printk(KERN_INFO "md: Waiting for all devices to be available before autodetect\n");
|
||
- printk(KERN_INFO "md: If you don't use raid, use raid=noautodetect\n");
|
||
- while (driver_probe_done() < 0)
|
||
- msleep(100);
|
||
- int fd = sys_open("/dev/md0", 0, 0);
|
||
- if (fd >= 0) {
|
||
- sys_ioctl(fd, RAID_AUTORUN, raid_autopart);
|
||
- sys_close(fd);
|
||
- }
|
||
- }
|
||
+ else
|
||
+ autodetect_raid();
|
||
md_setup_drive();
|
||
}
|
||
--
|
||
1.5.4.3
|
||
|