LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1124|回复: 9

新内核不支持DMA?! ·搞定!]

[复制链接]
发表于 2005-9-30 14:29:06 | 显示全部楼层 |阅读模式
新编译的2.6.13-2,才发现居然不支持DMA!

loveDebian:~# hdparm /dev/hdd

/dev/hdd:
multcount    = 16 (on)
IO_support   =  1 (32-bit)
unmaskirq    =  0 (off)
using_dma    =  0 (off)
keepsettings =  0 (off)
readonly     =  0 (off)
readahead    = 256 (on)
geometry     = 39704/16/63, sectors = 40021632, start = 0

loveDebian:~# hdparm -X66 /dev/hdd

/dev/hdd:
setting xfermode to 66 (UltraDMA mode2)
loveDebian:~# hdparm /dev/hdd

/dev/hdd:
multcount    = 16 (on)
IO_support   =  1 (32-bit)
unmaskirq    =  0 (off)
using_dma    =  0 (off)
keepsettings =  0 (off)
readonly     =  0 (off)
readahead    = 256 (on)
geometry     = 39704/16/63, sectors = 40021632, start = 0
loveDebian:~# hdparm -d1 /dev/hdd

/dev/hdd:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma    =  0 (off)
loveDebian:~#


我的硬盘是支持DMA100的,照理应该可以用-X69。可是现在就是用了X66,仍然打不开DMA。编译内核时,ATA部分有关的DMA选项都打开了呀!
怎么搞的?
 楼主| 发表于 2005-9-30 14:31:50 | 显示全部楼层
hdparm -tT 速度测试远没有以前快。
如果强行-X69 则提示大意是
UDMA 3/4/5不是有效的功能
回复 支持 反对

使用道具 举报

发表于 2005-9-30 15:28:54 | 显示全部楼层
/dev/hda:
multcount    =  0 (off)
IO_support   =  0 (default 16-bit)
unmaskirq    =  0 (off)
using_dma    =  1 (on)
keepsettings =  0 (off)
readonly     =  0 (off)
readahead    = 256 (on)
geometry     = 16383/255/63, sectors = 78242976, start = 0

Linux darkstar 2.6.13.1 #1 Mon Sep 19 19:41:46 CST 2005 i686 GNU/Linux
我的默认打开
编译的问题或者别的什么原因
回复 支持 反对

使用道具 举报

发表于 2005-9-30 15:55:12 | 显示全部楼层
我的打开了也不快多少
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-30 16:32:33 | 显示全部楼层
以前在redhat下,打开后hdparm的测试速度是1xMB/s甚至20多MB/s
现在只是可怜的5MB/s
回复 支持 反对

使用道具 举报

发表于 2005-9-30 16:49:01 | 显示全部楼层
我的i810也没打开,后来检查了一下,内核编译时ata的一个叫intel piix的选项没选(当时觉得对不上i810 芯片)。
选上重编译,现在缺省dma是打开的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-30 16:57:28 | 显示全部楼层
Post by acguy
我的i810也没打开,后来检查了一下,内核编译时ata的一个叫intel piix的选项没选(当时觉得对不上i810 芯片)。
选上重编译,现在缺省dma是打开的。


哥们,我的是i815e,应该和你的一样,我已经选了阿,不过我选择的是模块。怎么还是打不开呢?
loveDebian:~# lsmod
Module                  Size  Used by
nvidia               3693416  12
pppoe                  10592  2
pppox                   2472  1 pppoe
ppp_generic            25588  6 pppoe,pppox
slhc                    6176  1 ppp_generic
sd_mod                 13968  0
scsi_mod               80996  1 sd_mod
intel_agp              20924  1
via_rhine              20644  0
tulip                  50464  0
8139too                22464  0
snd_intel8x0           29952  3
snd_ac97_codec         84508  1 snd_intel8x0
snd_pcm_oss            50304  0
snd_mixer_oss          17600  2 snd_pcm_oss
snd_pcm                84104  4 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer              22116  2 snd_pcm
snd                    46372  8 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
soundcore               7360  2 snd
snd_page_alloc          8360  2 snd_intel8x0,snd_pcm
uhci_hcd               31472  0
usbcore               110236  2 uhci_hcd
piix                    9188  0 [permanent]
agpgart                29224  2 nvidia,intel_agp
evdev                   7456  0
it87                   19552  0
i2c_sensor              2656  1 it87
i2c_core               17488  2 it87,i2c_sensor
psmouse                32932  0
loveDebian:~#
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-30 17:01:34 | 显示全部楼层
loveDebian:~# lsmod |grep piix
piix                    9188  0 [permanent]
loveDebian:~#
回复 支持 反对

使用道具 举报

发表于 2005-9-30 17:02:59 | 显示全部楼层
我的可能也是815E, 精英p6isa-11
我不是用模块,直接编进内核
hdparm -I /dev/hda 看了一下,支持udma5
hdparm -X69 /dev/hda 成功
再用hdparm -I /dev/hda 好象还是udma2模式
不过懒得整了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-30 17:19:43 | 显示全部楼层
OK re-compiling for testing.
Thank you!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表