Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Jul 1999 13:23:05 -0700 (PDT)
From:      Doug <Doug@gorean.org>
To:        peter@netplex.com.au
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: more amd hangs
Message-ID:  <Pine.BSF.4.05.9907121315400.6719-100000@dt054n86.san.rr.com>
In-Reply-To: <Pine.BSF.4.05.9907091142410.6982-100000@dt054n86.san.rr.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 9 Jul 1999, Doug wrote:

> 	In my continuing efforts to get this freebsd box into shape for
> web hosting at my company (where it relies exclusively on NFS for
> retrieving customer data) I've been making progress thanks to some recent
> commits by Peter. Now I can run the heavy duty NFS access script and it
> completes its mission about 2 out of 3 times. Also, now when it fails it
> doesn't lock the whole box, just amd. Still not where I want it to be, but
> it is definitely big progress. :)
> 
> 	What happens when it hangs is that amd becomes totally wedged. I
> cannot do 'df' or 'ls /' at all (the amd mountpoints are on /), and
> killing the amd process is no help; I have to reboot the box. Ktrace'ing
> amd at this point gets me nothing. The ktrace process just dies and leaves
> a 0 byte ktrace.out file. (BTW, I am also still having problems with
> ktrace exiting while the process is still running when I actually get it
> to attach, if anyone cares.) 

	Still working on this problem. Thanks to some suggestions I got
off the list, I have compiled libc and amd with debugging symbols. I
wedged the box the same way I have previously, by running a perl script
that automounts a directory, reads 250 files in that directory, automounts
another one, etc. for a total of 68 directories. 

	Using today's current this time amd wedged in the following state
according to top:

  155 root        3   0   736K   520K siobi  1   0:21  0.00%  0.00% amd

Here is the trace after killing it:

Core was generated by `amd'.
Program terminated with signal 3, Quit.
#0  0x8063dc4 in open ()
(gdb) where
#0  0x8063dc4 in open ()
#1  0x806b5c3 in vsyslog (pri=6, fmt=0x809279a "%s", ap=0xbfbfd2c0 "")
    at /usr/src/lib/libc/../libc/gen/syslog.c:262
#2  0x806b2c2 in syslog (pri=6, fmt=0x809279a "%s")
    at /usr/src/lib/libc/../libc/gen/syslog.c:130
#3  0x805a3d8 in real_plog (lvl=6,
    fmt=0x8091440 "prime_nfs_fhandle_cache: NFS version %d",
    vargs=0xbfbfdafc "\002")
    at
/usr/src/usr.sbin/amd/libamu/../../../contrib/amd/libamu/xutil.c:443
#4  0x805a2be in plog (lvl=16,
    fmt=0x8091440 "prime_nfs_fhandle_cache: NFS version %d")
    at
/usr/src/usr.sbin/amd/libamu/../../../contrib/amd/libamu/xutil.c:383
#5  0x805323a in prime_nfs_fhandle_cache (path=0x80cb287
"/Space/209.132.66",
    fs=0x80b5640, fhbuf=0xbfbfdb34, wchan=0x80b57c0)
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/ops_nfs.c:262
#6  0x805363f in nfs_init (mf=0x80b57c0)
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/ops_nfs.c:542
#7  0x804a7f9 in amfs_auto_bgmount (cp=0x80c8600, mpe=0)
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/amfs_auto.c:676
#8  0x804a4bc in amfs_auto_retry (rc=0, term=0, closure=0x80c8600)
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/amfs_auto.c:402
#9  0x8055212 in do_task_notify ()
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/sched.c:239
#10 0x804df6d in softclock ()
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/clock.c:212
#11 0x8052583 in run_rpc ()
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/nfs_start.c:253
#12 0x80527e6 in mount_automounter (ppid=154)
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/nfs_start.c:467
#13 0x804a109 in main (argc=4, argv=0xbfbfddec)
    at /usr/src/usr.sbin/amd/amd/../../../contrib/amd/amd/amd.c:544
#14 0x80480e9 in _start ()

I'm going to work on attaching it with gdb while it's locked next. 

	Also based on advice I've made some changes to my configuration
files, although it didn't help the 'ls /' or 'df' problems.

Thanks for any help,

Doug
-- 
On account of being a democracy and run by the people, we are the only
nation in the world that has to keep a government four years, no matter
what it does.
                -- Will Rogers


[ global ]
# Only search for maps of this type
map_type =               file

# Search this path for maps
search_path =            /etc

# Use this directory for amd's private mount points
auto_dir =               /usr/amd/realmounts

# Log all activity to syslog (daemon)
log_file =              syslog:local7
log_options =            all

# Check /etc/hosts for hostnames
normalize_hostnames =   yes

# Lock the amd process into memory, improves perf.
plock =                 yes

# Use the special /default entry in maps
selectors_on_default =   yes

# DEFINE AN AMD MOUNT POINT
[ /usr/amd/Interfaces ]
map_name =              amd.Interfaces

[ /usr/amd/Hold ]
map_name =              amd.Hold


 32# more /etc/amd.Interfaces

/defaults type:=nfs;opts:=rw,vers=2,intr,proto=udp,noconn

209.132.4       netapp01:/vol/Space/209.132.4
*               rhost:=IP${key};rfs:=/Space/${key}




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.05.9907121315400.6719-100000>