Hi, On Wed, 2005-03-09 at 13:28, Jan Kara wrote:
> Hmm. I see for example a place at jbd/commit.c, line 287 (which you > did not change in your patch) which does this and doesn't seem to be > protected against journal_unmap_buffer() (but maybe I miss something). > Not that I'd find that race probable but in theory... Indeed; I can't see why that wouldn't trigger (at least without the existing, low-risk journal_unmap_buffer() patch.) Andrew, I think we just go with that simple patch for now --- it catches the cases we actually see in testing. And rather than mess with temporary states where b_transaction goes NULL, I think the *correct* long-term fix is to hide those states using locking rather than by list tricks. Merging the bh_journal_head and bh_state locks really seems like the safe solution here, as the latter seems to be held nearly everywhere where we need protection against journal_put_journal_head() (and where it's not held --- as it wasn't in journal_unmap_buffer() --- it's a bug.) --Stephen - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

