syzbot


KMSAN: uninit-value in ghash_setkey

Status: closed as invalid on 2018/06/27 15:08
Subsystems: crypto
[Documentation on labels]
First crash: 2692d, last: 2678d

Sample crash report:
==================================================================
BUG: KMSAN: uninit-value in __arch_swab64 arch/x86/include/uapi/asm/swab.h:31 [inline]
BUG: KMSAN: uninit-value in __fswab64 include/uapi/linux/swab.h:68 [inline]
BUG: KMSAN: uninit-value in ghash_setkey+0x209/0x270 arch/x86/crypto/ghash-clmulni-intel_glue.c:68
CPU: 1 PID: 3585 Comm: syzkaller240022 Not tainted 4.16.0+ #82
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:17 [inline]
 dump_stack+0x185/0x1d0 lib/dump_stack.c:53
 kmsan_report+0x142/0x240 mm/kmsan/kmsan.c:1067
 __msan_warning_32+0x6c/0xb0 mm/kmsan/kmsan_instr.c:676
 __arch_swab64 arch/x86/include/uapi/asm/swab.h:31 [inline]
 __fswab64 include/uapi/linux/swab.h:68 [inline]
 ghash_setkey+0x209/0x270 arch/x86/crypto/ghash-clmulni-intel_glue.c:68
 crypto_shash_setkey+0x317/0x490 crypto/shash.c:66
 cryptd_hash_setkey+0x1a5/0x330 crypto/cryptd.c:694
 crypto_ahash_setkey+0x31a/0x470 crypto/ahash.c:201
 ghash_async_setkey+0x1a5/0x330 arch/x86/crypto/ghash-clmulni-intel_glue.c:270
 crypto_ahash_setkey+0x31a/0x470 crypto/ahash.c:201
 crypto_gcm_setkey+0xa3c/0xc10 crypto/gcm.c:146
 crypto_aead_setkey+0x373/0x4c0 crypto/aead.c:62
 aead_setkey+0xa0/0xc0 crypto/algif_aead.c:526
 alg_setkey crypto/af_alg.c:223 [inline]
 alg_setsockopt+0x6c5/0x740 crypto/af_alg.c:256
 SYSC_setsockopt+0x4b8/0x570 net/socket.c:1849
 SyS_setsockopt+0x76/0xa0 net/socket.c:1828
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
RIP: 0033:0x4455e9
RSP: 002b:00007f6bb3827da8 EFLAGS: 00000246 ORIG_RAX: 0000000000000036
RAX: ffffffffffffffda RBX: 00000000006dac54 RCX: 00000000004455e9
RDX: 0000000000000001 RSI: 0000000000000117 RDI: 0000000000000005
RBP: 0000000000000000 R08: 0000000000000010 R09: 0000000000000000
R10: 00000000200000c0 R11: 0000000000000246 R12: 00000000006dac50
R13: d16bd8a7523a09fc R14: 1c31f0cd157ae671 R15: 0000000000000003

Uninit was stored to memory at:
 kmsan_save_stack_with_flags mm/kmsan/kmsan.c:278 [inline]
 kmsan_save_stack mm/kmsan/kmsan.c:293 [inline]
 kmsan_internal_chain_origin+0x12b/0x210 mm/kmsan/kmsan.c:684
 __msan_chain_origin+0x69/0xc0 mm/kmsan/kmsan_instr.c:521
 __crypto_xor+0x23c/0x16b0 crypto/algapi.c:1012
 crypto_xor include/crypto/algapi.h:210 [inline]
 crypto_ctr_crypt_inplace+0x29a/0x3a0 crypto/ctr.c:115
 crypto_ctr_crypt+0x54c/0x7d0 crypto/ctr.c:142
 skcipher_crypt_blkcipher crypto/skcipher.c:623 [inline]
 skcipher_encrypt_blkcipher+0x222/0x320 crypto/skcipher.c:632
 crypto_skcipher_encrypt include/crypto/skcipher.h:443 [inline]
 crypto_gcm_setkey+0x6a3/0xc10 crypto/gcm.c:137
 crypto_aead_setkey+0x373/0x4c0 crypto/aead.c:62
 aead_setkey+0xa0/0xc0 crypto/algif_aead.c:526
 alg_setkey crypto/af_alg.c:223 [inline]
 alg_setsockopt+0x6c5/0x740 crypto/af_alg.c:256
 SYSC_setsockopt+0x4b8/0x570 net/socket.c:1849
 SyS_setsockopt+0x76/0xa0 net/socket.c:1828
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
Local variable description: ----vla@crypto_ctr_crypt_inplace
Variable was created at:
 crypto_ctr_crypt_inplace+0x19a/0x3a0 crypto/ctr.c:109
 crypto_ctr_crypt+0x54c/0x7d0 crypto/ctr.c:142
==================================================================

Crashes (22):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/04/08 19:51 https://github.com/google/kmsan.git master e2ab7e8abba4 77bd5117 .config console log report syz C ci-upstream-kmsan-gce
2018/04/20 19:47 https://github.com/google/kmsan.git master 48c6a2b0ab1b cc402841 .config console log report ci-upstream-kmsan-gce
2018/04/19 23:17 https://github.com/google/kmsan.git master 48c6a2b0ab1b 3642839c .config console log report ci-upstream-kmsan-gce
2018/04/19 11:23 https://github.com/google/kmsan.git master 48c6a2b0ab1b d1b2ef69 .config console log report ci-upstream-kmsan-gce
2018/04/16 06:52 https://github.com/google/kmsan.git master 35ff515e4bda 7a67784c .config console log report ci-upstream-kmsan-gce
2018/04/14 09:32 https://github.com/google/kmsan.git master 35ff515e4bda 7a67784c .config console log report ci-upstream-kmsan-gce
2018/04/13 19:08 https://github.com/google/kmsan.git master 35ff515e4bda 0a0c5db6 .config console log report ci-upstream-kmsan-gce
2018/04/13 17:57 https://github.com/google/kmsan.git master 35ff515e4bda 0a0c5db6 .config console log report ci-upstream-kmsan-gce
2018/04/12 03:13 https://github.com/google/kmsan.git master 35ff515e4bda 9cd56d71 .config console log report ci-upstream-kmsan-gce
2018/04/11 03:47 https://github.com/google/kmsan.git master 35ff515e4bda 8b8de427 .config console log report ci-upstream-kmsan-gce
2018/04/11 03:45 https://github.com/google/kmsan.git master 35ff515e4bda 8b8de427 .config console log report ci-upstream-kmsan-gce
2018/04/10 14:06 https://github.com/google/kmsan.git master 35ff515e4bda 8e873e9d .config console log report ci-upstream-kmsan-gce
2018/04/08 19:35 https://github.com/google/kmsan.git master e2ab7e8abba4 77bd5117 .config console log report ci-upstream-kmsan-gce
2018/04/07 04:05 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 03:24 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 03:24 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 03:21 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 03:17 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 02:59 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 00:30 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/07 00:30 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
2018/04/06 22:59 https://github.com/google/kmsan.git master e2ab7e8abba4 d613535f .config console log report ci-upstream-kmsan-gce
* Struck through repros no longer work on HEAD.