diff options
author | Cong Wang <cong.wang@bytedance.com> | 2022-08-27 21:13:14 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-08-31 22:16:44 +0300 |
commit | 8fc29ff3910f3af08a7c40a75d436b5720efe2bf (patch) | |
tree | 409d5928e30e5d2a1f9a108fab74588c1e07afe8 /Documentation | |
parent | 3a1a274e933fca73fdc960cb1f60636cd285a265 (diff) | |
download | linux-8fc29ff3910f3af08a7c40a75d436b5720efe2bf.tar.xz |
kcm: fix strp_init() order and cleanup
strp_init() is called just a few lines above this csk->sk_user_data
check, it also initializes strp->work etc., therefore, it is
unnecessary to call strp_done() to cancel the freshly initialized
work.
And if sk_user_data is already used by KCM, psock->strp should not be
touched, particularly strp->work state, so we need to move strp_init()
after the csk->sk_user_data check.
This also makes a lockdep warning reported by syzbot go away.
Reported-and-tested-by: syzbot+9fc084a4348493ef65d2@syzkaller.appspotmail.com
Reported-by: syzbot+e696806ef96cdd2d87cd@syzkaller.appspotmail.com
Fixes: e5571240236c ("kcm: Check if sk_user_data already set in kcm_attach")
Fixes: dff8baa26117 ("kcm: Call strp_stop before strp_done in kcm_attach")
Cc: Tom Herbert <tom@herbertland.com>
Signed-off-by: Cong Wang <cong.wang@bytedance.com>
Link: https://lore.kernel.org/r/20220827181314.193710-1-xiyou.wangcong@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'Documentation')
0 files changed, 0 insertions, 0 deletions