svn commit: r197750 - head/sys/vm
John Baldwin
jhb at FreeBSD.org
Mon Oct 5 13:30:31 UTC 2009
Alan Cox wrote:
> Author: alc
> Date: Sun Oct 4 18:53:10 2009
> New Revision: 197750
> URL: http://svn.freebsd.org/changeset/base/197750
>
> Log:
> Align and pad the page queue and free page queue locks so that the linker
> can't possibly place them together within the same cache line.
>
> MFC after: 3 weeks
>
> Modified:
> head/sys/vm/vm_page.c
> head/sys/vm/vm_page.h
>
> Modified: head/sys/vm/vm_page.c
> ==============================================================================
> --- head/sys/vm/vm_page.c Sun Oct 4 17:22:51 2009 (r197749)
> +++ head/sys/vm/vm_page.c Sun Oct 4 18:53:10 2009 (r197750)
> @@ -135,8 +135,8 @@ __FBSDID("$FreeBSD$");
> */
>
> struct vpgqueues vm_page_queues[PQ_COUNT];
> -struct mtx vm_page_queue_mtx;
> -struct mtx vm_page_queue_free_mtx;
> +struct vpglocks vm_page_queue_lock;
> +struct vpglocks vm_page_queue_free_lock;
I think you can do this by just:
struct mtx vm_page_queue_mtx __aligned(CACHE_LINE_SIZE);
without the need for a wrapper structure.
--
John Baldwin
More information about the svn-src-head
mailing list