Re: more iommu sg merging fallout

From: FUJITA Tomonori
Date: Tue Feb 19 2008 - 05:58:29 EST


On Sun, 17 Feb 2008 23:41:42 -0800 (PST)
David Miller <davem@xxxxxxxxxxxxx> wrote:

> From: FUJITA Tomonori <tomof@xxxxxxx>
> Date: Sat, 16 Feb 2008 15:03:43 +0900
>
> > [PATCH] sparc64: make IOMMU code respect the segment boundary limits
> >
> > Signed-off-by: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
>
> Looks good, but I think it will break sound for some ALI chips.
>
> Please see arch/sparc64/kernel/pci.c:ali_sound_dma_hack()
> and it's caller pci_dma_supported().

Could you explain the problem a little more?

The shift argument is only used as an offset when iommu-helper decides
whether a memory area (index plus npages) spanning LLD's segment
boudnary size or not.

For example, if a device's segment boudary size is 64K, the helper see
the following value is larger than 64K or not:

((the offset + index of the IOMMU table) ((64K / 8K) - 1) + npages
--
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/