mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
fuse: use atomic64_t for khctr
...to get rid of one more fc->lock use. Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
This commit is contained in:
parent
eb98e3bdf3
commit
75126f5504
3 changed files with 3 additions and 5 deletions
|
@ -64,9 +64,7 @@ struct fuse_file *fuse_file_alloc(struct fuse_conn *fc)
|
|||
RB_CLEAR_NODE(&ff->polled_node);
|
||||
init_waitqueue_head(&ff->poll_wait);
|
||||
|
||||
spin_lock(&fc->lock);
|
||||
ff->kh = ++fc->khctr;
|
||||
spin_unlock(&fc->lock);
|
||||
ff->kh = atomic64_inc_return(&fc->khctr);
|
||||
|
||||
return ff;
|
||||
}
|
||||
|
|
|
@ -544,7 +544,7 @@ struct fuse_conn {
|
|||
struct fuse_iqueue iq;
|
||||
|
||||
/** The next unique kernel file handle */
|
||||
u64 khctr;
|
||||
atomic64_t khctr;
|
||||
|
||||
/** rbtree of fuse_files waiting for poll events indexed by ph */
|
||||
struct rb_root polled_files;
|
||||
|
|
|
@ -622,7 +622,7 @@ void fuse_conn_init(struct fuse_conn *fc, struct user_namespace *user_ns)
|
|||
atomic_set(&fc->num_waiting, 0);
|
||||
fc->max_background = FUSE_DEFAULT_MAX_BACKGROUND;
|
||||
fc->congestion_threshold = FUSE_DEFAULT_CONGESTION_THRESHOLD;
|
||||
fc->khctr = 0;
|
||||
atomic64_set(&fc->khctr, 0);
|
||||
fc->polled_files = RB_ROOT;
|
||||
fc->blocked = 0;
|
||||
fc->initialized = 0;
|
||||
|
|
Loading…
Reference in a new issue