Re: 2.1.55: mount isofs blocksize 2048?

James Bottomley (James.Bottomley@columbiasc.ncr.com)
Mon, 15 Sep 1997 11:28:11 -0500


This is a multipart MIME message.

--==_Exmh_19041652980
Content-Type: text/plain; charset=us-ascii

davl@cistron.nl said:
> Did anything change in the isofs handling? The driver cm206 seems to
> be OK, a `dd if=/dev/cm206 | od -tc' gives expected results. Or
> should i have defined a new constant for the default block size in
> cm206.c since recently?

The iso9660 filesystem insists on using the correct block size (strange things
would result if it didn't). The problem is in the cm206 driver which doesn't
tell the kernel what block size it is expecting, so the kernel assumes 1024
incorrectly.

Try the attached patch for drivers/cdrom/cm206.c

James Bottomley

--==_Exmh_19041652980
Content-Type: text/plain ; name="cm206.diff"; charset=us-ascii
Content-Description: cm206.diff
Content-Disposition: attachment; filename="cm206.diff"

--- 1.1 1997/09/15 16:18:07
+++ cm206.c 1997/09/15 16:22:33
@@ -199,6 +199,8 @@
uch track, fsm[3], q0;
};

+static int cm206_blocksizes[1] = { 2048 };
+
struct cm206_struct {
ush intr_ds; /* data status read on last interrupt */
ush intr_ls; /* uart line status read on last interrupt*/
@@ -1287,6 +1289,7 @@
return -EIO;
}
blk_dev[MAJOR_NR].request_fn = DEVICE_REQUEST;
+ blksize_size[MAJOR_NR] = cm206_blocksizes;
read_ahead[MAJOR_NR] = 16; /* reads ahead what? */
init_bh(CM206_BH, cm206_bh);

--==_Exmh_19041652980--