[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202409171440.qx2iOkY3-lkp@intel.com>
Date: Tue, 17 Sep 2024 14:38:30 +0800
From: kernel test robot <lkp@...el.com>
To: Md Sadre Alam <quic_mdalam@...cinc.com>, axboe@...nel.dk,
song@...nel.org, yukuai3@...wei.com, agk@...hat.com,
snitzer@...nel.org, mpatocka@...hat.com, adrian.hunter@...el.com,
quic_asutoshd@...cinc.com, ritesh.list@...il.com,
ulf.hansson@...aro.org, andersson@...nel.org,
konradybcio@...nel.org, kees@...nel.org, gustavoars@...nel.org,
linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-raid@...r.kernel.org, dm-devel@...ts.linux.dev,
linux-mmc@...r.kernel.org, linux-arm-msm@...r.kernel.org,
linux-hardening@...r.kernel.org
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
quic_srichara@...cinc.com, quic_varada@...cinc.com,
quic_mdalam@...cinc.com
Subject: Re: [PATCH v2 1/3] dm-inlinecrypt: Add inline encryption support
Hi Md,
kernel test robot noticed the following build warnings:
[auto build test WARNING on device-mapper-dm/for-next]
[also build test WARNING on axboe-block/for-next linus/master song-md/md-next v6.11 next-20240916]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Md-Sadre-Alam/dm-inlinecrypt-Add-inline-encryption-support/20240916-170452
base: https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git for-next
patch link: https://lore.kernel.org/r/20240916085741.1636554-2-quic_mdalam%40quicinc.com
patch subject: [PATCH v2 1/3] dm-inlinecrypt: Add inline encryption support
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20240917/202409171440.qx2iOkY3-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240917/202409171440.qx2iOkY3-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202409171440.qx2iOkY3-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/md/dm-inline-crypt.c:198:6: warning: variable 'ret' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
198 | if ((sscanf(argv[2], "%llu%c", &tmpll, &dummy) != 1) ||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | (tmpll & ((cc->sector_size >> SECTOR_SHIFT) - 1))) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/md/dm-inline-crypt.c:250:9: note: uninitialized use occurs here
250 | return ret;
| ^~~
drivers/md/dm-inline-crypt.c:198:2: note: remove the 'if' if its condition is always false
198 | if ((sscanf(argv[2], "%llu%c", &tmpll, &dummy) != 1) ||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
199 | (tmpll & ((cc->sector_size >> SECTOR_SHIFT) - 1))) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
200 | ti->error = "Invalid iv_offset sector";
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201 | goto bad;
| ~~~~~~~~~
202 | }
| ~
>> drivers/md/dm-inline-crypt.c:198:6: warning: variable 'ret' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized]
198 | if ((sscanf(argv[2], "%llu%c", &tmpll, &dummy) != 1) ||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/md/dm-inline-crypt.c:250:9: note: uninitialized use occurs here
250 | return ret;
| ^~~
drivers/md/dm-inline-crypt.c:198:6: note: remove the '||' if its condition is always false
198 | if ((sscanf(argv[2], "%llu%c", &tmpll, &dummy) != 1) ||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/md/dm-inline-crypt.c:178:9: note: initialize the variable 'ret' to silence this warning
178 | int ret;
| ^
| = 0
2 warnings generated.
vim +198 drivers/md/dm-inline-crypt.c
168
169 static int inlinecrypt_ctr(struct dm_target *ti, unsigned int argc, char **argv)
170 {
171 struct inlinecrypt_config *cc;
172 char *cipher_api = NULL;
173 char *cipher, *chainmode;
174 unsigned long long tmpll;
175 char *ivmode;
176 int key_size;
177 char dummy;
178 int ret;
179
180 if (argc < 5) {
181 ti->error = "Not enough arguments";
182 return -EINVAL;
183 }
184
185 key_size = strlen(argv[1]) >> 1;
186
187 cc = kzalloc(struct_size(cc, key, key_size), GFP_KERNEL);
188 if (!cc) {
189 ti->error = "Cannot allocate encryption context";
190 return -ENOMEM;
191 }
192 cc->key_size = key_size;
193 cc->sector_size = (1 << SECTOR_SHIFT);
194 cc->sector_shift = 0;
195
196 ti->private = cc;
197
> 198 if ((sscanf(argv[2], "%llu%c", &tmpll, &dummy) != 1) ||
199 (tmpll & ((cc->sector_size >> SECTOR_SHIFT) - 1))) {
200 ti->error = "Invalid iv_offset sector";
201 goto bad;
202 }
203 cc->iv_offset = tmpll;
204
205 ret = dm_get_device(ti, argv[3], dm_table_get_mode(ti->table),
206 &cc->dev);
207 if (ret) {
208 ti->error = "Device lookup failed";
209 goto bad;
210 }
211
212 ret = -EINVAL;
213 if (sscanf(argv[4], "%llu%c", &tmpll, &dummy) != 1 ||
214 tmpll != (sector_t)tmpll) {
215 ti->error = "Invalid device sector";
216 goto bad;
217 }
218
219 cc->start = tmpll;
220
221 cipher = strsep(&argv[0], "-");
222 chainmode = strsep(&argv[0], "-");
223 ivmode = strsep(&argv[0], "-");
224
225 cipher_api = kmalloc(CRYPTO_MAX_ALG_NAME, GFP_KERNEL);
226 if (!cipher_api)
227 goto bad;
228
229 ret = snprintf(cipher_api, CRYPTO_MAX_ALG_NAME,
230 "%s(%s)", chainmode, cipher);
231 if (ret < 0 || ret >= CRYPTO_MAX_ALG_NAME) {
232 kfree(cipher_api);
233 ret = -ENOMEM;
234 goto bad;
235 }
236
237 ret = crypt_select_inline_crypt_mode(ti, cipher_api, ivmode);
238
239 /* Initialize and set key */
240 ret = inlinecrypt_set_key(cc, argv[1]);
241 if (ret < 0) {
242 ti->error = "Error decoding and setting key";
243 return ret;
244 }
245
246 return 0;
247 bad:
248 ti->error = "Error in inlinecrypt mapping";
249 inlinecrypt_dtr(ti);
250 return ret;
251 }
252
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists