NetBSD-Bugs archive

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

PR/59412 CVS commit: [netbsd-10] src/sys



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

From: "Martin Husemann" <martin%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/59412 CVS commit: [netbsd-10] src/sys
Date: Wed, 28 May 2025 15:30:47 +0000

 Module Name:	src
 Committed By:	martin
 Date:		Wed May 28 15:30:47 UTC 2025
 
 Modified Files:
 	src/sys/arch/ia64/include [netbsd-10]: intr.h
 	src/sys/arch/sparc64/include [netbsd-10]: psl.h
 	src/sys/sys [netbsd-10]: spl.h
 	src/sys/uvm [netbsd-10]: uvm_pdpolicy_clock.c
 
 Log Message:
 Pull up following revision(s) (requested by bouyer in ticket #1121):
 
 	sys/arch/ia64/include/intr.h: revision 1.9
 	sys/uvm/uvm_pdpolicy_clock.c: revision 1.41
 	sys/sys/spl.h: revision 1.11
 	sys/uvm/uvm_pdpolicy_clock.c: revision 1.42
 	sys/arch/sparc64/include/psl.h: revision 1.66
 
 uvmpdpol_pagerealize(): ucpu->pdqhead is used by a single CPU; but
 
 kpreempt_disable() isn't enough to guard against concurent access;
 interrupts also need to be disabled.
 
 If my analysis is correct, the only place using ucpu->pdqhead which
 can be called from interrupt context it uvmpdpol_pagerealize(), and only
 from softbio().
 
 So:
 - introduce splsoftbio() in sys/spl.h
 - protect all accesses to ucpu->pdqhead with splsoftbio()
 fixes pr kern/59412: uvmpdpol_pagerealize() queue index out of bound
 
 Provide splsoftbio()
 
 Remove the redundant kpreempt_disable/kpreempt_enable now that we're
 running at splsoftbio. Pointed out by thorpej@
 
 
 To generate a diff of this commit:
 cvs rdiff -u -r1.8 -r1.8.30.1 src/sys/arch/ia64/include/intr.h
 cvs rdiff -u -r1.62.4.2 -r1.62.4.3 src/sys/arch/sparc64/include/psl.h
 cvs rdiff -u -r1.10 -r1.10.4.1 src/sys/sys/spl.h
 cvs rdiff -u -r1.40 -r1.40.4.1 src/sys/uvm/uvm_pdpolicy_clock.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