Module Name: src Committed By: martin Date: Fri Sep 20 10:47:52 UTC 2024
Modified Files: src/sys/arch/x86/x86 [netbsd-10]: bus_dma.c Log Message: Pull up following revision(s) (requested by rin in ticket #881): sys/arch/x86/x86/bus_dma.c: revision 1.90 x86/bus_dma.c: Sprinkle KASSERTMSG. To generate a diff of this commit: cvs rdiff -u -r1.89 -r1.89.4.1 src/sys/arch/x86/x86/bus_dma.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/x86/x86/bus_dma.c diff -u src/sys/arch/x86/x86/bus_dma.c:1.89 src/sys/arch/x86/x86/bus_dma.c:1.89.4.1 --- src/sys/arch/x86/x86/bus_dma.c:1.89 Sat Aug 20 23:48:51 2022 +++ src/sys/arch/x86/x86/bus_dma.c Fri Sep 20 10:47:52 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: bus_dma.c,v 1.89 2022/08/20 23:48:51 riastradh Exp $ */ +/* $NetBSD: bus_dma.c,v 1.89.4.1 2024/09/20 10:47:52 martin Exp $ */ /*- * Copyright (c) 1996, 1997, 1998, 2007, 2020 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.89 2022/08/20 23:48:51 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.89.4.1 2024/09/20 10:47:52 martin Exp $"); /* * The following is included because _bus_dma_uiomove is derived from @@ -207,7 +207,8 @@ _bus_dmamem_alloc_range(bus_dma_tag_t t, /* Always round the size. */ size = round_page(size); - KASSERT(boundary >= PAGE_SIZE || boundary == 0); + KASSERTMSG(boundary >= PAGE_SIZE || boundary == 0, + "boundary=0x%"PRIxBUSSIZE, boundary); /* * Allocate pages from the VM system. @@ -389,7 +390,9 @@ _bus_dmamap_load(bus_dma_tag_t t, bus_dm */ map->dm_mapsize = 0; map->dm_nsegs = 0; - KASSERT(map->dm_maxsegsz <= map->_dm_maxmaxsegsz); + KASSERTMSG(map->dm_maxsegsz <= map->_dm_maxmaxsegsz, + "maxsegsz=0x%"PRIxBUSSIZE", maxmaxsegsz=0x%"PRIxBUSSIZE, + map->dm_maxsegsz, map->_dm_maxmaxsegsz); if (buflen > map->_dm_size) return EINVAL; @@ -517,9 +520,12 @@ _bus_dmamap_load_mbuf(bus_dma_tag_t t, b */ map->dm_mapsize = 0; map->dm_nsegs = 0; - KASSERT(map->dm_maxsegsz <= map->_dm_maxmaxsegsz); + KASSERTMSG(map->dm_maxsegsz <= map->_dm_maxmaxsegsz, + "maxsegsz=0x%"PRIxBUSSIZE", maxmaxsegsz=0x%"PRIxBUSSIZE, + map->dm_maxsegsz, map->_dm_maxmaxsegsz); - KASSERT(m0->m_flags & M_PKTHDR); + KASSERTMSG(m0->m_flags & M_PKTHDR, "m0=%p m_flags=0x%x", m0, + m0->m_flags); if (m0->m_pkthdr.len > map->_dm_size) return (EINVAL); @@ -545,9 +551,15 @@ _bus_dmamap_load_mbuf(bus_dma_tag_t t, b break; case M_EXT|M_EXT_PAGES: - KASSERT(m->m_ext.ext_buf <= m->m_data); - KASSERT(m->m_data <= - m->m_ext.ext_buf + m->m_ext.ext_size); + KASSERTMSG(m->m_ext.ext_buf <= m->m_data, + "m=%p m_ext.ext_buf=%p m_ext.ext_size=%zu" + " m_data=%p", + m, m->m_ext.ext_buf, m->m_ext.ext_size, m->m_data); + KASSERTMSG((m->m_data <= + m->m_ext.ext_buf + m->m_ext.ext_size), + "m=%p m_ext.ext_buf=%p m_ext.ext_size=%zu" + " m_data=%p", + m, m->m_ext.ext_buf, m->m_ext.ext_size, m->m_data); offset = (vaddr_t)m->m_data - trunc_page((vaddr_t)m->m_ext.ext_buf); @@ -655,7 +667,9 @@ _bus_dmamap_load_uio(bus_dma_tag_t t, bu */ map->dm_mapsize = 0; map->dm_nsegs = 0; - KASSERT(map->dm_maxsegsz <= map->_dm_maxmaxsegsz); + KASSERTMSG(map->dm_maxsegsz <= map->_dm_maxmaxsegsz, + "maxsegsz=0x%"PRIxBUSSIZE", maxmaxsegsz=0x%"PRIxBUSSIZE, + map->dm_maxsegsz, map->_dm_maxmaxsegsz); resid = uio->uio_resid; iov = uio->uio_iov; @@ -732,7 +746,9 @@ _bus_dmamap_load_raw(bus_dma_tag_t t, bu */ map->dm_mapsize = 0; map->dm_nsegs = 0; - KASSERT(map->dm_maxsegsz <= map->_dm_maxmaxsegsz); + KASSERTMSG(map->dm_maxsegsz <= map->_dm_maxmaxsegsz, + "maxsegsz=0x%"PRIxBUSSIZE", maxmaxsegsz=0x%"PRIxBUSSIZE, + map->dm_maxsegsz, map->_dm_maxmaxsegsz); if (size0 > map->_dm_size) return EINVAL; @@ -811,8 +827,8 @@ _bus_dmamap_sync(bus_dma_tag_t t, bus_dm "bad offset 0x%"PRIxBUSADDR" >= 0x%"PRIxBUSSIZE, offset, map->dm_mapsize); KASSERTMSG(len <= map->dm_mapsize - offset, - "bad length 0x%"PRIxBUSADDR" + %"PRIxBUSSIZE - " > %"PRIxBUSSIZE, + "bad length 0x%"PRIxBUSADDR" + 0x%"PRIxBUSSIZE + " > 0x%"PRIxBUSSIZE, offset, len, map->dm_mapsize); }