I get the same "Error lstat(2)ing ..." /dev/md/* message ever since I added RAID support to the kernel (rather than as modules). I thought it was devfs weirdness for the RAID autodetection. But, although it's annoying, it doesn't interfere with my boot process, so I'm guessing that isn't your problem. Sounds like it's a GRUB issue.
I'm no GRUB expert, but I've worked through some problems with GRUB detecting drives. Maybe your "root (hd0,1)" in grub.conf is correct, but to be certain I'd
make a GRUB boot floppy and
install natively.
I think part of my trouble was that my 'root' partition for GRUB (where the kernel images are stored) wasn't on the primary hard drive (where GRUB was installed). The native install method shines here. Boot the GRUB floppy, then find where your BIOS sees your kernel images, set that as root for GRUB and then re-install GRUB.
Code:
grub> find /boot/grub/stage1
(grub outputs something useful here)
grub> root (hd3,0)
grub> setup (hd0)
So the confusing part is that there seems to be a root for GRUB (which is your /boot), and then there's a root for your Linux system. The native install might help you here; verify the GRUB/BIOS name for your /dev/sda3 by typing "find /bin/ls" (or any file that you know to be on /dev/sda3) at the grub> prompt, then set your grub.conf root to that BIOS name.
Good luck.
Chaz