public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Richard Farina" <zerochaos@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/genkernel:aufs commit in: defaults/
Date: Wed, 29 Apr 2015 19:04:08 +0000 (UTC)	[thread overview]
Message-ID: <1430328705.75fe8bf4d8eb452cbd866140f76e847666f30598.zerochaos@gentoo> (raw)

commit:     75fe8bf4d8eb452cbd866140f76e847666f30598
Author:     Fernando Reyes (likewhoa) <design <AT> missionaccomplish <DOT> com>
AuthorDate: Tue Jun  3 01:36:28 2014 +0000
Commit:     Richard Farina <zerochaos <AT> gentoo <DOT> org>
CommitDate: Wed Apr 29 17:31:45 2015 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=75fe8bf4

A new bootstrapFS function has been added to cut on duplicate code
use which both aufs and squashfs boot types use and this it's moved
to the top of the boot process.

 defaults/initrd.scripts | 70 +++++++++++++++++++++++++++++++++----------------
 defaults/linuxrc        | 29 +++-----------------
 2 files changed, 50 insertions(+), 49 deletions(-)

diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts
index fe563fe..eb5ed6a 100644
--- a/defaults/initrd.scripts
+++ b/defaults/initrd.scripts
@@ -177,6 +177,52 @@ devicelist(){
 	echo ${DEVICES}
 }
 
