John Baldwin wrote:
On Saturday 15 September 2007 02:47:02 pm Alan Cox wrote:
alc         2007-09-15 18:47:02 UTC

  FreeBSD src repository

  Modified files:
sys/amd64/amd64 uma_machdep.c sys/arm/arm vm_machdep.c sys/ia64/ia64 uma_machdep.c sys/powerpc/powerpc uma_machdep.c sys/sparc64/sparc64 vm_machdep.c sys/sun4v/sun4v vm_machdep.c Log:
  It has been observed on the mailing lists that the different categories
  of pages don't sum to anywhere near the total number of pages on amd64.
  This is for the most part because uma_small_alloc() pages have never been
  counted as wired pages, like their kmem_malloc() brethren.  They should
  be.  This changes fixes that.
It is no longer necessary for the page queues lock to be held to free
  pages allocated by uma_small_alloc().  I removed the acquisition and
  release of the page queues lock from uma_small_free() on amd64 and ia64
  weeks ago.  This patch updates the other architectures that have
  uma_small_alloc() and uma_small_free().
Approved by: re (kensmith)

I'd like to merge this to 6.x. However, I'm not sure if the same is true about vm_page_free() not needing the vm_page_queues lock in 6.x, so figured I'd ask you about that first.



No, the page queue locking changes were never made to 6.x. However, the accounting fix (paragraph #1 above) is separable from the other change. Therefore, you could apply the accounting fix to 6.x with no trouble. In fact, the amd64 and ia64 parts of this commit were purely to apply the accounting fix because I had already removed the acquisition and release of the page queues lock from uma_small_{alloc,free} on those machines in an earlier revision. In effect, for 6.x you just need to replicate the amd64/ia64 version of this change across all six architectures.

Alan

_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to