[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Probleme mit IDE-Brenner und cdbakeoven



On 21.Feb 2003 - 01:07:46, Jan Schulz wrote:
> Hallo Eduard,
> 
> * Eduard Bloch wrote:
> >Lies README.ATAPI nochmal.
> 
> Danke für den Tipp :) beim lesen hab ich das hier gefunden:
> 
> | All Linux ATAPI transport implementations do not support DMA.
> | Current execptions are:
> | - ide-scsi with block size 2048 and if DMA has been enabled
> 
> Ich muss leider zugeben, das ich hier nur bahnhof verstehe.
> Wenn ich versuche von meinem CDRom auf den Brenner zu 'kopieren', 
> dann steht hier mein System (maus reagiert jede Minute einmal...) 
> was anscheined ja mit diesem DMA zusammenhängt.

Ja und nein, im Prinzip hast du solche Probleme wenn eines der Geräte im
PIO-Modus arbeitet, bei dem der ganze Datenstrom durch den Prozessor
muss!

> Brenner und CDROM sind über ide-scsi eingebunden und hängen an 
> getrennten Controlern (CDROM ist hdb, brenner hdc. HD ist an einem 
> promise Controler als hde eingebunden). Der Brenner ist ein 
> Liteon LTR-12101b.

Also isch hab hier denselben Brenner und DMA einschalten geht bei mir
überhaupt net, dann hängt sich der Kernel regelmäßig auf. Ich meine
damit das DMA vom Kernel, nicht das vom CD-Brenner. Liegt wohl am
SCSI-IDE Emulatortreiber des Kernels, der ist wohl nicht das Gelbe vom
Ei. Ich habe ebenfalls CDROM und Brenner an verschiedenen
IDE-Anschlüssen (nicht Controllern, da nur einer auf dem Board) so wie
du ja wohl auch. Ich würde ja darauf tippen, dass dein CDROM kein DMA an
hat, zumindestens produziert der Brenner hier bei mir beim Brennen von
Platte aus keine 100% CPU Last.

> Nun die Frage: Wie bekomme ich raus bzw wie setze ich diese 'block 
> size 2048'. So weit ich das mitbekommen habe kann man DMA über 
> hdparm einschalten. So wie ich das sehe ist das auch schon an, 
> oder?
> 
> jan@snoopy:~$ hdparm -i /dev/hdc
> /dev/hdc:
>  Model=LITE-ON LTR-12101B, FwRev=LKU6, SerialNo=
>  Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }
>  RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
>  BuffType=unknown, BuffSize=1024kB, MaxMultSect=0
>  (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
>  IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
>  PIO modes: pio0 pio1 pio2 pio3 pio4
>  DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 *mdma2
>  AdvancedPM=no

Interessanter wäre die Ausgabe von hdparm -v /dev/hd(b,c), also die
eingeschalteten Optionen für CDROM und LiteOn CDBrenner. Wie du siehst,
macht das LiteOn selbst eh MultiMode DMA (Frag mich jetzt bitte nicht,
was das ist das weiß ich nicht, nur ist es kein UDMA). Aber ob der
Kernel das auch an hat ist daraus nicht zu ersehen (der 2.4.18-bf24
machts glaub ich aus).

> Ist da jetzt schon die block size enthalten oder kann man das 
> wirklich irgendwo setzen? Bislang reicht mir das brennen so noch 
> vollkommen, aber mich würde echt interessiern, ob es auch so nett 
> im Hintergrund geht, wie unter Windows...

Habs grad mal getestet und hier gehts halbwegs im Hintergrund, 
sprich das Lesen von CD belastet das System etwas und hin und wieder
hakt die Maus, allerdings läuft hier auch KDE3.1, apache, cups, pdnsd,
xmms spielt, ... und der Brenner brennt ohne Realtime scheduling, da als
normaler User gestartet. 
Hier mal die Ausgabe der Geräte lt. hdparm:

| hdparm -vi /dev/hdb:
| /dev/hdb:
|  HDIO_GET_MULTCOUNT failed: Input/output error
|  I/O support  =  0 (default 16-bit)
|  unmaskirq    =  0 (off)
|  using_dma    =  1 (on)
|  keepsettings =  0 (off)
|  HDIO_GET_NOWERR failed: Input/output error
|  readonly     =  0 (off)
|  BLKRAGET failed: Input/output error
|  HDIO_GETGEO failed: Invalid argument
| 
|  Model=FX4820T, FwRev=D03D, SerialNo=
|  Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }
|  RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
|  BuffType=unknown, BuffSize=128kB, MaxMultSect=0
|  (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
|  IORDY=on/off, tPIO={min:120,w/IORDY:120},
|  tDMA={min:120,rec:120}
|  PIO modes: pio0 pio1 pio2 pio3 pio4
|  DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2 udma0 udma1 *udma2
|  AdvancedPM=no
| 
|  busstate     =  1 (on)
| 
| hdparm -vi /dev/hdc:
| /dev/hdc:
|  HDIO_GET_MULTCOUNT failed: Input/output error
|  I/O support  =  3 (32-bit w/sync)
|  unmaskirq    =  0 (off)
|  using_dma    =  0 (off)
|  keepsettings =  0 (off)
|  HDIO_GET_NOWERR failed: Input/output error
|  readonly     =  0 (off)
|  BLKRAGET failed: Input/output error
|  HDIO_GETGEO failed: Invalid argument
| 
|  Model=LITE-ON LTR-12101B, FwRev=LS3J, SerialNo=
|  Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }
|  RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
|  BuffType=unknown, BuffSize=1024kB, MaxMultSect=0
|  (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
|  IORDY=on/off, tPIO={min:120,w/IORDY:120},
|  tDMA={min:120,rec:120}
|  PIO modes: pio0 pio1 pio2 pio3 pio4
|  DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 *mdma2
|  AdvancedPM=no
| 
|  busstate     =  1 (on)

Wie du siehst läuft das CDROM im UDMA2 und ich schätze mal deines tut
das nicht, deswegen die ganzen Hacker im Betrieb. Oder aber dein
Prozessort ist zu lahm? (Hier P3 500 MHz)

Andreas

-- 
Zwei Knaben stiegen auf einen Baum.
Sie wollten beide Äpfel klaun.
Sie fanden keinen Appel,
der Baum war nämlich ne Pappel.

Attachment: pgpkd8bOyRMyw.pgp
Description: PGP signature


Reply to: