Messages in this thread |  | | Date | Wed, 4 Dec 2013 18:51:47 -0800 | From | "Paul E. McKenney" <> | Subject | Re: lots of brief rcu stalls. |
| |
On Wed, Dec 04, 2013 at 06:36:05PM -0800, Joe Perches wrote: > On Wed, 2013-12-04 at 18:18 -0800, Eric Dumazet wrote: > > On Wed, 2013-12-04 at 16:16 -0800, Paul E. McKenney wrote: > > > + ULONG_CMP_GE(ACCESS_ONCE(jiffies), rdp->rsp->jiffies_resched)) { > > perhaps time_before_eq > > > jiffies should not need ACCESS_ONCE(), right ? > > > > It is one of the few variables marked with volatile keyword. > > It does seem redundant > > $ git grep -n "ACCESS_ONCE(jiffies)" > kernel/rcu/torture.c:1354: jiffies_snap = ACCESS_ONCE(jiffies); > kernel/rcu/torture.c:1363: jiffies_snap = ACCESS_ONCE(jiffies); > kernel/rcu/tree.c:820: unsigned long j = ACCESS_ONCE(jiffies); > kernel/rcu/tree.c:975: j = ACCESS_ONCE(jiffies);
I took care of the first four, plus one more that I have in my local tree.
Thanx, Paul
> kernel/sched/core.c:2324: unsigned long next, now = ACCESS_ONCE(jiffies); > kernel/sched/proc.c:536: unsigned long curr_jiffies = ACCESS_ONCE(jiffies); > kernel/sched/proc.c:558: unsigned long curr_jiffies = ACCESS_ONCE(jiffies); > >
|  |