On Wed, 2012-06-13 at 19:44 +0000, Arnd Bergmann wrote:
I think using the inode number is a reasonable fit. Using the
inode number of the parent directory might be more appropriate
but it breaks with hard links and cross-directory renames (we
must not use the same LBA with conflicting context numbers,
or flush the old context inbetween).
I would put it this way.
1. contex = inode number for data blocks.
2. context = parent directory's inode number for stat data (times,
permissions, etc) blocks and directory entry blocks. Should help things
like readdir and readdir + stat. Besides, this stuff tend to change more
often than the data, so mixing it with the data in the same eraseblock
is not smart.
3. context = parent inode number for all the stuff belonging to xattrs.
We do something similar in UBIFS.
--
Best Regards,
Artem Bityutskiy