From: kbuild test robot <fengguang.wu@intel.com>
To: unlisted-recipients:; (no To-header on input)
Cc: kbuild-all@01.org, linux-crypto@vger.kernel.org,
Herbert Xu <herbert@gondor.apana.org.au>
Subject: [cryptodev:master 118/131] arch/s390/crypto/aes_s390.c:271:1: warning: 'fallback_blk_dec' uses dynamic stack allocation
Date: Sat, 2 Jul 2016 07:50:40 +0800 [thread overview]
Message-ID: <201607020735.XSymZkwu%fengguang.wu@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 8683 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master
head: 98eca72fa04a9bbf28dba95efaec5aa95588fe23
commit: 64e26807bb93b4accaa395d98e118ab893cac074 [118/131] crypto: s390/aes - Use skcipher for fallback
config: s390-allyesconfig (attached as .config)
compiler: s390x-linux-gnu-gcc (Debian 5.3.1-8) 5.3.1 20160205
reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 64e26807bb93b4accaa395d98e118ab893cac074
# save the attached .config to linux build tree
make.cross ARCH=s390
All warnings (new ones prefixed by >>):
arch/s390/crypto/aes_s390.c: In function 'fallback_blk_dec':
>> arch/s390/crypto/aes_s390.c:271:1: warning: 'fallback_blk_dec' uses dynamic stack allocation
}
^
arch/s390/crypto/aes_s390.c: In function 'ecb_aes_encrypt':
>> arch/s390/crypto/aes_s390.c:355:1: warning: 'ecb_aes_encrypt' uses dynamic stack allocation
}
^
arch/s390/crypto/aes_s390.c: In function 'cbc_aes_encrypt':
>> arch/s390/crypto/aes_s390.c:496:1: warning: 'cbc_aes_encrypt' uses dynamic stack allocation
}
^
arch/s390/crypto/aes_s390.c: In function 'xts_aes_decrypt':
>> arch/s390/crypto/aes_s390.c:703:1: warning: 'xts_aes_decrypt' uses dynamic stack allocation
}
^
arch/s390/crypto/aes_s390.c: In function 'xts_aes_encrypt':
>> arch/s390/crypto/aes_s390.c:689:1: warning: 'xts_aes_encrypt' uses dynamic stack allocation
}
^
vim +/fallback_blk_dec +271 arch/s390/crypto/aes_s390.c
64e26807 Herbert Xu 2016-06-29 265 skcipher_request_set_crypt(req, src, dst, nbytes, desc->info);
b0c3e75d Sebastian Siewior 2007-12-01 266
64e26807 Herbert Xu 2016-06-29 267 ret = crypto_skcipher_decrypt(req);
b0c3e75d Sebastian Siewior 2007-12-01 268
64e26807 Herbert Xu 2016-06-29 269 skcipher_request_zero(req);
b0c3e75d Sebastian Siewior 2007-12-01 270 return ret;
b0c3e75d Sebastian Siewior 2007-12-01 @271 }
b0c3e75d Sebastian Siewior 2007-12-01 272
b0c3e75d Sebastian Siewior 2007-12-01 273 static int fallback_blk_enc(struct blkcipher_desc *desc,
b0c3e75d Sebastian Siewior 2007-12-01 274 struct scatterlist *dst, struct scatterlist *src,
b0c3e75d Sebastian Siewior 2007-12-01 275 unsigned int nbytes)
b0c3e75d Sebastian Siewior 2007-12-01 276 {
b0c3e75d Sebastian Siewior 2007-12-01 277 unsigned int ret;
64e26807 Herbert Xu 2016-06-29 278 struct crypto_blkcipher *tfm = desc->tfm;
64e26807 Herbert Xu 2016-06-29 279 struct s390_aes_ctx *sctx = crypto_blkcipher_ctx(tfm);
64e26807 Herbert Xu 2016-06-29 280 SKCIPHER_REQUEST_ON_STACK(req, sctx->fallback.blk);
b0c3e75d Sebastian Siewior 2007-12-01 281
64e26807 Herbert Xu 2016-06-29 282 skcipher_request_set_tfm(req, sctx->fallback.blk);
64e26807 Herbert Xu 2016-06-29 283 skcipher_request_set_callback(req, desc->flags, NULL, NULL);
64e26807 Herbert Xu 2016-06-29 284 skcipher_request_set_crypt(req, src, dst, nbytes, desc->info);
b0c3e75d Sebastian Siewior 2007-12-01 285
64e26807 Herbert Xu 2016-06-29 286 ret = crypto_skcipher_encrypt(req);
b0c3e75d Sebastian Siewior 2007-12-01 287 return ret;
b0c3e75d Sebastian Siewior 2007-12-01 288 }
b0c3e75d Sebastian Siewior 2007-12-01 289
a9e62fad Herbert Xu 2006-08-21 290 static int ecb_aes_set_key(struct crypto_tfm *tfm, const u8 *in_key,
a9e62fad Herbert Xu 2006-08-21 291 unsigned int key_len)
a9e62fad Herbert Xu 2006-08-21 292 {
a9e62fad Herbert Xu 2006-08-21 293 struct s390_aes_ctx *sctx = crypto_tfm_ctx(tfm);
b0c3e75d Sebastian Siewior 2007-12-01 294 int ret;
b0c3e75d Sebastian Siewior 2007-12-01 295
b0c3e75d Sebastian Siewior 2007-12-01 296 ret = need_fallback(key_len);
b0c3e75d Sebastian Siewior 2007-12-01 297 if (ret > 0) {
b0c3e75d Sebastian Siewior 2007-12-01 298 sctx->key_len = key_len;
b0c3e75d Sebastian Siewior 2007-12-01 299 return setkey_fallback_blk(tfm, in_key, key_len);
b0c3e75d Sebastian Siewior 2007-12-01 300 }
a9e62fad Herbert Xu 2006-08-21 301
a9e62fad Herbert Xu 2006-08-21 302 switch (key_len) {
a9e62fad Herbert Xu 2006-08-21 303 case 16:
c7d4d259 Martin Schwidefsky 2016-03-17 304 sctx->enc = CPACF_KM_AES_128_ENC;
c7d4d259 Martin Schwidefsky 2016-03-17 305 sctx->dec = CPACF_KM_AES_128_DEC;
a9e62fad Herbert Xu 2006-08-21 306 break;
a9e62fad Herbert Xu 2006-08-21 307 case 24:
c7d4d259 Martin Schwidefsky 2016-03-17 308 sctx->enc = CPACF_KM_AES_192_ENC;
c7d4d259 Martin Schwidefsky 2016-03-17 309 sctx->dec = CPACF_KM_AES_192_DEC;
a9e62fad Herbert Xu 2006-08-21 310 break;
a9e62fad Herbert Xu 2006-08-21 311 case 32:
c7d4d259 Martin Schwidefsky 2016-03-17 312 sctx->enc = CPACF_KM_AES_256_ENC;
c7d4d259 Martin Schwidefsky 2016-03-17 313 sctx->dec = CPACF_KM_AES_256_DEC;
a9e62fad Herbert Xu 2006-08-21 314 break;
a9e62fad Herbert Xu 2006-08-21 315 }
a9e62fad Herbert Xu 2006-08-21 316
a9e62fad Herbert Xu 2006-08-21 317 return aes_set_key(tfm, in_key, key_len);
a9e62fad Herbert Xu 2006-08-21 318 }
a9e62fad Herbert Xu 2006-08-21 319
a9e62fad Herbert Xu 2006-08-21 320 static int ecb_aes_crypt(struct blkcipher_desc *desc, long func, void *param,
a9e62fad Herbert Xu 2006-08-21 321 struct blkcipher_walk *walk)
a9e62fad Herbert Xu 2006-08-21 322 {
a9e62fad Herbert Xu 2006-08-21 323 int ret = blkcipher_walk_virt(desc, walk);
a9e62fad Herbert Xu 2006-08-21 324 unsigned int nbytes;
a9e62fad Herbert Xu 2006-08-21 325
a9e62fad Herbert Xu 2006-08-21 326 while ((nbytes = walk->nbytes)) {
a9e62fad Herbert Xu 2006-08-21 327 /* only use complete blocks */
a9e62fad Herbert Xu 2006-08-21 328 unsigned int n = nbytes & ~(AES_BLOCK_SIZE - 1);
a9e62fad Herbert Xu 2006-08-21 329 u8 *out = walk->dst.virt.addr;
a9e62fad Herbert Xu 2006-08-21 330 u8 *in = walk->src.virt.addr;
a9e62fad Herbert Xu 2006-08-21 331
c7d4d259 Martin Schwidefsky 2016-03-17 332 ret = cpacf_km(func, param, out, in, n);
36eb2caa Jan Glauber 2012-10-26 333 if (ret < 0 || ret != n)
36eb2caa Jan Glauber 2012-10-26 334 return -EIO;
a9e62fad Herbert Xu 2006-08-21 335
a9e62fad Herbert Xu 2006-08-21 336 nbytes &= AES_BLOCK_SIZE - 1;
a9e62fad Herbert Xu 2006-08-21 337 ret = blkcipher_walk_done(desc, walk, nbytes);
a9e62fad Herbert Xu 2006-08-21 338 }
a9e62fad Herbert Xu 2006-08-21 339
a9e62fad Herbert Xu 2006-08-21 340 return ret;
a9e62fad Herbert Xu 2006-08-21 341 }
a9e62fad Herbert Xu 2006-08-21 342
a9e62fad Herbert Xu 2006-08-21 343 static int ecb_aes_encrypt(struct blkcipher_desc *desc,
a9e62fad Herbert Xu 2006-08-21 344 struct scatterlist *dst, struct scatterlist *src,
a9e62fad Herbert Xu 2006-08-21 345 unsigned int nbytes)
a9e62fad Herbert Xu 2006-08-21 346 {
a9e62fad Herbert Xu 2006-08-21 347 struct s390_aes_ctx *sctx = crypto_blkcipher_ctx(desc->tfm);
a9e62fad Herbert Xu 2006-08-21 348 struct blkcipher_walk walk;
a9e62fad Herbert Xu 2006-08-21 349
b0c3e75d Sebastian Siewior 2007-12-01 350 if (unlikely(need_fallback(sctx->key_len)))
b0c3e75d Sebastian Siewior 2007-12-01 351 return fallback_blk_enc(desc, dst, src, nbytes);
b0c3e75d Sebastian Siewior 2007-12-01 352
a9e62fad Herbert Xu 2006-08-21 353 blkcipher_walk_init(&walk, dst, src, nbytes);
a9e62fad Herbert Xu 2006-08-21 354 return ecb_aes_crypt(desc, sctx->enc, sctx->key, &walk);
a9e62fad Herbert Xu 2006-08-21 @355 }
a9e62fad Herbert Xu 2006-08-21 356
a9e62fad Herbert Xu 2006-08-21 357 static int ecb_aes_decrypt(struct blkcipher_desc *desc,
a9e62fad Herbert Xu 2006-08-21 358 struct scatterlist *dst, struct scatterlist *src,
:::::: The code at line 271 was first introduced by commit
:::::: b0c3e75d857f3785a4b274e26b1c0b2327580dda [CRYPTO] aes_s390: Add fallback driver
:::::: TO: Sebastian Siewior <sebastian@breakpoint.cc>
:::::: CC: Herbert Xu <herbert@gondor.apana.org.au>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 41745 bytes --]
reply other threads:[~2016-07-01 23:52 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201607020735.XSymZkwu%fengguang.wu@intel.com \
--to=fengguang.wu@intel.com \
--cc=herbert@gondor.apana.org.au \
--cc=kbuild-all@01.org \
--cc=linux-crypto@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox