From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756354AbbCRODF (ORCPT ); Wed, 18 Mar 2015 10:03:05 -0400 Received: from smtprelay0217.hostedemail.com ([216.40.44.217]:58547 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755962AbbCRODC (ORCPT ); Wed, 18 Mar 2015 10:03:02 -0400 X-Session-Marker: 726F737465647440676F6F646D69732E6F7267 X-Spam-Summary: 50,0,0,,d41d8cd98f00b204,rostedt@goodmis.org,:::::::::::::,RULES_HIT:2:41:69:355:379:472:541:967:968:969:973:988:989:1260:1263:1277:1311:1313:1314:1345:1437:1515:1516:1518:1535:1593:1594:1605:1606:1730:1747:1777:1792:1801:2393:2525:2566:2682:2685:2687:2693:2859:2911:2933:2937:2939:2942:2945:2947:2951:2954:3022:3138:3139:3140:3141:3142:3770:3834:3865:3866:3867:3868:3870:3871:3872:3873:3934:3936:3938:3941:3944:3947:3950:3953:3956:3959:4250:4321:4425:4560:4605:5007:6261:6684:7875:7903:7974:8509:8599:8660:8985:9025:9072:9388:10049:10848:11026:11232:11473:11657:11658:11914:12043:12198:12291:12292:12296:12438:12485:12517:12519:12555:12679:12682:12683:13148:13161:13229:13230:13845:14096:14097:14196:14394:21080,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:fn,MSBL:0,DNSBL:none,Custom_rules:0:1:0 X-HE-Tag: army25_37396876c045e X-Filterd-Recvd-Size: 5891 Date: Wed, 18 Mar 2015 10:02:58 -0400 From: Steven Rostedt To: LKML , linux-rt-users Cc: Thomas Gleixner , Carsten Emde , Sebastian Andrzej Siewior , John Kacur , Paul Gortmaker Subject: [PATCH] Linux 3.4.106-rt132-rc4 Message-ID: <20150318100258.54c3889e@gandalf.local.home> X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.25; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Dear RT Folks, This is the RT stable review cycle of patch 3.4.106-rt132-rc4. Please scream at me if I messed something up. Please test the patches too. The -rc release will be uploaded to kernel.org and will be deleted when the final release is out. This is just a review release (or release candidate). The pre-releases will not be pushed to the git repository, only the final release is. If all goes well, this patch will be converted to the next main release on 3/20/2015. Enjoy, -- Steve To build 3.4.106-rt132-rc4 directly, the following patches should be applied: http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.4.tar.xz http://www.kernel.org/pub/linux/kernel/v3.x/patch-3.4.106.xz http://www.kernel.org/pub/linux/kernel/projects/rt/3.4/patch-3.4.106-rt132-rc4.patch.xz You can also build from 3.4.106-rt131 by applying the incremental patch: http://www.kernel.org/pub/linux/kernel/projects/rt/3.4/incr/patch-3.4.106-rt131-rt132-rc4.patch.xz Changes from 3.4.106-rt131: --- Daniel Wagner (1): work-simple: Simple work queue implemenation Josh Cartwright (1): lockdep: selftest: fix warnings due to missing PREEMPT_RT conditionals Mike Galbraith (4): x86: UV: raw_spinlock conversion scheduling while atomic in cgroup code sunrpc: make svc_xprt_do_enqueue() use get_cpu_light() fs,btrfs: fix rt deadlock on extent_buffer->lock Paul Gortmaker (1): sas-ata/isci: dont't disable interrupts in qc_issue handler Sebastian Andrzej Siewior (3): gpio: omap: use raw locks for locking rt-mutex: avoid a NULL pointer dereference on deadlock arm/futex: disable preemption during futex_atomic_cmpxchg_inatomic() Steven Rostedt (1): create-rt-enqueue Steven Rostedt (Red Hat) (1): Linux 3.4.106-rt132-rc4 Thomas Gleixner (14): rtmutex: Simplify rtmutex_slowtrylock() rtmutex: Simplify and document try_to_take_rtmutex() rtmutex: No need to keep task ref for lock owner check rtmutex: Clarify the boost/deboost part rtmutex: Document pi chain walk rtmutex: Simplify remove_waiter() rtmutex: Confine deadlock logic to futex rtmutex: Cleanup deadlock detector debug logic rtmutex: Avoid pointless requeueing in the deadlock detection chain walk futex: Make unlock_pi more robust futex: Use futex_top_waiter() in lookup_pi_state() futex: Split out the waiter check from lookup_pi_state() futex: Split out the first waiter attachment from lookup_pi_state() futex: Simplify futex_lock_pi_atomic() and make it more robust Yadi.hu (1): ARM: enable irq in translation/section permission fault handlers Yong Zhang (1): ARM: cmpxchg: define __HAVE_ARCH_CMPXCHG for armv6 and later ---- arch/arm/include/asm/cmpxchg.h | 2 + arch/arm/include/asm/futex.h | 4 + arch/arm/mm/fault.c | 6 + arch/x86/include/asm/uv/uv_bau.h | 12 +- arch/x86/include/asm/uv/uv_hub.h | 2 +- arch/x86/kernel/apic/x2apic_uv_x.c | 12 +- arch/x86/platform/uv/tlb_uv.c | 30 +- arch/x86/platform/uv/uv_time.c | 21 +- drivers/gpio/gpio-omap.c | 76 ++--- drivers/scsi/libsas/sas_ata.c | 4 +- fs/btrfs/ctree.c | 4 +- include/linux/rtmutex.h | 8 +- include/linux/work-simple.h | 24 ++ kernel/futex.c | 407 +++++++++++-------------- kernel/rt.c | 8 +- kernel/rtmutex-debug.c | 5 +- kernel/rtmutex-debug.h | 7 +- kernel/rtmutex-tester.c | 4 +- kernel/rtmutex.c | 603 +++++++++++++++++++++++++++---------- kernel/rtmutex.h | 7 +- kernel/rtmutex_common.h | 22 +- kernel/sched/Makefile | 1 + kernel/sched/work-simple.c | 172 +++++++++++ lib/locking-selftest.c | 27 ++ localversion-rt | 2 +- mm/memcontrol.c | 7 +- net/sunrpc/svc_xprt.c | 4 +- 27 files changed, 998 insertions(+), 483 deletions(-) Diff from -rc3: --- diff --git a/localversion-rt b/localversion-rt index c70c2e0b2d32..2650b0e76d19 100644 --- a/localversion-rt +++ b/localversion-rt @@ -1 +1 @@ --rt132-rc3 +-rt132-rc4 diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 8cfff961ad4b..8c3dd645ac10 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -2016,15 +2016,13 @@ static bool consume_stock(struct mem_cgroup *memcg) { struct memcg_stock_pcp *stock; bool ret = true; - int cpu; - cpu = get_cpu_light(); - stock = &per_cpu(memcg_stock, cpu); + stock = &get_cpu_var(memcg_stock); if (memcg == stock->cached && stock->nr_pages) stock->nr_pages--; else /* need to call res_counter_charge */ ret = false; - put_cpu_light(); + put_cpu_var(memcg_stock); return ret; }