Remove a KASSERT which will also trigger for perfectly valid combinations

of small maxsize and "large" (including BUS_SPACE_UNRESTRICTED) nsegments
parameters. Generally using a presz of 0 (which indeed might indicate the
use of bogus parameters for DMA tag creation) is not fatal, it just means
that no additional DVMA space will be preallocated.
This commit is contained in:
marius 2010-09-14 20:31:09 +00:00
parent f5db453abe
commit 2172eaf479
2 changed files with 0 additions and 6 deletions

View File

@ -874,9 +874,6 @@ iommu_dvmamap_create(bus_dma_tag_t dt, int flags, bus_dmamap_t *mapp)
*/
maxpre = imin(dt->dt_nsegments, IOMMU_MAX_PRE_SEG);
presz = dt->dt_maxsize / maxpre;
KASSERT(presz != 0, ("%s: bogus preallocation size , nsegments = %d, "
"maxpre = %d, maxsize = %lu", __func__, dt->dt_nsegments, maxpre,
dt->dt_maxsize));
for (i = 1; i < maxpre && totsz < IOMMU_MAX_PRE; i++) {
currsz = round_io_page(ulmin(presz, IOMMU_MAX_PRE - totsz));
error = iommu_dvma_valloc(dt, is, *mapp, currsz);

View File

@ -513,9 +513,6 @@ hviommu_dvmamap_create(bus_dma_tag_t dt, int flags, bus_dmamap_t *mapp)
*/
maxpre = imin(dt->dt_nsegments, IOMMU_MAX_PRE_SEG);
presz = dt->dt_maxsize / maxpre;
KASSERT(presz != 0, ("hviommu_dvmamap_create: bogus preallocation size "
", nsegments = %d, maxpre = %d, maxsize = %lu", dt->dt_nsegments,
maxpre, dt->dt_maxsize));
for (i = 1; i < maxpre && totsz < IOMMU_MAX_PRE; i++) {
currsz = round_io_page(ulmin(presz, IOMMU_MAX_PRE - totsz));
error = hviommu_dvma_valloc(dt, him, *mapp, currsz);