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>
