> Hi,
> 
> On my sparc64 machine regress/lib/libpthread triggers a panic.  It
> happend with Feb 1 and Jan 31 snapshot.  Jan 29 snapshot paniced
> somewhere else.  Test and console output below.
> 
> *cpu1: pmap_enter: access_type exceeds prot
> 
> bluhm

Does the following diff help?

Index: uvm_fault.c
===================================================================
RCS file: /OpenBSD/src/sys/uvm/uvm_fault.c,v
retrieving revision 1.124
diff -u -p -r1.124 uvm_fault.c
--- uvm_fault.c 28 Dec 2021 13:16:28 -0000      1.124
+++ uvm_fault.c 2 Feb 2022 19:53:36 -0000
@@ -1023,8 +1023,10 @@ uvm_fault_upper(struct uvm_faultinfo *uf
                counters_inc(uvmexp_counters, flt_anon);
                oanon = anon;
                pg = anon->an_page;
-               if (anon->an_ref > 1)     /* disallow writes to ref > 1 anons */
-                       flt->enter_prot = flt->enter_prot & ~PROT_WRITE;
+               if (anon->an_ref > 1) {   /* disallow writes to ref > 1 anons */
+                       flt->enter_prot &= ~PROT_WRITE;
+                       flt->access_type &= ~PROT_WRITE;
+               }
        }
 
        /*

Reply via email to