Author: alc
Date: Sat Oct  8 18:29:30 2011
New Revision: 226163
URL: http://svn.freebsd.org/changeset/base/226163

Log:
  Fix the handling of an empty kmem map by sysctl_kmem_map_free().  In
  the unlikely event that sysctl_kmem_map_free() was performed on an
  empty kmem map, it would incorrectly report the free space as zero.
  
  Discussed with:       avg
  MFC after:    1 week

Modified:
  head/sys/kern/kern_malloc.c

Modified: head/sys/kern/kern_malloc.c
==============================================================================
--- head/sys/kern/kern_malloc.c Sat Oct  8 18:25:01 2011        (r226162)
+++ head/sys/kern/kern_malloc.c Sat Oct  8 18:29:30 2011        (r226163)
@@ -265,8 +265,8 @@ sysctl_kmem_map_free(SYSCTL_HANDLER_ARGS
        u_long size;
 
        vm_map_lock_read(kmem_map);
-       size = kmem_map->root != NULL ?
-           kmem_map->root->max_free : kmem_map->size;
+       size = kmem_map->root != NULL ? kmem_map->root->max_free :
+           kmem_map->max_offset - kmem_map->min_offset;
        vm_map_unlock_read(kmem_map);
        return (sysctl_handle_long(oidp, &size, 0, req));
 }
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to