Source-Changes archive

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

CVS commit: [netbsd-8] src



Module Name:    src
Committed By:   snj
Date:           Mon Feb 19 18:33:38 UTC 2018

Modified Files:
        src/share/man/man9 [netbsd-8]: xcall.9
        src/sys/kern [netbsd-8]: subr_psref.c subr_xcall.c
        src/sys/sys [netbsd-8]: xcall.h

Log Message:
Pull up following revision(s) (requested by ozaki-r in ticket #556):
        sys/sys/xcall.h: 1.6
        share/man/man9/xcall.9: 1.11-1.12
        sys/kern/subr_xcall.c: 1.21-1.25
Refer softint(9)
--
Support arbitrary softint IPLs in high priority xcall
The high priority xcall supported only a softint of IPL_SOFTSERIAL. It meant
that it didn't work for xcall callbacks depending on lower IPLs than
IPL_SOFTSERIAL.
The change makes xcall have multiple softints of IPLs and allow users to specify
arbitrary IPLs. Users can specify an IPL by XC_HIGHPRI_IPL passed to the 1st
argument of xc_broadcast or xc_unicast.
Note that xcall still serves requests one by one (i.e., doesn't run them
concurrently) even if requests have different IPLs.
Proposed on tech-kern@
--
Use high priority xcall with a softint of an IPL the same as psref class's one
This mitigates undesired delay of psref_target_destroy under load such as heavy
netowrk traffic that loads softint.
--
Try to fix the build: avoid duplicate case labels when IPL_SOFT* are
all the same.
--
Fix build of kernels that some (or all) IPL_SOFT* share a value (e.g., mips)
--
Avoid allocating unused softints that share a value of IPL between another
Sort XC_IPL_* in order of priority (NFC)


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.10.18.1 src/share/man/man9/xcall.9
cvs rdiff -u -r1.7.2.2 -r1.7.2.3 src/sys/kern/subr_psref.c
cvs rdiff -u -r1.19 -r1.19.8.1 src/sys/kern/subr_xcall.c
cvs rdiff -u -r1.5 -r1.5.30.1 src/sys/sys/xcall.h

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