Hi, On Thu, Apr 08, 2021 at 05:09:53PM -0700, coverity-bot wrote: > Hello! > > This is an experimental semi-automated report about issues detected by > Coverity from a scan of next-20210408 as part of the linux-next scan project: > https://scan.coverity.com/projects/linux-next-weekly-scan > > You're getting this email because you were associated with the identified > lines of code (noted below) that were touched by commits: > > Wed Apr 7 12:41:22 2021 +0800 > 91a196935395 ("erofs: introduce multipage per-CPU buffers") > > Coverity reported the following: > > *** CID 1503700: Program hangs (LOCK) > /fs/erofs/pcpubuf.c: 31 in erofs_get_pcpubuf() > 25 raw_spin_lock(&pcb->lock); > 26 if (requiredpages > pcb->nrpages) { > 27 raw_spin_unlock(&pcb->lock); > 28 put_cpu_var(erofs_pcb); > 29 return NULL; > 30 } > vvv CID 1503700: Program hangs (LOCK) > vvv Returning without unlocking "pcb->lock". > 31 return pcb->ptr; > 32 } > 33 > 34 void erofs_put_pcpubuf(void *ptr) > 35 { > 36 struct erofs_pcpubuf *pcb = &per_cpu(erofs_pcb, smp_processor_id()); > > If this is a false positive, please let us know so we can mark it as > such, or teach the Coverity rules to be smarter. If not, please make > sure fixes get into linux-next. :) For patches fixing this, please > include these lines (but double-check the "Fixes" first): I think this is a false positive here, since erofs_get_pcpubuf() should match with erofs_put_pcpubuf(), which is used to unlock pcb->lock. Thanks, Gao Xiang > > Reported-by: coverity-bot <keescook+coverity-bot@xxxxxxxxxxxx> > Addresses-Coverity-ID: 1503700 ("Program hangs") > Fixes: 91a196935395 ("erofs: introduce multipage per-CPU buffers") > > Thanks for your attention! > > -- > Coverity-bot >