================================================================== BUG: KASAN: use-after-free in rxrpc_send_keepalive+0x8a2/0x940 net/rxrpc/output.c:634 Read of size 8 at addr ffff88808be24958 by task kworker/0:3/14723 CPU: 0 PID: 14723 Comm: kworker/0:3 Not tainted 5.4.0-rc1+ #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: krxrpcd rxrpc_peer_keepalive_worker Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x172/0x1f0 lib/dump_stack.c:113 print_address_description.constprop.0.cold+0xd4/0x30b mm/kasan/report.c:374 __kasan_report.cold+0x1b/0x41 mm/kasan/report.c:506 kasan_report+0x12/0x20 mm/kasan/common.c:634 __asan_report_load8_noabort+0x14/0x20 mm/kasan/generic_report.c:132 rxrpc_send_keepalive+0x8a2/0x940 net/rxrpc/output.c:634 rxrpc_peer_keepalive_dispatch net/rxrpc/peer_event.c:369 [inline] rxrpc_peer_keepalive_worker+0x7be/0xd02 net/rxrpc/peer_event.c:430 process_one_work+0x9af/0x1740 kernel/workqueue.c:2269 worker_thread+0x98/0xe40 kernel/workqueue.c:2415 kthread+0x361/0x430 kernel/kthread.c:255 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352 Allocated by task 12267: save_stack+0x23/0x90 mm/kasan/common.c:69 set_track mm/kasan/common.c:77 [inline] __kasan_kmalloc mm/kasan/common.c:510 [inline] __kasan_kmalloc.constprop.0+0xcf/0xe0 mm/kasan/common.c:483 kasan_kmalloc+0x9/0x10 mm/kasan/common.c:524 __do_kmalloc_node mm/slab.c:3615 [inline] __kmalloc_node_track_caller+0x4e/0x70 mm/slab.c:3629 __kmalloc_reserve.isra.0+0x40/0xf0 net/core/skbuff.c:141 __alloc_skb+0x10b/0x5e0 net/core/skbuff.c:209 alloc_skb include/linux/skbuff.h:1049 [inline] __tcp_send_ack.part.0+0x6a/0x5b0 net/ipv4/tcp_output.c:3675 __tcp_send_ack net/ipv4/tcp_output.c:3702 [inline] tcp_send_ack+0x88/0xa0 net/ipv4/tcp_output.c:3702 tcp_fin+0xf6/0x960 net/ipv4/tcp_input.c:4175 tcp_data_queue+0x1ee7/0x4970 net/ipv4/tcp_input.c:4793 tcp_rcv_state_process+0xd38/0x4e48 net/ipv4/tcp_input.c:6340 tcp_v4_do_rcv+0x351/0x8c0 net/ipv4/tcp_ipv4.c:1581 sk_backlog_rcv include/net/sock.h:945 [inline] __release_sock+0x129/0x390 net/core/sock.c:2433 tcp_close+0x6ee/0x10e0 net/ipv4/tcp.c:2435 inet_release+0xed/0x200 net/ipv4/af_inet.c:427 __sock_release+0xce/0x280 net/socket.c:590 sock_close+0x1e/0x30 net/socket.c:1268 __fput+0x2ff/0x890 fs/file_table.c:280 ____fput+0x16/0x20 fs/file_table.c:313 task_work_run+0x145/0x1c0 kernel/task_work.c:113 tracehook_notify_resume include/linux/tracehook.h:188 [inline] exit_to_usermode_loop+0x316/0x380 arch/x86/entry/common.c:163 prepare_exit_to_usermode arch/x86/entry/common.c:194 [inline] syscall_return_slowpath arch/x86/entry/common.c:274 [inline] do_syscall_64+0x65f/0x760 arch/x86/entry/common.c:300 entry_SYSCALL_64_after_hwframe+0x49/0xbe Freed by task 12267: save_stack+0x23/0x90 mm/kasan/common.c:69 set_track mm/kasan/common.c:77 [inline] kasan_set_free_info mm/kasan/common.c:332 [inline] __kasan_slab_free+0x102/0x150 mm/kasan/common.c:471 kasan_slab_free+0xe/0x10 mm/kasan/common.c:480 __cache_free mm/slab.c:3425 [inline] kfree+0x10a/0x2c0 mm/slab.c:3756 skb_free_head+0x93/0xb0 net/core/skbuff.c:591 skb_release_data+0x42d/0x7c0 net/core/skbuff.c:611 skb_release_all+0x4d/0x60 net/core/skbuff.c:665 __kfree_skb+0x16/0x30 net/core/skbuff.c:679 tcp_drop net/ipv4/tcp_input.c:4465 [inline] tcp_rcv_state_process+0x3e3/0x4e48 net/ipv4/tcp_input.c:6353 tcp_v4_do_rcv+0x351/0x8c0 net/ipv4/tcp_ipv4.c:1581 sk_backlog_rcv include/net/sock.h:945 [inline] __release_sock+0x129/0x390 net/core/sock.c:2433 tcp_close+0x6ee/0x10e0 net/ipv4/tcp.c:2435 inet_release+0xed/0x200 net/ipv4/af_inet.c:427 __sock_release+0xce/0x280 net/socket.c:590 sock_close+0x1e/0x30 net/socket.c:1268 __fput+0x2ff/0x890 fs/file_table.c:280 ____fput+0x16/0x20 fs/file_table.c:313 task_work_run+0x145/0x1c0 kernel/task_work.c:113 tracehook_notify_resume include/linux/tracehook.h:188 [inline] exit_to_usermode_loop+0x316/0x380 arch/x86/entry/common.c:163 prepare_exit_to_usermode arch/x86/entry/common.c:194 [inline] syscall_return_slowpath arch/x86/entry/common.c:274 [inline] do_syscall_64+0x65f/0x760 arch/x86/entry/common.c:300 entry_SYSCALL_64_after_hwframe+0x49/0xbe The buggy address belongs to the object at ffff88808be24940 which belongs to the cache kmalloc-1k of size 1024 The buggy address is located 24 bytes inside of 1024-byte region [ffff88808be24940, ffff88808be24d40) The buggy address belongs to the page: page:ffffea00022f8900 refcount:1 mapcount:0 mapping:ffff8880aa400c40 index:0xffff88808be244c0 compound_mapcount: 0 flags: 0x1fffc0000010200(slab|head) raw: 01fffc0000010200 ffffea0002a24288 ffffea00023d3a88 ffff8880aa400c40 raw: ffff88808be244c0 ffff88808be24040 0000000100000006 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff88808be24800: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff88808be24880: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc >ffff88808be24900: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb ^ ffff88808be24980: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff88808be24a00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================