Messages in this thread | | | From | Peter Chubb <> | Date | Tue, 25 Jun 2002 11:04:00 +1000 | Subject | [PATCH] new large-block-device patch available |
| |
Hi folks, there's a new version of the large block device patch at http://www.gelato.unsw.edu.au/patches/2.5.24-lbd-patch
Barring errors, this patch allows use of arbitrarily sized devices on 64 bit platforms, and, with a configuration option, allows up to 16Tb devices on 32bit platforms.
The bulk of the patch is fixing the various SCSI driver's magic to convert a size to a CHS.
The important bits are: -- disc sizes kept as sector_t not int -- struct request takes a sector_t not a long as the block number to transfer -- sector_t is defined as unsigned long for most platforms; as u64 iff CONFIG_LBD is defined -- the BLKGETSIZE iotcl returns EFBIG if the size cannot be represented in a long (maybe that should be EOVERFLOW same as lseek?) -- loop device transfer functions now in terms of sector_t -- loop device refuses to attach to a file or device that is too large (instead of silently failing) -- casts to unsigned long long and appropriate printf formats where sector offsets are given to printk() -- New macro sector_div (based on div64()) to do (possibly 64-bit) division and remainder where it's necessary (only for printing the size of a partition converted to MB) -- Modifications to the scsi disc handler to use 16-byte commands iff the blocknumber is out-of-range for a 10-byte command.
Courtesy of OSDL, I'm currently testing this patch on ia64 and ia32. If other people with enormous discs could test it too, and tell me what they find, that'd be extremely helpful.
You may need fixed versions of the various filesystem tools, too. JFSutils 1.0.20 has been fixed, I believe; if you need instead a patched 1.0.19 you can fetch it from http://gelato.unsw.edu.au/debian
Likewise, there is a patched e2fsprogs and reiserfsprogs there.
-- Dr Peter Chubb peterc@gelato.unsw.edu.au You are lost in a maze of BitKeeper repositories, all almost the same. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |