Oh I see. Thanks for the help.
Looks like the check should be spl < IPL_SCHED instead of spl != IPL_SCHED. Seems it's just that the check is bad after all.
Index: arch/mips/mips/locore.S
===================================================================
RCS file: /cvsroot/src/sys/arch/mips/mips/locore.S,v
retrieving revision 1.226
diff -u -r1.226 locore.S
--- arch/mips/mips/locore.S 26 Sep 2020 08:21:10 -0000 1.226
+++ arch/mips/mips/locore.S 22 Feb 2021 09:49:27 -0000
@@ -224,7 +224,7 @@
PTR_L v0, L_CPU(MIPS_CURLWP)
INT_L v1, CPU_INFO_CPL(v0)
#if __mips >= 32
- tnei v1, IPL_SCHED
+ tltiu v1, IPL_SCHED
#else
li v0, IPL_SCHED
10: bne v0, v1, 10b