From owner-freebsd-hackers@FreeBSD.ORG Fri Apr 2 01:52:35 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5EA3F1065678; Fri, 2 Apr 2010 01:52:35 +0000 (UTC) (envelope-from tajudd@gmail.com) Received: from mail-iw0-f182.google.com (mail-iw0-f182.google.com [209.85.223.182]) by mx1.freebsd.org (Postfix) with ESMTP id 1696E8FC08; Fri, 2 Apr 2010 01:52:34 +0000 (UTC) Received: by iwn12 with SMTP id 12so275836iwn.14 for ; Thu, 01 Apr 2010 18:52:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:cc:content-type; bh=2vPTwA1repMybap1p0RIBkiY7T7GZ5uYTOJ4bGkKzQs=; b=c7j+pEuMlU5sxcxGK2xG7SeiC2r7mK/M4RNpK5ybREfXfKKpqY9D3XS+uX/y1HhR6V IMI5C3yC/cAyGFbEugHQ3U7PbL/wqUhQg6a5aPO7CcKDUPCoF4fTQebQarGMdsnxIr1/ qz7TI4vi5O2eFfK2oQI5aBzRWRKpMoRYHedKo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=IIoX5DO6aLwLujkt/bEzM3Db4BBaLDaDxGE84zaiXterZeeDjbxVwNaqvfLfJDiSKG +rYFOpW1dmJ+CxaN6m/C5tZwGI/aJOvloi009sBkfgzmlncLQ3UYrqIfDWeSiouXkcyG Wgyv1EjOckyOkT79j/ZzTqyii8wJqN7nJ/o24= MIME-Version: 1.0 Received: by 10.231.146.147 with HTTP; Thu, 1 Apr 2010 18:52:34 -0700 (PDT) In-Reply-To: References: <201004010838.38794.jhb@freebsd.org> Date: Thu, 1 Apr 2010 19:52:34 -0600 Received: by 10.231.174.137 with SMTP id t9mr514388ibz.98.1270173154506; Thu, 01 Apr 2010 18:52:34 -0700 (PDT) Message-ID: From: Tim Judd To: John Baldwin Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-hackers@freebsd.org Subject: Re: Fwd: mkuzip and/or geom_uzip changes? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Apr 2010 01:52:35 -0000 On 4/1/10, Tim Judd wrote: > On 4/1/10, John Baldwin wrote: >> On Wednesday 31 March 2010 6:32:09 pm Tim Judd wrote: >>> Hi All, >>> >>> Just starting to see if I can find other reports. You all probably >>> have had the "more than one pair of eyes looking at a thing is better >>> than my eyes alone." This is why I'm writing now, as I'm starting the >>> discovery. >>> >>> Let me background this a little bit. I only started looking into this >>> because mkuzip and it's counterpart, geom_uzip are throwing errors on >>> FreeBSD8 i386 >>> >>> >>> scenario (/etc/src.conf in effect, removing *LOTS* of stuff with knobs): >>> make DESTDIR=/home/small8 installworld installkernel distribution >>> mv /home/small8/boot /home/small8-boot/ >>> makefs -t ffs /home/small8/usr.img /home/small8/usr/ >>> mkuzip -o /home/small8/usr.uzip /home/small8/usr.img >>> [*] >>> chflags -R noschg /home/small8/usr/* >>> rm -rf /home/small8/usr/* /home/small8/usr.img >>> ee /home/small8/etc/rc.d/mountcritlocal >>> [**] >>> makefs -t ffs /home/small8-boot/mfsroot /home/small8/ >>> gzip --best /home/small8-boot/mfsroot >>> ee /home/small8-boot/boot/loader.conf >>> [***] >>> rm /home/small8-boot/boot/kernel/*.symbols >>> gzip --best /home/small8-boot/boot/kernel/kernel >>> mkisofs -U -J -r -V "FreeBSD8" -b boot/cdboot -no-emul-boot >>> -iso-level 4 -o /home/small8.iso /home/small8-boot/ >>> >>> >>> [*]: mkuzip inserts a script header that is broken. module name it's >>> searching for may have been renamed? >>> [**]: Edited mountcritlocal to mount the usr.uzip file as by using the >>> above script header, throws errors >>> [***]: added zlib and geom_uzip modules to load to the boot image, to >>> satisfy the script header's requirements. >>> >>> OK, the above scenario creates about a 33MB usr.uzip, and a 68MB iso. >>> Small enough to apparently fit into the undocumented 50 or 100MB size >>> limit of mfs_root module >> >> BTW, you can raise this limit by changing NKPT. >> >>> The problem: >>> mkuzip generates a few lines as a script in the head of the >>> resulting *.uzip file. Two problems... >>> 1) the module it queries for is geom_uzip (kldstat -m $m), but >>> FreeBSD8 names the geom_uzip module (i guess, internally) as g_uzip. >>> mkuzip's generated image will never find the module if they're not >>> named the same. >> >> It is g_uzip even in 7: >> >> DECLARE_GEOM_CLASS(g_uzip_class, g_uzip); >> MODULE_DEPEND(g_uzip, zlib, 1, 1, 1); >> >> This has probably just been broken from the start. If it used 'kldstat >> -n' >> then it might work. Well, it probably works (modulo a warning) by >> accident >> as >> it doesn't hurt to kldload an already-loaded module. Note though that it >> assumes the raw usr.img is an ISO image, not a UFS filesystem. >> >>> 2) even with geom_uzip module and it's dependency zlib loaded, i don't >>> get a mdconfig node '/dev/md?.uzip' to appear. >>> >>> It's been forever since I touched uzip, so I have to ask. >> >> Do you have a md0 device at all? I think you want to hack the script to >> do >> something like this: >> >> disk=`mdconfig -af /path/to/usr.img` >> mount -r /dev/$disk.uzip /usr >> >> -- >> John Baldwin >> > > > > booted single-user > md0 is the mfs_root > > here is the manual attachment of an mdconfig... > # mdconfig -af /usr.uzip > WARNING: opening backing store: /usr.uzip readonly > md1.uzip: block size (24) should be a multiple of 512. > md1 > # ls /dev/md1* > /dev/md1 > # > Forgot the kldstat, which was obviously omitted # kldstat Id Refs Address Size Name 1 5 0xc0400000 b6e060 kernel 2 1 0xc0f6f000 3ffc geom_uzip.ko 3 2 -xc0f73000 ac20 zlib.ko