linux_dsm_epyc7002/fs/afs
David Howells 9efcc4a129 afs: Fix unpinned address list during probing
When it's probing all of a fileserver's interfaces to find which one is
best to use, afs_do_probe_fileserver() takes a lock on the server record
and notes the pointer to the address list.

It doesn't, however, pin the address list, so as soon as it drops the
lock, there's nothing to stop the address list from being freed under
us.

Fix this by taking a ref on the address list inside the locked section
and dropping it at the end of the function.

Fixes: 3bf0fb6f33 ("afs: Probe multiple fileservers simultaneously")
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Marc Dionne <marc.dionne@auristor.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-03-26 16:04:29 -07:00
..
addr_list.c afs: Use kfree_rcu() instead of casting kfree() to rcu_callback_t 2020-03-13 10:47:33 -07:00
afs_cm.h
afs_fs.h
afs_vl.h
afs.h
cache.c
callback.c
cell.c
cmservice.c afs: Fix handling of an abort from a service handler 2020-03-13 23:04:35 +00:00
dir_edit.c
dir_silly.c
dir.c
dynroot.c
file.c
flock.c
fs_probe.c afs: Fix unpinned address list during probing 2020-03-26 16:04:29 -07:00
fsclient.c
inode.c
internal.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-03-25 13:58:05 -07:00
Kconfig
main.c
Makefile
misc.c
mntpt.c
proc.c
protocol_uae.h
protocol_yfs.h
rotate.c
rxrpc.c afs: Fix client call Rx-phase signal handling 2020-03-13 23:04:35 +00:00
security.c
server_list.c
server.c
super.c fs_parse: fold fs_parameter_desc/fs_parameter_spec 2020-02-07 14:48:37 -05:00
vl_list.c
vl_probe.c
vl_rotate.c
vlclient.c
volume.c
write.c
xattr.c
xdr_fs.h
yfsclient.c