[Bug 278569] DMA bounce pages are not freed when DMA tag is destroyed
Date: Sat, 16 Nov 2024 16:15:17 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278569
Mark Johnston <markj@FreeBSD.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Assignee|bugs@FreeBSD.org |markj@FreeBSD.org
Status|New |Open
CC| |markj@FreeBSD.org
--- Comment #1 from Mark Johnston <markj@FreeBSD.org> ---
I posted a patch to fix this plus some related issues:
https://reviews.freebsd.org/D47521
However, the problem isn't a leak per se, it's that the check in
alloc_bounce_zone() fails to find the existing bounce zone when the DMA tag's
alignment is < PAGE_SIZE. In particular, bounce zones are not private to a DMA
tag; they're on a global linked list and can be shared, but the check which
decides whether to use an existing zone is broken, so we allocate a new zone
each time, which manifests as a leak.
--
You are receiving this mail because:
You are the assignee for the bug.