9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@9fans.net
Subject: Re: [9fans] fossil 'sync' lockup?
Date: Sun,  6 Sep 2009 11:54:45 -0400	[thread overview]
Message-ID: <dd2fe088386e0d018a2866f374be4eba@quanstro.net> (raw)
In-Reply-To: <f75780240909060800x3dc6e994yaef91c8d34e57b4b@mail.gmail.com>

> 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	other threads:[~2009-09-06 15:54 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-06 15:00 Venkatesh Srinivas
2009-09-06 15:54 ` erik quanstrom [this message]
2009-09-06 16:19   ` Venkatesh Srinivas
2009-09-07 13:54     ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=dd2fe088386e0d018a2866f374be4eba@quanstro.net \
    --to=quanstro@quanstro.net \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).