Tema: Dma
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/05/2004, 10:34
kikelee
 
Fecha de Ingreso: julio-2003
Ubicación: Queretaro Qro.
Mensajes: 131
Antigüedad: 21 años, 4 meses
Puntos: 1
Dma

Hola saben tengo un problemon

He estado leyendo y verificando que sucede con mi pc que tiene linux, esta empieza a arrojar una serie de errores.

De lo poco que he leido y probado se supone que es un problema de HD, algunos usan el concepto de que HD se esta muriendo? bueno no enteder del todo el termino aun...

Dejenme les cuento he estado probando con el hdparm y e testeado mi linux, estos son los datos:

#dmesg | grep hda

Kernel command line: ro root=/dev/hda5
ide0: BM-DMA at 0xfcf0-0xfcf7, BIOS settings: hda:pio, hdb:pio
hda: ST320413A, ATA DISK drive
hda: 39102336 sectors (20020 MB) w/1024KiB Cache, CHS=2586/240/63, (U)DMA
hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 >
hda: timeout waiting for DMA
hda: status timeout: status=0xd0 { Busy }
hda: drive not ready for command
hda: status timeout: status=0x80 { Busy }
hda: drive not ready for command
hda: timeout waiting for DMA
hda: status timeout: status=0xd0 { Busy }
hda: drive not ready for command
hda: status timeout: status=0x80 { Busy }
hda: drive not ready for command
hda: timeout waiting for DMA
hda: status timeout: status=0xd0 { Busy }
hda: drive not ready for command
hda: timeout waiting for DMA
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing MULTWRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing WRITE
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing WRITE
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing WRITE
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing WRITE
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing MULTWRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing MULTWRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing MULTWRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing WRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing MULTWRITE
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing WRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE
hda: timeout waiting for DMA
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: drive not ready for command
hda: status error: status=0x50 { DriveReady SeekComplete }
hda: no DRQ after issuing MULTWRITE
hda: recal_intr: status=0x51 { DriveReady SeekComplete Error }
hda: recal_intr: error=0x84 { DriveStatusError BadCRC }
hda: status timeout: status=0xd0 { Busy }
hda: no DRQ after issuing WRITE


y a partir de esta linea hda: timeout waiting for DMA, comienza el errror

He intentado modificar esto con hdparm tratando de activar el DMA

Esto es para optimizar (sugerencia de un how)

#hdparm -X66 -u1 -m16 -c3 -W1 /dev/hda

#hdparm /dev/hda

/dev/hda:
multcount = 16 (on)
I/O support = 3 (32-bit w/sync)
unmaskirq = 1 (on)
using_dma = 0 (off)
keepsettings = 0 (off)
nowerr = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 2586/240/63, sectors = 39102336, start = 0
busstate = 1 (on)

#hdparm -i /dev/hda

/dev/hda:

Model=ST320413A, FwRev=3.57, SerialNo=7ED1BCSF
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=1024kB, MaxMultSect=16, MultSect=16
CurCHS=17475/15/63, CurSects=16513875, LBA=yes, LBAsects=39102336
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2 udma0 udma1 *udma2
AdvancedPM=no WriteCache=enabled
Drive Supports : Reserved : ATA-1 ATA-2 ATA-3 ATA-4 ATA-5

el asunto es cuando trato de activar el DMA ya que esta apagado: using_dma = 0 (off)


#hdparm -X66 -d1 -u1 -m16 -c3 -W1 /dev/hda

trata de activar todo y se detiene un poco en using_dma tratando de activarlo y manda errores y me añade una nueva linea de error cuando veo los hda:

#dmesg | grep hda {el listado del principio mas un nuevo error mas}

he provado activarlo por separado y en conjunto

#hdparm -d1 /dev/hda
#hdparm -X66 -d1 -u1 -m16 -c3 -W1 /dev/hda

y la unica forma de activarlo momentaneamente es:

#hdparm -c3 -d1 /dev/hda

lo activa pero despues de unos minutos manada mensajes de error y se desactiva todo.

el problema que tengo es con el HD (sino corrijanme plis) y especificamente con el DMA y tal ves le este pegando a mas cosas.

Que puedo hacer...


Espero me puedan ayudar, con sus aportaciones gracias....
__________________
Kike Lee
Paz && Bien