Source-Changes-D archive

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

Re: CVS commit: src/sys



On Thu, Oct 05, 2023 at 11:28:49AM +0200, Martin Husemann wrote:
> This breaks the build:
> 
> ../../../../kern/kern_synch.c: In function 'kpause':
> ../../../../kern/kern_synch.c:257:10: error: 'nlocks' may be used uninitialized in this function [-Werror=maybe-uninitialized]
>   257 |  error = sleepq_block(timo, intr, &kpause_syncobj, nlocks);
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> 
> 
> and it looks like gcc is totally correct here: KERNEL_UNLOCK_ALL()
> does not set nlocks but KERNEL_LOCK() later KASSERTS it is > 0.

No, I was confused by the #ifdef maze - it breaks the build for 
non-MULTIPROCESSOR kernels only, and I am not actually sure what "use"
gcc sees for the "nlocks" variable at all in that case.

Martin


Home | Main Index | Thread Index | Old Index