mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 08:43:31 +00:00
cifs: fix use after free for iface while disabling secondary channels
We were deferencing iface after it has been released. Fix is to release after all dereference instances have been encountered. Signed-off-by: Ritvik Budhiraja <rbudhiraja@microsoft.com> Reported-by: kernel test robot <lkp@intel.com> Reported-by: Dan Carpenter <error27@gmail.com> Closes: https://lore.kernel.org/r/202311110815.UJaeU3Tt-lkp@intel.com/ Signed-off-by: Steve French <stfrench@microsoft.com>
This commit is contained in:
parent
98b1cc82c4
commit
a15ccef82d
1 changed files with 1 additions and 1 deletions
|
@ -332,10 +332,10 @@ cifs_disable_secondary_channels(struct cifs_ses *ses)
|
|||
|
||||
if (iface) {
|
||||
spin_lock(&ses->iface_lock);
|
||||
kref_put(&iface->refcount, release_iface);
|
||||
iface->num_channels--;
|
||||
if (iface->weight_fulfilled)
|
||||
iface->weight_fulfilled--;
|
||||
kref_put(&iface->refcount, release_iface);
|
||||
spin_unlock(&ses->iface_lock);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue