Messages in this thread | | | From | Jakub Jelinek <> | Subject | Quota file format [2.3 issue] | Date | Tue, 13 Apr 1999 10:11:41 +0200 (CEST) |
| |
Hi!
I recently realized the format of quota.user and quota.group is both endian and archsize dependant. I think that's very wrong, because when you have a nicely portable ext2 filesystem on some disk and you want to move it to another computer, you loose if you have quotas on it (in the best case quotaon will not succeed and you won't have quotas on it, in the worst case it will succeed and do strange things, you'll probably loose all your quota information etc.). Sparc64 solves this by doing userland format translation in quota utilities, but that means it is not even possible to exchange quota enabled disks between 32bit and 64bit SPARC boxes. Now, what do you think about starting to use a new quota.user/quota.group format in 2.3, which will be both endian independent and will use 64bit values for timestamps in it (ie. change similar to old/new swap style)? It would probably not need many kernel changes in dquot.c. One problem is quota.user is completely header-less and in its whole size contains data which can have any value, so it is not easy to distinguish old format from some new one. The only thing which comes to my mind is file size: current kernel requires quota.user (group) to be non-zero size and some multiple of struct dqblk size. That's for sure divisible by 4. So what about if we attach a 10 byte header before the whole data lot, which will include some magic number and format version, so that's its extensible and then follow it by lets say little endian structures with 64bit times. That would mean the size of the file is always some multiple of 4 plus 2, hence the kernel and utilities can easily find out.
Comments?
Cheers, Jakub ___________________________________________________________________ Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz Administrator of SunSITE Czech Republic, MFF, Charles University ___________________________________________________________________ UltraLinux | http://ultra.linux.cz/ | http://ultra.penguin.cz/ Linux version 2.2.5 on a sparc64 machine (3958.37 BogoMips) ___________________________________________________________________
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |