View previous topic :: View next topic |
Author |
Message |
volumen1 Guru
Joined: 01 Mar 2003 Posts: 393 Location: Missoula, MT
|
Posted: Thu Oct 18, 2012 8:09 pm Post subject: Intel fakeraid problems with 3.3.8 and 3.4.9 [SOLVED] |
|
|
I have an Intel SATA raid controller and it's working great under 3.2.12. Here's the specifics: Code: | 00:1f.2 RAID bus controller: Intel Corporation 82801 SATA Controller [RAID mode] (rev 06)
Subsystem: Dell Device 040d
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 46
I/O ports at cc00 [size=8]
I/O ports at c880 [size=4]
I/O ports at c800 [size=8]
I/O ports at c480 [size=4]
I/O ports at c400 [size=32]
Memory at f9ff4000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [70] Power Management version 3
Capabilities: [a8] SATA HBA v1.0
Capabilities: [b0] PCI Advanced Features
Kernel driver in use: ahci
Kernel modules: ahci |
This is the kind of fakeraid that uses mdadm to manage the array. So, in my grub.conf I have this for 3.2.12: Code: |
title Gentoo Linux 3.2.12
root (hd0,0)
kernel /boot/kernel-genkernel-x86_64-3.2.12-gentoo real_root=/dev/md126p3 domdadm rootfstype=ext4
initrd /boot/initramfs-genkernel-x86_64-3.2.12-gentoo |
Notice the "domdadm" part in there.
Anyway, I used genkernel to configure my kernel for 3.2.12 and I did the same for 3.3.8 and 3.4.9. Code: |
genkernel --mdadm-config=/etc/mdadm.conf --mdadm --dmraid all |
But, both kernels won't boot. I get the error "Could not find the root block device". When I drop to a shell and tyr to "cat /proc/mdstat" It shows the md127 device and it shows both disks as inactive.
When I do that same command under 3.2.12 I also see the md126 device, it looks like this: Code: |
# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md126 : active raid1 sda[1] sdb[0]
1465136128 blocks super external:/md127/0 [2/2] [UU]
[>....................] resync = 0.9% (14422912/1465136260) finish=553.1min speed=43709K/sec
md127 : inactive sdb[1](S) sda[0](S)
4514 blocks super external:imsm
unused devices: <none> |
If I try to do "mdadm --assemble --scan" from 3.4.9 then I get a bunch of errors about how /dev/md/imsm0 and /dev/md/Raid1_0 "has no identity information". Also there is an error that "mdadm: No arrays found in config file or automatically."
I can't cut and paste those, though, so I'm paraphrasing.
Anyway, has anyone else had success with Intel's fakeraid with 3.3.8 and 3.4.9 kernels?[/code] _________________ I was born with a freakin' dice bag on my belt.
-- www.howsyournetwork.com
Last edited by volumen1 on Mon Dec 03, 2012 5:53 pm; edited 1 time in total |
|
Back to top |
|
|
vaxbrat l33t
Joined: 05 Oct 2005 Posts: 731 Location: DC Burbs
|
Posted: Sat Oct 27, 2012 5:11 am Post subject: ick |
|
|
I briefly tried that bios based Intel junk a while back and never got it to work reliably. I guess there's a reason they call those things "fake raids". Since then, I've stuck to either high end stuff (ie HP smart array) or full blown software raid with mdadm. |
|
Back to top |
|
|
volumen1 Guru
Joined: 01 Mar 2003 Posts: 393 Location: Missoula, MT
|
Posted: Sat Oct 27, 2012 6:43 pm Post subject: |
|
|
The version of card that I have actually uses mdadm. It works great under 3.2.12, but not 3.3 or 3.4 kernels, at least not for me yet. _________________ I was born with a freakin' dice bag on my belt.
-- www.howsyournetwork.com |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
|
Back to top |
|
|
volumen1 Guru
Joined: 01 Mar 2003 Posts: 393 Location: Missoula, MT
|
Posted: Sat Oct 27, 2012 9:49 pm Post subject: |
|
|
Yup, that's correct. It's Intel's ISM fakeraid that uses mdadm. _________________ I was born with a freakin' dice bag on my belt.
-- www.howsyournetwork.com |
|
Back to top |
|
|
danomac l33t
Joined: 06 Nov 2004 Posts: 881 Location: Vancouver, BC
|
Posted: Sun Oct 28, 2012 2:43 am Post subject: |
|
|
Jaglover wrote: | This is interesting, what do you mean by "it uses mdadm". AFAIK you can use mdadm on any fakeraid. Are you saying mdadm actually picks up the RAID configuration from BIOS? |
Yes, Intel is officially supported mdraid as the preferred way to access imsm raids. It will read the BIOS configuration and you can use most mdadm commands to administer the array. I messed around a lot with this and even wrote a howto in the Documentation, Tips & Tricks forum. You do have to set up a script and modify a file in /etc/conf.d/ in order for the raid array to shut down cleanly. This isn't mdadm's fault, it's gentoo's fault. I've noted the solution in mentioned howto.
To the OP: I posted in the howto thread. |
|
Back to top |
|
|
volumen1 Guru
Joined: 01 Mar 2003 Posts: 393 Location: Missoula, MT
|
Posted: Mon Dec 03, 2012 5:57 pm Post subject: |
|
|
I got this to work with danomac's help. Basically, I replaced my existing /etc/genkernel.conf with the following
Code: |
OLDCONFIG="yes"
MENUCONFIG="yes"
CLEAN="yes"
MRPROPER="yes"
MOUNTBOOT="yes"
SAVE_CONFIG="yes"
USECOLOR="yes"
MDADM="yes"
DISKLABEL="yes"
GK_SHARE="${GK_SHARE:-/usr/share/genkernel}"
CACHE_DIR="/var/cache/genkernel"
DISTDIR="${CACHE_DIR}/src"
LOGFILE="/var/log/genkernel.log"
LOGLEVEL=1
DEFAULT_KERNEL_SOURCE="/usr/src/linux"
BUSYBOX_VER="1.20.1"
BUSYBOX_SRCTAR="${DISTDIR}/busybox-${BUSYBOX_VER}.tar.bz2"
BUSYBOX_DIR="busybox-${BUSYBOX_VER}"
BUSYBOX_BINCACHE="%%CACHE%%/busybox-${BUSYBOX_VER}-%%ARCH%%.tar.bz2"
DEVICE_MAPPER_VER="1.02.22"
DEVICE_MAPPER_DIR="device-mapper.${DEVICE_MAPPER_VER}"
DEVICE_MAPPER_SRCTAR="${DISTDIR}/device-mapper.${DEVICE_MAPPER_VER}.tgz"
DEVICE_MAPPER_BINCACHE="%%CACHE%%/device-mapper-${DEVICE_MAPPER_VER}-%%ARCH%%.tar.bz2"
LVM_VER="2.02.88"
LVM_DIR="LVM2.${LVM_VER}"
LVM_SRCTAR="${DISTDIR}/LVM2.${LVM_VER}.tgz"
LVM_BINCACHE="%%CACHE%%/LVM2.${LVM_VER}-%%ARCH%%.tar.bz2"
MDADM_VER="3.2.3"
MDADM_DIR="mdadm-${MDADM_VER}"
MDADM_SRCTAR="${DISTDIR}/mdadm-${MDADM_VER}.tar.bz2"
MDADM_BINCACHE="%%CACHE%%/mdadm-${MDADM_VER}-%%ARCH%%.tar.bz2"
DMRAID_VER="1.0.0.rc14"
DMRAID_DIR="dmraid/${DMRAID_VER}"
DMRAID_SRCTAR="${DISTDIR}/dmraid-${DMRAID_VER}.tar.bz2"
DMRAID_BINCACHE="%%CACHE%%/dmraid-${DMRAID_VER}-%%ARCH%%.tar.bz2"
ISCSI_VER="2.0-872"
ISCSI_DIR="open-iscsi-${ISCSI_VER}"
ISCSI_SRCTAR="${DISTDIR}/open-iscsi-${ISCSI_VER}.tar.gz"
ISCSI_BINCACHE="%%CACHE%%/iscsi-${ISCSI_VER}-%%ARCH%%.bz2"
E2FSPROGS_VER="1.42"
E2FSPROGS_DIR="e2fsprogs-${E2FSPROGS_VER}"
E2FSPROGS_SRCTAR="${DISTDIR}/e2fsprogs-${E2FSPROGS_VER}.tar.gz"
BLKID_BINCACHE="%%CACHE%%/blkid-${E2FSPROGS_VER}-%%ARCH%%.bz2"
FUSE_VER="2.8.6"
FUSE_DIR="fuse-${FUSE_VER}"
FUSE_SRCTAR="${DISTDIR}/fuse-${FUSE_VER}.tar.gz"
FUSE_BINCACHE="%%CACHE%%/fuse-${FUSE_VER}-%%ARCH%%.tar.bz2"
UNIONFS_FUSE_VER="0.24"
UNIONFS_FUSE_DIR="unionfs-fuse-${UNIONFS_FUSE_VER}"
UNIONFS_FUSE_SRCTAR="${DISTDIR}/unionfs-fuse-${UNIONFS_FUSE_VER}.tar.bz2"
UNIONFS_FUSE_BINCACHE="%%CACHE%%/unionfs-fuse-${UNIONFS_FUSE_VER}-%%ARCH%%.bz2"
GPG_VER="1.4.11"
GPG_DIR="gnupg-${GPG_VER}"
GPG_SRCTAR="${DISTDIR}/gnupg-${GPG_VER}.tar.bz2"
GPG_BINCACHE="%%CACHE%%/gnupg-${GPG_VER}-%%ARCH%%.bz2"
|
Then I ran genkernel like so
Code: |
genkernel --install --no-dmraid --dmadm all
|
Genkernel then complained because I didn't have mdadm 3.2.3 in /var/cache/genkernel/src (nor did I have it emerged, I was still on 3.1.4). So, I emerged it and then copied the tarball from /usr/portage/distfiles to /var/cache/genkernel/src
After genkernel built the kernel, modules and initramfs I made the following entry in my grub.conf
Code: |
root (hd0,0)
kernel /boot/kernel-genkernel-x86_64-3.5.7-gentoo real_root=/dev/md126p3 nodmraid domdadm rootfstype=ext4
initrd /boot/initramfs-genkernel-x86_64-3.5.7-gentoo
|
All is now well with the universe. _________________ I was born with a freakin' dice bag on my belt.
-- www.howsyournetwork.com |
|
Back to top |
|
|
|