All of lore.kernel.org
 help / color / mirror / Atom feed
From: Amir Goldstein <amir73il@gmail.com>
To: Niraj Kulkarni <kulkarniniraj14@gmail.com>
Cc: linux-ext4@vger.kernel.org
Subject: Re: Help required for Debugging JBD
Date: Wed, 22 Jun 2011 22:29:28 +0300	[thread overview]
Message-ID: <BANLkTimps6FyqNNUXFg2D6iAkFkLrKORMg@mail.gmail.com> (raw)
In-Reply-To: <4E02342E.4060203@gmail.com>

On Wed, Jun 22, 2011 at 9:27 PM, Niraj Kulkarni
<kulkarniniraj14@gmail.com> wrote:
> Hi,
>     Thanks for that SysRq tip. Now I am able to get some logs.
>
> From OOPS message, it showed an assertion failure on
>    J_ASSERT_JH(jh, jh->b_transaction == journal->j_committing_transaction);
>
> In my code, I've modified journal_commit_transaction such that it collects
> all buffer_head in a linked list, with their corresponding
> buffer numbers in other list.
>     I collect all buffers (data + metadata ) and push them all
> simultaneously and pass list of block numbers through a special ioctl call.
>
> The problem that I see in my code is that all buffers are handled in same
> way as all data buffers in original code. ie metadata buffers are
> getting unfiled instead of refiling.

I am not sure what you are saying, but it sounds bad.
data buffers and metadata buffers are handled very differently.

>
> I am attaching my patch. Please can you see and check if that indeed is
> problem here?
>

JBD is one complicated piece of work (to me), so even if I do find time
to review your patch, it's not going to be easy for me.

> Also what can be possible solution to it? separation of buffers in 2 list
> (data, metadata) and handling them separately?
>

Without looking at your patches, I have a lead for you.
Lookup the "Journal guided RAID resync" patches.
They do something similar to what you describe, for a different purpose,
but they also maintain a list of data blocks and yes, they deal with them
separately.
These patches have been already tested, so they used to be in good shape,
but are not uptodate.

Good luck,
Amir.

> (Being a kernel noob, my coding does not conform to any standard. So please
> point out any blunders I've committed in my patch)
>
> Thank You
> Niraj
>
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

      reply	other threads:[~2011-06-22 19:29 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-21 16:52 Help required for Debugging JBD Niraj Kulkarni
2011-06-22  6:43 ` Amir Goldstein
2011-06-22 18:27   ` Niraj Kulkarni
2011-06-22 19:29     ` Amir Goldstein [this message]

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=BANLkTimps6FyqNNUXFg2D6iAkFkLrKORMg@mail.gmail.com \
    --to=amir73il@gmail.com \
    --cc=kulkarniniraj14@gmail.com \
    --cc=linux-ext4@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.