bisecting fixing commit since 6b6446efedb27c2766745a04f9b5d4449f51391d building syzkaller on cba33199be220cbf61f7c0c8223d88a25a913d6f testing commit 6b6446efedb27c2766745a04f9b5d4449f51391d with gcc (GCC) 8.1.0 kernel signature: 3fbabb32e9a57f1575d8d1896cee8afd2aee74f5b497f14501af9bac553607d5 run #0: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #1: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #2: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #3: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #4: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #5: crashed: KASAN: invalid-free in ieee80211_ibss_leave run #6: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #7: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #8: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp run #9: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp testing current HEAD 47cbf4cc32db62f053c4cd04fc6ee39a0218139e testing commit 47cbf4cc32db62f053c4cd04fc6ee39a0218139e with gcc (GCC) 8.1.0 kernel signature: 0339d9d014b766c8c014a44967d3b503bf9918e8d3325de1bc477783323b09d5 all runs: crashed: KASAN: use-after-free Read in ieee80211_ibss_build_presp revisions tested: 2, total time: 28m0.23623627s (build: 21m39.946959395s, test: 5m43.833530012s) the crash still happens on HEAD commit msg: Linux 4.14.211 crash: KASAN: use-after-free Read in ieee80211_ibss_build_presp wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 ================================================================== BUG: KASAN: use-after-free in memcpy include/linux/string.h:372 [inline] BUG: KASAN: use-after-free in ieee80211_ibss_build_presp+0xc81/0x1a70 net/mac80211/ibss.c:173 Read of size 4 at addr ffff8881ef0dc600 by task kworker/u4:1/22 CPU: 0 PID: 22 Comm: kworker/u4:1 Not tainted 4.14.211-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: phy4 ieee80211_iface_work Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x14b/0x1f1 lib/dump_stack.c:58 print_address_description.cold.6+0x9/0x1ca mm/kasan/report.c:252 kasan_report_error mm/kasan/report.c:351 [inline] kasan_report.cold.7+0x11a/0x2d4 mm/kasan/report.c:409 check_memory_region_inline mm/kasan/kasan.c:260 [inline] check_memory_region+0x13c/0x1b0 mm/kasan/kasan.c:267 memcpy+0x23/0x50 mm/kasan/kasan.c:302 memcpy include/linux/string.h:372 [inline] ieee80211_ibss_build_presp+0xc81/0x1a70 net/mac80211/ibss.c:173 wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 __ieee80211_sta_join_ibss+0x5f1/0x1b80 net/mac80211/ibss.c:319 ieee80211_sta_create_ibss.cold.7+0xab/0x119 net/mac80211/ibss.c:1346 ieee80211_sta_find_ibss net/mac80211/ibss.c:1476 [inline] ieee80211_ibss_work.cold.11+0x25b/0x4d5 net/mac80211/ibss.c:1700 ieee80211_iface_work+0x4a6/0x690 net/mac80211/iface.c:1383 process_one_work+0x74f/0x1620 kernel/workqueue.c:2116 worker_thread+0xcc/0xed0 kernel/workqueue.c:2250 kthread+0x338/0x400 kernel/kthread.c:232 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 Allocated by task 9358: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc.part.1+0x62/0xf0 mm/kasan/kasan.c:551 kasan_kmalloc+0xaf/0xc0 mm/kasan/kasan.c:536 __do_kmalloc mm/slab.c:3720 [inline] __kmalloc_track_caller+0x159/0x410 mm/slab.c:3735 kmemdup+0x1d/0x40 mm/util.c:118 kmemdup include/linux/string.h:445 [inline] ieee80211_ibss_join+0x74d/0xda0 net/mac80211/ibss.c:1812 ieee80211_join_ibss+0x13/0x20 net/mac80211/cfg.c:2247 rdev_join_ibss net/wireless/rdev-ops.h:521 [inline] __cfg80211_join_ibss+0x553/0xc80 net/wireless/ibss.c:132 cfg80211_join_ibss+0x6b/0x90 net/wireless/ibss.c:155 nl80211_join_ibss+0xb02/0x1010 net/wireless/nl80211.c:8626 genl_family_rcv_msg+0x57f/0xfe0 net/netlink/genetlink.c:600 genl_rcv_msg+0xa7/0x140 net/netlink/genetlink.c:625 netlink_rcv_skb+0x12f/0x3b0 net/netlink/af_netlink.c:2433 genl_rcv+0x23/0x40 net/netlink/genetlink.c:636 netlink_unicast_kernel net/netlink/af_netlink.c:1287 [inline] netlink_unicast+0x40b/0x610 net/netlink/af_netlink.c:1313 netlink_sendmsg+0x657/0xc60 net/netlink/af_netlink.c:1878 sock_sendmsg_nosec net/socket.c:646 [inline] sock_sendmsg+0xac/0xf0 net/socket.c:656 ___sys_sendmsg+0x625/0x920 net/socket.c:2062 __sys_sendmsg+0xc1/0x140 net/socket.c:2096 SYSC_sendmsg net/socket.c:2107 [inline] SyS_sendmsg+0xd/0x20 net/socket.c:2103 do_syscall_64+0x1c7/0x5b0 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x46/0xbb Freed by task 9386: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0xab/0x190 mm/kasan/kasan.c:524 wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 __cache_free mm/slab.c:3496 [inline] kfree+0xcc/0x270 mm/slab.c:3815 ieee80211_ibss_leave+0x80/0xd7 net/mac80211/ibss.c:1863 ieee80211_leave_ibss+0x10/0x20 net/mac80211/cfg.c:2252 rdev_leave_ibss net/wireless/rdev-ops.h:531 [inline] __cfg80211_leave_ibss+0x132/0x5e0 net/wireless/ibss.c:217 cfg80211_leave_ibss+0x57/0x80 net/wireless/ibss.c:234 cfg80211_change_iface+0x8bb/0x1160 net/wireless/util.c:1028 nl80211_set_interface+0x443/0x840 net/wireless/nl80211.c:2929 genl_family_rcv_msg+0x57f/0xfe0 net/netlink/genetlink.c:600 genl_rcv_msg+0xa7/0x140 net/netlink/genetlink.c:625 netlink_rcv_skb+0x12f/0x3b0 net/netlink/af_netlink.c:2433 genl_rcv+0x23/0x40 net/netlink/genetlink.c:636 netlink_unicast_kernel net/netlink/af_netlink.c:1287 [inline] netlink_unicast+0x40b/0x610 net/netlink/af_netlink.c:1313 netlink_sendmsg+0x657/0xc60 net/netlink/af_netlink.c:1878 sock_sendmsg_nosec net/socket.c:646 [inline] sock_sendmsg+0xac/0xf0 net/socket.c:656 ___sys_sendmsg+0x625/0x920 net/socket.c:2062 __sys_sendmsg+0xc1/0x140 net/socket.c:2096 SYSC_sendmsg net/socket.c:2107 [inline] SyS_sendmsg+0xd/0x20 net/socket.c:2103 do_syscall_64+0x1c7/0x5b0 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x46/0xbb The buggy address belongs to the object at ffff8881ef0dc600 which belongs to the cache kmalloc-32 of size 32 The buggy address is located 0 bytes inside of 32-byte region [ffff8881ef0dc600, ffff8881ef0dc620) The buggy address belongs to the page: page:ffffea0007bc3700 count:1 mapcount:0 mapping:ffff8881ef0dc000 index:0xffff8881ef0dcfc1 flags: 0x17ff00000000100(slab) raw: 017ff00000000100 ffff8881ef0dc000 ffff8881ef0dcfc1 000000010000003f raw: ffffea0007c8f4a0 ffffea0007c8d660 ffff8881f60001c0 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8881ef0dc500: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc ffff8881ef0dc580: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc >ffff8881ef0dc600: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc ^ ffff8881ef0dc680: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc ffff8881ef0dc700: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc ==================================================================