Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Jan 2010 15:17:52 -0600 (CST)
From:      Mark Tinguely <tinguely@casselton.net>
To:        freebsd-hackers@freebsd.org
Subject:   bus_dmamap_load_uio() and user data
Message-ID:  <201001072117.o07LHq7o015571@casselton.net>

next in thread | raw e-mail | index | archive | help

In the user space case of bus_dmamap_load_uio(), the calling thread is
stored in uio->uio_td, in which the user's pmap can be determined.

The ARM processor, with the possible exception of the ARMv7 MPcore
with snoop control unit, needs to make the caches consistent before
DMA. I noticed that the routine, _bus_dmamap_sync(), copies data into
the bounce buffer using current pmap.

Can/should we assume the uio sent from to bus_dmamap_load_uio() is
always in the same address space as thread that is executing
the _bus_dmamap_sync()? 

--Mark Tinguely



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001072117.o07LHq7o015571>