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.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.