Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Feb 2005 12:25:26 +1000
From:      Peter Grehan <grehan@freebsd.org>
To:        obrien@freebsd.org
Cc:        freebsd-ppc@freebsd.org
Subject:   Re: panic: mutex vm object not owned ...
Message-ID:  <421A9816.9000007@freebsd.org>
In-Reply-To: <20050222020757.GA55659@dragon.nuxi.com>
References:  <4219D4FE.8080501@freebsd.org> <20050222020757.GA55659@dragon.nuxi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> What is UMA_MD_SMALL_ALLOC, and why doesn't i386 set it?

  It allows systems that have the ability to direct-map memory to use a 
physical address for small (< 1 page) kernel allocations. This frees up 
KVM and eliminates the cost of mapping/unmapping temporary pages e.g. in 
the vm page zeroing code.

  Since i386 has no way of doing this direct mapping, it isn't defined 
for that architecture. Ironically, the G5 aka 970 loses the ability that 
the G3/G4 cpus had for this (BAT registers).

  The slab page-alloc/free routines call into MD code when 
UMA_MD_SMALL_ALLOC is defined, and they all do pretty much the same 
thing: allocate a vm page sans backing object and return the physical 
address of that page.

later,

Peter.



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