LinuxSir.cn,穿越时空的Linuxsir!

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

配置内核时关于DMA的问题[已解决]

[复制链接]
发表于 2007-7-31 16:42:29 | 显示全部楼层 |阅读模式
今天用2007.0的stage3装gentoo时发现make menuconfig里根本没有这个选项
Use PCI DMA by default when available
而其它的选项都正常
内核是linux-2.6.22-gentoo-r2
芯片是intel ich5,已经选上了那个intel的驱动
以前是没有问题的

编译出来后,打不开DMA
hdparm -tT /dev/hda 两项只有600和2

请问要怎么样才能打开阿,郁闷中

看了一下.config里面也没有CONFIG_IDEDMA_PCI_AUTO这一项

#hdparm -d1 /dev/hda
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma = 0 (off)
发表于 2007-7-31 18:57:44 | 显示全部楼层
handbook-x86.htm
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1
Code Listing 8: Activating DMA

Device Drivers --->
  ATA/ATAPI/MFM/RLL support --->
   
  • Generic PCI bus-master DMA support
  • Device Drivers --->
      ATA/ATAPI/MFM/RLL support --->
       
  • Generic PCI bus-master DMA support
       
  •    Use PCI DMA by default when available

  • Code Listing 7: Tweaking hard disk performance

    (Activate DMA
    # hdparm -d 1 /dev/hda

    (Activate Safe Performance Options
    # hdparm -d 1 -A 1 -m 16 -u 1 -a 64 /dev/hda
    回复 支持 反对

    使用道具 举报

    发表于 2007-7-31 19:18:13 | 显示全部楼层
    -a 64 太保守了,最少都应该用 1024
    回复 支持 反对

    使用道具 举报

    发表于 2007-7-31 22:29:41 | 显示全部楼层
    你是sata的吗?sata的没dma
    回复 支持 反对

    使用道具 举报

    发表于 2007-7-31 22:38:38 | 显示全部楼层
    Post by jjj311
    你是sata的吗?sata的没dma


    没有dma?没有dma位什么在开始安装的时候有个专门针对sata设备和scsi设备开启dma的命令?
    回复 支持 反对

    使用道具 举报

    发表于 2007-7-31 22:43:57 | 显示全部楼层
    > is hdparm useful with sata drives, does

    > it work with sata drives?

    SATA drives in the 2.6 kernel are handled by the new "libata" SCSI driver. If you add the "ATA passthru" patch (from Jeff Garzik) to your kernel, then hdparm can work with those drives.

    Some flags, like "-d", are not supported by libata. Currently, ALL SATA hard drives use DMA, so there is no need for -d. But eventually libata will have to implement ATA PIO (for CF cards..), and at that time it may (or not) begin to support the "-d" flag.
    回复 支持 反对

    使用道具 举报

    发表于 2007-7-31 22:49:21 | 显示全部楼层
    Note: much of this document is tailored towards standard IDE connected devices. If you use SATA or SCSI, look at using sdparm instead of hdparm

    who来解释一下上面这句,刚刚受人指点找到wiki里的一段话,而且我确实用了,也起效了
    回复 支持 反对

    使用道具 举报

    发表于 2007-7-31 23:29:02 | 显示全部楼层
    回复 支持 反对

    使用道具 举报

    发表于 2007-8-1 07:42:42 | 显示全部楼层

    俺不是说我不懂这句话,俺的意思是说如果没有dma,干嘛要专门给个在sata下面开启dma的命令来
    回复 支持 反对

    使用道具 举报

    发表于 2007-8-1 14:48:04 | 显示全部楼层
    有sdparm,不代表有开启dma的命令
    使用libata的话,DMA是默认开启的
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

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