Date: Mon, 25 Jan 2010 23:32:58 +0100 From: Christof Schulze <christof.schulze@gmx.com> To: freebsd-current@freebsd.org Subject: Re: "tinderbox" using stacked unionfs Message-ID: <201001252333.08045.christof.schulze@gmx.com> In-Reply-To: <201001252039.16220.naylor.b.david@gmail.com> References: <201001231233.18832.naylor.b.david@gmail.com> <201001252039.16220.naylor.b.david@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart8493944.lMmWUNsqzN Content-Type: multipart/mixed; boundary="Boundary-01=_hwhXLcMfEjAV8bv" Content-Transfer-Encoding: 7bit --Boundary-01=_hwhXLcMfEjAV8bv Content-Type: Text/Plain; charset="iso-8859-6" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hi David, I like your unionfs idea. Noticing the tinderbox limitation I moved on my z= fs=20 based system to a jail I set up using a self written script. It is currentl= y=20 customized to my environment but still might prove useful for quick setup o= f=20 jails. it handles=20 * fs creation=20 * putting the proper data on them * routing setup (since I use a laptop and my active nic changes from cable- bound to wireless) Since this both contributes to the topic of building software in a separate= =20 environment, I share it here.=20 Regards Christof Am Montag 25 Januar 2010 19:39:11 schrieb David Naylor: > On Saturday 23 January 2010 12:33:14 David Naylor wrote: > > Hi, > > > > I have been experimenting with using unionfs to build ports in a > > "tinderbox" environment. This avoids having to remove and extract fil= es > > for the build of each port and it allows the discovery of > > installed/modified files by the port. > > > > Please see attached for a (updated) shell script that handles all the > > "heavy lifting" of building ports. Of importance is LOCALBASE and > > BUILDDIR. If you want to override LOCALBASE please use `env` as the > > script needs to know about it. BUILDDIR (/usr/build by default) is > > where the script stores everything (including PKG_DBDIR). >=20 > Please see attached for an updated script. This no longer uses `sort -u` > but removed duplicates while maintaining dependency order. (See below) >=20 > > # env LOCALBASE=3D/tmp/local BUILDDIR=3D/tmp/build ./ports-union-builde= r.sh > > > > Will install x11/xorg without affecting already installed systems. > > > > CURRENT STATUS: > > - *** Currently kernel stack size is too small and the above will > > trigger a stack overflow. Recompiling a kernel with ``options > > KSTACK_PAGES=3D32'' will alleviate that problem. >=20 > In building xorg there were at least 207 stacked unionfs (206 ro, 1 rw, a= ll > noatime). >=20 > > - Currently there is a build problem that affects eggdbus/polkit > > (possibly others) thus preventing x11/xorg from being built. I will > > investigate the cause (help welcome). >=20 > This is due to not mounting the dependencies in the correct order. If > dependency 'a' modified file from dependency 'b' then mounting in order > 'a', 'b' will result in those changes being lost as the original files > from 'b' will supersede 'a'. The dependencies need to be mounted 'b', > 'a'. >=20 > This has been fixed although may cause a problem if multiple "independent" > ports modify the same file. This is a detectable problem. >=20 > > - I highly recommend running this in a chroot > > - NO WARRANTY, SLIPPERY WHEN WET, EATS CHILDREN. >=20 > - I am experiencing process freeze (anything involved in the directories > that are unionfs). Any way that I can figure out the problem? I can run > a kernel will full debug capability. > - mtree does not behave well with unionfs and consumed a fair amount of > resources: > # /usr/sbin/mtree -U -f /usr/ports/Templates/BSD.local.dist -d -e -p > /usr/local/ > took a long time (many minutes) to complete. >=20 > > Since the script doesn't complete a full build I am unable to compare t= he > > build speeds (thus the overhead of unionfs) but here are some partial > > results (with FORCE_MAKE_JOBS and quad core): >=20 > The script is now able to complete building but not at once due to process > freezing. >=20 > Please help with debugging the process freezing. (There is a LOR I have > reported for unionfs: kern/141950) >=20 > Regards >=20 > David >=20 =2D-=20 () ascii ribbon campaign - against html e-mail=20 /\ www.asciiribbon.org - against proprietary attachments --Boundary-01=_hwhXLcMfEjAV8bv-- --nextPart8493944.lMmWUNsqzN Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.13 (FreeBSD) iEYEABECAAYFAkteHCIACgkQpZfyPAmdZJnTqgCglEYg/Eb5a8aVJ6SBfs0PPN1O 8ToAoK7AxTAsBVMEMxVrD4nJ8wkmF6Kt =uDzN -----END PGP SIGNATURE----- --nextPart8493944.lMmWUNsqzN--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001252333.08045.christof.schulze>