summaryrefslogtreecommitdiffstats
path: root/include/net/9p
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2022-07-03 21:02:49 -0400
committerDominique Martinet <dominique.martinet@atmark-techno.com>2022-07-09 14:38:12 +0900
commit6cda12864cb0f99810a5809e11e3ee5b102c9a47 (patch)
tree6de8ed379115b8458e7e298205223777a384fe39 /include/net/9p
parente3baced02a521a6f213b29053db76394aa22d5e1 (diff)
downloadlinux-6cda12864cb0f99810a5809e11e3ee5b102c9a47.tar.bz2
9p: Drop kref usage
An upcoming patch is going to require passing the client through p9_req_put() -> p9_req_free(), but that's awkward with the kref indirection - so this patch switches to using refcount_t directly. Link: https://lkml.kernel.org/r/20220704014243.153050-1-kent.overstreet@gmail.com Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> Cc: Eric Van Hensbergen <ericvh@gmail.com> Cc: Latchesar Ionkov <lucho@ionkov.net> Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Diffstat (limited to 'include/net/9p')
-rw-r--r--include/net/9p/client.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/include/net/9p/client.h b/include/net/9p/client.h
index 8f629f1df865..ad38325aaef0 100644
--- a/include/net/9p/client.h
+++ b/include/net/9p/client.h
@@ -77,7 +77,7 @@ enum p9_req_status_t {
struct p9_req_t {
int status;
int t_err;
- struct kref refcount;
+ refcount_t refcount;
wait_queue_head_t wq;
struct p9_fcall tc;
struct p9_fcall rc;
@@ -228,12 +228,12 @@ struct p9_req_t *p9_tag_lookup(struct p9_client *c, u16 tag);
static inline void p9_req_get(struct p9_req_t *r)
{
- kref_get(&r->refcount);
+ refcount_inc(&r->refcount);
}
static inline int p9_req_try_get(struct p9_req_t *r)
{
- return kref_get_unless_zero(&r->refcount);
+ return refcount_inc_not_zero(&r->refcount);
}
int p9_req_put(struct p9_req_t *r);