[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20250730140500.2078687-1-colin.i.king@gmail.com>
Date: Wed, 30 Jul 2025 15:05:00 +0100
From: Colin Ian King <colin.i.king@...il.com>
To: David Howells <dhowells@...hat.com>,
Marc Dionne <marc.dionne@...istor.com>,
linux-afs@...ts.infradead.org
Cc: kernel-janitors@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH][next] afs: Fix dereference of pointer 'server' before it is null checked
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@...il.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
Powered by blists - more mailing lists