Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 3 Feb 2001 22:19:30 -0800 (PST)
From:      Matt Dillon <dillon@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/i386/i386 machdep.c src/sys/kern vfs_bio.c src/sys/vm vm_map.c
Message-ID:  <200102040619.f146JUA73454@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
dillon      2001/02/03 22:19:30 PST

  Modified files:
    sys/i386/i386        machdep.c 
    sys/kern             vfs_bio.c 
    sys/vm               vm_map.c 
  Log:
  This commit represents work mainly submitted by Tor and slightly modified
  by myself.  It solves a serious vm_map corruption problem that can occur
  with the buffer cache when block sizes > 64K are used.  This code has been
  heavily tested in -stable but only tested somewhat on -current.  An MFC
  will occur in a few days.  My additions include the vm_map_simplify_entry()
  and minor buffer cache boundry case fix.
  
  Make the buffer cache use a system map for buffer cache KVM rather then a
  normal map.
  
  Ensure that VM objects are not allocated for system maps.  There were cases
  where a buffer map could wind up with a backing VM object -- normally
  harmless, but this could also result in the buffer cache blocking in places
  where it assumes no blocking will occur, possibly resulting in corrupted
  maps.
  
  Fix a minor boundry case in the buffer cache size limit is reached that
  could result in non-optimal code.
  
  Add vm_map_simplify_entry() calls to prevent 'creeping proliferation'
  of vm_map_entry's in the buffer cache's vm_map.  Previously only a simple
  linear optimization was made.  (The buffer vm_map typically has only a
  handful of vm_map_entry's.  This stabilizes it at that level permanently).
  
  PR: 20609
  Submitted by: (Tor Egge) tegge
  
  Revision  Changes    Path
  1.438     +2 -1      src/sys/i386/i386/machdep.c
  1.271     +14 -7     src/sys/kern/vfs_bio.c
  1.194     +24 -8     src/sys/vm/vm_map.c



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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