• Myungho Jung's avatar
    net/smc: fix TCP fallback socket release · 78abe3d0
    Myungho Jung authored
    clcsock can be released while kernel_accept() references it in TCP
    listen worker. Also, clcsock needs to wake up before released if TCP
    fallback is used and the clcsock is blocked by accept. Add a lock to
    safely release clcsock and call kernel_sock_shutdown() to wake up
    clcsock from accept in smc_release().
    
    Reported-by: syzbot+0bf2e01269f1274b4b03@syzkaller.appspotmail.com
    Reported-by: syzbot+e3132895630f957306bc@syzkaller.appspotmail.com
    Signed-off-by: default avatarMyungho Jung <mhjungk@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    78abe3d0
af_smc.c 50.5 KB