FYI, we noticed the below changes on
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
commit ebd43516d3879f882a403836bba8bc5791f26a28 ("Staging: panel: usleep_range is preferred over udelay")
+---------------------------------------+------------+------------+
| | 46f566ed53 | ebd43516d3 |
+---------------------------------------+------------+------------+
| boot_successes | 0 | 0 |
| boot_failures | 21 | 21 |
| page_allocation_failure:order:#,mode | 21 | |
| warn_alloc_failed+0x | 21 | |
| Mem-Info | 19 | |
| backtrace:ring_buffer_consumer_thread | 21 | |
| BUG:scheduling_while_atomic | 0 | 21 |
| backtrace:lcd_write_cmd_p8 | 0 | 21 |
| backtrace:lcd_init_display | 0 | 21 |
| backtrace:__parport_register_driver | 0 | 21 |
| backtrace:panel_init_module | 0 | 21 |
| backtrace:kernel_init_freeable | 0 | 21 |
| backtrace:lcd_clear_display | 0 | 17 |
+---------------------------------------+------------+------------+
[ 17.089664] usbcore: registered new interface driver usbhid
[ 17.091149] usbhid: USB HID core driver
[ 17.091149] usbhid: USB HID core driver
[ 17.112294] BUG: scheduling while atomic: swapper/1/0x00000002
[ 17.112294] BUG: scheduling while atomic: swapper/1/0x00000002
[ 17.113858] 2 locks held by swapper/1:
[ 17.113858] 2 locks held by swapper/1:
[ 17.114845] #0:
[ 17.114845] #0: ( (registration_lockregistration_lock){+.+.+.}){+.+.+.}, at: , at: [<47696184>] __parport_register_driver+0xc4/0xf0
[<47696184>] __parport_register_driver+0xc4/0xf0
[ 17.116024] #1:
[ 17.116024] #1: ( (pprt_lockpprt_lock){......}){......}, at: , at: [<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[ 17.116024] irq event stamp: 5212020
[ 17.116024] irq event stamp: 5212020
[ 17.116024] hardirqs last enabled at (5212019):
[ 17.116024] hardirqs last enabled at (5212019): [<47e5c495>] _raw_spin_unlock_irqrestore+0x65/0x80
[<47e5c495>] _raw_spin_unlock_irqrestore+0x65/0x80
[ 17.116024] hardirqs last disabled at (5212020):
[ 17.116024] hardirqs last disabled at (5212020): [<47e5c07a>] _raw_spin_lock_irq+0x1a/0x80
[<47e5c07a>] _raw_spin_lock_irq+0x1a/0x80
[ 17.116024] softirqs last enabled at (5206816):
[ 17.116024] softirqs last enabled at (5206816): [<46e51833>] __do_softirq+0x393/0x460
[<46e51833>] __do_softirq+0x393/0x460
[ 17.116024] softirqs last disabled at (5206811):
[ 17.116024] softirqs last disabled at (5206811): [<46e04d78>] do_softirq_own_stack+0x38/0x50
[<46e04d78>] do_softirq_own_stack+0x38/0x50
[ 17.116024] Preemption disabled at:
[ 17.116024] Preemption disabled at:[<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[ 17.116024]
[ 17.116024]
[ 17.116024] CPU: 0 PID: 1 Comm: swapper Not tainted 4.3.0-rc7-02299-gebd4351 #1
[ 17.116024] CPU: 0 PID: 1 Comm: swapper Not tainted 4.3.0-rc7-02299-gebd4351 #1
[ 17.116024] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 17.116024] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 17.116024] 40292040
[ 17.116024] 40292040 40292040 40292040 40295d98 40295d98 472d8c3d 472d8c3d 40295db4 40295db4 46e71960 46e71960 4835c6ee 4835c6ee 47cceb45 47cceb45
[ 17.116024] 47cceb45
[ 17.116024] 47cceb45 00000002 00000002 00000000 00000000 40295df0 40295df0 47e56a06 47e56a06 47e5c478 47e5c478 00000000 00000000 40295e1c 40295e1c
[ 17.116024] 40295dfc
[ 17.116024] 40295dfc 46eb374e 46eb374e 00013880 00013880 00000000 00000000 46e7549c 46e7549c 00000000 00000000 40292040 40292040 40296000 40296000
[ 17.116024] Call Trace:
[ 17.116024] Call Trace:
[ 17.116024] [<472d8c3d>] dump_stack+0x16/0x19
[ 17.116024] [<472d8c3d>] dump_stack+0x16/0x19
[ 17.116024] [<46e71960>] __schedule_bug+0x70/0xc0
[ 17.116024] [<46e71960>] __schedule_bug+0x70/0xc0
[ 17.116024] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.116024] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.116024] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.116024] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.116024] [<47e56a06>] __schedule+0x876/0xd20
[ 17.116024] [<47e56a06>] __schedule+0x876/0xd20
[ 17.116024] [<47e5c478>] ? _raw_spin_unlock_irqrestore+0x48/0x80
[ 17.116024] [<47e5c478>] ? _raw_spin_unlock_irqrestore+0x48/0x80
[ 17.116024] [<46eb374e>] ? hrtimer_start_range_ns+0xae/0x280
[ 17.116024] [<46eb374e>] ? hrtimer_start_range_ns+0xae/0x280
[ 17.116024] [<46e7549c>] ? preempt_count_add+0xc/0xd0
[ 17.116024] [<46e7549c>] ? preempt_count_add+0xc/0xd0
[ 17.116024] [<47e56f13>] schedule+0x33/0x90
[ 17.116024] [<47e56f13>] schedule+0x33/0x90
[ 17.116024] [<47e5b61f>] schedule_hrtimeout_range_clock+0xdf/0x180
[ 17.116024] [<47e5b61f>] schedule_hrtimeout_range_clock+0xdf/0x180
[ 17.116024] [<46eb2f70>] ? enqueue_hrtimer+0x130/0x130
[ 17.116024] [<46eb2f70>] ? enqueue_hrtimer+0x130/0x130
[ 17.116024] [<47e5b6d7>] schedule_hrtimeout_range+0x17/0x20
[ 17.116024] [<47e5b6d7>] schedule_hrtimeout_range+0x17/0x20
[ 17.116024] [<47e5b386>] usleep_range+0x46/0x50
[ 17.116024] [<47e5b386>] usleep_range+0x46/0x50
[ 17.116024] [<47cceb67>] lcd_write_cmd_p8+0x37/0x90
[ 17.116024] [<47cceb67>] lcd_write_cmd_p8+0x37/0x90
[ 17.116024] [<47ccef26>] lcd_init_display+0x36/0x110
[ 17.116024] [<47ccef26>] lcd_init_display+0x36/0x110
[ 17.116024] [<47cd0031>] panel_attach+0x701/0xb30
[ 17.116024] [<47cd0031>] panel_attach+0x701/0xb30
[ 17.116024] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.116024] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.116024] [<4769601e>] port_check+0x1e/0x30
[ 17.116024] [<4769601e>] port_check+0x1e/0x30
[ 17.116024] [<476a251f>] bus_for_each_dev+0x4f/0x80
[ 17.116024] [<476a251f>] bus_for_each_dev+0x4f/0x80
[ 17.116024] [<476961a0>] __parport_register_driver+0xe0/0xf0
[ 17.116024] [<476961a0>] __parport_register_driver+0xe0/0xf0
[ 17.116024] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.116024] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.116024] [<4877aadc>] ? staging_init+0x7/0x7
[ 17.116024] [<4877aadc>] ? staging_init+0x7/0x7
[ 17.116024] [<4877acc8>] panel_init_module+0x1ec/0x238
[ 17.116024] [<4877acc8>] panel_init_module+0x1ec/0x238
[ 17.116024] [<48726bd5>] do_one_initcall+0xce/0x14c
[ 17.116024] [<48726bd5>] do_one_initcall+0xce/0x14c
[ 17.116024] [<46e6bf6f>] ? parse_args+0x23f/0x3f0
[ 17.116024] [<46e6bf6f>] ? parse_args+0x23f/0x3f0
[ 17.116024] [<47e5d000>] ? syscall_call+0x6/0x7
[ 17.116024] [<47e5d000>] ? syscall_call+0x6/0x7
[ 17.116024] [<48726d11>] ? kernel_init_freeable+0xbe/0x15b
[ 17.116024] [<48726d11>] ? kernel_init_freeable+0xbe/0x15b
[ 17.116024] [<48726d31>] kernel_init_freeable+0xde/0x15b
[ 17.116024] [<48726d31>] kernel_init_freeable+0xde/0x15b
[ 17.116024] [<47e54de0>] kernel_init+0x10/0xe0
[ 17.116024] [<47e54de0>] kernel_init+0x10/0xe0
[ 17.116024] [<46e759f5>] ? schedule_tail+0x25/0x80
[ 17.116024] [<46e759f5>] ? schedule_tail+0x25/0x80
[ 17.116024] [<47e5ce60>] ret_from_kernel_thread+0x20/0x30
[ 17.116024] [<47e5ce60>] ret_from_kernel_thread+0x20/0x30
[ 17.116024] [<47e54dd0>] ? rest_init+0x120/0x120
[ 17.116024] [<47e54dd0>] ? rest_init+0x120/0x120
[ 17.266557] BUG: scheduling while atomic: swapper/1/0x00000002
[ 17.266557] BUG: scheduling while atomic: swapper/1/0x00000002
[ 17.268236] 2 locks held by swapper/1:
[ 17.268236] 2 locks held by swapper/1:
[ 17.269302] #0:
[ 17.269302] #0: ( (registration_lockregistration_lock){+.+.+.}){+.+.+.}, at: , at: [<47696184>] __parport_register_driver+0xc4/0xf0
[<47696184>] __parport_register_driver+0xc4/0xf0
[ 17.271945] #1:
[ 17.271945] #1: ( (pprt_lockpprt_lock){+.+...}){+.+...}, at: , at: [<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[ 17.274198] Preemption disabled at:
[ 17.274198] Preemption disabled at:[<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[<47cceb45>] lcd_write_cmd_p8+0x15/0x90
[ 17.294247]
[ 17.294247]
[ 17.294681] CPU: 0 PID: 1 Comm: swapper Tainted: G W 4.3.0-rc7-02299-gebd4351 #1
[ 17.294681] CPU: 0 PID: 1 Comm: swapper Tainted: G W 4.3.0-rc7-02299-gebd4351 #1
[ 17.297108] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 17.297108] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 17.299593] 40292040
[ 17.299593] 40292040 40292040 40292040 40295d98 40295d98 472d8c3d 472d8c3d 40295db4 40295db4 46e71960 46e71960 4835c6ee 4835c6ee 47cceb45 47cceb45
[ 17.320046] 47cceb45
[ 17.320046] 47cceb45 00000002 00000002 00000000 00000000 40295df0 40295df0 47e56a06 47e56a06 47e5c478 47e5c478 00000000 00000000 40295e1c 40295e1c
[ 17.322382] 40295dfc
[ 17.322382] 40295dfc 46eb374e 46eb374e 0000ea60 0000ea60 00000000 00000000 46e7549c 46e7549c 00000000 00000000 40292040 40292040 40296000 40296000
[ 17.324736] Call Trace:
[ 17.324736] Call Trace:
[ 17.325444] [<472d8c3d>] dump_stack+0x16/0x19
[ 17.325444] [<472d8c3d>] dump_stack+0x16/0x19
[ 17.326703] [<46e71960>] __schedule_bug+0x70/0xc0
[ 17.326703] [<46e71960>] __schedule_bug+0x70/0xc0
[ 17.328081] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.328081] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.347621] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.347621] [<47cceb45>] ? lcd_write_cmd_p8+0x15/0x90
[ 17.349107] [<47e56a06>] __schedule+0x876/0xd20
[ 17.349107] [<47e56a06>] __schedule+0x876/0xd20
[ 17.350412] [<47e5c478>] ? _raw_spin_unlock_irqrestore+0x48/0x80
[ 17.350412] [<47e5c478>] ? _raw_spin_unlock_irqrestore+0x48/0x80
[ 17.352162] [<46eb374e>] ? hrtimer_start_range_ns+0xae/0x280
[ 17.352162] [<46eb374e>] ? hrtimer_start_range_ns+0xae/0x280
[ 17.353788] [<46e7549c>] ? preempt_count_add+0xc/0xd0
[ 17.353788] [<46e7549c>] ? preempt_count_add+0xc/0xd0
[ 17.355205] [<47e56f13>] schedule+0x33/0x90
[ 17.355205] [<47e56f13>] schedule+0x33/0x90
[ 17.356340] [<47e5b61f>] schedule_hrtimeout_range_clock+0xdf/0x180
[ 17.356340] [<47e5b61f>] schedule_hrtimeout_range_clock+0xdf/0x180
[ 17.357868] [<46eb2f70>] ? enqueue_hrtimer+0x130/0x130
[ 17.357868] [<46eb2f70>] ? enqueue_hrtimer+0x130/0x130
[ 17.359126] [<47e5b6d7>] schedule_hrtimeout_range+0x17/0x20
[ 17.359126] [<47e5b6d7>] schedule_hrtimeout_range+0x17/0x20
[ 17.378704] [<47e5b386>] usleep_range+0x46/0x50
[ 17.378704] [<47e5b386>] usleep_range+0x46/0x50
[ 17.380033] [<47cceb90>] lcd_write_cmd_p8+0x60/0x90
[ 17.380033] [<47cceb90>] lcd_write_cmd_p8+0x60/0x90
[ 17.381348] [<47ccef26>] lcd_init_display+0x36/0x110
[ 17.381348] [<47ccef26>] lcd_init_display+0x36/0x110
[ 17.382563] [<47cd0031>] panel_attach+0x701/0xb30
[ 17.382563] [<47cd0031>] panel_attach+0x701/0xb30
[ 17.383734] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.383734] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.385072] [<4769601e>] port_check+0x1e/0x30
[ 17.385072] [<4769601e>] port_check+0x1e/0x30
[ 17.386153] [<476a251f>] bus_for_each_dev+0x4f/0x80
[ 17.386153] [<476a251f>] bus_for_each_dev+0x4f/0x80
[ 17.405529] [<476961a0>] __parport_register_driver+0xe0/0xf0
[ 17.405529] [<476961a0>] __parport_register_driver+0xe0/0xf0
[ 17.407111] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.407111] [<47696000>] ? detach_driver_chain+0x50/0x50
[ 17.408437] [<4877aadc>] ? staging_init+0x7/0x7
[ 17.408437] [<4877aadc>] ? staging_init+0x7/0x7
[ 17.409553] [<4877acc8>] panel_init_module+0x1ec/0x238
[ 17.409553] [<4877acc8>] panel_init_module+0x1ec/0x238
[ 17.410823] [<48726bd5>] do_one_initcall+0xce/0x14c
[ 17.410823] [<48726bd5>] do_one_initcall+0xce/0x14c
[ 17.412051] [<46e6bf6f>] ? parse_args+0x23f/0x3f0
[ 17.412051] [<46e6bf6f>] ? parse_args+0x23f/0x3f0
[ 17.413218] [<47e5d000>] ? syscall_call+0x6/0x7
[ 17.413218] [<47e5d000>] ? syscall_call+0x6/0x7
[ 17.436422] [<48726d11>] ? kernel_init_freeable+0xbe/0x15b
[ 17.436422] [<48726d11>] ? kernel_init_freeable+0xbe/0x15b
[ 17.437796] [<48726d31>] kernel_init_freeable+0xde/0x15b
[ 17.437796] [<48726d31>] kernel_init_freeable+0xde/0x15b
[ 17.439112] [<47e54de0>] kernel_init+0x10/0xe0
[ 17.439112] [<47e54de0>] kernel_init+0x10/0xe0
[ 17.440252] [<46e759f5>] ? schedule_tail+0x25/0x80
[ 17.440252] [<46e759f5>] ? schedule_tail+0x25/0x80
Thanks,
Ying Huang