raidtools on sparc
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.
Reply to: