Coda File System

Re: venus dying with a SIGBUS

From: Brett Lymn <blymn_at_baesystems.com.au>
Date: Wed, 27 Jun 2007 21:47:46 +0930
On Wed, Jun 27, 2007 at 09:41:43AM +0930, Brett Lymn wrote:
> 
> > If you can start the client and then attach gdb, gdb will trap the bus
> > error before it is passed on to the application. I wonder if the problem
> > is with the call to MarinerLog, or with a call made from that function.
> > 
> 

This is what I get:

Program received signal SIGBUS, Bus error.
0x00000000004305dd in MarinerLog (
    fmt=0x48d460 "cache::EndStatusWalk [%d]\n   [%d, %d, %d, %d] [%d, %d, %d] [%d, %d, %1.1f]%s") at mariner.cc:243
243     void MarinerLog(const char *fmt, ...) {
(gdb) bt
#0  0x00000000004305dd in MarinerLog (
    fmt=0x48d460 "cache::EndStatusWalk [%d]\n   [%d, %d, %d, %d] [%d, %d, %d] [%d, %d, %1.1f]%s") at mariner.cc:243
#1  0x00000000004293b9 in hdb::StatusWalk (this=0x508f3710, vp=0x611600, 
    TotalBytesToFetch=0x450a3f34, BytesFetched=<value optimized out>)
    at hdb.cc:664
#2  0x000000000042953b in hdb::Walk (this=0x508f3710, m=<value optimized out>, 
    local_id=0) at hdb.cc:893
#3  0x0000000000429e7b in HDBDaemon () at hdb_daemon.cc:121
#4  0x0000000000456ad0 in VprocPreamble (arg=<value optimized out>)
    at vproc.cc:148
#5  0x00007f7ffd204687 in Create_Process_Part2 () from /usr/pkg/lib/liblwp.so.2
#6  0x00007f7ffd205249 in L1 () from /usr/pkg/lib/liblwp.so.2
#7  0xfffefdfcfbfaf9f8 in ?? ()
Cannot access memory at address 0x450a4000

That crash will come up reliably if I just leave venus sitting there.
I tried actually using the the file system and it died in other
places.  It may be a coincidence but the functions all seem to be
functions with varargs.

OK - after more digging and debugging it looks like this may not be
coda's fault, looking at the machine code level there looks like there
may be a misaligned stack.  "let me get back to you on this" ;)

-- 
Brett Lymn
Received on 2007-06-27 08:20:31