I cannot seem to get the raidtools working on a sparc. I was hoping that someone here could help out. Before I start, let me note that I've been using Debian with raidtools on several x86 machines for quite some time without any troubles.
The machine is an Ultra 2 Enterprise (sun4u, SBUS, SCSI). I've installed Debian Potato onto a small portion of the drives and created equal sized partitions on the remainder. The partition tables look like this: Device Flag Start End Blocks Id System /dev/sda1 0 60 64800 83 Linux native /dev/sda2 u 60 302 261360 82 Linux swap /dev/sda3 0 3880 4190400 5 Whole disk /dev/sda4 302 3880 3864240 83 Linux native /dev/sdb1 0 60 64800 83 Linux native /dev/sdb2 60 302 261360 83 Linux native /dev/sdb3 0 3880 4190400 5 Whole disk /dev/sdb4 302 3880 3864240 83 Linux native /dev/sda4 and /dev/sdb4 were created for the raid device. They are not currently mounted, of course. I ran mdcreate to setup /etc/mdtab with no problems. But when I try to "mdadd -ar" it doesn't work. I've tried with raid0, raid1, and linear. I've tried different chunk sizes. I've inserted the raid modules before running mdadd. Nothing works. Doing an strace with mdadd shows this: open("/dev/sda4", O_RDONLY) = 4 ioctl(4, BLKGETSIZE, 0xeffff7e4) = 0 open("/dev/sdb4", O_RDONLY) = 5 ioctl(5, BLKGETSIZE, 0xeffff7e4) = 0 open("/dev/md0", O_RDONLY) = 6 stat("/dev/sda4", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 4), ...}) = 0 ioctl(6, REGISTER_DEV, 0) = -1 EINVAL (Invalid argument) write(2, "/dev/sda4: Invalid argument\n", 28/dev/sda4: Invalid argument ) = 28 stat("/dev/sdb4", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 20), ...}) = 0 ioctl(6, REGISTER_DEV, 0) = -1 EINVAL (Invalid argument) write(2, "/dev/sdb4: Invalid argument\n", 28/dev/sdb4: Invalid argument ) = 28 ioctl(6, START_MD, 0x20003) = -1 EINVAL (Invalid argument) write(2, "/dev/md0: Invalid argument\n", 27/dev/md0: Invalid argument ) = 27 _llseek(0x3, 0, 0x4e, 0xeffff5b8, 0) = 0 read(3, "", 8192) = 0 read(3, "", 8192) = 0 exit(3) = ? I'm also getting these messages in /var/log/messages: sys32_ioctl: Unknown cmd fd(6) cmd(20000901) arg(00000000) sys32_ioctl: Unknown cmd fd(6) cmd(20000901) arg(00000000) sys32_ioctl: Unknown cmd fd(6) cmd(20000902) arg(00020003) Can anyone point me in the right direction here? I'd really appreciate it.