In the Linux kernel, the following vulnerability has been resolved: locking/csdlock: Change csdlockdebug from early_param to __setup The csdlockdebug kernel-boot parameter is parsed by the earlyparam() function csdlockdebug(). If set, csdlockdebug() invokes staticbranchenable() to enable csdlockwait feature, which triggers a panic on arm64 for kernels built with CONFIGSPARSEMEM=y and CONFIGSPARSEMEMVMEMMAP=n. With CONFIGSPARSEMEM_VMEMMAP=n, __nrtosection is called in statickeyenable() and returns NULL, resulting in a NULL dereference because memsection is initialized only later in sparseinit(). This is also a problem for powerpc because earlyparam() functions are invoked earlier than jumplabelinit(), also resulting in statickeyenable() failures. These failures cause the warning "static key 'xxx' used before call to jumplabelinit()". Thus, earlyparam is too early for csdlockwait to run staticbranchenable(), so changes it to __setup to fix these.