[PATCH 2/2] mutex: Refactor mutex_spin_on_owner

2015-02-02 Thread Jason Low
. If the owner is not running or if we need to reschedule, then break out of the loop and return false. Cc: Davidlohr Bueso Signed-off-by: Jason Low --- kernel/locking/mutex.c | 47 ++- 1 files changed, 22 insertions(+), 25 deletions(-) diff --git a

Re: [PATCH 4/5] locking/rwsem: Avoid deceiving lock spinners

2015-02-03 Thread Jason Low
On Tue, 2015-02-03 at 09:16 -0800, Tim Chen wrote: > > > > > > > > + if (READ_ONCE(sem->owner)) > > > > + return true; /* new owner, continue spinning */ > > > > + > > > > > > Do you have some comparison data of whether it is more advantageous > > > to continue spinning when

Re: [PATCH 4/5] locking/rwsem: Avoid deceiving lock spinners

2015-02-03 Thread Jason Low
On Tue, 2015-02-03 at 11:43 -0800, Tim Chen wrote: > On Tue, 2015-02-03 at 09:54 -0800, Jason Low wrote: > > On Tue, 2015-02-03 at 09:16 -0800, Tim Chen wrote: > > > > > > > > > > > > + if (READ_ONCE(sem->owner)) > > > >

Re: [PATCH v2] sched, timer: Use atomics for thread_group_cputimer to improve scalability

2015-03-02 Thread Jason Low
On Mon, 2015-03-02 at 11:03 -0800, Linus Torvalds wrote: > On Mon, Mar 2, 2015 at 10:42 AM, Jason Low wrote: > > > > This patch converts the timers to 64 bit atomic variables and use > > atomic add to update them without a lock. With this patch, the percent > > of total

Re: [PATCH v2] sched, timer: Use atomics for thread_group_cputimer to improve scalability

2015-03-02 Thread Jason Low
On Mon, 2015-03-02 at 13:44 -0800, Linus Torvalds wrote: > On Mon, Mar 2, 2015 at 1:16 PM, Jason Low wrote: > > > > In original code, we set cputimer->running first so it is running while > > we call update_gt_cputime(). Now in this patch, we swapped the 2 calls > >

Re: [PATCH 4/6] locking/rwsem: Avoid deceiving lock spinners

2015-01-29 Thread Jason Low
On Wed, 2015-01-28 at 17:10 -0800, Davidlohr Bueso wrote: > if (READ_ONCE(sem->owner)) > return true; /* new owner, continue spinning */ In terms of the sem->owner check, I agree. This also reminds me of a similar patch I was going to send out, but for mutex. The idea is that

Re: [PATCH 4/6] locking/rwsem: Avoid deceiving lock spinners

2015-01-29 Thread Jason Low
On Thu, 2015-01-29 at 12:13 -0800, Jason Low wrote: > On Wed, 2015-01-28 at 17:10 -0800, Davidlohr Bueso wrote: > > > if (READ_ONCE(sem->owner)) > > return true; /* new owner, continue spinning */ > > In terms of the sem->owner check, I agree. This

Re: Refactoring mutex spin on owner code

2015-01-29 Thread Jason Low
On Thu, 2015-01-29 at 15:15 -0800, Davidlohr Bueso wrote: > On Thu, 2015-01-29 at 12:18 -0800, Jason Low wrote: > > /* > > -* We break out the loop above on need_resched() and when the > > -* owner changed, which is a sign for heavy contention. Return > > -

Re: [RFC][PATCH] cpuset, sched: Fix cpuset sched_relax_domain_level

2015-01-30 Thread Jason Low
On Fri, 2015-01-30 at 12:13 +0800, Zefan Li wrote: > On 2015/1/29 4:47, Jason Low wrote: > > The cpuset.sched_relax_domain_level can control how far we do > > immediate load balancing on a system. However, it was found on recent > > kernels that

[PATCH v2] cpuset: Fix cpuset sched_relax_domain_level

2015-01-30 Thread Jason Low
aversal. Fixes: fc560a26acce ("cpuset: replace cpuset->stack_list with cpuset_for_each_descendant_pre()") Cc: # 3.9+ Signed-off-by: Jason Low --- kernel/cpuset.c |3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/kernel/cpuset.c b/kernel/cpuset.c index 64b257f.

Re: [PATCH RT 1/2] rwsem-rt: Do not allow readers to nest

2015-02-19 Thread Jason Low
On Wed, Feb 18, 2015 at 12:13 PM, Steven Rostedt wrote: > On Wed, 18 Feb 2015 20:57:10 +0100 > Sebastian Andrzej Siewior wrote: > >> * Steven Rostedt | 2014-04-08 22:47:01 [-0400]: >> >> >From: "Steven Rostedt (Red Hat)" >> > >> >The readers of mainline rwsems are not allowed to nest, the rwsems

[PATCH v2] sched, timer: Use atomics for thread_group_cputimer to improve scalability

2015-03-02 Thread Jason Low
own to less than 1%. Signed-off-by: Jason Low --- include/linux/init_task.h |7 +++-- include/linux/sched.h | 10 ++- kernel/fork.c |3 -- kernel/sched/stats.h | 12 ++-- kernel/time/posix-cpu-time

Re: [PATCH v2] sched, timer: Use atomics for thread_group_cputimer to improve scalability

2015-03-02 Thread Jason Low
On Mon, 2015-03-02 at 20:43 +0100, Oleg Nesterov wrote: > On 03/02, Oleg Nesterov wrote: > > > > Well, I forgot everything about this code, but let me ask anyway ;) > > > > On 03/02, Jason Low wrote: > > > > > > -static void update_gt_cputime(struct t

Re: [PATCH v2] sched, timer: Use atomics for thread_group_cputimer to improve scalability

2015-03-02 Thread Jason Low
On Mon, 2015-03-02 at 20:40 +0100, Oleg Nesterov wrote: > Well, I forgot everything about this code, but let me ask anyway ;) > > On 03/02, Jason Low wrote: > > @@ -222,13 +239,10 @@ void thread_group_cputimer(struct task_struct *tsk, > > struct task_cputime *times)

Re: [RFC] arm64: Implement WFE based spin wait for MCS spinlocks

2016-04-20 Thread Jason Low
On Wed, 2016-04-20 at 12:30 +0200, Peter Zijlstra wrote: > On Thu, Apr 14, 2016 at 12:13:38AM -0700, Jason Low wrote: > > Use WFE to avoid most spinning with MCS spinlocks. This is implemented > > with the new cmpwait() mechanism for comparing and waiting for the MCS > > l

[PATCH v3] MCS spinlock: Use smp_cond_load_acquire() in spin loop

2016-04-20 Thread Jason Low
that it uses the new smp_cond_load_acquire() so that ARM64 can also override this spin loop with its own implementation using WFE. On x86, this can also be cheaper than spinning on smp_load_acquire(). Signed-off-by: Jason Low --- v2 -> v3: - Add additional comments about the use

[PATCH] MCS spinlock: Use smp_cond_load_acquire()

2016-04-12 Thread Jason Low
es the new smp_cond_load_acquire() so that ARM64 can also override this spin loop with its own implementation using WFE. On x86, it can also cheaper to use this than spinning on smp_load_acquire(). Signed-off-by: Jason Low --- kernel/locking/mcs_spinlock.h | 8 1 file changed, 4 insert

Re: [PATCH] MCS spinlock: Use smp_cond_load_acquire()

2016-04-12 Thread Jason Low
improving the system] > > url: > https://github.com/0day-ci/linux/commits/Jason-Low/MCS-spinlock-Use-smp_cond_load_acquire/20160413-053726 > config: i386-randconfig-s0-201615 (attached as .config) > reproduce: > # save the attached .config to linux build tree &

Re: [PATCH] MCS spinlock: Use smp_cond_load_acquire()

2016-04-12 Thread Jason Low
On Tue, 2016-04-12 at 16:40 -0700, Jason Low wrote: > On Wed, 2016-04-13 at 06:39 +0800, kbuild test robot wrote: > > Hi Jason, > > > > [auto build test ERROR on v4.6-rc3] > > [also build test ERROR on next-20160412] > > [cannot apply to tip/core/locking] >

[PATCH v2] MCS spinlock: Use smp_cond_load_acquire()

2016-04-12 Thread Jason Low
implementation using WFE. On x86, it can also cheaper to use this than spinning on smp_load_acquire(). Signed-off-by: Jason Low --- Changes from v1: - Pass l instead of &l to smp_cond_load_acquire() since l is already a pointer to the lock variable. kernel/locking/mcs_spinlock.h | 8 1

Re: [RFC] locking/mutex: Fix starvation of sleeping waiters

2016-07-18 Thread Jason Low
On Mon, 2016-07-18 at 19:15 +0200, Peter Zijlstra wrote: > On Mon, Jul 18, 2016 at 07:16:47PM +0300, Imre Deak wrote: > > Currently a thread sleeping on a mutex wait queue can be delayed > > indefinitely by other threads managing to steal the lock, that is > > acquiring the lock out-of-order before

Re: [PATCH v3 0/3] locking/mutex: Enable optimistic spinning of lock waiter

2016-07-18 Thread Jason Low
ceable impact on system > performance. > > This patchset tries to address 2 issues with Peter's patch: > > 1) Ding Tianhong still find that hanging task could happen in some cases. > 2) Jason Low found that there was performance regression for some AIM7 > workloads.

Re: [PATCH -v4 0/8] locking/mutex: Rewrite basic mutex

2016-10-11 Thread Jason Low
--- | 100 - 900 | 76,362 JPM | 76,298 JPM | - | 1000 - 1900 | 77,146 JPM | 76,061 JPM | --------- Tested-by: Jason Low

Re: [PATCH -v4 2/8] locking/mutex: Rework mutex::owner

2016-10-12 Thread Jason Low
On Wed, 2016-10-12 at 10:59 -0700, Davidlohr Bueso wrote: > On Fri, 07 Oct 2016, Peter Zijlstra wrote: > >+/* > >+ * Optimistic trylock that only works in the uncontended case. Make sure to > >+ * follow with a __mutex_trylock() before failing. > >+ */ > >+static __always_inline bool __mutex_tryloc

Re: [RFC PATCH-tip v4 01/10] locking/osq: Make lock/unlock proper acquire/release barrier

2016-10-06 Thread Jason Low
On Wed, Oct 5, 2016 at 10:47 PM, Davidlohr Bueso wrote: > On Wed, 05 Oct 2016, Waiman Long wrote: > >> diff --git a/kernel/locking/osq_lock.c b/kernel/locking/osq_lock.c >> index 05a3785..1e6823a 100644 >> --- a/kernel/locking/osq_lock.c >> +++ b/kernel/locking/osq_lock.c >> @@ -12,6 +12,23 @@ >>

[PATCH v2] locking/mutex: Prevent lock starvation when spinning is enabled

2016-08-10 Thread Jason Low
for too long. Reported-by: Imre Deak Signed-off-by: Jason Low --- v1->v2: - Addressed Waiman's suggestions of needing the yield_to_waiter flag only in the CONFIG_SMP case. - Make sure to only clear the flag if the thread is the top waiter. - Refactor code to clear flag into an inline fun

Re: [PATCH v2] locking/mutex: Prevent lock starvation when spinning is enabled

