From e7540c9fa814f9b41f80e72bc160ce504e26cda6 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sat, 15 Mar 2014 19:26:42 +0100 Subject: startup fixes - always use /sbin/init, even for initramfs - mount devtmpfs for initramfs automatically in kernel space - fix armhf for adk-test-framework - remove mdev -s on boot, I think it is unneeded, takes very long on Qemu systems - add alias for ro/rw remounts of / - remove old /init and rc.shutdown, both unused --- target/linux/patches/3.10.33/startup.patch | 32 +++++++++++++++++++++++++----- target/linux/patches/3.11.10/startup.patch | 32 +++++++++++++++++++++++++----- target/linux/patches/3.12.13/startup.patch | 32 +++++++++++++++++++++++++----- target/linux/patches/3.13.6/startup.patch | 25 +++++++++++++++++++++++ target/linux/patches/3.4.82/startup.patch | 30 ++++++++++++++++++++++++---- 5 files changed, 132 insertions(+), 19 deletions(-) (limited to 'target/linux') diff --git a/target/linux/patches/3.10.33/startup.patch b/target/linux/patches/3.10.33/startup.patch index 4dccae8c1..3ebc5db1e 100644 --- a/target/linux/patches/3.10.33/startup.patch +++ b/target/linux/patches/3.10.33/startup.patch @@ -1,12 +1,34 @@ -diff -Nur linux-3.7.3.orig/init/main.c linux-3.7.3/init/main.c ---- linux-3.7.3.orig/init/main.c 2013-01-17 17:47:40.000000000 +0100 -+++ linux-3.7.3/init/main.c 2013-01-19 15:08:13.000000000 +0100 -@@ -879,6 +880,8 @@ +diff -Nur linux-3.10.33.orig/init/initramfs.c linux-3.10.33/init/initramfs.c +--- linux-3.10.33.orig/init/initramfs.c 2014-03-07 06:58:45.000000000 +0100 ++++ linux-3.10.33/init/initramfs.c 2014-03-15 18:32:07.240436750 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.10.33.orig/init/main.c linux-3.10.33/init/main.c +--- linux-3.10.33.orig/init/main.c 2014-03-07 06:58:45.000000000 +0100 ++++ linux-3.10.33/init/main.c 2014-03-15 18:32:07.240436750 +0100 +@@ -885,6 +885,8 @@ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); + pr_err("Warning: unable to open an initial console.\n"); + printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); + (void) sys_dup(0); (void) sys_dup(0); /* +@@ -893,7 +895,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.11.10/startup.patch b/target/linux/patches/3.11.10/startup.patch index 4dccae8c1..e7285873d 100644 --- a/target/linux/patches/3.11.10/startup.patch +++ b/target/linux/patches/3.11.10/startup.patch @@ -1,12 +1,34 @@ -diff -Nur linux-3.7.3.orig/init/main.c linux-3.7.3/init/main.c ---- linux-3.7.3.orig/init/main.c 2013-01-17 17:47:40.000000000 +0100 -+++ linux-3.7.3/init/main.c 2013-01-19 15:08:13.000000000 +0100 -@@ -879,6 +880,8 @@ +diff -Nur linux-3.11.10.orig/init/initramfs.c linux-3.11.10/init/initramfs.c +--- linux-3.11.10.orig/init/initramfs.c 2013-11-29 19:42:37.000000000 +0100 ++++ linux-3.11.10/init/initramfs.c 2014-03-15 18:42:01.586249887 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.11.10.orig/init/main.c linux-3.11.10/init/main.c +--- linux-3.11.10.orig/init/main.c 2013-11-29 19:42:37.000000000 +0100 ++++ linux-3.11.10/init/main.c 2014-03-15 18:42:01.590249897 +0100 +@@ -886,6 +886,8 @@ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); + pr_err("Warning: unable to open an initial console.\n"); + printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); + (void) sys_dup(0); (void) sys_dup(0); /* +@@ -894,7 +896,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.12.13/startup.patch b/target/linux/patches/3.12.13/startup.patch index 4dccae8c1..4cd477da1 100644 --- a/target/linux/patches/3.12.13/startup.patch +++ b/target/linux/patches/3.12.13/startup.patch @@ -1,12 +1,34 @@ -diff -Nur linux-3.7.3.orig/init/main.c linux-3.7.3/init/main.c ---- linux-3.7.3.orig/init/main.c 2013-01-17 17:47:40.000000000 +0100 -+++ linux-3.7.3/init/main.c 2013-01-19 15:08:13.000000000 +0100 -@@ -879,6 +880,8 @@ +diff -Nur linux-3.12.13.orig/init/initramfs.c linux-3.12.13/init/initramfs.c +--- linux-3.12.13.orig/init/initramfs.c 2014-02-22 22:32:50.000000000 +0100 ++++ linux-3.12.13/init/initramfs.c 2014-03-15 18:09:39.040618589 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.12.13.orig/init/main.c linux-3.12.13/init/main.c +--- linux-3.12.13.orig/init/main.c 2014-02-22 22:32:50.000000000 +0100 ++++ linux-3.12.13/init/main.c 2014-03-15 18:09:39.044618600 +0100 +@@ -888,6 +888,8 @@ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); + pr_err("Warning: unable to open an initial console.\n"); + printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); + (void) sys_dup(0); (void) sys_dup(0); /* +@@ -896,7 +898,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.13.6/startup.patch b/target/linux/patches/3.13.6/startup.patch index be4ea469d..d396b75e4 100644 --- a/target/linux/patches/3.13.6/startup.patch +++ b/target/linux/patches/3.13.6/startup.patch @@ -10,3 +10,28 @@ diff -Nur linux-3.13.3.orig/init/main.c linux-3.13.3/init/main.c (void) sys_dup(0); (void) sys_dup(0); /* +diff -Nur linux-3.13.6.orig/init/initramfs.c linux-3.13.6/init/initramfs.c +--- linux-3.13.6.orig/init/initramfs.c 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/init/initramfs.c 2014-03-15 12:11:31.882731916 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.13.6.orig/init/main.c linux-3.13.6/init/main.c +--- linux-3.13.6.orig/init/main.c 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/init/main.c 2014-03-15 12:13:16.459024452 +0100 +@@ -924,7 +924,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.4.82/startup.patch b/target/linux/patches/3.4.82/startup.patch index 4f47eddcb..c26430bcb 100644 --- a/target/linux/patches/3.4.82/startup.patch +++ b/target/linux/patches/3.4.82/startup.patch @@ -1,7 +1,20 @@ -diff -Nur linux-2.6.34.orig/init/main.c linux-2.6.34/init/main.c ---- linux-2.6.34.orig/init/main.c 2010-05-16 23:17:36.000000000 +0200 -+++ linux-2.6.34/init/main.c 2010-05-20 20:13:26.321613615 +0200 -@@ -889,6 +890,8 @@ +diff -Nur linux-3.4.82.orig/init/initramfs.c linux-3.4.82/init/initramfs.c +--- linux-3.4.82.orig/init/initramfs.c 2014-02-22 19:33:35.000000000 +0100 ++++ linux-3.4.82/init/initramfs.c 2014-03-15 18:46:22.674928245 +0100 +@@ -606,6 +606,9 @@ + free_initrd(); + #endif + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.4.82.orig/init/main.c linux-3.4.82/init/main.c +--- linux-3.4.82.orig/init/main.c 2014-02-22 19:33:35.000000000 +0100 ++++ linux-3.4.82/init/main.c 2014-03-15 18:46:22.674928245 +0100 +@@ -873,6 +873,8 @@ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) printk(KERN_WARNING "Warning: unable to open an initial console.\n"); @@ -10,3 +23,12 @@ diff -Nur linux-2.6.34.orig/init/main.c linux-2.6.34/init/main.c (void) sys_dup(0); (void) sys_dup(0); /* +@@ -881,7 +883,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; -- cgit v1.2.3