> I executed the fossil 'sync' command when my terminal was under
> moderate I/O load earlier today. Fossil seems to have locked up. Has
> anyone seen anything like this?
> 
> I have a dump of the first 256mb of kernel memory and all physical
> memory. Are there any structures that are kept at reasonably constant
> places in memory, so that I can start trawling them to see what fossil
> was doing when it died?

how did you generate this dump?  i've never done that.

the short answer is that any non-automatic variables have
fixed address.  for example, the process table is here
port/proc.c:/^procalloc in .arena

but given such an image, i can't think of a convienent way of
doing this with existing tools.

supposing that i haven't missed an easy way to do this,
one strategy for getting where you want to be is to write
a small program that can convert the raw dump into
snap(6) format.  then snapfs can be used to debug as
usual.

unfortunately one would first need to teach acid where
things are in your dump so you can find the process table,
and figure out where where the fossil procs are and
find the segments which belong to them.  the acid kernel
library should be of some help.

i hope i'm missing something.

- erik

Reply via email to