================================================================== 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+0x2b0/0x2e0 kernel/padata.c:76 Write of size 8 at addr ffff8880a90d57d8 by task kworker/0:2/3461 BUG: unable to handle kernel paging request CPU: 0 PID: 3461 Comm: kworker/0:2 Not tainted 4.14.203-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 at ffffffffffffffc8 Workqueue: pencrypt padata_parallel_worker IP: crypto_aead_encrypt include/crypto/aead.h:330 [inline] IP: pcrypt_aead_enc+0x74/0xf0 crypto/pcrypt.c:142 PGD 8e6b067 Call Trace: P4D 8e6b067 PUD 8e6d067 __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x1b2/0x283 lib/dump_stack.c:58 PMD 0 print_address_description.cold+0x54/0x1d3 mm/kasan/report.c:252 kasan_report_error.cold+0x8a/0x194 mm/kasan/report.c:351 Oops: 0000 [#1] PREEMPT SMP KASAN Modules linked in: kasan_report mm/kasan/report.c:409 [inline] __asan_report_store8_noabort+0x68/0x70 mm/kasan/report.c:435 CPU: 1 PID: 4606 Comm: kworker/1:2 Not tainted 4.14.203-syzkaller #0 list_replace include/linux/list.h:141 [inline] list_replace_init include/linux/list.h:149 [inline] padata_parallel_worker+0x2b0/0x2e0 kernel/padata.c:76 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: pencrypt padata_parallel_worker task: ffff8880a22bc3c0 task.stack: ffff8880a22c0000 process_one_work+0x793/0x14a0 kernel/workqueue.c:2116 RIP: 0010:crypto_aead_encrypt include/crypto/aead.h:330 [inline] RIP: 0010:pcrypt_aead_enc+0x74/0xf0 crypto/pcrypt.c:142 RSP: 0018:ffff8880a22c7cc0 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000 worker_thread+0x5cc/0xff0 kernel/workqueue.c:2250 RDX: 1ffffffffffffff9 RSI: 0000000000000003 RDI: ffff88809cab8c90 RBP: ffff88809cab8c50 R08: ffffffff8b9ab7a8 R09: 0000000000000002 kthread+0x30d/0x420 kernel/kthread.c:232 R10: 0000000000000000 R11: ffff8880a22bc3c0 R12: ffff88809cab8c90 R13: ffff8880a22c7d10 R14: ffff8880a22c7d10 R15: 1ffff11014458f9e ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 FS: 0000000000000000(0000) GS:ffff8880ba500000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 Allocated by task 19096: CR2: ffffffffffffffc8 CR3: 00000000a2863000 CR4: 00000000001426e0 save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc+0xeb/0x160 mm/kasan/kasan.c:551 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 __do_kmalloc mm/slab.c:3720 [inline] __kmalloc+0x15a/0x400 mm/slab.c:3729 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 kmalloc include/linux/slab.h:493 [inline] kzalloc include/linux/slab.h:661 [inline] tls_push_record+0xfa/0x1270 net/tls/tls_sw.c:250 Call Trace: tls_sw_sendmsg+0xbb0/0xfd0 net/tls/tls_sw.c:457 inet_sendmsg+0x11a/0x4e0 net/ipv4/af_inet.c:762 padata_parallel_worker+0x202/0x2e0 kernel/padata.c:87 sock_sendmsg_nosec net/socket.c:646 [inline] sock_sendmsg+0xb5/0x100 net/socket.c:656 SYSC_sendto net/socket.c:1763 [inline] SyS_sendto+0x1c7/0x2c0 net/socket.c:1731 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292 process_one_work+0x793/0x14a0 kernel/workqueue.c:2116 entry_SYSCALL_64_after_hwframe+0x46/0xbb Freed by task 19096: save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0xc3/0x1a0 mm/kasan/kasan.c:524 worker_thread+0x5cc/0xff0 kernel/workqueue.c:2250 __cache_free mm/slab.c:3496 [inline] kfree+0xc9/0x250 mm/slab.c:3815 tls_push_record+0xc3b/0x1270 net/tls/tls_sw.c:293 kthread+0x30d/0x420 kernel/kthread.c:232 tls_sw_sendmsg+0xbb0/0xfd0 net/tls/tls_sw.c:457 inet_sendmsg+0x11a/0x4e0 net/ipv4/af_inet.c:762 sock_sendmsg_nosec net/socket.c:646 [inline] sock_sendmsg+0xb5/0x100 net/socket.c:656 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 SYSC_sendto net/socket.c:1763 [inline] SyS_sendto+0x1c7/0x2c0 net/socket.c:1731 Code: do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292 c1 entry_SYSCALL_64_after_hwframe+0x46/0xbb ea 03 The buggy address belongs to the object at ffff8880a90d5780 which belongs to the cache kmalloc-256 of size 256 80 The buggy address is located 88 bytes inside of 256-byte region [ffff8880a90d5780, ffff8880a90d5880) 3c The buggy address belongs to the page: 02 page:ffffea0002a43540 count:1 mapcount:0 mapping:ffff8880a90d5000 index:0xffff8880a90d5000 00 75 flags: 0xfff00000000100(slab) 7f raw: 00fff00000000100 ffff8880a90d5000 ffff8880a90d5000 000000010000000b 48 raw: ffffea0002ccf6e0 ffffea0001636ce0 ffff88813fe807c0 0000000000000000 b8 page dumped because: kasan: bad access detected 00 00 Memory state around the buggy address: 00 ffff8880a90d5680: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff8880a90d5700: 00 00 00 00 00 00 00 05 fc fc fc fc fc fc fc fc 00 >ffff8880a90d5780: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fc ^ ff ffff8880a90d5800: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb df ffff8880a90d5880: fc fc fc fc fc fc fc fc 00 00 00 00 00 00 00 00 48 ================================================================== 8b