SuSE 9.1 & Highpoint RocketRaid 1640
Hi, ich habe die Diskussion um den HPT Treiber für 1540 mitverfolgt. Leider ist der Treiber Version 2.11 von HPT für den 1640 mit RAID 5 (das selbe wie 1540 + SoftwareUpdate) unter dem SuSE Kernel 2.6.4-54.3-smp fehlerhaft; "NULL pointer dereference" beim Laden des Moduls. Der Fehler im nicht-opensource Teil vom Treiber (raid.o->fCheckArray), was das beheben des bugs (fast) unmöglich macht. Allgemein hab ich das Gefühl, HPT hat die SMP Unterstützung im Modul v2.11 vernachlässigt. Die Macros save_flags() cli() restore_flags() haben sie vergessen für SMP zu ändern. Läuft ohne Änderung am SourceCode nicht (= HPT hat das sicher nicht getestet!). Hat jemand ne gute Idee, was zu tun? (ausser vergeblich dem Support Mails schreiben) Infos über mein System: - SMP Kernel (Suse Onlineupdate) - 4 SATA Platten am Controller - Kein HPT-Firmwareupdate - Standart Suse-Installation - Hat funktioniert unter Suse 9.0 Gruss & Danke Andreas (Syslog Auszug ist nicht SMP Kernel, um die Lesbarkeit zu erhöhen) -------- May 4 22:27:00 samurai kernel: RocketRAID 154x/1640 SATA Controller driver May 4 22:27:00 samurai kernel: Version 2.11, Compiled May 4 2004 22:22:50 May 4 22:27:00 samurai kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000000 May 4 22:27:00 samurai kernel: printing eip: May 4 22:27:00 samurai kernel: e1aa50f7 May 4 22:27:00 samurai kernel: *pde = 00000000 May 4 22:27:00 samurai kernel: Oops: 0000 [#1] May 4 22:27:00 samurai kernel: SMP May 4 22:27:00 samurai kernel: CPU: 1 May 4 22:27:00 samurai kernel: EIP: 0060:[<e1aa50f7>] Tainted: PF May 4 22:27:00 samurai kernel: EFLAGS: 00210292 (2.6.4-52-smp) May 4 22:27:00 samurai kernel: EIP is at fCheckArray+0x17/0x450 [hpt374] May 4 22:27:00 samurai kernel: eax: e1aa9e9c ebx: e1aa9e9c ecx: 6724c932 edx: 0000b802 May 4 22:27:00 samurai kernel: esi: 00000000 edi: d2d21d18 ebp: e1aa9d20 esp: d2d21d08 May 4 22:27:00 samurai kernel: ds: 007b es: 007b ss: 0068 May 4 22:27:00 samurai kernel: Process insmod (pid: 20120, threadinfo=d2d20000 task=df40b380) May 4 22:27:00 samurai kernel: Stack: 00000000 0000b807 e1aa9e9c e1aa9da8 e1a9930b 0000b804 0000b800 3fff045a May 4 22:27:00 samurai kernel: 0010c837 022a8856 ffff003f 00000000 39363036 46574a31 37364330 00003233 May 4 22:27:00 samurai kernel: 00000000 40000003 53570004 302d3130 53413235 554e4d53 53504720 31343136 May 4 22:27:00 samurai kernel: Call Trace: May 4 22:27:00 samurai kernel: [<e1a9930b>] fDeScanDevice+0x1eb/0x230 [hpt374] May 4 22:27:00 samurai kernel: [<e19052f0>] stall_callback+0x0/0x280 [uhci_hcd] May 4 22:27:00 samurai kernel: [<e1904a25>] init_stall_timer+0x45/0x50 [uhci_hcd] May 4 22:27:00 samurai kernel: [<e19054d7>] stall_callback+0x1e7/0x280 [uhci_hcd] May 4 22:27:00 samurai kernel: [<c01234d7>] scheduler_tick+0x657/0x7f0 May 4 22:27:00 samurai kernel: [<c011adca>] smp_apic_timer_interrupt+0xea/0x160 May 4 22:27:00 samurai kernel: [<c010a1ca>] apic_timer_interrupt+0x1a/0x20 May 4 22:27:00 samurai kernel: [<c01156a4>] delay_pmtmr+0x14/0x20 May 4 22:27:00 samurai kernel: [<c0200059>] __delay+0x9/0x10 May 4 22:27:00 samurai kernel: [<e1a97fe4>] fSetAtaCmd+0x54/0xc0 [hpt374] May 4 22:27:00 samurai kernel: [<e1a98ddd>] fDeSetDevice+0xad/0xc0 [hpt374] May 4 22:27:00 samurai kernel: [<e1a99380>] fDeScanAllDevices+0x30/0xc0 [hpt374] May 4 22:27:00 samurai kernel: [<e1a9946b>] InitializeVBus+0x5b/0x90 [hpt374] May 4 22:27:00 samurai kernel: [<e1a9ca55>] Initialize+0x25/0x70 [hpt374] May 4 22:27:00 samurai kernel: [<e1a9d05e>] hpt3xx_Detect+0x6e/0x4b0 [hpt374] May 4 22:27:00 samurai kernel: [<e1854038>] init_this_scsi_driver+0x38/0xe4 [hpt374] May 4 22:27:00 samurai kernel: [<c013e720>] sys_init_module+0x100/0x210 -------- -- "Sie haben neue Mails!" - Die GMX Toolbar informiert Sie beim Surfen! Jetzt aktivieren unter http://www.gmx.net/info
Andreas G. schrieb:
Der Fehler im nicht-opensource Teil vom Treiber (raid.o->fCheckArray), was das beheben des bugs (fast) unmöglich macht.
Und wenn du nur (so wie ich) nur den Treiber für den Controller nimmst (also hpt374.o) und das Raid5 durch Linux machst? (Wahrscheinlich kommt jetzt die Antwort, dass die Platten schon mit HPT-RAID5 initialisiert sind.) Bei mir ist das zwar nicht die Bergründung, sondern, dass ich demnächst eben in das Raid5 auch eine Platte mit reinnehmen möchte, die nicht an diesem Controller hängt.
Hat jemand ne gute Idee, was zu tun? (ausser vergeblich dem Support Mails schreiben)
Ich habe sehr gute Erfahrungen mit dem Support. Innerhalb von Stunden habe ich immer eine Rückmeldung bekommen, die mir auch etwas brachte.
Und wenn du nur (so wie ich) nur den Treiber für den Controller nimmst (also hpt374.o) und das Raid5 durch Linux machst? (Wahrscheinlich kommt jetzt die Antwort, dass die Platten schon mit HPT-RAID5 initialisiert sind.) Bei mir ist das zwar nicht die Bergründung, sondern, dass ich demnächst eben in das Raid5 auch eine Platte mit reinnehmen möchte, die nicht an diesem Controller hängt.
Genau, die Platten besitzen bereits 460gb Daten. Software RAID5 ist ne gute Alternative, aber lieber die Hardware+Software auf der Promise Karte nutzen, als das im Kernel abzuwickeln. Zudem crasht das Modul (hpt374.ko, 2.6er Kernel) beim Laden, ob RAID5 oder nicht macht also nicht so nen grossen Unterschied. Ich werde wohl versuchen müssen, den HPT Treiber zu fixen. Den Fehler glaube ich lokalisiert zu haben (device struct in device.c nicht vollständig initialisiert; fCheckArray dereferenziert einen NULL Pointer). Nun bleibt die grosse Frage, wie das zu patchen ist.
Ich habe sehr gute Erfahrungen mit dem Support. Innerhalb von Stunden habe ich immer eine Rückmeldung bekommen, die mir auch etwas brachte.
Naja, zwei Tage ohne Antwort. Klar, dass nicht jeder im HPT-Support Kernelerrors entziffern kann, aber ne Antwort wäre schon toll.
Andreas G. schrieb:
Der Fehler im nicht-opensource Teil vom Treiber (raid.o->fCheckArray), was das beheben des bugs (fast) unmöglich macht.
Und wenn du nur (so wie ich) nur den Treiber für den Controller nimmst (also hpt374.o) und das Raid5 durch Linux machst? (Wahrscheinlich kommt jetzt die Antwort, dass die Platten schon mit HPT-RAID5 initialisiert sind.) Bei mir ist das zwar nicht die Bergründung, sondern, dass ich demnächst eben in das Raid5 auch eine Platte mit reinnehmen möchte, die nicht an diesem Controller hängt.
Hat jemand ne gute Idee, was zu tun? (ausser vergeblich dem Support Mails schreiben)
Ich habe sehr gute Erfahrungen mit dem Support. Innerhalb von Stunden habe ich immer eine Rückmeldung bekommen, die mir auch etwas brachte.
-- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
-- NEU : GMX Internet.FreeDSL Ab sofort DSL-Tarif ohne Grundgebühr: http://www.gmx.net/dsl
participants (2)
-
Andreas G.
-
Thomas Rausch