[PATCH][next] afs: Fix dereference of pointer 'server' before it is null checked

Colin Ian King posted 1 patch 2 months, 1 week ago
fs/afs/server.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH][next] afs: Fix dereference of pointer 'server' before it is null checked
Posted by Colin Ian King 2 months, 1 week ago
Currently the pointer 'server' is being dereferenced before it is being
null checked, leading to a potential null dereference issue. Fix this
by dereferencing it after it is null checked.

Fixes: 2757a4dc1849 ("afs: Fix access after dec in put functions")
Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
---
 fs/afs/server.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/afs/server.c b/fs/afs/server.c
index a97562f831eb..c4428ebddb1d 100644
--- a/fs/afs/server.c
+++ b/fs/afs/server.c
@@ -331,13 +331,14 @@ struct afs_server *afs_use_server(struct afs_server *server, bool activate,
 void afs_put_server(struct afs_net *net, struct afs_server *server,
 		    enum afs_server_trace reason)
 {
-	unsigned int a, debug_id = server->debug_id;
+	unsigned int a, debug_id;
 	bool zero;
 	int r;
 
 	if (!server)
 		return;
 
+	debug_id = server->debug_id;
 	a = atomic_read(&server->active);
 	zero = __refcount_dec_and_test(&server->ref, &r);
 	trace_afs_server(debug_id, r - 1, a, reason);
-- 
2.50.0