lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:  <loom.20061025T111524-521@post.gmane.org>
Date:	Wed, 25 Oct 2006 09:24:04 +0000 (UTC)
From:	Panagiotis Issaris <takis.issaris@...sselt.be>
To:	linux-kernel@...r.kernel.org
Subject:  Re: [BUG] DMA timeout errors on Dell Latitude XPi CD P150ST

Hi,

Panagiotis Issaris <panagiotis <at> gmail.com> writes:
> When booting Linux 2.6.19-rc3 (or 2.6.8-16sarge5 so it is not specific
> to the current kernels) on a friends laptop, I'm getting a lot of
> errormessages from the IDE controller related to DMA problems. When
> disabling all DMA related options, the kernel boots fine (and fast).
> With DMA enabled, it takes about 1 minute to stumble over the DMA
> problems. The laptop is Dell Latitude XPi CD P150ST.
Debian developer Frederik Schueler noted that as far as he knows the laptop does
not support DMA. 

It seems that in drivers/ide/setup-pci.c, DMA is being forced on:
177 static unsigned long ide_get_or_set_dma_base (ide_hwif_t *hwif)
...
225         switch(dev->device) {
...
22x             case PCI_DEVICE_ID_CMD_643:
...
234                 if (simplex_stat & 0x80) {
235                     printk(KERN_INFO "%s: simplex device: "
236                         "DMA forced\n",
...
240             default:
241                 /*
242                  * If the device claims "simplex" DMA,
243                  * this means only one of the two interfaces
244                  * can be trusted with DMA at any point in time.
245                  * So we should enable DMA only on one of the
246                  * two interfaces.
247                  */
...
259                         printk(KERN_INFO "%s: simplex device: "
260                             "DMA disabled\n",
...

I would guess it would be enough to remove the PCI_DEVICE_ID_CMD_643 and let it
be handled by the default case, thus disabling DMA. I will try the attached
patch on my friends laptop as soon as he brings it along.

With friendly regards,
Takis

diff --git a/drivers/ide/setup-pci.c b/drivers/ide/setup-pci.c
index 0719b64..5a7b6f6 100644
--- a/drivers/ide/setup-pci.c
+++ b/drivers/ide/setup-pci.c
@@ -226,7 +226,6 @@ #endif /* CONFIG_BLK_DEV_IDEDMA_FORCED *
                        case PCI_DEVICE_ID_AL_M5219:
                        case PCI_DEVICE_ID_AL_M5229:
                        case PCI_DEVICE_ID_AMD_VIPER_7409:
-                       case PCI_DEVICE_ID_CMD_643:
                        case PCI_DEVICE_ID_SERVERWORKS_CSB5IDE:
                        case PCI_DEVICE_ID_REVOLUTION:
                                simplex_stat = hwif->INB(dma_base + 2);


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