[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Fix IDE CD-drive PIO mode.
# HG changeset patch # User cl349@xxxxxxxxxxxxxxxxxxxx # Node ID ad33b3882867f6ab4466383129aa3827c64508d3 # Parent 2436cc71de508f409b957e9eb24c1f34b1ab615d Fix IDE CD-drive PIO mode. CD drives in PIO mode don't work under Xen because of a change in Linux between 2.6.12 and 2.6.16, as a result of the following thread: http://lists.parisc-linux.org/pipermail/parisc-linux/2005-August/027197.html The change breaks systems which have highmem and a swiotlb because the ide-cd driver doesn't use the swiotlb, resulting in read/writes to/from highmem pages in PIO mode not working any longer. Xen kernels usually have both highmem and a swiotlb. Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxx> --- patches/linux-2.6.16.13/fix-ide-cd-pio-mode.patch | 13 +++++++++++++ 1 files changed, 13 insertions(+) diff -r 2436cc71de50 -r ad33b3882867 patches/linux-2.6.16.13/fix-ide-cd-pio-mode.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/linux-2.6.16.13/fix-ide-cd-pio-mode.patch Wed May 24 19:41:47 2006 +0100 @@ -0,0 +1,18 @@ +diff -ru ../pristine-linux-2.6.16.13/drivers/ide/ide-lib.c ./drivers/ide/ide-lib.c +--- ../pristine-linux-2.6.16.13/drivers/ide/ide-lib.c 2006-05-02 22:38:44.000000000 +0100 ++++ ./drivers/ide/ide-lib.c 2006-05-24 18:37:05.000000000 +0100 +@@ -410,10 +410,10 @@ + { + u64 addr = BLK_BOUNCE_HIGH; /* dma64_addr_t */ + +- if (!PCI_DMA_BUS_IS_PHYS) { +- addr = BLK_BOUNCE_ANY; +- } else if (on && drive->media == ide_disk) { +- if (HWIF(drive)->pci_dev) ++ if (on && drive->media == ide_disk) { ++ if (!PCI_DMA_BUS_IS_PHYS) ++ addr = BLK_BOUNCE_ANY; ++ else if (HWIF(drive)->pci_dev) + addr = HWIF(drive)->pci_dev->dma_mask; + } + _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |