summaryrefslogtreecommitdiffstats
path: root/fs/afs/internal.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2023-10-19 13:59:03 +0100
committerDavid Howells <dhowells@redhat.com>2023-12-24 15:22:54 +0000
commit1e5d8493254db9b28d4dce4fed87e56d9a2fefa5 (patch)
treec71eb5dae008ff932f61ac13d3071c3353ba858c /fs/afs/internal.h
parentaa453becce5d1ae1b94b7fc22f47d7b05d22b14e (diff)
downloadlinux-stable-1e5d8493254db9b28d4dce4fed87e56d9a2fefa5.tar.gz
linux-stable-1e5d8493254db9b28d4dce4fed87e56d9a2fefa5.tar.bz2
linux-stable-1e5d8493254db9b28d4dce4fed87e56d9a2fefa5.zip
afs: Add a tracepoint for struct afs_addr_list
Add a tracepoint to track the lifetime of the afs_addr_list struct. Signed-off-by: David Howells <dhowells@redhat.com> cc: Marc Dionne <marc.dionne@auristor.com> cc: linux-afs@lists.infradead.org
Diffstat (limited to 'fs/afs/internal.h')
-rw-r--r--fs/afs/internal.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/fs/afs/internal.h b/fs/afs/internal.h
index d67c75d4d2bd..d00fda99f401 100644
--- a/fs/afs/internal.h
+++ b/fs/afs/internal.h
@@ -85,6 +85,7 @@ struct afs_addr_list {
struct rcu_head rcu;
refcount_t usage;
u32 version; /* Version */
+ unsigned int debug_id;
unsigned char max_addrs;
unsigned char nr_addrs;
unsigned char preferred; /* Preferred address */
@@ -969,14 +970,9 @@ static inline bool afs_is_folio_dirty_mmapped(unsigned long priv)
/*
* addr_list.c
*/
-static inline struct afs_addr_list *afs_get_addrlist(struct afs_addr_list *alist)
-{
- if (alist)
- refcount_inc(&alist->usage);
- return alist;
-}
+struct afs_addr_list *afs_get_addrlist(struct afs_addr_list *alist, enum afs_alist_trace reason);
extern struct afs_addr_list *afs_alloc_addrlist(unsigned int nr, u16 service_id);
-extern void afs_put_addrlist(struct afs_addr_list *);
+extern void afs_put_addrlist(struct afs_addr_list *alist, enum afs_alist_trace reason);
extern struct afs_vlserver_list *afs_parse_text_addrs(struct afs_net *,
const char *, size_t, char,
unsigned short, unsigned short);