> How does it determine that we're in a transaction? We just stopped > storing transactions in current->journal_info due to problems with > nested transactions and ext4 assuming that it can blind deref that. Oh, I was looking at an old tree and missed that. Well, someone needs to own it, it's just not just ext4 but could us. > > > Talking about the in transaction part - why do > > we drop inodes in the transaction in scrub, but not elsewhere? > > One example is: > > Alloc transaction -> lock rmap btree for repairs -> iscan filesystem to > find rmap records -> iget/irele. So this is just the magic empty transaction?