2016-08-10 Thread Jason Low
On Wed, 2016-08-10 at 11:44 -0700, Jason Low wrote: > Imre reported an issue where threads are getting starved when trying > to acquire a mutex. Threads acquiring a mutex can get arbitrarily delayed > sleeping on a mutex because other threads can continually steal the lock > in the fas

Re: [PATCH v2] locking/mutex: Prevent lock starvation when spinning is enabled

2016-08-10 Thread Jason Low
On Wed, 2016-08-10 at 11:44 -0700, Jason Low wrote: > @@ -917,11 +976,12 @@ EXPORT_SYMBOL(mutex_trylock); > int __sched > __ww_mutex_lock(struct ww_mutex *lock, struct ww_acquire_ctx *ctx) > { > - int ret; > + int ret = 1; > > might_

Re: [PATCH v2] locking/mutex: Prevent lock starvation when spinning is enabled

2016-08-17 Thread Jason Low
Hi Wanpeng, On Wed, 2016-08-17 at 09:41 +0800, Wanpeng Li wrote: > 2016-08-11 2:44 GMT+08:00 Jason Low : > > Imre reported an issue where threads are getting starved when trying > > to acquire a mutex. Threads acquiring a mutex can get arbitrarily delayed > > sleeping on

Re: [PATCH-queue/locking/core] locking/mutex: Unify yield_to_waiter & waiter_spinning

2016-08-18 Thread Jason Low
ct mutex *lock, >* Turn on the waiter spinning flag to discourage the spinner >* from getting the lock. Might want to update this comment to "Turn on the yield to waiter flag to discourage optimistic spinners from stealing the lock." Besides that: Acked-by: Jason Low

[PATCH v4] locking/mutex: Prevent lock starvation when spinning is disabled

2016-08-18 Thread Jason Low
for too long. Reported-by: Imre Deak Signed-off-by: Jason Low --- include/linux/mutex.h | 2 + kernel/locking/mutex.c | 122 +++-- 2 files changed, 99 insertions(+), 25 deletions(-) diff --git a/include/linux/mutex.h b/include/linux/mutex.h index

Re: [PATCH v5 3/3] locking/mutex: Ensure forward progress of waiter-spinner

2016-08-18 Thread Jason Low
On Thu, 2016-08-18 at 17:58 +0200, Peter Zijlstra wrote: > On Thu, Aug 11, 2016 at 11:01:27AM -0400, Waiman Long wrote: > > The following is the updated patch that should fix the build error in > > non-x86 platform. > > > > This patch was whitespace challenged, but I think I munged it properly. >

Re: [PATCH v4] locking/mutex: Prevent lock starvation when spinning is disabled

2016-08-18 Thread Jason Low
On Thu, 2016-08-18 at 17:39 -0700, Jason Low wrote: > Imre reported an issue where threads are getting starved when trying > to acquire a mutex. Threads acquiring a mutex can get arbitrarily delayed > sleeping on a mutex because other threads can continually steal the lock > in the fas

Re: [RFC][PATCH 0/7] locking/rwsem: Convert rwsem count to atomic_long_t

2016-06-03 Thread Jason Low
On Fri, 2016-06-03 at 10:04 +0200, Ingo Molnar wrote: > * Peter Zijlstra wrote: > > > On Mon, May 16, 2016 at 06:12:25PM -0700, Linus Torvalds wrote: > > > On Mon, May 16, 2016 at 5:37 PM, Jason Low wrote: > > > > > > > > This rest of the s

Re: [RFC][PATCH 0/7] locking/rwsem: Convert rwsem count to atomic_long_t

2016-06-03 Thread Jason Low
On Sat, 2016-06-04 at 00:36 +0200, Peter Zijlstra wrote: > On Fri, Jun 03, 2016 at 11:09:54AM -0700, Jason Low wrote: > > --- a/arch/alpha/include/asm/rwsem.h > > +++ b/arch/alpha/include/asm/rwsem.h > > @@ -25,8 +25,8 @@ static inline void __down_read(struct rw_semaphore *sem

[PATCH v2 0/2] locking/rwsem: Convert rwsem count to atomic_long_t

2016-06-03 Thread Jason Low
to an atomic_long_t since it is used it as an atomic variable. This allows us to also remove the rwsem_atomic_{add,update} abstraction and reduce 100+ lines of code. Jason Low (2): locking/rwsem: Convert sem->count to atomic_long_t Remove rwsem_atomic_add() and rwsem_atomic_update() arch/alph

[PATCH v2 1/2] locking/rwsem: Convert sem->count to atomic_long_t

2016-06-03 Thread Jason Low
add,update} definitions across the various architectures. Suggested-by: Peter Zijlstra Signed-off-by: Jason Low --- arch/alpha/include/asm/rwsem.h | 26 +- arch/ia64/include/asm/rwsem.h | 24 include/asm-generic/rwsem.h| 6 +++--- include/lin

[PATCH v2 2/2] Remove rwsem_atomic_add() and rwsem_atomic_update()

2016-06-03 Thread Jason Low
The rwsem-xadd count has been converted to an atomic variable and the rwsem code now directly uses atomic_long_add() and atomic_long_add_return(), so we can remove the arch implementations of rwsem_atomic_add() and rwsem_atomic_update(). Signed-off-by: Jason Low --- arch/alpha/include/asm

Re: [PATCH] sched: fix nohz.next_balance update

2015-07-31 Thread Jason Low
Hi Vincent, On Fri, 2015-07-31 at 11:49 +0200, Vincent Guittot wrote: > Since commit d4573c3e1c99 ("sched: Improve load balancing in the presence > of idle CPUs"), the ILB CPU starts with the idle load balancing of other > idle CPUs and finishes with itself in order to speed up the spread of tasks

Re: [PATCH 1/1] cputime: Make the reported utime+stime correspond to the actual runtime.

2015-06-29 Thread Jason Low
On Mon, 2015-06-29 at 17:28 +0200, Fredrik Markström wrote: > Hello Peter, the locking part looks good, I don't have a strong > opinion on per task/signal lock vs global lock. > > But with the patch we still update prev->utime and prev->stime > independently, which was the original problem. But m

Re: [PATCH 1/1] cputime: Make the reported utime+stime correspond to the actual runtime.

2015-06-29 Thread Jason Low
On Mon, 2015-06-29 at 21:08 +0200, Fredrik Markström wrote: > I don't think that is good enough. I believe the reason the > max()-stuff was initially put there to make sure the returned stime > and utime components are increasing monotonically. The scaling code > can cause either or to decrease fro

Re: [PATCH] locking/mutex: Avoid spinner vs waiter starvation

2016-02-04 Thread Jason Low
On Thu, 2016-02-04 at 16:55 +0800, huang ying wrote: > Hi, Low, > > On Thu, Feb 4, 2016 at 9:35 AM, Jason Low wrote: > > I've done some testing with this patch with some of the AIM7 workloads > > and found that this reduced throughput by about 10%. The reduction in

Re: [PATCH] locking/mutex: Avoid spinner vs waiter starvation

2016-02-03 Thread Jason Low
are: > > - waiters are on the wait list and need to be taken off > - mutex_optimistic_spin() sets the lock->count to 0 on acquire >even though there might be more tasks on the wait list. > > Cc: Jason Low > Cc: Ingo Molnar > Cc: Tim Chen > Cc: Linus Torvalds

Re: [PATCH v2] locking/mutex: Prevent lock starvation when spinning is enabled

2016-08-16 Thread Jason Low
On Thu, 2016-08-11 at 11:40 -0400, Waiman Long wrote: > On 08/10/2016 02:44 PM, Jason Low wrote: > > +static inline void do_yield_to_waiter(struct mutex *lock, int *wakeups) > > +{ > > + return; > > +} > > + > > +static inline void clear_yield_to_waiter(st

Re: [PATCH v2] locking/mutex: Prevent lock starvation when spinning is enabled

2016-08-16 Thread Jason Low
; > url: > https://github.com/0day-ci/linux/commits/Jason-Low/locking-mutex-Prevent-lock-starvation-when-spinning-is-enabled/20160811-034327 > config: x86_64-randconfig-x013-201632 (attached as .config) > compiler: gcc-6 (Debian 6.1.1-9) 6.1.1 20160705 > reproduce: >

Re: [RFC PATCH-tip v4 01/10] locking/osq: Make lock/unlock proper acquire/release barrier

2016-10-04 Thread Jason Low
On Tue, Oct 4, 2016 at 12:06 PM, Davidlohr Bueso wrote: > On Thu, 18 Aug 2016, Waiman Long wrote: > >> The osq_lock() and osq_unlock() function may not provide the necessary >> acquire and release barrier in some cases. This patch makes sure >> that the proper barriers are provided when osq_lock()

Re: [RFC][PATCH 0/3] locking/mutex: Rewrite basic mutex

2016-08-23 Thread Jason Low
On Tue, 2016-08-23 at 09:17 -0700, Davidlohr Bueso wrote: > What's the motivation here? Is it just to unify counter and owner for > the starvation issue? If so, is this really the path we wanna take for > a small debug corner case? And we thought our other patch was a bit invasive :-) > I have n

[tip:sched/core] sched/balancing: Periodically decay max cost of idle balance

2013-09-20 Thread tip-bot for Jason Low
Commit-ID: f48627e686a69f5215cb0761e731edb3d9859dd9 Gitweb: http://git.kernel.org/tip/f48627e686a69f5215cb0761e731edb3d9859dd9 Author: Jason Low AuthorDate: Fri, 13 Sep 2013 11:26:53 -0700 Committer: Ingo Molnar CommitDate: Fri, 20 Sep 2013 12:03:46 +0200 sched/balancing: Periodically

[tip:sched/core] sched: Reduce overestimating rq->avg_idle

2013-09-20 Thread tip-bot for Jason Low
Commit-ID: abfafa54db9aba404e8e6763503f04d35bd07138 Gitweb: http://git.kernel.org/tip/abfafa54db9aba404e8e6763503f04d35bd07138 Author: Jason Low AuthorDate: Fri, 13 Sep 2013 11:26:51 -0700 Committer: Ingo Molnar CommitDate: Fri, 20 Sep 2013 12:03:41 +0200 sched: Reduce overestimating

[tip:sched/core] sched/balancing: Consider max cost of idle balance per sched domain

2013-09-20 Thread tip-bot for Jason Low
Commit-ID: 9bd721c55c8a886b938a45198aab0ccb52f1f7fa Gitweb: http://git.kernel.org/tip/9bd721c55c8a886b938a45198aab0ccb52f1f7fa Author: Jason Low AuthorDate: Fri, 13 Sep 2013 11:26:52 -0700 Committer: Ingo Molnar CommitDate: Fri, 20 Sep 2013 12:03:44 +0200 sched/balancing: Consider max

[tip:timers/core] posix_cpu_timer: Optimize fastpath_timer_check( )

2015-10-15 Thread tip-bot for Jason Low
Commit-ID: 7c177d994eb9637302b79e80d331f48dfbe26368 Gitweb: http://git.kernel.org/tip/7c177d994eb9637302b79e80d331f48dfbe26368 Author: Jason Low AuthorDate: Wed, 14 Oct 2015 12:07:53 -0700 Committer: Thomas Gleixner CommitDate: Thu, 15 Oct 2015 11:23:41 +0200 posix_cpu_timer: Optimize

[tip:timers/core] posix_cpu_timer: Check thread timers only when there are active thread timers

2015-10-15 Thread tip-bot for Jason Low
Commit-ID: 934715a191e4be0c602d39455a7a74316f274d60 Gitweb: http://git.kernel.org/tip/934715a191e4be0c602d39455a7a74316f274d60 Author: Jason Low AuthorDate: Wed, 14 Oct 2015 12:07:54 -0700 Committer: Thomas Gleixner CommitDate: Thu, 15 Oct 2015 11:23:41 +0200 posix_cpu_timer: Check

[tip:timers/core] posix_cpu_timer: Convert cputimer-> running to bool

2015-10-15 Thread tip-bot for Jason Low
Commit-ID: d5c373eb5610686162ff50429f63f4c00c554799 Gitweb: http://git.kernel.org/tip/d5c373eb5610686162ff50429f63f4c00c554799 Author: Jason Low AuthorDate: Wed, 14 Oct 2015 12:07:55 -0700 Committer: Thomas Gleixner CommitDate: Thu, 15 Oct 2015 11:23:41 +0200 posix_cpu_timer: Convert

[tip:timers/core] posix_cpu_timer: Reduce unnecessary sighand lock contention

2015-10-15 Thread tip-bot for Jason Low
Commit-ID: c8d75aa47dd585c9538a8205e9bb9847e12cfb84 Gitweb: http://git.kernel.org/tip/c8d75aa47dd585c9538a8205e9bb9847e12cfb84 Author: Jason Low AuthorDate: Wed, 14 Oct 2015 12:07:56 -0700 Committer: Thomas Gleixner CommitDate: Thu, 15 Oct 2015 11:23:41 +0200 posix_cpu_timer: Reduce

[tip:locking/core] locking/mutex: Further simplify mutex_spin_on_owner()

2015-04-09 Thread tip-bot for Jason Low
Commit-ID: 01ac33c1f907b366dcc50551316b372f1519cca9 Gitweb: http://git.kernel.org/tip/01ac33c1f907b366dcc50551316b372f1519cca9 Author: Jason Low AuthorDate: Wed, 8 Apr 2015 12:39:19 -0700 Committer: Ingo Molnar CommitDate: Thu, 9 Apr 2015 08:10:23 +0200 locking/mutex: Further simplify

[tip:locking/core] locking/mcs: Use smp_cond_load_acquire() in MCS spin loop

2018-04-27 Thread tip-bot for Jason Low
Commit-ID: 7f56b58a92aaf2cab049f32a19af7cc57a3972f2 Gitweb: https://git.kernel.org/tip/7f56b58a92aaf2cab049f32a19af7cc57a3972f2 Author: Jason Low AuthorDate: Thu, 26 Apr 2018 11:34:22 +0100 Committer: Ingo Molnar CommitDate: Fri, 27 Apr 2018 09:48:49 +0200 locking/mcs: Use

[tip:core/locking] futexes: Clean up various details

2014-01-13 Thread tip-bot for Jason Low
Commit-ID: 0d00c7b20c7716ce08399570ea48813ecf001aa8 Gitweb: http://git.kernel.org/tip/0d00c7b20c7716ce08399570ea48813ecf001aa8 Author: Jason Low AuthorDate: Sun, 12 Jan 2014 15:31:22 -0800 Committer: Ingo Molnar CommitDate: Mon, 13 Jan 2014 11:45:17 +0100 futexes: Clean up various

[tip:core/locking] locking/mutexes: Return false if task need_resched() in mutex_can_spin_on_owner()

2014-03-11 Thread tip-bot for Jason Low
Commit-ID: 46af29e479cc0c1c63633007993af5292c2c3e75 Gitweb: http://git.kernel.org/tip/46af29e479cc0c1c63633007993af5292c2c3e75 Author: Jason Low AuthorDate: Tue, 28 Jan 2014 11:13:12 -0800 Committer: Ingo Molnar CommitDate: Tue, 11 Mar 2014 12:14:52 +0100 locking/mutexes: Return false

[tip:core/locking] locking/mutexes: Unlock the mutex without the wait_lock

2014-03-11 Thread tip-bot for Jason Low
Commit-ID: 1d8fe7dc8078b23e060ec62ccb4cdc1ac3c41bf8 Gitweb: http://git.kernel.org/tip/1d8fe7dc8078b23e060ec62ccb4cdc1ac3c41bf8 Author: Jason Low AuthorDate: Tue, 28 Jan 2014 11:13:14 -0800 Committer: Ingo Molnar CommitDate: Tue, 11 Mar 2014 12:14:54 +0100 locking/mutexes: Unlock the

[tip:core/locking] locking/mutexes: Modify the way optimistic spinners are queued

2014-03-11 Thread tip-bot for Jason Low
Commit-ID: 47667fa1502e4d759df87e9cc7fbc0f202483361 Gitweb: http://git.kernel.org/tip/47667fa1502e4d759df87e9cc7fbc0f202483361 Author: Jason Low AuthorDate: Tue, 28 Jan 2014 11:13:13 -0800 Committer: Ingo Molnar CommitDate: Tue, 11 Mar 2014 12:14:53 +0100 locking/mutexes: Modify the

[tip:sched/core] sched: Fix next_balance logic in rebalance_domains() and idle_balance()

2014-05-19 Thread tip-bot for Jason Low
Commit-ID: df6b728416e32fe7fe04e5c81ca9ca2d6416735a Gitweb: http://git.kernel.org/tip/df6b728416e32fe7fe04e5c81ca9ca2d6416735a Author: Jason Low AuthorDate: Thu, 8 May 2014 17:49:22 -0700 Committer: Thomas Gleixner CommitDate: Mon, 19 May 2014 22:02:41 +0900 sched: Fix next_balance

[tip:sched/core] sched: Fix updating rq-> max_idle_balance_cost and rq->next_balance in idle_balance()

2014-05-08 Thread tip-bot for Jason Low
Commit-ID: 0e5b5337f0da073e1f17aec3c322ea7826975d0d Gitweb: http://git.kernel.org/tip/0e5b5337f0da073e1f17aec3c322ea7826975d0d Author: Jason Low AuthorDate: Mon, 28 Apr 2014 15:45:54 -0700 Committer: Ingo Molnar CommitDate: Wed, 7 May 2014 11:51:36 +0200 sched: Fix updating rq

[tip:sched/core] sched/numa: Initialize newidle balance stats in sd_numa_init()

2014-05-08 Thread tip-bot for Jason Low
Commit-ID: 2b4cfe64dee0d84506b951d81bf55d9891744d25 Gitweb: http://git.kernel.org/tip/2b4cfe64dee0d84506b951d81bf55d9891744d25 Author: Jason Low AuthorDate: Wed, 23 Apr 2014 18:30:34 -0700 Committer: Ingo Molnar CommitDate: Wed, 7 May 2014 11:51:37 +0200 sched/numa: Initialize newidle

[tip:sched/core] sched/fair: Stop searching for tasks in newidle balance if there are runnable tasks

2014-05-08 Thread tip-bot for Jason Low
Commit-ID: 39a4d9ca77a31503c6317e49742341d0859d5cb2 Gitweb: http://git.kernel.org/tip/39a4d9ca77a31503c6317e49742341d0859d5cb2 Author: Jason Low AuthorDate: Wed, 23 Apr 2014 18:30:35 -0700 Committer: Ingo Molnar CommitDate: Wed, 7 May 2014 13:33:53 +0200 sched/fair: Stop searching for

[tip:locking/urgent] locking/rwsem: Allow conservative optimistic spinning when readers have lock

2014-07-16 Thread tip-bot for Jason Low
Commit-ID: 37e9562453b813d2ea527bd9531fef2c3c592847 Gitweb: http://git.kernel.org/tip/37e9562453b813d2ea527bd9531fef2c3c592847 Author: Jason Low AuthorDate: Fri, 4 Jul 2014 20:49:32 -0700 Committer: Ingo Molnar CommitDate: Wed, 16 Jul 2014 13:28:02 +0200 locking/rwsem: Allow

[tip:locking/urgent] locking/spinlocks/mcs: Introduce and use init macro and function for osq locks

2014-07-16 Thread tip-bot for Jason Low
Commit-ID: 4d9d951e6b5df85ccfca2c5bd8b4f5c71d256b65 Gitweb: http://git.kernel.org/tip/4d9d951e6b5df85ccfca2c5bd8b4f5c71d256b65 Author: Jason Low AuthorDate: Mon, 14 Jul 2014 10:27:50 -0700 Committer: Ingo Molnar CommitDate: Wed, 16 Jul 2014 13:28:05 +0200 locking/spinlocks/mcs

[tip:locking/urgent] locking/spinlocks/mcs: Micro-optimize osq_unlock()

2014-07-16 Thread tip-bot for Jason Low
Commit-ID: 33ecd2083a9560fbc1ef1b1279ef3ecb4c012a4f Gitweb: http://git.kernel.org/tip/33ecd2083a9560fbc1ef1b1279ef3ecb4c012a4f Author: Jason Low AuthorDate: Mon, 14 Jul 2014 10:27:51 -0700 Committer: Ingo Molnar CommitDate: Wed, 16 Jul 2014 13:28:06 +0200 locking/spinlocks/mcs: Micro

[tip:locking/urgent] locking/rwsem: Reduce the size of struct rw_semaphore

2014-07-16 Thread tip-bot for Jason Low
Commit-ID: ce069fc920e5734558b3d9cbef1ab06cf01ee793 Gitweb: http://git.kernel.org/tip/ce069fc920e5734558b3d9cbef1ab06cf01ee793 Author: Jason Low AuthorDate: Mon, 14 Jul 2014 10:27:52 -0700 Committer: Ingo Molnar CommitDate: Wed, 16 Jul 2014 14:57:03 +0200 locking/rwsem: Reduce the

[tip:locking/urgent] locking/spinlocks/mcs: Convert osq lock to atomic_t to reduce overhead

2014-07-16 Thread tip-bot for Jason Low
Commit-ID: 90631822c5d307b5410500806e8ac3e63928aa3e Gitweb: http://git.kernel.org/tip/90631822c5d307b5410500806e8ac3e63928aa3e Author: Jason Low AuthorDate: Mon, 14 Jul 2014 10:27:49 -0700 Committer: Ingo Molnar CommitDate: Wed, 16 Jul 2014 13:28:04 +0200 locking/spinlocks/mcs

[tip:locking/urgent] locking/spinlocks/mcs: Rename optimistic_spin_queue() to optimistic_spin_node()

2014-07-16 Thread tip-bot for Jason Low
Commit-ID: 046a619d8e9746fa4c0e29e8c6b78e16efc008a8 Gitweb: http://git.kernel.org/tip/046a619d8e9746fa4c0e29e8c6b78e16efc008a8 Author: Jason Low AuthorDate: Mon, 14 Jul 2014 10:27:48 -0700 Committer: Ingo Molnar CommitDate: Wed, 16 Jul 2014 13:28:03 +0200 locking/spinlocks/mcs: Rename

[tip:locking/core] locking/mutexes: Correct documentation on mutex optimistic spinning

2014-07-05 Thread tip-bot for Jason Low
Commit-ID: 0c3c0f0d6e56422cef60a33726d062e9923005c3 Gitweb: http://git.kernel.org/tip/0c3c0f0d6e56422cef60a33726d062e9923005c3 Author: Jason Low AuthorDate: Wed, 11 Jun 2014 11:37:20 -0700 Committer: Ingo Molnar CommitDate: Sat, 5 Jul 2014 11:25:41 +0200 locking/mutexes: Correct

[tip:locking/core] locking/mutexes: Try to acquire mutex only if it is unlocked

2014-07-05 Thread tip-bot for Jason Low
Commit-ID: 0d968dd8c6aced585b86fa7ba8ce4573bf19e848 Gitweb: http://git.kernel.org/tip/0d968dd8c6aced585b86fa7ba8ce4573bf19e848 Author: Jason Low AuthorDate: Wed, 11 Jun 2014 11:37:22 -0700 Committer: Ingo Molnar CommitDate: Sat, 5 Jul 2014 11:25:42 +0200 locking/mutexes: Try to

[tip:locking/core] locking/mutexes: Delete the MUTEX_SHOW_NO_WAITER macro

2014-07-05 Thread tip-bot for Jason Low
Commit-ID: 1e820c9608eace237e2c519d8fd9074aec479d81 Gitweb: http://git.kernel.org/tip/1e820c9608eace237e2c519d8fd9074aec479d81 Author: Jason Low AuthorDate: Wed, 11 Jun 2014 11:37:21 -0700 Committer: Ingo Molnar CommitDate: Sat, 5 Jul 2014 11:25:41 +0200 locking/mutexes: Delete the

[tip:locking/core] locking/mutexes: Optimize mutex trylock slowpath

2014-07-05 Thread tip-bot for Jason Low
Commit-ID: 72d5305dcb3637913c2c37e847a4de9028e49244 Gitweb: http://git.kernel.org/tip/72d5305dcb3637913c2c37e847a4de9028e49244 Author: Jason Low AuthorDate: Wed, 11 Jun 2014 11:37:23 -0700 Committer: Ingo Molnar CommitDate: Sat, 5 Jul 2014 11:25:42 +0200 locking/mutexes: Optimize

[tip:sched/core] sched: Fix the rq-> next_balance logic in rebalance_domains() and idle_balance()

2014-05-22 Thread tip-bot for Jason Low
Commit-ID: 52a08ef1f13a11289c9e18cd4cfb4e51c024058b Gitweb: http://git.kernel.org/tip/52a08ef1f13a11289c9e18cd4cfb4e51c024058b Author: Jason Low AuthorDate: Thu, 8 May 2014 17:49:22 -0700 Committer: Ingo Molnar CommitDate: Thu, 22 May 2014 11:16:32 +0200 sched: Fix the rq

[tip:core/locking] locking/mcs: Micro-optimize the MCS code, add extra comments

2014-01-28 Thread tip-bot for Jason Low
Commit-ID: 5faeb8adb956a5ad6579c4e309e8689943ad8294 Gitweb: http://git.kernel.org/tip/5faeb8adb956a5ad6579c4e309e8689943ad8294 Author: Jason Low AuthorDate: Tue, 21 Jan 2014 15:36:05 -0800 Committer: Ingo Molnar CommitDate: Tue, 28 Jan 2014 13:13:28 +0100 locking/mcs: Micro-optimize

[tip:sched/core] sched: Reduce contention in update_cfs_rq_blocked_load()

2014-09-09 Thread tip-bot for Jason Low
Commit-ID: 8236d907ab3411ad452280faa8b26c1347327380 Gitweb: http://git.kernel.org/tip/8236d907ab3411ad452280faa8b26c1347327380 Author: Jason Low AuthorDate: Tue, 2 Sep 2014 00:41:24 -0700 Committer: Ingo Molnar CommitDate: Tue, 9 Sep 2014 06:47:29 +0200 sched: Reduce contention in

[tip:locking/core] locking/rwsem: Avoid double checking before try acquiring write lock

2014-10-02 Thread tip-bot for Jason Low
Commit-ID: debfab74e453f079cd8b12b0604387a8c510ef3a Gitweb: http://git.kernel.org/tip/debfab74e453f079cd8b12b0604387a8c510ef3a Author: Jason Low AuthorDate: Tue, 16 Sep 2014 17:16:57 -0700 Committer: Ingo Molnar CommitDate: Fri, 3 Oct 2014 06:09:29 +0200 locking/rwsem: Avoid double

[tip:sched/core] sched/numa: Document usages of mm->numa_scan_seq

2015-05-08 Thread tip-bot for Jason Low
Commit-ID: 7e5a2c1729f1612618ed236249a15bf15f309325 Gitweb: http://git.kernel.org/tip/7e5a2c1729f1612618ed236249a15bf15f309325 Author: Jason Low AuthorDate: Thu, 30 Apr 2015 17:28:14 -0700 Committer: Ingo Molnar CommitDate: Fri, 8 May 2015 12:13:13 +0200 sched/numa: Document usages of

[tip:sched/core] sched, timer: Replace spinlocks with atomics in thread_group_cputimer(), to improve scalability

2015-05-08 Thread tip-bot for Jason Low
Commit-ID: 1018016c706f7ff9f56fde3a649789c47085a293 Gitweb: http://git.kernel.org/tip/1018016c706f7ff9f56fde3a649789c47085a293 Author: Jason Low AuthorDate: Tue, 28 Apr 2015 13:00:22 -0700 Committer: Ingo Molnar CommitDate: Fri, 8 May 2015 12:15:31 +0200 sched, timer: Replace

[tip:sched/core] sched, timer: Provide an atomic ' struct task_cputime' data structure

2015-05-08 Thread tip-bot for Jason Low
Commit-ID: 971e8a985482c76487edb5a49811e99b96e846e1 Gitweb: http://git.kernel.org/tip/971e8a985482c76487edb5a49811e99b96e846e1 Author: Jason Low AuthorDate: Tue, 28 Apr 2015 13:00:23 -0700 Committer: Ingo Molnar CommitDate: Fri, 8 May 2015 12:17:45 +0200 sched, timer: Provide an

[tip:sched/core] sched, timer: Convert usages of ACCESS_ONCE() in the scheduler to READ_ONCE()/WRITE_ONCE()

2015-05-08 Thread tip-bot for Jason Low
Commit-ID: 316c1608d15c736439d4065ed12f306db554b3da Gitweb: http://git.kernel.org/tip/316c1608d15c736439d4065ed12f306db554b3da Author: Jason Low AuthorDate: Tue, 28 Apr 2015 13:00:20 -0700 Committer: Ingo Molnar CommitDate: Fri, 8 May 2015 12:11:32 +0200 sched, timer: Convert usages

[tip:sched/core] sched, timer: Use the atomic task_cputime in thread_group_cputimer

2015-05-08 Thread tip-bot for Jason Low
Commit-ID: 7110744516276e906f9197e2857d026eb2343393 Gitweb: http://git.kernel.org/tip/7110744516276e906f9197e2857d026eb2343393 Author: Jason Low AuthorDate: Tue, 28 Apr 2015 13:00:24 -0700 Committer: Ingo Molnar CommitDate: Fri, 8 May 2015 12:17:46 +0200 sched, timer: Use the atomic

[tip:sched/core] sched, timer: Fix documentation for ' struct thread_group_cputimer'

2015-05-10 Thread tip-bot for Jason Low
Commit-ID: 920ce39f6c204d4ce4d8acebe7522f0dfa95f662 Gitweb: http://git.kernel.org/tip/920ce39f6c204d4ce4d8acebe7522f0dfa95f662 Author: Jason Low AuthorDate: Fri, 8 May 2015 14:31:50 -0700 Committer: Ingo Molnar CommitDate: Sun, 10 May 2015 12:45:27 +0200 sched, timer: Fix

[tip:locking/core] locking/rwsem: Fix lock optimistic spinning when owner is not running

2015-03-07 Thread tip-bot for Jason Low
Commit-ID: 9198f6edfd9ced74fd90b238d5a354aeac89bdfa Gitweb: http://git.kernel.org/tip/9198f6edfd9ced74fd90b238d5a354aeac89bdfa Author: Jason Low AuthorDate: Fri, 6 Mar 2015 23:45:31 -0800 Committer: Ingo Molnar CommitDate: Sat, 7 Mar 2015 09:50:49 +0100 locking/rwsem: Fix lock

[tip:locking/core] locking/mutex: In mutex_spin_on_owner(), return true when owner changes

2015-02-18 Thread tip-bot for Jason Low
Commit-ID: 07d2413a61db6500f58e614e873eed79d7f2ed72 Gitweb: http://git.kernel.org/tip/07d2413a61db6500f58e614e873eed79d7f2ed72 Author: Jason Low AuthorDate: Mon, 2 Feb 2015 13:59:26 -0800 Committer: Ingo Molnar CommitDate: Wed, 18 Feb 2015 16:57:07 +0100 locking/mutex: In

[tip:locking/core] locking/mutex: Refactor mutex_spin_on_owner()

2015-02-18 Thread tip-bot for Jason Low
Commit-ID: be1f7bf217ebb1e42190d7d0b332c89ea7871378 Gitweb: http://git.kernel.org/tip/be1f7bf217ebb1e42190d7d0b332c89ea7871378 Author: Jason Low AuthorDate: Mon, 2 Feb 2015 13:59:27 -0800 Committer: Ingo Molnar CommitDate: Wed, 18 Feb 2015 16:57:08 +0100 locking/mutex: Refactor

[tip:locking/core] locking/rwsem: Convert sem->count to 'atomic_long_t'

2016-06-08 Thread tip-bot for Jason Low
Commit-ID: 8ee62b1870be8e630158701632a533d0378e15b8 Gitweb: http://git.kernel.org/tip/8ee62b1870be8e630158701632a533d0378e15b8 Author: Jason Low AuthorDate: Fri, 3 Jun 2016 22:26:02 -0700 Committer: Ingo Molnar CommitDate: Wed, 8 Jun 2016 15:16:42 +0200 locking/rwsem: Convert sem

[tip:locking/core] locking/rwsem: Optimize write lock by reducing operations in slowpath

2016-06-03 Thread tip-bot for Jason Low
Commit-ID: c0fcb6c2d332041256dc55d8a1ec3c0a2d0befb8 Gitweb: http://git.kernel.org/tip/c0fcb6c2d332041256dc55d8a1ec3c0a2d0befb8 Author: Jason Low AuthorDate: Mon, 16 May 2016 17:38:00 -0700 Committer: Ingo Molnar CommitDate: Fri, 3 Jun 2016 09:47:13 +0200 locking/rwsem: Optimize write

[tip:locking/core] locking/mutex: Set and clear owner using WRITE_ONCE()

2016-06-03 Thread tip-bot for Jason Low
Commit-ID: 6e2814745c67ab422b86262b05e6f23a56f28aa3 Gitweb: http://git.kernel.org/tip/6e2814745c67ab422b86262b05e6f23a56f28aa3 Author: Jason Low AuthorDate: Fri, 20 May 2016 15:19:36 -0700 Committer: Ingo Molnar CommitDate: Fri, 3 Jun 2016 12:06:10 +0200 locking/mutex: Set and clear

<    1   2   3   4   5