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

Bug#275910: kernel-imege-2.4.26-1-686 hangs on boot because of DMA - error



On Mon, Oct 11, 2004 at 01:00:13AM +0200, Steffen Ille wrote:
> Package: kernel-image-2.4.26-1-686
> Version: 2.4.26-6
> 
> After I installed this Kernel-Image on this System:
> - Pentium 3 - 800MHz
> - VIA-Apollo MVP Chipset
> - 448MB SD-RAM
> - 82Cxxx IDE-Controller
> - Seagate 4,6 GB Harddisk
> 
> the dmesg reported a "late registration of driver".
> At the init step "calculating module depencies" occured an
> ide_dma_timeout 0x20 error and a kernel panic "attemp to kill init".
> I've seen, the VIA82Cxxx driver is loaded as a module.
> 
> I've got the system to boot by adding "append="ide=nodma" " to the lilo.conf
> and re-enabling DMA by an init - script with
> "hdparm -c1 -d1 -k1 -X66 /dev/hda".
> But this might not be the finest solution.
> I thought Debain never tries to enable DMA on boot, so I'm confused what
> happened here.

The debian kernels use CONFIG_IDEDMA_PCI_AUTO which is a good choice
except in your case.

Use PCI DMA by default when available
CONFIG_IDEDMA_PCI_AUTO
  Prior to kernel version 2.1.112, Linux used to automatically use
  DMA for IDE drives and chipsets which support it. Due to concerns
  about a couple of cases where buggy hardware may have caused damage,
  the default is now to NOT use DMA automatically. To revert to the
  previous behaviour, say Y to this question.

  If you suspect your hardware is at all flakey, say N here.
  Do NOT email the IDE kernel people regarding this issue!

  It is normally safe to answer Y to this question unless your
  motherboard uses a VIA VP2 chipset, in which case you should say N.

I am left wondering if we can enhance the CONFIG_IDEDMA_PCI_AUTO code
to turn off autoprobe in the case of known to be problematic chipsets.
Does anyone have any thoughts on this?

-- 
Horms



Reply to: