RAID kaart gebruikt verkeerde driver; hoe andere forceren?

Pagina: 1
Acties:

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Topicstarter
Ik heb hier een LSI Logic MegaRAID SATA 150-4 en gebruik deze onder Archlinux. Momenteel hangt hier 1 schijf aan; het gebruiken van die schijf levert een hoog CPU gebruik en sterk schommelende performance op. Nader onderzoek leerde mij dat deze kaart momenteel door de kernel de driver `sata_sil` krijgt toegewezen; een driver die bedoelt is voor 'nep' RAID kaarten. Ik heb dus het vermoeden dat de kernel niet doorheeft dat alle verwerking mbt disk i/o aan de RAID kaart kan worden overgelaten en dat dergelijke berekeningen momenteel door mijn CPU worden uitgevoerd; wat de performance zou verklaren.

Nu zou ik voor deze kaart dus de Megaraid drivers willen gebruiken aangezien deze zijn bedoelt voor de LSI Logic 'echte' RAID kaarten. Zowel de Megaraid drivers als de sata_sil drivers zitten echter (niet als modules) in de kernel ingebakken. Hoe kan ik de kernel ervan overtuigen een andere driver te gebruiken voor deze kaart? Ik kan nergens vinden of hier configuratieopties voor zijn die je kan doorgeven? Verder is lijkt een wijziging in mijn modprobe.conf mij ook niet logisch aangezien het om ingecompileerde drivers gaat; en geen losse modules :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • irondog
  • Registratie: Januari 2001
  • Laatst online: 11-05-2025

irondog

alle dingen moeten onzin zijn

Je verhaal lijkt me nogal sterk, maar toch.

Je hebt volgens mij helemaal gelijk dat je controller gebruikt moet kunnen worden met de MegaRaid driver. De sil3112 chip zou volgens mij voor de software onzichtbaar moeten zijn. Als dat niet zo is, verklaart dat een hoop.

Kun je eens de output van het volgende kunnen posten:
code:
1
2
 lspci
lspci -n

[P5B deluxe] [Core2Duo 6300] [2 X 1GB DDR2] [GF FX7300] [320 GB WD] [Gentoo] [VISTA]


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Topicstarter
Wat is er 'sterk' aan het verhaal?

lspci
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
00:00.0 Host bridge: VIA Technologies, Inc. VT8366/A/7 [Apollo KT266/A/333]
00:01.0 PCI bridge: VIA Technologies, Inc. VT8366/A/7 [Apollo KT266/A/333 AGP]
00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:09.0 Multimedia audio controller: Creative Labs SB Audigy (rev 03)
00:09.1 Input device controller: Creative Labs SB Audigy MIDI/Game port (rev 03)
00:09.2 FireWire (IEEE 1394): Creative Labs SB Audigy FireWire Port
00:0d.0 PCI bridge: Intel Corp.: Unknown device 0308 (rev 01)
00:0d.1 Memory controller: LSI Logic / Symbios Logic: Unknown device 1964 (rev 01)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8233 PCI to ISA Bridge
00:11.1 IDE interface: VIA Technologies, Inc. VT82C586/B/686A/B PIPC Bus Master IDE (rev 06)
00:11.2 USB Controller: VIA Technologies, Inc. USB (rev 1b)
00:11.3 USB Controller: VIA Technologies, Inc. USB (rev 1b)
00:11.4 USB Controller: VIA Technologies, Inc. USB (rev 1b)
01:00.0 VGA compatible controller: nVidia Corporation: Unknown device 0281 (rev a1)
02:00.0 Unknown mass storage controller: CMD Technology Inc: Unknown device 3112 (rev 02)
02:01.0 Unknown mass storage controller: CMD Technology Inc: Unknown device 3112 (rev 02)
lspci -n
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
00:00.0 Class 0600: 1106:3099
00:01.0 Class 0604: 1106:b099
00:08.0 Class 0200: 10ec:8139 (rev 10)
00:09.0 Class 0401: 1102:0004 (rev 03)
00:09.1 Class 0980: 1102:7003 (rev 03)
00:09.2 Class 0c00: 1102:4001
00:0d.0 Class 0604: 8086:0308 (rev 01)
00:0d.1 Class 0580: 1000:1964 (rev 01)
00:11.0 Class 0601: 1106:3074
00:11.1 Class 0101: 1106:0571 (rev 06)
00:11.2 Class 0c03: 1106:3038 (rev 1b)
00:11.3 Class 0c03: 1106:3038 (rev 1b)
00:11.4 Class 0c03: 1106:3038 (rev 1b)
01:00.0 Class 0300: 10de:0281 (rev a1)
02:00.0 Class 0180: 1095:3112 (rev 02)
02:01.0 Class 0180: 1095:3112 (rev 02)
lshwd
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
00:00.0 Host bridge: VIA Technologies|VT8367 [KT266] (via-agp)
00:01.0 PCI bridge: VIA Technologies|VT8367 [KT266 AGP] (unknown)
00:08.0 Ethernet controller: Realtek|RTL-8139 (8139too)
00:09.0 Multimedia audio controller: Creative Labs|EMU10K2 Audigy Audio Processor (snd-emu10k1)
00:09.1 Input device controller: Creative Labs|EMU10K2 Audigy Gameport (emu10k1-gp)
00:09.2 FireWire (IEEE 1394): Creative Labs|EMU10K2 Audigy IEEE1394 Firewire Controller (ohci1394)
00:0d.0 PCI bridge: Creative Labs|EMU10K2 Audigy IEEE1394 Firewire Controller (unknown)
00:0d.1 Memory controller: Creative Labs|EMU10K2 Audigy IEEE1394 Firewire Controller (unknown)
00:11.0 ISA bridge: VIA Technologies|VT8233 PCI to ISA Bridge (via-ircc)
00:11.1 IDE interface: VIA Technologies|VT82C586 IDE [Apollo] (snd_via82xx)
00:11.2 USB Controller: VIA Technologies|VT82C586B USB (uhci_hcd)
00:11.3 USB Controller: VIA Technologies|VT82C586B USB (uhci_hcd)
00:11.4 USB Controller: VIA Technologies|VT82C586B USB (uhci_hcd)
01:00.0 VGA compatible controller: nVidia|GeForce4 Ti 4200 with AGP8X (nv)
02:00.0 Unknown mass storage controller: Silicon Image|Sil3112A Serial ATA (sata_sil)
02:01.0 Unknown mass storage controller: Silicon Image|Sil3112A Serial ATA (sata_sil)
003:001 USB Hub: Virtual|Hub (unknown)
002:001 USB Hub: Virtual|Hub (unknown)
001:002 USB Human Interface Devices:  [/dev/input/mice] (usbhid)
001:001 USB Hub: Virtual|Hub (unknown)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • irondog
  • Registratie: Januari 2001
  • Laatst online: 11-05-2025

irondog

alle dingen moeten onzin zijn

Spider.007 schreef op zaterdag 08 oktober 2005 @ 17:27:
Wat is er 'sterk' aan het verhaal?
Sterk aan het verhaal is, dat de door jouw genoemde controller nooit door sata_sil herkend mag worden. De goedkopere variant overigens wel.

De output van lspci laat ook helemaal geen pciids zien van een LSI Logic MegaRAID SATA 150-4, echter wel de pciids van die Sil3112 chip (waarbij sata_sil gebruikt wordt).
Dus rara, wat gebeurt hier?

Naja, ik ben niet helderziend ofzo, maar het lijkt er wat mij betreft op, dat in jouw pc geen LSI Logic MegaRAID SATA 150-4 zit. Wat je daarmee doet, moet je zelf weten. Maar als je iets van 300 euro betaald hebt voor dit kaartje, is er iets goed mis met de controller of de winkel waar je het gekocht hebt (en dus niet met de software).

Suc6

[P5B deluxe] [Core2Duo 6300] [2 X 1GB DDR2] [GF FX7300] [320 GB WD] [Gentoo] [VISTA]


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Topicstarter
Ik heb het probleem gevonden :X

Op de kaart (jaja, het is echt wel een MegaRaid 150-4 kaart) zit een jumper om de irritante prompt bij het booten te disablen. Echter, dit disabled niet alleen de prompt; maar ook de complete logica van de kaart blijkbaar. Nadat ik deze jumper (J2) weer terug heb gezet (nooit bedacht dat ik die had omgezet) wordt de kaart wel juist herkend:
code:
1
00:0d.0 RAID bus controller: LSI Logic|PowerEdge RAID Controller 3/QC (megaraid_mbox)


Nog een algemene vraag; de linux kernel hoort dus altijd de juiste driver voor een stuk hardware te laden; en als dit niet gebeurt is er niets om een driver af te dwingen; maar is het gewoon een kernel bug of een user error ?

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • irondog
  • Registratie: Januari 2001
  • Laatst online: 11-05-2025

irondog

alle dingen moeten onzin zijn

Spider.007 schreef op zaterdag 08 oktober 2005 @ 19:37:
[...] (jaja, het is echt wel een MegaRaid 150-4 kaart) [...]
Jaja, nu is het dat ineens wel! :) Ik vermoed dat hij met de andere jumperconfiguratie meer op een MegaRaid 150-2 lijkt (voor de software :) ).

Pure interesse: Is er nu ook een silicon image controller verdwenen van de PCI bus, of zelfs twee?
Nog een algemene vraag; de linux kernel hoort dus altijd de juiste driver voor een stuk hardware te laden; en als dit niet gebeurt is er niets om een driver af te dwingen
Het laden van een driver laden wordt niet altijd vanuit de kernel zelf geïnstantieerd, maar goed. In een ideale wereld zullen er nooit twee drivers geladen zijn, die een gemeenschappelijke (deel)verzameling van ondersteunde hardware hebben.

Een pci driver kijkt bij het initialiseren of er aan de PCI bus (een) ondersteund(e) appara(a)t(en) hang{t,en}. Er bestaat in een driver dus een lijst van ondersteunde apparaten, eigenlijk niets anders dan een lijstje bestaande uit een aantal PCI id's. Wat natuurlijk kan gebeuren, is dat een driver theoretisch wel werkt voor een bepaald apparaat, maar dat de driver het apparaat negeert vanwege de afwezigheid van zijn PCI id in de lijst. Er is geen mogelijkheid om aan een willekeurige driver X te zeggen, "doe je ding" met mijn onbekende apparaat Y. Er is dus niets direct met de hand af te dwingen

offtopic:
Het komt overigens voor, dat programmeurs tijdens de levencyclus van een driver PCI id's van werkende apparaten toegevoegen aan de driver.
maar is het gewoon een kernel bug of een user error ?
Indien een driver een apparaat ten onrechte negeert, kun je dus praten over een kernel bug: De driver is kapot, want werkt niet op het device. Dit topic daarentegen gaat over een User Error :P

edit:
Ongelukkige formulering/volgorde

[ Voor 19% gewijzigd door irondog op 08-10-2005 21:27 ]

[P5B deluxe] [Core2Duo 6300] [2 X 1GB DDR2] [GF FX7300] [320 GB WD] [Gentoo] [VISTA]


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Topicstarter
De volledige output van lspci op dit moment is als volgt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
00:00.0 Host bridge: VIA Technologies, Inc. VT8366/A/7 [Apollo KT266/A/333]
00:01.0 PCI bridge: VIA Technologies, Inc. VT8366/A/7 [Apollo KT266/A/333 AGP]
00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:09.0 Multimedia audio controller: Creative Labs SB Audigy (rev 03)
00:09.1 Input device controller: Creative Labs SB Audigy MIDI/Game port (rev 03)00:09.2 FireWire (IEEE 1394): Creative Labs SB Audigy FireWire Port
00:0d.0 RAID bus controller: LSI Logic / Symbios Logic PowerEdge Expandable RAID Controller 4 (rev 01)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8233 PCI to ISA Bridge
00:11.1 IDE interface: VIA Technologies, Inc. VT82C586/B/686A/B PIPC Bus Master IDE (rev 06)
00:11.2 USB Controller: VIA Technologies, Inc. USB (rev 1b)
00:11.3 USB Controller: VIA Technologies, Inc. USB (rev 1b)
00:11.4 USB Controller: VIA Technologies, Inc. USB (rev 1b)
01:00.0 VGA compatible controller: nVidia Corporation: Unknown device 0281 (rev a1)
Bedankt voor je uitleg verder; het is jammer dat dergelijke informaite lastig te vinden is ondanks mijn talloze google queries :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate

Pagina: 1