+bootstrapFS() {
+        if [ "${USE_AUFS_NORMAL}" -eq '1' ]; then
+                # Directories used for rw changes in union mount filesystem
+                UNION=/union MEMORY=/memory
+
+                # Mountpoint for the changesdev
+                CHANGESMNT=${NEW_ROOT}/mnt/changesdev
+
+                if [ -z "$UID" ]; then
+                        CHANGES=${MEMORY}/aufs_changes/default
+                else
+                        CHANGES=${MEMORY}/aufs_changes/${UID}
+                fi
+
+                mkdir -p ${MEMORY} ${UNION} ${CHANGESMNT}
+        else
+                # Legacy SquashFS implementation
+                good_msg "Making tmpfs for ${NEW_ROOT}"
+                mount -n -t tmpfs tmpfs ${NEW_ROOT}
+        fi
+
+        # Setup the filesystem nodes and directories
+        for i in ${CDROOT_PATH} /mnt/livecd /mnt/key /mnt/gentoo /tmp /tmp/.initrd /dev /proc /run /sys; do
+                mkdir -p "${NEW_ROOT}${i}"
+                chmod 755 "${NEW_ROOT}${i}"
+        done
+
+        [ ! -d "${CDROOT_PATH}" ] && mkdir -p "${CDROOT_PATH}"
+        [ ! -e "${NEW_ROOT}/dev/null" ] && mknod "${NEW_ROOT}"/dev/null c 1 3
+        [ ! -e "${NEW_ROOT}/dev/zero" ] && mknod -m 660 "${NEW_ROOT}"/dev/zero c 1 5
+        [ ! -e "${NEW_ROOT}/dev/console" ] && mknod "${NEW_ROOT}"/dev/console c 5 1
+        [ ! -e "${NEW_ROOT}/dev/ttyS0" ] && mknod -m 600 "${NEW_ROOT}"/dev/ttyS0 c 4 64
+
+        # For SGI LiveCDs
+        if [ "${LOOPTYPE}" = "sgimips" ]; then
+                [ ! -e "${NEW_ROOT}/dev/sr0" ] && mknod "${NEW_ROOT}/dev/sr0" b 11 0
+                [ ! -e "${NEW_ROOT}/dev/loop0" ] && mknod "${NEW_ROOT}/dev/loop0" b 7 0
+        fi
+
+        # Required for splash to work. Not an issue with the initrd as this
+        # device isn't created there and is not needed.
+        for minor in 0 1 ; do
+                [ ! -e "${NEW_ROOT}/dev/$minor" ] && mknod -m 600 "${NEW_ROOT}/dev/tty$minor" c 4 $minor
+        done
+}
+
 bootstrapCD() {
 	local DEVICES=
 
@@ -302,30 +348,8 @@ create_changefs() {
 }
 
 setup_aufs() {
-        # Directory used for rw changes in union mount filesystem
-	UNION=/union
-	MEMORY=/memory
-	# Mountpoint for the changesdev
-	CHANGESMNT=${NEW_ROOT}/mnt/changesdev
-	if [ -z "$UID" ]
-	then
-		CHANGES=${MEMORY}/aufs_changes/default
-	else
-		CHANGES=${MEMORY}/aufs_changes/${UID}
-	fi
-
-	mkdir -p ${MEMORY}
-	mkdir -p ${UNION}
-	mkdir -p ${CHANGESMNT}
-	for i in dev mnt ${CDROOT_PATH} mnt/livecd mnt/key tmp tmp/.initrd mnt/gentoo sys
-	do
-		mkdir -p "${NEW_ROOT}/${i}"
-		chmod 755 "${NEW_ROOT}/${i}"
-	done
-	[ ! -e "${NEW_ROOT}/dev/null" ] && mknod "${NEW_ROOT}"/dev/null c 1 3
-	[ ! -e "${NEW_ROOT}/dev/console" ] && mknod "${NEW_ROOT}"/dev/console c 5 1
-
 	bootstrapCD
+
 	if [ -n "${AUFS}" ]
 	then
 		if [ "${AUFS}" = "detect" ]

diff --git a/defaults/linuxrc b/defaults/linuxrc
index da88bf0..0e40d16 100644
--- a/defaults/linuxrc
+++ b/defaults/linuxrc
@@ -458,40 +458,17 @@ rundebugshell "before setting up the root filesystem"
 
 if [ "${CDROOT}" = '1' ]
 then
+        # Setup the root filesystem
+        bootstrapFS
+
 	if [ "${USE_AUFS_NORMAL}" -eq '1' ]
 	then
                 setup_aufs
 		CHROOT=${UNION}
 	else
 		CHROOT=${NEW_ROOT}
-		good_msg "Making tmpfs for ${NEW_ROOT}"
-		mount -n -t tmpfs tmpfs ${NEW_ROOT}
-
-		for i in dev mnt ${CDROOT_PATH} proc run mnt/livecd mnt/key tmp tmp/.initrd mnt/gentoo sys
-		do
-			mkdir -p "${NEW_ROOT}/${i}"
-			chmod 755 "${NEW_ROOT}/${i}"
-		done
-		[ ! -d "${CDROOT_PATH}" ] && mkdir -p "${CDROOT_PATH}"
-		[ ! -e "${NEW_ROOT}/dev/null" ] && mknod -m 666 "${NEW_ROOT}"/dev/null c 1 3
-		[ ! -e "${NEW_ROOT}/dev/zero" ] && mknod -m 666 "${NEW_ROOT}"/dev/zero c 1 5
-		[ ! -e "${NEW_ROOT}/dev/console" ] && mknod -m 600 "${NEW_ROOT}"/dev/console c 5 1
-		[ ! -e "${NEW_ROOT}/dev/ttyS0" ] && mknod -m 660 "${NEW_ROOT}"/dev/ttyS0 c 4 64
 	fi
 
-	# For SGI LiveCDs ...
-	if [ "${LOOPTYPE}" = "sgimips" ]
-	then
-		[ ! -e "${NEW_ROOT}/dev/sr0" ] && mknod "${NEW_ROOT}/dev/sr0" b 11 0
-		[ ! -e "${NEW_ROOT}/dev/loop0" ] && mknod "${NEW_ROOT}/dev/loop0" b 7 0
-	fi
-
-	# Required for splash to work.  Not an issue with the initrd as this
-	# device isn't created there and is not needed.
-	for minor in 0 1 ; do
-		[ ! -e "${NEW_ROOT}/dev/$minor" ] && mknod -m 600 "${NEW_ROOT}/dev/tty$minor" c 4 $minor
-	done
-
 	if [ "${REAL_ROOT}" != "/dev/nfs" ] && [ "${LOOPTYPE}" != "sgimips" ] && [ "${USE_AUFS_NORMAL}" != '1' ]
 	then
 		bootstrapCD


             reply	other threads:[~2015-04-29 19:04 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-29 19:04 Richard Farina [this message]
  -- strict thread matches above, loose matches on Subject: below --
2015-04-29 19:04 [gentoo-commits] proj/genkernel:aufs commit in: defaults/ Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2015-04-29 19:04 Richard Farina
2014-09-23  0:21 Richard Farina
2014-09-23  0:21 Richard Farina
2014-09-05 16:11 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-09-05 16:09 Richard Farina
2014-05-24 21:35 Richard Farina
2014-05-24 21:35 Richard Farina
2014-05-24 21:35 Richard Farina
2014-05-22 20:28 Richard Farina
2014-05-22 20:28 Richard Farina
2014-05-22 20:28 Richard Farina
2014-05-22 20:28 Richard Farina
2014-03-17 19:38 Robin H. Johnson
2014-03-17 19:32 Robin H. Johnson
2014-03-17 19:20 Robin H. Johnson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1430328705.75fe8bf4d8eb452cbd866140f76e847666f30598.zerochaos@gentoo \
    --to=zerochaos@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox