summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile4
-rw-r--r--config-arm5
-rw-r--r--config-debug2
-rw-r--r--config-generic6
-rw-r--r--config-nodebug2
-rw-r--r--config-s390x2
-rw-r--r--config-x86-generic5
-rw-r--r--config-x86_64-generic4
-rw-r--r--kernel.spec15
-rw-r--r--linux-2.6-i386-nx-emulation.patch2
-rw-r--r--linux-2.6-rcu-sched-warning.patch215
-rw-r--r--linux-2.6-utrace.patch4
12 files changed, 36 insertions, 230 deletions
diff --git a/Makefile b/Makefile
index bb2c37b3..2bba607e 100644
--- a/Makefile
+++ b/Makefile
@@ -82,7 +82,7 @@ debug:
@perl -pi -e 's/# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set/CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y/' config-nodebug
@perl -pi -e 's/# CONFIG_DMADEVICES_DEBUG is not set/CONFIG_DMADEVICES_DEBUG=y/' config-nodebug
@perl -pi -e 's/# CONFIG_DMADEVICES_VDEBUG is not set/CONFIG_DMADEVICES_VDEBUG=y/' config-nodebug
- @perl -pi -e 's/# CONFIG_CEPH_FS_PRETTYDEBUG is not set/CONFIG_CEPH_FS_PRETTYDEBUG=y/' config-nodebug
+ @perl -pi -e 's/# CONFIG_CEPH_LIB_PRETTYDEBUG is not set/CONFIG_CEPH_LIB_PRETTYDEBUG=y/' config-nodebug
@perl -pi -e 's/# CONFIG_QUOTA_DEBUG is not set/CONFIG_QUOTA_DEBUG=y/' config-nodebug
@perl -pi -e 's/# CONFIG_KGDB_KDB is not set/CONFIG_KGDB_KDB=y/' config-nodebug
@perl -pi -e 's/# CONFIG_KDB_KEYBOARD is not set/CONFIG_KDB_KEYBOARD=y/' config-nodebug
@@ -154,7 +154,7 @@ release:
@perl -pi -e 's/CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y/# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set/' config-nodebug
@perl -pi -e 's/CONFIG_DMADEVICES_DEBUG=y/# CONFIG_DMADEVICES_DEBUG is not set/' config-nodebug
@perl -pi -e 's/CONFIG_DMADEVICES_VDEBUG=y/# CONFIG_DMADEVICES_VDEBUG is not set/' config-nodebug
- @perl -pi -e 's/CONFIG_CEPH_FS_PRETTYDEBUG=y/# CONFIG_CEPH_FS_PRETTYDEBUG is not set/' config-nodebug
+ @perl -pi -e 's/CONFIG_CEPH_LIB_PRETTYDEBUG=y/# CONFIG_CEPH_LIB_PRETTYDEBUG is not set/' config-nodebug
@perl -pi -e 's/CONFIG_QUOTA_DEBUG=y/# CONFIG_QUOTA_DEBUG is not set/' config-nodebug
@perl -pi -e 's/CONFIG_CPU_NOTIFIER_ERROR_INJECT=m/# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set/' config-nodebug
#@perl -pi -e 's/CONFIG_KGDB_KDB=y/# CONFIG_KGDB_KDB is not set/' config-nodebug
diff --git a/config-arm b/config-arm
index 8d7e46a4..b10eaf46 100644
--- a/config-arm
+++ b/config-arm
@@ -122,3 +122,8 @@ CONFIG_AUTO_ZRELADDR=y
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
# CONFIG_ARM_SP805_WATCHDOG is not set
+
+CONFIG_PM_OPP=y
+
+CONFIG_SECCOMP=y
+CONFIG_STRICT_DEVMEM=y
diff --git a/config-debug b/config-debug
index 44144536..4e580e25 100644
--- a/config-debug
+++ b/config-debug
@@ -84,7 +84,7 @@ CONFIG_DMADEVICES_VDEBUG=y
CONFIG_PM_ADVANCED_DEBUG=y
-CONFIG_CEPH_FS_PRETTYDEBUG=y
+CONFIG_CEPH_LIB_PRETTYDEBUG=y
CONFIG_QUOTA_DEBUG=y
# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
diff --git a/config-generic b/config-generic
index f834847f..b9754510 100644
--- a/config-generic
+++ b/config-generic
@@ -3348,6 +3348,8 @@ CONFIG_EXOFS_FS=m
CONFIG_NILFS2_FS=m
CONFIG_LOGFS=m
CONFIG_CEPH_FS=m
+CONFIG_BLK_DEV_RBD=m
+CONFIG_CEPH_LIB=m
CONFIG_FSCACHE=m
CONFIG_FSCACHE_STATS=y
@@ -4334,3 +4336,7 @@ CONFIG_IR_STREAMZAP=m
# CONFIG_MFD_STMPE is not set
# CONFIG_MFD_MAX8998 is not set
# CONFIG_MFD_TPS6586X is not set
+
+CONFIG_SPARSE_RCU_POINTER=y
+
+# CONFIG_PM_OPP is not set
diff --git a/config-nodebug b/config-nodebug
index d2288c5e..c70de44a 100644
--- a/config-nodebug
+++ b/config-nodebug
@@ -84,7 +84,7 @@ CONFIG_DMADEVICES_VDEBUG=y
CONFIG_PM_ADVANCED_DEBUG=y
-CONFIG_CEPH_FS_PRETTYDEBUG=y
+CONFIG_CEPH_LIB_PRETTYDEBUG=y
CONFIG_QUOTA_DEBUG=y
# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
diff --git a/config-s390x b/config-s390x
index d9294023..729131a4 100644
--- a/config-s390x
+++ b/config-s390x
@@ -228,3 +228,5 @@ CONFIG_SMSGIUCV_EVENT=m
CONFIG_VMCP=y
CONFIG_ZFCP_DIF=y
+
+CONFIG_SCHED_BOOK=y
diff --git a/config-x86-generic b/config-x86-generic
index ba399356..616fae95 100644
--- a/config-x86-generic
+++ b/config-x86-generic
@@ -507,3 +507,8 @@ CONFIG_XEN_PLATFORM_PCI=m
CONFIG_IDEAPAD_ACPI=m
CONFIG_INTEL_IPS=m
+CONFIG_OLPC_XO1=m
+
+CONFIG_EDAC_MCE_INJ=m
+CONFIG_IRQ_TIME_ACCOUNTING=y
+CONFIG_X86_RESERVE_LOW=64
diff --git a/config-x86_64-generic b/config-x86_64-generic
index 713c7ef1..069aaf56 100644
--- a/config-x86_64-generic
+++ b/config-x86_64-generic
@@ -419,3 +419,7 @@ CONFIG_XEN_PLATFORM_PCI=m
# CONFIG_ACPI_QUICKSTART is not set
CONFIG_IDEAPAD_ACPI=m
CONFIG_INTEL_IPS=m
+
+CONFIG_EDAC_MCE_INJ=m
+CONFIG_IRQ_TIME_ACCOUNTING=y
+CONFIG_X86_RESERVE_LOW=64
diff --git a/kernel.spec b/kernel.spec
index 3cfabdc1..758ae524 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -6,7 +6,7 @@ Summary: The Linux kernel
# For a stable, released kernel, released_kernel should be 1. For rawhide
# and/or a kernel built from an rc or git snapshot, released_kernel should
# be 0.
-%global released_kernel 1
+%global released_kernel 0
# Save original buildid for later if it's defined
%if 0%{?buildid:1}
@@ -82,9 +82,9 @@ Summary: The Linux kernel
# The next upstream release sublevel (base_sublevel+1)
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
# The rc snapshot level
-%define rcrev 8
+%define rcrev 0
# The git snapshot level
-%define gitrev 5
+%define gitrev 2
# Set rpm version accordingly
%define rpmversion 2.6.%{upstream_sublevel}
%endif
@@ -680,8 +680,6 @@ Patch2912: linux-2.6-v4l-dvb-ir-core-update.patch
#Patch2916: lirc-staging-2.6.36-fixes.patch
Patch2917: hdpvr-ir-enable.patch
-Patch3000: linux-2.6-rcu-sched-warning.patch
-
# fs fixes
# NFSv4
@@ -1298,9 +1296,6 @@ ApplyOptionalPatch linux-2.6-v4l-dvb-experimental.patch
# enable IR receiver on Hauppauge HD PVR (v4l-dvb merge pending)
ApplyPatch hdpvr-ir-enable.patch
-# silence another rcu_reference warning
-ApplyPatch linux-2.6-rcu-sched-warning.patch
-
# Patches headed upstream
ApplyPatch disable-i8042-check-on-apple-mac.patch
@@ -1952,6 +1947,10 @@ fi
# || ||
%changelog
+* Fri Oct 22 2010 Kyle McMartin <kyle@redhat.com> 2.6.37-0.1.rc0.git2
+- Switch to tracking git snapshots of what will become 2.6.37.
+- Fix context rejects in utrace and a few other patches.
+
* Wed Oct 20 2010 Chuck Ebbert <cebbert@redhat.com> 2.6.36-1
- Linux 2.6.36
diff --git a/linux-2.6-i386-nx-emulation.patch b/linux-2.6-i386-nx-emulation.patch
index e36bb5ec..582ce627 100644
--- a/linux-2.6-i386-nx-emulation.patch
+++ b/linux-2.6-i386-nx-emulation.patch
@@ -394,8 +394,8 @@
--- a/arch/x86/mm/tlb.c
+++ b/arch/x86/mm/tlb.c
@@ -6,6 +6,7 @@
- #include <linux/interrupt.h>
#include <linux/module.h>
+ #include <linux/cpu.h>
+#include <asm/desc.h>
#include <asm/tlbflush.h>
diff --git a/linux-2.6-rcu-sched-warning.patch b/linux-2.6-rcu-sched-warning.patch
deleted file mode 100644
index ab3ff006..00000000
--- a/linux-2.6-rcu-sched-warning.patch
+++ /dev/null
@@ -1,215 +0,0 @@
-From davej Thu Sep 16 11:55:58 2010
-Return-Path: linux-kernel-owner@vger.kernel.org
-X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on gelk
-X-Spam-Level:
-X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED,
- T_RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=ham version=3.3.1
-Received: from mail.corp.redhat.com [10.5.5.52]
- by gelk with IMAP (fetchmail-6.3.17)
- for <davej@localhost> (single-drop); Thu, 16 Sep 2010 11:55:58 -0400 (EDT)
-Received: from zmta02.collab.prod.int.phx2.redhat.com (LHLO
- zmta02.collab.prod.int.phx2.redhat.com) (10.5.5.32) by
- mail04.corp.redhat.com with LMTP; Thu, 16 Sep 2010 11:51:27 -0400 (EDT)
-Received: from localhost (localhost.localdomain [127.0.0.1])
- by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 4889C9FC56;
- Thu, 16 Sep 2010 11:51:27 -0400 (EDT)
-Received: from zmta02.collab.prod.int.phx2.redhat.com ([127.0.0.1])
- by localhost (zmta02.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
- with ESMTP id 94mQrmwfCpY4; Thu, 16 Sep 2010 11:51:27 -0400 (EDT)
-Received: from int-mx03.intmail.prod.int.phx2.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.16])
- by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 0DBDB9FC4B;
- Thu, 16 Sep 2010 11:51:27 -0400 (EDT)
-Received: from mx1.redhat.com (ext-mx05.extmail.prod.ext.phx2.redhat.com [10.5.110.9])
- by int-mx03.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id o8GFpQnO003857;
- Thu, 16 Sep 2010 11:51:26 -0400
-Received: from vger.kernel.org (vger.kernel.org [209.132.180.67])
- by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o8GFFCFE031066;
- Thu, 16 Sep 2010 11:51:17 -0400
-Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
- id S1755493Ab0IPPvH (ORCPT <rfc822;jasowang@redhat.com> + 41 others);
- Thu, 16 Sep 2010 11:51:07 -0400
-Received: from casper.infradead.org ([85.118.1.10]:41834 "EHLO
- casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
- with ESMTP id S1754921Ab0IPPvC convert rfc822-to-8bit (ORCPT
- <rfc822;linux-kernel@vger.kernel.org>);
- Thu, 16 Sep 2010 11:51:02 -0400
-Received: from f199130.upc-f.chello.nl ([80.56.199.130] helo=laptop)
- by casper.infradead.org with esmtpsa (Exim 4.72 #1 (Red Hat Linux))
- id 1OwGjI-0003VE-Ux; Thu, 16 Sep 2010 15:50:33 +0000
-Received: by laptop (Postfix, from userid 1000)
- id 6DCDB100AEB1D; Thu, 16 Sep 2010 17:50:32 +0200 (CEST)
-Subject: Re: 2.6.35-stable/ppc64/p7: suspicious rcu_dereference_check()
- usage detected during 2.6.35-stable boot
-From: Peter Zijlstra <peterz@infradead.org>
-To: paulmck@linux.vnet.ibm.com
-Cc: Subrata Modak <subrata@linux.vnet.ibm.com>,
- linux-kernel <linux-kernel@vger.kernel.org>,
- Li Zefan <lizf@cn.fujitsu.com>, Linuxppc-dev <Linuxppc-dev@ozlabs.org>,
- sachinp <sachinp@linux.vnet.ibm.com>,
- DIVYA PRAKASH <dipraksh@linux.vnet.ibm.com>,
- "Valdis.Kletnieks" <Valdis.Kletnieks@vt.edu>
-In-Reply-To: <20100809161200.GC3026@linux.vnet.ibm.com>
-References: <1280739132.15317.9.camel@subratamodak.linux.ibm.com>
- <20100809161200.GC3026@linux.vnet.ibm.com>
-Content-Type: text/plain; charset="UTF-8"
-Content-Transfer-Encoding: 8BIT
-Date: Thu, 16 Sep 2010 17:50:31 +0200
-Message-ID: <1284652231.2275.569.camel@laptop>
-Mime-Version: 1.0
-Sender: linux-kernel-owner@vger.kernel.org
-Precedence: bulk
-List-ID: <linux-kernel.vger.kernel.org>
-X-Mailing-List: linux-kernel@vger.kernel.org
-X-RedHat-Spam-Score: -2.31 (RCVD_IN_DNSWL_MED,T_RP_MATCHES_RCVD)
-X-Scanned-By: MIMEDefang 2.67 on 10.5.11.16
-X-Scanned-By: MIMEDefang 2.67 on 10.5.110.9
-Status: RO
-Content-Length: 6752
-Lines: 145
-
-On Mon, 2010-08-09 at 09:12 -0700, Paul E. McKenney wrote:
-
-> > [ 0.051203] CPU0: AMD QEMU Virtual CPU version 0.12.4 stepping 03
-> > [ 0.052999] lockdep: fixing up alternatives.
-> > [ 0.054105]
-> > [ 0.054106] ===================================================
-> > [ 0.054999] [ INFO: suspicious rcu_dereference_check() usage. ]
-> > [ 0.054999] ---------------------------------------------------
-> > [ 0.054999] kernel/sched.c:616 invoked rcu_dereference_check() without protection!
-> > [ 0.054999]
-> > [ 0.054999] other info that might help us debug this:
-> > [ 0.054999]
-> > [ 0.054999]
-> > [ 0.054999] rcu_scheduler_active = 1, debug_locks = 1
-> > [ 0.054999] 3 locks held by swapper/1:
-> > [ 0.054999] #0: (cpu_add_remove_lock){+.+.+.}, at: [<ffffffff814be933>] cpu_up+0x42/0x6a
-> > [ 0.054999] #1: (cpu_hotplug.lock){+.+.+.}, at: [<ffffffff810400d8>] cpu_hotplug_begin+0x2a/0x51
-> > [ 0.054999] #2: (&rq->lock){-.-...}, at: [<ffffffff814be2f7>] init_idle+0x2f/0x113
-> > [ 0.054999]
-> > [ 0.054999] stack backtrace:
-> > [ 0.054999] Pid: 1, comm: swapper Not tainted 2.6.35 #1
-> > [ 0.054999] Call Trace:
-> > [ 0.054999] [<ffffffff81068054>] lockdep_rcu_dereference+0x9b/0xa3
-> > [ 0.054999] [<ffffffff810325c3>] task_group+0x7b/0x8a
-> > [ 0.054999] [<ffffffff810325e5>] set_task_rq+0x13/0x40
-> > [ 0.054999] [<ffffffff814be39a>] init_idle+0xd2/0x113
-> > [ 0.054999] [<ffffffff814be78a>] fork_idle+0xb8/0xc7
-> > [ 0.054999] [<ffffffff81068717>] ? mark_held_locks+0x4d/0x6b
-> > [ 0.054999] [<ffffffff814bcebd>] do_fork_idle+0x17/0x2b
-> > [ 0.054999] [<ffffffff814bc89b>] native_cpu_up+0x1c1/0x724
-> > [ 0.054999] [<ffffffff814bcea6>] ? do_fork_idle+0x0/0x2b
-> > [ 0.054999] [<ffffffff814be876>] _cpu_up+0xac/0x127
-> > [ 0.054999] [<ffffffff814be946>] cpu_up+0x55/0x6a
-> > [ 0.054999] [<ffffffff81ab562a>] kernel_init+0xe1/0x1ff
-> > [ 0.054999] [<ffffffff81003854>] kernel_thread_helper+0x4/0x10
-> > [ 0.054999] [<ffffffff814c353c>] ? restore_args+0x0/0x30
-> > [ 0.054999] [<ffffffff81ab5549>] ? kernel_init+0x0/0x1ff
-> > [ 0.054999] [<ffffffff81003850>] ? kernel_thread_helper+0x0/0x10
-> > [ 0.056074] Booting Node 0, Processors #1lockdep: fixing up alternatives.
-> > [ 0.130045] #2lockdep: fixing up alternatives.
-> > [ 0.203089] #3 Ok.
-> > [ 0.275286] Brought up 4 CPUs
-> > [ 0.276005] Total of 4 processors activated (16017.17 BogoMIPS).
->
-> This does look like a new one, thank you for reporting it!
->
-> Here is my analysis, which should at least provide some humor value to
-> those who understand the code better than I do. ;-)
->
-> So the corresponding rcu_dereference_check() is in
-> task_subsys_state_check(), and is fetching the cpu_cgroup_subsys_id
-> element of the newly created task's task->cgroups->subsys[] array.
-> The "git grep" command finds only three uses of cpu_cgroup_subsys_id,
-> but no definition.
->
-> Now, fork_idle() invokes copy_process(), which invokes cgroup_fork(),
-> which sets the child process's ->cgroups pointer to that of the parent,
-> also invoking get_css_set(), which increments the corresponding reference
-> count, doing both operations under task_lock() protection (->alloc_lock).
-> Because fork_idle() does not specify any of CLONE_NEWNS, CLONE_NEWUTS,
-> CLONE_NEWIPC, CLONE_NEWPID, or CLONE_NEWNET, copy_namespaces() should
-> not create a new namespace, and so there should be no ns_cgroup_clone().
-> We should thus retain the parent's ->cgroups pointer. And copy_process()
-> installs the new task in the various lists, so that the task is externally
-> accessible upon return.
->
-> After a non-error return from copy_process(), fork_init() invokes
-> init_idle_pid(), which does not appear to affect the task's cgroup
-> state. Next fork_init() invokes init_idle(), which in turn invokes
-> __set_task_cpu(), which invokes set_task_rq(), which calls task_group()
-> several times, which calls task_subsys_state_check(), which calls the
-> rcu_dereference_check() that complained above.
->
-> However, the result returns by rcu_dereference_check() is stored into
-> the task structure:
->
-> p->se.cfs_rq = task_group(p)->cfs_rq[cpu];
-> p->se.parent = task_group(p)->se[cpu];
->
-> This means that the corresponding structure must have been tied down with
-> a reference count or some such. If such a reference has been taken, then
-> this complaint is a false positive, and could be suppressed by putting
-> rcu_read_lock() and rcu_read_unlock() around the call to init_idle()
-> from fork_idle(). However, although, reference to the enclosing ->cgroups
-> struct css_set is held, it is not clear to me that this reference applies
-> to the structures pointed to by the ->subsys[] array, especially given
-> that the cgroup_subsys_state structures referenced by this array have
-> their own reference count, which does not appear to me to be acquired
-> by this code path.
->
-> Or are the cgroup_subsys_state structures referenced by idle tasks
-> never freed or some such?
-
-I would hope so!, the idle tasks should be part of the root cgroup,
-which is not removable.
-
-The problem is that while we do in-fact hold rq->lock, the newly spawned
-idle thread's cpu is not yet set to the correct cpu so the lockdep check
-in task_group():
-
- lockdep_is_held(&task_rq(p)->lock)
-
-will fail.
-
-But of a chicken and egg problem. Setting the cpu needs to have the cpu
-set ;-)
-
-Ingo, why do we have rq->lock there at all? The CPU isn't up and running
-yet, nothing should be touching it.
-
-Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
----
- kernel/sched.c | 12 ++++++++++++
- 1 files changed, 12 insertions(+), 0 deletions(-)
-
-diff --git a/kernel/sched.c b/kernel/sched.c
-index bd8b487..6241049 100644
---- a/kernel/sched.c
-+++ b/kernel/sched.c
-@@ -5332,7 +5332,19 @@ void __cpuinit init_idle(struct task_struct *idle, int cpu)
- idle->se.exec_start = sched_clock();
-
- cpumask_copy(&idle->cpus_allowed, cpumask_of(cpu));
-+ /*
-+ * We're having a chicken and egg problem, even though we are
-+ * holding rq->lock, the cpu isn't yet set to this cpu so the
-+ * lockdep check in task_group() will fail.
-+ *
-+ * Similar case to sched_fork(). / Alternatively we could
-+ * use task_rq_lock() here and obtain the other rq->lock.
-+ *
-+ * Silence PROVE_RCU
-+ */
-+ rcu_read_lock();
- __set_task_cpu(idle, cpu);
-+ rcu_read_unlock();
-
- rq->curr = rq->idle = idle;
- #if defined(CONFIG_SMP) && defined(__ARCH_WANT_UNLOCKED_CTXSW)
-
---
-To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-Please read the FAQ at http://www.tux.org/lkml/
-
diff --git a/linux-2.6-utrace.patch b/linux-2.6-utrace.patch
index a12357e6..d9f81cdf 100644
--- a/linux-2.6-utrace.patch
+++ b/linux-2.6-utrace.patch
@@ -1636,9 +1636,9 @@ index 2de5b1c..a283086 100644
+ kernel interface exported to kernel modules, to track events in
+ user threads, extract and change user thread state.
+
- menu "RCU Subsystem"
+ source "kernel/irq/Kconfig"
- choice
+ menu "RCU Subsystem"
diff --git a/kernel/Makefile b/kernel/Makefile
index 0b72d1a..6004913 100644
--- a/kernel/Makefile