Re: [PATCH 2.6.13] ide: ide-dma.c should always check hwif->cds before hwif->cds->foo

From: Bartlomiej Zolnierkiewicz
Date: Thu Sep 08 2005 - 10:48:11 EST


Hi,

On 9/8/05, Tom Rini <trini@xxxxxxxxxxxxxxxxxxx> wrote:
> In some cases (such as the mips Toshiba TX4939 w/ onboard IDE, not PCI
> IDE), hwif->cds can be NULL, so test that prior to testing
> hwif->cds->foo

Both ide_iomio_dma() and ide_mapped_mmio_dma() are only called from
ide_dma_iobase(). ide_setup_dma() is the only user of ide_dma_iobase()
and it is supposed to be used only by IDE PCI drivers.

What is the reason for this change?

Bartlomiej

> Signed-off-by: Hiroshi DOYU <hdoyu@xxxxxxxxxx>
> Signed-off-by: Tom Rini <trini@xxxxxxxxxxxxxxxxxxx>
>
> Index: linux-2.6/drivers/ide/ide-dma.c
> ===================================================================
> --- linux-2.6.orig/drivers/ide/ide-dma.c
> +++ linux-2.6/drivers/ide/ide-dma.c
> @@ -846,7 +846,7 @@ static int ide_mapped_mmio_dma(ide_hwif_
> printk(KERN_INFO " %s: MMIO-DMA ", hwif->name);
>
> hwif->dma_base = base;
> - if (hwif->cds->extra && hwif->channel == 0)
> + if (hwif->cds && hwif->cds->extra && hwif->channel == 0)
> hwif->dma_extra = hwif->cds->extra;
>
> if(hwif->mate)
> @@ -865,7 +865,7 @@ static int ide_iomio_dma(ide_hwif_t *hwi
> return 1;
> }
> hwif->dma_base = base;
> - if ((hwif->cds->extra) && (hwif->channel == 0)) {
> + if (hwif->cds && hwif->cds->extra && (hwif->channel == 0)) {
> request_region(base+16, hwif->cds->extra, hwif->cds->name);
> hwif->dma_extra = hwif->cds->extra;
> }
>
> --
> Tom Rini
> http://gate.crashing.org/~trini/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/