Calgary and bad_dma_address
From: Pete Zaitcev
Date: Tue Sep 09 2008 - 23:24:18 EST
Hi, guys:
I was reading arch/x86/kernel/pci-calgary_64.c today, and noticed that
apparently nothing prevents iommu_area_alloc from returning a zero.
But bad_dma_address is zero too. Doesn't it concern anyone?
If the first allocation asks for a page-aligned buffer to be mapped,
a spurious bad address will result, if I understand this right.
The simplest way to avoid the problem is to lose a page and set a bit
in tce_table_setparms():
set_bit(tbl->it_map, bad_dma_address);
But I don't see anything like that done anywhere.
-- Pete
--
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/