================================================================== BUG: KASAN: slab-out-of-bounds in pfkey_msg2xfrm_state net/key/af_key.c:1227 [inline] BUG: KASAN: slab-out-of-bounds in pfkey_add+0x145d/0x3220 net/key/af_key.c:1506 Read of size 4987 at addr ffff8801d1bf4298 by task syz-executor4/15608 CPU: 0 PID: 15608 Comm: syz-executor4 Not tainted 4.4.135-ge75204c #53 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 0000000000000000 62c0ed8d28b54013 ffff8801bd15f6c0 ffffffff81e0ed0d ffffea000746fd00 ffff8801d1bf4298 0000000000000000 ffff8801d1bf4480 ffff8801d1bf4280 ffff8801bd15f6f8 ffffffff81515946 ffff8801d1bf4298 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x124 lib/dump_stack.c:51 [] print_address_description+0x6c/0x216 mm/kasan/report.c:252 [] kasan_report_error mm/kasan/report.c:351 [inline] [] kasan_report.cold.7+0x175/0x2f7 mm/kasan/report.c:408 [] check_memory_region_inline mm/kasan/kasan.c:325 [inline] [] check_memory_region+0x14f/0x1b0 mm/kasan/kasan.c:332 [] memcpy+0x23/0x50 mm/kasan/kasan.c:367 [] pfkey_msg2xfrm_state net/key/af_key.c:1227 [inline] [] pfkey_add+0x145d/0x3220 net/key/af_key.c:1506 [] pfkey_process+0x671/0x740 net/key/af_key.c:2834 [] pfkey_sendmsg+0x346/0xae0 net/key/af_key.c:3678 [] sock_sendmsg_nosec net/socket.c:625 [inline] [] sock_sendmsg+0xcc/0x110 net/socket.c:635 [] ___sys_sendmsg+0x745/0x880 net/socket.c:1962 [] __sys_sendmsg+0xd6/0x190 net/socket.c:1996 [] C_SYSC_sendmsg net/compat.c:722 [inline] [] compat_SyS_sendmsg+0x2a/0x40 net/compat.c:720 [] do_syscall_32_irqs_on arch/x86/entry/common.c:392 [inline] [] do_fast_syscall_32+0x326/0x8b0 arch/x86/entry/common.c:459 [] sysenter_flags_fixed+0xd/0x17 Allocated by task 15608: [] save_stack_trace+0x26/0x50 arch/x86/kernel/stacktrace.c:63 [] save_stack+0x43/0xd0 mm/kasan/kasan.c:512 [] set_track mm/kasan/kasan.c:524 [inline] [] kasan_kmalloc+0xc7/0xe0 mm/kasan/kasan.c:616 [] kasan_krealloc+0x64/0x80 mm/kasan/kasan.c:654 [] ksize+0x8a/0xf0 mm/slub.c:3727 [] __alloc_skb+0x133/0x600 net/core/skbuff.c:237 [] alloc_skb include/linux/skbuff.h:815 [inline] [] pfkey_sendmsg+0xfe/0xae0 net/key/af_key.c:3665 [] sock_sendmsg_nosec net/socket.c:625 [inline] [] sock_sendmsg+0xcc/0x110 net/socket.c:635 [] ___sys_sendmsg+0x745/0x880 net/socket.c:1962 [] __sys_sendmsg+0xd6/0x190 net/socket.c:1996 [] C_SYSC_sendmsg net/compat.c:722 [inline] [] compat_SyS_sendmsg+0x2a/0x40 net/compat.c:720 [] do_syscall_32_irqs_on arch/x86/entry/common.c:392 [inline] [] do_fast_syscall_32+0x326/0x8b0 arch/x86/entry/common.c:459 [] sysenter_flags_fixed+0xd/0x17 Freed by task 6490: [] save_stack_trace+0x26/0x50 arch/x86/kernel/stacktrace.c:63 [] save_stack+0x43/0xd0 mm/kasan/kasan.c:512 [] set_track mm/kasan/kasan.c:524 [inline] [] kasan_slab_free+0x72/0xc0 mm/kasan/kasan.c:589 [] slab_free_hook mm/slub.c:1383 [inline] [] slab_free_freelist_hook mm/slub.c:1405 [inline] [] slab_free mm/slub.c:2859 [inline] [] kfree+0xf4/0x310 mm/slub.c:3749 [] skb_free_head net/core/skbuff.c:571 [inline] [] skb_release_data+0x304/0x3b0 net/core/skbuff.c:602 [] skb_release_all+0x4a/0x60 net/core/skbuff.c:661 [] __kfree_skb net/core/skbuff.c:675 [inline] [] consume_skb+0xf3/0x3d0 net/core/skbuff.c:748 [] netlink_broadcast_filtered+0x2b2/0x9c0 net/netlink/af_netlink.c:1479 [] kobject_uevent_env+0x6d8/0xb80 lib/kobject_uevent.c:316 [] kobject_uevent+0x1f/0x30 lib/kobject_uevent.c:374 [] kobject_cleanup lib/kobject.c:630 [inline] [] kobject_release+0x144/0x1b0 lib/kobject.c:672 [] kref_sub include/linux/kref.h:73 [inline] [] kref_put include/linux/kref.h:98 [inline] [] kobject_put+0x72/0xd0 lib/kobject.c:689 [] netdev_queue_update_kobjects+0x18d/0x290 net/core/net-sysfs.c:1327 [] remove_queue_kobjects net/core/net-sysfs.c:1377 [inline] [] netdev_unregister_kobject+0xaa/0x110 net/core/net-sysfs.c:1511 [] rollback_registered_many+0x3f8/0x760 net/core/dev.c:6367 [] unregister_netdevice_many.part.98+0x1b/0x110 net/core/dev.c:7354 [] unregister_netdevice_many+0x36/0x50 net/core/dev.c:7353 [] ip_tunnel_delete_net+0x2af/0x390 net/ipv4/ip_tunnel.c:1033 [] ipip_exit_net+0x129/0x1f0 net/ipv4/ipip.c:542 [] ops_exit_list.isra.6+0xb0/0x160 net/core/net_namespace.c:134 [] cleanup_net+0x321/0x600 net/core/net_namespace.c:452 [] process_one_work+0x7df/0x1600 kernel/workqueue.c:2064 [] worker_thread+0xd9/0xfc0 kernel/workqueue.c:2196 [] kthread+0x268/0x300 kernel/kthread.c:211 [] ret_from_fork+0x55/0x80 arch/x86/entry/entry_64.S:510 The buggy address belongs to the object at ffff8801d1bf4280 which belongs to the cache kmalloc-512 of size 512 The buggy address is located 24 bytes inside of 512-byte region [ffff8801d1bf4280, ffff8801d1bf4480) The buggy address belongs to the page: ------------[ cut here ]------------ WARNING: CPU: 1 PID: 0 at kernel/locking/lockdep.c:3123 __lock_acquire+0x23b8/0x5270 kernel/locking/lockdep.c:3123() DEBUG_LOCKS_WARN_ON(depth >= MAX_LOCK_DEPTH)