Kernel dma kikapcsolása

Fórumok

Sziasztok.
Az lenne a fájásom, hogy szükségem lenne egy olyan kernelre, ami nem akar dma-t használni az IDE vezérlőkön. Ugyanis ő bizony ezt akarja tenni automatikusan. Keresgéltem a neten, de nem sok okosságra leltem. A probléma lényege kb. ugyanaz, mint a kollegának itt. Ahogy ő is írta, nem jó a hdparmos megoldás, mert ez már a boot folyamat során megjelenő probléma, ugyanis betölti a kernelt, aztán vár kb. 5-6 percet, míg rájön, nem tud a meghajtó DMA-at, és csak aztán indul el és tölti be az initscripteket meg a hdparm konfigját, így nem tudok vele semmit kezdeni.
Van erre valami kernel paraméter (mint a srác is írta, az ide=nodma már rég deprecated, így az nem játszik), kernelbeállítás? Vagy valahogy az initrd-ben ezt nem lehetne megjátszani?
Köszönöm a segítséget.

(Egyébként ezzel kapcsolatban egyszer már tettem fel kérdést, de akkor senki nem tudott válaszolni)

Hozzászólások

A választ töröltem. Nem olvastam végig. Biztos az ide modul hajtja az eszközödet?

Documentation/kernel-parameters.txt
Documentation/ide/ide.txt

Régen ide=nodma kernel paraméter volt a választandó, de az újabb kerneleken nem megy.
Az újabbakhoz ide-core.nodma=x.y formában kell megadni a paramétert, ahol
0.0 hda, 0.1 hdb, 1.0 hdc...

Üdv,
Dw.

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."

Bocsánat, hogy ilyen későn reagálok, csak elszöszöltem a cuccal.

A helyzet az, hogy kicsit többet kellene dokumentációt olvasnom :)
Viszont: az ide-core.nodma=0.0 paraméterre a kernel azt mondja, unknown option. Ha modul helyett közvetlenül beforgatom a kernelbe, akkor más a helyzet, elfogadja, viszont továbbra is timeoutol, és ugyanazt a hibaüzenetet adja, mint ha nincs ott a paraméter. Az eszköz az első IDE csatorna Mastereként van bekötve, a BIOS fel is ismeri. Tévedek, ha úgy gondolom, hogy akkor a 0.0 a helyes jelölése?

uname -a:


Linux radio 2.6.28.9 #1 Mon May 4 22:03:40 CEST 2009 i686 GNU/Linux

lspci:


00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 02)
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:0f.0 VGA compatible controller: S3 Inc. 86c764/765 [Trio32/64/64V+]

A generic ide paramétert szintén nem fogadja el, de gyorsan körbenézve a modulok közt, nincs is ilyen nevű .ko, szóval szerintem már ez sem létező dolog...

1) Ezeket próbáld kikapcsolni (csak tipp):

BLK_DEV_PIIX
BLK_DEV_SLC90E66

2) próbáld a BIOS-ban átállítani az elérési módot PIO-ra, hátha a kernel megmarad annál

3) fordítsd modulba az ide-core-t, majd

modprobe ide-core nodma=0.0

. (Csak mert a fentiből úgy tűnik, hogy paraméterként

ide-core.nodma=0.0

-t próbáltál megadni a modul kézi betöltésekor is, ekkor azonban az

ide-core.

prefix elhagyandó.)

> az ide=nodma már rég deprecated

Az all-generic-ide paramétert próbáltad már?

Kisertetiesen emlekeztet arra az esetre mikor egy CF karirol akartam hajtani egy linuxot CF-IDE atalakitoval. Ugyanez volt a szitu. Ment, de bootkor vagy 3 percig ugatott a dma-ra.
Nem valami ilyesmiben utazol te is?

En is vegigprobalgattam ezeket az ide=nodma stb dolgokat, meg még jopar dolgot de nem sikerult megoldani a dolgot

(itt van http://hup.hu/node/45644)

Csak ha valakinek még majd rajtam kívül is szüksége lesz rá, jelentem, a gondot megoldottam :)
Biztos ami biztos alapon a kernel konfigjában minden *IDE* cuccot modul helyett statikusan befordítottra állítottam, bekapcsoltam minden legacy, generic és hasonló biztató nevű, ide-t is tartalmazó cuccot, és a kernelparaméterek közt alkalmaztam a régi ide=nodma és az új idecore-os paramétert is, és láss csodát, valami sikerült, mert most nem akar DMA-t használni, és villámgyorsan bootol.

Látom már megvan egy megoldás de lehet hogy ez sem rossz:
kernel param: ide-core.nodma=0.0 ide-core.nodma=0.1 ide-core.nodma=1.0 ide-core.nodma=1.1