You are not logged in.
hey everyone..
im trying hard to get dma activated on my sata drive..i dont need raid(and cant have it..only one sata drive ...but hdparm -tT shows slower performance on the sata drive
/dev/sda = sata
/dev/hda = pata
/dev/sda
hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 1008 MB in 2.01 seconds = 502.32 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
Timing buffered disk reads: 58 MB in 3.05 seconds = 19.04 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
hdparm /dev/sda
/dev/sda:
IO_support = 0 (default 16-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 24321/255/63, sectors = 390721968, start = 0
hdparm -i /dev/sda
/dev/sda:
HDIO_GET_IDENTITY failed: Inappropriate ioctl for device
--------------------------------------------------------------------------------------
the results for the pata drive are
/dev/hda
hdparm -Tt /dev/hda
/dev/hda:
Timing cached reads: 996 MB in 2.00 seconds = 497.58 MB/sec
Timing buffered disk reads: 120 MB in 3.00 seconds = 39.97 MB/sec
im able to enable dma/set Xfer mode/IO/ only in the pata drive, not in the sata drive..in kernel config ive enabled "scsi low-level->sata support->silicon image sata support" and also enabled "silicon image chipset support under ATA/ATAPI/MFM/RLL support"
im right now using sata as root and the drive is stable..just need dma..thanks in advance
Offline
According to Jeff Garzik's sata pages the drivers for the Sil 311x chipsets have beta status.
I had worse luck with my no-name PCI Sil-SATA controllers: as soon as I connected a hard disk the kernel would not boot anymore when using libata drivers. I can only use the allegedly deprecated IDE drivers, these work fine for me.
The libata drivers should set the proper DMA modes automatically, but things are slightly different with SATA. Anyways, 20MB/s is proof enough that some sort of DMA is actually there. Performance would be much worse without any DMA at all.
If you really want to use the libata driver you should try a 2.6.12rc kernel, libata has seen quite a many updates since 2.6.11
Cheers,
Dominik
Offline
thanks for the reply...so ure saying i should just disable sata under scsi and enable the deprecated IDE drivers? will i get better speeds then? also, will drive letters change if i do this(meaning will sda become hdx)?
Offline
wow...that worked out pretty bad..system wouldnt boot at all with the depr. IDE drivers..it kept trying to load the "pessimistic seagate fix" or something similar...ive switched back to libata...should i just wait for 2.6.12?
Offline
Well, obviously the old ide drivers did not work. Anyways, if you would use them the related disk devices would change from /dev/sdx to /dev/hdx indeed.
Several (older) SATA controllers are broken and so are a number of early drives. Updating the kernel may not really help for the speed. However, if speed is not your primary concern then you'll probably fare best with keeping the libata-drivers and waiting for 2.6.12
However, you could also compile your own 2.6.12rcx kernel, too. That rc series has been around for so long it should be relatively stable now.
Offline
how about commenting out the seagate blacklist in the sata_sil.c file and recompiling?will that make things really unstable?
Offline
hey that actually worked pretty well...im not able to set dma using hdparm, but im getting speeds of
/dev/sda:
Timing cached reads: 1028 MB in 2.00 seconds = 512.80 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
Timing buffered disk reads: 164 MB in 3.03 seconds = 54.04 MB/sec
HDIO_DRIVE_CMD(null) (wait for flush complete) failed: Inappropriate ioctl for device
which is three times faster! anyway before i get too excited im going to wait and see cause someone at LQ.org said that doing this was a trade in for data integrity..thanks for the help!
Offline