|
|
安装fedora 3后,dmesg |grep ata,看到如下:
ata1: SATA max UDMA/133 cmd 0xFE00 ctl 0xFE12 bmdma 0xFEA0 irq 7
ata2: SATA max UDMA/133 cmd 0xFE20 ctl 0xFE32 bmdma 0xFEA8 irq 7
用hdparm查看硬盘参数,发现DMA模式已经打开。
编译内核2.6.10,与硬盘有关的选项配置如下;
ATA/ATAPI/MFM/RLL support --->
<*> ATA/ATAPI/MFM/RLL support
<*> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
--- Please see Documentation/ide.txt for help/info on IDE drives
[ ] Support for SATA (deprecated; conflicts with libata SATA driver)
[ ] Use old disk-only driver on primary interface
<M> Include IDE/ATA-2 DISK support
[ ] Use multi-mode by default
< > Include IDE/ATAPI CDROM support
< > Include IDE/ATAPI TAPE support (EXPERIMENTAL)
< > Include IDE/ATAPI FLOPPY support
< > SCSI emulation support
[ ] IDE Taskfile Access
--- IDE chipset support/bugfixes
<*> generic/default IDE chipset support
[ ] CMD640 chipset bugfix/support
[ ] PCI IDE chipset support
SCSI device support --->
<M> SCSI device support
[ ] legacy /proc/scsi/ support
--- SCSI support type (disk, tape, CD-ROM)
< > SCSI disk support
< > SCSI tape support
< > SCSI OnStream SC-x0 tape support
< > SCSI CDROM support
< > SCSI generic support
--- Some SCSI devices (e.g. CD jukebox) support multiple LUNs
[ ] Probe all LUNs on each SCSI device
[ ] Verbose SCSI error reporting (kernel size +=12K)
[ ] SCSI logging facility
SCSI Transport Attributes --->
SCSI low-level drivers --->
< > 3ware 5/6/7/8xxx ATA-RAID support
< > 3ware 9xxx SATA-RAID support
< > ACARD SCSI support
< > Adaptec AACRAID support
< > Adaptec AIC7xxx Fast -> U160 support (New Driver)
< > Adaptec AIC7xxx support (old driver)
< > Adaptec AIC79xx U320 support
< > Adaptec I2O RAID support
< > AdvanSys SCSI support
[ ] LSI Logic New Generation RAID Device Drivers
< > LSI Logic Legacy MegaRAID Driver
Serial ATA (SATA) support
< > AHCI SATA support
< > ServerWorks Frodo / Apple K2 SATA support
<M> Intel PIIX/ICH SATA support
< > NVIDIA SATA support
< > Promise SATA TX2/TX4 support
< > Promise SATA SX4 support
< > Silicon Image SATA support
< > SiS 964/180 SATA support
< > ULi Electronics SATA support
< > VIA SATA support
< > VITESSE VSC-7174 SATA support
< > BusLogic SCSI support
< > DMX3191D SCSI support
< > EATA ISA/EISA/PCI (DPT and generic EATA/DMA-compliant boards) support
重启后,dmesg中显示:
ata1: SATA max UDMA/133 cmd 0xFE00 ctl 0xFE12 bmdma 0xFEA0 irq 18
ata2: SATA max UDMA/133 cmd 0xFE20 ctl 0xFE32 bmdma 0xFEA8 irq 18
hdparm -i /dev/hda:
显示:UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5 udma6
hdparm /dev/hda:
/dev/hda:
multcount = 0 (off)
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 65535/16/63, sectors = 80000000000, start = 0
显示DMS模式关闭。
hdparm -tT /dev/hda
/dev/hda:
Timing cached reads: 2852 MB in 2.00 seconds = 1426.22 MB/sec
Timing buffered disk reads: 10 MB in 3.26 seconds = 3.07 MB/sec
硬盘数据传输率只有3M/秒。
hdparm –d1 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma = 0 (off)
启动DMA模式失败。
hdparm -c3 /dev/hda
/dev/hda:
setting 32-bit IO_support flag to 3
IO_support = 3 (32-bit w/sync)
再测试硬盘传输率:
/dev/hda:
Timing cached reads: 2720 MB in 2.00 seconds = 1360.21 MB/sec
Timing buffered disk reads: 16 MB in 3.36 seconds = 4.76 MB/sec,略有提高。
Hdparm -X udma5 /dev/hda
dmesg中显示:ide0: Speed warnings UDMA 3/4/5 is not functional
DMA模式问题还是没有解决。
请问如何解决这个问题? |
|