diff options
author | Christoph Lameter <cl@linux-foundation.org> | 2009-10-03 19:48:23 +0900 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-10-03 19:48:23 +0900 |
commit | 7a9e02d6bb05b268dc403d7ee87ce4198062f838 (patch) | |
tree | f38920e87e9d908c19e881ccbf549ae4035f9724 /fs/xfs | |
parent | e7dcaa4755e35d7540bf19f316f8798357c53fa0 (diff) | |
download | op-kernel-dev-7a9e02d6bb05b268dc403d7ee87ce4198062f838.zip op-kernel-dev-7a9e02d6bb05b268dc403d7ee87ce4198062f838.tar.gz |
this_cpu: xfs_icsb_modify_counters does not need "cpu" variable
The xfs_icsb_modify_counters() function no longer needs the cpu variable
if we use this_cpu_ptr() and we can get rid of get/put_cpu().
Acked-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Olaf Weber <olaf@sgi.com>
Signed-off-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'fs/xfs')
-rw-r--r-- | fs/xfs/xfs_mount.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c index 8b6c9e8..ccafe8e 100644 --- a/fs/xfs/xfs_mount.c +++ b/fs/xfs/xfs_mount.c @@ -2389,12 +2389,12 @@ xfs_icsb_modify_counters( { xfs_icsb_cnts_t *icsbp; long long lcounter; /* long counter for 64 bit fields */ - int cpu, ret = 0; + int ret = 0; might_sleep(); again: - cpu = get_cpu(); - icsbp = (xfs_icsb_cnts_t *)per_cpu_ptr(mp->m_sb_cnts, cpu); + preempt_disable(); + icsbp = this_cpu_ptr(mp->m_sb_cnts); /* * if the counter is disabled, go to slow path @@ -2438,11 +2438,11 @@ again: break; } xfs_icsb_unlock_cntr(icsbp); - put_cpu(); + preempt_enable(); return 0; slow_path: - put_cpu(); + preempt_enable(); /* * serialise with a mutex so we don't burn lots of cpu on @@ -2490,7 +2490,7 @@ slow_path: balance_counter: xfs_icsb_unlock_cntr(icsbp); - put_cpu(); + preempt_enable(); /* * We may have multiple threads here if multiple per-cpu |