CVS commit: src/sys/arch/m68k/m68k
"Jason R Thorpe" <[email protected]>
| Newsgroups | gmane.os.netbsd.devel.cvs |
|---|---|
| Message-ID | <[email protected]> |
Module Name: src Committed By: thorpej Date: Thu May 7 15:33:41 UTC 2026 Modified Files: src/sys/arch/m68k/m68k: pmap_68k.c Log Message: Fix return value logic in pmap_changebit() (used to implement pmap_clear_reference() and pmap_clear_modify()): We need to seed the "combined_pte" with the mod/ref information stashed in the vm_page because all of the mappings to the page may have already been removed via pmap_page_protect(..., UVM_PROT_NONE), and we need to use that "combined_pte" to return true if any of the bits we've been asked to clear were set (previously we only returned true if we actually cleared one from a mapping's PTE, which, as previously noted, might all be gone by this point). The symptom here would be random crashes under memory pressure, things like spurious NULL-derefs, indicative of an anonymous page being tossed under memory pressure and re-ZFOD'd, rather than being sent to swap and properly paged back in. To generate a diff of this commit: cvs rdiff -u -r1.65 -r1.66 src/sys/arch/m68k/m68k/pmap_68k.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.