Coverity: z_erofs_handle_inplace_io(): Uninitialized variables
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 13:17:55 2021 +0800
c660a3a86e7e ("erofs: support decompress big pcluster for lz4 backend")
Coverity reported the following:
*** CID 1503704: Uninitialized variables (UNINIT) /fs/erofs/decompressor.c: 160 in z_erofs_handle_inplace_io()
154 }
155 kunmap_atomic(inpage);
156 might_sleep();
157 while (1) {
158 src = vm_map_ram(rq->in, nrpages_in, -1);
159 /* retry two more times (totally 3 times) */
vvv CID 1503704: Uninitialized variables (UNINIT)
vvv Using uninitialized value "i".
160 if (src || ++i >= 3)
161 break;
162 vm_unmap_aliases();
163 }
164 *maptype = 1;
165 return src;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):
Addresses-Coverity-ID: 1503704 ("Uninitialized variables")
Thanks for your attention!
Signature · 1 line
Coverity-bot
Hi,
Quoted 16 lines · coverity-bot
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-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Wed Apr 7 13:17:55 2021 +0800
c660a3a86e7e("erofs: support decompress big pcluster for lz4 backend")Coverity reported the following:
*** CID 1503704: Uninitialized variables (UNINIT) /fs/erofs/decompressor.c: 160 in
z_erofs_handle_inplace_io()
Quoted 14 lines
154 }
155 kunmap_atomic(inpage);
156 might_sleep();
157 while (1) {
158 src = vm_map_ram(rq->in, nrpages_in, -1);
159 /* retry two more times (totally 3 times) */
vvv CID 1503704: Uninitialized variables (UNINIT)
vvv Using uninitialized value "i".
160 if (src || ++i >= 3)
161 break;
162 vm_unmap_aliases();
163 }
164 *maptype = 1;
165 return src;Thanks for the report!
This bug was reported by Colin King before (next-20210407), and has already been fixed in (next-20210408), see:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/fs/erofs/decompressor.c?h=next-20210408#n157
and
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/fs/erofs/internal.h?h=next-20210408#n405
Thanks,
Gao Xiang
Quoted 15 lines
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):
Reported-by coverity-bot <[email protected]>Addresses-Coverity-ID: 1503704 ("Uninitialized variables")
Fixes c660a3a86e7e ("erofs: support decompress big pcluster for lz4 backend")Thanks for your attention!
Signature · 1 line
Coverity-bot
Quoted 34 lines · Gao Xiang
Hi,
Quoted 16 lines · coverity-bot
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-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Wed Apr 7 13:17:55 2021 +0800
c660a3a86e7e("erofs: support decompress big pcluster for lz4 backend")Coverity reported the following:
*** CID 1503704: Uninitialized variables (UNINIT) /fs/erofs/decompressor.c: 160 in
z_erofs_handle_inplace_io()Quoted 14 lines
154 } 155 kunmap_atomic(inpage); 156 might_sleep(); 157 while (1) { 158 src = vm_map_ram(rq->in, nrpages_in, -1); 159 /* retry two more times (totally 3 times) */ vvv CID 1503704: Uninitialized variables (UNINIT) vvv Using uninitialized value "i". 160 if (src || ++i >= 3) 161 break; 162 vm_unmap_aliases(); 163 } 164 *maptype = 1; 165 return src;
Quoted 7 lines
Thanks for the report!
This bug was reported by Colin King before (next-20210407), and has already been fixed in (next-20210408), see:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/fs/erofs/decompressor.c?h=next-20210408#n157
and
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/fs/erofs/internal.h?h=next-20210408#n405
Ah-ha, thank you! Colin is fast. :)
Signature · 1 line
Kees Cook