Re: [PATCH]: iommu fix potential overflow in alloc_iommu()

From: FUJITA Tomonori
Date: Mon Jul 21 2008 - 11:47:25 EST


On Mon, 21 Jul 2008 11:21:39 -0400
Prarit Bhargava <prarit@xxxxxxxxxx> wrote:

>
>
> FUJITA Tomonori wrote:
> > On Mon, 21 Jul 2008 10:15:22 -0400
> > Prarit Bhargava <prarit@xxxxxxxxxx> wrote:
> >
> >
> >> (This didn't appear on LKML or any of the mirrors ... trying again)
> >>
> >> It is possible that alloc_iommu()'s boundary_size overflows as
> >> dma_get_seg_boundary can return 0xffffffff. In that case, further usage of
> >> boundary_size triggers a BUG_ON() in the iommu code.
> >>
> >
> > Did you actually hit this? pci-gart_64.c is used only by X86_64.
> >
>
> I hit this by declaring a device struct and not declaring a value for
> dev->dma_parms->segment_boundary_mask.

What do you mean? You set dev->dma_params but does't set
dev->dma_parms->segment_boundary_mask? If so, you need to fix your
code. If you set dev->dma_parms, dma_parms needs to be initialized
properly.
--
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/