3ware 9550sx kernel kompilieren

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

3ware 9550sx kernel kompilieren

Beitrag von rook » 13.03.2006 20:13:51

Hi,
ich habe ein Problem mit nem 3ware Sataraid controller.
Ich habe mir ein angepassten Installer für debian von 3ware gezogen um
debian direkt auf das Raid zu installieren.
Es handelt sich um debian sarge kernel 2.4.7 stable.
Jetzt habe ich das Problem das ich keinen support für highmen sprich über 1GB in dem momentanen kernel habe.
Ich muss den Kernel neu kompilieren und das flag für Highmem support setzen, das problem ist nur das ich wenn ich den neuen kernel boote keinen Raidkontroller mehr habe bzw. der bootvorgang mit einer kernel panic endet.
Ich bin ganz neu auf dem Gebiet, habe mir aber auch schon diverse Tutorials für Kernels durchgelesen.
Bei 3ware gibts sourcen für den 2.4er Kernel, die habe ich mir gezogen.
Wenn ich make -f Makefile.rh ausführe bekomme ich eine 3xx.o 3xx.h und 3xx.c.
Was ich mit den Cfiles und den Headern anfangen muss weiss ich leider nicht, meine vorgehensweise war bisher folgende:

Code: Alles auswählen

apt-get update && apt-get -u upgrade
apt-get install kernel-source-2.4*
ln -s /src/usr/kernel-source* /usr/src/linux
make -f Makefile.rh (3ware sourcen)
// 3Ware source kopieren
cp 3xx.* /usr/src/linux/drivers/scsi/
make dep clean
make oldconfig
make menuconfig
// hier finde ich nun unter SCSI Drivers keinen 3Ware 9X zur Auswahl
// Unter processoroptions habe ich highmem und 4GB aktiviert
make dep clean
make vmImage
make modules
make modules-install
cp /usr/src/linux/arch/i386/boot/vmImage /boot/testkernel
//grub konfiguriert analog zu den bereits vorhandenen parts, nur eben auf "testkernel"
wenn ich jetzt boote bekomme ich eine kernelpanic diverse files couldnt open usw.

Kann mir hier bitte jem. weiterhelfen, ich komme einfach nicht weiter.
Vielen Dank

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 13.03.2006 21:22:04

Du könntest einen 2.6.15 Debian Kernel von http://www.backports.org installieren. Der hat Support für 3ware 9xxx Controller. Die 686 Version hat ausserdem noch Highmem Support. Sourcelist Einträge findest du hier:
http://www.backports.org/debian/README.mirrors.html

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 10:08:40

Hier mal die genauen Fehlermeldungen.
modprobe: modprobe: Can´t open dependicies file /lib/modules/2.4.27/modules.dep (no such file or directory)
modprobe: modprobe: Can´t open dependicies file /lib/modules/2.4.27/modules.dep (no such file or directory)
modprobe: modprobe: Can´t open dependicies file /lib/modules/2.4.27/modules.dep (no such file or directory)
modprobe: modprobe: Can´t open dependicies file /lib/modules/2.4.27/modules.dep (no such file or directory)
modprobe: modprobe: Can´t open dependicies file /lib/modules/2.4.27/modules.dep (no such file or directory)
modprobe: modprobe: Can´t open dependicies file /lib/modules/2.4.27/modules.dep (no such file or directory)
/sbin/init:432:cannot open dev/console: no such file
kernel panic: Attempted to kill init!

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 14.03.2006 12:39:27

Versuch mal eine modules.dep Datei zu erstellen mit:

Code: Alles auswählen

depmod -v 2.4.27

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 13:47:38

Habe jetzt mal die sourcen für den kernel 2.6 installiert und kompiliert, dieser hat die treiber für den 3ware drinnen, leider bekomme ich die selbe panic beim booten.

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 14.03.2006 14:05:11

Existiert die Datei /lib/modules/2.6.xx/module.dep denn?
Hast du die zum booten nötigen Treiber fest im Kernel oder als Modul?
Hast du den Kernel mit Initramdisk kompiliert?

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 14:54:29

Hi Spasswolf,
ja die Datei existiert.
Die Module sind als "M" gekennzeichnet und nicht als "*" in der menuconfig.
Werden also wohl per lsmod geladen und nicht in direkt in den kernel kompiliert.
Wie ich die als festemodul mache, weiss ich leider nicht.
Habe den Kernel über make bzImage kompiliert.

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 14.03.2006 15:09:48

Also wenn ich dich richtig verstanden habe bootest du vom Raid Controller, hast aber den Treiber des Raidcontrollers als Modul vorliegen.
Dann brauchst du eine Initramdisk.
Installier am besten erstmal

Code: Alles auswählen

apt-get install kernel-package 
Dann kannst du beim kompilieren des Kernels ein Debian Paket so erstellen:

Code: Alles auswählen

make-kpkg --initrd kernel_image (im Kernelsourceverzeichnis)
Im übergeordneten Verzeichnis liegt dann ein Debianpaket für den Kernel das du ganz normal installieren kannst also

Code: Alles auswählen

dpkg -i blah.deb
Falls es eine Fehlermeldung gibt, dass die Initramdisk nicht erstellt werden konnte muss du noch ein entsprechendes tool installieren

Code: Alles auswählen

apt-get install yaird

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 15:15:23

Hallo Spasswolf, danke für die Hilfe.
Ich habe gerade herausgefunden das ich das modul wohl auch fest reinkompilieren kann.
Über

Code: Alles auswählen

make menuconfig
dann SCSI_MOD mit "y" auf "*" stellen und SCSI_low_level_drivers auch mit "y" auf "*" stellen, somit sollte das modul doch fest drinnen sein im kernel.
Die RAMDISK habe ich bisher immer über.

Code: Alles auswählen

Makeinitrd -o ramdisktest
erstellt.
Bin grad am compiliern, versuchs gleich nochmal.

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 15:47:49

Also ich bekomme jetzt beim booten die Fehlermeldung
nach init ramdisk:

Code: Alles auswählen

3wxxxx: no cards found.
Danach Meldungen das er nicht auf sda2 zugreifen kann und dann Kernelpanik.

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 14.03.2006 15:56:32

Hast du die scsi disk Unterstüzung auch auf y gesetzt?

Code: Alles auswählen

CONFIG_BLK_DEV_SD=y

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 16:11:28

Hier habe ich die iso her, für was sind denn diese deb Dateien, smp ist doch nur für multiproc. habe aber nur einen
siehe:
http://www.3ware.com/kb/article.aspx?id=14860
Kann ich mit diesen deb files was anfangen?

Code: Alles auswählen

web1:/usr/src/linux# cat .config | grep CONFIG_BLK_DEV_SD
CONFIG_BLK_DEV_SD=y

Code: Alles auswählen

web1:/usr/src/linux# cat .config | grep CONFIG_BLK_DEV
CONFIG_BLK_DEV_FD=m
CONFIG_BLK_DEV_XD=m
CONFIG_BLK_DEV_DAC960=m
CONFIG_BLK_DEV_UMEM=m
CONFIG_BLK_DEV_LOOP=m
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_SX8=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
CONFIG_BLK_DEV_IDE=m
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=m
CONFIG_BLK_DEV_IDECS=m
CONFIG_BLK_DEV_IDECD=m
CONFIG_BLK_DEV_IDETAPE=m
CONFIG_BLK_DEV_IDEFLOPPY=m
CONFIG_BLK_DEV_IDESCSI=m
# CONFIG_BLK_DEV_CMD640 is not set
CONFIG_BLK_DEV_IDEPCI=y
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_BLK_DEV_GENERIC=m
CONFIG_BLK_DEV_OPTI621=m
CONFIG_BLK_DEV_RZ1000=m
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_AEC62XX=m
CONFIG_BLK_DEV_ALI15X3=m
CONFIG_BLK_DEV_AMD74XX=m
CONFIG_BLK_DEV_ATIIXP=m
CONFIG_BLK_DEV_CMD64X=m
CONFIG_BLK_DEV_TRIFLEX=m
CONFIG_BLK_DEV_CY82C693=m
# CONFIG_BLK_DEV_CS5520 is not set
CONFIG_BLK_DEV_CS5530=m
CONFIG_BLK_DEV_HPT34X=m
CONFIG_BLK_DEV_HPT366=m
CONFIG_BLK_DEV_SC1200=m
CONFIG_BLK_DEV_PIIX=m
CONFIG_BLK_DEV_NS87415=m
CONFIG_BLK_DEV_PDC202XX_OLD=m
CONFIG_BLK_DEV_PDC202XX_NEW=m
CONFIG_BLK_DEV_SVWKS=m
CONFIG_BLK_DEV_SIIMAGE=m
CONFIG_BLK_DEV_SIS5513=m
CONFIG_BLK_DEV_SLC90E66=m
CONFIG_BLK_DEV_TRM290=m
CONFIG_BLK_DEV_VIA82CXXX=m
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_SD=y
CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SR_VENDOR is not set
CONFIG_BLK_DEV_3W_XXXX_RAID=y
CONFIG_BLK_DEV_MD=m
CONFIG_BLK_DEV_DM=m
web1:/usr/src/linux# web1:/usr/src/linux# cat .config | grep CONFIG_BLK_DEV
bash: web1:/usr/src/linux#: No such file or directory
CONFIG_BLK_DEV_FD=m
CONFIG_BLK_DEV_XD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_FD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_XD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_DAC960=m
web1:/usr/src/linux# CONFIG_BLK_DEV_UMEM=m
web1:/usr/src/linux# CONFIG_BLK_DEV_LOOP=m
web1:/usr/src/linux# # CONFIG_BLK_DEV_CRYPTOLOOP is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_NBD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_SX8=m
web1:/usr/src/linux# CONFIG_BLK_DEV_RAM=y
web1:/usr/src/linux# CONFIG_BLK_DEV_RAM_SIZE=8192
web1:/usr/src/linux# CONFIG_BLK_DEV_INITRD=y
web1:/usr/src/linux# CONFIG_BLK_DEV_IDE=m
web1:/usr/src/linux# # CONFIG_BLK_DEV_IDE_SATA is not set
web1:/usr/src/linux# # CONFIG_BLK_DEV_HD_IDE is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_IDEDISK=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDECS=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDECD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDETAPE=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDEFLOPPY=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDESCSI=m
web1:/usr/src/linux# # CONFIG_BLK_DEV_CMD640 is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_IDEPCI=y
web1:/usr/src/linux# # CONFIG_BLK_DEV_OFFBOARD is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_GENERIC=m
web1:/usr/src/linux# CONFIG_BLK_DEV_OPTI621=m
web1:/usr/src/linux# CONFIG_BLK_DEV_RZ1000=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDEDMA_PCI=y
web1:/usr/src/linux# # CONFIG_BLK_DEV_IDEDMA_FORCED is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_ADMA=y
web1:/usr/src/linux# CONFIG_BLK_DEV_AEC62XX=m
web1:/usr/src/linux# CONFIG_BLK_DEV_ALI15X3=m
web1:/usr/src/linux# CONFIG_BLK_DEV_AMD74XX=m
web1:/usr/src/linux# CONFIG_BLK_DEV_ATIIXP=m
web1:/usr/src/linux# CONFIG_BLK_DEV_CMD64X=m
web1:/usr/src/linux# CONFIG_BLK_DEV_TRIFLEX=m
web1:/usr/src/linux# CONFIG_BLK_DEV_CY82C693=m
web1:/usr/src/linux# # CONFIG_BLK_DEV_CS5520 is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_CS5530=m
web1:/usr/src/linux# CONFIG_BLK_DEV_HPT34X=m
web1:/usr/src/linux# CONFIG_BLK_DEV_HPT366=m
web1:/usr/src/linux# CONFIG_BLK_DEV_SC1200=m
web1:/usr/src/linux# CONFIG_BLK_DEV_PIIX=m
web1:/usr/src/linux# CONFIG_BLK_DEV_NS87415=m
web1:/usr/src/linux# CONFIG_BLK_DEV_PDC202XX_OLD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_PDC202XX_NEW=m
web1:/usr/src/linux# CONFIG_BLK_DEV_SVWKS=m
web1:/usr/src/linux# CONFIG_BLK_DEV_SIIMAGE=m
web1:/usr/src/linux# CONFIG_BLK_DEV_SIS5513=m
web1:/usr/src/linux# CONFIG_BLK_DEV_SLC90E66=m
web1:/usr/src/linux# CONFIG_BLK_DEV_TRM290=m
web1:/usr/src/linux# CONFIG_BLK_DEV_VIA82CXXX=m
web1:/usr/src/linux# CONFIG_BLK_DEV_IDEDMA=y
web1:/usr/src/linux# # CONFIG_BLK_DEV_HD is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_SD=y
web1:/usr/src/linux# CONFIG_BLK_DEV_SR=m
web1:/usr/src/linux# # CONFIG_BLK_DEV_SR_VENDOR is not set
web1:/usr/src/linux# CONFIG_BLK_DEV_3W_XXXX_RAID=y
web1:/usr/src/linux# CONFIG_BLK_DEV_MD=m
web1:/usr/src/linux# CONFIG_BLK_DEV_DM=m
web1:/usr/src/linux#

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 14.03.2006 16:28:31

Wenn ich richtig sehe handelt es sich bei diesem deb
http://www.3ware.com/kb/attachments/ker ... 2cc98f.deb
um ein fertiges Kernel Image mit 3ware Unterstützung. Wenn du nur ein Prozessor hast brauchst du zwar kein smp aber der Kerne sollte trotzdem laufen.

Hast du es schon mit einem fertigen Kernel Image von backports.org probiert?
Das in die /etc/apt/source.list eintragen

Code: Alles auswählen

deb ftp://ftp.de.debian.org/backports.org/ sarge-backports main
und dann

Code: Alles auswählen

apt-get install linux-image-2.6.15-1-686

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 16:57:43

Spasswolf hat geschrieben:Wenn ich richtig sehe handelt es sich bei diesem deb
http://www.3ware.com/kb/attachments/ker ... 2cc98f.deb
um ein fertiges Kernel Image mit 3ware Unterstützung. Wenn du nur ein Prozessor hast brauchst du zwar kein smp aber der Kerne sollte trotzdem laufen.

Hast du es schon mit einem fertigen Kernel Image von backports.org probiert?
Das in die /etc/apt/source.list eintragen

Code: Alles auswählen

deb ftp://ftp.de.debian.org/backports.org/ sarge-backports main
und dann

Code: Alles auswählen

apt-get install linux-image-2.6.15-1-686
Ich weiss nicht genau was bei den images passiert wenn ich die Befehle ausführe, überschreibt er mir dann meinen bestehenden kernel und ich kann dann evtl. nicht mehr booten?

Ich habe noch was interessantes herausgefunden, vielleicht hängt es ja damit zusammen:

Code: Alles auswählen

web1:/usr/src/linux# lsmod
Module                  Size  Used by    Not tainted
usb-ohci               16488   0  (unused)
usbcore                52268   1  [usb-ohci]
cmd64x                  6596   0  (unused)
ide-core               91768   0  [cmd64x]
tg3                    45360   2
firmware_class          3164   0  [tg3]
sr_mod                 11640   0  (unused)
cdrom                  26212   0  [sr_mod]
rtc                     5768   0  (autoclean)
sd_mod                 10764   8  (autoclean)
3w-9xxx                28516   4  (autoclean)
scsi_mod               85988   3  (autoclean) [sr_mod sd_mod 3w-9xxx]
unix                   12752  23  (autoclean)
Das modul 3w-9xxx hat wohl Abhängigkeiten zu sr_mod und sd_mod?!?

SD MOD scheint an zu sein:

Code: Alles auswählen

web1:/usr/src/linux# cat .config | grep CONFIG_BLK_DEV_SD
CONFIG_BLK_DEV_SD=y
SR MOD irgendwie nur teils:

Code: Alles auswählen

web1:/usr/src/linux# cat .config | grep CONFIG_BLK_DEV_SR
CONFIG_BLK_DEV_SR=m
CONFIG_BLK_DEV_SR_VENDOR=y
Ich finde den Punkt unter menucionfig für CONFIG_BLK_DEV_SR irgendwie nicht,
kann es damit zusammenhängen?
[/code]

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 14.03.2006 17:31:57

Wenn du so einen neuen Kernel installierst

Code: Alles auswählen

apt-get install linux-image-2.6.15-1-686
wir der zusätzlich zu bestehenden Kerneln installiert.
Allerdings gibt es beim Wechsel von 2.4er zu 2.6er Kerneln ein Problem:
2.4er Kernel brauchen das Paket modutils.
2.6er Kernel das Paket module-init-tools.
Diese Pakete werden benötigt um Module zu laden und stehen in Konflikt miteinander.
D.h. wenn du den 2.6er Kernel installierst und der nich bootet hast du ein Problem.
Hast du eventuell eine Knoppix CD zur Hand, dann könntest du, falls die 2.6er Kernel Installation scheitert, den 2.6er Kernel entfernen und die modutils neu installieren.

Laut xconfig ist

Code: Alles auswählen

CONFIG_BLK_DEV_SR
Unterstützung für scsi Cdrom. Also vermutlich kein Zusammenhang mit deinem Problem.

Dise lsmod Ausgbe

Code: Alles auswählen

scsi_mod               85988   3  (autoclean) [sr_mod sd_mod 3w-9xxx] 
heißt das diese drei Module [sr_mod sd_mod 3w-9xxx] jeweils das Modul scsi_mod benötigen.[/quote]

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 17:42:31

Habe gerade festgestellt das wohl laut auskunft
im kernel 2.6.8 (stable?) noch kein support für 9550sx ist, erst abe 2.6.14.1?
Wobei beide die selben module haben, ich versuche jetzt so einen nochmal zu compilen.
dann ist er eben testing, aber ich muss das jetzt hinbekommen, denn langsam werde ich verrückt ;)))
Siehe:
http://admin-blog.com/
Ungefähr 3-4 Seiten runterscrollen oder suchen nach: "Pure Power".
Da steht wohl was.
Danke für die Hilfe!!
Ich versuche gerade den Kernel:
2.6.15.6
Das muss doch gehen! ;)

rook
Beiträge: 12
Registriert: 13.03.2006 20:02:38

Beitrag von rook » 14.03.2006 18:25:36

Vielen Dank für die geduld und Hilfe Spasswolf;)
Es funktioniert mit dem Kernel 2.6.15.x
Danke!!!

Antworten