Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 May 2010 07:08:16 +0000 (UTC)
From:      Alan Cox <alc@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r207552 - head/sys/vm
Message-ID:  <201005030708.o4378GV3005691@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: alc
Date: Mon May  3 07:08:16 2010
New Revision: 207552
URL: http://svn.freebsd.org/changeset/base/207552

Log:
  The pages allocated by kmem_alloc_attr() and kmem_malloc() are unmanaged.
  Consequently, neither the page lock nor the page queues lock is needed to
  unwire and free them.

Modified:
  head/sys/vm/vm_contig.c
  head/sys/vm/vm_kern.c

Modified: head/sys/vm/vm_contig.c
==============================================================================
--- head/sys/vm/vm_contig.c	Mon May  3 07:00:50 2010	(r207551)
+++ head/sys/vm/vm_contig.c	Mon May  3 07:08:16 2010	(r207552)
@@ -268,11 +268,7 @@ retry:
 				i -= PAGE_SIZE;
 				m = vm_page_lookup(object, OFF_TO_IDX(offset +
 				    i));
-				vm_page_lock(m);
-				vm_page_lock_queues();
 				vm_page_free(m);
-				vm_page_unlock_queues();
-				vm_page_unlock(m);
 			}
 			VM_OBJECT_UNLOCK(object);
 			vm_map_delete(map, addr, addr + size);

Modified: head/sys/vm/vm_kern.c
==============================================================================
--- head/sys/vm/vm_kern.c	Mon May  3 07:00:50 2010	(r207551)
+++ head/sys/vm/vm_kern.c	Mon May  3 07:08:16 2010	(r207552)
@@ -380,12 +380,8 @@ retry:
 				i -= PAGE_SIZE;
 				m = vm_page_lookup(kmem_object,
 						   OFF_TO_IDX(offset + i));
-				vm_page_lock(m);
-				vm_page_lock_queues();
 				vm_page_unwire(m, 0);
 				vm_page_free(m);
-				vm_page_unlock_queues();
-				vm_page_unlock(m);
 			}
 			VM_OBJECT_UNLOCK(kmem_object);
 			vm_map_delete(map, addr, addr + size);



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