A Debian bug report alerted me to the fact that hfsplus is not using enough bits for some sector calculations. hfsplus_get_block() does: u32 ablock, dblock, mask; ... map_bh(bh_result, sb, (dblock << HFSPLUS_SB(sb).fs_shift) + HFSPLUS_SB(sb).blockoffset + (iblock & mask)); which results in overflow when the sector number is >2^32. Now it might be sufficient to change the last line to: map_bh(bh_result, sb, ((sector_t)dblock << HFSPLUS_SB(sb).fs_shift) + HFSPLUS_SB(sb).blockoffset + (iblock & mask)); but there may be many other places where u32 must be changed to sector_t. For Debian's stable release, I'm intending to prevent mounting volumes larger than 2^32 sectors (2TB). Is anyone interested in fixing this properly or should I submit the same change for mainline? Ben. -- Ben Hutchings To err is human; to really foul things up requires a computer.