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!news.wildstar.net!news.ececs.uc.edu!newsfeeds.sol.net!news.maxwell.syr.edu!news.bbnplanet.com!cpk-news-hub1.bbnplanet.com!news.sprintlink.net!news-peer.sprintlink.net!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: Possible Problem in the Filesystem. Date: 3 Feb 1997 10:40:40 GMT Organization: Siemens AG Austria Lines: 60 Message-ID: <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:5291 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