Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Jan 2010 21:26:14 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/vm vm_pageout.c vnode_pager.c
Message-ID:  <201001172126.o0HLQXab026256@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
kib         2010-01-17 21:26:14 UTC

  FreeBSD src repository

  Modified files:
    sys/vm               vm_pageout.c vnode_pager.c 
  Log:
  SVN rev 202529 on 2010-01-17 21:26:14Z by kib
  
  When a vnode-backed vm object is referenced, it increments the vnode
  reference count, and decrements it on dereference. If referenced object
  is deallocated, object type is reset to OBJT_DEAD. Consequently, all
  vnode references that are owned by object references are never released.
  vunref() the vnode in vm object deallocation code for OBJT_VNODE
  appropriate number of times to prevent leak.
  
  Add an assertion to the vm_pageout() to make sure that we never get
  reference on the vnode but then do not execute code to release it.
  
  In collaboration with:  pho
  Reviewed by:    alc
  MFC after:      3 weeks
  
  Revision  Changes    Path
  1.309     +2 -0      src/sys/vm/vm_pageout.c
  1.258     +6 -1      src/sys/vm/vnode_pager.c



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