Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Jul 2007 18:41:34 +0000 (UTC)
From:      Alan Cox <alc@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/vm vm_page.c
Message-ID:  <200707101841.l6AIfZVf029773@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help

alc         2007-07-10 18:41:34 UTC

  FreeBSD src repository

  Modified files:
    sys/vm               vm_page.c 
  Log:
  Correct a problem in the ZERO_COPY_SOCKETS option, specifically, in
  vm_page_cowfault().  Initially, if vm_page_cowfault() sleeps, the given
  page is wired, preventing it from being recycled.  However, when
  transmission of the page completes, the page is unwired and returned to
  the page queues.  At that point, the page is not in any special state
  that prevents it from being recycled.  Consequently, vm_page_cowfault()
  should verify that the page is still held by the same vm object before
  retrying the replacement of the page.  Note: The containing object is,
  however, safe from being recycled by virtue of having a non-zero
  paging-in-progress count.
  
  While I'm here, add some assertions and comments.
  
  Approved by: re (rwatson)
  MFC After: 3 weeks
  
  Revision  Changes    Path
  1.351     +22 -2     src/sys/vm/vm_page.c



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