@ -1313,7 +1313,7 @@ int jbd2_journal_dirty_metadata(handle_t *handle, struct buffer_head *bh)
journal - > j_running_transaction ) ) {
printk ( KERN_ERR " JBD2: %s: "
" jh->b_transaction (%llu, %p, %u) != "
" journal->j_running_transaction (%p, %u) " ,
" journal->j_running_transaction (%p, %u) \n " ,
journal - > j_devname ,
( unsigned long long ) bh - > b_blocknr ,
jh - > b_transaction ,
@ -1336,30 +1336,25 @@ int jbd2_journal_dirty_metadata(handle_t *handle, struct buffer_head *bh)
*/
if ( jh - > b_transaction ! = transaction ) {
JBUFFER_TRACE ( jh , " already on other transaction " ) ;
if ( unlikely ( jh - > b_transaction ! =
journal - > j_committing_transaction ) ) {
printk ( KERN_ERR " JBD2: %s: "
" jh->b_transaction (%llu, %p, %u) != "
" journal->j_committing_transaction (%p, %u) " ,
if ( unlikely ( ( ( jh - > b_transaction ! =
journal - > j_committing_transaction ) ) | |
( jh - > b_next_transaction ! = transaction ) ) ) {
printk ( KERN_ERR " jbd2_journal_dirty_metadata: %s: "
" bad jh for block %llu: "
" transaction (%p, %u), "
" jh->b_transaction (%p, %u), "
" jh->b_next_transaction (%p, %u), jlist %u \n " ,
journal - > j_devname ,
( unsigned long long ) bh - > b_blocknr ,
transaction , transaction - > t_tid ,
jh - > b_transaction ,
jh - > b_transaction ? jh - > b_transaction - > t_tid : 0 ,
journal - > j_committing_transaction ,
journal - > j_committing_transaction ?
journal - > j_committing_transaction - > t_tid : 0 ) ;
ret = - EINVAL ;
}
if ( unlikely ( jh - > b_next_transaction ! = transaction ) ) {
printk ( KERN_ERR " JBD2: %s: "
" jh->b_next_transaction (%llu, %p, %u) != "
" transaction (%p, %u) " ,
journal - > j_devname ,
( unsigned long long ) bh - > b_blocknr ,
jh - > b_transaction ?
jh - > b_transaction - > t_tid : 0 ,
jh - > b_next_transaction ,
jh - > b_next_transaction ?
jh - > b_next_transaction - > t_tid : 0 ,
transaction , transaction - > t_tid ) ;
jh - > b_jlist ) ;
WARN_ON ( 1 ) ;
ret = - EINVAL ;
}
/* And this case is illegal: we can't reuse another