Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Sep 2013 20:14:16 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r255827 - in head/sys: amd64/amd64 i386/i386
Message-ID:  <201309232014.r8NKEGto038804@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Mon Sep 23 20:14:15 2013
New Revision: 255827
URL: http://svnweb.freebsd.org/changeset/base/255827

Log:
  Free both KVA and backing pages when freeing TSS memory.
  
  Reported and tested by:	pho
  Sponsored by:	The FreeBSD Foundation
  Approved by:	re (marius)

Modified:
  head/sys/amd64/amd64/vm_machdep.c
  head/sys/i386/i386/vm_machdep.c

Modified: head/sys/amd64/amd64/vm_machdep.c
==============================================================================
--- head/sys/amd64/amd64/vm_machdep.c	Mon Sep 23 20:06:59 2013	(r255826)
+++ head/sys/amd64/amd64/vm_machdep.c	Mon Sep 23 20:14:15 2013	(r255827)
@@ -341,7 +341,7 @@ cpu_thread_clean(struct thread *td)
 	 * Clean TSS/iomap
 	 */
 	if (pcb->pcb_tssp != NULL) {
-		kva_free((vm_offset_t)pcb->pcb_tssp,
+		kmem_free(kernel_arena, (vm_offset_t)pcb->pcb_tssp,
 		    ctob(IOPAGES + 1));
 		pcb->pcb_tssp = NULL;
 	}

Modified: head/sys/i386/i386/vm_machdep.c
==============================================================================
--- head/sys/i386/i386/vm_machdep.c	Mon Sep 23 20:06:59 2013	(r255826)
+++ head/sys/i386/i386/vm_machdep.c	Mon Sep 23 20:14:15 2013	(r255827)
@@ -367,7 +367,7 @@ cpu_thread_clean(struct thread *td)
 		 * XXX do we need to move the TSS off the allocated pages
 		 * before freeing them?  (not done here)
 		 */
-		kva_free((vm_offset_t)pcb->pcb_ext,
+		kmem_free(kernel_arena, (vm_offset_t)pcb->pcb_ext,
 		    ctob(IOPAGES + 1));
 		pcb->pcb_ext = NULL;
 	}



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