On Sun, 2008-08-31 at 17:52 +0300, Artem Bityutskiy wrote: > From: Artem Bityutskiy <Artem.Bityutskiy@xxxxxxxxx> > > UBIFS stores 16-bit UUID in the superblock, and it is a good > idea to return part of it in 'f_fsid' filed of kstatfs structure. I think you mean a 16-byte UUID, not 16-bit? > + memcpy(&buf->f_fsid, c->uuid, sizeof(__kernel_fsid_t)); For btrfs I xor the first 64 bits with the second 64 bits, and put _that_ into f_fsid. You're just putting the first 64 bits in and ignoring the second 64 bits. Neither is really _better_ than the other; you just alter the circumstances in which you get collisions. But I suppose we might as well be consistent about how we do it? (Actually I XOR in the root object ID for the subvol too, but you don't need to worry about that). Alternatively, there's space in the struct statfs to export a couple more uint32_ts, and thus the _whole_ of the uuid. Perhaps we should do that? -- David Woodhouse Open Source Technology Centre David.Woodhouse@xxxxxxxxx Intel Corporation -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html