On 10/03/2013 06:28 PM, Andreas Dilger wrote: > > It would also be possible to have a completely contention-free orphan > inode list by only generating the on-disk orphan linked list in a > pre-commit callback hook from an efficient in-memory list. That would > allow the common "add to orphan list; do something; remove from list" > operations within a single transaction to run with minimal contention, > and only the few rare cases of operations that exceed the lifetime of > a single transaction would need to modify the on-disk list. > > For example, a per-cpu list would be quite efficient, or a hash table. > Then, a jbd2 callback run before the transaction commits could modify > the requisite inodes and superblock. All of those inodes are already > (by definition) part of the transaction, so it won't add new buffers > of the transaction. > > I'm not necessarily against the current patch, just thinking aloud about > how it might be improved further. > > Cheers, Andreas > Thanks again for the suggestion. I'll rework this patch first and look into this possibility next. Thanks, Mak. -- 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