NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

PR/55366 CVS commit: [netbsd-9] src/sys/uvm



The following reply was made to PR kern/55366; it has been noted by GNATS.

From: "Martin Husemann" <martin%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/55366 CVS commit: [netbsd-9] src/sys/uvm
Date: Sun, 4 Oct 2020 18:14:13 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Sun Oct  4 18:14:13 UTC 2020
 
 Modified Files:
 	src/sys/uvm [netbsd-9]: uvm_amap.c uvm_io.c
 
 Log Message:
 Pull up following revision(s) (requested by chs in ticket #1095):
 
 	sys/uvm/uvm_amap.c: revision 1.124 (via patch)
 	sys/uvm/uvm_amap.c: revision 1.125 (via patch)
 	sys/uvm/uvm_io.c: revision 1.29 (via patch)
 
 Effectively disable the AMAP_REFALL flag because it is unsafe.
 
 This flag tells the amap code that it does not need to allocate ppref
 as part of adding or removing a reference, but that is only correct
 if the range of the reference being added or removed is the same
 as the range of all other references to the amap, and the point of
 this flag is exactly to try to optimize the case where the range is
 different and thus this flag would not be correct to use.
 Fixes PR 55366.
 
 The previous fix for PR 55366 in uvm_amap.c 1.124 was incomplete:
  - amap_adjref_anons() must also ignore AMAP_REFALL when updating
    the ppref, not just when deciding whether or not to initialize ppref.
  - UVM_EXTRACT_QREF relies on AMAP_REFALL to work properly,
    and since we can't use AMAP_REFALL then we can't use QREF either.
 
 
 To generate a diff of this commit:
 cvs rdiff -u -r1.109.4.1 -r1.109.4.2 src/sys/uvm/uvm_amap.c
 cvs rdiff -u -r1.28 -r1.28.22.1 src/sys/uvm/uvm_io.c
 
 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.
 


Home | Main Index | Thread Index | Old Index