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>