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; } _______________________________________________ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"