mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 08:04:49 +01:00
fuse: refactor fuse_conn_put() to remove negative logic.
There is no functional change with this patch. It simply refactors function fuse_conn_put() to not use negative logic, which makes it more easier to read. Signed-off-by: Luis Henriques <luis@igalia.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
This commit is contained in:
parent
64becd224f
commit
b4909ae8d4
1 changed files with 20 additions and 19 deletions
|
|
@ -1022,27 +1022,28 @@ static void delayed_release(struct rcu_head *p)
|
|||
|
||||
void fuse_conn_put(struct fuse_conn *fc)
|
||||
{
|
||||
if (refcount_dec_and_test(&fc->count)) {
|
||||
struct fuse_iqueue *fiq = &fc->iq;
|
||||
struct fuse_sync_bucket *bucket;
|
||||
struct fuse_iqueue *fiq = &fc->iq;
|
||||
struct fuse_sync_bucket *bucket;
|
||||
|
||||
if (IS_ENABLED(CONFIG_FUSE_DAX))
|
||||
fuse_dax_conn_free(fc);
|
||||
if (fc->timeout.req_timeout)
|
||||
cancel_delayed_work_sync(&fc->timeout.work);
|
||||
cancel_work_sync(&fc->epoch_work);
|
||||
if (fiq->ops->release)
|
||||
fiq->ops->release(fiq);
|
||||
put_pid_ns(fc->pid_ns);
|
||||
bucket = rcu_dereference_protected(fc->curr_bucket, 1);
|
||||
if (bucket) {
|
||||
WARN_ON(atomic_read(&bucket->count) != 1);
|
||||
kfree(bucket);
|
||||
}
|
||||
if (IS_ENABLED(CONFIG_FUSE_PASSTHROUGH))
|
||||
fuse_backing_files_free(fc);
|
||||
call_rcu(&fc->rcu, delayed_release);
|
||||
if (!refcount_dec_and_test(&fc->count))
|
||||
return;
|
||||
|
||||
if (IS_ENABLED(CONFIG_FUSE_DAX))
|
||||
fuse_dax_conn_free(fc);
|
||||
if (fc->timeout.req_timeout)
|
||||
cancel_delayed_work_sync(&fc->timeout.work);
|
||||
cancel_work_sync(&fc->epoch_work);
|
||||
if (fiq->ops->release)
|
||||
fiq->ops->release(fiq);
|
||||
put_pid_ns(fc->pid_ns);
|
||||
bucket = rcu_dereference_protected(fc->curr_bucket, 1);
|
||||
if (bucket) {
|
||||
WARN_ON(atomic_read(&bucket->count) != 1);
|
||||
kfree(bucket);
|
||||
}
|
||||
if (IS_ENABLED(CONFIG_FUSE_PASSTHROUGH))
|
||||
fuse_backing_files_free(fc);
|
||||
call_rcu(&fc->rcu, delayed_release);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(fuse_conn_put);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue