Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.ecn.uoknor.edu!feed1.news.erols.com!news.bbnplanet.com!cpk-news-hub1.bbnplanet.com!EU.net!Austria.EU.net!siemens.at!pc2213.gud.siemens.co.at!not-for-mail From: salb@pc2213.gud.siemens.co.at (Bernd Salbrechter) Newsgroups: comp.unix.bsd.netbsd.misc Subject: Re: Possible Problem in the Filesystem. Date: 7 Feb 1997 08:35:48 GMT Organization: Siemens AG Austria Lines: 61 Message-ID: <5deph4$124@zwei.siemens.at> References: <5d4fb8$1j4@zwei.siemens.at> NNTP-Posting-Host: firix.siemens.at X-Newsreader: TIN [UNIX 1.3 950520BETA PL0] Xref: euryale.cc.adfa.oz.au comp.unix.bsd.netbsd.misc:5314 Bernd Salbrechter (salb@pc2213.gud.siemens.co.at) wrote: : If I stack two "union_mounts" on one filesystem the system hangs, if I try : to access contents of the "union_mount"-point. : : Here are the details, which I think they are interesting: : : 1.) I have upgrade my i486 box from NetBSD-1.1 to NetBSD-1.2 and build a : customized kernel, with the union filesystem included. (Btw. : congratulations I have never done a upgrade, which works so perfectly : than that. I did one pass to merge you new GENERIC* with my old CUSTOM : configuartionfile, compile and install it and reboot -- work :-). : : 2.) The not working sequence: : $ mount -t ffs /dev/wd1e /test : $ cd /test : $ mkdir extract port compile distfiles pkg extract/NetBSD-1.2 : $ (cd extract/NetBSD-1.2; extract_all_NetBSD_sources) : $ mount -t union -o -b /test/extract /test/port : $ mount -t union -o -b /test/port /test/compile : $ ls -F /test/compile : --> System hangs. : : 3.) A working sequence: : $ mount -t ffs /dev/wd1e /test1 : $ mount -t ffs /dev/wd1f /test2 : $ mount -t ffs /dev/wd1g /test3 : $ mkdir /test1/extract /test2/port /test3/compile : $ mkdir /test1/extract/NetBSD-1.2 : $ mount -t union -o -b /test1/extract /test2/port : $ mount -t union -o -b /test2/port /test3/compile : $ ls -F /test1/extract : > NetBSD-1.2/ : $ ls -F /test2/port : > NetBSD-1.2/ : $ ls -F /test3/compile : > NetBSD-1.2/ : : 4.) A other not working situation continue last sequence (3.): : $ umount /test3/compile : $ ls -F /test1/compile : > NetBSD-1.2/ : --> System hangs. : : I didn't have done extensive test of hanging situations, to avoid : damages on my filesystems. But if you really need some tests I will : do it on a spare disk. : : If you are interest, why I want that kind of mounts - a kind of a : configuration management system! If I port a package to NetBSD I : create a directory in "/test2/port/..." and extract the package : to "/test1/extract/..." (this will need some work in "port.mk") and : try to compile it in "/test3/compile/...". All changes I have to make : will be done in "/test2/port/... ". This will result in a clean : sourcetree and a ported sourcetree to get the context-diff for "patch". : : The next steps I am thinking of are to use symbolic links in : "test2/port/..." to an RCS-tree and stack the "test2/port/..." in an : intreagtion and several architecture and or person specific directories. : Using RSC to push up the changes to the integrationlevel. : : --Bernd