The following message is seen with each boot of chromeos-4.19.
[ 3.955145] BUG: sleeping function called from invalid context at /mnt/host/source/src/third_party/kernel/next/drivers/base/power/runtime.c:1034
[ 3.955145] in_atomic(): 1, irqs_disabled(): 1, pid: 1, name: swapper/0
[ 3.955145] 7 locks held by swapper/0/1:
[ 3.955145] #0: 000000005ec5bc72 (&dev->mutex){....}, at: __driver_attach+0xb5/0x12b
[ 3.955145] #1: 000000005d5fa9e5 (&dev->mutex){....}, at: __device_attach+0x3e/0x15b
[ 3.955145] #2: 0000000047e93286 (serial_mutex){+.+.}, at: serial8250_register_8250_port+0x51/0x8bb
[ 3.955145] #3: 000000003b328f07 (port_mutex){+.+.}, at: uart_add_one_port+0xab/0x8b0
[ 3.955145] #4: 00000000fa313d4d (&port->mutex){+.+.}, at: uart_add_one_port+0xcc/0x8b0
[ 3.955145] #5: 00000000090983ca (console_lock){+.+.}, at: vprintk_emit+0xdb/0x217
[ 3.955145] #6: 00000000c743e583 (console_owner){-...}, at: console_unlock+0x211/0x60f
[ 3.955145] irq event stamp: 735222
[ 3.955145] hardirqs last enabled at (735221): [<ffffffffb071ad99>] __down_trylock_console_sem+0x4a/0x84
[ 3.955145] hardirqs last disabled at (735222): [<ffffffffb071bdc8>] console_unlock+0x338/0x60f
[ 3.955145] softirqs last enabled at (735152): [<ffffffffb16004a4>] __do_softirq+0x4a4/0x50d
[ 3.955145] softirqs last disabled at (735133): [<ffffffffb06a8249>] irq_exit+0x64/0xe2
[ 3.955145] CPU: 2 PID: 1 Comm: swapper/0 Not tainted 4.19.0-rc5 #6
[ 3.955145] Hardware name: Google Caroline/Caroline, BIOS Google_Caroline.7820.286.0 03/15/2017
[ 3.955145] Call Trace:
[ 3.955145] dump_stack+0x7d/0xbd
[ 3.955145] ___might_sleep+0x238/0x259
[ 3.955145] __pm_runtime_resume+0x4e/0xa4
[ 3.955145] ? serial8250_rpm_get+0x2e/0x44
[ 3.955145] serial8250_console_write+0x44/0x301
[ 3.955145] ? lock_acquire+0x1b8/0x1fa
[ 3.955145] console_unlock+0x577/0x60f
[ 3.955145] vprintk_emit+0x1f0/0x217
[ 3.955145] printk+0x52/0x6e
[ 3.955145] register_console+0x43b/0x524
[ 3.955145] uart_add_one_port+0x672/0x8b0
[ 3.955145] ? set_io_from_upio+0x150/0x162
[ 3.955145] serial8250_register_8250_port+0x825/0x8bb
[ 3.955145] dw8250_probe+0x80c/0x8b0
[ 3.955145] ? dw8250_serial_inq+0x8e/0x8e
[ 3.955145] ? dw8250_check_lcr+0x108/0x108
[ 3.955145] ? dw8250_runtime_resume+0x5b/0x5b
[ 3.955145] ? dw8250_serial_outq+0xa1/0xa1
[ 3.955145] ? dw8250_remove+0x115/0x115
[ 3.955145] platform_drv_probe+0x76/0xc5
[ 3.955145] really_probe+0x1f1/0x3ee
[ 3.955145] ? driver_allows_async_probing+0x5d/0x5d
[ 3.955145] driver_probe_device+0xd6/0x112
[ 3.955145] ? driver_allows_async_probing+0x5d/0x5d
[ 3.955145] bus_for_each_drv+0xbe/0xe5
[ 3.955145] __device_attach+0xdd/0x15b
[ 3.955145] bus_probe_device+0x5a/0x10b
[ 3.955145] device_add+0x501/0x894
[ 3.955145] ? _raw_write_unlock+0x27/0x3a
[ 3.955145] platform_device_add+0x224/0x2b7
[ 3.955145] mfd_add_device+0x718/0x75b
[ 3.955145] ? __kmalloc+0x144/0x16a
[ 3.955145] ? mfd_add_devices+0x38/0xdb
[ 3.955145] mfd_add_devices+0x9b/0xdb
[ 3.955145] intel_lpss_probe+0x7d4/0x8ee
[ 3.955145] intel_lpss_pci_probe+0xac/0xd4
[ 3.955145] pci_device_probe+0x101/0x18e
[ 3.955145] really_probe+0x1f1/0x3ee
[ 3.955145] driver_probe_device+0xd6/0x112
[ 3.955145] __driver_attach+0xd6/0x12b
[ 3.955145] ? driver_probe_device+0x112/0x112
[ 3.955145] bus_for_each_dev+0xb0/0xe2
[ 3.955145] bus_add_driver+0x18c/0x2c3
[ 3.955145] ? intel_lpss_init+0x22/0x22
[ 3.955145] driver_register+0x139/0x187
[ 3.955145] do_one_initcall+0x14d/0x31c
[ 3.955145] ? rcu_read_lock_sched_held+0x70/0x78
[ 3.955145] kernel_init_freeable+0x2cd/0x385
[ 3.955145] ? rest_init+0xcc/0xcc
[ 3.955145] kernel_init+0x11/0x117
[ 3.955145] ? rest_init+0xcc/0xcc
[ 3.955145] ret_from_fork+0x3a/0x50
Comment 1 by groeck@chromium.org
, Oct 7