Dear Mr. Woodhouse, I've found a bug in the functions serving the BLKRRPART ioctl() in the 2.4 branch of MTD blkdevs. See the attached patch, I believe it contains a fix. My DiskOnChip was detected just fine, but when I flushed the original partition and issued a BLKRRPART, the device would report half its original size. If I did it again, it would report a quarter size... etc. Seems like the driver would re-init device size to a size denominated in 1k blocks, rather than sectors (512B). Attached are two simple proggies that I'm using in my partitioning scripts. Otherwise the driver seems to work just fine. Actually I also had to insert #ifndef CONFIG_MTD_CFI_GEOMETRY #define CONFIG_MTD_MAP_BANK_WIDTH_1 #endif at the beginning of $KERNEL/include/linux/mtd/map.h to make it compile. Seems like a dependency mismatch between drivers/mtd/chips/Config.in and the headers/code. I don't have a CFI MTD, but I do need drivers/mtd/chips/chipreg.o even for my DiskOnChip (now a generic NFTL device). Thanks for the great job you're doing on MTD :-) Frank Rysanek