Date: Wed, 9 Aug 1995 16:14:55 +0200 (MET DST) From: Thomas Graichen <graichen@sirius.physik.fu-berlin.de> To: hackers@freebsd.org Cc: ezk@cs.columbia.edu Subject: PLEASE help me to get broken FreeBSD automounter working PLEASE !!! Message-ID: <9508091414.AA24306@sirius.physik.fu-berlin.de>
next in thread | raw e-mail | index | archive | help
PLEASE. PLEASE, PLEASE ... can anybody help me out to get the "-type:=direct" option which is broken in FreeBSD working - PLEASE - i've now tried to debug it some hours but i'm at the end of my knowlegde - i'll now try to explain what i've done and hope that someone will take a deeper look into it - PLEASE the problem: if you try to use the "-type:=direct" option of the amd (which should do a "mount -t nfs localhost:/usr/share /a/localhost/usr/share" for the following amd-map - amd.test - this should be done if i access /share/something which will then be a link to /a/localhost/usr/share) - but it will not mount - instead i get an "Stale NFS handle" if i try to access /share/something - ok and now the result of some hours of debugging and trying - PLEASE read on ... what i did: (this is the striped down problem) * exporting for example /usr/share to the machine itself (/usr/share localhost) in /etc/exports * made the machine serving and clienting (mountd; nfsd -u -t 4; nfsiod -n 4) * made an amd.test map with the following line test type:=nfs;rfs:=/usr/share;rhost:=localhost * build /usr/src/usr.sbin/amd/amd with the following CFLAGS added CFLAGS=-static -g -DDEBUG note: here only CFLAGS= not CFLAGS+= - because this way we avoid possible set optimizations from other places (more later) * run this amd: ./amd -x all -D all -l amd.log /test amd.test -type:=direct * watch at amd.log - it says somethere something like: ... Aug 9 15:36:27 mordillo amd[253]/map: Trying mount of amd.test on /test fstype direct Aug 9 15:36:27 mordillo amd[253]/debug: backgrounding mount of "/test" Aug 9 15:36:27 mordillo amd[254]/debug: backgrounded Aug 9 15:36:27 mordillo amd[253]/debug: 6 new fds allocated; total is 6 Aug 9 15:36:27 mordillo amd[253]/debug: 0x62ffc bytes of memory allocated; total is 0x62ffc (99 pages) Aug 9 15:36:27 mordillo amd[253]/debug: Timing out automount points... Aug 9 15:36:27 mordillo amd[253]/debug: Next mount timeout in 300s Aug 9 15:36:27 mordillo amd[253]/debug: Select waits for 300s Aug 9 15:36:27 mordillo amd[254]/debug: mkdir(/test) Aug 9 15:36:27 mordillo amd[254]/debug: root_fh substitutes pid 253 Aug 9 15:36:27 mordillo amd[254]/info: defeating nfs window computation Aug 9 15:36:27 mordillo amd[254]/debug: /test fstype 2 (auto) flags 0 (intr,rw,port=1023,timeo=8,retrans=110,direct) Aug 9 15:37:08 mordillo amd[253]/debug: Process 254 exited with status 0 Aug 9 15:37:08 mordillo amd[253]/debug: select interrupted ... * i made the same at one of our dec alpha's (where amd with the "-type:=direct" option works fine) and it's exactly the same until the "select interrupted" - this interruption does'nt occur there - thus i think this is the problem * ok - i changed nfs_start.c: (therefore all optimization must be off) --- /cdrom/usr/src/usr.sbin/amd/amd/nfs_start.c Mon May 29 15:45:53 1995 +++ amd/nfs_start.c Wed Aug 9 15:11:16 1995 @@ -188,6 +188,7 @@ static serv_state run_rpc(P_void) { + int gdbwait=0; int dtbsz = max_fds + 1; int smask = sigblock(MASKED_SIGS); @@ -250,6 +251,8 @@ else dlog("Select waits for Godot"); #endif /* DEBUG */ + + while (gdbwait==0){} nsel = do_select(smask, dtbsz, &readfds, &tvv); * now i may start the amd - it stops there and waits until i attach to it with gdb - make a "set gdbwait=1" and can debug it (the pid for the attach is the one from the "select interrupted" line in the log - here 253) * thus i found that the interruption of that system-call happens at line 137 of nfs_start.c (in do_select - the line "(void) sigsetmask(smask);") * and now - can please someone better than me try to find out why the interruption happens here - many, many, many thanks in advance - i'll help you as much as i can t _______________________________________________________||_____________________ __|| Perfection is reached, not when there is no __|| thomas graichen longer anything to add, but when there __|| freie universitaet berlin is no longer anything to take away __|| fachbereich physik __|| - Antoine de Saint-Exupery - __|| ___________________________||____email: graichen@omega.physik.fu-berlin.de____
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9508091414.AA24306>