[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: DMA not permitted since 2.6.14



Le lundi 12 décembre 2005 à 16:54 +0100, David LIMA a écrit :
> Le lundi 12 décembre 2005 à 16:02 +0100, Florian Kulzer a écrit :
> > Hi David,
> > 
> > First of all, I do not have the exact same controller that you have
> > (mine is an Intel Corporation 82801DBM (ICH4-M) IDE Controller).
> > However, since I had the same problems when I tried to use PIIX
> > as a module, I hope what I write below might be helpful to you.
> > 
> > My 2.6.14 kernel was compiled from the Debian package
> > linux-source-2.6.14-2 without any additional patches, using make-kpkg
> > with yaird for the initrd-generation. 
> Me too, I used the same method to generate my kernel. 
> 
> > PIIX is included in the kernel and
> > I do not have any entry for it in my output of lsmod. (This seems to be
> > one important difference between your configuration and mine.) DMA gets
> > turned on automatically during boot, and I get transfer rates of about
> > 25-30 MB/s.
> > 
> > The fact that menuconfig does not let you select the PIIX driver as a
> > static part of the kernel (<*> instead of <m>) makes me suspect that you
> > have accidentally disabled some other necessary option.
> I have only cp my /boot/config-2.6.14-2-686 and (try to) change PIIX
> >  (In such a case
> > it does indeed not help to change the .config-file manually since the
> > inconsistency will be detected when you try to compile the kernel.)
> > 
> > I have pasted the relevant part of my .config file below, maybe a
> > comparison with your .config will tell you which option you should try
> > to activate. (There are a few more which are related to DMA, they are
> > all in "Device Drivers ---> ATA/ATAPI/MFM/RLL support" if you use
> > menuconfig.)
> > 
> > I hope this helps.
> > 
> > Regards,
> >               Florian
> > 
> > ==================== part of my .config ====================
> The differences
> > #
> > # ATA/ATAPI/MFM/RLL support
> > #
> > CONFIG_IDE=y
> > CONFIG_BLK_DEV_IDE=y
>   CONFIG_BLK_DEV_IDE=m
> > #
> > # Please see Documentation/ide.txt for help/info on IDE drives
> > #
> > # CONFIG_BLK_DEV_IDE_SATA is not set
> > # CONFIG_BLK_DEV_HD_IDE is not set
> > CONFIG_BLK_DEV_IDEDISK=y
>   CONFIG_BLK_DEV_IDEDISK=m
> > CONFIG_IDEDISK_MULTI_MODE=y
> # CONFIG_IDEDISK_MULTI_MODE is not set
> > CONFIG_BLK_DEV_IDECS=m
> > CONFIG_BLK_DEV_IDECD=y
>   CONFIG_BLK_DEV_IDECD=m
> > CONFIG_BLK_DEV_IDETAPE=m
> > CONFIG_BLK_DEV_IDEFLOPPY=m
> > CONFIG_BLK_DEV_IDESCSI=m
> > # CONFIG_IDE_TASK_IOCTL is not set
> > 
> > #
> > # IDE chipset support/bugfixes
> > #
> > CONFIG_IDE_GENERIC=y
>   CONFIG_IDE_GENERIC=m
> > CONFIG_BLK_DEV_CMD640=y
> > # CONFIG_BLK_DEV_CMD640_ENHANCED is not set
> > # CONFIG_BLK_DEV_IDEPNP is not set
> > CONFIG_BLK_DEV_IDEPCI=y
>   CONFIG_BLK_DEV_GENERIC=m
> > CONFIG_IDEPCI_SHARE_IRQ=y
> > # CONFIG_BLK_DEV_OFFBOARD is not set
> > CONFIG_BLK_DEV_GENERIC=y
> > # CONFIG_BLK_DEV_OPTI621 is not set
> > # CONFIG_BLK_DEV_RZ1000 is not set
> > CONFIG_BLK_DEV_IDEDMA_PCI=y
> > # CONFIG_BLK_DEV_IDEDMA_FORCED is not set
> > CONFIG_IDEDMA_PCI_AUTO=y
> > # CONFIG_IDEDMA_ONLYDISK is not set
> > # CONFIG_BLK_DEV_AEC62XX is not set
> > # CONFIG_BLK_DEV_ALI15X3 is not set
> > # CONFIG_BLK_DEV_AMD74XX is not set
> > # CONFIG_BLK_DEV_ATIIXP is not set
> > # CONFIG_BLK_DEV_CMD64X is not set
> > # CONFIG_BLK_DEV_TRIFLEX is not set
> > # CONFIG_BLK_DEV_CY82C693 is not set
> > # CONFIG_BLK_DEV_CS5520 is not set
> > # CONFIG_BLK_DEV_CS5530 is not set
> > # CONFIG_BLK_DEV_HPT34X is not set
> > # CONFIG_BLK_DEV_HPT366 is not set
> > # CONFIG_BLK_DEV_SC1200 is not set
> > CONFIG_BLK_DEV_PIIX=y
>   CONFIG_BLK_DEV_PIIX=m (can"t change it you know why)
> > # CONFIG_BLK_DEV_IT821X is not set
> > # CONFIG_BLK_DEV_NS87415 is not set
> > # CONFIG_BLK_DEV_PDC202XX_OLD is not set
> > # CONFIG_BLK_DEV_PDC202XX_NEW is not set
> > # CONFIG_BLK_DEV_SVWKS is not set
> > # CONFIG_BLK_DEV_SIIMAGE is not set
> > # CONFIG_BLK_DEV_SIS5513 is not set
> > # CONFIG_BLK_DEV_SLC90E66 is not set
> > # CONFIG_BLK_DEV_TRM290 is not set
> > # CONFIG_BLK_DEV_VIA82CXXX is not set
> > # CONFIG_IDE_ARM is not set
> > CONFIG_BLK_DEV_IDEDMA=y
> > # CONFIG_IDEDMA_IVB is not set
> > CONFIG_IDEDMA_AUTO=y
> > # CONFIG_BLK_DEV_HD is not set
> > 
> Great!, parent options let me put PIIX to y (* from menuconfig). I'll
> recompile my kernel and see if it works (have to).
> 
> Thanks for you support Florian.
> 
> Cheers,
> 
> David LIMA
> 
> 

That do the trick ! 

 hdparm -tT /dev/hd{a,c}

/dev/hda:
 Timing cached reads:   880 MB in  2.01 seconds = 438.75 MB/sec
 Timing buffered disk reads:  142 MB in  3.02 seconds =  47.04 MB/sec

/dev/hdc:
 Timing cached reads:   708 MB in  2.00 seconds = 353.17 MB/sec
 Timing buffered disk reads:  152 MB in  3.08 seconds =  49.39 MB/sec

My lsmod does not show PIIX anymore

Thanks Florian for you .config file ;) 

Cheers, 

David LIMA



Reply to: