video: rockchip: vop: 3399: fix disable_irq() after local_irq_save()
[ 0.654187] BUG: sleeping function called from invalid context at kernel/irq/manage.c:110
[ 0.654905] in_atomic(): 0, irqs_disabled(): 128, pid: 1, name: swapper/0
[ 0.655502] 2 locks held by swapper/0/1:
[ 0.655849] #0: (&dev->mutex){......}, at: [<
ffffff800848005c>] __driver_attach+0x38/0x98
[ 0.656630] #1: (&dev->mutex){......}, at: [<
ffffff800848007c>] __driver_attach+0x58/0x98
[ 0.657395] irq event stamp: 419700
[ 0.657705] hardirqs last enabled at (419699): [<
ffffff80081b3f54>] kfree+0x1d0/0x360
[ 0.658409] hardirqs last disabled at (419700): [<
ffffff800839933c>] rk_fb_register+0x8a4/0xc64
[ 0.659181] softirqs last enabled at (419668): [<
ffffff80080a0d58>] __do_softirq+0x41c/0x53c
[ 0.659937] softirqs last disabled at (419663): [<
ffffff80080a1100>] irq_exit+0x70/0xc4
[ 0.660651] CPU: 4 PID: 1 Comm: swapper/0 Not tainted 4.4.11 #1477
[ 0.661194] Hardware name: Rockchip RK3399 Evaluation Board v1 (Android) (DT)
[ 0.661819] Call trace:
[ 0.662044] [<
ffffff800808873c>] dump_backtrace+0x0/0x1a8
[ 0.662521] [<
ffffff80080888f8>] show_stack+0x14/0x1c
[ 0.662970] [<
ffffff800834fd18>] dump_stack+0xb0/0xec
[ 0.663419] [<
ffffff80080cd3e0>] ___might_sleep+0x1c8/0x1d8
[ 0.663911] [<
ffffff80080cd464>] __might_sleep+0x74/0x84
[ 0.664383] [<
ffffff80080fca98>] synchronize_irq+0x30/0x84
[ 0.664867] [<
ffffff80080fd230>] disable_irq+0x20/0x2c
[ 0.665325] [<
ffffff80083ae3c0>] vop_set_irq_to_cpu+0x20/0x2c
[ 0.665832] [<
ffffff8008396144>] rk_fb_poll_wait_frame_complete+0x38/0xd4
[ 0.666429] [<
ffffff80083993a4>] rk_fb_register+0x90c/0xc64
[ 0.666922] [<
ffffff80083afe44>] vop_probe+0x55c/0x5d4
[ 0.667378] [<
ffffff8008481a20>] platform_drv_probe+0x58/0xa4
[ 0.667885] [<
ffffff800847feb0>] driver_probe_device+0x114/0x288
[ 0.668414] [<
ffffff8008480090>] __driver_attach+0x6c/0x98
[ 0.668899] [<
ffffff800847e628>] bus_for_each_dev+0x64/0x88
[ 0.669391] [<
ffffff8008480298>] driver_attach+0x20/0x28
[ 0.669861] [<
ffffff800847ee14>] bus_add_driver+0xe8/0x1e0
[ 0.670345] [<
ffffff8008480fcc>] driver_register+0x98/0xe4
[ 0.670829] [<
ffffff8008482448>] __platform_driver_register+0x48/0x50
[ 0.671398] [<
ffffff8008db5f74>] vop_module_init+0x18/0x20
[ 0.671885] [<
ffffff8008d8facc>] do_one_initcall+0xf0/0x178
[ 0.672378] [<
ffffff8008d8fc9c>] kernel_init_freeable+0x148/0x1e8
[ 0.672916] [<
ffffff8008a03394>] kernel_init+0x10/0xf8
[ 0.673370] [<
ffffff80080844d0>] ret_from_fork+0x10/0x40
Change-Id: If9a39a6800a4a5dd1749f21125c6ba5204bee901
Signed-off-by: Huang Jiachai <hjc@rock-chips.com>