[Bug 230334] busdma(9) is missing bus_dmamap_sync_range()

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Fri Aug 3 16:25:05 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230334

            Bug ID: 230334
           Summary: busdma(9) is missing bus_dmamap_sync_range()
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs at FreeBSD.org
          Reporter: jhibbits at FreeBSD.org

bus_dmamap_sync(9) syncs the entire page range in a mapping, which can be very
costly if only a small range is needed.

Some drivers, perhaps many, share DMA maps for multiple queues or entries, and
only need to update one segment.  Instead of syncing the full map, there should
be a way to sync only the updated range.

This is mentioned in https://reviews.freebsd.org/D16570 regarding NVMe
performance implications, and in https://reviews.freebsd.org/D16517 as missing
for sound buffers.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list