All of lore.kernel.org
 help / color / mirror / Atom feed
* rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
@ 2012-07-24 17:10 Sasha Levin
  2012-07-24 17:40 ` Paul E. McKenney
                   ` (3 more replies)
  0 siblings, 4 replies; 28+ messages in thread
From: Sasha Levin @ 2012-07-24 17:10 UTC (permalink / raw)
  To: paulmck; +Cc: linux-kernel

Hi all,

I was fuzzing with trinity inside a KVM tools guest, on the current 3.6, and stumbled on the following:

(Note that it also happens on -next).

[  215.034674] INFO: rcu_preempt detected stalls on CPUs/tasks:
[  215.035641] 	1: (0 ticks this GP) idle=3f5/140000000000001/0 drain=0 . timer=18446744073709551615
[  215.035641] 	(detected by 3, t=111886 jiffies)
[  215.035641] sending NMI to all CPUs:
[  214.959504] NMI backtrace for cpu 2
[  214.959504] CPU 2
[  214.959504] Pid: 6583, comm: trinity-child6 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
[  214.959504] RIP: 0010:[<ffffffff81149aa3>]  [<ffffffff81149aa3>] check_flags+0x93/0x1d0
[  214.959504] RSP: 0018:ffff880025175b58  EFLAGS: 00000046
[  214.959504] RAX: ffff880027910000 RBX: ffff880027910000 RCX: 0000000000000000
[  214.959504] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000001
[  214.959504] RBP: ffff880025175b58 R08: 0000000000000000 R09: 0000000000000000
[  214.959504] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
[  214.959504] R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
[  214.959504] FS:  00007f754d198700(0000) GS:ffff880029800000(0000) knlGS:0000000000000000
[  214.959504] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  214.959504] CR2: 0000000000000008 CR3: 00000000251aa000 CR4: 00000000000406e0
[  214.959504] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  214.959504] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  214.959504] Process trinity-child6 (pid: 6583, threadinfo ffff880025174000, task ffff880027910000)
[  214.959504] Stack:
[  214.959504]  ffff880025175be8 ffffffff8114e610 ffff880027910000 0000000000000000
[  214.959504]  0000000000000286 ffffffffffffff10 ffffffff8114e51d 0000000000000010
[  214.959504]  0000000000000286 0000000025175bb8 ffff880019a767c8 0000000000000286
[  214.959504] Call Trace:
[  214.959504]  [<ffffffff8114e610>] lock_acquire+0x80/0x270
[  214.959504]  [<ffffffff8114e51d>] ? lock_release+0x1ad/0x220
[  214.959504]  [<ffffffff83699dcb>] _raw_spin_lock+0x3b/0x70
[  214.959504]  [<ffffffff8124a055>] ? __d_lookup+0x145/0x2e0
[  214.959504]  [<ffffffff8124a055>] __d_lookup+0x145/0x2e0
[  214.959504]  [<ffffffff8123d216>] lookup_fast+0x136/0x240
[  214.959504]  [<ffffffff8123be8b>] ? __inode_permission+0xbb/0xd0
[  214.959504]  [<ffffffff8123bea9>] ? inode_permission+0x9/0x50
[  214.959504]  [<ffffffff8123da1c>] link_path_walk+0x22c/0x8f0
[  214.959504]  [<ffffffff8123cc43>] ? path_init+0x213/0x550
[  214.959504]  [<ffffffff81976e38>] ? __raw_spin_lock_init+0x38/0x70
[  214.959504]  [<ffffffff8123faa8>] path_openat+0x98/0x400
[  214.959504]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
[  214.959504]  [<ffffffff8123fe4d>] do_filp_open+0x3d/0xa0
[  214.959504]  [<ffffffff819770c8>] ? do_raw_spin_unlock+0xc8/0xe0
[  214.959504]  [<ffffffff8124f703>] ? alloc_fd+0x1d3/0x1f0
[  214.959504]  [<ffffffff8124f531>] ? alloc_fd+0x1/0x1f0
[  214.959504]  [<ffffffff8122f125>] do_sys_open+0x115/0x1b0
[  214.959504]  [<ffffffff8122f1dc>] sys_open+0x1c/0x20
[  214.959504]  [<ffffffff8369b77d>] system_call_fastpath+0x1a/0x1f
[  214.959504] Code: a4 26 84 e8 70 e2 f8 ff e9 25 01 00 00 0f 1f 00 44 8b 05 61 1c 1e 04 45 85 c0 75 4c 65 48 8b 04 25 00 da 00 00 8b b8 b0 08 00 00 <85> ff 75 39 e8 64 b4 81 00 85 c0 0f 84 09 01 00 00 83 3d 45 bf
[  215.026612] NMI backtrace for cpu 1
[  215.026612] CPU 1
[  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
[  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
[  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
[  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
[  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
[  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
[  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
[  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
[  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
[  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
[  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
[  215.026612] Stack:
[  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
[  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
[  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
[  215.026612] Call Trace:
[  215.026612]  <IRQ>
[  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
[  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
[  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
[  215.026612]  <EOI>
[  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
[  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
[  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
[  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
[  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
[  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
[  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
[  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
[  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
[  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
[  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
[  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
[  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
[  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
[  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
[  215.035641] NMI backtrace for cpu 3
[  215.035641] CPU 3
[  215.035641] Pid: 0, comm: swapper/3 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
[  215.035641] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
[  215.035641] RSP: 0018:ffff88000d5b5ce8  EFLAGS: 00000086
[  215.035641] RAX: 0000000000000400 RBX: 0000000000000003 RCX: 0000000000000830
[  215.035641] RDX: 0000000000000003 RSI: 0000000000000400 RDI: 0000000000000830
[  215.035641] RBP: ffff88000d5b5ce8 R08: ffffffff84edc9c0 R09: 0000000000000000
[  215.035641] R10: 000000000000739d R11: 0000000000025370 R12: ffffffff84edc9c0
[  215.035641] R13: 0000000000000003 R14: 000000000000f042 R15: 0000000000000002
[  215.035641] FS:  0000000000000000(0000) GS:ffff880035a00000(0000) knlGS:0000000000000000
[  215.035641] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  215.035641] CR2: 0000000000bc5958 CR3: 00000000278b0000 CR4: 00000000000406e0
[  215.035641] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  215.035641] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  215.035641] Process swapper/3 (pid: 0, threadinfo ffff88000d5b4000, task ffff88000d5b8000)
[  215.035641] Stack:
[  215.035641]  ffff88000d5b5d48 ffffffff81095e0d ffff88000d5b5d58 0000000000000086
[  215.035641]  0000000000000002 0008000000000008 ffff88000d5b5d68 0000000000002710
[  215.035641]  000000000001b50e 0000000000000001 ffffffff84966008 0000000000000086
[  215.035641] Call Trace:
[  215.035641]  [<ffffffff81095e0d>] __x2apic_send_IPI_mask+0xcd/0x190
[  215.035641]  [<ffffffff81095ee7>] x2apic_send_IPI_all+0x17/0x20
[  215.035641]  [<ffffffff810918c3>] arch_trigger_all_cpu_backtrace+0x63/0xa0
[  215.035641]  [<ffffffff81194513>] print_other_cpu_stall+0x223/0x290
[  215.035641]  [<ffffffff81194600>] __rcu_pending+0x80/0x200
[  215.035641]  [<ffffffff8110e1d8>] ? __atomic_notifier_call_chain+0xe8/0x120
[  215.035641]  [<ffffffff811947bf>] rcu_pending+0x3f/0x70
[  215.035641]  [<ffffffff811949c4>] rcu_prepare_for_idle+0x1d4/0x430
[  215.035641]  [<ffffffff81194e6c>] rcu_idle_enter_common+0x24c/0x400
[  215.035641]  [<ffffffff8110e1f5>] ? __atomic_notifier_call_chain+0x105/0x120
[  215.035641]  [<ffffffff8110e0f0>] ? atomic_notifier_chain_unregister+0x90/0x90
[  215.035641]  [<ffffffff8119530b>] rcu_idle_enter+0xdb/0x130
[  215.035641]  [<ffffffff81074636>] cpu_idle+0x106/0x160
[  215.035641]  [<ffffffff835d1bb0>] start_secondary+0xd0/0xd7
[  215.035641] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
[  214.997077] NMI backtrace for cpu 0
[  214.997077] CPU 0
[  214.997077] Pid: 2277, comm: kworker/0:2 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
[  214.997077] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
[  214.997077] RSP: 0018:ffff88000d803f70  EFLAGS: 00000046
[  214.997077] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
[  214.997077] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
[  214.997077] RBP: ffff88000d803f70 R08: 0000000000000000 R09: 0000000000000000
[  214.997077] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
[  214.997077] R13: ffffffff84854840 R14: 0000000000000286 R15: 00000000000493e0
[  214.997077] FS:  0000000000000000(0000) GS:ffff88000d800000(0000) knlGS:0000000000000000
[  214.997077] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[  214.997077] CR2: 0000000000000000 CR3: 0000000012f58000 CR4: 00000000000406f0
[  214.997077] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  214.997077] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[  214.997077] Process kworker/0:2 (pid: 2277, threadinfo ffff88000d782000, task ffff88000d653000)
[  214.997077] Stack:
[  214.997077]  ffff88000d803f88 ffffffff81095d07 000000000000ef80 ffff88000d803fa8
[  214.997077]  ffffffff810901c4 0000000000000002 ffff88000d653000 ffff88000d783cf0
[  214.997077]  ffffffff8369c4af ffff88000d783c48 <EOI>  ffff88000d783cf0 ffffffff8369aeb4
[  214.997077] Call Trace:
[  214.997077]  <IRQ>
[  214.997077]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
[  214.997077]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
[  214.997077]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
[  214.997077]  <EOI>
[  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
[  214.997077]  [<ffffffff8114b46d>] ? lock_is_held+0xed/0x110
[  214.997077]  [<ffffffff8313ed87>] rt_check_expire+0x117/0x300
[  214.997077]  [<ffffffff8313ef79>] rt_worker_func+0x9/0x20
[  214.997077]  [<ffffffff810fa936>] process_one_work+0x376/0x700
[  214.997077]  [<ffffffff810fa7f0>] ? process_one_work+0x230/0x700
[  214.997077]  [<ffffffff8313ef70>] ? rt_check_expire+0x300/0x300
[  214.997077]  [<ffffffff810fb508>] ? worker_thread+0x48/0x320
[  214.997077]  [<ffffffff810fb69c>] worker_thread+0x1dc/0x320
[  214.997077]  [<ffffffff810fb4c0>] ? manage_workers.isra.11+0x120/0x120
[  214.997077]  [<ffffffff8110607d>] kthread+0xad/0xc0
[  214.997077]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
[  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
[  214.997077]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
[  214.997077]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
[  214.997077] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-24 17:10 rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6 Sasha Levin
@ 2012-07-24 17:40 ` Paul E. McKenney
  2012-07-24 20:55   ` Sasha Levin
  2012-07-25  8:36 ` Michael Wang
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 28+ messages in thread
From: Paul E. McKenney @ 2012-07-24 17:40 UTC (permalink / raw)
  To: Sasha Levin; +Cc: linux-kernel

On Tue, Jul 24, 2012 at 07:10:49PM +0200, Sasha Levin wrote:
> Hi all,
> 
> I was fuzzing with trinity inside a KVM tools guest, on the current 3.6, and stumbled on the following:
> 
> (Note that it also happens on -next).
> 
> [  215.034674] INFO: rcu_preempt detected stalls on CPUs/tasks:
> [  215.035641] 	1: (0 ticks this GP) idle=3f5/140000000000001/0 drain=0 . timer=18446744073709551615

OK, so this says that the CPU is awake, so let's look at CPU 1's stack.
It also says that the CPU has not taken any scheduling-globk interrupts
for the past 100K+ jiffies, indicating that the CPU has interrupts
disabled.

> [  215.035641] 	(detected by 3, t=111886 jiffies)
> [  215.035641] sending NMI to all CPUs:
> [  214.959504] NMI backtrace for cpu 2
> [  214.959504] CPU 2
> [  214.959504] Pid: 6583, comm: trinity-child6 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  214.959504] RIP: 0010:[<ffffffff81149aa3>]  [<ffffffff81149aa3>] check_flags+0x93/0x1d0
> [  214.959504] RSP: 0018:ffff880025175b58  EFLAGS: 00000046
> [  214.959504] RAX: ffff880027910000 RBX: ffff880027910000 RCX: 0000000000000000
> [  214.959504] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000001
> [  214.959504] RBP: ffff880025175b58 R08: 0000000000000000 R09: 0000000000000000
> [  214.959504] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [  214.959504] R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
> [  214.959504] FS:  00007f754d198700(0000) GS:ffff880029800000(0000) knlGS:0000000000000000
> [  214.959504] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  214.959504] CR2: 0000000000000008 CR3: 00000000251aa000 CR4: 00000000000406e0
> [  214.959504] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  214.959504] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  214.959504] Process trinity-child6 (pid: 6583, threadinfo ffff880025174000, task ffff880027910000)
> [  214.959504] Stack:
> [  214.959504]  ffff880025175be8 ffffffff8114e610 ffff880027910000 0000000000000000
> [  214.959504]  0000000000000286 ffffffffffffff10 ffffffff8114e51d 0000000000000010
> [  214.959504]  0000000000000286 0000000025175bb8 ffff880019a767c8 0000000000000286
> [  214.959504] Call Trace:
> [  214.959504]  [<ffffffff8114e610>] lock_acquire+0x80/0x270
> [  214.959504]  [<ffffffff8114e51d>] ? lock_release+0x1ad/0x220
> [  214.959504]  [<ffffffff83699dcb>] _raw_spin_lock+0x3b/0x70
> [  214.959504]  [<ffffffff8124a055>] ? __d_lookup+0x145/0x2e0
> [  214.959504]  [<ffffffff8124a055>] __d_lookup+0x145/0x2e0
> [  214.959504]  [<ffffffff8123d216>] lookup_fast+0x136/0x240
> [  214.959504]  [<ffffffff8123be8b>] ? __inode_permission+0xbb/0xd0
> [  214.959504]  [<ffffffff8123bea9>] ? inode_permission+0x9/0x50
> [  214.959504]  [<ffffffff8123da1c>] link_path_walk+0x22c/0x8f0
> [  214.959504]  [<ffffffff8123cc43>] ? path_init+0x213/0x550
> [  214.959504]  [<ffffffff81976e38>] ? __raw_spin_lock_init+0x38/0x70
> [  214.959504]  [<ffffffff8123faa8>] path_openat+0x98/0x400
> [  214.959504]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.959504]  [<ffffffff8123fe4d>] do_filp_open+0x3d/0xa0
> [  214.959504]  [<ffffffff819770c8>] ? do_raw_spin_unlock+0xc8/0xe0
> [  214.959504]  [<ffffffff8124f703>] ? alloc_fd+0x1d3/0x1f0
> [  214.959504]  [<ffffffff8124f531>] ? alloc_fd+0x1/0x1f0
> [  214.959504]  [<ffffffff8122f125>] do_sys_open+0x115/0x1b0
> [  214.959504]  [<ffffffff8122f1dc>] sys_open+0x1c/0x20
> [  214.959504]  [<ffffffff8369b77d>] system_call_fastpath+0x1a/0x1f
> [  214.959504] Code: a4 26 84 e8 70 e2 f8 ff e9 25 01 00 00 0f 1f 00 44 8b 05 61 1c 1e 04 45 85 c0 75 4c 65 48 8b 04 25 00 da 00 00 8b b8 b0 08 00 00 <85> ff 75 39 e8 64 b4 81 00 85 c0 0f 84 09 01 00 00 83 3d 45 bf

And this is CPU 1:

> [  215.026612] NMI backtrace for cpu 1
> [  215.026612] CPU 1
> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046

The interrupt flag is zero, so interrupts are disabled.  So my question
to you is "Why did do_pageattr_test() or one of the functions it called
disable interrupts for more than one hundred thousand jiffies?"

I can't see where it is disabling interrupts, but the EFLAGS register
above does indicate that they are disabled.  Or is this something useless
that is just telling us that receiving the NMI disabled interrupts?

							Thanx, Paul

> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
> [  215.026612] Stack:
> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
> [  215.026612] Call Trace:
> [  215.026612]  <IRQ>
> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  215.026612]  <EOI>
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> [  215.035641] NMI backtrace for cpu 3
> [  215.035641] CPU 3
> [  215.035641] Pid: 0, comm: swapper/3 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.035641] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.035641] RSP: 0018:ffff88000d5b5ce8  EFLAGS: 00000086
> [  215.035641] RAX: 0000000000000400 RBX: 0000000000000003 RCX: 0000000000000830
> [  215.035641] RDX: 0000000000000003 RSI: 0000000000000400 RDI: 0000000000000830
> [  215.035641] RBP: ffff88000d5b5ce8 R08: ffffffff84edc9c0 R09: 0000000000000000
> [  215.035641] R10: 000000000000739d R11: 0000000000025370 R12: ffffffff84edc9c0
> [  215.035641] R13: 0000000000000003 R14: 000000000000f042 R15: 0000000000000002
> [  215.035641] FS:  0000000000000000(0000) GS:ffff880035a00000(0000) knlGS:0000000000000000
> [  215.035641] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.035641] CR2: 0000000000bc5958 CR3: 00000000278b0000 CR4: 00000000000406e0
> [  215.035641] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.035641] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.035641] Process swapper/3 (pid: 0, threadinfo ffff88000d5b4000, task ffff88000d5b8000)
> [  215.035641] Stack:
> [  215.035641]  ffff88000d5b5d48 ffffffff81095e0d ffff88000d5b5d58 0000000000000086
> [  215.035641]  0000000000000002 0008000000000008 ffff88000d5b5d68 0000000000002710
> [  215.035641]  000000000001b50e 0000000000000001 ffffffff84966008 0000000000000086
> [  215.035641] Call Trace:
> [  215.035641]  [<ffffffff81095e0d>] __x2apic_send_IPI_mask+0xcd/0x190
> [  215.035641]  [<ffffffff81095ee7>] x2apic_send_IPI_all+0x17/0x20
> [  215.035641]  [<ffffffff810918c3>] arch_trigger_all_cpu_backtrace+0x63/0xa0
> [  215.035641]  [<ffffffff81194513>] print_other_cpu_stall+0x223/0x290
> [  215.035641]  [<ffffffff81194600>] __rcu_pending+0x80/0x200
> [  215.035641]  [<ffffffff8110e1d8>] ? __atomic_notifier_call_chain+0xe8/0x120
> [  215.035641]  [<ffffffff811947bf>] rcu_pending+0x3f/0x70
> [  215.035641]  [<ffffffff811949c4>] rcu_prepare_for_idle+0x1d4/0x430
> [  215.035641]  [<ffffffff81194e6c>] rcu_idle_enter_common+0x24c/0x400
> [  215.035641]  [<ffffffff8110e1f5>] ? __atomic_notifier_call_chain+0x105/0x120
> [  215.035641]  [<ffffffff8110e0f0>] ? atomic_notifier_chain_unregister+0x90/0x90
> [  215.035641]  [<ffffffff8119530b>] rcu_idle_enter+0xdb/0x130
> [  215.035641]  [<ffffffff81074636>] cpu_idle+0x106/0x160
> [  215.035641]  [<ffffffff835d1bb0>] start_secondary+0xd0/0xd7
> [  215.035641] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> [  214.997077] NMI backtrace for cpu 0
> [  214.997077] CPU 0
> [  214.997077] Pid: 2277, comm: kworker/0:2 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  214.997077] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  214.997077] RSP: 0018:ffff88000d803f70  EFLAGS: 00000046
> [  214.997077] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  214.997077] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  214.997077] RBP: ffff88000d803f70 R08: 0000000000000000 R09: 0000000000000000
> [  214.997077] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [  214.997077] R13: ffffffff84854840 R14: 0000000000000286 R15: 00000000000493e0
> [  214.997077] FS:  0000000000000000(0000) GS:ffff88000d800000(0000) knlGS:0000000000000000
> [  214.997077] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  214.997077] CR2: 0000000000000000 CR3: 0000000012f58000 CR4: 00000000000406f0
> [  214.997077] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  214.997077] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  214.997077] Process kworker/0:2 (pid: 2277, threadinfo ffff88000d782000, task ffff88000d653000)
> [  214.997077] Stack:
> [  214.997077]  ffff88000d803f88 ffffffff81095d07 000000000000ef80 ffff88000d803fa8
> [  214.997077]  ffffffff810901c4 0000000000000002 ffff88000d653000 ffff88000d783cf0
> [  214.997077]  ffffffff8369c4af ffff88000d783c48 <EOI>  ffff88000d783cf0 ffffffff8369aeb4
> [  214.997077] Call Trace:
> [  214.997077]  <IRQ>
> [  214.997077]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  214.997077]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  214.997077]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  214.997077]  <EOI>
> [  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.997077]  [<ffffffff8114b46d>] ? lock_is_held+0xed/0x110
> [  214.997077]  [<ffffffff8313ed87>] rt_check_expire+0x117/0x300
> [  214.997077]  [<ffffffff8313ef79>] rt_worker_func+0x9/0x20
> [  214.997077]  [<ffffffff810fa936>] process_one_work+0x376/0x700
> [  214.997077]  [<ffffffff810fa7f0>] ? process_one_work+0x230/0x700
> [  214.997077]  [<ffffffff8313ef70>] ? rt_check_expire+0x300/0x300
> [  214.997077]  [<ffffffff810fb508>] ? worker_thread+0x48/0x320
> [  214.997077]  [<ffffffff810fb69c>] worker_thread+0x1dc/0x320
> [  214.997077]  [<ffffffff810fb4c0>] ? manage_workers.isra.11+0x120/0x120
> [  214.997077]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  214.997077]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.997077]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  214.997077]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  214.997077] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-24 17:40 ` Paul E. McKenney
@ 2012-07-24 20:55   ` Sasha Levin
  0 siblings, 0 replies; 28+ messages in thread
From: Sasha Levin @ 2012-07-24 20:55 UTC (permalink / raw)
  To: paulmck; +Cc: linux-kernel

On 07/24/2012 07:40 PM, Paul E. McKenney wrote:
> The interrupt flag is zero, so interrupts are disabled.  So my question
> to you is "Why did do_pageattr_test() or one of the functions it called
> disable interrupts for more than one hundred thousand jiffies?"
> 
> I can't see where it is disabling interrupts, but the EFLAGS register
> above does indicate that they are disabled.  Or is this something useless
> that is just telling us that receiving the NMI disabled interrupts?

Doesn't the stack of CPU1 show that it's currently handling an interrupt:

[  215.026612] Call Trace:
[  215.026612]  <IRQ>
[  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
[  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
[  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
[  215.026612]  <EOI>

Or am I reading that wrong?

In that case, it had nothing to do with pageattr which just happened to be on the stack at that time.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-24 17:10 rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6 Sasha Levin
  2012-07-24 17:40 ` Paul E. McKenney
@ 2012-07-25  8:36 ` Michael Wang
  2012-07-25 21:16   ` Sasha Levin
  2012-07-25  9:06 ` Michael Wang
  2012-07-26 11:42 ` Avi Kivity
  3 siblings, 1 reply; 28+ messages in thread
From: Michael Wang @ 2012-07-25  8:36 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/25/2012 01:10 AM, Sasha Levin wrote:
> Hi all,
> 
> I was fuzzing with trinity inside a KVM tools guest, on the current 3.6, and stumbled on the following:

Hi, Sasha

I'm currently trying to reproduce this issue on my machine but keep
failing, it's really make me think the issue has been solved...

Could you please provide more info about you environment? like the
.config and is there some plugin devices which is rarely.

It will be better if you can make your test environment as clean as
possible (remove the devices which could be remove) and then see whether
the issue still exist.

Regards,
Michael Wang

> 
> (Note that it also happens on -next).
> 
> [  215.034674] INFO: rcu_preempt detected stalls on CPUs/tasks:
> [  215.035641] 	1: (0 ticks this GP) idle=3f5/140000000000001/0 drain=0 . timer=18446744073709551615
> [  215.035641] 	(detected by 3, t=111886 jiffies)
> [  215.035641] sending NMI to all CPUs:
> [  214.959504] NMI backtrace for cpu 2
> [  214.959504] CPU 2
> [  214.959504] Pid: 6583, comm: trinity-child6 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  214.959504] RIP: 0010:[<ffffffff81149aa3>]  [<ffffffff81149aa3>] check_flags+0x93/0x1d0
> [  214.959504] RSP: 0018:ffff880025175b58  EFLAGS: 00000046
> [  214.959504] RAX: ffff880027910000 RBX: ffff880027910000 RCX: 0000000000000000
> [  214.959504] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000001
> [  214.959504] RBP: ffff880025175b58 R08: 0000000000000000 R09: 0000000000000000
> [  214.959504] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [  214.959504] R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
> [  214.959504] FS:  00007f754d198700(0000) GS:ffff880029800000(0000) knlGS:0000000000000000
> [  214.959504] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  214.959504] CR2: 0000000000000008 CR3: 00000000251aa000 CR4: 00000000000406e0
> [  214.959504] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  214.959504] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  214.959504] Process trinity-child6 (pid: 6583, threadinfo ffff880025174000, task ffff880027910000)
> [  214.959504] Stack:
> [  214.959504]  ffff880025175be8 ffffffff8114e610 ffff880027910000 0000000000000000
> [  214.959504]  0000000000000286 ffffffffffffff10 ffffffff8114e51d 0000000000000010
> [  214.959504]  0000000000000286 0000000025175bb8 ffff880019a767c8 0000000000000286
> [  214.959504] Call Trace:
> [  214.959504]  [<ffffffff8114e610>] lock_acquire+0x80/0x270
> [  214.959504]  [<ffffffff8114e51d>] ? lock_release+0x1ad/0x220
> [  214.959504]  [<ffffffff83699dcb>] _raw_spin_lock+0x3b/0x70
> [  214.959504]  [<ffffffff8124a055>] ? __d_lookup+0x145/0x2e0
> [  214.959504]  [<ffffffff8124a055>] __d_lookup+0x145/0x2e0
> [  214.959504]  [<ffffffff8123d216>] lookup_fast+0x136/0x240
> [  214.959504]  [<ffffffff8123be8b>] ? __inode_permission+0xbb/0xd0
> [  214.959504]  [<ffffffff8123bea9>] ? inode_permission+0x9/0x50
> [  214.959504]  [<ffffffff8123da1c>] link_path_walk+0x22c/0x8f0
> [  214.959504]  [<ffffffff8123cc43>] ? path_init+0x213/0x550
> [  214.959504]  [<ffffffff81976e38>] ? __raw_spin_lock_init+0x38/0x70
> [  214.959504]  [<ffffffff8123faa8>] path_openat+0x98/0x400
> [  214.959504]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.959504]  [<ffffffff8123fe4d>] do_filp_open+0x3d/0xa0
> [  214.959504]  [<ffffffff819770c8>] ? do_raw_spin_unlock+0xc8/0xe0
> [  214.959504]  [<ffffffff8124f703>] ? alloc_fd+0x1d3/0x1f0
> [  214.959504]  [<ffffffff8124f531>] ? alloc_fd+0x1/0x1f0
> [  214.959504]  [<ffffffff8122f125>] do_sys_open+0x115/0x1b0
> [  214.959504]  [<ffffffff8122f1dc>] sys_open+0x1c/0x20
> [  214.959504]  [<ffffffff8369b77d>] system_call_fastpath+0x1a/0x1f
> [  214.959504] Code: a4 26 84 e8 70 e2 f8 ff e9 25 01 00 00 0f 1f 00 44 8b 05 61 1c 1e 04 45 85 c0 75 4c 65 48 8b 04 25 00 da 00 00 8b b8 b0 08 00 00 <85> ff 75 39 e8 64 b4 81 00 85 c0 0f 84 09 01 00 00 83 3d 45 bf
> [  215.026612] NMI backtrace for cpu 1
> [  215.026612] CPU 1
> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
> [  215.026612] Stack:
> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
> [  215.026612] Call Trace:
> [  215.026612]  <IRQ>
> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  215.026612]  <EOI>
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> [  215.035641] NMI backtrace for cpu 3
> [  215.035641] CPU 3
> [  215.035641] Pid: 0, comm: swapper/3 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.035641] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.035641] RSP: 0018:ffff88000d5b5ce8  EFLAGS: 00000086
> [  215.035641] RAX: 0000000000000400 RBX: 0000000000000003 RCX: 0000000000000830
> [  215.035641] RDX: 0000000000000003 RSI: 0000000000000400 RDI: 0000000000000830
> [  215.035641] RBP: ffff88000d5b5ce8 R08: ffffffff84edc9c0 R09: 0000000000000000
> [  215.035641] R10: 000000000000739d R11: 0000000000025370 R12: ffffffff84edc9c0
> [  215.035641] R13: 0000000000000003 R14: 000000000000f042 R15: 0000000000000002
> [  215.035641] FS:  0000000000000000(0000) GS:ffff880035a00000(0000) knlGS:0000000000000000
> [  215.035641] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.035641] CR2: 0000000000bc5958 CR3: 00000000278b0000 CR4: 00000000000406e0
> [  215.035641] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.035641] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.035641] Process swapper/3 (pid: 0, threadinfo ffff88000d5b4000, task ffff88000d5b8000)
> [  215.035641] Stack:
> [  215.035641]  ffff88000d5b5d48 ffffffff81095e0d ffff88000d5b5d58 0000000000000086
> [  215.035641]  0000000000000002 0008000000000008 ffff88000d5b5d68 0000000000002710
> [  215.035641]  000000000001b50e 0000000000000001 ffffffff84966008 0000000000000086
> [  215.035641] Call Trace:
> [  215.035641]  [<ffffffff81095e0d>] __x2apic_send_IPI_mask+0xcd/0x190
> [  215.035641]  [<ffffffff81095ee7>] x2apic_send_IPI_all+0x17/0x20
> [  215.035641]  [<ffffffff810918c3>] arch_trigger_all_cpu_backtrace+0x63/0xa0
> [  215.035641]  [<ffffffff81194513>] print_other_cpu_stall+0x223/0x290
> [  215.035641]  [<ffffffff81194600>] __rcu_pending+0x80/0x200
> [  215.035641]  [<ffffffff8110e1d8>] ? __atomic_notifier_call_chain+0xe8/0x120
> [  215.035641]  [<ffffffff811947bf>] rcu_pending+0x3f/0x70
> [  215.035641]  [<ffffffff811949c4>] rcu_prepare_for_idle+0x1d4/0x430
> [  215.035641]  [<ffffffff81194e6c>] rcu_idle_enter_common+0x24c/0x400
> [  215.035641]  [<ffffffff8110e1f5>] ? __atomic_notifier_call_chain+0x105/0x120
> [  215.035641]  [<ffffffff8110e0f0>] ? atomic_notifier_chain_unregister+0x90/0x90
> [  215.035641]  [<ffffffff8119530b>] rcu_idle_enter+0xdb/0x130
> [  215.035641]  [<ffffffff81074636>] cpu_idle+0x106/0x160
> [  215.035641]  [<ffffffff835d1bb0>] start_secondary+0xd0/0xd7
> [  215.035641] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> [  214.997077] NMI backtrace for cpu 0
> [  214.997077] CPU 0
> [  214.997077] Pid: 2277, comm: kworker/0:2 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  214.997077] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  214.997077] RSP: 0018:ffff88000d803f70  EFLAGS: 00000046
> [  214.997077] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  214.997077] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  214.997077] RBP: ffff88000d803f70 R08: 0000000000000000 R09: 0000000000000000
> [  214.997077] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [  214.997077] R13: ffffffff84854840 R14: 0000000000000286 R15: 00000000000493e0
> [  214.997077] FS:  0000000000000000(0000) GS:ffff88000d800000(0000) knlGS:0000000000000000
> [  214.997077] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  214.997077] CR2: 0000000000000000 CR3: 0000000012f58000 CR4: 00000000000406f0
> [  214.997077] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  214.997077] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  214.997077] Process kworker/0:2 (pid: 2277, threadinfo ffff88000d782000, task ffff88000d653000)
> [  214.997077] Stack:
> [  214.997077]  ffff88000d803f88 ffffffff81095d07 000000000000ef80 ffff88000d803fa8
> [  214.997077]  ffffffff810901c4 0000000000000002 ffff88000d653000 ffff88000d783cf0
> [  214.997077]  ffffffff8369c4af ffff88000d783c48 <EOI>  ffff88000d783cf0 ffffffff8369aeb4
> [  214.997077] Call Trace:
> [  214.997077]  <IRQ>
> [  214.997077]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  214.997077]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  214.997077]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  214.997077]  <EOI>
> [  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.997077]  [<ffffffff8114b46d>] ? lock_is_held+0xed/0x110
> [  214.997077]  [<ffffffff8313ed87>] rt_check_expire+0x117/0x300
> [  214.997077]  [<ffffffff8313ef79>] rt_worker_func+0x9/0x20
> [  214.997077]  [<ffffffff810fa936>] process_one_work+0x376/0x700
> [  214.997077]  [<ffffffff810fa7f0>] ? process_one_work+0x230/0x700
> [  214.997077]  [<ffffffff8313ef70>] ? rt_check_expire+0x300/0x300
> [  214.997077]  [<ffffffff810fb508>] ? worker_thread+0x48/0x320
> [  214.997077]  [<ffffffff810fb69c>] worker_thread+0x1dc/0x320
> [  214.997077]  [<ffffffff810fb4c0>] ? manage_workers.isra.11+0x120/0x120
> [  214.997077]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  214.997077]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.997077]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  214.997077]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  214.997077] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> --
> 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/
> 



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-24 17:10 rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6 Sasha Levin
  2012-07-24 17:40 ` Paul E. McKenney
  2012-07-25  8:36 ` Michael Wang
@ 2012-07-25  9:06 ` Michael Wang
  2012-07-26 11:42 ` Avi Kivity
  3 siblings, 0 replies; 28+ messages in thread
From: Michael Wang @ 2012-07-25  9:06 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/25/2012 01:10 AM, Sasha Levin wrote:
> Hi all,
> 
> I was fuzzing with trinity inside a KVM tools guest, on the current 3.6, and stumbled on the following:

And is this a host dmesg or from the guest?
Could you please provide more details about your testing environment?

Thanks,
Michael Wang

> 
> (Note that it also happens on -next).
> 
> [  215.034674] INFO: rcu_preempt detected stalls on CPUs/tasks:
> [  215.035641] 	1: (0 ticks this GP) idle=3f5/140000000000001/0 drain=0 . timer=18446744073709551615
> [  215.035641] 	(detected by 3, t=111886 jiffies)
> [  215.035641] sending NMI to all CPUs:
> [  214.959504] NMI backtrace for cpu 2
> [  214.959504] CPU 2
> [  214.959504] Pid: 6583, comm: trinity-child6 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  214.959504] RIP: 0010:[<ffffffff81149aa3>]  [<ffffffff81149aa3>] check_flags+0x93/0x1d0
> [  214.959504] RSP: 0018:ffff880025175b58  EFLAGS: 00000046
> [  214.959504] RAX: ffff880027910000 RBX: ffff880027910000 RCX: 0000000000000000
> [  214.959504] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000001
> [  214.959504] RBP: ffff880025175b58 R08: 0000000000000000 R09: 0000000000000000
> [  214.959504] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [  214.959504] R13: 0000000000000002 R14: 0000000000000000 R15: 0000000000000000
> [  214.959504] FS:  00007f754d198700(0000) GS:ffff880029800000(0000) knlGS:0000000000000000
> [  214.959504] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  214.959504] CR2: 0000000000000008 CR3: 00000000251aa000 CR4: 00000000000406e0
> [  214.959504] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  214.959504] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  214.959504] Process trinity-child6 (pid: 6583, threadinfo ffff880025174000, task ffff880027910000)
> [  214.959504] Stack:
> [  214.959504]  ffff880025175be8 ffffffff8114e610 ffff880027910000 0000000000000000
> [  214.959504]  0000000000000286 ffffffffffffff10 ffffffff8114e51d 0000000000000010
> [  214.959504]  0000000000000286 0000000025175bb8 ffff880019a767c8 0000000000000286
> [  214.959504] Call Trace:
> [  214.959504]  [<ffffffff8114e610>] lock_acquire+0x80/0x270
> [  214.959504]  [<ffffffff8114e51d>] ? lock_release+0x1ad/0x220
> [  214.959504]  [<ffffffff83699dcb>] _raw_spin_lock+0x3b/0x70
> [  214.959504]  [<ffffffff8124a055>] ? __d_lookup+0x145/0x2e0
> [  214.959504]  [<ffffffff8124a055>] __d_lookup+0x145/0x2e0
> [  214.959504]  [<ffffffff8123d216>] lookup_fast+0x136/0x240
> [  214.959504]  [<ffffffff8123be8b>] ? __inode_permission+0xbb/0xd0
> [  214.959504]  [<ffffffff8123bea9>] ? inode_permission+0x9/0x50
> [  214.959504]  [<ffffffff8123da1c>] link_path_walk+0x22c/0x8f0
> [  214.959504]  [<ffffffff8123cc43>] ? path_init+0x213/0x550
> [  214.959504]  [<ffffffff81976e38>] ? __raw_spin_lock_init+0x38/0x70
> [  214.959504]  [<ffffffff8123faa8>] path_openat+0x98/0x400
> [  214.959504]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.959504]  [<ffffffff8123fe4d>] do_filp_open+0x3d/0xa0
> [  214.959504]  [<ffffffff819770c8>] ? do_raw_spin_unlock+0xc8/0xe0
> [  214.959504]  [<ffffffff8124f703>] ? alloc_fd+0x1d3/0x1f0
> [  214.959504]  [<ffffffff8124f531>] ? alloc_fd+0x1/0x1f0
> [  214.959504]  [<ffffffff8122f125>] do_sys_open+0x115/0x1b0
> [  214.959504]  [<ffffffff8122f1dc>] sys_open+0x1c/0x20
> [  214.959504]  [<ffffffff8369b77d>] system_call_fastpath+0x1a/0x1f
> [  214.959504] Code: a4 26 84 e8 70 e2 f8 ff e9 25 01 00 00 0f 1f 00 44 8b 05 61 1c 1e 04 45 85 c0 75 4c 65 48 8b 04 25 00 da 00 00 8b b8 b0 08 00 00 <85> ff 75 39 e8 64 b4 81 00 85 c0 0f 84 09 01 00 00 83 3d 45 bf
> [  215.026612] NMI backtrace for cpu 1
> [  215.026612] CPU 1
> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
> [  215.026612] Stack:
> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
> [  215.026612] Call Trace:
> [  215.026612]  <IRQ>
> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  215.026612]  <EOI>
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> [  215.035641] NMI backtrace for cpu 3
> [  215.035641] CPU 3
> [  215.035641] Pid: 0, comm: swapper/3 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.035641] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.035641] RSP: 0018:ffff88000d5b5ce8  EFLAGS: 00000086
> [  215.035641] RAX: 0000000000000400 RBX: 0000000000000003 RCX: 0000000000000830
> [  215.035641] RDX: 0000000000000003 RSI: 0000000000000400 RDI: 0000000000000830
> [  215.035641] RBP: ffff88000d5b5ce8 R08: ffffffff84edc9c0 R09: 0000000000000000
> [  215.035641] R10: 000000000000739d R11: 0000000000025370 R12: ffffffff84edc9c0
> [  215.035641] R13: 0000000000000003 R14: 000000000000f042 R15: 0000000000000002
> [  215.035641] FS:  0000000000000000(0000) GS:ffff880035a00000(0000) knlGS:0000000000000000
> [  215.035641] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.035641] CR2: 0000000000bc5958 CR3: 00000000278b0000 CR4: 00000000000406e0
> [  215.035641] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.035641] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.035641] Process swapper/3 (pid: 0, threadinfo ffff88000d5b4000, task ffff88000d5b8000)
> [  215.035641] Stack:
> [  215.035641]  ffff88000d5b5d48 ffffffff81095e0d ffff88000d5b5d58 0000000000000086
> [  215.035641]  0000000000000002 0008000000000008 ffff88000d5b5d68 0000000000002710
> [  215.035641]  000000000001b50e 0000000000000001 ffffffff84966008 0000000000000086
> [  215.035641] Call Trace:
> [  215.035641]  [<ffffffff81095e0d>] __x2apic_send_IPI_mask+0xcd/0x190
> [  215.035641]  [<ffffffff81095ee7>] x2apic_send_IPI_all+0x17/0x20
> [  215.035641]  [<ffffffff810918c3>] arch_trigger_all_cpu_backtrace+0x63/0xa0
> [  215.035641]  [<ffffffff81194513>] print_other_cpu_stall+0x223/0x290
> [  215.035641]  [<ffffffff81194600>] __rcu_pending+0x80/0x200
> [  215.035641]  [<ffffffff8110e1d8>] ? __atomic_notifier_call_chain+0xe8/0x120
> [  215.035641]  [<ffffffff811947bf>] rcu_pending+0x3f/0x70
> [  215.035641]  [<ffffffff811949c4>] rcu_prepare_for_idle+0x1d4/0x430
> [  215.035641]  [<ffffffff81194e6c>] rcu_idle_enter_common+0x24c/0x400
> [  215.035641]  [<ffffffff8110e1f5>] ? __atomic_notifier_call_chain+0x105/0x120
> [  215.035641]  [<ffffffff8110e0f0>] ? atomic_notifier_chain_unregister+0x90/0x90
> [  215.035641]  [<ffffffff8119530b>] rcu_idle_enter+0xdb/0x130
> [  215.035641]  [<ffffffff81074636>] cpu_idle+0x106/0x160
> [  215.035641]  [<ffffffff835d1bb0>] start_secondary+0xd0/0xd7
> [  215.035641] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> [  214.997077] NMI backtrace for cpu 0
> [  214.997077] CPU 0
> [  214.997077] Pid: 2277, comm: kworker/0:2 Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  214.997077] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  214.997077] RSP: 0018:ffff88000d803f70  EFLAGS: 00000046
> [  214.997077] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  214.997077] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  214.997077] RBP: ffff88000d803f70 R08: 0000000000000000 R09: 0000000000000000
> [  214.997077] R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000000
> [  214.997077] R13: ffffffff84854840 R14: 0000000000000286 R15: 00000000000493e0
> [  214.997077] FS:  0000000000000000(0000) GS:ffff88000d800000(0000) knlGS:0000000000000000
> [  214.997077] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  214.997077] CR2: 0000000000000000 CR3: 0000000012f58000 CR4: 00000000000406f0
> [  214.997077] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  214.997077] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  214.997077] Process kworker/0:2 (pid: 2277, threadinfo ffff88000d782000, task ffff88000d653000)
> [  214.997077] Stack:
> [  214.997077]  ffff88000d803f88 ffffffff81095d07 000000000000ef80 ffff88000d803fa8
> [  214.997077]  ffffffff810901c4 0000000000000002 ffff88000d653000 ffff88000d783cf0
> [  214.997077]  ffffffff8369c4af ffff88000d783c48 <EOI>  ffff88000d783cf0 ffffffff8369aeb4
> [  214.997077] Call Trace:
> [  214.997077]  <IRQ>
> [  214.997077]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  214.997077]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  214.997077]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  214.997077]  <EOI>
> [  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.997077]  [<ffffffff8114b46d>] ? lock_is_held+0xed/0x110
> [  214.997077]  [<ffffffff8313ed87>] rt_check_expire+0x117/0x300
> [  214.997077]  [<ffffffff8313ef79>] rt_worker_func+0x9/0x20
> [  214.997077]  [<ffffffff810fa936>] process_one_work+0x376/0x700
> [  214.997077]  [<ffffffff810fa7f0>] ? process_one_work+0x230/0x700
> [  214.997077]  [<ffffffff8313ef70>] ? rt_check_expire+0x300/0x300
> [  214.997077]  [<ffffffff810fb508>] ? worker_thread+0x48/0x320
> [  214.997077]  [<ffffffff810fb69c>] worker_thread+0x1dc/0x320
> [  214.997077]  [<ffffffff810fb4c0>] ? manage_workers.isra.11+0x120/0x120
> [  214.997077]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  214.997077]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  214.997077]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  214.997077]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  214.997077]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  214.997077] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> --
> 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/
> 



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-25  8:36 ` Michael Wang
@ 2012-07-25 21:16   ` Sasha Levin
  2012-07-26  5:10     ` Michael Wang
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-07-25 21:16 UTC (permalink / raw)
  To: Michael Wang; +Cc: paulmck, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1501 bytes --]

On 07/25/2012 10:36 AM, Michael Wang wrote:
> On 07/25/2012 01:10 AM, Sasha Levin wrote:
>> Hi all,
>>
>> I was fuzzing with trinity inside a KVM tools guest, on the current 3.6, and stumbled on the following:
> 
> Hi, Sasha
> 
> I'm currently trying to reproduce this issue on my machine but keep
> failing, it's really make me think the issue has been solved...

I see this happening on both with -next and current Linus' master.

> Could you please provide more info about you environment? like the
> .config and is there some plugin devices which is rarely.

I've attached the .config. The only device attached to the guest is a virtio-9p device which provides the filesystem, but I don't think it's related to the issue.

> It will be better if you can make your test environment as clean as
> possible (remove the devices which could be remove) and then see whether
> the issue still exist.

I can't remove the filesystem device, other that that nothing else is attached to the guest.

On 07/25/2012 11:06 AM, Michael Wang wrote:
> And is this a host dmesg or from the guest?

guest dmesg, nothing appeared in the host.

> Could you please provide more details about your testing environment?

The guest is running a -next/3.6 kernel built with the attached .config. In that guest I run an instance of the trinity fuzzer.
Nothing else is attached to the guest.
The host is running a 3.5 kernel, and running the guest within KVM tools.

If you need more specific info about anything let me know.

[-- Attachment #2: config_fuzzkvm --]
[-- Type: text/plain, Size: 131651 bytes --]

#
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 3.5.0 Kernel Configuration
#
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_MMU=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_GPIO=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_DEFAULT_IDLE=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ZONE_DMA32=y
CONFIG_AUDIT_ARCH=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_HAVE_INTEL_TXT=y
CONFIG_X86_64_SMP=y
CONFIG_X86_HT=y
CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11"
CONFIG_ARCH_CPU_PROBE_RELEASE=y
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_HAVE_IRQ_WORK=y
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
CONFIG_LOCALVERSION="-sasha"
CONFIG_LOCALVERSION_AUTO=y
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_BZIP2=y
CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_FHANDLE=y
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_AUDIT_WATCH=y
CONFIG_AUDIT_TREE=y
CONFIG_AUDIT_LOGINUID_IMMUTABLE=y
CONFIG_HAVE_GENERIC_HARDIRQS=y

#
# IRQ subsystem
#
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_IRQ_DOMAIN=y
CONFIG_IRQ_DOMAIN_DEBUG=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_ARCH_CLOCKSOURCE_DATA=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_GENERIC_CMOS_UPDATE=y

#
# Timers subsystem
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y

#
# RCU Subsystem
#
CONFIG_TREE_PREEMPT_RCU=y
CONFIG_PREEMPT_RCU=y
CONFIG_RCU_FANOUT=64
CONFIG_RCU_FANOUT_LEAF=16
# CONFIG_RCU_FANOUT_EXACT is not set
CONFIG_RCU_FAST_NO_HZ=y
CONFIG_TREE_RCU_TRACE=y
CONFIG_RCU_BOOST=y
CONFIG_RCU_BOOST_PRIO=1
CONFIG_RCU_BOOST_DELAY=500
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=18
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_CGROUPS=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
# CONFIG_CGROUP_MEM_RES_CTLR is not set
CONFIG_CGROUP_PERF=y
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
CONFIG_BLK_CGROUP=y
CONFIG_DEBUG_BLK_CGROUP=y
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
CONFIG_SCHED_AUTOGROUP=y
CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y
CONFIG_RELAY=y
# CONFIG_BLK_DEV_INITRD is not set
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_SYSCTL=y
CONFIG_ANON_INODES=y
CONFIG_EXPERT=y
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_PCSPKR_PLATFORM=y
CONFIG_HAVE_PCSPKR_PLATFORM=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_EMBEDDED=y
CONFIG_HAVE_PERF_EVENTS=y
CONFIG_PERF_USE_VMALLOC=y

#
# Kernel Performance Events And Counters
#
CONFIG_PERF_EVENTS=y
CONFIG_DEBUG_PERF_USE_VMALLOC=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PCI_QUIRKS=y
CONFIG_SLUB_DEBUG=y
CONFIG_COMPAT_BRK=y
# CONFIG_SLAB is not set
CONFIG_SLUB=y
# CONFIG_SLOB is not set
CONFIG_PROFILING=y
CONFIG_TRACEPOINTS=y
CONFIG_OPROFILE=y
CONFIG_OPROFILE_EVENT_MULTIPLEX=y
CONFIG_HAVE_OPROFILE=y
CONFIG_OPROFILE_NMI_TIMER=y
CONFIG_JUMP_LABEL=y
CONFIG_UPROBES=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_OPTPROBES=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_HW_BREAKPOINT=y
CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
CONFIG_HAVE_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_PERF_EVENTS_NMI=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
CONFIG_HAVE_CMPXCHG_LOCAL=y
CONFIG_HAVE_CMPXCHG_DOUBLE=y
CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y

#
# GCOV-based kernel profiling
#
# CONFIG_GCOV_KERNEL is not set
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0
# CONFIG_MODULES is not set
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_BLK_DEV_BSG=y
CONFIG_BLK_DEV_BSGLIB=y
CONFIG_BLK_DEV_INTEGRITY=y
CONFIG_BLK_DEV_THROTTLING=y

#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
CONFIG_ACORN_PARTITION=y
CONFIG_ACORN_PARTITION_CUMANA=y
CONFIG_ACORN_PARTITION_EESOX=y
CONFIG_ACORN_PARTITION_ICS=y
CONFIG_ACORN_PARTITION_ADFS=y
CONFIG_ACORN_PARTITION_POWERTEC=y
CONFIG_ACORN_PARTITION_RISCIX=y
CONFIG_OSF_PARTITION=y
CONFIG_AMIGA_PARTITION=y
CONFIG_ATARI_PARTITION=y
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
CONFIG_MINIX_SUBPARTITION=y
CONFIG_SOLARIS_X86_PARTITION=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_LDM_PARTITION=y
CONFIG_LDM_DEBUG=y
CONFIG_SGI_PARTITION=y
CONFIG_ULTRIX_PARTITION=y
CONFIG_SUN_PARTITION=y
CONFIG_KARMA_PARTITION=y
CONFIG_EFI_PARTITION=y
CONFIG_SYSV68_PARTITION=y
CONFIG_BLOCK_COMPAT=y

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_CFQ_GROUP_IOSCHED=y
# CONFIG_DEFAULT_DEADLINE is not set
CONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_PADATA=y
# CONFIG_INLINE_SPIN_TRYLOCK is not set
# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
# CONFIG_INLINE_SPIN_LOCK is not set
# CONFIG_INLINE_SPIN_LOCK_BH is not set
# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
CONFIG_UNINLINE_SPIN_UNLOCK=y
# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
# CONFIG_INLINE_SPIN_UNLOCK_IRQ is not set
# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
# CONFIG_INLINE_READ_TRYLOCK is not set
# CONFIG_INLINE_READ_LOCK is not set
# CONFIG_INLINE_READ_LOCK_BH is not set
# CONFIG_INLINE_READ_LOCK_IRQ is not set
# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
# CONFIG_INLINE_READ_UNLOCK is not set
# CONFIG_INLINE_READ_UNLOCK_BH is not set
# CONFIG_INLINE_READ_UNLOCK_IRQ is not set
# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
# CONFIG_INLINE_WRITE_TRYLOCK is not set
# CONFIG_INLINE_WRITE_LOCK is not set
# CONFIG_INLINE_WRITE_LOCK_BH is not set
# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
# CONFIG_INLINE_WRITE_UNLOCK is not set
# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
# CONFIG_INLINE_WRITE_UNLOCK_IRQ is not set
# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
# CONFIG_MUTEX_SPIN_ON_OWNER is not set
CONFIG_FREEZER=y

#
# Processor type and features
#
CONFIG_ZONE_DMA=y
CONFIG_SMP=y
CONFIG_X86_X2APIC=y
CONFIG_X86_MPPARSE=y
CONFIG_X86_EXTENDED_PLATFORM=y
CONFIG_X86_NUMACHIP=y
CONFIG_X86_VSMP=y
CONFIG_X86_UV=y
CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_PARAVIRT_GUEST=y
CONFIG_PARAVIRT_TIME_ACCOUNTING=y
CONFIG_XEN=y
CONFIG_XEN_DOM0=y
CONFIG_XEN_PRIVILEGED_GUEST=y
CONFIG_XEN_PVHVM=y
CONFIG_XEN_MAX_DOMAIN_MEMORY=500
CONFIG_XEN_SAVE_RESTORE=y
CONFIG_XEN_DEBUG_FS=y
CONFIG_KVM_CLOCK=y
CONFIG_KVM_GUEST=y
CONFIG_PARAVIRT=y
CONFIG_PARAVIRT_SPINLOCKS=y
CONFIG_PARAVIRT_CLOCK=y
CONFIG_PARAVIRT_DEBUG=y
CONFIG_NO_BOOTMEM=y
CONFIG_MEMTEST=y
# CONFIG_MK8 is not set
# CONFIG_MPSC is not set
CONFIG_MCORE2=y
# CONFIG_MATOM is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_INTERNODE_CACHE_SHIFT=12
CONFIG_X86_CMPXCHG=y
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_XADD=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_P6_NOP=y
CONFIG_X86_TSC=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=64
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_PROCESSOR_SELECT=y
CONFIG_CPU_SUP_INTEL=y
CONFIG_CPU_SUP_AMD=y
CONFIG_CPU_SUP_CENTAUR=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_DMI=y
CONFIG_GART_IOMMU=y
CONFIG_CALGARY_IOMMU=y
CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
CONFIG_SWIOTLB=y
CONFIG_IOMMU_HELPER=y
CONFIG_MAXSMP=y
CONFIG_NR_CPUS=4096
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_IRQ_TIME_ACCOUNTING=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_COUNT=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_INTEL=y
CONFIG_X86_MCE_AMD=y
CONFIG_X86_MCE_THRESHOLD=y
CONFIG_X86_MCE_INJECT=y
CONFIG_X86_THERMAL_VECTOR=y
CONFIG_I8K=y
CONFIG_MICROCODE=y
CONFIG_MICROCODE_INTEL=y
CONFIG_MICROCODE_AMD=y
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_DIRECT_GBPAGES=y
CONFIG_NUMA=y
CONFIG_AMD_NUMA=y
CONFIG_X86_64_ACPI_NUMA=y
CONFIG_NODES_SPAN_OTHER_NODES=y
CONFIG_NUMA_EMU=y
CONFIG_NODES_SHIFT=10
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_MEMORY_PROBE=y
CONFIG_ARCH_PROC_KCORE_TEXT=y
CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_MEMORY_HOTPLUG=y
CONFIG_MEMORY_HOTPLUG_SPARSE=y
CONFIG_MEMORY_HOTREMOVE=y
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=999999
CONFIG_COMPACTION=y
CONFIG_MIGRATION=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_MMU_NOTIFIER=y
CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
CONFIG_MEMORY_FAILURE=y
CONFIG_HWPOISON_INJECT=y
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CLEANCACHE=y
CONFIG_FRONTSWAP=y
CONFIG_X86_CHECK_BIOS_CORRUPTION=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_RESERVE_LOW=64
CONFIG_MTRR=y
CONFIG_MTRR_SANITIZER=y
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
CONFIG_X86_PAT=y
CONFIG_ARCH_USES_PG_UNCACHED=y
CONFIG_ARCH_RANDOM=y
CONFIG_EFI=y
CONFIG_EFI_STUB=y
CONFIG_SECCOMP=y
CONFIG_CC_STACKPROTECTOR=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_SCHED_HRTICK=y
CONFIG_KEXEC=y
CONFIG_CRASH_DUMP=y
CONFIG_KEXEC_JUMP=y
CONFIG_PHYSICAL_START=0x1000000
CONFIG_RELOCATABLE=y
CONFIG_PHYSICAL_ALIGN=0x1000000
CONFIG_HOTPLUG_CPU=y
CONFIG_COMPAT_VDSO=y
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE=""
# CONFIG_CMDLINE_OVERRIDE is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y

#
# Power management and ACPI options
#
CONFIG_ARCH_HIBERNATION_HEADER=y
CONFIG_SUSPEND=y
CONFIG_SUSPEND_FREEZER=y
CONFIG_HIBERNATE_CALLBACKS=y
CONFIG_HIBERNATION=y
CONFIG_PM_STD_PARTITION=""
CONFIG_PM_SLEEP=y
CONFIG_PM_SLEEP_SMP=y
CONFIG_PM_AUTOSLEEP=y
CONFIG_PM_WAKELOCKS=y
CONFIG_PM_WAKELOCKS_LIMIT=0
CONFIG_PM_WAKELOCKS_GC=y
CONFIG_PM_RUNTIME=y
CONFIG_PM=y
CONFIG_PM_DEBUG=y
CONFIG_PM_ADVANCED_DEBUG=y
# CONFIG_PM_TEST_SUSPEND is not set
CONFIG_PM_SLEEP_DEBUG=y
CONFIG_PM_TRACE=y
CONFIG_PM_TRACE_RTC=y
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_PROCFS_POWER=y
CONFIG_ACPI_EC_DEBUGFS=y
CONFIG_ACPI_PROC_EVENT=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_DOCK=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_PROCESSOR_AGGREGATOR=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_NUMA=y
# CONFIG_ACPI_CUSTOM_DSDT is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
CONFIG_ACPI_DEBUG=y
CONFIG_ACPI_DEBUG_FUNC_TRACE=y
CONFIG_ACPI_PCI_SLOT=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_HOTPLUG_MEMORY=y
CONFIG_ACPI_SBS=y
CONFIG_ACPI_HED=y
CONFIG_ACPI_CUSTOM_METHOD=y
CONFIG_ACPI_BGRT=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=y
CONFIG_ACPI_APEI_ERST_DEBUG=y
CONFIG_SFI=y

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

#
# x86 CPU frequency scaling drivers
#
CONFIG_X86_PCC_CPUFREQ=y
CONFIG_X86_ACPI_CPUFREQ=y
CONFIG_X86_POWERNOW_K8=y
CONFIG_X86_SPEEDSTEP_CENTRINO=y
CONFIG_X86_P4_CLOCKMOD=y

#
# shared options
#
CONFIG_X86_SPEEDSTEP_LIB=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y
CONFIG_INTEL_IDLE=y

#
# Memory power savings
#
CONFIG_I7300_IDLE_IOAT_CHANNEL=y
CONFIG_I7300_IDLE=y

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_XEN=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_CNB20LE_QUIRK=y
CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI_PCIE=y
CONFIG_PCIEAER=y
CONFIG_PCIE_ECRC=y
CONFIG_PCIEAER_INJECT=y
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEBUG=y
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
CONFIG_PCI_DEBUG=y
CONFIG_PCI_REALLOC_ENABLE_AUTO=y
CONFIG_PCI_STUB=y
CONFIG_XEN_PCIDEV_FRONTEND=y
CONFIG_HT_IRQ=y
CONFIG_PCI_ATS=y
CONFIG_PCI_IOV=y
CONFIG_PCI_PRI=y
CONFIG_PCI_PASID=y
CONFIG_PCI_IOAPIC=y
CONFIG_PCI_LABEL=y
CONFIG_ISA_DMA_API=y
CONFIG_AMD_NB=y
CONFIG_PCCARD=y
CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
CONFIG_CARDBUS=y

#
# PC-card bridges
#
CONFIG_YENTA=y
CONFIG_YENTA_O2=y
CONFIG_YENTA_RICOH=y
CONFIG_YENTA_TI=y
CONFIG_YENTA_ENE_TUNE=y
CONFIG_YENTA_TOSHIBA=y
CONFIG_PD6729=y
CONFIG_I82092=y
CONFIG_PCCARD_NONSTATIC=y
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_FAKE=y
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=y
CONFIG_HOTPLUG_PCI_CPCI=y
CONFIG_HOTPLUG_PCI_CPCI_ZT5550=y
CONFIG_HOTPLUG_PCI_CPCI_GENERIC=y
CONFIG_HOTPLUG_PCI_SHPC=y
CONFIG_RAPIDIO=y
CONFIG_RAPIDIO_TSI721=y
CONFIG_RAPIDIO_DISC_TIMEOUT=30
CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS=y
CONFIG_RAPIDIO_DMA_ENGINE=y
CONFIG_RAPIDIO_DEBUG=y
CONFIG_RAPIDIO_TSI57X=y
CONFIG_RAPIDIO_CPS_XX=y
CONFIG_RAPIDIO_TSI568=y
CONFIG_RAPIDIO_CPS_GEN2=y
CONFIG_RAPIDIO_TSI500=y

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_COMPAT_BINFMT_ELF=y
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_HAVE_AOUT is not set
CONFIG_BINFMT_MISC=y
CONFIG_IA32_EMULATION=y
CONFIG_IA32_AOUT=y
CONFIG_X86_X32=y
CONFIG_COMPAT=y
CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_KEYS_COMPAT=y
CONFIG_HAVE_TEXT_POKE_SMP=y
CONFIG_X86_DEV_DMA_OPS=y
CONFIG_NET=y
CONFIG_COMPAT_NETLINK_MESSAGES=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=y
CONFIG_XFRM=y
CONFIG_XFRM_ALGO=y
CONFIG_XFRM_USER=y
CONFIG_XFRM_SUB_POLICY=y
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_IPCOMP=y
CONFIG_NET_KEY=y
CONFIG_NET_KEY_MIGRATE=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_FIB_TRIE_STATS=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_ROUTE_CLASSID=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_IP_PNP_RARP=y
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE_DEMUX=y
CONFIG_NET_IPGRE=y
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
CONFIG_ARPD=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_XFRM_TUNNEL=y
CONFIG_INET_TUNNEL=y
CONFIG_INET_XFRM_MODE_TRANSPORT=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=y
CONFIG_INET_LRO=y
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
CONFIG_INET_UDP_DIAG=y
CONFIG_TCP_CONG_ADVANCED=y
# CONFIG_TCP_CONG_BIC is not set
CONFIG_TCP_CONG_CUBIC=y
# CONFIG_TCP_CONG_WESTWOOD is not set
# CONFIG_TCP_CONG_HTCP is not set
# CONFIG_TCP_CONG_HSTCP is not set
# CONFIG_TCP_CONG_HYBLA is not set
# CONFIG_TCP_CONG_VEGAS is not set
# CONFIG_TCP_CONG_SCALABLE is not set
# CONFIG_TCP_CONG_LP is not set
# CONFIG_TCP_CONG_VENO is not set
# CONFIG_TCP_CONG_YEAH is not set
# CONFIG_TCP_CONG_ILLINOIS is not set
CONFIG_DEFAULT_CUBIC=y
# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="cubic"
CONFIG_TCP_MD5SIG=y
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_ROUTE_INFO=y
CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
CONFIG_INET6_IPCOMP=y
CONFIG_IPV6_MIP6=y
CONFIG_INET6_XFRM_TUNNEL=y
CONFIG_INET6_TUNNEL=y
CONFIG_INET6_XFRM_MODE_TRANSPORT=y
CONFIG_INET6_XFRM_MODE_TUNNEL=y
CONFIG_INET6_XFRM_MODE_BEET=y
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=y
CONFIG_IPV6_SIT=y
CONFIG_IPV6_SIT_6RD=y
CONFIG_IPV6_NDISC_NODETYPE=y
CONFIG_IPV6_TUNNEL=y
CONFIG_IPV6_MULTIPLE_TABLES=y
CONFIG_IPV6_SUBTREES=y
CONFIG_IPV6_MROUTE=y
CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
CONFIG_IPV6_PIMSM_V2=y
CONFIG_NETLABEL=y
CONFIG_NETWORK_SECMARK=y
CONFIG_NETWORK_PHY_TIMESTAMPING=y
CONFIG_NETFILTER=y
CONFIG_NETFILTER_DEBUG=y
CONFIG_NETFILTER_ADVANCED=y
CONFIG_BRIDGE_NETFILTER=y

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=y
CONFIG_NETFILTER_NETLINK_ACCT=y
CONFIG_NETFILTER_NETLINK_QUEUE=y
CONFIG_NETFILTER_NETLINK_LOG=y
CONFIG_NF_CONNTRACK=y
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_SECMARK=y
CONFIG_NF_CONNTRACK_ZONES=y
CONFIG_NF_CONNTRACK_PROCFS=y
CONFIG_NF_CONNTRACK_EVENTS=y
CONFIG_NF_CONNTRACK_TIMEOUT=y
CONFIG_NF_CONNTRACK_TIMESTAMP=y
CONFIG_NF_CT_PROTO_DCCP=y
CONFIG_NF_CT_PROTO_GRE=y
CONFIG_NF_CT_PROTO_SCTP=y
CONFIG_NF_CT_PROTO_UDPLITE=y
CONFIG_NF_CONNTRACK_AMANDA=y
CONFIG_NF_CONNTRACK_FTP=y
CONFIG_NF_CONNTRACK_H323=y
CONFIG_NF_CONNTRACK_IRC=y
CONFIG_NF_CONNTRACK_BROADCAST=y
CONFIG_NF_CONNTRACK_NETBIOS_NS=y
CONFIG_NF_CONNTRACK_SNMP=y
CONFIG_NF_CONNTRACK_PPTP=y
CONFIG_NF_CONNTRACK_SANE=y
CONFIG_NF_CONNTRACK_SIP=y
CONFIG_NF_CONNTRACK_TFTP=y
CONFIG_NF_CT_NETLINK=y
CONFIG_NF_CT_NETLINK_TIMEOUT=y
CONFIG_NETFILTER_TPROXY=y
CONFIG_NETFILTER_XTABLES=y

#
# Xtables combined modules
#
CONFIG_NETFILTER_XT_MARK=y
CONFIG_NETFILTER_XT_CONNMARK=y
CONFIG_NETFILTER_XT_SET=y

#
# Xtables targets
#
CONFIG_NETFILTER_XT_TARGET_AUDIT=y
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=y
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=y
CONFIG_NETFILTER_XT_TARGET_CT=y
CONFIG_NETFILTER_XT_TARGET_DSCP=y
CONFIG_NETFILTER_XT_TARGET_HL=y
CONFIG_NETFILTER_XT_TARGET_HMARK=y
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y
CONFIG_NETFILTER_XT_TARGET_LED=y
CONFIG_NETFILTER_XT_TARGET_LOG=y
CONFIG_NETFILTER_XT_TARGET_MARK=y
CONFIG_NETFILTER_XT_TARGET_NFLOG=y
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
CONFIG_NETFILTER_XT_TARGET_NOTRACK=y
CONFIG_NETFILTER_XT_TARGET_RATEEST=y
CONFIG_NETFILTER_XT_TARGET_TEE=y
CONFIG_NETFILTER_XT_TARGET_TPROXY=y
CONFIG_NETFILTER_XT_TARGET_TRACE=y
CONFIG_NETFILTER_XT_TARGET_SECMARK=y
CONFIG_NETFILTER_XT_TARGET_TCPMSS=y
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=y

#
# Xtables matches
#
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
CONFIG_NETFILTER_XT_MATCH_CLUSTER=y
CONFIG_NETFILTER_XT_MATCH_COMMENT=y
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y
CONFIG_NETFILTER_XT_MATCH_CONNMARK=y
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
CONFIG_NETFILTER_XT_MATCH_CPU=y
CONFIG_NETFILTER_XT_MATCH_DCCP=y
CONFIG_NETFILTER_XT_MATCH_DEVGROUP=y
CONFIG_NETFILTER_XT_MATCH_DSCP=y
CONFIG_NETFILTER_XT_MATCH_ECN=y
CONFIG_NETFILTER_XT_MATCH_ESP=y
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y
CONFIG_NETFILTER_XT_MATCH_HELPER=y
CONFIG_NETFILTER_XT_MATCH_HL=y
CONFIG_NETFILTER_XT_MATCH_IPRANGE=y
CONFIG_NETFILTER_XT_MATCH_IPVS=y
CONFIG_NETFILTER_XT_MATCH_LENGTH=y
CONFIG_NETFILTER_XT_MATCH_LIMIT=y
CONFIG_NETFILTER_XT_MATCH_MAC=y
CONFIG_NETFILTER_XT_MATCH_MARK=y
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
CONFIG_NETFILTER_XT_MATCH_NFACCT=y
CONFIG_NETFILTER_XT_MATCH_OSF=y
CONFIG_NETFILTER_XT_MATCH_OWNER=y
CONFIG_NETFILTER_XT_MATCH_POLICY=y
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=y
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y
CONFIG_NETFILTER_XT_MATCH_QUOTA=y
CONFIG_NETFILTER_XT_MATCH_RATEEST=y
CONFIG_NETFILTER_XT_MATCH_REALM=y
CONFIG_NETFILTER_XT_MATCH_RECENT=y
CONFIG_NETFILTER_XT_MATCH_SCTP=y
CONFIG_NETFILTER_XT_MATCH_SOCKET=y
CONFIG_NETFILTER_XT_MATCH_STATE=y
CONFIG_NETFILTER_XT_MATCH_STATISTIC=y
CONFIG_NETFILTER_XT_MATCH_STRING=y
CONFIG_NETFILTER_XT_MATCH_TCPMSS=y
CONFIG_NETFILTER_XT_MATCH_TIME=y
CONFIG_NETFILTER_XT_MATCH_U32=y
CONFIG_IP_SET=y
CONFIG_IP_SET_MAX=256
CONFIG_IP_SET_BITMAP_IP=y
CONFIG_IP_SET_BITMAP_IPMAC=y
CONFIG_IP_SET_BITMAP_PORT=y
CONFIG_IP_SET_HASH_IP=y
CONFIG_IP_SET_HASH_IPPORT=y
CONFIG_IP_SET_HASH_IPPORTIP=y
CONFIG_IP_SET_HASH_IPPORTNET=y
CONFIG_IP_SET_HASH_NET=y
CONFIG_IP_SET_HASH_NETPORT=y
CONFIG_IP_SET_HASH_NETIFACE=y
CONFIG_IP_SET_LIST_SET=y
CONFIG_IP_VS=y
CONFIG_IP_VS_IPV6=y
CONFIG_IP_VS_DEBUG=y
CONFIG_IP_VS_TAB_BITS=12

#
# IPVS transport protocol load balancing support
#
CONFIG_IP_VS_PROTO_TCP=y
CONFIG_IP_VS_PROTO_UDP=y
CONFIG_IP_VS_PROTO_AH_ESP=y
CONFIG_IP_VS_PROTO_ESP=y
CONFIG_IP_VS_PROTO_AH=y
CONFIG_IP_VS_PROTO_SCTP=y

#
# IPVS scheduler
#
CONFIG_IP_VS_RR=y
CONFIG_IP_VS_WRR=y
CONFIG_IP_VS_LC=y
CONFIG_IP_VS_WLC=y
CONFIG_IP_VS_LBLC=y
CONFIG_IP_VS_LBLCR=y
CONFIG_IP_VS_DH=y
CONFIG_IP_VS_SH=y
CONFIG_IP_VS_SED=y
CONFIG_IP_VS_NQ=y

#
# IPVS SH scheduler
#
CONFIG_IP_VS_SH_TAB_BITS=8

#
# IPVS application helper
#
CONFIG_IP_VS_FTP=y
CONFIG_IP_VS_NFCT=y
CONFIG_IP_VS_PE_SIP=y

#
# IP: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV4=y
CONFIG_NF_CONNTRACK_IPV4=y
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
CONFIG_IP_NF_QUEUE=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_AH=y
CONFIG_IP_NF_MATCH_ECN=y
CONFIG_IP_NF_MATCH_RPFILTER=y
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_ULOG=y
CONFIG_NF_NAT=y
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_NETMAP=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_NF_NAT_SNMP_BASIC=y
CONFIG_NF_NAT_PROTO_DCCP=y
CONFIG_NF_NAT_PROTO_GRE=y
CONFIG_NF_NAT_PROTO_UDPLITE=y
CONFIG_NF_NAT_PROTO_SCTP=y
CONFIG_NF_NAT_FTP=y
CONFIG_NF_NAT_IRC=y
CONFIG_NF_NAT_TFTP=y
CONFIG_NF_NAT_AMANDA=y
CONFIG_NF_NAT_PPTP=y
CONFIG_NF_NAT_H323=y
CONFIG_NF_NAT_SIP=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_TARGET_CLUSTERIP=y
CONFIG_IP_NF_TARGET_ECN=y
CONFIG_IP_NF_TARGET_TTL=y
CONFIG_IP_NF_RAW=y
CONFIG_IP_NF_SECURITY=y
CONFIG_IP_NF_ARPTABLES=y
CONFIG_IP_NF_ARPFILTER=y
CONFIG_IP_NF_ARP_MANGLE=y

#
# IPv6: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV6=y
CONFIG_NF_CONNTRACK_IPV6=y
CONFIG_IP6_NF_IPTABLES=y
CONFIG_IP6_NF_MATCH_AH=y
CONFIG_IP6_NF_MATCH_EUI64=y
CONFIG_IP6_NF_MATCH_FRAG=y
CONFIG_IP6_NF_MATCH_OPTS=y
CONFIG_IP6_NF_MATCH_HL=y
CONFIG_IP6_NF_MATCH_IPV6HEADER=y
CONFIG_IP6_NF_MATCH_MH=y
CONFIG_IP6_NF_MATCH_RPFILTER=y
CONFIG_IP6_NF_MATCH_RT=y
CONFIG_IP6_NF_TARGET_HL=y
CONFIG_IP6_NF_FILTER=y
CONFIG_IP6_NF_TARGET_REJECT=y
CONFIG_IP6_NF_MANGLE=y
CONFIG_IP6_NF_RAW=y
CONFIG_IP6_NF_SECURITY=y

#
# DECnet: Netfilter Configuration
#
CONFIG_DECNET_NF_GRABULATOR=y
CONFIG_BRIDGE_NF_EBTABLES=y
CONFIG_BRIDGE_EBT_BROUTE=y
CONFIG_BRIDGE_EBT_T_FILTER=y
CONFIG_BRIDGE_EBT_T_NAT=y
CONFIG_BRIDGE_EBT_802_3=y
CONFIG_BRIDGE_EBT_AMONG=y
CONFIG_BRIDGE_EBT_ARP=y
CONFIG_BRIDGE_EBT_IP=y
CONFIG_BRIDGE_EBT_IP6=y
CONFIG_BRIDGE_EBT_LIMIT=y
CONFIG_BRIDGE_EBT_MARK=y
CONFIG_BRIDGE_EBT_PKTTYPE=y
CONFIG_BRIDGE_EBT_STP=y
CONFIG_BRIDGE_EBT_VLAN=y
CONFIG_BRIDGE_EBT_ARPREPLY=y
CONFIG_BRIDGE_EBT_DNAT=y
CONFIG_BRIDGE_EBT_MARK_T=y
CONFIG_BRIDGE_EBT_REDIRECT=y
CONFIG_BRIDGE_EBT_SNAT=y
CONFIG_BRIDGE_EBT_LOG=y
CONFIG_BRIDGE_EBT_ULOG=y
CONFIG_BRIDGE_EBT_NFLOG=y
CONFIG_IP_DCCP=y
CONFIG_INET_DCCP_DIAG=y

#
# DCCP CCIDs Configuration (EXPERIMENTAL)
#
CONFIG_IP_DCCP_CCID2_DEBUG=y
CONFIG_IP_DCCP_CCID3=y
CONFIG_IP_DCCP_CCID3_DEBUG=y
CONFIG_IP_DCCP_TFRC_LIB=y
CONFIG_IP_DCCP_TFRC_DEBUG=y

#
# DCCP Kernel Hacking
#
CONFIG_IP_DCCP_DEBUG=y
CONFIG_IP_SCTP=y
CONFIG_SCTP_DBG_MSG=y
CONFIG_SCTP_DBG_OBJCNT=y
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
CONFIG_RDS=y
CONFIG_RDS_RDMA=y
CONFIG_RDS_TCP=y
CONFIG_RDS_DEBUG=y
CONFIG_TIPC=y
CONFIG_TIPC_ADVANCED=y
CONFIG_TIPC_PORTS=8191
CONFIG_TIPC_LOG=0
# CONFIG_TIPC_DEBUG is not set
CONFIG_ATM=y
CONFIG_ATM_CLIP=y
# CONFIG_ATM_CLIP_NO_ICMP is not set
CONFIG_ATM_LANE=y
CONFIG_ATM_MPOA=y
CONFIG_ATM_BR2684=y
CONFIG_ATM_BR2684_IPFILTER=y
CONFIG_L2TP=y
CONFIG_L2TP_DEBUGFS=y
CONFIG_L2TP_V3=y
CONFIG_L2TP_IP=y
CONFIG_L2TP_ETH=y
CONFIG_STP=y
CONFIG_GARP=y
CONFIG_BRIDGE=y
CONFIG_BRIDGE_IGMP_SNOOPING=y
CONFIG_NET_DSA=y
CONFIG_NET_DSA_TAG_DSA=y
CONFIG_NET_DSA_TAG_EDSA=y
CONFIG_NET_DSA_TAG_TRAILER=y
CONFIG_VLAN_8021Q=y
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_DECNET=y
CONFIG_DECNET_ROUTER=y
CONFIG_LLC=y
# CONFIG_LLC2 is not set
CONFIG_IPX=y
CONFIG_IPX_INTERN=y
CONFIG_ATALK=y
CONFIG_DEV_APPLETALK=y
CONFIG_IPDDP=y
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
CONFIG_X25=y
CONFIG_LAPB=y
CONFIG_WAN_ROUTER=y
CONFIG_PHONET=y
CONFIG_IEEE802154=y
CONFIG_IEEE802154_6LOWPAN=y
CONFIG_MAC802154=y
CONFIG_NET_SCHED=y

#
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
CONFIG_NET_SCH_HFSC=y
CONFIG_NET_SCH_ATM=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_MULTIQ=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFB=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_NETEM=y
CONFIG_NET_SCH_DRR=y
CONFIG_NET_SCH_MQPRIO=y
CONFIG_NET_SCH_CHOKE=y
CONFIG_NET_SCH_QFQ=y
CONFIG_NET_SCH_CODEL=y
CONFIG_NET_SCH_FQ_CODEL=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_SCH_PLUG=y

#
# Classification
#
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=y
CONFIG_NET_CLS_TCINDEX=y
CONFIG_NET_CLS_ROUTE4=y
CONFIG_NET_CLS_FW=y
CONFIG_NET_CLS_U32=y
CONFIG_CLS_U32_PERF=y
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
CONFIG_NET_CLS_FLOW=y
CONFIG_NET_CLS_CGROUP=y
CONFIG_NET_EMATCH=y
CONFIG_NET_EMATCH_STACK=32
CONFIG_NET_EMATCH_CMP=y
CONFIG_NET_EMATCH_NBYTE=y
CONFIG_NET_EMATCH_U32=y
CONFIG_NET_EMATCH_META=y
CONFIG_NET_EMATCH_TEXT=y
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=y
CONFIG_NET_ACT_GACT=y
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=y
CONFIG_NET_ACT_IPT=y
CONFIG_NET_ACT_NAT=y
CONFIG_NET_ACT_PEDIT=y
CONFIG_NET_ACT_SIMP=y
CONFIG_NET_ACT_SKBEDIT=y
CONFIG_NET_ACT_CSUM=y
CONFIG_NET_CLS_IND=y
CONFIG_NET_SCH_FIFO=y
CONFIG_DCB=y
CONFIG_DNS_RESOLVER=y
CONFIG_BATMAN_ADV=y
CONFIG_BATMAN_ADV_BLA=y
CONFIG_BATMAN_ADV_DEBUG=y
CONFIG_OPENVSWITCH=y
CONFIG_RPS=y
CONFIG_RFS_ACCEL=y
CONFIG_XPS=y
CONFIG_NETPRIO_CGROUP=y
CONFIG_BQL=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NET_DROP_MONITOR=y
CONFIG_HAMRADIO=y

#
# Packet Radio protocols
#
CONFIG_AX25=y
CONFIG_AX25_DAMA_SLAVE=y
CONFIG_NETROM=y
CONFIG_ROSE=y

#
# AX.25 network device drivers
#
CONFIG_MKISS=y
CONFIG_6PACK=y
CONFIG_BPQETHER=y
CONFIG_BAYCOM_SER_FDX=y
CONFIG_BAYCOM_SER_HDX=y
CONFIG_BAYCOM_PAR=y
CONFIG_YAM=y
CONFIG_CAN=y
CONFIG_CAN_RAW=y
CONFIG_CAN_BCM=y
CONFIG_CAN_GW=y

#
# CAN Device Drivers
#
CONFIG_CAN_VCAN=y
CONFIG_CAN_SLCAN=y
CONFIG_CAN_DEV=y
CONFIG_CAN_CALC_BITTIMING=y
# CONFIG_CAN_MCP251X is not set
# CONFIG_PCH_CAN is not set
# CONFIG_CAN_SJA1000 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CC770 is not set

#
# CAN USB interfaces
#
# CONFIG_CAN_EMS_USB is not set
# CONFIG_CAN_ESD_USB2 is not set
CONFIG_CAN_PEAK_USB=y
CONFIG_CAN_SOFTING=y
CONFIG_CAN_SOFTING_CS=y
CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_IRDA=y

#
# IrDA protocols
#
CONFIG_IRLAN=y
CONFIG_IRNET=y
CONFIG_IRCOMM=y
CONFIG_IRDA_ULTRA=y

#
# IrDA options
#
CONFIG_IRDA_CACHE_LAST_LSAP=y
CONFIG_IRDA_FAST_RR=y
CONFIG_IRDA_DEBUG=y

#
# Infrared-port device drivers
#

#
# SIR device drivers
#
CONFIG_IRTTY_SIR=y

#
# Dongle support
#
CONFIG_DONGLE=y
# CONFIG_ESI_DONGLE is not set
# CONFIG_ACTISYS_DONGLE is not set
# CONFIG_TEKRAM_DONGLE is not set
# CONFIG_TOIM3232_DONGLE is not set
# CONFIG_LITELINK_DONGLE is not set
# CONFIG_MA600_DONGLE is not set
# CONFIG_GIRBIL_DONGLE is not set
# CONFIG_MCP2120_DONGLE is not set
# CONFIG_OLD_BELKIN_DONGLE is not set
# CONFIG_ACT200L_DONGLE is not set
# CONFIG_KINGSUN_DONGLE is not set
# CONFIG_KSDAZZLE_DONGLE is not set
# CONFIG_KS959_DONGLE is not set

#
# FIR device drivers
#
# CONFIG_USB_IRDA is not set
# CONFIG_SIGMATEL_FIR is not set
# CONFIG_NSC_FIR is not set
# CONFIG_WINBOND_FIR is not set
# CONFIG_SMC_IRCC_FIR is not set
# CONFIG_ALI_FIR is not set
# CONFIG_VLSI_FIR is not set
# CONFIG_VIA_FIR is not set
# CONFIG_MCS_FIR is not set
CONFIG_BT=y
CONFIG_BT_RFCOMM=y
CONFIG_BT_RFCOMM_TTY=y
CONFIG_BT_BNEP=y
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_CMTP=y
CONFIG_BT_HIDP=y

#
# Bluetooth device drivers
#
CONFIG_BT_HCIBTUSB=y
CONFIG_BT_HCIBTSDIO=y
CONFIG_BT_HCIUART=y
CONFIG_BT_HCIUART_H4=y
CONFIG_BT_HCIUART_BCSP=y
CONFIG_BT_HCIUART_ATH3K=y
CONFIG_BT_HCIUART_LL=y
# CONFIG_BT_HCIBCM203X is not set
# CONFIG_BT_HCIBPA10X is not set
# CONFIG_BT_HCIBFUSB is not set
# CONFIG_BT_HCIDTL1 is not set
# CONFIG_BT_HCIBT3C is not set
# CONFIG_BT_HCIBLUECARD is not set
# CONFIG_BT_HCIBTUART is not set
CONFIG_BT_HCIVHCI=y
# CONFIG_BT_MRVL is not set
CONFIG_BT_ATH3K=y
# CONFIG_BT_WILINK is not set
CONFIG_AF_RXRPC=y
CONFIG_AF_RXRPC_DEBUG=y
CONFIG_RXKAD=y
CONFIG_FIB_RULES=y
CONFIG_WIRELESS=y
CONFIG_WIRELESS_EXT=y
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
CONFIG_WEXT_SPY=y
CONFIG_WEXT_PRIV=y
CONFIG_CFG80211=y
CONFIG_NL80211_TESTMODE=y
CONFIG_CFG80211_DEVELOPER_WARNINGS=y
CONFIG_CFG80211_REG_DEBUG=y
CONFIG_CFG80211_DEFAULT_PS=y
CONFIG_CFG80211_DEBUGFS=y
CONFIG_CFG80211_INTERNAL_REGDB=y
CONFIG_CFG80211_WEXT=y
# CONFIG_WIRELESS_EXT_SYSFS is not set
CONFIG_LIB80211=y
CONFIG_LIB80211_CRYPT_WEP=y
CONFIG_LIB80211_CRYPT_CCMP=y
CONFIG_LIB80211_CRYPT_TKIP=y
CONFIG_LIB80211_DEBUG=y
CONFIG_MAC80211=y
CONFIG_MAC80211_HAS_RC=y
CONFIG_MAC80211_RC_PID=y
CONFIG_MAC80211_RC_MINSTREL=y
CONFIG_MAC80211_RC_MINSTREL_HT=y
# CONFIG_MAC80211_RC_DEFAULT_PID is not set
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
CONFIG_MAC80211_MESH=y
CONFIG_MAC80211_LEDS=y
CONFIG_MAC80211_DEBUGFS=y
CONFIG_MAC80211_DEBUG_MENU=y
CONFIG_MAC80211_NOINLINE=y
CONFIG_MAC80211_VERBOSE_DEBUG=y
CONFIG_MAC80211_HT_DEBUG=y
# CONFIG_MAC80211_TKIP_DEBUG is not set
CONFIG_MAC80211_IBSS_DEBUG=y
# CONFIG_MAC80211_VERBOSE_PS_DEBUG is not set
# CONFIG_MAC80211_VERBOSE_MPL_DEBUG is not set
# CONFIG_MAC80211_VERBOSE_MPATH_DEBUG is not set
# CONFIG_MAC80211_VERBOSE_MHWMP_DEBUG is not set
# CONFIG_MAC80211_VERBOSE_MESH_SYNC_DEBUG is not set
# CONFIG_MAC80211_VERBOSE_TDLS_DEBUG is not set
CONFIG_MAC80211_DEBUG_COUNTERS=y
CONFIG_WIMAX=y
CONFIG_WIMAX_DEBUG_LEVEL=8
CONFIG_RFKILL=y
CONFIG_RFKILL_LEDS=y
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_REGULATOR=y
CONFIG_NET_9P=y
CONFIG_NET_9P_VIRTIO=y
CONFIG_NET_9P_RDMA=y
CONFIG_NET_9P_DEBUG=y
CONFIG_CAIF=y
CONFIG_CAIF_DEBUG=y
CONFIG_CAIF_NETDEV=y
CONFIG_CAIF_USB=y
CONFIG_CEPH_LIB=y
CONFIG_CEPH_LIB_PRETTYDEBUG=y
CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y
CONFIG_NFC=y
CONFIG_NFC_NCI=y
CONFIG_NFC_HCI=y
CONFIG_NFC_SHDLC=y
CONFIG_NFC_LLCP=y

#
# Near Field Communication (NFC) devices
#
CONFIG_PN544_NFC=y
CONFIG_PN544_HCI_NFC=y
CONFIG_NFC_PN533=y
# CONFIG_NFC_WILINK is not set
CONFIG_HAVE_BPF_JIT=y

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
CONFIG_FIRMWARE_IN_KERNEL=y
CONFIG_EXTRA_FIRMWARE=""
CONFIG_DEBUG_DRIVER=y
CONFIG_DEBUG_DEVRES=y
CONFIG_SYS_HYPERVISOR=y
# CONFIG_GENERIC_CPU_DEVICES is not set
CONFIG_REGMAP=y
CONFIG_REGMAP_I2C=y
CONFIG_REGMAP_SPI=y
CONFIG_REGMAP_IRQ=y
CONFIG_DMA_SHARED_BUFFER=y
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
CONFIG_MTD=y
CONFIG_MTD_REDBOOT_PARTS=y
CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED=y
CONFIG_MTD_REDBOOT_PARTS_READONLY=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_AR7_PARTS=y

#
# User Modules And Translation Layers
#
CONFIG_MTD_CHAR=y
CONFIG_HAVE_MTD_OTP=y
CONFIG_MTD_BLKDEVS=y
CONFIG_MTD_BLOCK=y
CONFIG_FTL=y
CONFIG_NFTL=y
CONFIG_NFTL_RW=y
CONFIG_INFTL=y
CONFIG_RFD_FTL=y
CONFIG_SSFDC=y
CONFIG_SM_FTL=y
CONFIG_MTD_OOPS=y
CONFIG_MTD_SWAP=y

#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=y
CONFIG_MTD_JEDECPROBE=y
CONFIG_MTD_GEN_PROBE=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
CONFIG_MTD_CFI_NOSWAP=y
# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
CONFIG_MTD_CFI_GEOMETRY=y
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
CONFIG_MTD_MAP_BANK_WIDTH_8=y
CONFIG_MTD_MAP_BANK_WIDTH_16=y
CONFIG_MTD_MAP_BANK_WIDTH_32=y
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
CONFIG_MTD_CFI_I4=y
CONFIG_MTD_CFI_I8=y
CONFIG_MTD_OTP=y
CONFIG_MTD_CFI_INTELEXT=y
CONFIG_MTD_CFI_AMDSTD=y
CONFIG_MTD_CFI_STAA=y
CONFIG_MTD_CFI_UTIL=y
CONFIG_MTD_RAM=y
CONFIG_MTD_ROM=y
CONFIG_MTD_ABSENT=y

#
# Mapping drivers for chip access
#
CONFIG_MTD_COMPLEX_MAPPINGS=y
CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_PHYSMAP_COMPAT=y
CONFIG_MTD_PHYSMAP_START=0x8000000
CONFIG_MTD_PHYSMAP_LEN=0
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
CONFIG_MTD_SC520CDP=y
CONFIG_MTD_NETSC520=y
CONFIG_MTD_TS5500=y
CONFIG_MTD_SBC_GXX=y
CONFIG_MTD_AMD76XROM=y
CONFIG_MTD_ICHXROM=y
CONFIG_MTD_ESB2ROM=y
CONFIG_MTD_CK804XROM=y
CONFIG_MTD_SCB2_FLASH=y
CONFIG_MTD_NETtel=y
CONFIG_MTD_L440GX=y
CONFIG_MTD_PCI=y
CONFIG_MTD_PCMCIA=y
CONFIG_MTD_PCMCIA_ANONYMOUS=y
CONFIG_MTD_GPIO_ADDR=y
CONFIG_MTD_INTEL_VR_NOR=y
CONFIG_MTD_PLATRAM=y
CONFIG_MTD_LATCH_ADDR=y

#
# Self-contained MTD device drivers
#
# CONFIG_MTD_PMC551 is not set
CONFIG_MTD_DATAFLASH=y
CONFIG_MTD_DATAFLASH_WRITE_VERIFY=y
CONFIG_MTD_DATAFLASH_OTP=y
CONFIG_MTD_M25P80=y
CONFIG_M25PXX_USE_FAST_READ=y
CONFIG_MTD_SST25L=y
CONFIG_MTD_SLRAM=y
CONFIG_MTD_PHRAM=y
CONFIG_MTD_MTDRAM=y
CONFIG_MTDRAM_TOTAL_SIZE=4096
CONFIG_MTDRAM_ERASE_SIZE=128
CONFIG_MTDRAM_ABS_POS=0
CONFIG_MTD_BLOCK2MTD=y

#
# Disk-On-Chip Device Drivers
#
CONFIG_MTD_DOC2000=y
CONFIG_MTD_DOC2001=y
CONFIG_MTD_DOC2001PLUS=y
CONFIG_MTD_DOCG3=y
CONFIG_BCH_CONST_M=14
CONFIG_BCH_CONST_T=4
CONFIG_MTD_DOCPROBE=y
CONFIG_MTD_DOCECC=y
CONFIG_MTD_DOCPROBE_ADVANCED=y
CONFIG_MTD_DOCPROBE_ADDRESS=0x0
CONFIG_MTD_DOCPROBE_HIGH=y
CONFIG_MTD_DOCPROBE_55AA=y
CONFIG_MTD_NAND_ECC=y
CONFIG_MTD_NAND_ECC_SMC=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_VERIFY_WRITE=y
CONFIG_MTD_NAND_BCH=y
CONFIG_MTD_NAND_ECC_BCH=y
CONFIG_MTD_SM_COMMON=y
CONFIG_MTD_NAND_MUSEUM_IDS=y
CONFIG_MTD_NAND_DENALI=y
CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR=0xFF108018
CONFIG_MTD_NAND_IDS=y
CONFIG_MTD_NAND_RICOH=y
CONFIG_MTD_NAND_DISKONCHIP=y
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED=y
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
CONFIG_MTD_NAND_DISKONCHIP_PROBE_HIGH=y
CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE=y
CONFIG_MTD_NAND_DOCG4=y
CONFIG_MTD_NAND_CAFE=y
CONFIG_MTD_NAND_NANDSIM=y
CONFIG_MTD_NAND_PLATFORM=y
CONFIG_MTD_ALAUDA=y
CONFIG_MTD_ONENAND=y
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
CONFIG_MTD_ONENAND_GENERIC=y
CONFIG_MTD_ONENAND_OTP=y
CONFIG_MTD_ONENAND_2X_PROGRAM=y
CONFIG_MTD_ONENAND_SIM=y

#
# LPDDR flash memory drivers
#
CONFIG_MTD_LPDDR=y
CONFIG_MTD_QINFO_PROBE=y
CONFIG_MTD_UBI=y
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_RESERVE=1
CONFIG_MTD_UBI_GLUEBI=y
CONFIG_PARPORT=y
CONFIG_PARPORT_PC=y
CONFIG_PARPORT_SERIAL=y
CONFIG_PARPORT_PC_FIFO=y
CONFIG_PARPORT_PC_SUPERIO=y
CONFIG_PARPORT_PC_PCMCIA=y
# CONFIG_PARPORT_GSC is not set
CONFIG_PARPORT_AX88796=y
CONFIG_PARPORT_1284=y
CONFIG_PARPORT_NOT_PC=y
CONFIG_PNP=y
CONFIG_PNP_DEBUG_MESSAGES=y

#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_FD=y
# CONFIG_PARIDE is not set
CONFIG_BLK_DEV_PCIESSD_MTIP32XX=y
CONFIG_BLK_CPQ_DA=y
CONFIG_BLK_CPQ_CISS_DA=y
CONFIG_CISS_SCSI_TAPE=y
CONFIG_BLK_DEV_DAC960=y
CONFIG_BLK_DEV_UMEM=y
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
CONFIG_BLK_DEV_CRYPTOLOOP=y
CONFIG_BLK_DEV_DRBD=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_BLK_DEV_NBD=y
CONFIG_BLK_DEV_NVME=y
CONFIG_BLK_DEV_OSD=y
CONFIG_BLK_DEV_SX8=y
CONFIG_BLK_DEV_UB=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=16384
CONFIG_BLK_DEV_XIP=y
CONFIG_CDROM_PKTCDVD=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_ATA_OVER_ETH=y
CONFIG_XEN_BLKDEV_FRONTEND=y
CONFIG_XEN_BLKDEV_BACKEND=y
CONFIG_VIRTIO_BLK=y
CONFIG_BLK_DEV_HD=y
CONFIG_BLK_DEV_RBD=y

#
# Misc devices
#
CONFIG_SENSORS_LIS3LV02D=y
CONFIG_AD525X_DPOT=y
CONFIG_AD525X_DPOT_I2C=y
CONFIG_AD525X_DPOT_SPI=y
CONFIG_IBM_ASM=y
CONFIG_PHANTOM=y
CONFIG_INTEL_MID_PTI=y
CONFIG_SGI_IOC4=y
CONFIG_TIFM_CORE=y
CONFIG_TIFM_7XX1=y
CONFIG_ICS932S401=y
CONFIG_ENCLOSURE_SERVICES=y
# CONFIG_SGI_XP is not set
CONFIG_HP_ILO=y
# CONFIG_SGI_GRU is not set
CONFIG_APDS9802ALS=y
CONFIG_ISL29003=y
CONFIG_ISL29020=y
CONFIG_SENSORS_TSL2550=y
CONFIG_SENSORS_BH1780=y
CONFIG_SENSORS_BH1770=y
CONFIG_SENSORS_APDS990X=y
CONFIG_HMC6352=y
CONFIG_DS1682=y
CONFIG_TI_DAC7512=y
CONFIG_VMWARE_BALLOON=y
CONFIG_BMP085=y
CONFIG_BMP085_I2C=y
CONFIG_BMP085_SPI=y
CONFIG_PCH_PHUB=y
CONFIG_USB_SWITCH_FSA9480=y
CONFIG_C2PORT=y
CONFIG_C2PORT_DURAMAR_2150=y

#
# EEPROM support
#
CONFIG_EEPROM_AT24=y
CONFIG_EEPROM_AT25=y
CONFIG_EEPROM_LEGACY=y
CONFIG_EEPROM_MAX6875=y
CONFIG_EEPROM_93CX6=y
CONFIG_EEPROM_93XX46=y
CONFIG_CB710_CORE=y
CONFIG_CB710_DEBUG=y
CONFIG_CB710_DEBUG_ASSUMPTIONS=y
# CONFIG_IWMC3200TOP is not set

#
# Texas Instruments shared transport line discipline
#
CONFIG_TI_ST=y
CONFIG_SENSORS_LIS3_I2C=y

#
# Altera FPGA firmware download module
#
CONFIG_ALTERA_STAPL=y
CONFIG_INTEL_MEI=y
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

#
# SCSI device support
#
CONFIG_SCSI_MOD=y
CONFIG_RAID_ATTRS=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
CONFIG_SCSI_TGT=y
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_PROC_FS=y

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=y
CONFIG_CHR_DEV_OSST=y
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_SCH=y
CONFIG_SCSI_ENCLOSURE=y
CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_CONSTANTS=y
CONFIG_SCSI_LOGGING=y
CONFIG_SCSI_SCAN_ASYNC=y

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=y
CONFIG_SCSI_FC_TGT_ATTRS=y
CONFIG_SCSI_ISCSI_ATTRS=y
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_ATTRS=y
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=y
CONFIG_ISCSI_BOOT_SYSFS=y
CONFIG_SCSI_CXGB3_ISCSI=y
CONFIG_SCSI_CXGB4_ISCSI=y
CONFIG_SCSI_BNX2_ISCSI=y
CONFIG_SCSI_BNX2X_FCOE=y
CONFIG_BE2ISCSI=y
CONFIG_BLK_DEV_3W_XXXX_RAID=y
CONFIG_SCSI_HPSA=y
CONFIG_SCSI_3W_9XXX=y
CONFIG_SCSI_3W_SAS=y
CONFIG_SCSI_ACARD=y
CONFIG_SCSI_AACRAID=y
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
CONFIG_AIC7XXX_RESET_DELAY_MS=5000
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
CONFIG_SCSI_AIC7XXX_OLD=y
CONFIG_SCSI_AIC79XX=y
CONFIG_AIC79XX_CMDS_PER_DEVICE=32
CONFIG_AIC79XX_RESET_DELAY_MS=5000
CONFIG_AIC79XX_DEBUG_ENABLE=y
CONFIG_AIC79XX_DEBUG_MASK=0
CONFIG_AIC79XX_REG_PRETTY_PRINT=y
CONFIG_SCSI_AIC94XX=y
CONFIG_AIC94XX_DEBUG=y
CONFIG_SCSI_MVSAS=y
CONFIG_SCSI_MVSAS_DEBUG=y
CONFIG_SCSI_MVSAS_TASKLET=y
CONFIG_SCSI_MVUMI=y
CONFIG_SCSI_DPT_I2O=y
CONFIG_SCSI_ADVANSYS=y
CONFIG_SCSI_ARCMSR=y
CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=y
CONFIG_MEGARAID_MAILBOX=y
CONFIG_MEGARAID_LEGACY=y
CONFIG_MEGARAID_SAS=y
CONFIG_SCSI_MPT2SAS=y
CONFIG_SCSI_MPT2SAS_MAX_SGE=128
CONFIG_SCSI_MPT2SAS_LOGGING=y
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_HPTIOP=y
CONFIG_SCSI_BUSLOGIC=y
CONFIG_VMWARE_PVSCSI=y
CONFIG_HYPERV_STORAGE=y
CONFIG_LIBFC=y
CONFIG_LIBFCOE=y
CONFIG_FCOE=y
CONFIG_FCOE_FNIC=y
CONFIG_SCSI_DMX3191D=y
CONFIG_SCSI_EATA=y
CONFIG_SCSI_EATA_TAGGED_QUEUE=y
CONFIG_SCSI_EATA_LINKED_COMMANDS=y
CONFIG_SCSI_EATA_MAX_TAGS=16
CONFIG_SCSI_FUTURE_DOMAIN=y
CONFIG_SCSI_GDTH=y
CONFIG_SCSI_ISCI=y
CONFIG_SCSI_IPS=y
CONFIG_SCSI_INITIO=y
CONFIG_SCSI_INIA100=y
CONFIG_SCSI_PPA=y
CONFIG_SCSI_IMM=y
CONFIG_SCSI_IZIP_EPP16=y
CONFIG_SCSI_IZIP_SLOW_CTR=y
CONFIG_SCSI_STEX=y
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
CONFIG_SCSI_IPR=y
CONFIG_SCSI_IPR_TRACE=y
CONFIG_SCSI_IPR_DUMP=y
CONFIG_SCSI_QLOGIC_1280=y
CONFIG_SCSI_QLA_FC=y
CONFIG_TCM_QLA2XXX=y
CONFIG_SCSI_QLA_ISCSI=y
# CONFIG_SCSI_LPFC is not set
CONFIG_SCSI_DC395x=y
CONFIG_SCSI_DC390T=y
CONFIG_SCSI_DEBUG=y
CONFIG_SCSI_PMCRAID=y
CONFIG_SCSI_PM8001=y
CONFIG_SCSI_SRP=y
CONFIG_SCSI_BFA_FC=y
CONFIG_SCSI_VIRTIO=y
CONFIG_SCSI_LOWLEVEL_PCMCIA=y
CONFIG_SCSI_DH=y
# CONFIG_SCSI_DH_RDAC is not set
# CONFIG_SCSI_DH_HP_SW is not set
# CONFIG_SCSI_DH_EMC is not set
# CONFIG_SCSI_DH_ALUA is not set
CONFIG_SCSI_OSD_INITIATOR=y
CONFIG_SCSI_OSD_ULD=y
CONFIG_SCSI_OSD_DPRINT_SENSE=1
# CONFIG_SCSI_OSD_DEBUG is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_VERBOSE_ERROR=y
CONFIG_ATA_ACPI=y
CONFIG_SATA_PMP=y

#
# Controllers with non-SFF native interface
#
CONFIG_SATA_AHCI=y
CONFIG_SATA_AHCI_PLATFORM=y
CONFIG_SATA_INIC162X=y
CONFIG_SATA_ACARD_AHCI=y
CONFIG_SATA_SIL24=y
CONFIG_ATA_SFF=y

#
# SFF controllers with custom DMA interface
#
CONFIG_PDC_ADMA=y
CONFIG_SATA_QSTOR=y
CONFIG_SATA_SX4=y
CONFIG_ATA_BMDMA=y

#
# SATA SFF controllers with BMDMA
#
CONFIG_ATA_PIIX=y
CONFIG_SATA_MV=y
CONFIG_SATA_NV=y
CONFIG_SATA_PROMISE=y
CONFIG_SATA_SIL=y
CONFIG_SATA_SIS=y
CONFIG_SATA_SVW=y
CONFIG_SATA_ULI=y
CONFIG_SATA_VIA=y
CONFIG_SATA_VITESSE=y

#
# PATA SFF controllers with BMDMA
#
CONFIG_PATA_ALI=y
CONFIG_PATA_AMD=y
CONFIG_PATA_ARASAN_CF=y
CONFIG_PATA_ARTOP=y
CONFIG_PATA_ATIIXP=y
CONFIG_PATA_ATP867X=y
CONFIG_PATA_CMD64X=y
CONFIG_PATA_CS5520=y
CONFIG_PATA_CS5530=y
CONFIG_PATA_CS5536=y
CONFIG_PATA_CYPRESS=y
CONFIG_PATA_EFAR=y
CONFIG_PATA_HPT366=y
CONFIG_PATA_HPT37X=y
CONFIG_PATA_HPT3X2N=y
CONFIG_PATA_HPT3X3=y
CONFIG_PATA_HPT3X3_DMA=y
CONFIG_PATA_IT8213=y
CONFIG_PATA_IT821X=y
CONFIG_PATA_JMICRON=y
CONFIG_PATA_MARVELL=y
CONFIG_PATA_NETCELL=y
CONFIG_PATA_NINJA32=y
CONFIG_PATA_NS87415=y
CONFIG_PATA_OLDPIIX=y
CONFIG_PATA_OPTIDMA=y
CONFIG_PATA_PDC2027X=y
CONFIG_PATA_PDC_OLD=y
CONFIG_PATA_RADISYS=y
CONFIG_PATA_RDC=y
CONFIG_PATA_SC1200=y
CONFIG_PATA_SCH=y
CONFIG_PATA_SERVERWORKS=y
CONFIG_PATA_SIL680=y
CONFIG_PATA_SIS=y
CONFIG_PATA_TOSHIBA=y
CONFIG_PATA_TRIFLEX=y
CONFIG_PATA_VIA=y
CONFIG_PATA_WINBOND=y

#
# PIO-only SFF controllers
#
CONFIG_PATA_CMD640_PCI=y
CONFIG_PATA_MPIIX=y
CONFIG_PATA_NS87410=y
CONFIG_PATA_OPTI=y
CONFIG_PATA_PCMCIA=y
CONFIG_PATA_PLATFORM=y
CONFIG_PATA_RZ1000=y

#
# Generic fallback / legacy drivers
#
CONFIG_PATA_ACPI=y
CONFIG_ATA_GENERIC=y
CONFIG_PATA_LEGACY=y
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_AUTODETECT=y
CONFIG_MD_LINEAR=y
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=y
CONFIG_MD_RAID456=y
CONFIG_MULTICORE_RAID456=y
CONFIG_MD_MULTIPATH=y
CONFIG_MD_FAULTY=y
CONFIG_BLK_DEV_DM=y
CONFIG_DM_DEBUG=y
CONFIG_DM_BUFIO=y
CONFIG_DM_PERSISTENT_DATA=y
CONFIG_DM_CRYPT=y
CONFIG_DM_SNAPSHOT=y
CONFIG_DM_THIN_PROVISIONING=y
CONFIG_DM_DEBUG_BLOCK_STACK_TRACING=y
# CONFIG_DM_DEBUG_SPACE_MAPS is not set
CONFIG_DM_MIRROR=y
CONFIG_DM_RAID=y
CONFIG_DM_LOG_USERSPACE=y
CONFIG_DM_ZERO=y
CONFIG_DM_MULTIPATH=y
CONFIG_DM_MULTIPATH_QL=y
CONFIG_DM_MULTIPATH_ST=y
CONFIG_DM_DELAY=y
CONFIG_DM_UEVENT=y
CONFIG_DM_FLAKEY=y
CONFIG_DM_VERITY=y
CONFIG_TARGET_CORE=y
CONFIG_TCM_IBLOCK=y
CONFIG_TCM_FILEIO=y
CONFIG_TCM_PSCSI=y
CONFIG_LOOPBACK_TARGET=y
CONFIG_TCM_FC=y
CONFIG_ISCSI_TARGET=y
CONFIG_SBP_TARGET=y
CONFIG_FUSION=y
CONFIG_FUSION_SPI=y
CONFIG_FUSION_FC=y
CONFIG_FUSION_SAS=y
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=y
CONFIG_FUSION_LAN=y
CONFIG_FUSION_LOGGING=y

#
# IEEE 1394 (FireWire) support
#
CONFIG_FIREWIRE=y
CONFIG_FIREWIRE_OHCI=y
CONFIG_FIREWIRE_SBP2=y
CONFIG_FIREWIRE_NET=y
CONFIG_FIREWIRE_NOSY=y
CONFIG_I2O=y
CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
CONFIG_I2O_EXT_ADAPTEC=y
CONFIG_I2O_EXT_ADAPTEC_DMA64=y
CONFIG_I2O_CONFIG=y
CONFIG_I2O_CONFIG_OLD_IOCTL=y
CONFIG_I2O_BUS=y
CONFIG_I2O_BLOCK=y
CONFIG_I2O_SCSI=y
CONFIG_I2O_PROC=y
CONFIG_MACINTOSH_DRIVERS=y
CONFIG_MAC_EMUMOUSEBTN=y
CONFIG_NETDEVICES=y
CONFIG_NET_CORE=y
CONFIG_BONDING=y
CONFIG_DUMMY=y
CONFIG_EQUALIZER=y
CONFIG_NET_FC=y
CONFIG_MII=y
CONFIG_IEEE802154_DRIVERS=y
CONFIG_IEEE802154_FAKEHARD=y
CONFIG_IEEE802154_FAKELB=y
CONFIG_IFB=y
CONFIG_NET_TEAM=y
CONFIG_NET_TEAM_MODE_ROUNDROBIN=y
CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=y
CONFIG_NET_TEAM_MODE_LOADBALANCE=y
CONFIG_MACVLAN=y
CONFIG_MACVTAP=y
CONFIG_NETCONSOLE=y
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
CONFIG_NETPOLL_TRAP=y
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_RIONET=y
CONFIG_RIONET_TX_SIZE=128
CONFIG_RIONET_RX_SIZE=128
CONFIG_TUN=y
CONFIG_VETH=y
CONFIG_VIRTIO_NET=y
CONFIG_SUNGEM_PHY=y
CONFIG_ARCNET=y
CONFIG_ARCNET_1201=y
CONFIG_ARCNET_1051=y
CONFIG_ARCNET_RAW=y
CONFIG_ARCNET_CAP=y
CONFIG_ARCNET_COM90xx=y
CONFIG_ARCNET_COM90xxIO=y
CONFIG_ARCNET_RIM_I=y
CONFIG_ARCNET_COM20020=y
CONFIG_ARCNET_COM20020_PCI=y
CONFIG_ARCNET_COM20020_CS=y
CONFIG_ATM_DRIVERS=y
CONFIG_ATM_DUMMY=y
CONFIG_ATM_TCP=y
CONFIG_ATM_LANAI=y
CONFIG_ATM_ENI=y
CONFIG_ATM_ENI_DEBUG=y
CONFIG_ATM_ENI_TUNE_BURST=y
CONFIG_ATM_ENI_BURST_TX_16W=y
CONFIG_ATM_ENI_BURST_TX_8W=y
CONFIG_ATM_ENI_BURST_TX_4W=y
CONFIG_ATM_ENI_BURST_TX_2W=y
CONFIG_ATM_ENI_BURST_RX_16W=y
CONFIG_ATM_ENI_BURST_RX_8W=y
CONFIG_ATM_ENI_BURST_RX_4W=y
CONFIG_ATM_ENI_BURST_RX_2W=y
CONFIG_ATM_FIRESTREAM=y
CONFIG_ATM_ZATM=y
CONFIG_ATM_ZATM_DEBUG=y
CONFIG_ATM_NICSTAR=y
CONFIG_ATM_NICSTAR_USE_SUNI=y
CONFIG_ATM_NICSTAR_USE_IDT77105=y
CONFIG_ATM_IDT77252=y
CONFIG_ATM_IDT77252_DEBUG=y
CONFIG_ATM_IDT77252_RCV_ALL=y
CONFIG_ATM_IDT77252_USE_SUNI=y
CONFIG_ATM_AMBASSADOR=y
CONFIG_ATM_AMBASSADOR_DEBUG=y
CONFIG_ATM_HORIZON=y
CONFIG_ATM_HORIZON_DEBUG=y
CONFIG_ATM_IA=y
CONFIG_ATM_IA_DEBUG=y
CONFIG_ATM_FORE200E=y
CONFIG_ATM_FORE200E_USE_TASKLET=y
CONFIG_ATM_FORE200E_TX_RETRY=16
CONFIG_ATM_FORE200E_DEBUG=0
CONFIG_ATM_HE=y
CONFIG_ATM_HE_USE_SUNI=y
CONFIG_ATM_SOLOS=y

#
# CAIF transport drivers
#
CONFIG_CAIF_TTY=y
CONFIG_CAIF_SPI_SLAVE=y
CONFIG_CAIF_SPI_SYNC=y
CONFIG_CAIF_HSI=y

#
# Distributed Switch Architecture drivers
#
CONFIG_NET_DSA_MV88E6XXX=y
CONFIG_NET_DSA_MV88E6060=y
CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
CONFIG_NET_DSA_MV88E6131=y
CONFIG_NET_DSA_MV88E6123_61_65=y
CONFIG_ETHERNET=y
CONFIG_MDIO=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_PCMCIA_3C574=y
CONFIG_PCMCIA_3C589=y
CONFIG_VORTEX=y
CONFIG_TYPHOON=y
CONFIG_NET_VENDOR_ADAPTEC=y
CONFIG_ADAPTEC_STARFIRE=y
CONFIG_NET_VENDOR_ALTEON=y
CONFIG_ACENIC=y
CONFIG_ACENIC_OMIT_TIGON_I=y
CONFIG_NET_VENDOR_AMD=y
CONFIG_AMD8111_ETH=y
CONFIG_PCNET32=y
CONFIG_PCMCIA_NMCLAN=y
CONFIG_NET_VENDOR_ATHEROS=y
CONFIG_ATL2=y
CONFIG_ATL1=y
CONFIG_ATL1E=y
CONFIG_ATL1C=y
CONFIG_NET_VENDOR_BROADCOM=y
CONFIG_B44=y
CONFIG_B44_PCI_AUTOSELECT=y
CONFIG_B44_PCICORE_AUTOSELECT=y
CONFIG_B44_PCI=y
CONFIG_BNX2=y
CONFIG_CNIC=y
CONFIG_TIGON3=y
CONFIG_BNX2X=y
CONFIG_NET_VENDOR_BROCADE=y
CONFIG_BNA=y
CONFIG_NET_CALXEDA_XGMAC=y
CONFIG_NET_VENDOR_CHELSIO=y
CONFIG_CHELSIO_T1=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T3=y
CONFIG_CHELSIO_T4=y
CONFIG_CHELSIO_T4VF=y
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=y
CONFIG_DNET=y
CONFIG_NET_VENDOR_DEC=y
CONFIG_NET_TULIP=y
CONFIG_DE2104X=y
CONFIG_DE2104X_DSL=0
CONFIG_TULIP=y
CONFIG_TULIP_MWI=y
CONFIG_TULIP_MMIO=y
CONFIG_TULIP_NAPI=y
CONFIG_TULIP_NAPI_HW_MITIGATION=y
CONFIG_DE4X5=y
CONFIG_WINBOND_840=y
CONFIG_DM9102=y
CONFIG_ULI526X=y
CONFIG_PCMCIA_XIRCOM=y
CONFIG_NET_VENDOR_DLINK=y
CONFIG_DE600=y
CONFIG_DE620=y
CONFIG_DL2K=y
CONFIG_SUNDANCE=y
CONFIG_SUNDANCE_MMIO=y
CONFIG_NET_VENDOR_EMULEX=y
CONFIG_BE2NET=y
CONFIG_NET_VENDOR_EXAR=y
CONFIG_S2IO=y
CONFIG_VXGE=y
CONFIG_VXGE_DEBUG_TRACE_ALL=y
CONFIG_NET_VENDOR_FUJITSU=y
CONFIG_PCMCIA_FMVJ18X=y
CONFIG_NET_VENDOR_HP=y
CONFIG_HP100=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E100=y
CONFIG_E1000=y
CONFIG_E1000E=y
CONFIG_IGB=y
CONFIG_IGB_DCA=y
CONFIG_IGB_PTP=y
CONFIG_IGBVF=y
CONFIG_IXGB=y
CONFIG_IXGBE=y
CONFIG_IXGBE_HWMON=y
CONFIG_IXGBE_DCA=y
CONFIG_IXGBE_DCB=y
CONFIG_IXGBE_PTP=y
CONFIG_IXGBEVF=y
CONFIG_NET_VENDOR_I825XX=y
CONFIG_ZNET=y
CONFIG_IP1000=y
CONFIG_JME=y
CONFIG_NET_VENDOR_MARVELL=y
CONFIG_SKGE=y
CONFIG_SKGE_DEBUG=y
CONFIG_SKGE_GENESIS=y
CONFIG_SKY2=y
CONFIG_SKY2_DEBUG=y
CONFIG_NET_VENDOR_MELLANOX=y
CONFIG_MLX4_EN=y
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_CORE=y
CONFIG_MLX4_DEBUG=y
CONFIG_NET_VENDOR_MICREL=y
CONFIG_KS8842=y
CONFIG_KS8851=y
CONFIG_KS8851_MLL=y
CONFIG_KSZ884X_PCI=y
CONFIG_NET_VENDOR_MICROCHIP=y
CONFIG_ENC28J60=y
CONFIG_ENC28J60_WRITEVERIFY=y
CONFIG_NET_VENDOR_MYRI=y
CONFIG_MYRI10GE=y
CONFIG_MYRI10GE_DCA=y
CONFIG_FEALNX=y
CONFIG_NET_VENDOR_NATSEMI=y
CONFIG_NATSEMI=y
CONFIG_NS83820=y
CONFIG_NET_VENDOR_8390=y
CONFIG_PCMCIA_AXNET=y
CONFIG_NE2K_PCI=y
CONFIG_PCMCIA_PCNET=y
CONFIG_NET_VENDOR_NVIDIA=y
CONFIG_FORCEDETH=y
CONFIG_NET_VENDOR_OKI=y
CONFIG_PCH_GBE=y
CONFIG_ETHOC=y
CONFIG_NET_PACKET_ENGINE=y
CONFIG_HAMACHI=y
CONFIG_YELLOWFIN=y
CONFIG_NET_VENDOR_QLOGIC=y
CONFIG_QLA3XXX=y
CONFIG_QLCNIC=y
CONFIG_QLGE=y
CONFIG_NETXEN_NIC=y
CONFIG_NET_VENDOR_REALTEK=y
CONFIG_ATP=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
CONFIG_8139TOO_PIO=y
CONFIG_8139TOO_TUNE_TWISTER=y
CONFIG_8139TOO_8129=y
CONFIG_8139_OLD_RX_RESET=y
CONFIG_R8169=y
CONFIG_NET_VENDOR_RDC=y
CONFIG_R6040=y
CONFIG_NET_VENDOR_SEEQ=y
CONFIG_SEEQ8005=y
CONFIG_NET_VENDOR_SILAN=y
CONFIG_SC92031=y
CONFIG_NET_VENDOR_SIS=y
CONFIG_SIS900=y
CONFIG_SIS190=y
CONFIG_SFC=y
CONFIG_SFC_MTD=y
CONFIG_SFC_MCDI_MON=y
CONFIG_SFC_SRIOV=y
CONFIG_NET_VENDOR_SMSC=y
CONFIG_PCMCIA_SMC91C92=y
CONFIG_EPIC100=y
CONFIG_SMSC9420=y
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_STMMAC_ETH=y
CONFIG_STMMAC_PLATFORM=y
CONFIG_STMMAC_PCI=y
CONFIG_STMMAC_DEBUG_FS=y
CONFIG_STMMAC_DA=y
# CONFIG_STMMAC_RING is not set
CONFIG_STMMAC_CHAINED=y
CONFIG_NET_VENDOR_SUN=y
CONFIG_HAPPYMEAL=y
CONFIG_SUNGEM=y
CONFIG_CASSINI=y
CONFIG_NIU=y
CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_TLAN=y
CONFIG_NET_VENDOR_VIA=y
CONFIG_VIA_RHINE=y
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=y
CONFIG_NET_VENDOR_WIZNET=y
CONFIG_WIZNET_W5100=y
CONFIG_WIZNET_W5300=y
# CONFIG_WIZNET_BUS_DIRECT is not set
# CONFIG_WIZNET_BUS_INDIRECT is not set
CONFIG_WIZNET_BUS_ANY=y
CONFIG_NET_VENDOR_XIRCOM=y
CONFIG_PCMCIA_XIRC2PS=y
CONFIG_FDDI=y
CONFIG_DEFXX=y
# CONFIG_DEFXX_MMIO is not set
CONFIG_SKFP=y
CONFIG_HIPPI=y
CONFIG_ROADRUNNER=y
CONFIG_ROADRUNNER_LARGE_RINGS=y
CONFIG_NET_SB1000=y
CONFIG_PHYLIB=y

#
# MII PHY device drivers
#
CONFIG_AMD_PHY=y
CONFIG_MARVELL_PHY=y
CONFIG_DAVICOM_PHY=y
CONFIG_QSEMI_PHY=y
CONFIG_LXT_PHY=y
CONFIG_CICADA_PHY=y
CONFIG_VITESSE_PHY=y
CONFIG_SMSC_PHY=y
CONFIG_BROADCOM_PHY=y
CONFIG_ICPLUS_PHY=y
CONFIG_REALTEK_PHY=y
CONFIG_NATIONAL_PHY=y
CONFIG_STE10XP=y
CONFIG_LSI_ET1011C_PHY=y
CONFIG_MICREL_PHY=y
CONFIG_FIXED_PHY=y
CONFIG_MDIO_BITBANG=y
CONFIG_MDIO_GPIO=y
CONFIG_MICREL_KS8995MA=y
CONFIG_PLIP=y
CONFIG_PPP=y
CONFIG_PPP_BSDCOMP=y
CONFIG_PPP_DEFLATE=y
CONFIG_PPP_FILTER=y
CONFIG_PPP_MPPE=y
CONFIG_PPP_MULTILINK=y
CONFIG_PPPOATM=y
CONFIG_PPPOE=y
CONFIG_PPTP=y
CONFIG_PPPOL2TP=y
CONFIG_PPP_ASYNC=y
CONFIG_PPP_SYNC_TTY=y
CONFIG_SLIP=y
CONFIG_SLHC=y
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
CONFIG_SLIP_MODE_SLIP6=y

#
# USB Network Adapters
#
CONFIG_USB_CATC=y
CONFIG_USB_KAWETH=y
CONFIG_USB_PEGASUS=y
CONFIG_USB_RTL8150=y
CONFIG_USB_USBNET=y
CONFIG_USB_NET_AX8817X=y
CONFIG_USB_NET_CDCETHER=y
CONFIG_USB_NET_CDC_EEM=y
CONFIG_USB_NET_CDC_NCM=y
CONFIG_USB_NET_DM9601=y
CONFIG_USB_NET_SMSC75XX=y
CONFIG_USB_NET_SMSC95XX=y
CONFIG_USB_NET_GL620A=y
CONFIG_USB_NET_NET1080=y
CONFIG_USB_NET_PLUSB=y
CONFIG_USB_NET_MCS7830=y
CONFIG_USB_NET_RNDIS_HOST=y
CONFIG_USB_NET_CDC_SUBSET=y
CONFIG_USB_ALI_M5632=y
CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
CONFIG_USB_EPSON2888=y
CONFIG_USB_KC2190=y
CONFIG_USB_NET_ZAURUS=y
CONFIG_USB_NET_CX82310_ETH=y
CONFIG_USB_NET_KALMIA=y
CONFIG_USB_NET_QMI_WWAN=y
CONFIG_USB_HSO=y
CONFIG_USB_NET_INT51X1=y
CONFIG_USB_CDC_PHONET=y
CONFIG_USB_IPHETH=y
CONFIG_USB_SIERRA_NET=y
CONFIG_USB_VL600=y
CONFIG_WLAN=y
CONFIG_PCMCIA_RAYCS=y
CONFIG_LIBERTAS_THINFIRM=y
CONFIG_LIBERTAS_THINFIRM_DEBUG=y
CONFIG_LIBERTAS_THINFIRM_USB=y
CONFIG_AIRO=y
CONFIG_ATMEL=y
CONFIG_PCI_ATMEL=y
CONFIG_PCMCIA_ATMEL=y
CONFIG_AT76C50X_USB=y
CONFIG_AIRO_CS=y
CONFIG_PCMCIA_WL3501=y
CONFIG_PRISM54=y
CONFIG_USB_ZD1201=y
CONFIG_USB_NET_RNDIS_WLAN=y
CONFIG_RTL8180=y
CONFIG_RTL8187=y
CONFIG_RTL8187_LEDS=y
CONFIG_ADM8211=y
CONFIG_MAC80211_HWSIM=y
CONFIG_MWL8K=y
CONFIG_ATH_COMMON=y
CONFIG_ATH_DEBUG=y
CONFIG_ATH5K=y
CONFIG_ATH5K_DEBUG=y
CONFIG_ATH5K_TRACER=y
CONFIG_ATH5K_PCI=y
CONFIG_ATH9K_HW=y
CONFIG_ATH9K_COMMON=y
CONFIG_ATH9K_DFS_DEBUGFS=y
CONFIG_ATH9K_BTCOEX_SUPPORT=y
CONFIG_ATH9K=y
CONFIG_ATH9K_PCI=y
CONFIG_ATH9K_AHB=y
CONFIG_ATH9K_DEBUGFS=y
CONFIG_ATH9K_DFS_CERTIFIED=y
CONFIG_ATH9K_MAC_DEBUG=y
CONFIG_ATH9K_RATE_CONTROL=y
CONFIG_ATH9K_HTC=y
CONFIG_ATH9K_HTC_DEBUGFS=y
CONFIG_CARL9170=y
CONFIG_CARL9170_LEDS=y
CONFIG_CARL9170_DEBUGFS=y
CONFIG_CARL9170_WPC=y
CONFIG_CARL9170_HWRNG=y
CONFIG_ATH6KL=y
# CONFIG_ATH6KL_SDIO is not set
# CONFIG_ATH6KL_USB is not set
# CONFIG_ATH6KL_DEBUG is not set
CONFIG_B43=y
CONFIG_B43_SSB=y
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_PCICORE_AUTOSELECT=y
CONFIG_B43_PCMCIA=y
CONFIG_B43_SDIO=y
CONFIG_B43_PIO=y
CONFIG_B43_PHY_N=y
CONFIG_B43_PHY_LP=y
CONFIG_B43_PHY_HT=y
CONFIG_B43_LEDS=y
CONFIG_B43_HWRNG=y
CONFIG_B43_DEBUG=y
CONFIG_B43LEGACY=y
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
CONFIG_B43LEGACY_LEDS=y
CONFIG_B43LEGACY_HWRNG=y
CONFIG_B43LEGACY_DEBUG=y
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
# CONFIG_B43LEGACY_DMA_MODE is not set
# CONFIG_B43LEGACY_PIO_MODE is not set
CONFIG_BRCMUTIL=y
CONFIG_BRCMFMAC=y
CONFIG_BRCMFMAC_SDIO=y
CONFIG_BRCMFMAC_SDIO_OOB=y
CONFIG_BRCMFMAC_USB=y
CONFIG_BRCMDBG=y
CONFIG_HOSTAP=y
CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_FIRMWARE_NVRAM=y
CONFIG_HOSTAP_PLX=y
CONFIG_HOSTAP_PCI=y
CONFIG_HOSTAP_CS=y
CONFIG_IPW2100=y
CONFIG_IPW2100_MONITOR=y
CONFIG_IPW2100_DEBUG=y
CONFIG_IPW2200=y
CONFIG_IPW2200_MONITOR=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPW2200_PROMISCUOUS=y
CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_DEBUG=y
CONFIG_LIBIPW=y
CONFIG_LIBIPW_DEBUG=y
CONFIG_IWLWIFI=y

#
# Debugging Options
#
CONFIG_IWLWIFI_DEBUG=y
CONFIG_IWLWIFI_DEBUGFS=y
CONFIG_IWLWIFI_DEBUG_EXPERIMENTAL_UCODE=y
CONFIG_IWLWIFI_DEVICE_TRACING=y
CONFIG_IWLWIFI_DEVICE_TESTMODE=y
CONFIG_IWLWIFI_P2P=y
CONFIG_IWLWIFI_EXPERIMENTAL_MFP=y
CONFIG_IWLEGACY=y
CONFIG_IWL4965=y
CONFIG_IWL3945=y

#
# iwl3945 / iwl4965 Debugging Options
#
CONFIG_IWLEGACY_DEBUG=y
CONFIG_IWLEGACY_DEBUGFS=y
# CONFIG_IWM is not set
CONFIG_LIBERTAS=y
CONFIG_LIBERTAS_USB=y
CONFIG_LIBERTAS_CS=y
CONFIG_LIBERTAS_SDIO=y
CONFIG_LIBERTAS_SPI=y
CONFIG_LIBERTAS_DEBUG=y
CONFIG_LIBERTAS_MESH=y
CONFIG_HERMES=y
CONFIG_HERMES_PRISM=y
CONFIG_HERMES_CACHE_FW_ON_INIT=y
CONFIG_PLX_HERMES=y
CONFIG_TMD_HERMES=y
CONFIG_NORTEL_HERMES=y
CONFIG_PCI_HERMES=y
CONFIG_PCMCIA_HERMES=y
CONFIG_PCMCIA_SPECTRUM=y
CONFIG_ORINOCO_USB=y
CONFIG_P54_COMMON=y
CONFIG_P54_USB=y
CONFIG_P54_PCI=y
CONFIG_P54_SPI=y
CONFIG_P54_SPI_DEFAULT_EEPROM=y
CONFIG_P54_LEDS=y
# CONFIG_RT2X00 is not set
CONFIG_RTL8192CE=y
CONFIG_RTL8192SE=y
CONFIG_RTL8192DE=y
CONFIG_RTL8192CU=y
CONFIG_RTLWIFI=y
CONFIG_RTLWIFI_DEBUG=y
CONFIG_RTL8192C_COMMON=y
CONFIG_WL_TI=y
CONFIG_WL1251=y
CONFIG_WL1251_SPI=y
CONFIG_WL1251_SDIO=y
CONFIG_WL12XX=y
CONFIG_WLCORE=y
CONFIG_WLCORE_SPI=y
CONFIG_WLCORE_SDIO=y
CONFIG_WL12XX_PLATFORM_DATA=y
CONFIG_ZD1211RW=y
CONFIG_ZD1211RW_DEBUG=y
CONFIG_MWIFIEX=y
CONFIG_MWIFIEX_SDIO=y
CONFIG_MWIFIEX_PCIE=y
CONFIG_MWIFIEX_USB=y

#
# WiMAX Wireless Broadband devices
#
CONFIG_WIMAX_I2400M=y
CONFIG_WIMAX_I2400M_USB=y
# CONFIG_WIMAX_I2400M_SDIO is not set
CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
CONFIG_WAN=y
CONFIG_LANMEDIA=y
CONFIG_HDLC=y
CONFIG_HDLC_RAW=y
CONFIG_HDLC_RAW_ETH=y
CONFIG_HDLC_CISCO=y
CONFIG_HDLC_FR=y
CONFIG_HDLC_PPP=y
CONFIG_HDLC_X25=y
CONFIG_PCI200SYN=y
CONFIG_WANXL=y
CONFIG_PC300TOO=y
CONFIG_FARSYNC=y
CONFIG_DLCI=y
CONFIG_DLCI_MAX=8
CONFIG_WAN_ROUTER_DRIVERS=y
CONFIG_CYCLADES_SYNC=y
CONFIG_CYCLOMX_X25=y
CONFIG_LAPBETHER=y
CONFIG_X25_ASY=y
CONFIG_SBNI=y
CONFIG_SBNI_MULTILINE=y
CONFIG_XEN_NETDEV_FRONTEND=y
CONFIG_XEN_NETDEV_BACKEND=y
CONFIG_VMXNET3=y
CONFIG_HYPERV_NET=y
CONFIG_ISDN=y
CONFIG_ISDN_I4L=y
CONFIG_ISDN_PPP=y
CONFIG_ISDN_PPP_VJ=y
CONFIG_ISDN_MPP=y
CONFIG_IPPP_FILTER=y
CONFIG_ISDN_PPP_BSDCOMP=y
CONFIG_ISDN_AUDIO=y
CONFIG_ISDN_TTY_FAX=y
CONFIG_ISDN_X25=y

#
# ISDN feature submodules
#
CONFIG_ISDN_DIVERSION=y

#
# ISDN4Linux hardware drivers
#

#
# Passive cards
#
# CONFIG_ISDN_DRV_HISAX is not set

#
# Active cards
#
CONFIG_ISDN_CAPI=y
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_CAPI_TRACE=y
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_CAPI_CAPI20=y
CONFIG_ISDN_CAPI_CAPIDRV=y

#
# CAPI hardware drivers
#
CONFIG_CAPI_AVM=y
# CONFIG_ISDN_DRV_AVMB1_B1PCI is not set
# CONFIG_ISDN_DRV_AVMB1_B1PCMCIA is not set
# CONFIG_ISDN_DRV_AVMB1_T1PCI is not set
# CONFIG_ISDN_DRV_AVMB1_C4 is not set
# CONFIG_CAPI_EICON is not set
CONFIG_ISDN_DRV_GIGASET=y
CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_I4L is not set
# CONFIG_GIGASET_DUMMYLL is not set
CONFIG_GIGASET_BASE=y
CONFIG_GIGASET_M105=y
CONFIG_GIGASET_M101=y
CONFIG_GIGASET_DEBUG=y
CONFIG_MISDN=y
CONFIG_MISDN_DSP=y
CONFIG_MISDN_L1OIP=y

#
# mISDN hardware drivers
#
# CONFIG_MISDN_HFCPCI is not set
# CONFIG_MISDN_HFCMULTI is not set
# CONFIG_MISDN_HFCUSB is not set
# CONFIG_MISDN_AVMFRITZ is not set
# CONFIG_MISDN_SPEEDFAX is not set
# CONFIG_MISDN_INFINEON is not set
# CONFIG_MISDN_W6692 is not set
# CONFIG_MISDN_NETJET is not set

#
# Input device support
#
CONFIG_INPUT=y
CONFIG_INPUT_FF_MEMLESS=y
CONFIG_INPUT_POLLDEV=y
CONFIG_INPUT_SPARSEKMAP=y
CONFIG_INPUT_MATRIXKMAP=y

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_JOYDEV=y
CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_EVBUG=y

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
# CONFIG_KEYBOARD_ADP5588 is not set
# CONFIG_KEYBOARD_ADP5589 is not set
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_QT1070 is not set
# CONFIG_KEYBOARD_QT2160 is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_GPIO is not set
# CONFIG_KEYBOARD_GPIO_POLLED is not set
# CONFIG_KEYBOARD_TCA6416 is not set
# CONFIG_KEYBOARD_TCA8418 is not set
# CONFIG_KEYBOARD_MATRIX is not set
# CONFIG_KEYBOARD_LM8323 is not set
CONFIG_KEYBOARD_LM8333=y
# CONFIG_KEYBOARD_MAX7359 is not set
# CONFIG_KEYBOARD_MCS is not set
# CONFIG_KEYBOARD_MPR121 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_OPENCORES is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
# CONFIG_KEYBOARD_SUNKBD is not set
CONFIG_KEYBOARD_OMAP4=y
# CONFIG_KEYBOARD_XTKBD is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
# CONFIG_MOUSE_PS2_ELANTECH is not set
# CONFIG_MOUSE_PS2_SENTELIC is not set
# CONFIG_MOUSE_PS2_TOUCHKIT is not set
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_BCM5974 is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_MOUSE_GPIO is not set
CONFIG_MOUSE_SYNAPTICS_I2C=y
CONFIG_MOUSE_SYNAPTICS_USB=y
CONFIG_INPUT_JOYSTICK=y
CONFIG_JOYSTICK_ANALOG=y
# CONFIG_JOYSTICK_A3D is not set
# CONFIG_JOYSTICK_ADI is not set
# CONFIG_JOYSTICK_COBRA is not set
# CONFIG_JOYSTICK_GF2K is not set
# CONFIG_JOYSTICK_GRIP is not set
# CONFIG_JOYSTICK_GRIP_MP is not set
# CONFIG_JOYSTICK_GUILLEMOT is not set
# CONFIG_JOYSTICK_INTERACT is not set
# CONFIG_JOYSTICK_SIDEWINDER is not set
# CONFIG_JOYSTICK_TMDC is not set
# CONFIG_JOYSTICK_IFORCE is not set
# CONFIG_JOYSTICK_WARRIOR is not set
# CONFIG_JOYSTICK_MAGELLAN is not set
# CONFIG_JOYSTICK_SPACEORB is not set
# CONFIG_JOYSTICK_SPACEBALL is not set
# CONFIG_JOYSTICK_STINGER is not set
# CONFIG_JOYSTICK_TWIDJOY is not set
# CONFIG_JOYSTICK_ZHENHUA is not set
# CONFIG_JOYSTICK_DB9 is not set
# CONFIG_JOYSTICK_GAMECON is not set
# CONFIG_JOYSTICK_TURBOGRAFX is not set
# CONFIG_JOYSTICK_AS5011 is not set
# CONFIG_JOYSTICK_JOYDUMP is not set
# CONFIG_JOYSTICK_XPAD is not set
# CONFIG_JOYSTICK_WALKERA0701 is not set
CONFIG_INPUT_TABLET=y
# CONFIG_TABLET_USB_ACECAD is not set
# CONFIG_TABLET_USB_AIPTEK is not set
# CONFIG_TABLET_USB_GTCO is not set
# CONFIG_TABLET_USB_HANWANG is not set
# CONFIG_TABLET_USB_KBTAB is not set
# CONFIG_TABLET_USB_WACOM is not set
CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_88PM860X is not set
# CONFIG_TOUCHSCREEN_ADS7846 is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
# CONFIG_TOUCHSCREEN_AD7879 is not set
# CONFIG_TOUCHSCREEN_ATMEL_MXT is not set
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
# CONFIG_TOUCHSCREEN_BU21013 is not set
# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
CONFIG_TOUCHSCREEN_CYTTSP_CORE=y
CONFIG_TOUCHSCREEN_CYTTSP_I2C=y
CONFIG_TOUCHSCREEN_CYTTSP_SPI=y
# CONFIG_TOUCHSCREEN_DYNAPRO is not set
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
# CONFIG_TOUCHSCREEN_EETI is not set
# CONFIG_TOUCHSCREEN_EGALAX is not set
# CONFIG_TOUCHSCREEN_FUJITSU is not set
CONFIG_TOUCHSCREEN_ILI210X=y
# CONFIG_TOUCHSCREEN_GUNZE is not set
# CONFIG_TOUCHSCREEN_ELO is not set
# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
CONFIG_TOUCHSCREEN_WACOM_I2C=y
# CONFIG_TOUCHSCREEN_MAX11801 is not set
# CONFIG_TOUCHSCREEN_MCS5000 is not set
# CONFIG_TOUCHSCREEN_MTOUCH is not set
# CONFIG_TOUCHSCREEN_INEXIO is not set
# CONFIG_TOUCHSCREEN_MK712 is not set
# CONFIG_TOUCHSCREEN_PENMOUNT is not set
# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
# CONFIG_TOUCHSCREEN_PIXCIR is not set
# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
CONFIG_TOUCHSCREEN_MC13783=y
# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
# CONFIG_TOUCHSCREEN_TSC2005 is not set
# CONFIG_TOUCHSCREEN_TSC2007 is not set
# CONFIG_TOUCHSCREEN_ST1232 is not set
# CONFIG_TOUCHSCREEN_TPS6507X is not set
CONFIG_INPUT_MISC=y
# CONFIG_INPUT_88PM860X_ONKEY is not set
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_BMA150 is not set
# CONFIG_INPUT_PCSPKR is not set
CONFIG_INPUT_MC13783_PWRBUTTON=y
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_MPU3050 is not set
# CONFIG_INPUT_APANEL is not set
# CONFIG_INPUT_GP2A is not set
# CONFIG_INPUT_GPIO_TILT_POLLED is not set
# CONFIG_INPUT_ATLAS_BTNS is not set
# CONFIG_INPUT_ATI_REMOTE2 is not set
# CONFIG_INPUT_KEYSPAN_REMOTE is not set
# CONFIG_INPUT_KXTJ9 is not set
# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_YEALINK is not set
# CONFIG_INPUT_CM109 is not set
CONFIG_INPUT_TWL6040_VIBRA=y
# CONFIG_INPUT_UINPUT is not set
# CONFIG_INPUT_PCF8574 is not set
# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
# CONFIG_INPUT_ADXL34X is not set
# CONFIG_INPUT_CMA3000 is not set
CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
CONFIG_SERIO_CT82C710=y
CONFIG_SERIO_PARKBD=y
CONFIG_SERIO_PCIPS2=y
CONFIG_SERIO_LIBPS2=y
CONFIG_SERIO_RAW=y
CONFIG_SERIO_ALTERA_PS2=y
CONFIG_SERIO_PS2MULT=y
CONFIG_GAMEPORT=y
CONFIG_GAMEPORT_NS558=y
CONFIG_GAMEPORT_L4=y
CONFIG_GAMEPORT_EMU10K1=y
CONFIG_GAMEPORT_FM801=y

#
# Character devices
#
CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_VT_CONSOLE_SLEEP=y
CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_UNIX98_PTYS=y
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_ROCKETPORT=y
CONFIG_CYCLADES=y
CONFIG_CYZ_INTR=y
CONFIG_MOXA_INTELLIO=y
CONFIG_MOXA_SMARTIO=y
CONFIG_SYNCLINK=y
CONFIG_SYNCLINKMP=y
CONFIG_SYNCLINK_GT=y
CONFIG_NOZOMI=y
CONFIG_ISI=y
CONFIG_N_HDLC=y
CONFIG_N_GSM=y
CONFIG_TRACE_ROUTER=y
CONFIG_TRACE_SINK=y
CONFIG_DEVKMEM=y
CONFIG_STALDRV=y

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_CS=y
CONFIG_SERIAL_8250_NR_UARTS=32
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y

#
# Non-8250 serial port support
#
CONFIG_SERIAL_MAX3100=y
CONFIG_SERIAL_MAX3107=y
CONFIG_SERIAL_MFD_HSU=y
CONFIG_SERIAL_MFD_HSU_CONSOLE=y
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_CONSOLE_POLL=y
CONFIG_SERIAL_JSM=y
CONFIG_SERIAL_TIMBERDALE=y
CONFIG_SERIAL_ALTERA_JTAGUART=y
CONFIG_SERIAL_ALTERA_JTAGUART_CONSOLE=y
CONFIG_SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS=y
CONFIG_SERIAL_ALTERA_UART=y
CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4
CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200
CONFIG_SERIAL_ALTERA_UART_CONSOLE=y
CONFIG_SERIAL_IFX6X60=y
CONFIG_SERIAL_PCH_UART=y
CONFIG_SERIAL_PCH_UART_CONSOLE=y
CONFIG_SERIAL_XILINX_PS_UART=y
CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
CONFIG_TTY_PRINTK=y
CONFIG_PRINTER=y
CONFIG_LP_CONSOLE=y
CONFIG_PPDEV=y
CONFIG_HVC_DRIVER=y
CONFIG_HVC_IRQ=y
CONFIG_HVC_XEN=y
CONFIG_HVC_XEN_FRONTEND=y
CONFIG_VIRTIO_CONSOLE=y
# CONFIG_IPMI_HANDLER is not set
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_TIMERIOMEM=y
CONFIG_HW_RANDOM_INTEL=y
CONFIG_HW_RANDOM_AMD=y
CONFIG_HW_RANDOM_VIA=y
CONFIG_HW_RANDOM_VIRTIO=y
CONFIG_NVRAM=y
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set

#
# PCMCIA character devices
#
# CONFIG_SYNCLINK_CS is not set
# CONFIG_CARDMAN_4000 is not set
# CONFIG_CARDMAN_4040 is not set
# CONFIG_IPWIRELESS is not set
# CONFIG_MWAVE is not set
CONFIG_RAW_DRIVER=y
CONFIG_MAX_RAW_DEVS=256
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=y
CONFIG_UV_MMTIMER=y
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS=y
CONFIG_TCG_NSC=y
CONFIG_TCG_ATMEL=y
CONFIG_TCG_INFINEON=y
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX=y

#
# Multiplexer I2C Chip support
#
# CONFIG_I2C_MUX_GPIO is not set
# CONFIG_I2C_MUX_PCA9541 is not set
# CONFIG_I2C_MUX_PCA954x is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_ALGOBIT=y

#
# I2C Hardware Bus support
#

#
# PC SMBus host controller drivers
#
# CONFIG_I2C_ALI1535 is not set
# CONFIG_I2C_ALI1563 is not set
# CONFIG_I2C_ALI15X3 is not set
# CONFIG_I2C_AMD756 is not set
# CONFIG_I2C_AMD8111 is not set
CONFIG_I2C_I801=y
# CONFIG_I2C_ISCH is not set
# CONFIG_I2C_PIIX4 is not set
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_SIS5595 is not set
# CONFIG_I2C_SIS630 is not set
# CONFIG_I2C_SIS96X is not set
# CONFIG_I2C_VIA is not set
# CONFIG_I2C_VIAPRO is not set

#
# ACPI drivers
#
# CONFIG_I2C_SCMI is not set

#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
CONFIG_I2C_DESIGNWARE_PCI=y
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_INTEL_MID is not set
# CONFIG_I2C_OCORES is not set
# CONFIG_I2C_PCA_PLATFORM is not set
# CONFIG_I2C_PXA_PCI is not set
# CONFIG_I2C_SIMTEC is not set
# CONFIG_I2C_XILINX is not set

#
# External I2C/SMBus adapter drivers
#
# CONFIG_I2C_DIOLAN_U2C is not set
# CONFIG_I2C_PARPORT is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
# CONFIG_I2C_TAOS_EVM is not set
# CONFIG_I2C_TINY_USB is not set

#
# Other I2C/SMBus bus drivers
#
CONFIG_I2C_DEBUG_CORE=y
CONFIG_I2C_DEBUG_ALGO=y
CONFIG_I2C_DEBUG_BUS=y
CONFIG_SPI=y
CONFIG_SPI_DEBUG=y
CONFIG_SPI_MASTER=y

#
# SPI Master Controller Drivers
#
# CONFIG_SPI_ALTERA is not set
# CONFIG_SPI_BITBANG is not set
# CONFIG_SPI_BUTTERFLY is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_LM70_LLP is not set
# CONFIG_SPI_OC_TINY is not set
# CONFIG_SPI_PXA2XX_PCI is not set
# CONFIG_SPI_TOPCLIFF_PCH is not set
# CONFIG_SPI_XILINX is not set
# CONFIG_SPI_DESIGNWARE is not set

#
# SPI Protocol Masters
#
CONFIG_SPI_SPIDEV=y
CONFIG_SPI_TLE62X0=y
CONFIG_HSI=y
CONFIG_HSI_BOARDINFO=y

#
# HSI clients
#
CONFIG_HSI_CHAR=y

#
# PPS support
#
CONFIG_PPS=y
# CONFIG_PPS_DEBUG is not set

#
# PPS clients support
#
CONFIG_PPS_CLIENT_KTIMER=y
CONFIG_PPS_CLIENT_LDISC=y
CONFIG_PPS_CLIENT_PARPORT=y
CONFIG_PPS_CLIENT_GPIO=y

#
# PPS generators support
#

#
# PTP clock support
#
CONFIG_PTP_1588_CLOCK=y
CONFIG_DP83640_PHY=y
# CONFIG_PTP_1588_CLOCK_PCH is not set
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
CONFIG_GPIOLIB=y
CONFIG_DEBUG_GPIO=y
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_GENERIC=y

#
# Memory mapped GPIO drivers:
#
CONFIG_GPIO_GENERIC_PLATFORM=y
# CONFIG_GPIO_IT8761E is not set
# CONFIG_GPIO_SCH is not set
CONFIG_GPIO_ICH=y
# CONFIG_GPIO_VX855 is not set

#
# I2C GPIO expanders:
#
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX732X is not set
# CONFIG_GPIO_PCA953X is not set
# CONFIG_GPIO_PCF857X is not set
CONFIG_GPIO_RC5T583=y
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_ADP5588 is not set

#
# PCI GPIO expanders:
#
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_LANGWELL is not set
# CONFIG_GPIO_PCH is not set
# CONFIG_GPIO_ML_IOH is not set
# CONFIG_GPIO_RDC321X is not set

#
# SPI GPIO expanders:
#
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_74X164 is not set

#
# AC97 GPIO expanders:
#

#
# MODULbus GPIO expanders:
#
CONFIG_W1=y
CONFIG_W1_CON=y

#
# 1-wire Bus Masters
#
CONFIG_W1_MASTER_MATROX=y
CONFIG_W1_MASTER_DS2490=y
CONFIG_W1_MASTER_DS2482=y
CONFIG_W1_MASTER_DS1WM=y
CONFIG_W1_MASTER_GPIO=y

#
# 1-wire Slaves
#
CONFIG_W1_SLAVE_THERM=y
CONFIG_W1_SLAVE_SMEM=y
CONFIG_W1_SLAVE_DS2408=y
CONFIG_W1_SLAVE_DS2423=y
CONFIG_W1_SLAVE_DS2431=y
CONFIG_W1_SLAVE_DS2433=y
CONFIG_W1_SLAVE_DS2433_CRC=y
CONFIG_W1_SLAVE_DS2760=y
CONFIG_W1_SLAVE_DS2780=y
CONFIG_W1_SLAVE_DS2781=y
CONFIG_W1_SLAVE_BQ27000=y
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
# CONFIG_PDA_POWER is not set
# CONFIG_TEST_POWER is not set
CONFIG_BATTERY_DS2760=y
# CONFIG_BATTERY_DS2780 is not set
CONFIG_BATTERY_DS2781=y
# CONFIG_BATTERY_DS2782 is not set
CONFIG_BATTERY_SBS=y
# CONFIG_BATTERY_BQ27x00 is not set
# CONFIG_BATTERY_MAX17040 is not set
# CONFIG_BATTERY_MAX17042 is not set
# CONFIG_CHARGER_ISP1704 is not set
# CONFIG_CHARGER_MAX8903 is not set
CONFIG_CHARGER_LP8727=y
# CONFIG_CHARGER_GPIO is not set
CONFIG_CHARGER_MANAGER=y
# CONFIG_CHARGER_SMB347 is not set
CONFIG_POWER_AVS=y
CONFIG_HWMON=y
# CONFIG_HWMON_VID is not set
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Native drivers
#
# CONFIG_SENSORS_ABITUGURU is not set
# CONFIG_SENSORS_ABITUGURU3 is not set
# CONFIG_SENSORS_AD7314 is not set
# CONFIG_SENSORS_AD7414 is not set
# CONFIG_SENSORS_AD7418 is not set
# CONFIG_SENSORS_ADCXX is not set
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ADM9240 is not set
# CONFIG_SENSORS_ADT7411 is not set
# CONFIG_SENSORS_ADT7462 is not set
# CONFIG_SENSORS_ADT7470 is not set
# CONFIG_SENSORS_ADT7475 is not set
# CONFIG_SENSORS_ASC7621 is not set
# CONFIG_SENSORS_K8TEMP is not set
# CONFIG_SENSORS_K10TEMP is not set
# CONFIG_SENSORS_FAM15H_POWER is not set
# CONFIG_SENSORS_ASB100 is not set
# CONFIG_SENSORS_ATXP1 is not set
# CONFIG_SENSORS_DS620 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_I5K_AMB is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_F71882FG is not set
# CONFIG_SENSORS_F75375S is not set
# CONFIG_SENSORS_FSCHMD is not set
# CONFIG_SENSORS_G760A is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_GPIO_FAN is not set
CONFIG_SENSORS_CORETEMP=y
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_JC42 is not set
# CONFIG_SENSORS_LINEAGE is not set
# CONFIG_SENSORS_LM63 is not set
# CONFIG_SENSORS_LM70 is not set
# CONFIG_SENSORS_LM73 is not set
# CONFIG_SENSORS_LM75 is not set
# CONFIG_SENSORS_LM77 is not set
# CONFIG_SENSORS_LM78 is not set
# CONFIG_SENSORS_LM80 is not set
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_LM93 is not set
# CONFIG_SENSORS_LTC4151 is not set
# CONFIG_SENSORS_LTC4215 is not set
# CONFIG_SENSORS_LTC4245 is not set
# CONFIG_SENSORS_LTC4261 is not set
# CONFIG_SENSORS_LM95241 is not set
# CONFIG_SENSORS_LM95245 is not set
# CONFIG_SENSORS_MAX1111 is not set
# CONFIG_SENSORS_MAX16065 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_MAX1668 is not set
# CONFIG_SENSORS_MAX6639 is not set
# CONFIG_SENSORS_MAX6642 is not set
# CONFIG_SENSORS_MAX6650 is not set
CONFIG_SENSORS_MCP3021=y
# CONFIG_SENSORS_NTC_THERMISTOR is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set
# CONFIG_SENSORS_SHT15 is not set
# CONFIG_SENSORS_SHT21 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_SMM665 is not set
# CONFIG_SENSORS_DME1737 is not set
# CONFIG_SENSORS_EMC1403 is not set
# CONFIG_SENSORS_EMC2103 is not set
# CONFIG_SENSORS_EMC6W201 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47M192 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_SCH56XX_COMMON is not set
# CONFIG_SENSORS_SCH5627 is not set
# CONFIG_SENSORS_SCH5636 is not set
# CONFIG_SENSORS_ADS1015 is not set
# CONFIG_SENSORS_ADS7828 is not set
# CONFIG_SENSORS_ADS7871 is not set
# CONFIG_SENSORS_AMC6821 is not set
CONFIG_SENSORS_INA2XX=y
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_TMP102 is not set
# CONFIG_SENSORS_TMP401 is not set
# CONFIG_SENSORS_TMP421 is not set
# CONFIG_SENSORS_VIA_CPUTEMP is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
# CONFIG_SENSORS_W83781D is not set
# CONFIG_SENSORS_W83791D is not set
# CONFIG_SENSORS_W83792D is not set
# CONFIG_SENSORS_W83793 is not set
# CONFIG_SENSORS_W83795 is not set
# CONFIG_SENSORS_W83L785TS is not set
# CONFIG_SENSORS_W83L786NG is not set
# CONFIG_SENSORS_W83627HF is not set
# CONFIG_SENSORS_W83627EHF is not set
# CONFIG_SENSORS_APPLESMC is not set
CONFIG_SENSORS_MC13783_ADC=y

#
# ACPI drivers
#
CONFIG_SENSORS_ACPI_POWER=y
# CONFIG_SENSORS_ATK0110 is not set
CONFIG_THERMAL=y
CONFIG_THERMAL_HWMON=y
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
# CONFIG_WATCHDOG_NOWAYOUT is not set

#
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_ADVANTECH_WDT is not set
# CONFIG_ALIM1535_WDT is not set
# CONFIG_ALIM7101_WDT is not set
# CONFIG_F71808E_WDT is not set
# CONFIG_SP5100_TCO is not set
# CONFIG_SC520_WDT is not set
# CONFIG_SBC_FITPC2_WATCHDOG is not set
# CONFIG_EUROTECH_WDT is not set
# CONFIG_IB700_WDT is not set
# CONFIG_IBMASR is not set
# CONFIG_WAFER_WDT is not set
# CONFIG_I6300ESB_WDT is not set
CONFIG_IE6XX_WDT=y
# CONFIG_ITCO_WDT is not set
# CONFIG_IT8712F_WDT is not set
# CONFIG_IT87_WDT is not set
# CONFIG_HP_WATCHDOG is not set
# CONFIG_SC1200_WDT is not set
# CONFIG_PC87413_WDT is not set
# CONFIG_NV_TCO is not set
# CONFIG_60XX_WDT is not set
# CONFIG_SBC8360_WDT is not set
# CONFIG_CPU5_WDT is not set
# CONFIG_SMSC_SCH311X_WDT is not set
# CONFIG_SMSC37B787_WDT is not set
# CONFIG_VIA_WDT is not set
# CONFIG_W83627HF_WDT is not set
# CONFIG_W83697HF_WDT is not set
# CONFIG_W83697UG_WDT is not set
# CONFIG_W83877F_WDT is not set
# CONFIG_W83977F_WDT is not set
# CONFIG_MACHZ_WDT is not set
# CONFIG_SBC_EPX_C3_WATCHDOG is not set
CONFIG_XEN_WDT=y

#
# PCI-based Watchdog Cards
#
# CONFIG_PCIPCWATCHDOG is not set
# CONFIG_WDTPCI is not set

#
# USB-based Watchdog Cards
#
# CONFIG_USBPCWATCHDOG is not set
CONFIG_SSB_POSSIBLE=y

#
# Sonics Silicon Backplane
#
CONFIG_SSB=y
CONFIG_SSB_SPROM=y
CONFIG_SSB_BLOCKIO=y
CONFIG_SSB_PCIHOST_POSSIBLE=y
CONFIG_SSB_PCIHOST=y
CONFIG_SSB_B43_PCI_BRIDGE=y
CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
CONFIG_SSB_PCMCIAHOST=y
CONFIG_SSB_SDIOHOST_POSSIBLE=y
CONFIG_SSB_SDIOHOST=y
# CONFIG_SSB_SILENT is not set
CONFIG_SSB_DEBUG=y
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
CONFIG_SSB_DRIVER_PCICORE=y
CONFIG_BCMA_POSSIBLE=y

#
# Broadcom specific AMBA
#
# CONFIG_BCMA is not set

#
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
CONFIG_MFD_88PM860X=y
CONFIG_MFD_SM501=y
# CONFIG_MFD_SM501_GPIO is not set
CONFIG_HTC_PASIC3=y
# CONFIG_HTC_I2CPLD is not set
CONFIG_MFD_LM3533=y
CONFIG_TPS6105X=y
# CONFIG_TPS65010 is not set
CONFIG_TPS6507X=y
CONFIG_MFD_TPS65217=y
# CONFIG_MFD_TPS6586X is not set
# CONFIG_MFD_TPS65910 is not set
# CONFIG_MFD_TPS65912_I2C is not set
# CONFIG_MFD_TPS65912_SPI is not set
# CONFIG_TWL4030_CORE is not set
CONFIG_TWL6040_CORE=y
# CONFIG_MFD_STMPE is not set
# CONFIG_MFD_TC3589X is not set
# CONFIG_MFD_TMIO is not set
# CONFIG_PMIC_DA903X is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_PMIC_ADP5520 is not set
CONFIG_MFD_MAX77693=y
# CONFIG_MFD_MAX8925 is not set
# CONFIG_MFD_MAX8997 is not set
# CONFIG_MFD_MAX8998 is not set
# CONFIG_MFD_S5M_CORE is not set
# CONFIG_MFD_WM8400 is not set
# CONFIG_MFD_WM831X_I2C is not set
# CONFIG_MFD_WM831X_SPI is not set
# CONFIG_MFD_WM8350_I2C is not set
# CONFIG_MFD_WM8994 is not set
# CONFIG_MFD_PCF50633 is not set
CONFIG_MFD_MC13783=y
CONFIG_MFD_MC13XXX=y
CONFIG_MFD_MC13XXX_SPI=y
CONFIG_MFD_MC13XXX_I2C=y
# CONFIG_ABX500_CORE is not set
# CONFIG_EZX_PCAP is not set
# CONFIG_MFD_CS5535 is not set
# CONFIG_MFD_TIMBERDALE is not set
CONFIG_LPC_SCH=y
CONFIG_LPC_ICH=y
# CONFIG_MFD_RDC321X is not set
# CONFIG_MFD_JANZ_CMODIO is not set
# CONFIG_MFD_VX855 is not set
# CONFIG_MFD_WL1273_CORE is not set
CONFIG_MFD_TPS65090=y
# CONFIG_MFD_AAT2870_CORE is not set
CONFIG_MFD_RC5T583=y
CONFIG_MFD_PALMAS=y
CONFIG_REGULATOR=y
# CONFIG_REGULATOR_DEBUG is not set
# CONFIG_REGULATOR_DUMMY is not set
CONFIG_REGULATOR_FIXED_VOLTAGE=y
# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
# CONFIG_REGULATOR_GPIO is not set
# CONFIG_REGULATOR_AD5398 is not set
CONFIG_REGULATOR_MC13XXX_CORE=y
CONFIG_REGULATOR_MC13783=y
CONFIG_REGULATOR_MC13892=y
# CONFIG_REGULATOR_ISL6271A is not set
# CONFIG_REGULATOR_88PM8607 is not set
# CONFIG_REGULATOR_MAX1586 is not set
# CONFIG_REGULATOR_MAX8649 is not set
# CONFIG_REGULATOR_MAX8660 is not set
# CONFIG_REGULATOR_MAX8952 is not set
# CONFIG_REGULATOR_LP3971 is not set
# CONFIG_REGULATOR_LP3972 is not set
CONFIG_REGULATOR_LP872X=y
CONFIG_REGULATOR_RC5T583=y
CONFIG_REGULATOR_PALMAS=y
CONFIG_REGULATOR_TPS6105X=y
CONFIG_REGULATOR_TPS62360=y
# CONFIG_REGULATOR_TPS65023 is not set
# CONFIG_REGULATOR_TPS6507X is not set
CONFIG_REGULATOR_TPS65090=y
CONFIG_REGULATOR_TPS65217=y
# CONFIG_REGULATOR_TPS6524X is not set
CONFIG_MEDIA_SUPPORT=y

#
# Multimedia core support
#
CONFIG_MEDIA_CONTROLLER=y
CONFIG_VIDEO_DEV=y
CONFIG_VIDEO_V4L2_COMMON=y
CONFIG_VIDEO_V4L2_SUBDEV_API=y
CONFIG_DVB_CORE=y
# CONFIG_DVB_NET is not set
CONFIG_VIDEO_MEDIA=y

#
# Multimedia drivers
#
CONFIG_RC_CORE=y
CONFIG_LIRC=y
CONFIG_RC_MAP=y
CONFIG_IR_NEC_DECODER=y
CONFIG_IR_RC5_DECODER=y
CONFIG_IR_RC6_DECODER=y
CONFIG_IR_JVC_DECODER=y
CONFIG_IR_SONY_DECODER=y
CONFIG_IR_RC5_SZ_DECODER=y
CONFIG_IR_SANYO_DECODER=y
CONFIG_IR_MCE_KBD_DECODER=y
CONFIG_IR_LIRC_CODEC=y
# CONFIG_RC_ATI_REMOTE is not set
# CONFIG_IR_ENE is not set
# CONFIG_IR_IMON is not set
# CONFIG_IR_MCEUSB is not set
# CONFIG_IR_ITE_CIR is not set
# CONFIG_IR_FINTEK is not set
# CONFIG_IR_NUVOTON is not set
# CONFIG_IR_REDRAT3 is not set
# CONFIG_IR_STREAMZAP is not set
# CONFIG_IR_WINBOND_CIR is not set
# CONFIG_RC_LOOPBACK is not set
# CONFIG_IR_GPIO_CIR is not set
CONFIG_MEDIA_TUNER=y
CONFIG_MEDIA_TUNER_CUSTOMISE=y

#
# Customize TV tuners
#
CONFIG_MEDIA_TUNER_SIMPLE=y
CONFIG_MEDIA_TUNER_TDA8290=y
CONFIG_MEDIA_TUNER_TDA827X=y
CONFIG_MEDIA_TUNER_TDA18271=y
CONFIG_MEDIA_TUNER_TDA9887=y
CONFIG_MEDIA_TUNER_TEA5761=y
CONFIG_MEDIA_TUNER_TEA5767=y
CONFIG_MEDIA_TUNER_MT20XX=y
CONFIG_MEDIA_TUNER_MT2060=y
CONFIG_MEDIA_TUNER_MT2063=y
CONFIG_MEDIA_TUNER_MT2266=y
CONFIG_MEDIA_TUNER_MT2131=y
CONFIG_MEDIA_TUNER_QT1010=y
CONFIG_MEDIA_TUNER_XC2028=y
CONFIG_MEDIA_TUNER_XC5000=y
CONFIG_MEDIA_TUNER_XC4000=y
CONFIG_MEDIA_TUNER_MXL5005S=y
CONFIG_MEDIA_TUNER_MXL5007T=y
CONFIG_MEDIA_TUNER_MC44S803=y
CONFIG_MEDIA_TUNER_MAX2165=y
CONFIG_MEDIA_TUNER_TDA18218=y
CONFIG_MEDIA_TUNER_FC0011=y
CONFIG_MEDIA_TUNER_FC0012=y
CONFIG_MEDIA_TUNER_FC0013=y
CONFIG_MEDIA_TUNER_TDA18212=y
CONFIG_MEDIA_TUNER_TUA9001=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEOBUF2_CORE=y
CONFIG_VIDEOBUF2_MEMOPS=y
CONFIG_VIDEOBUF2_DMA_CONTIG=y
CONFIG_VIDEOBUF2_VMALLOC=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
CONFIG_VIDEO_ADV_DEBUG=y
CONFIG_VIDEO_FIXED_MINOR_RANGES=y
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
CONFIG_VIDEO_IR_I2C=y

#
# Audio decoders, processors and mixers
#

#
# RDS decoders
#

#
# Video decoders
#

#
# Video and audio decoders
#

#
# MPEG video encoders
#

#
# Video encoders
#

#
# Camera sensor devices
#

#
# Flash devices
#

#
# Video improvement chips
#

#
# Miscelaneous helper chips
#
CONFIG_VIDEO_VIVI=y
CONFIG_V4L_USB_DRIVERS=y
# CONFIG_VIDEO_AU0828 is not set
# CONFIG_USB_VIDEO_CLASS is not set
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
CONFIG_USB_GSPCA=y
# CONFIG_USB_M5602 is not set
# CONFIG_USB_STV06XX is not set
# CONFIG_USB_GL860 is not set
# CONFIG_USB_GSPCA_BENQ is not set
# CONFIG_USB_GSPCA_CONEX is not set
# CONFIG_USB_GSPCA_CPIA1 is not set
# CONFIG_USB_GSPCA_ETOMS is not set
# CONFIG_USB_GSPCA_FINEPIX is not set
# CONFIG_USB_GSPCA_JEILINJ is not set
CONFIG_USB_GSPCA_JL2005BCD=y
# CONFIG_USB_GSPCA_KINECT is not set
# CONFIG_USB_GSPCA_KONICA is not set
# CONFIG_USB_GSPCA_MARS is not set
# CONFIG_USB_GSPCA_MR97310A is not set
# CONFIG_USB_GSPCA_NW80X is not set
# CONFIG_USB_GSPCA_OV519 is not set
# CONFIG_USB_GSPCA_OV534 is not set
# CONFIG_USB_GSPCA_OV534_9 is not set
# CONFIG_USB_GSPCA_PAC207 is not set
# CONFIG_USB_GSPCA_PAC7302 is not set
# CONFIG_USB_GSPCA_PAC7311 is not set
# CONFIG_USB_GSPCA_SE401 is not set
# CONFIG_USB_GSPCA_SN9C2028 is not set
# CONFIG_USB_GSPCA_SN9C20X is not set
# CONFIG_USB_GSPCA_SONIXB is not set
# CONFIG_USB_GSPCA_SONIXJ is not set
# CONFIG_USB_GSPCA_SPCA500 is not set
# CONFIG_USB_GSPCA_SPCA501 is not set
# CONFIG_USB_GSPCA_SPCA505 is not set
# CONFIG_USB_GSPCA_SPCA506 is not set
# CONFIG_USB_GSPCA_SPCA508 is not set
# CONFIG_USB_GSPCA_SPCA561 is not set
# CONFIG_USB_GSPCA_SPCA1528 is not set
# CONFIG_USB_GSPCA_SQ905 is not set
# CONFIG_USB_GSPCA_SQ905C is not set
# CONFIG_USB_GSPCA_SQ930X is not set
# CONFIG_USB_GSPCA_STK014 is not set
# CONFIG_USB_GSPCA_STV0680 is not set
# CONFIG_USB_GSPCA_SUNPLUS is not set
# CONFIG_USB_GSPCA_T613 is not set
# CONFIG_USB_GSPCA_TOPRO is not set
# CONFIG_USB_GSPCA_TV8532 is not set
# CONFIG_USB_GSPCA_VC032X is not set
# CONFIG_USB_GSPCA_VICAM is not set
# CONFIG_USB_GSPCA_XIRLINK_CIT is not set
# CONFIG_USB_GSPCA_ZC3XX is not set
# CONFIG_VIDEO_PVRUSB2 is not set
# CONFIG_VIDEO_HDPVR is not set
# CONFIG_VIDEO_EM28XX is not set
# CONFIG_VIDEO_CX231XX is not set
# CONFIG_VIDEO_TM6000 is not set
# CONFIG_VIDEO_USBVISION is not set
# CONFIG_USB_SN9C102 is not set
# CONFIG_USB_PWC is not set
# CONFIG_VIDEO_CPIA2 is not set
# CONFIG_USB_ZR364XX is not set
# CONFIG_USB_STKWEBCAM is not set
# CONFIG_USB_S2255 is not set
CONFIG_V4L_PCI_DRIVERS=y
# CONFIG_VIDEO_BT848 is not set
# CONFIG_VIDEO_CX18 is not set
# CONFIG_VIDEO_CX25821 is not set
# CONFIG_VIDEO_CX88 is not set
# CONFIG_VIDEO_HEXIUM_GEMINI is not set
# CONFIG_VIDEO_HEXIUM_ORION is not set
# CONFIG_VIDEO_IVTV is not set
# CONFIG_VIDEO_MEYE is not set
# CONFIG_VIDEO_MXB is not set
# CONFIG_VIDEO_SAA7134 is not set
# CONFIG_VIDEO_SAA7164 is not set
# CONFIG_VIDEO_ZORAN is not set
CONFIG_V4L_ISA_PARPORT_DRIVERS=y
# CONFIG_VIDEO_BWQCAM is not set
# CONFIG_VIDEO_CQCAM is not set
# CONFIG_VIDEO_W9966 is not set
CONFIG_V4L_PLATFORM_DRIVERS=y
# CONFIG_VIDEO_CAFE_CCIC is not set
# CONFIG_VIDEO_VIA_CAMERA is not set
# CONFIG_VIDEO_TIMBERDALE is not set
# CONFIG_SOC_CAMERA is not set
CONFIG_V4L_MEM2MEM_DRIVERS=y
# CONFIG_VIDEO_MEM2MEM_TESTDEV is not set
CONFIG_RADIO_ADAPTERS=y
# CONFIG_RADIO_SI470X is not set
# CONFIG_USB_MR800 is not set
# CONFIG_USB_DSBR is not set
# CONFIG_I2C_SI4713 is not set
# CONFIG_RADIO_SI4713 is not set
# CONFIG_USB_KEENE is not set
# CONFIG_RADIO_TEA5764 is not set
# CONFIG_RADIO_SAA7706H is not set
# CONFIG_RADIO_TEF6862 is not set
# CONFIG_RADIO_WL1273 is not set

#
# Texas Instruments WL128x FM driver (ST based)
#
# CONFIG_RADIO_WL128X is not set
CONFIG_DVB_MAX_ADAPTERS=8
CONFIG_DVB_DYNAMIC_MINORS=y
CONFIG_DVB_CAPTURE_DRIVERS=y

#
# Supported SAA7146 based PCI Adapters
#
# CONFIG_TTPCI_EEPROM is not set
# CONFIG_DVB_AV7110 is not set
# CONFIG_DVB_BUDGET_CORE is not set

#
# Supported USB Adapters
#
# CONFIG_DVB_USB is not set
# CONFIG_DVB_TTUSB_BUDGET is not set
# CONFIG_DVB_TTUSB_DEC is not set
# CONFIG_SMS_SIANO_MDTV is not set

#
# Supported FlexCopII (B2C2) Adapters
#
# CONFIG_DVB_B2C2_FLEXCOP is not set

#
# Supported BT878 Adapters
#

#
# Supported Pluto2 Adapters
#
# CONFIG_DVB_PLUTO2 is not set

#
# Supported SDMC DM1105 Adapters
#
# CONFIG_DVB_DM1105 is not set

#
# Supported FireWire (IEEE 1394) Adapters
#
# CONFIG_DVB_FIREDTV is not set

#
# Supported Earthsoft PT1 Adapters
#
# CONFIG_DVB_PT1 is not set

#
# Supported Mantis Adapters
#
# CONFIG_MANTIS_CORE is not set

#
# Supported nGene Adapters
#
# CONFIG_DVB_NGENE is not set

#
# Supported ddbridge ('Octopus') Adapters
#
# CONFIG_DVB_DDBRIDGE is not set

#
# Supported DVB Frontends
#
CONFIG_DVB_FE_CUSTOMISE=y

#
# Customise DVB Frontends
#

#
# Multistandard (satellite) frontends
#
CONFIG_DVB_STB0899=y
CONFIG_DVB_STB6100=y
CONFIG_DVB_STV090x=y
CONFIG_DVB_STV6110x=y

#
# Multistandard (cable + terrestrial) frontends
#
CONFIG_DVB_DRXK=y
CONFIG_DVB_TDA18271C2DD=y

#
# DVB-S (satellite) frontends
#
CONFIG_DVB_CX24110=y
CONFIG_DVB_CX24123=y
CONFIG_DVB_MT312=y
CONFIG_DVB_ZL10036=y
CONFIG_DVB_ZL10039=y
CONFIG_DVB_S5H1420=y
CONFIG_DVB_STV0288=y
CONFIG_DVB_STB6000=y
CONFIG_DVB_STV0299=y
CONFIG_DVB_STV6110=y
CONFIG_DVB_STV0900=y
CONFIG_DVB_TDA8083=y
CONFIG_DVB_TDA10086=y
CONFIG_DVB_TDA8261=y
CONFIG_DVB_VES1X93=y
CONFIG_DVB_TUNER_ITD1000=y
CONFIG_DVB_TUNER_CX24113=y
CONFIG_DVB_TDA826X=y
CONFIG_DVB_TUA6100=y
CONFIG_DVB_CX24116=y
CONFIG_DVB_SI21XX=y
CONFIG_DVB_DS3000=y
CONFIG_DVB_MB86A16=y
CONFIG_DVB_TDA10071=y

#
# DVB-T (terrestrial) frontends
#
CONFIG_DVB_SP8870=y
CONFIG_DVB_SP887X=y
CONFIG_DVB_CX22700=y
CONFIG_DVB_CX22702=y
CONFIG_DVB_S5H1432=y
CONFIG_DVB_DRXD=y
CONFIG_DVB_L64781=y
CONFIG_DVB_TDA1004X=y
CONFIG_DVB_NXT6000=y
CONFIG_DVB_MT352=y
CONFIG_DVB_ZL10353=y
CONFIG_DVB_DIB3000MB=y
CONFIG_DVB_DIB3000MC=y
CONFIG_DVB_DIB7000M=y
CONFIG_DVB_DIB7000P=y
CONFIG_DVB_DIB9000=y
CONFIG_DVB_TDA10048=y
CONFIG_DVB_AF9013=y
CONFIG_DVB_EC100=y
CONFIG_DVB_HD29L2=y
CONFIG_DVB_STV0367=y
CONFIG_DVB_CXD2820R=y
CONFIG_DVB_RTL2830=y

#
# DVB-C (cable) frontends
#
CONFIG_DVB_VES1820=y
CONFIG_DVB_TDA10021=y
CONFIG_DVB_TDA10023=y
CONFIG_DVB_STV0297=y

#
# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
#
CONFIG_DVB_NXT200X=y
CONFIG_DVB_OR51211=y
CONFIG_DVB_OR51132=y
CONFIG_DVB_BCM3510=y
CONFIG_DVB_LGDT330X=y
CONFIG_DVB_LGDT3305=y
CONFIG_DVB_LG2160=y
CONFIG_DVB_S5H1409=y
CONFIG_DVB_AU8522=y
CONFIG_DVB_AU8522_DTV=y
CONFIG_DVB_AU8522_V4L=y
CONFIG_DVB_S5H1411=y

#
# ISDB-T (terrestrial) frontends
#
CONFIG_DVB_S921=y
CONFIG_DVB_DIB8000=y
CONFIG_DVB_MB86A20S=y

#
# Digital terrestrial only tuners/PLL
#
CONFIG_DVB_PLL=y
CONFIG_DVB_TUNER_DIB0070=y
CONFIG_DVB_TUNER_DIB0090=y

#
# SEC control devices for DVB-S
#
CONFIG_DVB_LNBP21=y
CONFIG_DVB_LNBP22=y
CONFIG_DVB_ISL6405=y
CONFIG_DVB_ISL6421=y
CONFIG_DVB_ISL6423=y
CONFIG_DVB_A8293=y
CONFIG_DVB_LGS8GL5=y
CONFIG_DVB_LGS8GXX=y
CONFIG_DVB_ATBM8830=y
CONFIG_DVB_TDA665x=y
CONFIG_DVB_IX2505V=y
CONFIG_DVB_IT913X_FE=y
CONFIG_DVB_M88RS2000=y
CONFIG_DVB_AF9033=y

#
# Tools to develop new frontends
#
# CONFIG_DVB_DUMMY_FE is not set

#
# Graphics support
#
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=y
CONFIG_AGP_SIS=y
CONFIG_AGP_VIA=y
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_VGA_SWITCHEROO=y
CONFIG_DRM=y
CONFIG_DRM_USB=y
CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DRM_TTM=y
CONFIG_DRM_TDFX=y
CONFIG_DRM_R128=y
CONFIG_DRM_RADEON=y
CONFIG_DRM_RADEON_KMS=y
CONFIG_DRM_NOUVEAU=y
CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_NOUVEAU_DEBUG=y

#
# I2C encoder or helper chips
#
CONFIG_DRM_I2C_CH7006=y
CONFIG_DRM_I2C_SIL164=y
CONFIG_DRM_I915=y
CONFIG_DRM_I915_KMS=y
CONFIG_DRM_MGA=y
CONFIG_DRM_SIS=y
CONFIG_DRM_VIA=y
CONFIG_DRM_SAVAGE=y
CONFIG_DRM_VMWGFX=y
CONFIG_DRM_GMA500=y
CONFIG_DRM_GMA600=y
CONFIG_DRM_GMA3600=y
CONFIG_DRM_UDL=y
CONFIG_DRM_AST=y
CONFIG_DRM_MGAG200=y
CONFIG_DRM_CIRRUS_QEMU=y
CONFIG_STUB_POULSBO=y
CONFIG_VGASTATE=y
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=y
CONFIG_FB_BOOT_VESA_SUPPORT=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
CONFIG_FB_SYS_FILLRECT=y
CONFIG_FB_SYS_COPYAREA=y
CONFIG_FB_SYS_IMAGEBLIT=y
CONFIG_FB_FOREIGN_ENDIAN=y
CONFIG_FB_BOTH_ENDIAN=y
# CONFIG_FB_BIG_ENDIAN is not set
# CONFIG_FB_LITTLE_ENDIAN is not set
CONFIG_FB_SYS_FOPS=y
# CONFIG_FB_WMT_GE_ROPS is not set
CONFIG_FB_DEFERRED_IO=y
CONFIG_FB_HECUBA=y
CONFIG_FB_SVGALIB=y
# CONFIG_FB_MACMODES is not set
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y

#
# Frame buffer hardware drivers
#
CONFIG_FB_CIRRUS=y
CONFIG_FB_PM2=y
CONFIG_FB_PM2_FIFO_DISCONNECT=y
CONFIG_FB_CYBER2000=y
CONFIG_FB_CYBER2000_DDC=y
CONFIG_FB_ARC=y
CONFIG_FB_ASILIANT=y
CONFIG_FB_IMSTT=y
CONFIG_FB_VGA16=y
CONFIG_FB_UVESA=y
CONFIG_FB_VESA=y
CONFIG_FB_EFI=y
CONFIG_FB_N411=y
CONFIG_FB_HGA=y
CONFIG_FB_S1D13XXX=y
CONFIG_FB_NVIDIA=y
CONFIG_FB_NVIDIA_I2C=y
CONFIG_FB_NVIDIA_DEBUG=y
CONFIG_FB_NVIDIA_BACKLIGHT=y
CONFIG_FB_RIVA=y
CONFIG_FB_RIVA_I2C=y
CONFIG_FB_RIVA_DEBUG=y
CONFIG_FB_RIVA_BACKLIGHT=y
CONFIG_FB_I740=y
CONFIG_FB_LE80578=y
CONFIG_FB_CARILLO_RANCH=y
CONFIG_FB_MATROX=y
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
CONFIG_FB_MATROX_G=y
CONFIG_FB_MATROX_I2C=y
CONFIG_FB_MATROX_MAVEN=y
CONFIG_FB_RADEON=y
CONFIG_FB_RADEON_I2C=y
CONFIG_FB_RADEON_BACKLIGHT=y
CONFIG_FB_RADEON_DEBUG=y
CONFIG_FB_ATY128=y
CONFIG_FB_ATY128_BACKLIGHT=y
CONFIG_FB_ATY=y
CONFIG_FB_ATY_CT=y
CONFIG_FB_ATY_GENERIC_LCD=y
CONFIG_FB_ATY_GX=y
CONFIG_FB_ATY_BACKLIGHT=y
CONFIG_FB_S3=y
CONFIG_FB_S3_DDC=y
CONFIG_FB_SAVAGE=y
CONFIG_FB_SAVAGE_I2C=y
CONFIG_FB_SAVAGE_ACCEL=y
CONFIG_FB_SIS=y
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
CONFIG_FB_VIA=y
CONFIG_FB_VIA_DIRECT_PROCFS=y
CONFIG_FB_VIA_X_COMPATIBILITY=y
CONFIG_FB_NEOMAGIC=y
CONFIG_FB_KYRO=y
CONFIG_FB_3DFX=y
CONFIG_FB_3DFX_ACCEL=y
CONFIG_FB_3DFX_I2C=y
CONFIG_FB_VOODOO1=y
CONFIG_FB_VT8623=y
CONFIG_FB_TRIDENT=y
CONFIG_FB_ARK=y
CONFIG_FB_PM3=y
CONFIG_FB_CARMINE=y
CONFIG_FB_CARMINE_DRAM_EVAL=y
# CONFIG_CARMINE_DRAM_CUSTOM is not set
CONFIG_FB_GEODE=y
CONFIG_FB_GEODE_LX=y
CONFIG_FB_GEODE_GX=y
CONFIG_FB_GEODE_GX1=y
CONFIG_FB_TMIO=y
# CONFIG_FB_TMIO_ACCELL is not set
CONFIG_FB_SM501=y
CONFIG_FB_SMSCUFX=y
CONFIG_FB_UDL=y
CONFIG_FB_VIRTUAL=y
CONFIG_XEN_FBDEV_FRONTEND=y
CONFIG_FB_METRONOME=y
CONFIG_FB_MB862XX=y
CONFIG_FB_MB862XX_PCI_GDC=y
CONFIG_FB_MB862XX_I2C=y
CONFIG_FB_BROADSHEET=y
CONFIG_FB_AUO_K190X=y
CONFIG_FB_AUO_K1900=y
CONFIG_FB_AUO_K1901=y
CONFIG_EXYNOS_VIDEO=y
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_LCD_L4F00242T03=y
CONFIG_LCD_LMS283GF05=y
CONFIG_LCD_LTV350QV=y
CONFIG_LCD_ILI9320=y
CONFIG_LCD_TDO24M=y
CONFIG_LCD_VGG2432A4=y
CONFIG_LCD_PLATFORM=y
CONFIG_LCD_S6E63M0=y
CONFIG_LCD_LD9040=y
CONFIG_LCD_AMS369FG06=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=y
CONFIG_BACKLIGHT_LM3533=y
CONFIG_BACKLIGHT_PROGEAR=y
CONFIG_BACKLIGHT_CARILLO_RANCH=y
CONFIG_BACKLIGHT_APPLE=y
CONFIG_BACKLIGHT_SAHARA=y
CONFIG_BACKLIGHT_ADP8860=y
CONFIG_BACKLIGHT_ADP8870=y
CONFIG_BACKLIGHT_88PM860X=y
CONFIG_BACKLIGHT_LP855X=y

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_FONT_6x11=y
CONFIG_FONT_7x14=y
CONFIG_FONT_PEARL_8x8=y
CONFIG_FONT_ACORN_8x8=y
CONFIG_FONT_MINI_4x6=y
CONFIG_FONT_SUN8x16=y
CONFIG_FONT_SUN12x22=y
CONFIG_FONT_10x18=y
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
# CONFIG_SOUND is not set

#
# HID support
#
CONFIG_HID=y
CONFIG_HID_BATTERY_STRENGTH=y
CONFIG_HIDRAW=y
CONFIG_HID_GENERIC=y

#
# Special HID drivers
#
CONFIG_HID_A4TECH=y
CONFIG_HID_ACRUX=y
CONFIG_HID_ACRUX_FF=y
CONFIG_HID_APPLE=y
CONFIG_HID_AUREAL=y
CONFIG_HID_BELKIN=y
CONFIG_HID_CHERRY=y
CONFIG_HID_CHICONY=y
CONFIG_HID_CYPRESS=y
CONFIG_HID_DRAGONRISE=y
CONFIG_DRAGONRISE_FF=y
CONFIG_HID_EMS_FF=y
CONFIG_HID_ELECOM=y
CONFIG_HID_EZKEY=y
CONFIG_HID_HOLTEK=y
CONFIG_HOLTEK_FF=y
CONFIG_HID_KEYTOUCH=y
CONFIG_HID_KYE=y
CONFIG_HID_UCLOGIC=y
CONFIG_HID_WALTOP=y
CONFIG_HID_GYRATION=y
CONFIG_HID_TWINHAN=y
CONFIG_HID_KENSINGTON=y
CONFIG_HID_LCPOWER=y
CONFIG_HID_LOGITECH=y
CONFIG_HID_LOGITECH_DJ=y
CONFIG_LOGITECH_FF=y
CONFIG_LOGIRUMBLEPAD2_FF=y
CONFIG_LOGIG940_FF=y
CONFIG_LOGIWHEELS_FF=y
CONFIG_HID_MAGICMOUSE=y
CONFIG_HID_MICROSOFT=y
CONFIG_HID_MONTEREY=y
CONFIG_HID_MULTITOUCH=y
CONFIG_HID_NTRIG=y
CONFIG_HID_ORTEK=y
CONFIG_HID_PANTHERLORD=y
CONFIG_PANTHERLORD_FF=y
CONFIG_HID_PETALYNX=y
CONFIG_HID_PICOLCD=y
CONFIG_HID_PICOLCD_FB=y
CONFIG_HID_PICOLCD_BACKLIGHT=y
CONFIG_HID_PICOLCD_LCD=y
CONFIG_HID_PICOLCD_LEDS=y
CONFIG_HID_PRIMAX=y
CONFIG_HID_ROCCAT=y
CONFIG_HID_SAITEK=y
CONFIG_HID_SAMSUNG=y
CONFIG_HID_SONY=y
CONFIG_HID_SPEEDLINK=y
CONFIG_HID_SUNPLUS=y
CONFIG_HID_GREENASIA=y
CONFIG_GREENASIA_FF=y
CONFIG_HID_HYPERV_MOUSE=y
CONFIG_HID_SMARTJOYPLUS=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_HID_TIVO=y
CONFIG_HID_TOPSEED=y
CONFIG_HID_THRUSTMASTER=y
CONFIG_THRUSTMASTER_FF=y
CONFIG_HID_WACOM=y
CONFIG_HID_WIIMOTE=y
CONFIG_HID_WIIMOTE_EXT=y
CONFIG_HID_ZEROPLUS=y
CONFIG_ZEROPLUS_FF=y
CONFIG_HID_ZYDACRON=y

#
# USB HID support
#
CONFIG_USB_HID=y
CONFIG_HID_PID=y
CONFIG_USB_HIDDEV=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB_ARCH_HAS_XHCI=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_COMMON=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB=y
CONFIG_USB_DEBUG=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y

#
# Miscellaneous USB options
#
CONFIG_USB_DYNAMIC_MINORS=y
CONFIG_USB_SUSPEND=y
CONFIG_USB_OTG=y
CONFIG_USB_OTG_WHITELIST=y
CONFIG_USB_OTG_BLACKLIST_HUB=y
# CONFIG_USB_DWC3 is not set
CONFIG_USB_MON=y
CONFIG_USB_WUSB=y
CONFIG_USB_WUSB_CBAF=y
CONFIG_USB_WUSB_CBAF_DEBUG=y

#
# USB Host Controller Drivers
#
CONFIG_USB_C67X00_HCD=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_HCD_DEBUGGING=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
CONFIG_USB_OXU210HP_HCD=y
CONFIG_USB_ISP116X_HCD=y
CONFIG_USB_ISP1760_HCD=y
CONFIG_USB_ISP1362_HCD=y
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD_PLATFORM=y
CONFIG_USB_EHCI_HCD_PLATFORM=y
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_UHCI_HCD=y
# CONFIG_USB_U132_HCD is not set
CONFIG_USB_SL811_HCD=y
CONFIG_USB_SL811_HCD_ISO=y
CONFIG_USB_SL811_CS=y
CONFIG_USB_R8A66597_HCD=y
CONFIG_USB_WHCI_HCD=y
CONFIG_USB_HWA_HCD=y
CONFIG_USB_HCD_SSB=y
# CONFIG_USB_MUSB_HDRC is not set
CONFIG_USB_CHIPIDEA=y
# CONFIG_USB_CHIPIDEA_UDC is not set
CONFIG_USB_CHIPIDEA_HOST=y
CONFIG_USB_CHIPIDEA_DEBUG=y
# CONFIG_USB_RENESAS_USBHS is not set

#
# USB Device Class drivers
#
CONFIG_USB_ACM=y
CONFIG_USB_PRINTER=y
CONFIG_USB_WDM=y
CONFIG_USB_TMC=y

#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
#

#
# also be needed; see USB_STORAGE Help for more info
#
CONFIG_USB_STORAGE=y
CONFIG_USB_STORAGE_DEBUG=y
CONFIG_USB_STORAGE_REALTEK=y
CONFIG_REALTEK_AUTOPM=y
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_USBAT=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
CONFIG_USB_STORAGE_ALAUDA=y
CONFIG_USB_STORAGE_ONETOUCH=y
CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_STORAGE_ENE_UB6250=y
CONFIG_USB_UAS=y
CONFIG_USB_LIBUSUAL=y

#
# USB Imaging devices
#
CONFIG_USB_MDC800=y
CONFIG_USB_MICROTEK=y

#
# USB port drivers
#
CONFIG_USB_USS720=y
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_CONSOLE=y
CONFIG_USB_EZUSB=y
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_AIRCABLE=y
CONFIG_USB_SERIAL_ARK3116=y
CONFIG_USB_SERIAL_BELKIN=y
CONFIG_USB_SERIAL_CH341=y
CONFIG_USB_SERIAL_WHITEHEAT=y
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=y
CONFIG_USB_SERIAL_CP210X=y
CONFIG_USB_SERIAL_CYPRESS_M8=y
CONFIG_USB_SERIAL_EMPEG=y
CONFIG_USB_SERIAL_FTDI_SIO=y
CONFIG_USB_SERIAL_FUNSOFT=y
CONFIG_USB_SERIAL_VISOR=y
CONFIG_USB_SERIAL_IPAQ=y
CONFIG_USB_SERIAL_IR=y
CONFIG_USB_SERIAL_EDGEPORT=y
CONFIG_USB_SERIAL_EDGEPORT_TI=y
CONFIG_USB_SERIAL_F81232=y
CONFIG_USB_SERIAL_GARMIN=y
CONFIG_USB_SERIAL_IPW=y
CONFIG_USB_SERIAL_IUU=y
CONFIG_USB_SERIAL_KEYSPAN_PDA=y
CONFIG_USB_SERIAL_KEYSPAN=y
CONFIG_USB_SERIAL_KEYSPAN_MPR=y
CONFIG_USB_SERIAL_KEYSPAN_USA28=y
CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
CONFIG_USB_SERIAL_KEYSPAN_USA19=y
CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
CONFIG_USB_SERIAL_KLSI=y
CONFIG_USB_SERIAL_KOBIL_SCT=y
CONFIG_USB_SERIAL_MCT_U232=y
CONFIG_USB_SERIAL_METRO=y
CONFIG_USB_SERIAL_MOS7720=y
CONFIG_USB_SERIAL_MOS7715_PARPORT=y
CONFIG_USB_SERIAL_MOS7840=y
CONFIG_USB_SERIAL_MOTOROLA=y
CONFIG_USB_SERIAL_NAVMAN=y
CONFIG_USB_SERIAL_PL2303=y
CONFIG_USB_SERIAL_OTI6858=y
CONFIG_USB_SERIAL_QCAUX=y
CONFIG_USB_SERIAL_QUALCOMM=y
CONFIG_USB_SERIAL_SPCP8X5=y
CONFIG_USB_SERIAL_HP4X=y
CONFIG_USB_SERIAL_SAFE=y
CONFIG_USB_SERIAL_SAFE_PADDED=y
CONFIG_USB_SERIAL_SIEMENS_MPI=y
CONFIG_USB_SERIAL_SIERRAWIRELESS=y
CONFIG_USB_SERIAL_SYMBOL=y
CONFIG_USB_SERIAL_TI=y
CONFIG_USB_SERIAL_CYBERJACK=y
CONFIG_USB_SERIAL_XIRCOM=y
CONFIG_USB_SERIAL_WWAN=y
CONFIG_USB_SERIAL_OPTION=y
CONFIG_USB_SERIAL_OMNINET=y
CONFIG_USB_SERIAL_OPTICON=y
CONFIG_USB_SERIAL_VIVOPAY_SERIAL=y
CONFIG_USB_SERIAL_ZIO=y
CONFIG_USB_SERIAL_SSU100=y
CONFIG_USB_SERIAL_QT2=y
CONFIG_USB_SERIAL_DEBUG=y

#
# USB Miscellaneous drivers
#
CONFIG_USB_EMI62=y
CONFIG_USB_EMI26=y
CONFIG_USB_ADUTUX=y
CONFIG_USB_SEVSEG=y
CONFIG_USB_RIO500=y
CONFIG_USB_LEGOTOWER=y
CONFIG_USB_LCD=y
CONFIG_USB_LED=y
CONFIG_USB_CYPRESS_CY7C63=y
CONFIG_USB_CYTHERM=y
CONFIG_USB_IDMOUSE=y
CONFIG_USB_FTDI_ELAN=y
CONFIG_USB_APPLEDISPLAY=y
CONFIG_USB_SISUSBVGA=y
CONFIG_USB_SISUSBVGA_CON=y
CONFIG_USB_LD=y
CONFIG_USB_TRANCEVIBRATOR=y
CONFIG_USB_IOWARRIOR=y
CONFIG_USB_TEST=y
CONFIG_USB_ISIGHTFW=y
CONFIG_USB_YUREX=y

#
# USB Physical Layer drivers
#
CONFIG_USB_ISP1301=y
CONFIG_USB_ATM=y
CONFIG_USB_SPEEDTOUCH=y
CONFIG_USB_CXACRU=y
CONFIG_USB_UEAGLEATM=y
CONFIG_USB_XUSBATM=y
CONFIG_USB_GADGET=y
CONFIG_USB_GADGET_DEBUG=y
CONFIG_USB_GADGET_DEBUG_FILES=y
CONFIG_USB_GADGET_DEBUG_FS=y
CONFIG_USB_GADGET_VBUS_DRAW=2
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2

#
# USB Peripheral Controller
#
CONFIG_USB_R8A66597=y
CONFIG_USB_MV_UDC=y
CONFIG_USB_M66592=y
CONFIG_USB_AMD5536UDC=y
CONFIG_USB_NET2272=y
CONFIG_USB_NET2272_DMA=y
CONFIG_USB_NET2280=y
CONFIG_USB_GOKU=y
CONFIG_USB_EG20T=y
CONFIG_USB_DUMMY_HCD=y
CONFIG_USB_GADGET_DUALSPEED=y
CONFIG_USB_GADGET_SUPERSPEED=y
# CONFIG_USB_ZERO is not set
CONFIG_USB_ETH=y
CONFIG_USB_ETH_RNDIS=y
CONFIG_USB_ETH_EEM=y
# CONFIG_USB_G_NCM is not set
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_FUNCTIONFS is not set
# CONFIG_USB_FILE_STORAGE is not set
# CONFIG_USB_MASS_STORAGE is not set
# CONFIG_USB_GADGET_TARGET is not set
# CONFIG_USB_G_SERIAL is not set
# CONFIG_USB_G_PRINTER is not set
# CONFIG_USB_CDC_COMPOSITE is not set
# CONFIG_USB_G_NOKIA is not set
# CONFIG_USB_G_ACM_MS is not set
# CONFIG_USB_G_MULTI is not set
# CONFIG_USB_G_HID is not set
# CONFIG_USB_G_DBGP is not set
# CONFIG_USB_G_WEBCAM is not set

#
# OTG and related infrastructure
#
CONFIG_USB_OTG_UTILS=y
CONFIG_USB_GPIO_VBUS=y
CONFIG_NOP_USB_XCEIV=y
CONFIG_UWB=y
CONFIG_UWB_HWA=y
CONFIG_UWB_WHCI=y
CONFIG_UWB_I1480U=y
CONFIG_MMC=y
CONFIG_MMC_DEBUG=y
# CONFIG_MMC_UNSAFE_RESUME is not set
CONFIG_MMC_CLKGATE=y

#
# MMC/SD/SDIO Card Drivers
#
CONFIG_MMC_BLOCK=y
CONFIG_MMC_BLOCK_MINORS=8
CONFIG_MMC_BLOCK_BOUNCE=y
CONFIG_SDIO_UART=y
CONFIG_MMC_TEST=y

#
# MMC/SD/SDIO Host Controller Drivers
#
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_PCI=y
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_WBSD=y
CONFIG_MMC_TIFM_SD=y
CONFIG_MMC_SPI=y
CONFIG_MMC_SDRICOH_CS=y
CONFIG_MMC_CB710=y
CONFIG_MMC_VIA_SDMMC=y
CONFIG_MMC_VUB300=y
CONFIG_MMC_USHC=y
CONFIG_MEMSTICK=y
CONFIG_MEMSTICK_DEBUG=y

#
# MemoryStick drivers
#
CONFIG_MEMSTICK_UNSAFE_RESUME=y
CONFIG_MSPRO_BLOCK=y

#
# MemoryStick Host Controller Drivers
#
CONFIG_MEMSTICK_TIFM_MS=y
CONFIG_MEMSTICK_JMICRON_38X=y
CONFIG_MEMSTICK_R592=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y

#
# LED drivers
#
CONFIG_LEDS_88PM860X=y
CONFIG_LEDS_LM3530=y
CONFIG_LEDS_LM3533=y
CONFIG_LEDS_PCA9532=y
CONFIG_LEDS_PCA9532_GPIO=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_LP3944=y
CONFIG_LEDS_LP5521=y
CONFIG_LEDS_LP5523=y
CONFIG_LEDS_CLEVO_MAIL=y
CONFIG_LEDS_PCA955X=y
CONFIG_LEDS_PCA9633=y
CONFIG_LEDS_DAC124S085=y
CONFIG_LEDS_REGULATOR=y
CONFIG_LEDS_BD2802=y
CONFIG_LEDS_INTEL_SS4200=y
CONFIG_LEDS_LT3593=y
CONFIG_LEDS_DELL_NETBOOKS=y
CONFIG_LEDS_MC13783=y
CONFIG_LEDS_TCA6507=y
CONFIG_LEDS_OT200=y
CONFIG_LEDS_TRIGGERS=y

#
# LED Triggers
#
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
CONFIG_LEDS_TRIGGER_GPIO=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y

#
# iptables trigger is under Netfilter config (LED target)
#
CONFIG_LEDS_TRIGGER_TRANSIENT=y
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
CONFIG_INFINIBAND=y
CONFIG_INFINIBAND_USER_MAD=y
CONFIG_INFINIBAND_USER_ACCESS=y
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_MTHCA=y
CONFIG_INFINIBAND_MTHCA_DEBUG=y
CONFIG_INFINIBAND_IPATH=y
CONFIG_INFINIBAND_QIB=y
CONFIG_INFINIBAND_AMSO1100=y
CONFIG_INFINIBAND_AMSO1100_DEBUG=y
CONFIG_INFINIBAND_CXGB3=y
CONFIG_INFINIBAND_CXGB3_DEBUG=y
CONFIG_INFINIBAND_CXGB4=y
CONFIG_MLX4_INFINIBAND=y
CONFIG_INFINIBAND_NES=y
CONFIG_INFINIBAND_NES_DEBUG=y
CONFIG_INFINIBAND_OCRDMA=y
CONFIG_INFINIBAND_IPOIB=y
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_SRP=y
CONFIG_INFINIBAND_SRPT=y
CONFIG_INFINIBAND_ISER=y
CONFIG_EDAC=y

#
# Reporting subsystems
#
CONFIG_EDAC_DEBUG=y
CONFIG_EDAC_DECODE_MCE=y
CONFIG_EDAC_MCE_INJ=y
CONFIG_EDAC_MM_EDAC=y
CONFIG_EDAC_AMD64=y
CONFIG_EDAC_AMD64_ERROR_INJECTION=y
CONFIG_EDAC_E752X=y
CONFIG_EDAC_I82975X=y
CONFIG_EDAC_I3000=y
CONFIG_EDAC_I3200=y
CONFIG_EDAC_X38=y
CONFIG_EDAC_I5400=y
CONFIG_EDAC_I7CORE=y
CONFIG_EDAC_I5000=y
CONFIG_EDAC_I5100=y
CONFIG_EDAC_I7300=y
CONFIG_EDAC_SBRIDGE=y
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
CONFIG_RTC_DEBUG=y

#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
CONFIG_RTC_INTF_DEV_UIE_EMUL=y
CONFIG_RTC_DRV_TEST=y

#
# I2C RTC drivers
#
CONFIG_RTC_DRV_88PM860X=y
CONFIG_RTC_DRV_DS1307=y
CONFIG_RTC_DRV_DS1374=y
CONFIG_RTC_DRV_DS1672=y
CONFIG_RTC_DRV_DS3232=y
CONFIG_RTC_DRV_MAX6900=y
CONFIG_RTC_DRV_RS5C372=y
CONFIG_RTC_DRV_ISL1208=y
CONFIG_RTC_DRV_ISL12022=y
CONFIG_RTC_DRV_X1205=y
CONFIG_RTC_DRV_PCF8563=y
CONFIG_RTC_DRV_PCF8583=y
CONFIG_RTC_DRV_M41T80=y
CONFIG_RTC_DRV_M41T80_WDT=y
CONFIG_RTC_DRV_BQ32K=y
CONFIG_RTC_DRV_S35390A=y
CONFIG_RTC_DRV_FM3130=y
CONFIG_RTC_DRV_RX8581=y
CONFIG_RTC_DRV_RX8025=y
CONFIG_RTC_DRV_EM3027=y
CONFIG_RTC_DRV_RV3029C2=y

#
# SPI RTC drivers
#
CONFIG_RTC_DRV_M41T93=y
CONFIG_RTC_DRV_M41T94=y
CONFIG_RTC_DRV_DS1305=y
CONFIG_RTC_DRV_DS1390=y
CONFIG_RTC_DRV_MAX6902=y
CONFIG_RTC_DRV_R9701=y
CONFIG_RTC_DRV_RS5C348=y
CONFIG_RTC_DRV_DS3234=y
CONFIG_RTC_DRV_PCF2123=y

#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
CONFIG_RTC_DRV_DS1286=y
CONFIG_RTC_DRV_DS1511=y
CONFIG_RTC_DRV_DS1553=y
CONFIG_RTC_DRV_DS1742=y
CONFIG_RTC_DRV_STK17TA8=y
CONFIG_RTC_DRV_M48T86=y
CONFIG_RTC_DRV_M48T35=y
CONFIG_RTC_DRV_M48T59=y
CONFIG_RTC_DRV_MSM6242=y
CONFIG_RTC_DRV_BQ4802=y
CONFIG_RTC_DRV_RP5C01=y
CONFIG_RTC_DRV_V3020=y

#
# on-CPU RTC drivers
#
CONFIG_RTC_DRV_MC13XXX=y
CONFIG_DMADEVICES=y
CONFIG_DMADEVICES_DEBUG=y
CONFIG_DMADEVICES_VDEBUG=y

#
# DMA Devices
#
CONFIG_INTEL_MID_DMAC=y
CONFIG_INTEL_IOATDMA=y
CONFIG_TIMB_DMA=y
CONFIG_PCH_DMA=y
CONFIG_DMA_ENGINE=y

#
# DMA Clients
#
CONFIG_NET_DMA=y
CONFIG_ASYNC_TX_DMA=y
CONFIG_DMATEST=y
CONFIG_DCA=y
CONFIG_AUXDISPLAY=y
CONFIG_KS0108=y
CONFIG_KS0108_PORT=0x378
CONFIG_KS0108_DELAY=2
CONFIG_CFAG12864B=y
CONFIG_CFAG12864B_RATE=20
CONFIG_UIO=y
CONFIG_UIO_CIF=y
CONFIG_UIO_PDRV=y
CONFIG_UIO_PDRV_GENIRQ=y
CONFIG_UIO_AEC=y
CONFIG_UIO_SERCOS3=y
CONFIG_UIO_PCI_GENERIC=y
CONFIG_UIO_NETX=y
CONFIG_VIRTIO=y
CONFIG_VIRTIO_RING=y

#
# Virtio drivers
#
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_MMIO=y
CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y

#
# Microsoft Hyper-V guest support
#
CONFIG_HYPERV=y
CONFIG_HYPERV_UTILS=y

#
# Xen driver support
#
CONFIG_XEN_BALLOON=y
CONFIG_XEN_SELFBALLOONING=y
CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DEV_EVTCHN=y
CONFIG_XEN_BACKEND=y
CONFIG_XENFS=y
CONFIG_XEN_COMPAT_XENFS=y
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_XENBUS_FRONTEND=y
CONFIG_XEN_GNTDEV=y
CONFIG_XEN_GRANT_DEV_ALLOC=y
CONFIG_SWIOTLB_XEN=y
CONFIG_XEN_TMEM=y
CONFIG_XEN_PCIDEV_BACKEND=y
CONFIG_XEN_PRIVCMD=y
CONFIG_XEN_ACPI_PROCESSOR=y
CONFIG_STAGING=y
CONFIG_ET131X=y
CONFIG_SLICOSS=y
CONFIG_USBIP_CORE=y
# CONFIG_USBIP_VHCI_HCD is not set
CONFIG_USBIP_HOST=y
CONFIG_USBIP_DEBUG=y
CONFIG_W35UND=y
CONFIG_PRISM2_USB=y
CONFIG_ECHO=y
CONFIG_ASUS_OLED=y
CONFIG_PANEL=y
CONFIG_PANEL_PARPORT=0
CONFIG_PANEL_PROFILE=5
CONFIG_PANEL_CHANGE_MESSAGE=y
CONFIG_PANEL_BOOT_MESSAGE=""
CONFIG_R8712U=y
CONFIG_RTS_PSTOR=y
CONFIG_RTS_PSTOR_DEBUG=y
CONFIG_RTS5139=y
CONFIG_RTS5139_DEBUG=y
CONFIG_TRANZPORT=y
CONFIG_IDE_PHISON=y
# CONFIG_USB_SERIAL_QUATECH2 is not set
CONFIG_DX_SEP=y

#
# IIO staging drivers
#
CONFIG_IIO_ST_HWMON=y
CONFIG_IIO_SW_RING=y

#
# Accelerometers
#
CONFIG_ADIS16201=y
CONFIG_ADIS16203=y
CONFIG_ADIS16204=y
CONFIG_ADIS16209=y
CONFIG_ADIS16220=y
CONFIG_ADIS16240=y
CONFIG_KXSD9=y
CONFIG_LIS3L02DQ=y
CONFIG_LIS3L02DQ_BUF_KFIFO=y
# CONFIG_LIS3L02DQ_BUF_RING_SW is not set
CONFIG_SCA3000=y

#
# Analog to digital converters
#
CONFIG_AD7291=y
CONFIG_AD7298=y
CONFIG_AD7606=y
CONFIG_AD7606_IFACE_PARALLEL=y
CONFIG_AD7606_IFACE_SPI=y
CONFIG_AD799X=y
CONFIG_AD799X_RING_BUFFER=y
CONFIG_AD7476=y
CONFIG_AD7887=y
CONFIG_AD7780=y
CONFIG_AD7793=y
CONFIG_AD7816=y
CONFIG_AD7192=y
CONFIG_ADT7310=y
CONFIG_ADT7410=y
CONFIG_AD7280=y
CONFIG_MAX1363=y
CONFIG_MAX1363_RING_BUFFER=y

#
# Analog digital bi-direction converters
#
CONFIG_ADT7316=y
CONFIG_ADT7316_SPI=y
CONFIG_ADT7316_I2C=y

#
# Capacitance to digital converters
#
CONFIG_AD7150=y
CONFIG_AD7152=y
CONFIG_AD7746=y

#
# Digital to analog converters
#
CONFIG_AD5064=y
CONFIG_AD5360=y
CONFIG_AD5380=y
CONFIG_AD5421=y
CONFIG_AD5624R_SPI=y
CONFIG_AD5446=y
CONFIG_AD5504=y
CONFIG_AD5764=y
CONFIG_AD5791=y
CONFIG_AD5686=y
CONFIG_MAX517=y

#
# Direct Digital Synthesis
#
CONFIG_AD5930=y
CONFIG_AD9832=y
CONFIG_AD9834=y
CONFIG_AD9850=y
CONFIG_AD9852=y
CONFIG_AD9910=y
CONFIG_AD9951=y

#
# Digital gyroscope sensors
#
CONFIG_ADIS16060=y
CONFIG_ADIS16080=y
CONFIG_ADIS16130=y
CONFIG_ADIS16260=y
CONFIG_ADXRS450=y

#
# Network Analyzer, Impedance Converters
#
CONFIG_AD5933=y

#
# Inertial measurement units
#
CONFIG_ADIS16400=y

#
# Light sensors
#
CONFIG_SENSORS_ISL29018=y
CONFIG_SENSORS_ISL29028=y
CONFIG_SENSORS_TSL2563=y
CONFIG_TSL2583=y
CONFIG_TSL2x7x=y

#
# Magnetometer sensors
#
CONFIG_SENSORS_AK8975=y
CONFIG_SENSORS_HMC5843=y

#
# Active energy metering IC
#
CONFIG_ADE7753=y
CONFIG_ADE7754=y
CONFIG_ADE7758=y
CONFIG_ADE7759=y
CONFIG_ADE7854=y
CONFIG_ADE7854_I2C=y
CONFIG_ADE7854_SPI=y

#
# Resolver to digital converters
#
CONFIG_AD2S90=y
CONFIG_AD2S1200=y
CONFIG_AD2S1210=y

#
# Triggers - standalone
#
CONFIG_IIO_PERIODIC_RTC_TRIGGER=y
CONFIG_IIO_GPIO_TRIGGER=y
CONFIG_IIO_SYSFS_TRIGGER=y
CONFIG_IIO_DUMMY_EVGEN=y
CONFIG_IIO_SIMPLE_DUMMY=y
CONFIG_IIO_SIMPLE_DUMMY_EVENTS=y
CONFIG_IIO_SIMPLE_DUMMY_BUFFER=y
CONFIG_ZRAM=y
CONFIG_ZRAM_DEBUG=y
CONFIG_ZCACHE=y
CONFIG_ZSMALLOC=y
CONFIG_WLAGS49_H2=y
CONFIG_WLAGS49_H25=y
CONFIG_FB_SM7XX=y
CONFIG_CRYSTALHD=y
# CONFIG_CXT1E1 is not set
CONFIG_FB_XGI=y
CONFIG_ACPI_QUICKSTART=y
# CONFIG_SBE_2T3E3 is not set
CONFIG_BCM_WIMAX=y
CONFIG_FT1000=y
CONFIG_FT1000_USB=y
CONFIG_FT1000_PCMCIA=y

#
# Speakup console speech
#
CONFIG_SPEAKUP=y
CONFIG_SPEAKUP_SYNTH_ACNTSA=y
CONFIG_SPEAKUP_SYNTH_ACNTPC=y
CONFIG_SPEAKUP_SYNTH_APOLLO=y
CONFIG_SPEAKUP_SYNTH_AUDPTR=y
CONFIG_SPEAKUP_SYNTH_BNS=y
CONFIG_SPEAKUP_SYNTH_DECTLK=y
CONFIG_SPEAKUP_SYNTH_DECEXT=y
CONFIG_SPEAKUP_SYNTH_DTLK=y
CONFIG_SPEAKUP_SYNTH_KEYPC=y
CONFIG_SPEAKUP_SYNTH_LTLK=y
CONFIG_SPEAKUP_SYNTH_SOFT=y
CONFIG_SPEAKUP_SYNTH_SPKOUT=y
CONFIG_SPEAKUP_SYNTH_TXPRT=y
CONFIG_SPEAKUP_SYNTH_DUMMY=y
CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=y
CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=y
CONFIG_STAGING_MEDIA=y
CONFIG_DVB_AS102=y
CONFIG_DVB_CXD2099=y
CONFIG_VIDEO_DT3155=y
CONFIG_DT3155_CCIR=y
CONFIG_DT3155_STREAMING=y
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_BT829=y
CONFIG_LIRC_IGORPLUGUSB=y
CONFIG_LIRC_IMON=y
CONFIG_LIRC_PARALLEL=y
CONFIG_LIRC_SASEM=y
CONFIG_LIRC_SERIAL=y
CONFIG_LIRC_SERIAL_TRANSMITTER=y
CONFIG_LIRC_SIR=y
CONFIG_LIRC_TTUSBIR=y
CONFIG_LIRC_ZILOG=y

#
# Android
#
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
CONFIG_ASHMEM=y
CONFIG_ANDROID_LOGGER=y
# CONFIG_ANDROID_RAM_CONSOLE is not set
CONFIG_ANDROID_TIMED_OUTPUT=y
CONFIG_ANDROID_TIMED_GPIO=y
CONFIG_ANDROID_LOW_MEMORY_KILLER=y
CONFIG_ANDROID_INTF_ALARM_DEV=y
CONFIG_PHONE=y
CONFIG_PHONE_IXJ=y
CONFIG_PHONE_IXJ_PCMCIA=y
CONFIG_USB_WPAN_HCD=y
CONFIG_IPACK_BUS=y
CONFIG_BOARD_TPCI200=y
# CONFIG_SERIAL_IPOCTAL is not set
CONFIG_WIMAX_GDM72XX=y
CONFIG_WIMAX_GDM72XX_QOS=y
CONFIG_WIMAX_GDM72XX_K_MODE=y
CONFIG_WIMAX_GDM72XX_WIMAX2=y
CONFIG_WIMAX_GDM72XX_USB=y
# CONFIG_WIMAX_GDM72XX_SDIO is not set
CONFIG_WIMAX_GDM72XX_USB_PM=y
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=y
CONFIG_ACERHDF=y
CONFIG_ASUS_LAPTOP=y
CONFIG_DELL_LAPTOP=y
CONFIG_DELL_WMI=y
CONFIG_DELL_WMI_AIO=y
CONFIG_FUJITSU_LAPTOP=y
CONFIG_FUJITSU_LAPTOP_DEBUG=y
CONFIG_FUJITSU_TABLET=y
CONFIG_AMILO_RFKILL=y
CONFIG_HP_ACCEL=y
CONFIG_HP_WMI=y
CONFIG_MSI_LAPTOP=y
CONFIG_PANASONIC_LAPTOP=y
CONFIG_COMPAL_LAPTOP=y
CONFIG_SONY_LAPTOP=y
CONFIG_SONYPI_COMPAT=y
CONFIG_IDEAPAD_LAPTOP=y
CONFIG_THINKPAD_ACPI=y
CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y
CONFIG_THINKPAD_ACPI_DEBUG=y
CONFIG_THINKPAD_ACPI_UNSAFE_LEDS=y
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
CONFIG_SENSORS_HDAPS=y
CONFIG_INTEL_MENLOW=y
CONFIG_EEEPC_LAPTOP=y
CONFIG_ASUS_WMI=y
CONFIG_ASUS_NB_WMI=y
CONFIG_EEEPC_WMI=y
CONFIG_ACPI_WMI=y
CONFIG_MSI_WMI=y
CONFIG_TOPSTAR_LAPTOP=y
CONFIG_ACPI_TOSHIBA=y
CONFIG_TOSHIBA_BT_RFKILL=y
CONFIG_ACPI_CMPC=y
CONFIG_INTEL_IPS=y
CONFIG_IBM_RTL=y
CONFIG_XO15_EBOOK=y
CONFIG_SAMSUNG_LAPTOP=y
CONFIG_MXM_WMI=y
CONFIG_INTEL_OAKTRAIL=y
CONFIG_SAMSUNG_Q10=y
CONFIG_APPLE_GMUX=y

#
# Hardware Spinlock drivers
#
CONFIG_CLKEVT_I8253=y
CONFIG_I8253_LOCK=y
CONFIG_CLKBLD_I8253=y
CONFIG_IOMMU_API=y
CONFIG_IOMMU_SUPPORT=y
CONFIG_AMD_IOMMU=y
CONFIG_AMD_IOMMU_STATS=y
CONFIG_AMD_IOMMU_V2=y
CONFIG_DMAR_TABLE=y
CONFIG_INTEL_IOMMU=y
CONFIG_INTEL_IOMMU_DEFAULT_ON=y
CONFIG_INTEL_IOMMU_FLOPPY_WA=y
CONFIG_IRQ_REMAP=y

#
# Remoteproc drivers (EXPERIMENTAL)
#

#
# Rpmsg drivers (EXPERIMENTAL)
#
CONFIG_VIRT_DRIVERS=y
CONFIG_PM_DEVFREQ=y

#
# DEVFREQ Governors
#
CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
CONFIG_DEVFREQ_GOV_PERFORMANCE=y
CONFIG_DEVFREQ_GOV_POWERSAVE=y
CONFIG_DEVFREQ_GOV_USERSPACE=y

#
# DEVFREQ Drivers
#
CONFIG_EXTCON=y

#
# Extcon Device Drivers
#
CONFIG_EXTCON_GPIO=y
CONFIG_MEMORY=y
CONFIG_IIO=y
CONFIG_IIO_BUFFER=y
CONFIG_IIO_KFIFO_BUF=y
CONFIG_IIO_TRIGGER=y
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2

#
# Analog to digital converters
#

#
# Amplifiers
#
CONFIG_AD8366=y
CONFIG_VME_BUS=y

#
# VME Bridge Drivers
#
CONFIG_VME_CA91CX42=y
CONFIG_VME_TSI148=y

#
# VME Board Drivers
#
CONFIG_VMIVME_7805=y

#
# VME Device Drivers
#
CONFIG_VME_USER=y
CONFIG_VME_PIO2=y

#
# Firmware Drivers
#
CONFIG_EDD=y
# CONFIG_EDD_OFF is not set
CONFIG_FIRMWARE_MEMMAP=y
CONFIG_EFI_VARS=y
CONFIG_DELL_RBU=y
CONFIG_DCDBAS=y
CONFIG_DMIID=y
CONFIG_DMI_SYSFS=y
CONFIG_ISCSI_IBFT_FIND=y
CONFIG_ISCSI_IBFT=y
CONFIG_GOOGLE_FIRMWARE=y

#
# Google Firmware Drivers
#
CONFIG_GOOGLE_SMI=y
CONFIG_GOOGLE_MEMCONSOLE=y

#
# File systems
#
CONFIG_DCACHE_WORD_ACCESS=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_EXT2_FS_XIP=y
CONFIG_EXT3_FS=y
CONFIG_EXT3_DEFAULTS_TO_ORDERED=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_EXT4_FS=y
CONFIG_EXT4_FS_XATTR=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_EXT4_DEBUG=y
CONFIG_FS_XIP=y
CONFIG_JBD=y
CONFIG_JBD_DEBUG=y
CONFIG_JBD2=y
CONFIG_JBD2_DEBUG=y
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
CONFIG_REISERFS_CHECK=y
CONFIG_REISERFS_PROC_INFO=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
CONFIG_JFS_FS=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
CONFIG_JFS_DEBUG=y
CONFIG_JFS_STATISTICS=y
CONFIG_XFS_FS=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_RT=y
CONFIG_XFS_DEBUG=y
CONFIG_GFS2_FS=y
CONFIG_GFS2_FS_LOCKING_DLM=y
CONFIG_OCFS2_FS=y
CONFIG_OCFS2_FS_O2CB=y
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=y
CONFIG_OCFS2_FS_STATS=y
CONFIG_OCFS2_DEBUG_MASKLOG=y
CONFIG_OCFS2_DEBUG_FS=y
CONFIG_BTRFS_FS=y
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_BTRFS_FS_CHECK_INTEGRITY=y
CONFIG_NILFS2_FS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
CONFIG_FILE_LOCKING=y
CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_FANOTIFY=y
CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
# CONFIG_PRINT_QUOTA_WARNING is not set
CONFIG_QUOTA_DEBUG=y
CONFIG_QUOTA_TREE=y
CONFIG_QFMT_V1=y
CONFIG_QFMT_V2=y
CONFIG_QUOTACTL=y
CONFIG_QUOTACTL_COMPAT=y
CONFIG_AUTOFS4_FS=y
CONFIG_FUSE_FS=y
CONFIG_CUSE=y
CONFIG_GENERIC_ACL=y

#
# Caches
#
CONFIG_FSCACHE=y
CONFIG_FSCACHE_STATS=y
CONFIG_FSCACHE_HISTOGRAM=y
CONFIG_FSCACHE_DEBUG=y
CONFIG_FSCACHE_OBJECT_LIST=y
CONFIG_CACHEFILES=y
CONFIG_CACHEFILES_DEBUG=y
CONFIG_CACHEFILES_HISTOGRAM=y

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=y
CONFIG_UDF_NLS=y

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
CONFIG_NTFS_FS=y
CONFIG_NTFS_DEBUG=y
CONFIG_NTFS_RW=y

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_VMCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_CONFIGFS_FS=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_ADFS_FS=y
CONFIG_ADFS_FS_RW=y
CONFIG_AFFS_FS=y
CONFIG_ECRYPT_FS=y
CONFIG_HFS_FS=y
CONFIG_HFSPLUS_FS=y
CONFIG_BEFS_FS=y
CONFIG_BEFS_DEBUG=y
CONFIG_BFS_FS=y
CONFIG_EFS_FS=y
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
CONFIG_JFFS2_FS_WBUF_VERIFY=y
CONFIG_JFFS2_SUMMARY=y
CONFIG_JFFS2_FS_XATTR=y
CONFIG_JFFS2_FS_POSIX_ACL=y
CONFIG_JFFS2_FS_SECURITY=y
CONFIG_JFFS2_COMPRESSION_OPTIONS=y
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_LZO=y
CONFIG_JFFS2_RTIME=y
CONFIG_JFFS2_RUBIN=y
# CONFIG_JFFS2_CMODE_NONE is not set
CONFIG_JFFS2_CMODE_PRIORITY=y
# CONFIG_JFFS2_CMODE_SIZE is not set
# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
CONFIG_UBIFS_FS=y
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y
CONFIG_LOGFS=y
CONFIG_CRAMFS=y
CONFIG_SQUASHFS=y
CONFIG_SQUASHFS_XATTR=y
CONFIG_SQUASHFS_ZLIB=y
CONFIG_SQUASHFS_LZO=y
CONFIG_SQUASHFS_XZ=y
CONFIG_SQUASHFS_4K_DEVBLK_SIZE=y
CONFIG_SQUASHFS_EMBEDDED=y
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
CONFIG_VXFS_FS=y
CONFIG_MINIX_FS=y
CONFIG_OMFS_FS=y
CONFIG_HPFS_FS=y
CONFIG_QNX4FS_FS=y
CONFIG_QNX6FS_FS=y
CONFIG_QNX6FS_DEBUG=y
CONFIG_ROMFS_FS=y
CONFIG_ROMFS_BACKED_BY_BLOCK=y
# CONFIG_ROMFS_BACKED_BY_MTD is not set
# CONFIG_ROMFS_BACKED_BY_BOTH is not set
CONFIG_ROMFS_ON_BLOCK=y
CONFIG_PSTORE=y
CONFIG_PSTORE_RAM=y
CONFIG_SYSV_FS=y
CONFIG_UFS_FS=y
CONFIG_UFS_FS_WRITE=y
CONFIG_UFS_DEBUG=y
CONFIG_EXOFS_FS=y
CONFIG_EXOFS_DEBUG=y
CONFIG_ORE=y
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V2=y
CONFIG_NFS_V3=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=y
CONFIG_NFS_V4_1=y
CONFIG_PNFS_FILE_LAYOUT=y
CONFIG_PNFS_BLOCK=y
CONFIG_PNFS_OBJLAYOUT=y
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="y"
CONFIG_ROOT_NFS=y
CONFIG_NFS_FSCACHE=y
CONFIG_NFS_USE_LEGACY_DNS=y
CONFIG_NFS_DEBUG=y
CONFIG_NFSD=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_FAULT_INJECTION=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_NFS_ACL_SUPPORT=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
CONFIG_SUNRPC_BACKCHANNEL=y
CONFIG_SUNRPC_XPRT_RDMA=y
CONFIG_RPCSEC_GSS_KRB5=y
CONFIG_SUNRPC_DEBUG=y
CONFIG_CEPH_FS=y
CONFIG_CIFS=y
CONFIG_CIFS_STATS=y
CONFIG_CIFS_STATS2=y
CONFIG_CIFS_WEAK_PW_HASH=y
CONFIG_CIFS_UPCALL=y
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y
CONFIG_CIFS_DEBUG2=y
CONFIG_CIFS_DFS_UPCALL=y
CONFIG_CIFS_FSCACHE=y
CONFIG_CIFS_ACL=y
CONFIG_NCP_FS=y
CONFIG_NCPFS_PACKET_SIGNING=y
CONFIG_NCPFS_IOCTL_LOCKING=y
CONFIG_NCPFS_STRONG=y
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_OS2_NS=y
CONFIG_NCPFS_SMALLDOS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_EXTRAS=y
CONFIG_CODA_FS=y
CONFIG_AFS_FS=y
CONFIG_AFS_DEBUG=y
CONFIG_AFS_FSCACHE=y
CONFIG_9P_FS=y
CONFIG_9P_FSCACHE=y
CONFIG_9P_FS_POSIX_ACL=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=y
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
# CONFIG_NLS_CODEPAGE_850 is not set
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
CONFIG_NLS_ASCII=y
CONFIG_NLS_ISO8859_1=y
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
# CONFIG_NLS_MAC_ROMAN is not set
# CONFIG_NLS_MAC_CELTIC is not set
# CONFIG_NLS_MAC_CENTEURO is not set
# CONFIG_NLS_MAC_CROATIAN is not set
# CONFIG_NLS_MAC_CYRILLIC is not set
# CONFIG_NLS_MAC_GAELIC is not set
# CONFIG_NLS_MAC_GREEK is not set
# CONFIG_NLS_MAC_ICELAND is not set
# CONFIG_NLS_MAC_INUIT is not set
# CONFIG_NLS_MAC_ROMANIAN is not set
# CONFIG_NLS_MAC_TURKISH is not set
CONFIG_NLS_UTF8=y
CONFIG_DLM=y
CONFIG_DLM_DEBUG=y

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_PRINTK_TIME=y
CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
# CONFIG_ENABLE_WARN_DEPRECATED is not set
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_FRAME_WARN=2048
CONFIG_MAGIC_SYSRQ=y
# CONFIG_STRIP_ASM_SYMS is not set
CONFIG_READABLE_ASM=y
# CONFIG_UNUSED_SYMBOLS is not set
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_SECTION_MISMATCH=y
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_SHIRQ=y
CONFIG_LOCKUP_DETECTOR=y
CONFIG_HARDLOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC=y
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=1
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=1
# CONFIG_PANIC_ON_OOPS is not set
CONFIG_PANIC_ON_OOPS_VALUE=0
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
CONFIG_SCHED_DEBUG=y
CONFIG_SCHEDSTATS=y
CONFIG_TIMER_STATS=y
CONFIG_DEBUG_OBJECTS=y
# CONFIG_DEBUG_OBJECTS_SELFTEST is not set
CONFIG_DEBUG_OBJECTS_FREE=y
CONFIG_DEBUG_OBJECTS_TIMERS=y
CONFIG_DEBUG_OBJECTS_WORK=y
CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
CONFIG_DEBUG_OBJECTS_PERCPU_COUNTER=y
CONFIG_DEBUG_OBJECTS_ENABLE_DEFAULT=1
# CONFIG_SLUB_DEBUG_ON is not set
CONFIG_SLUB_STATS=y
CONFIG_DEBUG_KMEMLEAK=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
# CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF is not set
CONFIG_DEBUG_PREEMPT=y
CONFIG_DEBUG_RT_MUTEXES=y
CONFIG_DEBUG_PI_LIST=y
CONFIG_RT_MUTEX_TESTER=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_PROVE_LOCKING=y
CONFIG_PROVE_RCU=y
CONFIG_PROVE_RCU_REPEATEDLY=y
CONFIG_SPARSE_RCU_POINTER=y
CONFIG_LOCKDEP=y
CONFIG_LOCK_STAT=y
CONFIG_DEBUG_LOCKDEP=y
CONFIG_TRACE_IRQFLAGS=y
CONFIG_DEBUG_ATOMIC_SLEEP=y
CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
CONFIG_STACKTRACE=y
CONFIG_DEBUG_STACK_USAGE=y
CONFIG_DEBUG_KOBJECT=y
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_INFO_REDUCED is not set
CONFIG_DEBUG_VM=y
CONFIG_DEBUG_VIRTUAL=y
CONFIG_DEBUG_WRITECOUNT=y
CONFIG_DEBUG_MEMORY_INIT=y
CONFIG_DEBUG_LIST=y
CONFIG_TEST_LIST_SORT=y
CONFIG_DEBUG_SG=y
CONFIG_DEBUG_NOTIFIERS=y
CONFIG_DEBUG_CREDENTIALS=y
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
# CONFIG_BOOT_PRINTK_DELAY is not set
CONFIG_RCU_TORTURE_TEST=y
CONFIG_RCU_TORTURE_TEST_RUNNABLE=y
CONFIG_RCU_CPU_STALL_TIMEOUT=60
CONFIG_RCU_CPU_STALL_VERBOSE=y
CONFIG_RCU_CPU_STALL_INFO=y
CONFIG_RCU_TRACE=y
CONFIG_BACKTRACE_SELF_TEST=y
CONFIG_DEBUG_BLOCK_EXT_DEVT=y
CONFIG_DEBUG_FORCE_WEAK_PER_CPU=y
CONFIG_DEBUG_PER_CPU_MAPS=y
CONFIG_LKDTM=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=y
CONFIG_FAULT_INJECTION=y
CONFIG_FAILSLAB=y
CONFIG_FAIL_PAGE_ALLOC=y
CONFIG_FAIL_MAKE_REQUEST=y
CONFIG_FAIL_IO_TIMEOUT=y
CONFIG_FAIL_MMC_REQUEST=y
CONFIG_FAULT_INJECTION_DEBUG_FS=y
CONFIG_LATENCYTOP=y
CONFIG_DEBUG_PAGEALLOC=y
CONFIG_WANT_PAGE_DEBUG_FLAGS=y
CONFIG_PAGE_GUARD=y
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_RING_BUFFER=y
CONFIG_EVENT_TRACING=y
CONFIG_EVENT_POWER_TRACING_DEPRECATED=y
CONFIG_CONTEXT_SWITCH_TRACER=y
CONFIG_RING_BUFFER_ALLOW_SWAP=y
CONFIG_TRACING=y
CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
# CONFIG_FUNCTION_TRACER is not set
# CONFIG_IRQSOFF_TRACER is not set
# CONFIG_PREEMPT_TRACER is not set
# CONFIG_SCHED_TRACER is not set
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
# CONFIG_FTRACE_SYSCALLS is not set
CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_STACK_TRACER is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_UPROBE_EVENT=y
CONFIG_PROBE_EVENTS=y
# CONFIG_MMIOTRACE is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set
CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
CONFIG_FIREWIRE_OHCI_REMOTE_DMA=y
CONFIG_DYNAMIC_DEBUG=y
CONFIG_DMA_API_DEBUG=y
CONFIG_ATOMIC64_SELFTEST=y
CONFIG_ASYNC_RAID6_TEST=y
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y
CONFIG_KGDB_TESTS=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_LOW_LEVEL_TRAP=y
CONFIG_KGDB_KDB=y
CONFIG_KDB_KEYBOARD=y
CONFIG_HAVE_ARCH_KMEMCHECK=y
# CONFIG_KMEMCHECK is not set
CONFIG_TEST_KSTRTOX=y
# CONFIG_STRICT_DEVMEM is not set
CONFIG_X86_VERBOSE_BOOTUP=y
CONFIG_EARLY_PRINTK=y
CONFIG_EARLY_PRINTK_DBGP=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_X86_PTDUMP=y
CONFIG_DEBUG_RODATA=y
CONFIG_DEBUG_RODATA_TEST=y
CONFIG_IOMMU_DEBUG=y
CONFIG_IOMMU_STRESS=y
CONFIG_IOMMU_LEAK=y
CONFIG_HAVE_MMIOTRACE_SUPPORT=y
CONFIG_IO_DELAY_TYPE_0X80=0
CONFIG_IO_DELAY_TYPE_0XED=1
CONFIG_IO_DELAY_TYPE_UDELAY=2
CONFIG_IO_DELAY_TYPE_NONE=3
CONFIG_IO_DELAY_0X80=y
# CONFIG_IO_DELAY_0XED is not set
# CONFIG_IO_DELAY_UDELAY is not set
# CONFIG_IO_DELAY_NONE is not set
CONFIG_DEFAULT_IO_DELAY_TYPE=0
CONFIG_DEBUG_BOOT_PARAMS=y
CONFIG_CPA_DEBUG=y
CONFIG_OPTIMIZE_INLINING=y
CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y
CONFIG_DEBUG_NMI_SELFTEST=y

#
# Security options
#
CONFIG_KEYS=y
CONFIG_TRUSTED_KEYS=y
CONFIG_ENCRYPTED_KEYS=y
CONFIG_KEYS_DEBUG_PROC_KEYS=y
# CONFIG_SECURITY_DMESG_RESTRICT is not set
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_NETWORK_XFRM=y
CONFIG_SECURITY_PATH=y
# CONFIG_INTEL_TXT is not set
CONFIG_LSM_MMAP_MIN_ADDR=65536
CONFIG_SECURITY_SELINUX=y
# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set
# CONFIG_SECURITY_SELINUX_DISABLE is not set
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_SECURITY_SELINUX_AVC_STATS=y
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX=y
CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX_VALUE=19
CONFIG_SECURITY_SMACK=y
CONFIG_SECURITY_TOMOYO=y
CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER=y
CONFIG_SECURITY_APPARMOR=y
CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1
CONFIG_SECURITY_YAMA=y
CONFIG_INTEGRITY=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_IMA=y
CONFIG_IMA_MEASURE_PCR_IDX=10
CONFIG_IMA_AUDIT=y
CONFIG_IMA_LSM_RULES=y
CONFIG_EVM=y
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
# CONFIG_DEFAULT_SECURITY_SMACK is not set
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
# CONFIG_DEFAULT_SECURITY_YAMA is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_XOR_BLOCKS=y
CONFIG_ASYNC_CORE=y
CONFIG_ASYNC_MEMCPY=y
CONFIG_ASYNC_XOR=y
CONFIG_ASYNC_PQ=y
CONFIG_ASYNC_RAID6_RECOV=y
CONFIG_ASYNC_TX_DISABLE_PQ_VAL_DMA=y
CONFIG_ASYNC_TX_DISABLE_XOR_VAL_DMA=y
CONFIG_CRYPTO=y

#
# Crypto core or helper
#
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_AEAD2=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_BLKCIPHER2=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_HASH2=y
CONFIG_CRYPTO_RNG=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_PCOMP=y
CONFIG_CRYPTO_PCOMP2=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y
CONFIG_CRYPTO_USER=y
CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_PCRYPT=y
CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_AUTHENC=y

#
# Authenticated Encryption with Associated Data
#
CONFIG_CRYPTO_CCM=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_SEQIV=y

#
# Block modes
#
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_LRW=y
CONFIG_CRYPTO_PCBC=y
CONFIG_CRYPTO_XTS=y

#
# Hash modes
#
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=y
CONFIG_CRYPTO_VMAC=y

#
# Digest
#
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=y
CONFIG_CRYPTO_GHASH=y
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_RMD128=y
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_RMD256=y
CONFIG_CRYPTO_RMD320=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA1_SSSE3=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_TGR192=y
CONFIG_CRYPTO_WP512=y
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=y

#
# Ciphers
#
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_AES_X86_64=y
CONFIG_CRYPTO_AES_NI_INTEL=y
CONFIG_CRYPTO_ANUBIS=y
CONFIG_CRYPTO_ARC4=y
CONFIG_CRYPTO_BLOWFISH=y
CONFIG_CRYPTO_BLOWFISH_COMMON=y
CONFIG_CRYPTO_BLOWFISH_X86_64=y
CONFIG_CRYPTO_CAMELLIA=y
CONFIG_CRYPTO_CAMELLIA_X86_64=y
CONFIG_CRYPTO_CAST5=y
CONFIG_CRYPTO_CAST6=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_FCRYPT=y
CONFIG_CRYPTO_KHAZAD=y
CONFIG_CRYPTO_SALSA20=y
CONFIG_CRYPTO_SALSA20_X86_64=y
CONFIG_CRYPTO_SEED=y
CONFIG_CRYPTO_SERPENT=y
CONFIG_CRYPTO_SERPENT_SSE2_X86_64=y
CONFIG_CRYPTO_TEA=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_TWOFISH_COMMON=y
CONFIG_CRYPTO_TWOFISH_X86_64=y
CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=y

#
# Compression
#
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_ZLIB=y
CONFIG_CRYPTO_LZO=y

#
# Random Number Generation
#
CONFIG_CRYPTO_ANSI_CPRNG=y
CONFIG_CRYPTO_USER_API=y
CONFIG_CRYPTO_USER_API_HASH=y
CONFIG_CRYPTO_USER_API_SKCIPHER=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_DEV_PADLOCK=y
CONFIG_CRYPTO_DEV_PADLOCK_AES=y
CONFIG_CRYPTO_DEV_PADLOCK_SHA=y
CONFIG_HAVE_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_EVENTFD=y
CONFIG_KVM_APIC_ARCHITECTURE=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
CONFIG_KVM_INTEL=y
CONFIG_KVM_AMD=y
CONFIG_KVM_MMU_AUDIT=y
CONFIG_VHOST_NET=y
CONFIG_BINARY_PRINTF=y

#
# Library routines
#
CONFIG_RAID6_PQ=y
CONFIG_BITREVERSE=y
CONFIG_GENERIC_STRNCPY_FROM_USER=y
CONFIG_GENERIC_STRNLEN_USER=y
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_IO=y
CONFIG_CRC_CCITT=y
CONFIG_CRC16=y
CONFIG_CRC_T10DIF=y
CONFIG_CRC_ITU_T=y
CONFIG_CRC32=y
CONFIG_CRC32_SELFTEST=y
CONFIG_CRC32_SLICEBY8=y
# CONFIG_CRC32_SLICEBY4 is not set
# CONFIG_CRC32_SARWATE is not set
# CONFIG_CRC32_BIT is not set
CONFIG_CRC7=y
CONFIG_LIBCRC32C=y
CONFIG_CRC8=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_XZ_DEC=y
CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
CONFIG_XZ_DEC_IA64=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_SPARC=y
CONFIG_XZ_DEC_BCJ=y
CONFIG_XZ_DEC_TEST=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=y
CONFIG_REED_SOLOMON_ENC8=y
CONFIG_REED_SOLOMON_DEC8=y
CONFIG_REED_SOLOMON_DEC16=y
CONFIG_BCH=y
CONFIG_BCH_CONST_PARAMS=y
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=y
CONFIG_TEXTSEARCH_BM=y
CONFIG_TEXTSEARCH_FSM=y
CONFIG_BTREE=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_RMAP=y
CONFIG_DQL=y
CONFIG_NLATTR=y
CONFIG_LRU_CACHE=y
CONFIG_AVERAGE=y
CONFIG_CLZ_TAB=y
CONFIG_CORDIC=y
CONFIG_DDR=y
CONFIG_MPILIB=y
CONFIG_SIGNATURE=y

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-25 21:16   ` Sasha Levin
@ 2012-07-26  5:10     ` Michael Wang
  0 siblings, 0 replies; 28+ messages in thread
From: Michael Wang @ 2012-07-26  5:10 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/26/2012 05:16 AM, Sasha Levin wrote:
> On 07/25/2012 10:36 AM, Michael Wang wrote:
>> On 07/25/2012 01:10 AM, Sasha Levin wrote:
>>> Hi all,
>>>
>>> I was fuzzing with trinity inside a KVM tools guest, on the current 3.6, and stumbled on the following:
>>
>> Hi, Sasha
>>
>> I'm currently trying to reproduce this issue on my machine but keep
>> failing, it's really make me think the issue has been solved...
> 
> I see this happening on both with -next and current Linus' master.
> 
>> Could you please provide more info about you environment? like the
>> .config and is there some plugin devices which is rarely.
> 
> I've attached the .config. The only device attached to the guest is a virtio-9p device which provides the filesystem, but I don't think it's related to the issue.
> 
>> It will be better if you can make your test environment as clean as
>> possible (remove the devices which could be remove) and then see whether
>> the issue still exist.
> 
> I can't remove the filesystem device, other that that nothing else is attached to the guest.
> 
> On 07/25/2012 11:06 AM, Michael Wang wrote:
>> And is this a host dmesg or from the guest?
> 
> guest dmesg, nothing appeared in the host.

Then the situation will be more complicated...

If you are running on a X86 platform, the interrupt bit in
eflag should be 0x200, so according to the dmesg, this bit
is not set and the interrupt is disabled.

But then how to explain the timer interrupt in cpu 1's trace?
that makes me doubt there are some issues while simulating
the timer interrupt for guest.

> 
>> Could you please provide more details about your testing environment?
> 
> The guest is running a -next/3.6 kernel built with the attached .config. In that guest I run an instance of the trinity fuzzer.

Could you provide the option you have used with trinity
(the full command)?
Are you running it as a root or a normal user?

I've test again with a 3.5.0 guest(fedora 16) according
to your .config, running trinity with out any option as
a normal user, the rcu stall warning doesn't appear, but
got some different warning which I have attached below.

I'm not sure whether those info also appear on your machine?

--Michael Wang

Jul 26 12:50:10 localhost kernel: [  585.900620] ------------[ cut here ]------------
Jul 26 12:50:10 localhost kernel: [  585.900652] WARNING: at kernel/futex.c:2452 sys_get_robust_list+0x4f/0xe5()
Jul 26 12:50:10 localhost kernel: [  585.900658] Hardware name: Bochs
Jul 26 12:50:10 localhost kernel: [  585.900660] deprecated: get_robust_list will be deleted in 2013.
Jul 26 12:50:10 localhost kernel: [  585.900661] Modules linked in: binfmt_misc bnep can_raw hidp af_802154 phonet bluetooth rfkill can pppoe pppox ppp_generic slhc irda crc_ccitt rds af_key rose ax25 appletalk ipx p8022 psnap llc p8023 atm tcp_lp nls_utf8 fuse lockd ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ip6table_filter ip6_tables ppdev parport_pc microcode parport 8139too i2c_piix4 8139cp i2c_core pcspkr mii uinput sunrpc floppy [last unloaded: scsi_wait_scan]
Jul 26 12:50:10 localhost kernel: [  585.900737] Pid: 6627, comm: trinity-child11 Not tainted 3.5.0+ #16
Jul 26 12:50:10 localhost kernel: [  585.900739] Call Trace:
Jul 26 12:50:10 localhost kernel: [  585.900755]  [<ffffffff8104c58d>] warn_slowpath_common+0x83/0x9b
Jul 26 12:50:10 localhost kernel: [  585.900760]  [<ffffffff8104c648>] warn_slowpath_fmt+0x46/0x48
Jul 26 12:50:10 localhost kernel: [  585.900771]  [<ffffffff810bdc81>] ? __audit_syscall_entry+0x11f/0x14b
Jul 26 12:50:10 localhost kernel: [  585.900777]  [<ffffffff810a15f9>] sys_get_robust_list+0x4f/0xe5
Jul 26 12:50:10 localhost kernel: [  585.900796]  [<ffffffff81533569>] system_call_fastpath+0x16/0x1b
Jul 26 12:50:10 localhost kernel: [  585.900799] ---[ end trace d35e4e89c7922e91 ]---
Jul 26 12:50:10 localhost kernel: [  585.968401] trinity-child11 (6627): Using mlock ulimits for SHM_HUGETLB is deprecated
Jul 26 12:50:10 localhost kernel: [  586.002344] warning: process `trinity-child7' used the deprecated sysctl system call with 
Jul 26 12:50:11 localhost dbus[919]: [system] Successfully activated service 'org.fedoraproject.Setroubleshootd'
Jul 26 12:50:11 localhost dbus-daemon[919]: dbus[919]: [system] Successfully activated service 'org.fedoraproject.Setroubleshootd'
Jul 26 12:50:11 localhost abrtd: Directory 'oops-2012-07-26-12:50:11-868-0' creation detected
Jul 26 12:50:11 localhost abrt-dump-oops: Reported 1 kernel oopses to Abrt
Jul 26 12:50:11 localhost abrtd: Can't open file '/var/spool/abrt/oops-2012-07-26-12:50:11-868-0/uid': No such file or directory
Jul 26 12:50:11 localhost abrtd: DUP_OF_DIR: /var/spool/abrt/oops-2012-07-26-10:59:11-864-0
Jul 26 12:50:11 localhost abrtd: Dump directory is a duplicate of /var/spool/abrt/oops-2012-07-26-10:59:11-864-0
Jul 26 12:50:11 localhost abrtd: Deleting dump directory oops-2012-07-26-12:50:11-868-0 (dup of oops-2012-07-26-10:59:11-864-0), sending dbus signal



Jul 26 12:52:58 localhost kernel: [  753.298689] 
Jul 26 12:52:58 localhost kernel: [  753.298693] ======================================================
Jul 26 12:52:58 localhost kernel: [  753.298696] [ INFO: HARDIRQ-READ-safe -> HARDIRQ-READ-unsafe lock order detected ]
Jul 26 12:52:58 localhost kernel: [  753.298699] 3.5.0+ #16 Tainted: G        W   
Jul 26 12:52:58 localhost kernel: [  753.298701] ------------------------------------------------------
Jul 26 12:52:58 localhost kernel: [  753.298704] trinity-child2/6740 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
Jul 26 12:52:58 localhost kernel: [  753.298706]  (&(&p->alloc_lock)->rlock){+.+...}, at: [<ffffffff81218a11>] keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.298731] 
Jul 26 12:52:58 localhost kernel: [  753.298731] and this task is already holding:
Jul 26 12:52:58 localhost kernel: [  753.298734]  (tasklist_lock){.?.?..}, at: [<ffffffff812189f5>] keyctl_session_to_parent+0xeb/0x329
Jul 26 12:52:58 localhost kernel: [  753.298740] which would create a new lock dependency:
Jul 26 12:52:58 localhost kernel: [  753.298741]  (tasklist_lock){.?.?..} -> (&(&p->alloc_lock)->rlock){+.+...}
Jul 26 12:52:58 localhost kernel: [  753.298748] 
Jul 26 12:52:58 localhost kernel: [  753.298748] but this new dependency connects a HARDIRQ-READ-irq-safe lock:
Jul 26 12:52:58 localhost kernel: [  753.298750]  (tasklist_lock){.?.?..}
Jul 26 12:52:58 localhost kernel: [  753.298750] ... which became HARDIRQ-READ-irq-safe at:
Jul 26 12:52:58 localhost kernel: [  753.298754]   [<ffffffff8109d14c>] __lock_acquire+0x27b/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.298765]   [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.298769]   [<ffffffff8152ce8b>] _raw_read_lock+0x3e/0x4d
Jul 26 12:52:58 localhost kernel: [  753.298780]   [<ffffffff8116403f>] send_sigio+0x56/0xde
Jul 26 12:52:58 localhost kernel: [  753.298796]   [<ffffffff8116417f>] kill_fasync+0xb8/0x118
Jul 26 12:52:58 localhost kernel: [  753.298800]   [<ffffffff813c919e>] evdev_pass_event+0xc3/0xd4
Jul 26 12:52:58 localhost kernel: [  753.298817]   [<ffffffff813c9c23>] evdev_event+0x154/0x210
Jul 26 12:52:58 localhost kernel: [  753.298820]   [<ffffffff813c5149>] input_pass_event+0xe5/0x141
Jul 26 12:52:58 localhost kernel: [  753.298824]   [<ffffffff813c5ab6>] input_handle_event+0x480/0x48f
Jul 26 12:52:58 localhost kernel: [  753.298827]   [<ffffffff813c5c01>] input_event+0x69/0x88
Jul 26 12:52:58 localhost kernel: [  753.298830]   [<ffffffff813cc4d5>] psmouse_process_byte+0x258/0x262
Jul 26 12:52:58 localhost kernel: [  753.298835]   [<ffffffff813cc9df>] psmouse_handle_byte+0x15/0x138
Jul 26 12:52:58 localhost kernel: [  753.298838]   [<ffffffff813ccdcb>] psmouse_interrupt+0x2b2/0x2d2
Jul 26 12:52:58 localhost kernel: [  753.298842]   [<ffffffff813c069a>] serio_interrupt+0x45/0x7f
Jul 26 12:52:58 localhost kernel: [  753.298852]   [<ffffffff813c1498>] i8042_interrupt+0x299/0x2ab
Jul 26 12:52:58 localhost kernel: [  753.298856]   [<ffffffff810cb162>] handle_irq_event_percpu+0xa5/0x266
Jul 26 12:52:58 localhost kernel: [  753.298871]   [<ffffffff810cb367>] handle_irq_event+0x44/0x65
Jul 26 12:52:58 localhost kernel: [  753.298875]   [<ffffffff810cdbc8>] handle_edge_irq+0xaa/0xd2
Jul 26 12:52:58 localhost kernel: [  753.298879]   [<ffffffff81011d08>] handle_irq+0x15f/0x170
Jul 26 12:52:58 localhost kernel: [  753.298894]   [<ffffffff8153532d>] do_IRQ+0x4d/0xa4
Jul 26 12:52:58 localhost kernel: [  753.298898]   [<ffffffff8152d5af>] ret_from_intr+0x0/0x1a
Jul 26 12:52:58 localhost kernel: [  753.298902]   [<ffffffff81017829>] default_idle+0x51/0x8c
Jul 26 12:52:58 localhost kernel: [  753.298908]   [<ffffffff810181e6>] cpu_idle+0xaf/0x103
Jul 26 12:52:58 localhost kernel: [  753.298911]   [<ffffffff81506441>] rest_init+0x135/0x13c
Jul 26 12:52:58 localhost kernel: [  753.298920]   [<ffffffff81b0cbb3>] start_kernel+0x3d9/0x3e6
Jul 26 12:52:58 localhost kernel: [  753.298938]   [<ffffffff81b0c2d3>] x86_64_start_reservations+0xae/0xb2
Jul 26 12:52:58 localhost kernel: [  753.298942]   [<ffffffff81b0c3d9>] x86_64_start_kernel+0x102/0x111
Jul 26 12:52:58 localhost kernel: [  753.298949] 
Jul 26 12:52:58 localhost kernel: [  753.298949] to a HARDIRQ-READ-irq-unsafe lock:
Jul 26 12:52:58 localhost kernel: [  753.298951]  (&(&p->alloc_lock)->rlock){+.+...}
Jul 26 12:52:58 localhost kernel: [  753.298951] ... which became HARDIRQ-READ-irq-unsafe at:
Jul 26 12:52:58 localhost kernel: [  753.298955] ...  [<ffffffff8109d1f4>] __lock_acquire+0x323/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.298964]   [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.298967]   [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.298971]   [<ffffffff8115b87a>] set_task_comm+0x25/0xe5
Jul 26 12:52:58 localhost kernel: [  753.298979]   [<ffffffff8106eb2c>] kthreadd+0x35/0x151
Jul 26 12:52:58 localhost kernel: [  753.298989]   [<ffffffff815349b4>] kernel_thread_helper+0x4/0x10
Jul 26 12:52:58 localhost kernel: [  753.298993] 
Jul 26 12:52:58 localhost kernel: [  753.298993] other info that might help us debug this:
Jul 26 12:52:58 localhost kernel: [  753.298993] 
Jul 26 12:52:58 localhost kernel: [  753.298996]  Possible interrupt unsafe locking scenario:
Jul 26 12:52:58 localhost kernel: [  753.298996] 
Jul 26 12:52:58 localhost kernel: [  753.298998]        CPU0                    CPU1
Jul 26 12:52:58 localhost kernel: [  753.298999]        ----                    ----
Jul 26 12:52:58 localhost kernel: [  753.299000]   lock(&(&p->alloc_lock)->rlock);
Jul 26 12:52:58 localhost kernel: [  753.299008]                                local_irq_disable();
Jul 26 12:52:58 localhost kernel: [  753.299010]                                lock(tasklist_lock);
Jul 26 12:52:58 localhost kernel: [  753.299013]                                lock(&(&p->alloc_lock)->rlock);
Jul 26 12:52:58 localhost kernel: [  753.299015]   <Interrupt>
Jul 26 12:52:58 localhost kernel: [  753.299016]     lock(tasklist_lock);
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016]  *** DEADLOCK ***
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016] 2 locks held by trinity-child2/6740:
Jul 26 12:52:58 localhost kernel: [  753.299016]  #0:  (rcu_read_lock){.+.+..}, at: [<ffffffff81218952>] keyctl_session_to_parent+0x48/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]  #1:  (tasklist_lock){.?.?..}, at: [<ffffffff812189f5>] keyctl_session_to_parent+0xeb/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016] the dependencies between HARDIRQ-READ-irq-safe lock and the holding lock:
Jul 26 12:52:58 localhost kernel: [  753.299016] -> (tasklist_lock){.?.?..} ops: 41961 {
Jul 26 12:52:58 localhost kernel: [  753.299016]    IN-HARDIRQ-R at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109d14c>] __lock_acquire+0x27b/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152ce8b>] _raw_read_lock+0x3e/0x4d
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8116403f>] send_sigio+0x56/0xde
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8116417f>] kill_fasync+0xb8/0x118
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c919e>] evdev_pass_event+0xc3/0xd4
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c9c23>] evdev_event+0x154/0x210
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c5149>] input_pass_event+0xe5/0x141
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c5ab6>] input_handle_event+0x480/0x48f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c5c01>] input_event+0x69/0x88
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813cc4d5>] psmouse_process_byte+0x258/0x262
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813cc9df>] psmouse_handle_byte+0x15/0x138
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813ccdcb>] psmouse_interrupt+0x2b2/0x2d2
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c069a>] serio_interrupt+0x45/0x7f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c1498>] i8042_interrupt+0x299/0x2ab
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810cb162>] handle_irq_event_percpu+0xa5/0x266
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810cb367>] handle_irq_event+0x44/0x65
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810cdbc8>] handle_edge_irq+0xaa/0xd2
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81011d08>] handle_irq+0x15f/0x170
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8153532d>] do_IRQ+0x4d/0xa4
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152d5af>] ret_from_intr+0x0/0x1a
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81017829>] default_idle+0x51/0x8c
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810181e6>] cpu_idle+0xaf/0x103
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81506441>] rest_init+0x135/0x13c
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81b0cbb3>] start_kernel+0x3d9/0x3e6
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81b0c2d3>] x86_64_start_reservations+0xae/0xb2
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81b0c3d9>] x86_64_start_kernel+0x102/0x111
Jul 26 12:52:58 localhost kernel: [  753.299016]    HARDIRQ-ON-R at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109d1c9>] __lock_acquire+0x2f8/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152ce8b>] _raw_read_lock+0x3e/0x4d
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81051111>] do_wait+0xff/0x259
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81052577>] sys_wait4+0x9e/0xc1
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81533569>] system_call_fastpath+0x16/0x1b
Jul 26 12:52:58 localhost kernel: [  753.299016]    IN-SOFTIRQ-R at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109d1a4>] __lock_acquire+0x2d3/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152ce8b>] _raw_read_lock+0x3e/0x4d
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8116403f>] send_sigio+0x56/0xde
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8116417f>] kill_fasync+0xb8/0x118
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c919e>] evdev_pass_event+0xc3/0xd4
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c9c23>] evdev_event+0x154/0x210
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c5149>] input_pass_event+0xe5/0x141
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c5ab6>] input_handle_event+0x480/0x48f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c5c01>] input_event+0x69/0x88
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813cc4d5>] psmouse_process_byte+0x258/0x262
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813cc9df>] psmouse_handle_byte+0x15/0x138
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813ccdcb>] psmouse_interrupt+0x2b2/0x2d2
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c069a>] serio_interrupt+0x45/0x7f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff813c1498>] i8042_interrupt+0x299/0x2ab
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810cb162>] handle_irq_event_percpu+0xa5/0x266
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810cb367>] handle_irq_event+0x44/0x65
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810cdbc8>] handle_edge_irq+0xaa/0xd2
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81011d08>] handle_irq+0x15f/0x170
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8153532d>] do_IRQ+0x4d/0xa4
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152d5af>] ret_from_intr+0x0/0x1a
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810542cb>] __do_softirq+0x80/0x265
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81534aac>] call_softirq+0x1c/0x30
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81011d64>] do_softirq+0x4b/0x9f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81054725>] irq_exit+0x5d/0xcc
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff815353ff>] smp_apic_timer_interrupt+0x7b/0x89
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff815340af>] apic_timer_interrupt+0x6f/0x80
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81017829>] default_idle+0x51/0x8c
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff810181e6>] cpu_idle+0xaf/0x103
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81506441>] rest_init+0x135/0x13c
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81b0cbb3>] start_kernel+0x3d9/0x3e6
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81b0c2d3>] x86_64_start_reservations+0xae/0xb2
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81b0c3d9>] x86_64_start_kernel+0x102/0x111
Jul 26 12:52:58 localhost kernel: [  753.299016]    SOFTIRQ-ON-R at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109d218>] __lock_acquire+0x347/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152ce8b>] _raw_read_lock+0x3e/0x4d
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81051111>] do_wait+0xff/0x259
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81052577>] sys_wait4+0x9e/0xc1
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff81533569>] system_call_fastpath+0x16/0x1b
Jul 26 12:52:58 localhost kernel: [  753.299016]    INITIAL USE at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8109d269>] __lock_acquire+0x398/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8152cc51>] _raw_write_lock_irq+0x45/0x54
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8104b3ca>] copy_process+0xea0/0x1452
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8104bac7>] do_fork+0x110/0x2fe
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8101757d>] kernel_thread+0x75/0x77
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff81506332>] rest_init+0x26/0x13c
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff81b0cbb3>] start_kernel+0x3d9/0x3e6
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff81b0c2d3>] x86_64_start_reservations+0xae/0xb2
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff81b0c3d9>] x86_64_start_kernel+0x102/0x111
Jul 26 12:52:58 localhost kernel: [  753.299016]  }
Jul 26 12:52:58 localhost kernel: [  753.299016]  ... key      at: [<ffffffff81a04058>] tasklist_lock+0x18/0x40
Jul 26 12:52:58 localhost kernel: [  753.299016]  ... acquired at:
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8109cbda>] check_irq_usage+0x76/0x88
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8109d907>] __lock_acquire+0xa36/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff81218a11>] keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff81218cf2>] sys_keyctl+0xbf/0xd9
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff81533569>] system_call_fastpath+0x16/0x1b
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016] the dependencies between the lock to be acquired and HARDIRQ-READ-irq-unsafe lock:
Jul 26 12:52:58 localhost kernel: [  753.299016] -> (&(&p->alloc_lock)->rlock){+.+...} ops: 230916 {
Jul 26 12:52:58 localhost kernel: [  753.299016]    HARDIRQ-ON-W at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109d1f4>] __lock_acquire+0x323/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8115b87a>] set_task_comm+0x25/0xe5
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8106eb2c>] kthreadd+0x35/0x151
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff815349b4>] kernel_thread_helper+0x4/0x10
Jul 26 12:52:58 localhost kernel: [  753.299016]    SOFTIRQ-ON-W at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109d218>] __lock_acquire+0x347/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8115b87a>] set_task_comm+0x25/0xe5
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff8106eb2c>] kthreadd+0x35/0x151
Jul 26 12:52:58 localhost kernel: [  753.299016]                     [<ffffffff815349b4>] kernel_thread_helper+0x4/0x10
Jul 26 12:52:58 localhost kernel: [  753.299016]    INITIAL USE at:
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8109d269>] __lock_acquire+0x398/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8115b87a>] set_task_comm+0x25/0xe5
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff8106eb2c>] kthreadd+0x35/0x151
Jul 26 12:52:58 localhost kernel: [  753.299016]                    [<ffffffff815349b4>] kernel_thread_helper+0x4/0x10
Jul 26 12:52:58 localhost kernel: [  753.299016]  }
Jul 26 12:52:58 localhost kernel: [  753.299016]  ... key      at: [<ffffffff81c438a8>] __key.45376+0x0/0x8
Jul 26 12:52:58 localhost kernel: [  753.299016]  ... acquired at:
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8109cbda>] check_irq_usage+0x76/0x88
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8109d907>] __lock_acquire+0xa36/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff81218a11>] keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff81218cf2>] sys_keyctl+0xbf/0xd9
Jul 26 12:52:58 localhost kernel: [  753.299016]    [<ffffffff81533569>] system_call_fastpath+0x16/0x1b
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016] 
Jul 26 12:52:58 localhost kernel: [  753.299016] stack backtrace:
Jul 26 12:52:58 localhost kernel: [  753.299016] Pid: 6740, comm: trinity-child2 Tainted: G        W    3.5.0+ #16
Jul 26 12:52:58 localhost kernel: [  753.299016] Call Trace:
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8109cb4f>] check_usage+0x38d/0x3a2
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8109e0bc>] ? lock_acquire+0x116/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8109cbda>] check_irq_usage+0x76/0x88
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8109d907>] __lock_acquire+0xa36/0xcf0
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8121f78e>] ? kzalloc+0xf/0x11
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81218a11>] ? keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8109e0a0>] lock_acquire+0xfa/0x14f
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81218a11>] ? keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8152ca10>] _raw_spin_lock+0x3b/0x4a
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81218a11>] ? keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff810d3f77>] ? rcu_is_cpu_idle+0x53/0x62
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81218a11>] keyctl_session_to_parent+0x107/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81218952>] ? keyctl_session_to_parent+0x48/0x329
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff8109e4f2>] ? trace_hardirqs_on_caller+0x121/0x158
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81218cf2>] sys_keyctl+0xbf/0xd9
Jul 26 12:52:58 localhost kernel: [  753.299016]  [<ffffffff81533569>] system_call_fastpath+0x16/0x1b



Jul 26 12:54:14 localhost kernel: [  830.136969] BUG: unable to handle kernel paging request at ffffffffffffffff
Jul 26 12:54:14 localhost kernel: [  830.136975] IP: [<ffffffff81223f57>] selinux_inode_setxattr+0xdc/0x1a8
Jul 26 12:54:14 localhost kernel: [  830.136982] PGD 1a0d067 PUD 1a0e067 PMD 0 
Jul 26 12:54:14 localhost kernel: [  830.136986] Oops: 0000 [#1] PREEMPT SMP 
Jul 26 12:54:14 localhost kernel: [  830.136989] Modules linked in: scsi_transport_iscsi ipt_ULOG nfnetlink binfmt_misc bnep can_raw hidp af_802154 phonet bluetooth rfkill can pppoe pppox ppp_generic slhc irda crc_ccitt rds af_key rose ax25 appletalk ipx p8022 psnap llc p8023 atm tcp_lp nls_utf8 fuse lockd ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ip6table_filter ip6_tables ppdev parport_pc microcode parport 8139too i2c_piix4 8139cp i2c_core pcspkr mii uinput sunrpc floppy [last unloaded: scsi_wait_scan]
Jul 26 12:54:14 localhost kernel: [  830.137031] CPU 1 
Jul 26 12:54:14 localhost kernel: [  830.137033] Pid: 7662, comm: trinity-child1 Tainted: G        W    3.5.0+ #16 Bochs Bochs
Jul 26 12:54:14 localhost kernel: [  830.137035] RIP: 0010:[<ffffffff81223f57>]  [<ffffffff81223f57>] selinux_inode_setxattr+0xdc/0x1a8
Jul 26 12:54:14 localhost kernel: [  830.137039] RSP: 0018:ffff8801e6ac7ce8  EFLAGS: 00010246
Jul 26 12:54:14 localhost kernel: [  830.137040] RAX: 00000000ffffff00 RBX: ffff8801ed866d10 RCX: 0000000000000021
Jul 26 12:54:14 localhost kernel: [  830.137042] RDX: 0000000000000000 RSI: ffffffff81a286b0 RDI: ffff8801f314b9c0
Jul 26 12:54:14 localhost kernel: [  830.137043] RBP: ffff8801e6ac7d58 R08: ffff8801e6ac7c50 R09: 0000000000000000
Jul 26 12:54:14 localhost kernel: [  830.137044] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
Jul 26 12:54:14 localhost kernel: [  830.137046] R13: 0000000000000000 R14: ffff8802039ca0f8 R15: ffff880213f5ea00
Jul 26 12:54:14 localhost kernel: [  830.137048] FS:  00007f7922686700(0000) GS:ffff88021fc20000(0000) knlGS:0000000000000000
Jul 26 12:54:14 localhost kernel: [  830.137049] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Jul 26 12:54:14 localhost kernel: [  830.137051] CR2: ffffffffffffffff CR3: 00000001e6b69000 CR4: 00000000000006e0
Jul 26 12:54:14 localhost kernel: [  830.137056] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Jul 26 12:54:14 localhost kernel: [  830.137059] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Jul 26 12:54:14 localhost kernel: [  830.137065] Process trinity-child1 (pid: 7662, threadinfo ffff8801e6ac6000, task ffff880214110000)
Jul 26 12:54:14 localhost kernel: [  830.137066] Stack:
Jul 26 12:54:14 localhost kernel: [  830.137068]  ffff8802ffffffea 0000074a811727b9 ffff880203ba3f40 ffff880203ba3f0a
Jul 26 12:54:14 localhost kernel: [  830.137072]  ffff8802039ca0f8 2222222222222222 2222222222222222 0000000022222222
Jul 26 12:54:14 localhost kernel: [  830.137076]  ffff8801e6ac7d68 ffff8802039ca0f8 ffff8801e6ac7de0 0000000000000002
Jul 26 12:54:14 localhost kernel: [  830.137080] Call Trace:
Jul 26 12:54:14 localhost kernel: [  830.137089]  [<ffffffff8121cf1e>] security_inode_setxattr+0x23/0x25
Jul 26 12:54:14 localhost kernel: [  830.137094]  [<ffffffff811727cd>] vfs_setxattr+0x6b/0xa1
Jul 26 12:54:14 localhost kernel: [  830.137097]  [<ffffffff81172906>] setxattr+0x103/0x146
Jul 26 12:54:14 localhost kernel: [  830.137102]  [<ffffffff8152d093>] ? _raw_spin_unlock_irqrestore+0x6c/0x7a
Jul 26 12:54:14 localhost kernel: [  830.137109]  [<ffffffff81072743>] ? __hrtimer_start_range_ns+0x27c/0x28e
Jul 26 12:54:14 localhost kernel: [  830.137114]  [<ffffffff8109df70>] ? lock_release+0x19c/0x1d2
Jul 26 12:54:14 localhost kernel: [  830.137117]  [<ffffffff8109e536>] ? trace_hardirqs_on+0xd/0xf
Jul 26 12:54:14 localhost kernel: [  830.137120]  [<ffffffff8152d0f2>] ? _raw_spin_unlock_irq+0x51/0x5e
Jul 26 12:54:14 localhost kernel: [  830.137125]  [<ffffffff81052d0f>] ? do_setitimer+0x1d8/0x208
Jul 26 12:54:14 localhost kernel: [  830.137129]  [<ffffffff811567d6>] ? fcheck_files+0x87/0xe7
Jul 26 12:54:14 localhost kernel: [  830.137131]  [<ffffffff81172c23>] sys_fsetxattr+0x68/0x9b
Jul 26 12:54:14 localhost kernel: [  830.137135]  [<ffffffff81533569>] system_call_fastpath+0x16/0x1b
Jul 26 12:54:14 localhost kernel: [  830.137137] Code: e2 00 00 00 48 8d 55 cc 44 89 e6 4c 89 ef e8 7c c2 00 00 83 f8 ea 89 c1 75 7a bf 21 00 00 00 89 45 90 e8 ef 33 e3 ff 84 c0 75 58 <43> 80 7c 25 ff 01 ba 79 05 00 00 be 20 00 00 00 49 83 dc 00 65 
Jul 26 12:54:14 localhost kernel: [  830.137168] RIP  [<ffffffff81223f57>] selinux_inode_setxattr+0xdc/0x1a8
Jul 26 12:54:14 localhost kernel: [  830.137171]  RSP <ffff8801e6ac7ce8>
Jul 26 12:54:14 localhost kernel: [  830.137172] CR2: ffffffffffffffff
Jul 26 12:54:14 localhost kernel: [  830.137177] ---[ end trace d35e4e89c7922e92 ]---

> Nothing else is attached to the guest.
> The host is running a 3.5 kernel, and running the guest within KVM tools.
> 
> If you need more specific info about anything let me know.
> 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-24 17:10 rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6 Sasha Levin
                   ` (2 preceding siblings ...)
  2012-07-25  9:06 ` Michael Wang
@ 2012-07-26 11:42 ` Avi Kivity
  2012-07-27 11:27   ` Sasha Levin
  3 siblings, 1 reply; 28+ messages in thread
From: Avi Kivity @ 2012-07-26 11:42 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/24/2012 08:10 PM, Sasha Levin wrote:
> [  215.026612] NMI backtrace for cpu 1
> [  215.026612] CPU 1
> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
> [  215.026612] Stack:
> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
> [  215.026612] Call Trace:
> [  215.026612]  <IRQ>
> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> [  215.026612]  <EOI>
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48

This is immediately after the EOI.  It looks like the timer interrupt is
stuck somehow.  Can you run kvm_stat and confirm?


-- 
error compiling committee.c: too many arguments to function



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-26 11:42 ` Avi Kivity
@ 2012-07-27 11:27   ` Sasha Levin
  2012-07-29 12:48     ` Avi Kivity
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-07-27 11:27 UTC (permalink / raw)
  To: Avi Kivity; +Cc: paulmck, linux-kernel

On 07/26/2012 01:42 PM, Avi Kivity wrote:
> On 07/24/2012 08:10 PM, Sasha Levin wrote:
>> [  215.026612] NMI backtrace for cpu 1
>> [  215.026612] CPU 1
>> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
>> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
>> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
>> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
>> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
>> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
>> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
>> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
>> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
>> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
>> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
>> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
>> [  215.026612] Stack:
>> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
>> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
>> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
>> [  215.026612] Call Trace:
>> [  215.026612]  <IRQ>
>> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
>> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
>> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
>> [  215.026612]  <EOI>
>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
>> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
>> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
>> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
>> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
>> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
>> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
>> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
>> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
>> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> 
> This is immediately after the EOI.  It looks like the timer interrupt is
> stuck somehow.  Can you run kvm_stat and confirm?

Yup, looks like it. kvm_stats is something like this:

 kvm_entry                                142104033  939393
 kvm_exit                                 142104004  939390
 kvm_apic                                  84781115  582714
 kvm_msr                                   84682085  582714
 kvm_apic_accept_irq                       65219959  522263
 kvm_inj_virq                              43173709  291385

With everything else at 0 when it happens.



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-27 11:27   ` Sasha Levin
@ 2012-07-29 12:48     ` Avi Kivity
  2012-07-29 21:05       ` Sasha Levin
  0 siblings, 1 reply; 28+ messages in thread
From: Avi Kivity @ 2012-07-29 12:48 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/27/2012 02:27 PM, Sasha Levin wrote:
> On 07/26/2012 01:42 PM, Avi Kivity wrote:
>> On 07/24/2012 08:10 PM, Sasha Levin wrote:
>>> [  215.026612] NMI backtrace for cpu 1
>>> [  215.026612] CPU 1
>>> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
>>> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
>>> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
>>> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
>>> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
>>> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
>>> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
>>> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
>>> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
>>> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>>> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
>>> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>>> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
>>> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
>>> [  215.026612] Stack:
>>> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
>>> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
>>> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
>>> [  215.026612] Call Trace:
>>> [  215.026612]  <IRQ>
>>> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
>>> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
>>> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
>>> [  215.026612]  <EOI>
>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
>>> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
>>> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
>>> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
>>> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
>>> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
>>> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
>>> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
>>> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
>>> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
>> 
>> This is immediately after the EOI.  It looks like the timer interrupt is
>> stuck somehow.  Can you run kvm_stat and confirm?
> 
> Yup, looks like it. kvm_stats is something like this:
> 
>  kvm_entry                                142104033  939393
>  kvm_exit                                 142104004  939390
>  kvm_apic                                  84781115  582714
>  kvm_msr                                   84682085  582714
>  kvm_apic_accept_irq                       65219959  522263
>  kvm_inj_virq                              43173709  291385
> 
> With everything else at 0 when it happens.

Please run a trace and verify that the injected vector is indeed the
timer interrupt.  Then work backwards to see the last place it is
programmed (APIC_TMICT/APIC_TDCR).


-- 
error compiling committee.c: too many arguments to function



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-29 12:48     ` Avi Kivity
@ 2012-07-29 21:05       ` Sasha Levin
  2012-07-30  5:36         ` Avi Kivity
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-07-29 21:05 UTC (permalink / raw)
  To: Avi Kivity; +Cc: paulmck, linux-kernel

On 07/29/2012 02:48 PM, Avi Kivity wrote:
> On 07/27/2012 02:27 PM, Sasha Levin wrote:
>> On 07/26/2012 01:42 PM, Avi Kivity wrote:
>>> On 07/24/2012 08:10 PM, Sasha Levin wrote:
>>>> [  215.026612] NMI backtrace for cpu 1
>>>> [  215.026612] CPU 1
>>>> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
>>>> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
>>>> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
>>>> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
>>>> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
>>>> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
>>>> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
>>>> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
>>>> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
>>>> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>>>> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
>>>> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>>>> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
>>>> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
>>>> [  215.026612] Stack:
>>>> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
>>>> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
>>>> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
>>>> [  215.026612] Call Trace:
>>>> [  215.026612]  <IRQ>
>>>> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
>>>> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
>>>> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
>>>> [  215.026612]  <EOI>
>>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>>> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
>>>> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
>>>> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
>>>> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
>>>> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
>>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>>> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
>>>> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
>>>> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
>>>> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
>>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>>> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
>>>> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
>>>> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
>>>
>>> This is immediately after the EOI.  It looks like the timer interrupt is
>>> stuck somehow.  Can you run kvm_stat and confirm?
>>
>> Yup, looks like it. kvm_stats is something like this:
>>
>>  kvm_entry                                142104033  939393
>>  kvm_exit                                 142104004  939390
>>  kvm_apic                                  84781115  582714
>>  kvm_msr                                   84682085  582714
>>  kvm_apic_accept_irq                       65219959  522263
>>  kvm_inj_virq                              43173709  291385
>>
>> With everything else at 0 when it happens.
> 
> Please run a trace and verify that the injected vector is indeed the
> timer interrupt.

Looks like it is.

> Then work backwards to see the last place it is
> programmed (APIC_TMICT/APIC_TDCR).

This looks like what you're looking for:

kvm_apic: apic_write APIC_TMICT = 0x3e


Basically it's spinning on the following 4 lines of trace when it happens:

	16063.549189: kvm_apic: apic_write APIC_TMICT = 0x3e
	16063.549190: kvm_msr: msr_write 838 = 0x3e
	16063.549190: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115de02 info 0 0
	16063.549190: kvm_entry: vcpu 2


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-29 21:05       ` Sasha Levin
@ 2012-07-30  5:36         ` Avi Kivity
  2012-07-30  9:13           ` Sasha Levin
  0 siblings, 1 reply; 28+ messages in thread
From: Avi Kivity @ 2012-07-30  5:36 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/30/2012 12:05 AM, Sasha Levin wrote:
> On 07/29/2012 02:48 PM, Avi Kivity wrote:
> > On 07/27/2012 02:27 PM, Sasha Levin wrote:
> >> On 07/26/2012 01:42 PM, Avi Kivity wrote:
> >>> On 07/24/2012 08:10 PM, Sasha Levin wrote:
> >>>> [  215.026612] NMI backtrace for cpu 1
> >>>> [  215.026612] CPU 1
> >>>> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
> >>>> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
> >>>> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
> >>>> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
> >>>> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
> >>>> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
> >>>> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
> >>>> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
> >>>> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
> >>>> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> >>>> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
> >>>> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> >>>> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> >>>> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
> >>>> [  215.026612] Stack:
> >>>> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
> >>>> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
> >>>> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
> >>>> [  215.026612] Call Trace:
> >>>> [  215.026612]  <IRQ>
> >>>> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
> >>>> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
> >>>> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
> >>>> [  215.026612]  <EOI>
> >>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> >>>> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
> >>>> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
> >>>> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
> >>>> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
> >>>> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
> >>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> >>>> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
> >>>> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
> >>>> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
> >>>> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
> >>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
> >>>> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
> >>>> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
> >>>> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
> >>>
> >>> This is immediately after the EOI.  It looks like the timer interrupt is
> >>> stuck somehow.  Can you run kvm_stat and confirm?
> >>
> >> Yup, looks like it. kvm_stats is something like this:
> >>
> >>  kvm_entry                                142104033  939393
> >>  kvm_exit                                 142104004  939390
> >>  kvm_apic                                  84781115  582714
> >>  kvm_msr                                   84682085  582714
> >>  kvm_apic_accept_irq                       65219959  522263
> >>  kvm_inj_virq                              43173709  291385
> >>
> >> With everything else at 0 when it happens.
> > 
> > Please run a trace and verify that the injected vector is indeed the
> > timer interrupt.
>
> Looks like it is.
>
> > Then work backwards to see the last place it is
> > programmed (APIC_TMICT/APIC_TDCR).
>
> This looks like what you're looking for:
>
> kvm_apic: apic_write APIC_TMICT = 0x3e
>
>
> Basically it's spinning on the following 4 lines of trace when it happens:
>
> 	16063.549189: kvm_apic: apic_write APIC_TMICT = 0x3e
> 	16063.549190: kvm_msr: msr_write 838 = 0x3e
> 	16063.549190: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115de02 info 0 0
> 	16063.549190: kvm_entry: vcpu 2
>

What, no kvm_inj_virq?

Are you running with pveoi?  Try disabling it.


-- 
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-30  5:36         ` Avi Kivity
@ 2012-07-30  9:13           ` Sasha Levin
  2012-07-30  9:33             ` Avi Kivity
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-07-30  9:13 UTC (permalink / raw)
  To: Avi Kivity; +Cc: paulmck, linux-kernel

On 07/30/2012 07:36 AM, Avi Kivity wrote:
> On 07/30/2012 12:05 AM, Sasha Levin wrote:
>> On 07/29/2012 02:48 PM, Avi Kivity wrote:
>>> On 07/27/2012 02:27 PM, Sasha Levin wrote:
>>>> On 07/26/2012 01:42 PM, Avi Kivity wrote:
>>>>> On 07/24/2012 08:10 PM, Sasha Levin wrote:
>>>>>> [  215.026612] NMI backtrace for cpu 1
>>>>>> [  215.026612] CPU 1
>>>>>> [  215.026612] Pid: 2395, comm: pageattr-test Tainted: G        W    3.5.0-sasha-01644-g824681b #267
>>>>>> [  215.026612] RIP: 0010:[<ffffffff8109bd5a>]  [<ffffffff8109bd5a>] native_write_msr_safe+0xa/0x10
>>>>>> [  215.026612] RSP: 0018:ffff88001b803f70  EFLAGS: 00000046
>>>>>> [  215.026612] RAX: 0000000000000000 RBX: 000000000000ef80 RCX: 000000000000080b
>>>>>> [  215.026612] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 000000000000080b
>>>>>> [  215.026612] RBP: ffff88001b803f70 R08: 00003ffffffff000 R09: ffff880000000000
>>>>>> [  215.026612] R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
>>>>>> [  215.026612] R13: ffff880007a98000 R14: ffff88001fc3a4b8 R15: ffff880000000000
>>>>>> [  215.026612] FS:  0000000000000000(0000) GS:ffff88001b800000(0000) knlGS:0000000000000000
>>>>>> [  215.026612] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>>>>>> [  215.026612] CR2: 000000000000000c CR3: 0000000019dcf000 CR4: 00000000000406e0
>>>>>> [  215.026612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>>>>>> [  215.026612] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
>>>>>> [  215.026612] Process pageattr-test (pid: 2395, threadinfo ffff88000ced0000, task ffff88000d773000)
>>>>>> [  215.026612] Stack:
>>>>>> [  215.026612]  ffff88001b803f88 ffffffff81095d07 000000000000ef80 ffff88001b803fa8
>>>>>> [  215.026612]  ffffffff810901c4 ffff88000ced1db0 0000000000007a98 ffff88000ced1d00
>>>>>> [  215.026612]  ffffffff8369c4af ffff88000ced1c78 <EOI>  ffff88000ced1d00 ffffffff8369aeb4
>>>>>> [  215.026612] Call Trace:
>>>>>> [  215.026612]  <IRQ>
>>>>>> [  215.026612]  [<ffffffff81095d07>] native_apic_msr_eoi_write+0x27/0x30
>>>>>> [  215.026612]  [<ffffffff810901c4>] smp_apic_timer_interrupt+0x34/0xa0
>>>>>> [  215.026612]  [<ffffffff8369c4af>] apic_timer_interrupt+0x6f/0x80
>>>>>> [  215.026612]  <EOI>
>>>>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>>>>> [  215.026612]  [<ffffffff810a2cb2>] ? lookup_address+0x112/0x170
>>>>>> [  215.026612]  [<ffffffff810a32ae>] print_split+0x7e/0x200
>>>>>> [  215.026612]  [<ffffffff810a4300>] pageattr_test+0x80/0x4a0
>>>>>> [  215.026612]  [<ffffffff8114a2f8>] ? trace_hardirqs_on_caller+0x118/0x140
>>>>>> [  215.026612]  [<ffffffff83696cbe>] ? schedule_timeout+0x2ce/0x370
>>>>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>>>>> [  215.026612]  [<ffffffff810a4720>] ? pageattr_test+0x4a0/0x4a0
>>>>>> [  215.026612]  [<ffffffff810a473f>] do_pageattr_test+0x1f/0x50
>>>>>> [  215.026612]  [<ffffffff8110607d>] kthread+0xad/0xc0
>>>>>> [  215.026612]  [<ffffffff8369cdb4>] kernel_thread_helper+0x4/0x10
>>>>>> [  215.026612]  [<ffffffff8369aeb4>] ? retint_restore_args+0x13/0x13
>>>>>> [  215.026612]  [<ffffffff81105fd0>] ? kthread_flush_work_fn+0x10/0x10
>>>>>> [  215.026612]  [<ffffffff8369cdb0>] ? gs_change+0x13/0x13
>>>>>> [  215.026612] Code: 00 55 89 f9 48 89 e5 0f 32 45 31 c0 89 c7 48 89 d0 44 89 06 48 c1 e0 20 89 f9 5d 48 09 c8 c3 66 90 55 89 f0 89 f9 48 89 e5 0f 30 <31> c0 5d c3 66 90 55 89 f9 48 89 e5 0f 33 89 c7 48 89 d0 5d 48
>>>>>
>>>>> This is immediately after the EOI.  It looks like the timer interrupt is
>>>>> stuck somehow.  Can you run kvm_stat and confirm?
>>>>
>>>> Yup, looks like it. kvm_stats is something like this:
>>>>
>>>>  kvm_entry                                142104033  939393
>>>>  kvm_exit                                 142104004  939390
>>>>  kvm_apic                                  84781115  582714
>>>>  kvm_msr                                   84682085  582714
>>>>  kvm_apic_accept_irq                       65219959  522263
>>>>  kvm_inj_virq                              43173709  291385
>>>>
>>>> With everything else at 0 when it happens.
>>>
>>> Please run a trace and verify that the injected vector is indeed the
>>> timer interrupt.
>>
>> Looks like it is.
>>
>>> Then work backwards to see the last place it is
>>> programmed (APIC_TMICT/APIC_TDCR).
>>
>> This looks like what you're looking for:
>>
>> kvm_apic: apic_write APIC_TMICT = 0x3e
>>
>>
>> Basically it's spinning on the following 4 lines of trace when it happens:
>>
>> 	16063.549189: kvm_apic: apic_write APIC_TMICT = 0x3e
>> 	16063.549190: kvm_msr: msr_write 838 = 0x3e
>> 	16063.549190: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115de02 info 0 0
>> 	16063.549190: kvm_entry: vcpu 2
>>
> 
> What, no kvm_inj_virq?
> 
> Are you running with pveoi?  Try disabling it.

I must have looked at a block in the logfile which doesn't represent everything thats going on, sorry.

Here's a more complete picture:

	vm-16567 [000] d..2 16063.549298: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff83625c80 info 0 0
	vm-16567 [000] ...1 16063.549299: kvm_inj_virq: irq 239
	vm-16567 [000] d..2 16063.549300: kvm_entry: vcpu 0
	vm-16567 [000] d..2 16063.549301: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
	vm-16567 [000] ...1 16063.549302: kvm_apic: apic_write APIC_EOI = 0x0
	vm-16567 [000] ...1 16063.549302: kvm_msr: msr_write 80b = 0x0
	vm-16567 [000] d..2 16063.549303: kvm_entry: vcpu 0
	vm-16567 [000] d..2 16063.549308: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
	vm-16567 [000] ...1 16063.549309: kvm_apic: apic_write APIC_TMICT = 0x3e
	vm-16567 [000] ...1 16063.549310: kvm_msr: msr_write 838 = 0x3e
	vm-16567 [000] d..2 16063.549311: kvm_entry: vcpu 0
	vm-16567 [000] d..2 16063.549312: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff83625c80 info 0 0
	vm-16567 [000] ...1 16063.549314: kvm_apic_accept_irq: apicid 0 vec 239 (Fixed|edge)
	vm-16567 [000] ...1 16063.549315: kvm_inj_virq: irq 239
	vm-16567 [000] d..2 16063.549315: kvm_entry: vcpu 0
	vm-16567 [000] d..2 16063.549316: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
	vm-16567 [000] ...1 16063.549318: kvm_apic: apic_write APIC_EOI = 0x0
	vm-16567 [000] ...1 16063.549318: kvm_msr: msr_write 80b = 0x0



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-30  9:13           ` Sasha Levin
@ 2012-07-30  9:33             ` Avi Kivity
  2012-07-30 12:43               ` Sasha Levin
  0 siblings, 1 reply; 28+ messages in thread
From: Avi Kivity @ 2012-07-30  9:33 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/30/2012 12:13 PM, Sasha Levin wrote:
>>>>>
>>>>> Yup, looks like it. kvm_stats is something like this:
>>>>>
>>>>>  kvm_entry                                142104033  939393
>>>>>  kvm_exit                                 142104004  939390
>>>>>  kvm_apic                                  84781115  582714
>>>>>  kvm_msr                                   84682085  582714
>>>>>  kvm_apic_accept_irq                       65219959  522263
>>>>>  kvm_inj_virq                              43173709  291385
>>>>>
>>>>> With everything else at 0 when it happens.
>>>>
>>>> Please run a trace and verify that the injected vector is indeed the
>>>> timer interrupt.
>>>
>>> Looks like it is.
>>>
>>>> Then work backwards to see the last place it is
>>>> programmed (APIC_TMICT/APIC_TDCR).
>>>
>>> This looks like what you're looking for:
>>>
>>> kvm_apic: apic_write APIC_TMICT = 0x3e

What about APIC_TMICT?  Might be configured just once on boot.

>>>
>>>
>>> Basically it's spinning on the following 4 lines of trace when it happens:
>>>
>>> 	16063.549189: kvm_apic: apic_write APIC_TMICT = 0x3e
>>> 	16063.549190: kvm_msr: msr_write 838 = 0x3e
>>> 	16063.549190: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115de02 info 0 0
>>> 	16063.549190: kvm_entry: vcpu 2
>>>
>> 
>> What, no kvm_inj_virq?
>> 
>> Are you running with pveoi?  Try disabling it.

What's the answer to this question?

> 
> I must have looked at a block in the logfile which doesn't represent everything thats going on, sorry.
> 
> Here's a more complete picture:
> 
> 	vm-16567 [000] d..2 16063.549298: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff83625c80 info 0 0
> 	vm-16567 [000] ...1 16063.549299: kvm_inj_virq: irq 239
> 	vm-16567 [000] d..2 16063.549300: kvm_entry: vcpu 0
> 	vm-16567 [000] d..2 16063.549301: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
> 	vm-16567 [000] ...1 16063.549302: kvm_apic: apic_write APIC_EOI = 0x0
> 	vm-16567 [000] ...1 16063.549302: kvm_msr: msr_write 80b = 0x0
> 	vm-16567 [000] d..2 16063.549303: kvm_entry: vcpu 0
> 	vm-16567 [000] d..2 16063.549308: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
> 	vm-16567 [000] ...1 16063.549309: kvm_apic: apic_write APIC_TMICT = 0x3e
> 	vm-16567 [000] ...1 16063.549310: kvm_msr: msr_write 838 = 0x3e
> 	vm-16567 [000] d..2 16063.549311: kvm_entry: vcpu 0
> 	vm-16567 [000] d..2 16063.549312: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff83625c80 info 0 0

This must refer to a lower priority interrupt, since 239 hasn't been
injected yet.

> 	vm-16567 [000] ...1 16063.549314: kvm_apic_accept_irq: apicid 0 vec 239 (Fixed|edge)

And now conveniently the hrtimer fires and injects another interrupt.

> 	vm-16567 [000] ...1 16063.549315: kvm_inj_virq: irq 239
> 	vm-16567 [000] d..2 16063.549315: kvm_entry: vcpu 0
> 	vm-16567 [000] d..2 16063.549316: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
> 	vm-16567 [000] ...1 16063.549318: kvm_apic: apic_write APIC_EOI = 0x0
> 	vm-16567 [000] ...1 16063.549318: kvm_msr: msr_write 80b = 0x0

Please add hrtimer_start and hrtimer_expire_entry to your traced events.

-- 
error compiling committee.c: too many arguments to function



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-30  9:33             ` Avi Kivity
@ 2012-07-30 12:43               ` Sasha Levin
  2012-07-30 13:17                 ` Avi Kivity
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-07-30 12:43 UTC (permalink / raw)
  To: Avi Kivity; +Cc: paulmck, linux-kernel

On 07/30/2012 11:33 AM, Avi Kivity wrote:
> On 07/30/2012 12:13 PM, Sasha Levin wrote:
>>>>>>
>>>>>> Yup, looks like it. kvm_stats is something like this:
>>>>>>
>>>>>>  kvm_entry                                142104033  939393
>>>>>>  kvm_exit                                 142104004  939390
>>>>>>  kvm_apic                                  84781115  582714
>>>>>>  kvm_msr                                   84682085  582714
>>>>>>  kvm_apic_accept_irq                       65219959  522263
>>>>>>  kvm_inj_virq                              43173709  291385
>>>>>>
>>>>>> With everything else at 0 when it happens.
>>>>>
>>>>> Please run a trace and verify that the injected vector is indeed the
>>>>> timer interrupt.
>>>>
>>>> Looks like it is.
>>>>
>>>>> Then work backwards to see the last place it is
>>>>> programmed (APIC_TMICT/APIC_TDCR).
>>>>
>>>> This looks like what you're looking for:
>>>>
>>>> kvm_apic: apic_write APIC_TMICT = 0x3e
> 
> What about APIC_TMICT?  Might be configured just once on boot.

Did you mean APIC_TDCR?

I'm seeing both in the trace logs, but it's APIC_TMICT thats shown when the hang occurs.

              vm-19727 [002] ...1 66669.010699: kvm_apic: apic_read APIC_TDCR = 0x0
              vm-19727 [002] ...1 66669.010699: kvm_msr: msr_read 83e = 0x0
              vm-19727 [002] d..2 66669.010699: kvm_entry: vcpu 0
              vm-19727 [002] d..2 66669.010700: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
              vm-19727 [002] ...1 66669.010701: kvm_apic: apic_write APIC_TDCR = 0x3
              vm-19727 [002] ...1 66669.010701: kvm_msr: msr_write 83e = 0x3
              vm-19727 [002] d..2 66669.010701: kvm_entry: vcpu 0

>>>>
>>>>
>>>> Basically it's spinning on the following 4 lines of trace when it happens:
>>>>
>>>> 	16063.549189: kvm_apic: apic_write APIC_TMICT = 0x3e
>>>> 	16063.549190: kvm_msr: msr_write 838 = 0x3e
>>>> 	16063.549190: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115de02 info 0 0
>>>> 	16063.549190: kvm_entry: vcpu 2
>>>>
>>>
>>> What, no kvm_inj_virq?
>>>
>>> Are you running with pveoi?  Try disabling it.
> 
> What's the answer to this question?

The host is running 3.5, so that shouldn't be enabled.

>>
>> I must have looked at a block in the logfile which doesn't represent everything thats going on, sorry.
>>
>> Here's a more complete picture:
>>
>> 	vm-16567 [000] d..2 16063.549298: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff83625c80 info 0 0
>> 	vm-16567 [000] ...1 16063.549299: kvm_inj_virq: irq 239
>> 	vm-16567 [000] d..2 16063.549300: kvm_entry: vcpu 0
>> 	vm-16567 [000] d..2 16063.549301: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
>> 	vm-16567 [000] ...1 16063.549302: kvm_apic: apic_write APIC_EOI = 0x0
>> 	vm-16567 [000] ...1 16063.549302: kvm_msr: msr_write 80b = 0x0
>> 	vm-16567 [000] d..2 16063.549303: kvm_entry: vcpu 0
>> 	vm-16567 [000] d..2 16063.549308: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
>> 	vm-16567 [000] ...1 16063.549309: kvm_apic: apic_write APIC_TMICT = 0x3e
>> 	vm-16567 [000] ...1 16063.549310: kvm_msr: msr_write 838 = 0x3e
>> 	vm-16567 [000] d..2 16063.549311: kvm_entry: vcpu 0
>> 	vm-16567 [000] d..2 16063.549312: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff83625c80 info 0 0
> 
> This must refer to a lower priority interrupt, since 239 hasn't been
> injected yet.
> 
>> 	vm-16567 [000] ...1 16063.549314: kvm_apic_accept_irq: apicid 0 vec 239 (Fixed|edge)
> 
> And now conveniently the hrtimer fires and injects another interrupt.
> 
>> 	vm-16567 [000] ...1 16063.549315: kvm_inj_virq: irq 239
>> 	vm-16567 [000] d..2 16063.549315: kvm_entry: vcpu 0
>> 	vm-16567 [000] d..2 16063.549316: kvm_exit: reason MSR_WRITE rip 0xffffffff8109fef8 info 0 0
>> 	vm-16567 [000] ...1 16063.549318: kvm_apic: apic_write APIC_EOI = 0x0
>> 	vm-16567 [000] ...1 16063.549318: kvm_msr: msr_write 80b = 0x0
> 
> Please add hrtimer_start and hrtimer_expire_entry to your traced events.
> 

A bigger log with those two enabled:

             vm-19730 [003] ...1 66730.739585: kvm_apic: apic_write APIC_TMICT = 0x3e
              vm-19716 [000] d..3 66730.739586: hrtimer_start: hrtimer=ffff880133cc3f78 function=posix_timer_fn expires=66882054763626 softexpires=66882054763626
              vm-19730 [003] d..2 66730.739586: hrtimer_start: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn expires=66882053774813 softexpires=66882053774813
              vm-19730 [003] ...1 66730.739586: kvm_msr: msr_write 838 = 0x3e
              vm-19730 [003] d..2 66730.739587: kvm_entry: vcpu 3
              vm-19730 [003] d..2 66730.739589: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff8115c684 info 0 0
              vm-19729 [001] d..2 66730.739590: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
              vm-19730 [003] d.h2 66730.739590: hrtimer_expire_entry: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn now=66882053778032
              vm-19729 [001] ...1 66730.739591: kvm_apic: apic_write APIC_TMICT = 0x3e
              vm-19730 [003] ...1 66730.739591: kvm_apic_accept_irq: apicid 3 vec 239 (Fixed|edge) (coalesced)
              vm-19729 [001] d..2 66730.739591: hrtimer_start: hrtimer=ffff88020d208490 function=kvm_timer_fn expires=66882053780380 softexpires=66882053780380
              vm-19730 [003] ...1 66730.739592: kvm_inj_virq: irq 239
              vm-19729 [001] ...1 66730.739592: kvm_msr: msr_write 838 = 0x3e
              vm-19730 [003] d..2 66730.739593: kvm_entry: vcpu 3
              vm-19729 [001] d..2 66730.739593: kvm_entry: vcpu 2
              vm-19730 [003] d..2 66730.739594: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
              vm-19729 [001] d..2 66730.739594: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff83601f61 info 0 0
              vm-19730 [003] ...1 66730.739595: kvm_apic: apic_write APIC_EOI = 0x0
              vm-19730 [003] ...1 66730.739595: kvm_msr: msr_write 80b = 0x0
              vm-19729 [001] d.h2 66730.739596: hrtimer_expire_entry: hrtimer=ffff88020d208490 function=kvm_timer_fn now=66882053783462
              vm-19730 [003] ...1 66730.739596: kvm_apic_accept_irq: apicid 3 vec 239 (Fixed|edge)
              vm-19729 [001] ...1 66730.739597: kvm_apic_accept_irq: apicid 2 vec 239 (Fixed|edge) (coalesced)
              vm-19730 [003] d..2 66730.739597: kvm_entry: vcpu 3
              vm-19729 [001] d..2 66730.739597: kvm_entry: vcpu 2
              vm-19729 [001] d..2 66730.739598: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff8115c684 info 0 0
              vm-19729 [001] ...1 66730.739599: kvm_apic_accept_irq: apicid 2 vec 239 (Fixed|edge) (coalesced)
              vm-19729 [001] ...1 66730.739600: kvm_inj_virq: irq 239
              vm-19729 [001] d..2 66730.739600: kvm_entry: vcpu 2
              vm-19729 [001] d..2 66730.739601: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
              vm-19729 [001] ...1 66730.739602: kvm_apic: apic_write APIC_EOI = 0x0
              vm-19729 [001] ...1 66730.739602: kvm_msr: msr_write 80b = 0x0
              vm-19730 [003] d..2 66730.739603: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
              vm-19729 [001] ...1 66730.739603: kvm_apic_accept_irq: apicid 2 vec 239 (Fixed|edge)
              vm-19730 [003] ...1 66730.739604: kvm_apic: apic_write APIC_TMICT = 0x3e
              vm-19729 [001] d..2 66730.739604: kvm_entry: vcpu 2
              vm-19730 [003] d..2 66730.739604: hrtimer_start: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn expires=66882053793430 softexpires=66882053793430
              vm-19730 [003] ...1 66730.739605: kvm_msr: msr_write 838 = 0x3e
              vm-19730 [003] d..2 66730.739606: kvm_entry: vcpu 3
              vm-19730 [003] d..2 66730.739607: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff8115c684 info 0 0
              vm-19729 [001] d..2 66730.739608: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115f2a1 info 0 0
              vm-19730 [003] d.h2 66730.739608: hrtimer_expire_entry: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn now=66882053796355
              vm-19729 [001] ...1 66730.739609: kvm_userspace_exit: reason restart (4)
              vm-19730 [003] ...1 66730.739610: kvm_apic_accept_irq: apicid 3 vec 239 (Fixed|edge) (coalesced)
              vm-19730 [003] ...1 66730.739611: kvm_userspace_exit: reason restart (4)
              vm-19716 [000] ...1 66730.739612: kvm_set_irq: gsi 4 level 1 source 0
              vm-19716 [000] ...2 66730.739614: kvm_pic_set_irq: chip 0 pin 4 (edge)

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-30 12:43               ` Sasha Levin
@ 2012-07-30 13:17                 ` Avi Kivity
  2012-08-05 16:55                   ` Sasha Levin
  0 siblings, 1 reply; 28+ messages in thread
From: Avi Kivity @ 2012-07-30 13:17 UTC (permalink / raw)
  To: Sasha Levin; +Cc: paulmck, linux-kernel

On 07/30/2012 03:43 PM, Sasha Levin wrote:
>>>>>
>>>>>> Then work backwards to see the last place it is
>>>>>> programmed (APIC_TMICT/APIC_TDCR).
>>>>>
>>>>> This looks like what you're looking for:
>>>>>
>>>>> kvm_apic: apic_write APIC_TMICT = 0x3e
>> 
>> What about APIC_TMICT?  Might be configured just once on boot.
> 
> Did you mean APIC_TDCR?

Yes, sorry.

> 
> I'm seeing both in the trace logs, but it's APIC_TMICT thats shown when the hang occurs.
> 
>               vm-19727 [002] ...1 66669.010699: kvm_apic: apic_read APIC_TDCR = 0x0
>               vm-19727 [002] ...1 66669.010699: kvm_msr: msr_read 83e = 0x0
>               vm-19727 [002] d..2 66669.010699: kvm_entry: vcpu 0
>               vm-19727 [002] d..2 66669.010700: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
>               vm-19727 [002] ...1 66669.010701: kvm_apic: apic_write APIC_TDCR = 0x3
>               vm-19727 [002] ...1 66669.010701: kvm_msr: msr_write 83e = 0x3
>               vm-19727 [002] d..2 66669.010701: kvm_entry: vcpu 0

TDCR is needed to interpret TMICT.

> 
>>>>>
>>>>>
>>>>> Basically it's spinning on the following 4 lines of trace when it happens:
>>>>>
>>>>> 	16063.549189: kvm_apic: apic_write APIC_TMICT = 0x3e
>>>>> 	16063.549190: kvm_msr: msr_write 838 = 0x3e
>>>>> 	16063.549190: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115de02 info 0 0
>>>>> 	16063.549190: kvm_entry: vcpu 2
>>>>>
>>>>
>>>> What, no kvm_inj_virq?
>>>>
>>>> Are you running with pveoi?  Try disabling it.
>> 
>> What's the answer to this question?
> 
> The host is running 3.5, so that shouldn't be enabled.

Ok.

>> Please add hrtimer_start and hrtimer_expire_entry to your traced events.
>> 
> 
> A bigger log with those two enabled:
> 
>              vm-19730 [003] ...1 66730.739585: kvm_apic: apic_write APIC_TMICT = 0x3e
>               vm-19716 [000] d..3 66730.739586: hrtimer_start: hrtimer=ffff880133cc3f78 function=posix_timer_fn expires=66882054763626 softexpires=66882054763626
>               vm-19730 [003] d..2 66730.739586: hrtimer_start: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn expires=66882053774813 softexpires=66882053774813

vcpu 3 programs the timer, and kvm sets an hrtimer, but fat in the future?

>               vm-19730 [003] ...1 66730.739586: kvm_msr: msr_write 838 = 0x3e
>               vm-19730 [003] d..2 66730.739587: kvm_entry: vcpu 3
>               vm-19730 [003] d..2 66730.739589: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff8115c684 info 0 0
>               vm-19729 [001] d..2 66730.739590: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
>               vm-19730 [003] d.h2 66730.739590: hrtimer_expire_entry: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn now=66882053778032

Nope, the ftrace time and hrtimer time aren't synchronized.

>               vm-19729 [001] ...1 66730.739591: kvm_apic: apic_write APIC_TMICT = 0x3e

vcpu 2 sets its timer.

>               vm-19730 [003] ...1 66730.739591: kvm_apic_accept_irq: apicid 3 vec 239 (Fixed|edge) (coalesced)

The original vcpu gets its interrupt delivered.

>               vm-19729 [001] d..2 66730.739591: hrtimer_start: hrtimer=ffff88020d208490 function=kvm_timer_fn expires=66882053780380 softexpires=66882053780380

vcpu 2 sets its hrtimer.

>               vm-19730 [003] ...1 66730.739592: kvm_inj_virq: irq 239
>               vm-19729 [001] ...1 66730.739592: kvm_msr: msr_write 838 = 0x3e
>               vm-19730 [003] d..2 66730.739593: kvm_entry: vcpu 3
>               vm-19729 [001] d..2 66730.739593: kvm_entry: vcpu 2
>               vm-19730 [003] d..2 66730.739594: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
>               vm-19729 [001] d..2 66730.739594: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff83601f61 info 0 0

vcpu 2 hrtimer fires, but it doesn't know it yet.

>               vm-19730 [003] ...1 66730.739595: kvm_apic: apic_write APIC_EOI = 0x0
>               vm-19730 [003] ...1 66730.739595: kvm_msr: msr_write 80b = 0x0
>               vm-19729 [001] d.h2 66730.739596: hrtimer_expire_entry: hrtimer=ffff88020d208490 function=kvm_timer_fn now=66882053783462

vcpu 2 hrtimer fires.

>               vm-19730 [003] ...1 66730.739596: kvm_apic_accept_irq: apicid 3 vec 239 (Fixed|edge)
>               vm-19729 [001] ...1 66730.739597: kvm_apic_accept_irq: apicid 2 vec 239 (Fixed|edge) (coalesced)

and delivers a guest interrupt, but guest interrupts are still blocked.

>               vm-19730 [003] d..2 66730.739597: kvm_entry: vcpu 3
>               vm-19729 [001] d..2 66730.739597: kvm_entry: vcpu 2
>               vm-19729 [001] d..2 66730.739598: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff8115c684 info 0 0
>               vm-19729 [001] ...1 66730.739599: kvm_apic_accept_irq: apicid 2 vec 239 (Fixed|edge) (coalesced)
>               vm-19729 [001] ...1 66730.739600: kvm_inj_virq: irq 239
>               vm-19729 [001] d..2 66730.739600: kvm_entry: vcpu 2

Interrupts unblocked, interrupt delivered.

So: either the hrtimer is set for way too low a deadline, or perhaps it
expires prematurely.

TDCR=3 means divide by 16, together with TMICT=0x3e and a bus frequency
of 1GHz this means 992 ns expiration, which is consistent with what we see.

Possible causes:
 - the APIC calibration in the guest failed, so it is programming too
low values into the timer
 - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
interrupt injection is slowing it down)

You can try to find out by changing
arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
(say) 20 microseconds which will let the guest live long enough for you
to ftrace it and see what kind of timers it is programming.

>               vm-19729 [001] d..2 66730.739601: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
>               vm-19729 [001] ...1 66730.739602: kvm_apic: apic_write APIC_EOI = 0x0
>               vm-19729 [001] ...1 66730.739602: kvm_msr: msr_write 80b = 0x0
>               vm-19730 [003] d..2 66730.739603: kvm_exit: reason MSR_WRITE rip 0xffffffff810a06a8 info 0 0
>               vm-19729 [001] ...1 66730.739603: kvm_apic_accept_irq: apicid 2 vec 239 (Fixed|edge)
>               vm-19730 [003] ...1 66730.739604: kvm_apic: apic_write APIC_TMICT = 0x3e
>               vm-19729 [001] d..2 66730.739604: kvm_entry: vcpu 2
>               vm-19730 [003] d..2 66730.739604: hrtimer_start: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn expires=66882053793430 softexpires=66882053793430
>               vm-19730 [003] ...1 66730.739605: kvm_msr: msr_write 838 = 0x3e
>               vm-19730 [003] d..2 66730.739606: kvm_entry: vcpu 3
>               vm-19730 [003] d..2 66730.739607: kvm_exit: reason PENDING_INTERRUPT rip 0xffffffff8115c684 info 0 0
>               vm-19729 [001] d..2 66730.739608: kvm_exit: reason EXTERNAL_INTERRUPT rip 0xffffffff8115f2a1 info 0 0
>               vm-19730 [003] d.h2 66730.739608: hrtimer_expire_entry: hrtimer=ffff88011e00d3d0 function=kvm_timer_fn now=66882053796355
>               vm-19729 [001] ...1 66730.739609: kvm_userspace_exit: reason restart (4)
>               vm-19730 [003] ...1 66730.739610: kvm_apic_accept_irq: apicid 3 vec 239 (Fixed|edge) (coalesced)
>               vm-19730 [003] ...1 66730.739611: kvm_userspace_exit: reason restart (4)
>               vm-19716 [000] ...1 66730.739612: kvm_set_irq: gsi 4 level 1 source 0
>               vm-19716 [000] ...2 66730.739614: kvm_pic_set_irq: chip 0 pin 4 (edge)
> 


-- 
error compiling committee.c: too many arguments to function



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-07-30 13:17                 ` Avi Kivity
@ 2012-08-05 16:55                   ` Sasha Levin
  2012-08-06 17:21                     ` John Stultz
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-08-05 16:55 UTC (permalink / raw)
  To: Avi Kivity
  Cc: paulmck, linux-kernel, johnstul, mingo, a.p.zijlstra, prarit, tglx

On 07/30/2012 03:17 PM, Avi Kivity wrote:
> Possible causes:
>  - the APIC calibration in the guest failed, so it is programming too
> low values into the timer
>  - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
> interrupt injection is slowing it down)
> 
> You can try to find out by changing
> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
> (say) 20 microseconds which will let the guest live long enough for you
> to ftrace it and see what kind of timers it is programming.

I've kept trying to narrow it down, and found out It's triggerable using adjtimex().

At that point I've bisected it, and got the following commit (parties Cc'ed):

commit 5baefd6d84163443215f4a99f6a20f054ef11236
Author: John Stultz <johnstul@us.ibm.com>
Date:   Tue Jul 10 18:43:25 2012 -0400

    hrtimer: Update hrtimer base offsets each hrtimer_interrupt


I've also confirmed that reverting the commit above on top of linux-next indeed fixes the issue.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-05 16:55                   ` Sasha Levin
@ 2012-08-06 17:21                     ` John Stultz
  2012-08-06 18:12                       ` John Stultz
                                         ` (2 more replies)
  0 siblings, 3 replies; 28+ messages in thread
From: John Stultz @ 2012-08-06 17:21 UTC (permalink / raw)
  To: Sasha Levin
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit, tglx

On 08/05/2012 09:55 AM, Sasha Levin wrote:
> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>> Possible causes:
>>   - the APIC calibration in the guest failed, so it is programming too
>> low values into the timer
>>   - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>> interrupt injection is slowing it down)
>>
>> You can try to find out by changing
>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>> (say) 20 microseconds which will let the guest live long enough for you
>> to ftrace it and see what kind of timers it is programming.
> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>
> At that point I've bisected it, and got the following commit (parties Cc'ed):
>
> commit 5baefd6d84163443215f4a99f6a20f054ef11236
> Author: John Stultz <johnstul@us.ibm.com>
> Date:   Tue Jul 10 18:43:25 2012 -0400
>
>      hrtimer: Update hrtimer base offsets each hrtimer_interrupt
>
>
> I've also confirmed that reverting the commit above on top of linux-next indeed fixes the issue.
Hey Sasha,
     Thanks for the heads up.  I don't have a clear sense of what could 
be wrong here yet, but if you see this with 3.6-rc but not 3.5,  could 
you try the fix(1d17d17484d40f2d5b35c79518597a2b25296996) Ingo just made 
on tip/timers/urgent?

thanks
-john




^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 17:21                     ` John Stultz
@ 2012-08-06 18:12                       ` John Stultz
  2012-08-06 18:20                       ` John Stultz
  2012-08-06 19:24                       ` Sasha Levin
  2 siblings, 0 replies; 28+ messages in thread
From: John Stultz @ 2012-08-06 18:12 UTC (permalink / raw)
  To: Sasha Levin
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit, tglx

On 08/06/2012 10:21 AM, John Stultz wrote:
> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>> Possible causes:
>>>   - the APIC calibration in the guest failed, so it is programming too
>>> low values into the timer
>>>   - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>> interrupt injection is slowing it down)
>>>
>>> You can try to find out by changing
>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>> (say) 20 microseconds which will let the guest live long enough for you
>>> to ftrace it and see what kind of timers it is programming.
>> I've kept trying to narrow it down, and found out It's triggerable 
>> using adjtimex().
>>
>> At that point I've bisected it, and got the following commit (parties 
>> Cc'ed):
>>
>> commit 5baefd6d84163443215f4a99f6a20f054ef11236
>> Author: John Stultz <johnstul@us.ibm.com>
>> Date:   Tue Jul 10 18:43:25 2012 -0400
>>
>>      hrtimer: Update hrtimer base offsets each hrtimer_interrupt
>>
>>
>> I've also confirmed that reverting the commit above on top of 
>> linux-next indeed fixes the issue.
> Hey Sasha,
>     Thanks for the heads up.  I don't have a clear sense of what could 
> be wrong here yet, but if you see this with 3.6-rc but not 3.5,  could 
> you try the fix(1d17d17484d40f2d5b35c79518597a2b25296996) Ingo just 
> made on tip/timers/urgent?

Reading over the thread here, the large timeouts also made me think that 
it could also be related to this pending fix:
     http://lkml.org/lkml/2012/8/1/436

Its not a clear cut solution though, since the edge case that limits 
usually results in a hang since we stop expiring timers all together.

Still working to reproduce what you're seeing, and will let you know as 
soon as I have any more info.

thanks
-john


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 17:21                     ` John Stultz
  2012-08-06 18:12                       ` John Stultz
@ 2012-08-06 18:20                       ` John Stultz
  2012-08-06 18:28                         ` Sasha Levin
  2012-08-06 19:24                       ` Sasha Levin
  2 siblings, 1 reply; 28+ messages in thread
From: John Stultz @ 2012-08-06 18:20 UTC (permalink / raw)
  To: Sasha Levin
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit, tglx

On 08/06/2012 10:21 AM, John Stultz wrote:
> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>> Possible causes:
>>>   - the APIC calibration in the guest failed, so it is programming too
>>> low values into the timer
>>>   - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>> interrupt injection is slowing it down)
>>>
>>> You can try to find out by changing
>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>> (say) 20 microseconds which will let the guest live long enough for you
>>> to ftrace it and see what kind of timers it is programming.
>> I've kept trying to narrow it down, and found out It's triggerable 
>> using adjtimex().
Sorry, one more question: Could you provide details on how is it 
trigger-able using adjtimex?

thanks
-john


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 18:20                       ` John Stultz
@ 2012-08-06 18:28                         ` Sasha Levin
  2012-08-06 20:31                           ` John Stultz
  2012-08-07  5:40                           ` John Stultz
  0 siblings, 2 replies; 28+ messages in thread
From: Sasha Levin @ 2012-08-06 18:28 UTC (permalink / raw)
  To: John Stultz
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit,
	tglx, Dave Jones

On 08/06/2012 08:20 PM, John Stultz wrote:
> On 08/06/2012 10:21 AM, John Stultz wrote:
>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>> Possible causes:
>>>>   - the APIC calibration in the guest failed, so it is programming too
>>>> low values into the timer
>>>>   - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>> interrupt injection is slowing it down)
>>>>
>>>> You can try to find out by changing
>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>> to ftrace it and see what kind of timers it is programming.
>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?

It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').

Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .

Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 17:21                     ` John Stultz
  2012-08-06 18:12                       ` John Stultz
  2012-08-06 18:20                       ` John Stultz
@ 2012-08-06 19:24                       ` Sasha Levin
  2 siblings, 0 replies; 28+ messages in thread
From: Sasha Levin @ 2012-08-06 19:24 UTC (permalink / raw)
  To: John Stultz
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit, tglx

On 08/06/2012 07:21 PM, John Stultz wrote:
> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>> Possible causes:
>>>   - the APIC calibration in the guest failed, so it is programming too
>>> low values into the timer
>>>   - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>> interrupt injection is slowing it down)
>>>
>>> You can try to find out by changing
>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>> (say) 20 microseconds which will let the guest live long enough for you
>>> to ftrace it and see what kind of timers it is programming.
>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>>
>> At that point I've bisected it, and got the following commit (parties Cc'ed):
>>
>> commit 5baefd6d84163443215f4a99f6a20f054ef11236
>> Author: John Stultz <johnstul@us.ibm.com>
>> Date:   Tue Jul 10 18:43:25 2012 -0400
>>
>>      hrtimer: Update hrtimer base offsets each hrtimer_interrupt
>>
>>
>> I've also confirmed that reverting the commit above on top of linux-next indeed fixes the issue.
> Hey Sasha,
>     Thanks for the heads up.  I don't have a clear sense of what could be wrong here yet, but if you see this with 3.6-rc but not 3.5,  could you try the fix(1d17d17484d40f2d5b35c79518597a2b25296996) Ingo just made on tip/timers/urgent?

I've just tested it, and it didn't solve the issue.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 18:28                         ` Sasha Levin
@ 2012-08-06 20:31                           ` John Stultz
  2012-08-06 20:35                             ` Sasha Levin
  2012-08-07  5:40                           ` John Stultz
  1 sibling, 1 reply; 28+ messages in thread
From: John Stultz @ 2012-08-06 20:31 UTC (permalink / raw)
  To: Sasha Levin
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit,
	tglx, Dave Jones

On 08/06/2012 11:28 AM, Sasha Levin wrote:
> On 08/06/2012 08:20 PM, John Stultz wrote:
>> On 08/06/2012 10:21 AM, John Stultz wrote:
>>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>>> Possible causes:
>>>>>    - the APIC calibration in the guest failed, so it is programming too
>>>>> low values into the timer
>>>>>    - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>>> interrupt injection is slowing it down)
>>>>>
>>>>> You can try to find out by changing
>>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>>> to ftrace it and see what kind of timers it is programming.
>>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?
> It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').
>
> Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .
>
> Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.
So far no luck. Dmesg mostly just gets filled up with trinity-child 
OOMs.   How much memory are you running with?

Are you running trinity as root or as some user that has CAP_SYS_TIME 
and can actually change values via adjtimex? Or does it trip just by 
reading the values?

thanks
-john



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 20:31                           ` John Stultz
@ 2012-08-06 20:35                             ` Sasha Levin
  2012-08-07  5:05                               ` Michael Wang
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-08-06 20:35 UTC (permalink / raw)
  To: John Stultz
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit,
	tglx, Dave Jones

On 08/06/2012 10:31 PM, John Stultz wrote:
> On 08/06/2012 11:28 AM, Sasha Levin wrote:
>> On 08/06/2012 08:20 PM, John Stultz wrote:
>>> On 08/06/2012 10:21 AM, John Stultz wrote:
>>>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>>>> Possible causes:
>>>>>>    - the APIC calibration in the guest failed, so it is programming too
>>>>>> low values into the timer
>>>>>>    - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>>>> interrupt injection is slowing it down)
>>>>>>
>>>>>> You can try to find out by changing
>>>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>>>> to ftrace it and see what kind of timers it is programming.
>>>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>>> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?
>> It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').
>>
>> Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .
>>
>> Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.
> So far no luck. Dmesg mostly just gets filled up with trinity-child OOMs.   How much memory are you running with?
> 
> Are you running trinity as root or as some user that has CAP_SYS_TIME and can actually change values via adjtimex? Or does it trip just by reading the values?

As root in a disposable vm. It triggers at a random point, not after a specific call.


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 20:35                             ` Sasha Levin
@ 2012-08-07  5:05                               ` Michael Wang
  0 siblings, 0 replies; 28+ messages in thread
From: Michael Wang @ 2012-08-07  5:05 UTC (permalink / raw)
  To: Sasha Levin
  Cc: John Stultz, Avi Kivity, paulmck, linux-kernel, mingo,
	a.p.zijlstra, prarit, tglx, Dave Jones

On 08/07/2012 04:35 AM, Sasha Levin wrote:
> On 08/06/2012 10:31 PM, John Stultz wrote:
>> On 08/06/2012 11:28 AM, Sasha Levin wrote:
>>> On 08/06/2012 08:20 PM, John Stultz wrote:
>>>> On 08/06/2012 10:21 AM, John Stultz wrote:
>>>>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>>>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>>>>> Possible causes:
>>>>>>>    - the APIC calibration in the guest failed, so it is programming too
>>>>>>> low values into the timer
>>>>>>>    - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>>>>> interrupt injection is slowing it down)
>>>>>>>
>>>>>>> You can try to find out by changing
>>>>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>>>>> to ftrace it and see what kind of timers it is programming.
>>>>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>>>> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?
>>> It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').
>>>
>>> Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .
>>>
>>> Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.
>> So far no luck. Dmesg mostly just gets filled up with trinity-child OOMs.   How much memory are you running with?
>>
>> Are you running trinity as root or as some user that has CAP_SYS_TIME and can actually change values via adjtimex? Or does it trip just by reading the values?
> 
> As root in a disposable vm. It triggers at a random point, not after a specific call.

I have tested with a 3.6.0-rc1 guest again, running command:

./trinity --quiet -l off -cadjtimex --dangerous

for normal user:
	only oom info
for root:
	the guest hung without any stall info printed

I'm not sure how this trinity tool implemented, but at least it do help
to produce some rarely kernel bug...

And could you please also provide the way you start the guest? Is there
any special option?

Regards,
Michael Wang

> 
> --
> 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/
> 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-06 18:28                         ` Sasha Levin
  2012-08-06 20:31                           ` John Stultz
@ 2012-08-07  5:40                           ` John Stultz
  2012-08-07 10:24                             ` Sasha Levin
  1 sibling, 1 reply; 28+ messages in thread
From: John Stultz @ 2012-08-07  5:40 UTC (permalink / raw)
  To: Sasha Levin
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit,
	tglx, Dave Jones

On 08/06/2012 11:28 AM, Sasha Levin wrote:
> On 08/06/2012 08:20 PM, John Stultz wrote:
>> On 08/06/2012 10:21 AM, John Stultz wrote:
>>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>>> Possible causes:
>>>>>    - the APIC calibration in the guest failed, so it is programming too
>>>>> low values into the timer
>>>>>    - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>>> interrupt injection is slowing it down)
>>>>>
>>>>> You can try to find out by changing
>>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>>> to ftrace it and see what kind of timers it is programming.
>>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?
> It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').
>
> Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .
>
> Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.

Ok. Finally I *think* got it reproduced.  (Had some trouble initially, 
as I think since the first time I ran it as a normal user, the socket 
cache isn't the same as if you run it the first time as root? Anyway, 
after doing a make clean and rebuilding it started to trigger).

I'm not seeing the rcu stall message, but I do manage to trigger two 
other behaviors: a hard hang and a sort of zombie state where memory 
isn't properly being freed & everything starts segfaulting.   So this 
may not be the exact same issue, but it triggers quickly as you 
described (within a few seconds of running trinity as root).

It looks like both of these issues are caused by 
adjtimex(ADJ_SETOFFSET), which  adds or subtracts a huge offset and that 
either goes negative or gets clamped to a ktime_t at KTIME_MAX (if you 
get clamped the system hangs, if it goes negative, the system barely 
functions, but sort of drags along).

An updated version of my KTIME_MAX sanity checking patch to handle both 
of these conditions is below.

Would you mind giving this patch a shot and letting me know if you still 
see problems?

thanks
-john

 From 7a37a171f8b93ce8f89137d2dfac37fdc45994ba Mon Sep 17 00:00:00 2001
From: John Stultz <john.stultz@linaro.org>
Date: Tue, 31 Jul 2012 02:06:14 -0400
Subject: [PATCH] time: Improve sanity checking of timekeeping inputs

Unexpected behavior could occur if the time is set to
a value large enough to overflow a 64bit ktime_t
(which is something larger then the year 2262).

Also unexpected behavior could occur if large negative
offsets are injected via adjtimex.

So this patch improves the sanity check timekeeping inputs
by improving the timespec_valid() check, and then makes better
use of timespec_valid() to make sure we don't set the time to
an invalid negative value or one that overflows ktime_t.

Note: This does not protect from setting the time close to
overflowing ktime_t and then letting natural accumulation
cause the overflow.

Cc: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Zhouping Liu <zliu@redhat.com>
Cc: CAI Qian <caiqian@redhat.com>
Cc: Sasha Levin <levinsasha928@gmail.com>
Cc: stable@vger.kernel.org
Reported-by: CAI Qian <caiqian@redhat.com>
Reported-by: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
  include/linux/ktime.h     |    7 -------
  include/linux/time.h      |   23 +++++++++++++++++++++--
  kernel/time/timekeeping.c |   26 ++++++++++++++++++++++++--
  3 files changed, 45 insertions(+), 11 deletions(-)

diff --git a/include/linux/ktime.h b/include/linux/ktime.h
index 603bec2..06177ba10 100644
--- a/include/linux/ktime.h
+++ b/include/linux/ktime.h
@@ -58,13 +58,6 @@ union ktime {
  
  typedef union ktime ktime_t;		/* Kill this */
  
-#define KTIME_MAX			((s64)~((u64)1 << 63))
-#if (BITS_PER_LONG == 64)
-# define KTIME_SEC_MAX			(KTIME_MAX / NSEC_PER_SEC)
-#else
-# define KTIME_SEC_MAX			LONG_MAX
-#endif
-
  /*
   * ktime_t definitions when using the 64-bit scalar representation:
   */
diff --git a/include/linux/time.h b/include/linux/time.h
index c81c5e4..68e68c5 100644
--- a/include/linux/time.h
+++ b/include/linux/time.h
@@ -107,11 +107,30 @@ static inline struct timespec timespec_sub(struct timespec lhs,
  	return ts_delta;
  }
  
+#define KTIME_MAX			((s64)~((u64)1 << 63))
+#if (BITS_PER_LONG == 64)
+# define KTIME_SEC_MAX			(KTIME_MAX / NSEC_PER_SEC)
+#else
+# define KTIME_SEC_MAX			LONG_MAX
+#endif
+
  /*
   * Returns true if the timespec is norm, false if denorm:
   */
-#define timespec_valid(ts) \
-	(((ts)->tv_sec >= 0) && (((unsigned long) (ts)->tv_nsec) < NSEC_PER_SEC))
+static inline bool timespec_valid(const struct timespec *ts)
+{
+	/* Dates before 1970 are bogus */
+	if (ts->tv_sec < 0)
+		return false;
+	/* Can't have more nanoseconds then a second */
+	if ((unsigned long)ts->tv_nsec >= NSEC_PER_SEC)
+		return false;
+	/* Disallow values that could overflow ktime_t */
+	if ((unsigned long long)ts->tv_sec >= KTIME_SEC_MAX)
+		return false;
+	return true;
+}
+
  
  extern void read_persistent_clock(struct timespec *ts);
  extern void read_boot_clock(struct timespec *ts);
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index e16af19..898bef0 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -427,7 +427,7 @@ int do_settimeofday(const struct timespec *tv)
  	struct timespec ts_delta, xt;
  	unsigned long flags;
  
-	if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC)
+	if (!timespec_valid(tv))
  		return -EINVAL;
  
  	write_seqlock_irqsave(&tk->lock, flags);
@@ -463,6 +463,8 @@ int timekeeping_inject_offset(struct timespec *ts)
  {
  	struct timekeeper *tk = &timekeeper;
  	unsigned long flags;
+	struct timespec tmp;
+	int ret = 0;
  
  	if ((unsigned long)ts->tv_nsec >= NSEC_PER_SEC)
  		return -EINVAL;
@@ -471,10 +473,17 @@ int timekeeping_inject_offset(struct timespec *ts)
  
  	timekeeping_forward_now(tk);
  
+	/* Make sure the proposed value is valid */
+	tmp = timespec_add(tk_xtime(tk),  *ts);
+	if (!timespec_valid(&tmp)) {
+		ret = -EINVAL;
+		goto error;
+	}
  
  	tk_xtime_add(tk, ts);
  	tk_set_wall_to_mono(tk, timespec_sub(tk->wall_to_monotonic, *ts));
  
+error: /* even if we error out, we forwarded the time, so call update */
  	timekeeping_update(tk, true);
  
  	write_sequnlock_irqrestore(&tk->lock, flags);
@@ -482,7 +491,7 @@ int timekeeping_inject_offset(struct timespec *ts)
  	/* signal hrtimers about time change */
  	clock_was_set();
  
-	return 0;
+	return ret;
  }
  EXPORT_SYMBOL(timekeeping_inject_offset);
  
@@ -649,7 +658,20 @@ void __init timekeeping_init(void)
  	struct timespec now, boot, tmp;
  
  	read_persistent_clock(&now);
+	if (!timespec_valid(&now)) {
+		pr_warn("WARNING: Persistent clock returned invalid value!\n"
+			"         Check your CMOS/BIOS settings.\n");
+		now.tv_sec = 0;
+		now.tv_nsec = 0;
+	}
+
  	read_boot_clock(&boot);
+	if (!timespec_valid(&boot)) {
+		pr_warn("WARNING: Boot clock returned invalid value!\n"
+			"         Check your CMOS/BIOS settings.\n");
+		boot.tv_sec = 0;
+		boot.tv_nsec = 0;
+	}
  
  	seqlock_init(&tk->lock);
  
-- 
1.7.9.5



^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-07  5:40                           ` John Stultz
@ 2012-08-07 10:24                             ` Sasha Levin
  2012-08-08  2:20                               ` Michael Wang
  0 siblings, 1 reply; 28+ messages in thread
From: Sasha Levin @ 2012-08-07 10:24 UTC (permalink / raw)
  To: John Stultz
  Cc: Avi Kivity, paulmck, linux-kernel, mingo, a.p.zijlstra, prarit,
	tglx, Dave Jones, Michael Wang

On 08/07/2012 07:40 AM, John Stultz wrote:
> On 08/06/2012 11:28 AM, Sasha Levin wrote:
>> On 08/06/2012 08:20 PM, John Stultz wrote:
>>> On 08/06/2012 10:21 AM, John Stultz wrote:
>>>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>>>> Possible causes:
>>>>>>    - the APIC calibration in the guest failed, so it is programming too
>>>>>> low values into the timer
>>>>>>    - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>>>> interrupt injection is slowing it down)
>>>>>>
>>>>>> You can try to find out by changing
>>>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>>>> to ftrace it and see what kind of timers it is programming.
>>>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>>> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?
>> It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').
>>
>> Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .
>>
>> Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.
> 
> Ok. Finally I *think* got it reproduced.  (Had some trouble initially, as I think since the first time I ran it as a normal user, the socket cache isn't the same as if you run it the first time as root? Anyway, after doing a make clean and rebuilding it started to trigger).
> 
> I'm not seeing the rcu stall message, but I do manage to trigger two other behaviors: a hard hang and a sort of zombie state where memory isn't properly being freed & everything starts segfaulting.   So this may not be the exact same issue, but it triggers quickly as you described (within a few seconds of running trinity as root).
> 
> It looks like both of these issues are caused by adjtimex(ADJ_SETOFFSET), which  adds or subtracts a huge offset and that either goes negative or gets clamped to a ktime_t at KTIME_MAX (if you get clamped the system hangs, if it goes negative, the system barely functions, but sort of drags along).
> 
> An updated version of my KTIME_MAX sanity checking patch to handle both of these conditions is below.
> 
> Would you mind giving this patch a shot and letting me know if you still see problems?

This fixes the problem for me. Thanks!

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6
  2012-08-07 10:24                             ` Sasha Levin
@ 2012-08-08  2:20                               ` Michael Wang
  0 siblings, 0 replies; 28+ messages in thread
From: Michael Wang @ 2012-08-08  2:20 UTC (permalink / raw)
  To: Sasha Levin
  Cc: John Stultz, Avi Kivity, paulmck, linux-kernel, mingo,
	a.p.zijlstra, prarit, tglx, Dave Jones

On 08/07/2012 06:24 PM, Sasha Levin wrote:
> On 08/07/2012 07:40 AM, John Stultz wrote:
>> On 08/06/2012 11:28 AM, Sasha Levin wrote:
>>> On 08/06/2012 08:20 PM, John Stultz wrote:
>>>> On 08/06/2012 10:21 AM, John Stultz wrote:
>>>>> On 08/05/2012 09:55 AM, Sasha Levin wrote:
>>>>>> On 07/30/2012 03:17 PM, Avi Kivity wrote:
>>>>>>> Possible causes:
>>>>>>>    - the APIC calibration in the guest failed, so it is programming too
>>>>>>> low values into the timer
>>>>>>>    - it actually needs 1 us wakeups and then can't keep up (esp. as kvm
>>>>>>> interrupt injection is slowing it down)
>>>>>>>
>>>>>>> You can try to find out by changing
>>>>>>> arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of
>>>>>>> (say) 20 microseconds which will let the guest live long enough for you
>>>>>>> to ftrace it and see what kind of timers it is programming.
>>>>>> I've kept trying to narrow it down, and found out It's triggerable using adjtimex().
>>>> Sorry, one more question: Could you provide details on how is it trigger-able using adjtimex?
>>> It triggers after a while of fuzzing using trinity of just adjtimex ('./trinity --quiet -l off -cadjtimex').
>>>
>>> Trinity is available here: http://git.codemonkey.org.uk/?p=trinity.git .
>>>
>>> Let me know if I can help further with reproducing this, I can probably copy over my testing environment to some other host if you'd like.
>>
>> Ok. Finally I *think* got it reproduced.  (Had some trouble initially, as I think since the first time I ran it as a normal user, the socket cache isn't the same as if you run it the first time as root? Anyway, after doing a make clean and rebuilding it started to trigger).
>>
>> I'm not seeing the rcu stall message, but I do manage to trigger two other behaviors: a hard hang and a sort of zombie state where memory isn't properly being freed & everything starts segfaulting.   So this may not be the exact same issue, but it triggers quickly as you described (within a few seconds of running trinity as root).
>>
>> It looks like both of these issues are caused by adjtimex(ADJ_SETOFFSET), which  adds or subtracts a huge offset and that either goes negative or gets clamped to a ktime_t at KTIME_MAX (if you get clamped the system hangs, if it goes negative, the system barely functions, but sort of drags along).
>>
>> An updated version of my KTIME_MAX sanity checking patch to handle both of these conditions is below.
>>
>> Would you mind giving this patch a shot and letting me know if you still see problems?
> 
> This fixes the problem for me. Thanks!

Could you please also try to reduce the CONFIG_RCU_CPU_STALL_TIMEOUT
from 60 to 3 and see whether the rcu stall info will show again?(sorry I
can't do it by my self since the stall info never appear in my sight...)

That will be very helpful as I suppose it is time to recover
CONFIG_RCU_CPU_STALL_TIMEOUT to a reasonable value now ;-)

Regards,
Michael Wang

> --
> 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/
> 


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2012-08-08  2:20 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-24 17:10 rcu: INFO: rcu_preempt detected stalls on CPUs/tasks on v3.6 Sasha Levin
2012-07-24 17:40 ` Paul E. McKenney
2012-07-24 20:55   ` Sasha Levin
2012-07-25  8:36 ` Michael Wang
2012-07-25 21:16   ` Sasha Levin
2012-07-26  5:10     ` Michael Wang
2012-07-25  9:06 ` Michael Wang
2012-07-26 11:42 ` Avi Kivity
2012-07-27 11:27   ` Sasha Levin
2012-07-29 12:48     ` Avi Kivity
2012-07-29 21:05       ` Sasha Levin
2012-07-30  5:36         ` Avi Kivity
2012-07-30  9:13           ` Sasha Levin
2012-07-30  9:33             ` Avi Kivity
2012-07-30 12:43               ` Sasha Levin
2012-07-30 13:17                 ` Avi Kivity
2012-08-05 16:55                   ` Sasha Levin
2012-08-06 17:21                     ` John Stultz
2012-08-06 18:12                       ` John Stultz
2012-08-06 18:20                       ` John Stultz
2012-08-06 18:28                         ` Sasha Levin
2012-08-06 20:31                           ` John Stultz
2012-08-06 20:35                             ` Sasha Levin
2012-08-07  5:05                               ` Michael Wang
2012-08-07  5:40                           ` John Stultz
2012-08-07 10:24                             ` Sasha Levin
2012-08-08  2:20                               ` Michael Wang
2012-08-06 19:24                       ` Sasha Levin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.