bisecting fixing commit since 414510bc00a5fc954d8340c170083f518d09aa55 building syzkaller on a60cb4cd840ce786236a00480e8bb1025e0c5fef testing commit 414510bc00a5fc954d8340c170083f518d09aa55 with gcc (GCC) 8.1.0 kernel signature: 36823d69f4f54ac9b36bbff0b3f7d8e399ccc255352e054fbc010b5b14ee25fc run #0: crashed: KASAN: use-after-free Write in padata_parallel_worker run #1: crashed: KASAN: use-after-free Write in padata_parallel_worker run #2: crashed: KASAN: use-after-free Write in padata_parallel_worker run #3: crashed: KASAN: use-after-free Write in padata_parallel_worker run #4: crashed: KASAN: use-after-free Write in padata_parallel_worker run #5: crashed: KASAN: use-after-free Write in padata_parallel_worker run #6: crashed: BUG: unable to handle kernel paging request in corrupted run #7: crashed: KASAN: use-after-free Write in padata_parallel_worker run #8: crashed: KASAN: use-after-free Write in padata_parallel_worker run #9: crashed: KASAN: use-after-free Write in padata_parallel_worker testing current HEAD c6db52a88798e5a0dfef80041ad4d33cc8cf04eb testing commit c6db52a88798e5a0dfef80041ad4d33cc8cf04eb with gcc (GCC) 8.1.0 kernel signature: ec7b821f2f138322ff39d6e15d702b8afd156499c74dc94703c053674d6c5ebd run #0: crashed: KASAN: use-after-free Write in padata_parallel_worker run #1: crashed: KASAN: use-after-free Write in padata_parallel_worker run #2: crashed: KASAN: use-after-free Write in padata_parallel_worker run #3: crashed: KASAN: use-after-free Write in padata_parallel_worker run #4: crashed: KASAN: use-after-free Write in padata_parallel_worker run #5: crashed: BUG: unable to handle kernel run #6: crashed: KASAN: use-after-free in padata_parallel_worker run #7: crashed: KASAN: use-after-free Write in padata_parallel_worker run #8: crashed: BUG: unable to handle kernel paging request in corrupted run #9: crashed: BUG: unable to handle kernel revisions tested: 2, total time: 23m19.202878072s (build: 16m32.207276584s, test: 6m8.374866468s) the crash still happens on HEAD commit msg: Linux 4.14.183 crash: BUG: unable to handle kernel IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_0: link becomes ready IPv6: ADDRCONF(NETDEV_UP): veth0_to_hsr: link is not ready IPv6: ADDRCONF(NETDEV_UP): veth1_to_hsr: link is not ready IPv6: ADDRCONF(NETDEV_UP): bridge_slave_0: link is not ready ================================================================== BUG: unable to handle kernel BUG: KASAN: use-after-free in list_replace include/linux/list.h:141 [inline] BUG: KASAN: use-after-free in list_replace_init include/linux/list.h:149 [inline] BUG: KASAN: use-after-free in padata_parallel_worker+0x377/0x420 kernel/padata.c:76 paging request at ffffffffffffffc8 Write of size 8 at addr ffff888091729618 by task kworker/0:4/7077 IP: crypto_aead_encrypt include/crypto/aead.h:330 [inline] IP: pcrypt_aead_enc+0x77/0xf0 crypto/pcrypt.c:142 PGD 786d067 CPU: 0 PID: 7077 Comm: kworker/0:4 Not tainted 4.14.183-syzkaller #0 P4D 786d067 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 PUD 786f067 Workqueue: pencrypt padata_parallel_worker PMD 0 Call Trace: Oops: 0000 [#1] PREEMPT SMP KASAN Modules linked in: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0xf7/0x13b lib/dump_stack.c:58 CPU: 1 PID: 3531 Comm: kworker/1:2 Not tainted 4.14.183-syzkaller #0 print_address_description.cold.7+0x9/0x1c9 mm/kasan/report.c:252 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: pencrypt padata_parallel_worker kasan_report_error mm/kasan/report.c:351 [inline] kasan_report.cold.8+0x11a/0x2d3 mm/kasan/report.c:409 task: ffff88809029a100 task.stack: ffff8880902a0000 __asan_report_store8_noabort+0x17/0x20 mm/kasan/report.c:435 RIP: 0010:crypto_aead_encrypt include/crypto/aead.h:330 [inline] RIP: 0010:pcrypt_aead_enc+0x77/0xf0 crypto/pcrypt.c:142 list_replace include/linux/list.h:141 [inline] list_replace_init include/linux/list.h:149 [inline] padata_parallel_worker+0x377/0x420 kernel/padata.c:76 RSP: 0018:ffff8880902a7c90 EFLAGS: 00010246 process_one_work+0x79e/0x16c0 kernel/workqueue.c:2116 RAX: dffffc0000000000 RBX: ffff88809185a850 RCX: ffffffff82b0c462 RDX: 1ffffffffffffff9 RSI: 0000000000000008 RDI: ffff88809185a890 worker_thread+0xcc/0xee0 kernel/workqueue.c:2250 RBP: ffff8880902a7cb0 R08: 0000000000000001 R09: 0000000000000000 kthread+0x338/0x400 kernel/kthread.c:232 R10: 0000000000000050 R11: ffff88809029a100 R12: 0000000000000000 R13: ffff88809185a890 R14: ffff8880902a7cf8 R15: 1ffff11012054f9b FS: 0000000000000000(0000) GS:ffff8880aef00000(0000) knlGS:0000000000000000 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffffffffffffffc8 CR3: 000000009b919000 CR4: 00000000001406e0 Allocated by task 7099: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 save_stack+0x43/0xd0 mm/kasan/kasan.c:447 Call Trace: set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc+0xc7/0xe0 mm/kasan/kasan.c:551 padata_parallel_worker+0x24b/0x420 kernel/padata.c:87 __do_kmalloc mm/slab.c:3720 [inline] __kmalloc+0x15b/0x7b0 mm/slab.c:3729 kmalloc include/linux/slab.h:493 [inline] kzalloc include/linux/slab.h:661 [inline] tls_push_record+0xf6/0x14c0 net/tls/tls_sw.c:250 process_one_work+0x79e/0x16c0 kernel/workqueue.c:2116 tls_sw_sendmsg+0x90b/0x10a0 net/tls/tls_sw.c:457 inet_sendmsg+0x108/0x440 net/ipv4/af_inet.c:762 worker_thread+0xcc/0xee0 kernel/workqueue.c:2250 sock_sendmsg_nosec net/socket.c:646 [inline] sock_sendmsg+0xb5/0xf0 net/socket.c:656 kthread+0x338/0x400 kernel/kthread.c:232 SYSC_sendto+0x1e3/0x2c0 net/socket.c:1763 SyS_sendto+0x9/0x10 net/socket.c:1731 do_syscall_64+0x1c7/0x5b0 arch/x86/entry/common.c:292 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 entry_SYSCALL_64_after_hwframe+0x46/0xbb Code: 03 Freed by task 7099: 80 save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 3c save_stack+0x43/0xd0 mm/kasan/kasan.c:447 02 set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0x71/0xc0 mm/kasan/kasan.c:524 00 __cache_free mm/slab.c:3496 [inline] kfree+0xcc/0x270 mm/slab.c:3815 75 tls_push_record+0xd32/0x14c0 net/tls/tls_sw.c:293 7a tls_sw_sendmsg+0x90b/0x10a0 net/tls/tls_sw.c:457 48 inet_sendmsg+0x108/0x440 net/ipv4/af_inet.c:762 b8 sock_sendmsg_nosec net/socket.c:646 [inline] sock_sendmsg+0xb5/0xf0 net/socket.c:656 00 SYSC_sendto+0x1e3/0x2c0 net/socket.c:1763 00 SyS_sendto+0x9/0x10 net/socket.c:1731 00 do_syscall_64+0x1c7/0x5b0 arch/x86/entry/common.c:292 00 entry_SYSCALL_64_after_hwframe+0x46/0xbb 00 fc The buggy address belongs to the object at ffff8880917295c0 which belongs to the cache kmalloc-256 of size 256 ff The buggy address is located 88 bytes inside of 256-byte region [ffff8880917295c0, ffff8880917296c0) df The buggy address belongs to the page: 4d page:ffffea000245ca40 count:1 mapcount:0 mapping:ffff8880917290c0 index:0x0 8b 64 flags: 0x1fffc0000000100(slab) 24 raw: 01fffc0000000100 ffff8880917290c0 0000000000000000 000000010000000c 38 raw: ffffea00024616a0 ffff8880aa801648 ffff8880aa8007c0 0000000000000000 49 page dumped because: kasan: bad access detected 8d 7c Memory state around the buggy address: 24 ffff888091729500: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc c8 ffff888091729580: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb 48 >ffff888091729600: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb 89 ^ fa ffff888091729680: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc 48 ffff888091729700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c1 ================================================================== ea