diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2011-07-30 10:32:48 -0400 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2011-09-29 00:38:32 -0400 |
commit | 7eb4f4553ceaa6c64da83c8a71d5a991c0188655 (patch) | |
tree | 308ce033d4c449effc3d6b99eb0adf8857357124 /kernel/rcutree.c | |
parent | 717f98f0f87c16c1e5768ac8f67c27f3d3535a25 (diff) |
rcu: Make rcu_implicit_dynticks_qs() locals be correct size
When the ->dynticks field in the rcu_dynticks structure changed to an
atomic_t, its size on 64-bit systems changed from 64 bits to 32 bits.
The local variables in rcu_implicit_dynticks_qs() need to change as
well, hence this commit.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcutree.c')
-rw-r--r-- | kernel/rcutree.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/rcutree.c b/kernel/rcutree.c index 0c6c30dc6a7c..ebd18e56947b 100644 --- a/kernel/rcutree.c +++ b/kernel/rcutree.c | |||
@@ -488,11 +488,11 @@ static int dyntick_save_progress_counter(struct rcu_data *rdp) | |||
488 | */ | 488 | */ |
489 | static int rcu_implicit_dynticks_qs(struct rcu_data *rdp) | 489 | static int rcu_implicit_dynticks_qs(struct rcu_data *rdp) |
490 | { | 490 | { |
491 | unsigned long curr; | 491 | unsigned int curr; |
492 | unsigned long snap; | 492 | unsigned int snap; |
493 | 493 | ||
494 | curr = (unsigned long)atomic_add_return(0, &rdp->dynticks->dynticks); | 494 | curr = (unsigned int)atomic_add_return(0, &rdp->dynticks->dynticks); |
495 | snap = (unsigned long)rdp->dynticks_snap; | 495 | snap = (unsigned int)rdp->dynticks_snap; |
496 | 496 | ||
497 | /* | 497 | /* |
498 | * If the CPU passed through or entered a dynticks idle phase with | 498 | * If the CPU passed through or entered a dynticks idle phase with |
@@ -502,7 +502,7 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp) | |||
502 | * read-side critical section that started before the beginning | 502 | * read-side critical section that started before the beginning |
503 | * of the current RCU grace period. | 503 | * of the current RCU grace period. |
504 | */ | 504 | */ |
505 | if ((curr & 0x1) == 0 || ULONG_CMP_GE(curr, snap + 2)) { | 505 | if ((curr & 0x1) == 0 || UINT_CMP_GE(curr, snap + 2)) { |
506 | trace_rcu_fqs(rdp->rsp->name, rdp->gpnum, rdp->cpu, "dti"); | 506 | trace_rcu_fqs(rdp->rsp->name, rdp->gpnum, rdp->cpu, "dti"); |
507 | rdp->dynticks_fqs++; | 507 | rdp->dynticks_fqs++; |
508 | return 1; | 508 | return 1; |