kernel: ensure that /dev/console exists in initramfs
Linux expects that the /dev/console node is present
in the rootfs image. Create the node in initramfs,
in order to make std{in,out,err} usable even in early
init process.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37846
			
			
This commit is contained in:
		@@ -0,0 +1,30 @@
 | 
			
		||||
--- a/scripts/gen_initramfs_list.sh
 | 
			
		||||
+++ b/scripts/gen_initramfs_list.sh
 | 
			
		||||
@@ -59,6 +59,18 @@ default_initramfs() {
 | 
			
		||||
 	EOF
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
+list_openwrt_initramfs() {
 | 
			
		||||
+	:
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
+openwrt_initramfs() {
 | 
			
		||||
+	# make sure that /dev/console exists
 | 
			
		||||
+	cat <<-EOF >> ${output}
 | 
			
		||||
+		dir /dev 0755 0 0
 | 
			
		||||
+		nod /dev/console 0600 0 0 c 5 1
 | 
			
		||||
+	EOF
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
 filetype() {
 | 
			
		||||
 	local argv1="$1"
 | 
			
		||||
 
 | 
			
		||||
@@ -177,6 +189,8 @@ dir_filelist() {
 | 
			
		||||
 	if [  "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
 | 
			
		||||
 		${dep_list}print_mtime "$1"
 | 
			
		||||
 
 | 
			
		||||
+		${dep_list}openwrt_initramfs
 | 
			
		||||
+
 | 
			
		||||
 		echo "${dirlist}" | \
 | 
			
		||||
 		while read x; do
 | 
			
		||||
 			${dep_list}parse ${x}
 | 
			
		||||
@@ -0,0 +1,30 @@
 | 
			
		||||
--- a/scripts/gen_initramfs_list.sh
 | 
			
		||||
+++ b/scripts/gen_initramfs_list.sh
 | 
			
		||||
@@ -59,6 +59,18 @@ default_initramfs() {
 | 
			
		||||
 	EOF
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
+list_openwrt_initramfs() {
 | 
			
		||||
+	:
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
+openwrt_initramfs() {
 | 
			
		||||
+	# make sure that /dev/console exists
 | 
			
		||||
+	cat <<-EOF >> ${output}
 | 
			
		||||
+		dir /dev 0755 0 0
 | 
			
		||||
+		nod /dev/console 0600 0 0 c 5 1
 | 
			
		||||
+	EOF
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
 filetype() {
 | 
			
		||||
 	local argv1="$1"
 | 
			
		||||
 
 | 
			
		||||
@@ -177,6 +189,8 @@ dir_filelist() {
 | 
			
		||||
 	if [  "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
 | 
			
		||||
 		${dep_list}print_mtime "$1"
 | 
			
		||||
 
 | 
			
		||||
+		${dep_list}openwrt_initramfs
 | 
			
		||||
+
 | 
			
		||||
 		echo "${dirlist}" | \
 | 
			
		||||
 		while read x; do
 | 
			
		||||
 			${dep_list}parse ${x}
 | 
			
		||||
@@ -0,0 +1,30 @@
 | 
			
		||||
--- a/scripts/gen_initramfs_list.sh
 | 
			
		||||
+++ b/scripts/gen_initramfs_list.sh
 | 
			
		||||
@@ -59,6 +59,18 @@ default_initramfs() {
 | 
			
		||||
 	EOF
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
+list_openwrt_initramfs() {
 | 
			
		||||
+	:
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
+openwrt_initramfs() {
 | 
			
		||||
+	# make sure that /dev/console exists
 | 
			
		||||
+	cat <<-EOF >> ${output}
 | 
			
		||||
+		dir /dev 0755 0 0
 | 
			
		||||
+		nod /dev/console 0600 0 0 c 5 1
 | 
			
		||||
+	EOF
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
 filetype() {
 | 
			
		||||
 	local argv1="$1"
 | 
			
		||||
 
 | 
			
		||||
@@ -177,6 +189,8 @@ dir_filelist() {
 | 
			
		||||
 	if [  "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
 | 
			
		||||
 		${dep_list}print_mtime "$1"
 | 
			
		||||
 
 | 
			
		||||
+		${dep_list}openwrt_initramfs
 | 
			
		||||
+
 | 
			
		||||
 		echo "${dirlist}" | \
 | 
			
		||||
 		while read x; do
 | 
			
		||||
 			${dep_list}parse ${x}
 | 
			
		||||
@@ -0,0 +1,30 @@
 | 
			
		||||
--- a/scripts/gen_initramfs_list.sh
 | 
			
		||||
+++ b/scripts/gen_initramfs_list.sh
 | 
			
		||||
@@ -59,6 +59,18 @@ default_initramfs() {
 | 
			
		||||
 	EOF
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
+list_openwrt_initramfs() {
 | 
			
		||||
+	:
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
+openwrt_initramfs() {
 | 
			
		||||
+	# make sure that /dev/console exists
 | 
			
		||||
+	cat <<-EOF >> ${output}
 | 
			
		||||
+		dir /dev 0755 0 0
 | 
			
		||||
+		nod /dev/console 0600 0 0 c 5 1
 | 
			
		||||
+	EOF
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
 filetype() {
 | 
			
		||||
 	local argv1="$1"
 | 
			
		||||
 
 | 
			
		||||
@@ -177,6 +189,8 @@ dir_filelist() {
 | 
			
		||||
 	if [  "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
 | 
			
		||||
 		${dep_list}print_mtime "$1"
 | 
			
		||||
 
 | 
			
		||||
+		${dep_list}openwrt_initramfs
 | 
			
		||||
+
 | 
			
		||||
 		echo "${dirlist}" | \
 | 
			
		||||
 		while read x; do
 | 
			
		||||
 			${dep_list}parse ${x}
 | 
			
		||||
@@ -0,0 +1,30 @@
 | 
			
		||||
--- a/scripts/gen_initramfs_list.sh
 | 
			
		||||
+++ b/scripts/gen_initramfs_list.sh
 | 
			
		||||
@@ -59,6 +59,18 @@ default_initramfs() {
 | 
			
		||||
 	EOF
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
+list_openwrt_initramfs() {
 | 
			
		||||
+	:
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
+openwrt_initramfs() {
 | 
			
		||||
+	# make sure that /dev/console exists
 | 
			
		||||
+	cat <<-EOF >> ${output}
 | 
			
		||||
+		dir /dev 0755 0 0
 | 
			
		||||
+		nod /dev/console 0600 0 0 c 5 1
 | 
			
		||||
+	EOF
 | 
			
		||||
+}
 | 
			
		||||
+
 | 
			
		||||
 filetype() {
 | 
			
		||||
 	local argv1="$1"
 | 
			
		||||
 
 | 
			
		||||
@@ -177,6 +189,8 @@ dir_filelist() {
 | 
			
		||||
 	if [  "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
 | 
			
		||||
 		${dep_list}print_mtime "$1"
 | 
			
		||||
 
 | 
			
		||||
+		${dep_list}openwrt_initramfs
 | 
			
		||||
+
 | 
			
		||||
 		echo "${dirlist}" | \
 | 
			
		||||
 		while read x; do
 | 
			
		||||
 			${dep_list}parse ${x}
 | 
			
		||||
		Reference in New Issue
	
	Block a user