mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
fs: Convert nr_inodes and nr_unused to per-cpu counters
The number of inodes allocated does not need to be tied to the addition or removal of an inode to/from a list. If we are not tied to a list lock, we could update the counters when inodes are initialised or destroyed, but to do that we need to convert the counters to be per-cpu (i.e. independent of a lock). This means that we have the freedom to change the list/locking implementation without needing to care about the counters. Based on a patch originally from Eric Dumazet. [AV: cleaned up a bit, fixed build breakage on weird configs Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
be1a16a0ae
commit
cffbc8aa33
5 changed files with 52 additions and 25 deletions
|
@ -1340,14 +1340,14 @@ static struct ctl_table fs_table[] = {
|
|||
.data = &inodes_stat,
|
||||
.maxlen = 2*sizeof(int),
|
||||
.mode = 0444,
|
||||
.proc_handler = proc_dointvec,
|
||||
.proc_handler = proc_nr_inodes,
|
||||
},
|
||||
{
|
||||
.procname = "inode-state",
|
||||
.data = &inodes_stat,
|
||||
.maxlen = 7*sizeof(int),
|
||||
.mode = 0444,
|
||||
.proc_handler = proc_dointvec,
|
||||
.proc_handler = proc_nr_inodes,
|
||||
},
|
||||
{
|
||||
.procname = "file-nr",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue