RE: v6.8.0-rc6: mei_ace_probe / mei_vsc_probe: do not call blocking ops when !TASK_RUNNING

From: Wu, Wentong
Date: Sat Mar 09 2024 - 20:34:09 EST


> From: Dominik Brodowski <linux@xxxxxxxxxxxxxxxxxxxx>
>
> Hi Wetong,
>
> Am Fri, Mar 08, 2024 at 11:45:44PM +0000 schrieb Wu, Wentong:
> > Did you try master branch (v6.8) without IPU6 driver? There should be
> > problems with the IPU6 driver you use as below:
> >
> > > intel-ipu6 0000:00:05.0: Found supported sensor OVTI01A0:00
> > > intel-ipu6 0000:00:05.0: Connected 1 cameras
> >
> > If not, could you please help try it on your side?
>
> Branch master from https://git.linuxtv.org/sailus/media_tree.git/ causes a
> WARNING during boot; some extracts from dmesg:

Thanks for your help, I think this has been fix by below patch:
<URL: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/misc/mei/vsc-tp.c?id=b8b19acfafdeacbedd4e2795cb18c81c4d8bb6cc>

how about the suspend and resume scenario with media_tree master
branch (which doesn't merge IPU6 driver) plus this patch?
I will test it as well next Monday I get to office.

BR,
Wentong
>
> mei_me 0000:00:16.0: enabling device (0000 -> 0002) mei_hdcp 0000:00:16.0-
> b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops
> i915_hdcp_ops) mei_pxp 0000:00:16.0-fbf6fcf1-96cf-4e2e-a6a6-
> 1bab8cbe36b1: bound 0000:00:02.0 (ops i915_pxp_tee_component_ops)
> intel_vsc intel_vsc: silicon stepping version is 0:2 ------------[ cut here ]------------
> do not call blocking ops when !TASK_RUNNING; state=2 set at
> [<000000001b97ea26>] prepare_to_wait_event+0x54/0x1a0
> WARNING: CPU: 5 PID: 124 at kernel/sched/core.c:10099
> __might_sleep+0x59/0x60 Modules linked in:
> CPU: 5 PID: 124 Comm: kworker/u24:2 Tainted: G T 6.8.0-rc2+ #2
> Hardware name: Dell Inc. XPS 9315/00KRKP, BIOS 1.1.3 05/11/2022
> Workqueue: events_unbound deferred_probe_work_func
> RIP: 0010:__might_sleep+0x59/0x60
> Code: ee 48 89 df 5b 31 d2 5d e9 24 fd ff ff 48 8b 90 60 15 00 00 48 c7 c7 a8
> 3e aa 84 c6 05 6f b3 47 03 01 48 89 d1 e8 b7 6c fb ff <0f> 0b eb d1 0f 1f 00 90
> 90 90 90 90 90 90 90 90 90 90 90 90 90 90
> RSP: 0018:ffffbd3ec1287a98 EFLAGS: 00010246
> RAX: 0000000000000000 RBX: ffffffff84a07d0f RCX: 0000000000000000
> RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
> RBP: 0000000000000ea5 R08: 0000000000000000 R09: 0000000000000000
> R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001
> R13: ffffa224892a3028 R14: ffffa22494ac1028 R15: 00000000c1287b00
> FS: 0000000000000000(0000) GS:ffffa22bef680000(0000)
> knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 0000557ffdf03148 CR3: 00000002b645c000 CR4: 0000000000f50ef0
> PKRU: 55555554
> Call Trace:
> <TASK>
> ? __might_sleep+0x59/0x60
> ? __warn+0x80/0x170
> ? __might_sleep+0x59/0x60
> ? report_bug+0x182/0x1b0
> ? handle_bug+0x40/0x80
> ? exc_invalid_op+0x17/0x80
> ? asm_exc_invalid_op+0x1a/0x20
> ? __might_sleep+0x59/0x60
> ? __might_sleep+0x59/0x60
> gpiod_get_value_cansleep+0x19/0x60
> vsc_tp_xfer+0x177/0x570
> ? __pfx_autoremove_wake_function+0x10/0x10
> mei_vsc_write+0xe5/0x1d0
> mei_hbm_cl_flow_control_req+0x84/0xd0
> mei_cl_read_start+0x23b/0x330
> mei_cldev_register_rx_cb+0xf5/0x140
> mei_ace_probe+0x11f/0x390
> ? kernfs_add_one+0x146/0x180
> ? really_probe+0x166/0x300
> really_probe+0x166/0x300
> ? __pfx___device_attach_driver+0x10/0x10
> __driver_probe_device+0x6e/0x120
> driver_probe_device+0x1a/0x90
> __device_attach_driver+0x8e/0xd0
> bus_for_each_drv+0x90/0xf0
> __device_attach+0xac/0x1a0
> ? process_one_work+0x19c/0x500
> bus_probe_device+0x93/0xb0
> ? process_one_work+0x19c/0x500
> deferred_probe_work_func+0x96/0xd0
> process_one_work+0x205/0x500
> worker_thread+0x1dc/0x3e0
> ? __pfx_worker_thread+0x10/0x10
> kthread+0xea/0x120
> ? __pfx_kthread+0x10/0x10
> ret_from_fork+0x2c/0x50
> ? __pfx_kthread+0x10/0x10
> ret_from_fork_asm+0x1b/0x30
> </TASK>
> irq event stamp: 1166879
> hardirqs last enabled at (1166885): [<ffffffff81cb6348>]
> console_unlock+0x118/0x170 hardirqs last disabled at (1166890):
> [<ffffffff81cb632d>] console_unlock+0xfd/0x170 softirqs last enabled at
> (1166640): [<ffffffff81c1333e>] irq_exit_rcu+0x7e/0xa0 softirqs last disabled
> at (1166635): [<ffffffff81c1333e>] irq_exit_rcu+0x7e/0xa0 ---[ end trace
> 0000000000000000 ]--- mei intel_vsc-5db76cf6-0a68-4ed6-9b78-
> 0361635e2447: deferred probe pending: (reason unknown) mei intel_vsc-
> 92335fcf-3203-4472-af93-7b4453ac29da: deferred probe pending: (reason
> unknown)
>
>
> Best,
> Dominik