Greetings, I got the below dmesg and the first bad commit is commit 0c44c2d0f459cd7e275242b72f500137c4fa834d Author: Peter Zijlstra Date: Wed Sep 11 15:19:24 2013 +0200 x86: Use asm goto to implement better modify_and_test() functions Linus suggested using asm goto to get rid of the typical SETcc + TEST instruction pair -- which also clobbers an extra register -- for our typical modify_and_test() functions. Because asm goto doesn't allow output fields it has to include an unconditinal memory clobber when it changes a memory variable to force a reload. Luckily all atomic ops already imply a compiler barrier to go along with their memory barrier semantics. Suggested-by: Linus Torvalds Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-0mtn9siwbeo1d33bap1422se@git.kernel.org Signed-off-by: Ingo Molnar [ 3.336040] Write protecting the kernel read-only data: 2644k [ 3.336982] NX-protecting the kernel data: 6152k [ 3.375173] BUG: unable to handle kernel paging request at 00740060 [ 3.376162] IP: [<81053fc4>] task_work_run+0x54/0xa0 [ 3.376837] *pdpt = 00000000072e1001 *pde = 0000000000000000 [ 3.377579] Oops: 0000 [#1] DEBUG_PAGEALLOC [ 3.378158] CPU: 0 PID: 85 Comm: hostname Not tainted 3.12.0-rc2-next-20130927-03100-ga0cf1ab #5 [ 3.378206] task: 8730c000 ti: 8730e000 task.ti: 8730e000 [ 3.378206] EIP: 0060:[<81053fc4>] EFLAGS: 00010206 CPU: 0 [ 3.378206] EIP is at task_work_run+0x54/0xa0 [ 3.378206] EAX: 00740060 EBX: 87309000 ECX: 00000000 EDX: 00740060 [ 3.378206] ESI: 8730c388 EDI: 8730c000 EBP: 8730ff40 ESP: 8730ff34 [ 3.378206] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 [ 3.378206] CR0: 8005003b CR2: 00740060 CR3: 072d7000 CR4: 000006b0 [ 3.378206] Stack: [ 3.378206] ffffffff 87308058 8730c000 8730ff8c 81039315 77675fb8 8105af7b 00000000 [ 3.378206] 8730ffac 00000001 6c0e41a5 61636f6c 736f686c 6f6c2e74 646c6163 8730c398 [ 3.378206] 815fc8fe 81022f40 00000000 00000000 872f1880 8730c000 8730ffa4 81039a0a [ 3.378206] Call Trace: [ 3.378206] [<81039315>] do_exit+0x2a5/0x910 [ 3.378206] [<8105af7b>] ? up_write+0x1b/0x30 [ 3.378206] [<815fc8fe>] ? restore_all+0xf/0xf [ 3.378206] [<81022f40>] ? kvm_read_and_reset_pf_reason+0x40/0x40 [ 3.378206] [<81039a0a>] do_group_exit+0x4a/0xa0 [ 3.378206] [<81039a78>] SyS_exit_group+0x18/0x20 [ 3.378206] [<815fcf50>] sysenter_do_call+0x12/0x3c [ 3.378206] Code: 36 31 c9 89 d0 0f b1 0e 39 c2 75 eb 85 d2 74 5c 8d b4 26 00 00 00 00 f3 90 8b 87 c0 03 00 00 85 c0 74 f4 31 db eb 04 89 d3 89 c2 <8b> 02 89 1a 85 c0 75 f4 eb 16 66 90 f6 47 0c 04 74 c4 b9 f0 af [ 3.378206] EIP: [<81053fc4>] task_work_run+0x54/0xa0 SS:ESP 0068:8730ff34 [ 3.378206] CR2: 0000000000740060 [ 3.394549] ---[ end trace a6f697254c888db0 ]--- git bisect start 45c4ea0c4c1b8abffb575b865243fd1c69bbecd9 v3.11 -- git bisect good 39eda2aba6be642b71f2e0ad623dcb09fd9d79cf # 22:41 20+ Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc git bisect good bff157b3ad4b9f6be0af6987fcd62deaf0f2b799 # 22:47 20+ Merge branch 'slab/next' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux git bisect good f659a4f17bbecdbad57dd5c63a1783e5ec5fd792 # 22:51 20+ Merge remote-tracking branch 'drm-intel/for-linux-next' git bisect bad 6405cd58ac5c0a6ed5f4f1308892147870b9d5cf # 22:54 0- Merge remote-tracking branch 'regmap/for-next' git bisect good 5094001bc464c12d3e04eb73a5e0d5e8436f09f7 # 22:59 20+ Merge remote-tracking branch 'omap_dss2/for-next' git bisect good 8f31410ee9917e8648c7cf7f45e22320c166998a # 23:01 20+ Merge remote-tracking branch 'spi/for-next' git bisect bad 6f014a7ea91f80f765ba700dcd1728680ba5c58e # 23:04 0- Merge remote-tracking branch 'tip/auto-latest' git bisect bad bce56fbc0f165658f7e0715fedc8d39840bae31c # 23:07 0- Merge branch 'sched/core' git bisect bad c2daa3bed53a81171cf8c1a36db798e82b91afe8 # 23:10 0- sched, x86: Provide a per-cpu preempt_count implementation git bisect good 4314895165623879937f46d767673654662b570c # 23:15 20+ sched: Micro-optimize by dropping unnecessary task_rq() calls git bisect bad 4a2b4b222743bb07fedf985b884550f2ca067ea9 # 23:18 0- sched: Introduce preempt_count accessor functions git bisect bad b021fe3e25094fbec22d0eff846d2adeee1b9736 # 23:21 0- sched, rcu: Make RCU use resched_cpu() git bisect bad 0c44c2d0f459cd7e275242b72f500137c4fa834d # 23:22 0- x86: Use asm goto to implement better modify_and_test() functions git bisect good 4314895165623879937f46d767673654662b570c # 23:25 60+ sched: Micro-optimize by dropping unnecessary task_rq() calls git bisect bad a0cf1abc25ac197dd97b857c0f6341066a8cb1cf # 23:25 0- Add linux-next specific files for 20130927 git bisect good 7dee8dff47734ee52da2cd8b8ea9736e42c5062f # 23:32 60+ Merge tag 'pm+acpi-3.12-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm git bisect bad a0cf1abc25ac197dd97b857c0f6341066a8cb1cf # 23:32 0- Add linux-next specific files for 20130927 Thanks, Fengguang