SVN: geninitrd/trunk/geninitrd

glen glen at pld-linux.org
Wed Jul 1 06:22:01 CEST 2009


Author: glen
Date: Wed Jul  1 06:22:01 2009
New Revision: 10406

Modified:
   geninitrd/trunk/geninitrd
Log:
- ramdisk size should be calculated on (at least) unpacked directory

Modified: geninitrd/trunk/geninitrd
==============================================================================
--- geninitrd/trunk/geninitrd	(original)
+++ geninitrd/trunk/geninitrd	Wed Jul  1 06:22:01 2009
@@ -1262,12 +1262,6 @@
 debug "Creating $INITRDFS image $IMAGE"
 case "$INITRDFS" in
   ext2)
-	IMAGESIZE=$(du -ks $DESTDIR | awk '{print int(($1+1023+512)/1024)*1024}')
-	debug 	"ext2 image size: $IMAGESIZE ($DESTDIR)"
-	if [ "$IMAGESIZE" -gt 4096 ]; then
-		warn "Your image size is larger than 4096, Be sure to boot kernel with ramdisk_size=$IMAGESIZE!"
-	fi
-
 	dd if=/dev/zero of="$IMAGE" bs=1k count="$IMAGESIZE" 2> /dev/null
 	mke2fs -q -F -b 1024 -m 0 "$IMAGE" 2>/dev/null 1>&2
 	tune2fs -i 0 "$IMAGE" >/dev/null 2>&1
@@ -1286,11 +1280,6 @@
 	;;
   rom|romfs)
 	genromfs -f "$IMAGE" -d "$DESTDIR" -V "PLD initrd for kernel $kernel"
-	IMAGESIZE=$(stat -c %s $IMAGE | awk '{print int((($1/1024)+1023)/1024)*1024}')
-	debug "Image size for romfs: ${IMAGESIZE}KiB ($IMAGE)"
-	if [ "$IMAGESIZE" -gt 4096 ]; then
-		warn "Your image size is larger than 4096, Be sure to boot kernel with ramdisk_size=$IMAGESIZE!"
-	fi
 	;;
   cram|cramfs)
 	mkcramfs "$DESTDIR" "$IMAGE"
@@ -1302,6 +1291,15 @@
 	die "Filesystem $INITRDFS not supported by $PROGRAM"
 esac
 
+# TODO: figure out this automatically
+CONFIG_BLK_DEV_RAM_SIZE=4096
+
+IMAGESIZE=$(du -ks $DESTDIR | awk '{print int(($1+1023+512)/1024)*1024}')
+debug 	"image size: $IMAGESIZE KiB ($DESTDIR)"
+if [ "$IMAGESIZE" -gt $CONFIG_BLK_DEV_RAM_SIZE ]; then
+	warn "Your image size is larger than $CONFIG_BLK_DEV_RAM_SIZE, Be sure to boot kernel with ramdisk_size=$IMAGESIZE!"
+fi
+
 if ! is_no "$COMPRESS"; then
 	tmp=$(mktemp "$target".XXXXXX) || die "mktemp failed"
 	compressor=$(find_compressor "$COMPRESS")
@@ -1325,9 +1323,6 @@
 	cp -a "$IMAGE" "$target"
 fi
 
-size=$(stat -c %s $target | awk '{print int((($1/1024)+1023)/1024)*1024}')
-debug "Minimum RAM size that could be used for $target is: ramdisk_size=$size"
-
 # XXX. check if bootsplash can output data to tmp dir not directly to initramfs image.
 if is_yes "$BOOT_SPLASH"; then
 	initrd_gen_bootsplash "$target"


More information about the pld-cvs-commit mailing list