summaryrefslogtreecommitdiffstats
path: root/drivers/ipack
diff options
context:
space:
mode:
authorWen Gu <guwen@linux.alibaba.com>2022-02-09 22:10:53 +0800
committerDavid S. Miller <davem@davemloft.net>2022-02-11 11:10:29 +0000
commit1de9770d121ee9294794cca0e0be8fbfa0134ee8 (patch)
tree77ff12066badf957f909524b081bd2ad37c292e1 /drivers/ipack
parentf1baf68e1383f6ed93eb9cff2866d46562607a43 (diff)
downloadlinux-1de9770d121ee9294794cca0e0be8fbfa0134ee8.tar.bz2
net/smc: Avoid overwriting the copies of clcsock callback functions
The callback functions of clcsock will be saved and replaced during the fallback. But if the fallback happens more than once, then the copies of these callback functions will be overwritten incorrectly, resulting in a loop call issue: clcsk->sk_error_report |- smc_fback_error_report() <------------------------------| |- smc_fback_forward_wakeup() | (loop) |- clcsock_callback() (incorrectly overwritten) | |- smc->clcsk_error_report() ------------------| So this patch fixes the issue by saving these function pointers only once in the fallback and avoiding overwriting. Reported-by: syzbot+4de3c0e8a263e1e499bc@syzkaller.appspotmail.com Fixes: 341adeec9ada ("net/smc: Forward wakeup to smc socket waitqueue after fallback") Link: https://lore.kernel.org/r/0000000000006d045e05d78776f6@google.com Signed-off-by: Wen Gu <guwen@linux.alibaba.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/ipack')
0 files changed, 0 insertions, 0 deletions