Date: Sat, 26 Apr 2003 23:20:09 +0930 (CST) From: "Daniel O'Connor" <doconnor@gsoft.com.au> To: <freebsd-stable@freebsd.org> Subject: msdosfs vs 250Gb hard disk Message-ID: <1093.128.39.153.23.1051365009.squirrel@cain.gsoft.com.au>
next in thread | raw e-mail | index | archive | help
I am attempting to utilise a 250Gb Maxtor external Firewire drive. To obtain maximum portability I would prefer to format it as FAT32 (it comes formatted that way) - that way Windows, Linux and FreeBSD machines can access it. Unfortunately FreeBSD doesn't grok really large FAT32 partitions :( When I attempt to mount it, I get -> mountmsdosfs(): disk too big, sorry The code in question.. if (pmp->pm_HugeSectors > 0xffffffff / (pmp->pm_BytesPerSec / sizeof(struct direntry)) + 1) { /* * We cannot deal currently with this size of disk * due to fileid limitations (see msdosfs_getattr and * msdosfs_readdir) */ error = EINVAL; printf("mountmsdosfs(): disk too big, sorry\n"); goto error_exit; } So, I am guessing that since fileid is only 32 bits wide the macro which generates fileid values for FAT will generate too large a number to be stored. Does anyone have an idea how I can work around or fix this problem? FS internals are not my cup of tea :) I think I will just resort to splitting the disk in two, but it would be useful to be able to use the disk as a big blob. (The wastage wouldn't be too bad as it will almost certainly end up with a few big files on it) Thanks in advance :) --- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1093.128.39.153.23.1051365009.squirrel>