(Illustration by Gaich Muramatsu)
Hello Jan, One of the most valuable features of Coda is its global file name space. Coda was one of the first file systems to implement this, OpenAFS followed the suit a bit later (I think DCE/DFS was first but it was not opensource). Big kudos to you Jan who implemented globality (in the form of realms). Now I am studying the data structures being used in the corresponding code and your guidance would be invaluable. My impression is that the RealmId item (being passed around as a reference to a realm and also for building inode numbers in dir_DirEntry2VDirent() in coda-src/dir/dirbody.c) could be replaced by a direct use of the pointer to the realm object. The pointer seems to have a persistent unique value during Venus cache life time, as well as the RealmId (unless I misunderstand the usage of RVM). It seems in other words to have the same scope of validity as RealmId and could be possibly used directly, skipping the lookup associated with the mapping from RealmId to the realm object. I appreciate if you would explain the rationale behind relying to this additional identifier. Regards, RuneReceived on 2014-08-05 07:27:24