Subject: Re: Further mbuf adventures
To: Jason Thorpe <thorpej@wasabisystems.com>
From: Jason Thorpe <thorpej@wasabisystems.com>
List: tech-net
Date: 05/02/2004 08:11:50
--Apple-Mail-12--23188658
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII; format=flowed


On May 1, 2004, at 10:08 PM, Jason Thorpe wrote:

> The purpose of M_ROMAP is to indicate to bus_dma back-ends that they 
> might be able to skip some work.  Take the example of the ARM... when 
> a mapping is made read-only at the MMU, the cache is cleaned; these 
> read-only mappings are used when page loaning (see sosend_loan).  Now, 
> when the packet makes it down to the bus_dma layer on its way out to 
> the wire, bus_dma can see that M_ROMAP is set and thus skip an 
> otherwise redundant cache clean operation (it was cleaned when the 
> mapping was made read-only).

Actually, let me make another comment ... your question was why is the 
arm32 pmap the only thing that cares about it... well, it's basically 
because arm32 is the only platform to take advantage of the 
optimization.  Other platforms could, as well (certainly at least 
anything with a virtually-indexed cache).

         -- Jason R. Thorpe <thorpej@wasabisystems.com>


--Apple-Mail-12--23188658
content-type: application/pgp-signature; x-mac-type=70674453;
	name=PGP.sig
content-description: This is a digitally signed message part
content-disposition: inline; filename=PGP.sig
content-transfer-encoding: 7bit

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (Darwin)

iD8DBQFAlQ+6OpVKkaBm8XkRAo5UAJ9+66EW2P2Zu0+6oQ1M3ZIk5zmfrQCgkwqN
5nsTklWUYeY4Lre81wpgtwo=
=yDHL
-----END PGP SIGNATURE-----

--Apple-Mail-12--23188658--