@@ -341,7 +341,7 @@ struct p9_req_t *p9_tag_lookup(struct p9_client *c, u16 tag)
341341 if (!p9_req_try_get (req ))
342342 goto again ;
343343 if (req -> tc .tag != tag ) {
344- p9_req_put (req );
344+ p9_req_put (c , req );
345345 goto again ;
346346 }
347347 }
@@ -367,10 +367,10 @@ static int p9_tag_remove(struct p9_client *c, struct p9_req_t *r)
367367 spin_lock_irqsave (& c -> lock , flags );
368368 idr_remove (& c -> reqs , tag );
369369 spin_unlock_irqrestore (& c -> lock , flags );
370- return p9_req_put (r );
370+ return p9_req_put (c , r );
371371}
372372
373- int p9_req_put (struct p9_req_t * r )
373+ int p9_req_put (struct p9_client * c , struct p9_req_t * r )
374374{
375375 if (refcount_dec_and_test (& r -> refcount )) {
376376 p9_fcall_fini (& r -> tc );
@@ -423,7 +423,7 @@ void p9_client_cb(struct p9_client *c, struct p9_req_t *req, int status)
423423
424424 wake_up (& req -> wq );
425425 p9_debug (P9_DEBUG_MUX , "wakeup: %d\n" , req -> tc .tag );
426- p9_req_put (req );
426+ p9_req_put (c , req );
427427}
428428EXPORT_SYMBOL (p9_client_cb );
429429
@@ -706,7 +706,7 @@ static struct p9_req_t *p9_client_prepare_req(struct p9_client *c,
706706reterr :
707707 p9_tag_remove (c , req );
708708 /* We have to put also the 2nd reference as it won't be used */
709- p9_req_put (req );
709+ p9_req_put (c , req );
710710 return ERR_PTR (err );
711711}
712712
@@ -743,7 +743,7 @@ p9_client_rpc(struct p9_client *c, int8_t type, const char *fmt, ...)
743743 err = c -> trans_mod -> request (c , req );
744744 if (err < 0 ) {
745745 /* write won't happen */
746- p9_req_put (req );
746+ p9_req_put (c , req );
747747 if (err != - ERESTARTSYS && err != - EFAULT )
748748 c -> status = Disconnected ;
749749 goto recalc_sigpending ;
0 commit comments