==================================================================
BUG: KASAN: slab-out-of-bounds in xfrm_alloc_spi+0x570/0xf30
Read of size 4 at addr ffff8881108f5744 by task syz.0.3939/18469

CPU: 1 UID: 0 PID: 18469 Comm: syz.0.3939 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Call Trace:
 <TASK>
 dump_stack_lvl+0x189/0x250
 print_report+0xca/0x240
 kasan_report+0x118/0x150
 xfrm_alloc_spi+0x570/0xf30
 xfrm_alloc_userspi+0x70b/0xc90
 xfrm_user_rcv_msg+0x7a3/0xab0
 netlink_rcv_skb+0x208/0x470
 xfrm_netlink_rcv+0x79/0x90
 netlink_unicast+0x82f/0x9e0
 netlink_sendmsg+0x805/0xb30
 __sock_sendmsg+0x21c/0x270
 ____sys_sendmsg+0x505/0x830
 ___sys_sendmsg+0x21f/0x2a0
 __x64_sys_sendmsg+0x19b/0x260
 do_syscall_64+0xfa/0x3b0
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f7871d8ebe9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f7872b6b038 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 00007f7871fc5fa0 RCX: 00007f7871d8ebe9
RDX: 0000000000000000 RSI: 0000200000000540 RDI: 0000000000000004
RBP: 00007f7871e11e19 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f7871fc6038 R14: 00007f7871fc5fa0 R15: 00007fff7e2d5368
 </TASK>

Allocated by task 18361:
 kasan_save_track+0x3e/0x80
 __kasan_kmalloc+0x93/0xb0
 __kmalloc_cache_noprof+0x230/0x3d0
 kobject_uevent_env+0x27c/0x8c0
 device_add+0x557/0xb50
 netdev_register_kobject+0x178/0x310
 register_netdevice+0x126c/0x1ae0
 tun_set_iff+0x844/0xef0
 __tun_chr_ioctl+0x788/0x1df0
 __se_sys_ioctl+0xfc/0x170
 do_syscall_64+0xfa/0x3b0
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Freed by task 18361:
 kasan_save_track+0x3e/0x80
 kasan_save_free_info+0x46/0x50
 __kasan_slab_free+0x5b/0x80
 kfree+0x18e/0x440
 kobject_uevent_env+0x36b/0x8c0
 device_add+0x557/0xb50
 netdev_register_kobject+0x178/0x310
 register_netdevice+0x126c/0x1ae0
 tun_set_iff+0x844/0xef0
 __tun_chr_ioctl+0x788/0x1df0
 __se_sys_ioctl+0xfc/0x170
 do_syscall_64+0xfa/0x3b0
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

The buggy address belongs to the object at ffff8881108f4000
 which belongs to the cache kmalloc-4k of size 4096
The buggy address is located 1860 bytes to the right of
 allocated 4096-byte region [ffff8881108f4000, ffff8881108f5000)

The buggy address belongs to the physical page:
page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1108f0
head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
flags: 0x57ff00000000040(head|node=1|zone=2|lastcpupid=0x7ff)
page_type: f5(slab)
raw: 057ff00000000040 ffff88801a442140 dead000000000122 0000000000000000
raw: 0000000000000000 0000000000040004 00000000f5000000 0000000000000000
head: 057ff00000000040 ffff88801a442140 dead000000000122 0000000000000000
head: 0000000000000000 0000000000040004 00000000f5000000 0000000000000000
head: 057ff00000000003 ffffea0004423c01 00000000ffffffff 00000000ffffffff
head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000008
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 3, migratetype Unmovable, gfp_mask 0xd20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 18361, tgid 18359 (syz.4.3893), ts 270557970159, free_ts 270551829424
 post_alloc_hook+0x240/0x2a0
 get_page_from_freelist+0x21e4/0x22c0
 __alloc_frozen_pages_noprof+0x181/0x370
 alloc_pages_mpol+0x232/0x4a0
 allocate_slab+0x8a/0x370
 ___slab_alloc+0xbeb/0x1410
 __kmalloc_noprof+0x305/0x4f0
 sk_prot_alloc+0xe7/0x220
 sk_alloc+0x3a/0x370
 tun_chr_open+0x7a/0x510
 misc_open+0x2bc/0x330
 chrdev_open+0x4cc/0x5e0
 do_dentry_open+0x953/0x13f0
 vfs_open+0x3b/0x340
 path_openat+0x2ee5/0x3830
 do_filp_open+0x1fa/0x410
page last free pid 18360 tgid 18358 stack trace:
 __free_frozen_pages+0xbc4/0xd30
 free_large_kmalloc+0x13a/0x1f0
 bpf_check+0x16552/0x1d2d0
 bpf_prog_load+0x1318/0x1930
 __sys_bpf+0x528/0x870
 __x64_sys_bpf+0x7c/0x90
 do_syscall_64+0xfa/0x3b0
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Memory state around the buggy address:
 ffff8881108f5600: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff8881108f5680: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>ffff8881108f5700: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
                                           ^
 ffff8881108f5780: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff8881108f5800: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
==================================================================
