Subject: Re: [syzbot] WARNING: refcount bug in qrtr_node_lookup

From: syzbot <[email-masked]>
Date: Wed, 01 Sep 2021 19:32:06 -0700

Hello,

syzbot has tested the proposed patch but the reproducer is still triggering an issue:
UBSAN: object-size-mismatch in send4

================================================================================
UBSAN: object-size-mismatch in ./include/net/flow.h:197:33
member access within address 000000001597b753 with insufficient space
for an object of type 'struct flowi'
CPU: 1 PID: 231 Comm: kworker/u4:4 Not tainted 5.14.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: wg-kex-wg0 wg_packet_handshake_send_worker
Call Trace:
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x15e/0x1d3 lib/dump_stack.c:105
 ubsan_epilogue lib/ubsan.c:148 [inline]
 handle_object_size_mismatch lib/ubsan.c:229 [inline]
 ubsan_type_mismatch_common+0x1de/0x390 lib/ubsan.c:242
 __ubsan_handle_type_mismatch_v1+0x41/0x50 lib/ubsan.c:271
 flowi4_to_flowi_common include/net/flow.h:197 [inline]
 send4+0x39b/0xdd0 drivers/net/wireguard/socket.c:52
 wg_socket_send_skb_to_peer+0xc7/0x200 drivers/net/wireguard/socket.c:174
 wg_packet_send_handshake_initiation drivers/net/wireguard/send.c:40 [inline]
 wg_packet_handshake_send_worker+0x14a/0x190 drivers/net/wireguard/send.c:51
 process_one_work+0x471/0x840 kernel/workqueue.c:2276
 worker_thread+0x686/0x9e0 kernel/workqueue.c:2422
 kthread+0x3ca/0x3f0 kernel/kthread.c:319
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
================================================================================
================================================================================
UBSAN: object-size-mismatch in ./include/net/flow.h:197:33
member access within address 000000001597b753 with insufficient space
for an object of type 'union (anonymous union at ./include/net/flow.h:172:2)'
CPU: 1 PID: 231 Comm: kworker/u4:4 Not tainted 5.14.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: wg-kex-wg0 wg_packet_handshake_send_worker
Call Trace:
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x15e/0x1d3 lib/dump_stack.c:105
 ubsan_epilogue lib/ubsan.c:148 [inline]
 handle_object_size_mismatch lib/ubsan.c:229 [inline]
 ubsan_type_mismatch_common+0x1de/0x390 lib/ubsan.c:242
 __ubsan_handle_type_mismatch_v1+0x41/0x50 lib/ubsan.c:271
 flowi4_to_flowi_common include/net/flow.h:197 [inline]
 send4+0x3aa/0xdd0 drivers/net/wireguard/socket.c:52
 wg_socket_send_skb_to_peer+0xc7/0x200 drivers/net/wireguard/socket.c:174
 wg_packet_send_handshake_initiation drivers/net/wireguard/send.c:40 [inline]
 wg_packet_handshake_send_worker+0x14a/0x190 drivers/net/wireguard/send.c:51
 process_one_work+0x471/0x840 kernel/workqueue.c:2276
 worker_thread+0x686/0x9e0 kernel/workqueue.c:2422
 kthread+0x3ca/0x3f0 kernel/kthread.c:319
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
================================================================================

Tested on:

commit:         b91db6a0 Merge tag 'for-5.15/io_uring-vfs-2021-08-30' ..
git tree:       git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
console output: https://syzkaller.appspot.com/x/log.txt?x=11740133300000
kernel config:  https://syzkaller.appspot.com/x/.config?x=7d1b73d0f1d597e4
dashboard link: https://syzkaller.appspot.com/bug?extid=c613e88b3093ebf3686e
compiler:       Debian clang version 11.0.1-2, GNU ld (GNU Binutils for Debian) 2.35.1
patch:          https://syzkaller.appspot.com/x/patch.diff?x=13a44435300000