reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-61-g09411a7a-dirty
        # https://github.com/intel-lab-lkp/linux/commit/e9bf42851725f52988b1a0b121a7c422e15e99f4
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review John-Stultz/locking-mutex-Remove-wakeups-from-under-mutex-wait_lock/20240210-082732
        git checkout e9bf42851725f52988b1a0b121a7c422e15e99f4
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__ -fmax-errors=unlimited -fmax-warnings=unlimited' O=build_dir ARCH=x86_64 olddefconfig
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__ -fmax-errors=unlimited -fmax-warnings=unlimited' O=build_dir ARCH=x86_64 SHELL=/bin/bash kernel/sched/