* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2026-01-12 22:49 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2026-01-12 22:49 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
Hi Herbert,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b71e635feefc852405b14620a7fc58c4c80c0f73
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 8 months ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20260113/202601130603.OVc1bV9o-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 9b8addffa70cee5b2acc5454712d9cf78ce45710)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260113/202601130603.OVc1bV9o-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202601130603.OVc1bV9o-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2026-04-16 3:04 kernel test robot
2026-04-16 10:24 ` David Laight
0 siblings, 1 reply; 9+ messages in thread
From: kernel test robot @ 2026-04-16 3:04 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
Hi Herbert,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9e1e9d660255d7216067193d774f338d08d8528d
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 11 months ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20260416/202604161035.PMTaI4Cg-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 5bac06718f502014fade905512f1d26d578a18f3)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260416/202604161035.PMTaI4Cg-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
| Fixes: c3103416d521 ("crypto: hmac - Add ahash support")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604161035.PMTaI4Cg-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
2026-04-16 3:04 kernel test robot
@ 2026-04-16 10:24 ` David Laight
2026-04-17 3:59 ` Herbert Xu
0 siblings, 1 reply; 9+ messages in thread
From: David Laight @ 2026-04-16 10:24 UTC (permalink / raw)
To: kernel test robot; +Cc: Herbert Xu, llvm, oe-kbuild-all, linux-kernel
On Thu, 16 Apr 2026 11:04:43 +0800
kernel test robot <lkp@intel.com> wrote:
> Hi Herbert,
>
> FYI, the error/warning still remains.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 9e1e9d660255d7216067193d774f338d08d8528d
> commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
> date: 11 months ago
> config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20260416/202604161035.PMTaI4Cg-lkp@intel.com/config)
> compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 5bac06718f502014fade905512f1d26d578a18f3)
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260416/202604161035.PMTaI4Cg-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
> | Fixes: c3103416d521 ("crypto: hmac - Add ahash support")
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202604161035.PMTaI4Cg-lkp@intel.com/
>
> All warnings (new ones prefixed by >>):
>
> >> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
> 251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
> | ^
> 1 warning generated.
For a typical x86-64 build with gcc the frame is 700 bytes.
Most will be for req - so it should be pretty architecture/compiler neutral.
Really need the associated object file to see what is going on.
The config file doesn't seem to contain anything unusual.
There are some unrelated oddities though.
>
>
> vim +/hmac_setkey_ahash +251 crypto/hmac.c
>
> 250
> > 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
> 252 const u8 *inkey, unsigned int keylen)
> 253 {
> 254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
> 255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
> 256 int ds = crypto_ahash_digestsize(parent);
> 257 int bs = crypto_ahash_blocksize(parent);
> 258 int ss = crypto_ahash_statesize(parent);
> 259 HASH_REQUEST_ON_STACK(req, fb);
> 260 u8 *opad = &tctx->pads[ss];
Is ss actually guaranteed to be not smaller than bs ?
> 261 u8 *ipad = &tctx->pads[0];
> 262 int err, i;
> 263
> 264 if (fips_enabled && (keylen < 112 / 8))
> 265 return -EINVAL;
> 266
> 267 ahash_request_set_callback(req, 0, NULL, NULL);
> 268
> 269 if (keylen > bs) {
> 270 ahash_request_set_virt(req, inkey, ipad, keylen);
> 271 err = crypto_ahash_digest(req);
> 272 if (err)
> 273 goto out_zero_req;
> 274
> 275 keylen = ds;
Is ds guaranteed to be not larger than bs?
> 276 } else
> 277 memcpy(ipad, inkey, keylen);
> 278
> 279 memset(ipad + keylen, 0, bs - keylen);
> 280 memcpy(opad, ipad, bs);
> 281
> 282 for (i = 0; i < bs; i++) {
> 283 ipad[i] ^= HMAC_IPAD_VALUE;
> 284 opad[i] ^= HMAC_OPAD_VALUE;
> 285 }
> 286
> 287 ahash_request_set_virt(req, ipad, NULL, bs);
> 288 err = crypto_ahash_init(req) ?:
> 289 crypto_ahash_update(req) ?:
> 290 crypto_ahash_export(req, ipad);
> 291
> 292 ahash_request_set_virt(req, opad, NULL, bs);
> 293 err = err ?:
> 294 crypto_ahash_init(req) ?:
> 295 crypto_ahash_update(req) ?:
> 296 crypto_ahash_export(req, opad);
> 297
> 298 out_zero_req:
> 299 HASH_REQUEST_ZERO(req);
> 300 return err;
> 301 }
> 302
>
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
2026-04-16 10:24 ` David Laight
@ 2026-04-17 3:59 ` Herbert Xu
0 siblings, 0 replies; 9+ messages in thread
From: Herbert Xu @ 2026-04-17 3:59 UTC (permalink / raw)
To: David Laight; +Cc: kernel test robot, llvm, oe-kbuild-all, linux-kernel
On Thu, Apr 16, 2026 at 11:24:06AM +0100, David Laight wrote:
>
> > 250
> > > 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
> > 252 const u8 *inkey, unsigned int keylen)
> > 253 {
> > 254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
> > 255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
> > 256 int ds = crypto_ahash_digestsize(parent);
> > 257 int bs = crypto_ahash_blocksize(parent);
> > 258 int ss = crypto_ahash_statesize(parent);
> > 259 HASH_REQUEST_ON_STACK(req, fb);
> > 260 u8 *opad = &tctx->pads[ss];
>
> Is ss actually guaranteed to be not smaller than bs ?
Yes, it's checked in hmac_create_ahash:
ds = halg->digestsize;
ss = halg->statesize;
if (ds > alg->cra_blocksize || ss < alg->cra_blocksize)
goto err_free_inst;
Thanks,
--
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
^ permalink raw reply [flat|nested] 9+ messages in thread
* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2025-12-03 0:12 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2025-12-03 0:12 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
Hi Herbert,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: d61f1cc5db799f4e44a63418b2dc19396787427b
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 7 months ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20251203/202512030801.YJaB0zQK-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 734a912d0f025559fcf76bde9aaaeb0383c1625a)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251203/202512030801.YJaB0zQK-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512030801.YJaB0zQK-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2025-10-28 15:04 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2025-10-28 15:04 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
Hi Herbert,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fd57572253bc356330dbe5b233c2e1d8426c66fd
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 5 months ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20251028/202510282205.ELXg3cL3-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project d1c086e82af239b245fe8d7832f2753436634990)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251028/202510282205.ELXg3cL3-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202510282205.ELXg3cL3-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2025-09-14 21:06 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2025-09-14 21:06 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
Hi Herbert,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 1519fc7cd3e129f6a95143cdc92f01ba21a3c266
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 4 months ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20250915/202509150449.4cUQ2KGX-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 21857ae337e0892a5522b6e7337899caa61de2a6)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250915/202509150449.4cUQ2KGX-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202509150449.4cUQ2KGX-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2025-07-23 21:28 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2025-07-23 21:28 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
Hi Herbert,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 01a412d06bc5786eb4e44a6c8f0f4659bd4c9864
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 9 weeks ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20250724/202507240507.5fyAWOKF-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 853c343b45b3e83cc5eeef5a52fc8cc9d8a09252)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250724/202507240507.5fyAWOKF-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202507240507.5fyAWOKF-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash'
@ 2025-06-19 12:13 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2025-06-19 12:13 UTC (permalink / raw)
To: Herbert Xu; +Cc: llvm, oe-kbuild-all, linux-kernel
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fb4d33ab452ea254e2c319bac5703d1b56d895bf
commit: c3103416d5217655d707d9417aaf66f184e3d72f crypto: hmac - Add ahash support
date: 4 weeks ago
config: mips-eyeq6_defconfig (https://download.01.org/0day-ci/archive/20250619/202506192035.7dBntw28-lkp@intel.com/config)
compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project 875b36a8742437b95f623bab1e0332562c7b4b3f)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250619/202506192035.7dBntw28-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506192035.7dBntw28-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' [-Wframe-larger-than]
251 | static int hmac_setkey_ahash(struct crypto_ahash *parent,
| ^
1 warning generated.
vim +/hmac_setkey_ahash +251 crypto/hmac.c
250
> 251 static int hmac_setkey_ahash(struct crypto_ahash *parent,
252 const u8 *inkey, unsigned int keylen)
253 {
254 struct ahash_hmac_ctx *tctx = crypto_ahash_ctx(parent);
255 struct crypto_ahash *fb = crypto_ahash_fb(tctx->hash);
256 int ds = crypto_ahash_digestsize(parent);
257 int bs = crypto_ahash_blocksize(parent);
258 int ss = crypto_ahash_statesize(parent);
259 HASH_REQUEST_ON_STACK(req, fb);
260 u8 *opad = &tctx->pads[ss];
261 u8 *ipad = &tctx->pads[0];
262 int err, i;
263
264 if (fips_enabled && (keylen < 112 / 8))
265 return -EINVAL;
266
267 ahash_request_set_callback(req, 0, NULL, NULL);
268
269 if (keylen > bs) {
270 ahash_request_set_virt(req, inkey, ipad, keylen);
271 err = crypto_ahash_digest(req);
272 if (err)
273 goto out_zero_req;
274
275 keylen = ds;
276 } else
277 memcpy(ipad, inkey, keylen);
278
279 memset(ipad + keylen, 0, bs - keylen);
280 memcpy(opad, ipad, bs);
281
282 for (i = 0; i < bs; i++) {
283 ipad[i] ^= HMAC_IPAD_VALUE;
284 opad[i] ^= HMAC_OPAD_VALUE;
285 }
286
287 ahash_request_set_virt(req, ipad, NULL, bs);
288 err = crypto_ahash_init(req) ?:
289 crypto_ahash_update(req) ?:
290 crypto_ahash_export(req, ipad);
291
292 ahash_request_set_virt(req, opad, NULL, bs);
293 err = err ?:
294 crypto_ahash_init(req) ?:
295 crypto_ahash_update(req) ?:
296 crypto_ahash_export(req, opad);
297
298 out_zero_req:
299 HASH_REQUEST_ZERO(req);
300 return err;
301 }
302
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2026-04-17 3:59 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-12 22:49 crypto/hmac.c:251:12: warning: stack frame size (1152) exceeds limit (1024) in 'hmac_setkey_ahash' kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2026-04-16 3:04 kernel test robot
2026-04-16 10:24 ` David Laight
2026-04-17 3:59 ` Herbert Xu
2025-12-03 0:12 kernel test robot
2025-10-28 15:04 kernel test robot
2025-09-14 21:06 kernel test robot
2025-07-23 21:28 kernel test robot
2025-06-19 12:13 kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox