Subject: kern/24328: UVM: page loan break can sneak a dirty page past file synchronization
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <ups@tree.com>
List: netbsd-bugs
Date: 02/05/2004 23:20:51
>Number: 24328
>Category: kern
>Synopsis: UVM: page loan break can sneak a dirty page past file synchronization
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Feb 05 23:21:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator: Stephan Uphoff
>Release: current
>Organization:
>Environment:
N/A
>Description:
genfs_putpages (in list mode) uses an end-marker list element on the
object's page list.
This causes pages inserted on the file's object list after
genfs_putpages is started to be ignored.
Breaking a loan can remove the original page from the object's page
list and insert the replacement page after the end-marker
used by genfs_putpages (where it is then ignored).
>How-To-Repeat:
>Fix:
Modify uvm_loanbreak to insert the replacement page in the same position
as the original page on the object's page list.
>Release-Note:
>Audit-Trail:
>Unformatted: