Block sizes < 512 bytes

Robert Norris (box@box.halls.monash.edu.au)
Mon, 06 Sep 1999 00:44:32 +1000


Greetings.

I've been working on a filesystem driver for old CBM1541 disks (and images),
mainly because I have a collection of some 3000+ disks.

Tthe filesystem on these disks is structured into 683 blocks of 256 bytes
each. The 'superblock' is on block 358.

In my first attempt, part of the code in read_super() looked like this:

set_blocksize(s->s_dev, 256);
bh = bread(s->s_dev, 258, 256);

After testing and enjoying the panic that ensued, I did some hunting and
discovered in fs/buffer.c that the block size must >= 512 bytes.

Why is this? I admit I'm unfamiliar with most of the filesystem code, but
it seems a little silly to limit the block size in this (seemingly
arbitrary) way.

Am I doing this wrong? Is there another way to acheive what I want?

Regards,
Rob.

-
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/