Ted, any comment on this patch? Thanks, Curt On Thu, Sep 17, 2009 at 2:55 PM, Curt Wohlgemuth <curtw@xxxxxxxxxx> wrote: > This patch cleans up ext4_dirty_inode(); it's attempt to detect non-matching > transactions can never be executed. > > Signed-off-by: Curt Wohlgemuth <curtw@xxxxxxxxxx> > --- > > If 'current_handle' is non-NULL, then ext4_start_journal() will return the > same handle with it's h_ref count incremented, and the h_transaction > pointers will be the same. > > diff -uprN orig/fs/ext4/inode.c new/fs/ext4/inode.c > --- orig/fs/ext4/inode.c 2009-09-17 13:59:48.000000000 -0700 > +++ new/fs/ext4/inode.c 2009-09-17 14:14:43.000000000 -0700 > @@ -5379,24 +5379,13 @@ void ext4_dirty_inode(struct inode *inod > handle_t *current_handle = ext4_journal_current_handle(); > handle_t *handle; > > - if (!ext4_handle_valid(current_handle)) { > - ext4_mark_inode_dirty(current_handle, inode); > - return; > - } > - > handle = ext4_journal_start(inode, 2); > if (IS_ERR(handle)) > goto out; > - if (current_handle && > - current_handle->h_transaction != handle->h_transaction) { > - /* This task has a transaction open against a different fs */ > - printk(KERN_EMERG "%s: transactions do not match!\n", > - __func__); > - } else { > - jbd_debug(5, "marking dirty. outer handle=%p\n", > - current_handle); > - ext4_mark_inode_dirty(handle, inode); > - } > + > + jbd_debug(5, "marking dirty. outer handle=%p\n", current_handle); > + ext4_mark_inode_dirty(handle, inode); > + > ext4_journal_stop(handle); > out: > return; > -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html