Date: Sat, 22 Dec 2001 14:11:00 +0100 (MET) From: Adrian Steinmann <ast@marabu.ch> To: FreeBSD-gnats-submit@freebsd.org Subject: i386/33089: GENERIC bloat causes 'make world' to break (overfull floppy) Message-ID: <200112221311.fBMDB0d18746@rumori.com>
next in thread | raw e-mail | index | archive | help
>Number: 33089 >Category: i386 >Synopsis: GENERIC bloat causes 'make world' to break (overfull floppy) >Confidential: no >Severity: critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Dec 22 05:20:01 PST 2001 >Closed-Date: >Last-Modified: >Originator: Adrian Steinmann <ast@marabu.ch> >Release: FreeBSD 4.4-STYX i386 >Organization: Webgroup Consulting, Switzerland >Environment: System: FreeBSD rumori.com 4.4-STYX FreeBSD 4.4-STYX #2: Fri Aug 31 13:23:17 MEST 2001 root@rumori.com:/usr/src/sys/compile/RUM i386 >Description: Mid-December, 2001 on stable@freebsd.org, we see this thread: Re: Waaaarg, we just blew out the kernel again.. Not the first time, probably not the last time either ;-) >How-To-Repeat: make release of -stable branch, it will fail because the GENERIC floppy overflows (Mid-December 2001). >Fix: As I mentioned in stable@freebsd.org on Tue, 18 Dec 2001 in Message-Id: <200112181133.MAA11130@marabu.marabu.ch> ... a brighter future is indeed to modularize more drivers ... As a stopgap, we can try to compress GENERIC better: Here we have a patch to replace the gzip compression with 'bzip -1' in src/release/Makefile. It has been tested: sysinstall went fine on a custom-burnt CD made from the .../R/cdrom/disc1/ tree. BTW, these are the savings on kern.flp with the bzip-only loader: $ df -ik /mnt Filesystem 1K-blocks Used Avail Capacity iused ifree %iused Mounted on /dev/fd0a 1407 1385 8 99% 5 25 17% /mnt $ ls -l /mnt total 1297 drwxr-xr-x 2 root wheel 512 Dec 22 02:10 boot -r-xr-xr-x 1 root wheel 1320875 Dec 22 02:10 kernel.bz2 I have also checked that the loader can indeed load kernel.bz2 images. Since this change is quite intrusive, a second independent test should be done before commiting. Also, there might be a better place to add the LOADER_BZIP2_SUPPORT=YES LOADER_NO_GZIP_SUPPORT=YES flags than straight into WORLD_FLAGS. One might even consider changing the default in the loader's Makefile. *** release/Makefile 2001/12/02 10:31:28 1.536.2.62 --- release/Makefile 2001/12/21 22:05:38 *************** *** 51,56 **** --- 51,59 ---- #WORLD_FLAGS=-j4 #KERNEL_FLAGS=-j4 + # standardize on bzip instead of gzip to fit more GENERIC onto floppy + WORLD_FLAGS+= LOADER_BZIP2_SUPPORT=YES LOADER_NO_GZIP_SUPPORT=YES + # If you are using a local CVS repository with components stored in # non-standard modules, override these on the make commandline or # in the environment. *************** *** 636,655 **** @gzip -9 ${RD}/mfsfd/stand/help/*.hlp sh -e ${.CURDIR}/scripts/doFS.sh -s mfsroot ${RD} ${MNT} \ ${MFSSIZE} ${RD}/mfsfd ${MFSINODE} ${MFSLABEL} ! @gzip -9vc mfsroot > mfsroot.gz .if ${MACHINE} == "pc98" @sh -e ${.CURDIR}/scripts/doFS.sh ${RD}/floppies/mfsroot.flp \ ! ${RD} ${MNT} ${SMALLBOOTSIZE} mfsroot.gz \ ${BOOTINODE} ${SMALLBOOTLABEL} @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=kern-small FDSIZE=SMALL @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=kern .else @sh -e ${.CURDIR}/scripts/doFS.sh ${RD}/floppies/mfsroot.flp \ ! ${RD} ${MNT} ${BOOTSIZE} mfsroot.gz ${BOOTINODE} ${BOOTLABEL} @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=kern @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=boot FDSIZE=BIG .endif ! @rm mfsroot mfsroot.gz mfsroot.size @echo "Regular and MFS boot floppies made." touch release.8 --- 639,658 ---- @gzip -9 ${RD}/mfsfd/stand/help/*.hlp sh -e ${.CURDIR}/scripts/doFS.sh -s mfsroot ${RD} ${MNT} \ ${MFSSIZE} ${RD}/mfsfd ${MFSINODE} ${MFSLABEL} ! @bzip2 -1vc mfsroot > mfsroot.bz2 .if ${MACHINE} == "pc98" @sh -e ${.CURDIR}/scripts/doFS.sh ${RD}/floppies/mfsroot.flp \ ! ${RD} ${MNT} ${SMALLBOOTSIZE} mfsroot.bz2 \ ${BOOTINODE} ${SMALLBOOTLABEL} @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=kern-small FDSIZE=SMALL @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=kern .else @sh -e ${.CURDIR}/scripts/doFS.sh ${RD}/floppies/mfsroot.flp \ ! ${RD} ${MNT} ${BOOTSIZE} mfsroot.bz2 ${BOOTINODE} ${BOOTLABEL} @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=kern @cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=boot FDSIZE=BIG .endif ! @rm mfsroot mfsroot.bz2 mfsroot.size @echo "Regular and MFS boot floppies made." touch release.8 *************** *** 955,961 **** @./write_mfs_in_kernel ${RD}/image.${FSIMAGE}/kernel mfsroot @cp ${RD}/image.${FSIMAGE}/kernel ${RD}/kernels/MFSKERNEL.${FSIMAGE} .endif ! @gzip -9v ${RD}/image.${FSIMAGE}/kernel @rm -f ${RD}/floppies/${FSIMAGE}.flp .if defined(FDSIZE) && ${FDSIZE} == "BIG" sh -e ${.CURDIR}/scripts/doFS.sh ${RD}/floppies/${FSIMAGE}.flp \ --- 958,964 ---- @./write_mfs_in_kernel ${RD}/image.${FSIMAGE}/kernel mfsroot @cp ${RD}/image.${FSIMAGE}/kernel ${RD}/kernels/MFSKERNEL.${FSIMAGE} .endif ! @bzip2 -1v ${RD}/image.${FSIMAGE}/kernel @rm -f ${RD}/floppies/${FSIMAGE}.flp .if defined(FDSIZE) && ${FDSIZE} == "BIG" sh -e ${.CURDIR}/scripts/doFS.sh ${RD}/floppies/${FSIMAGE}.flp \ >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200112221311.fBMDB0d18746>