Problems with md driver

Martin von Loewis (martin@mira.isdn.cs.tu-berlin.de)
Fri, 28 Jun 1996 15:31:20 +0100 (GMT+0100)


I'm getting strange read errors from the md driver.

I tried using the md driver in linear mode. I did
mdadd /dev/md0 /dev/sda7 /dev/sda8
mdrun -pl /dev/md0
/proc/mdstat now says
md0 : active linear sda7 sda8 208776 blocks 4k rounding

fdisk gives the following informations:
/dev/sda7 327 327 339 104391 86 Unknown
/dev/sda8 340 340 352 104391 87 Unknown
(this is a NTFS volume set)

Now, if I try to access md0 around the place where the two drives
fit together, I get read errors. I wrote a program that tries to
read the device in pieces of 512 bytes. It reports
106893312: read failed
106893824: read failed
106894336: read failed
106894848: read failed
(everything else before and after that is read fine).
In the syslog, I get a lot of messages saying
kernel: Block 104388 out of bounds on dev 08:08 size 104388 offset 104391
kernel: Block 104389 out of bounds on dev 08:08 size 104388 offset 104391
kernel: Block 104390 out of bounds on dev 08:08 size 104388 offset 104391

So it seems md is accessing the wrong device, or at the wrong offset. Note
that this happens only in that regions: Accesses to much larger offsets seem
to go to the right place.

Has anybody else seen this before?

Kernel version is 2.0.0, md tools are 035. SCSI host adapter is A2940, if
that matters.

Any help appreciated,
Martin

P.S. As I said, this is an NTFS volume set. It looks like NTFS linear mode
is the same as NTFS linear mode. So if this gets fixed, there is a good chance
of accessing volume sets (and maybe stripe sets) with my NTFS driver.