Message ID | 20220222170413.5579-1-ramalingam.c@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | sound/hda/hdac_i915: reduce the timeout for component binding | expand |
On Tue, Feb 22, 2022 at 10:34:13PM +0530, Ramalingam C wrote: >To avoid the kernel taint for kworker being blocked for more than 30sec >lets reduce the wait to 30Sec. > ><3>[ 60.946316] INFO: task kworker/11:1:104 blocked for more than 30 >seconds. ><3>[ 60.946479] Tainted: G W >5.17.0-rc5-CI-CI_DRM_11265+ #1 ><3>[ 60.946580] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" >disables this message. ><6>[ 60.946688] task:kworker/11:1 state:D stack:14192 pid: 104 >ppid: 2 flags:0x00004000 ><6>[ 60.946713] Workqueue: events azx_probe_work [snd_hda_intel] ><6>[ 60.946740] Call Trace: ><6>[ 60.946745] <TASK> ><6>[ 60.946763] __schedule+0x42c/0xa80 ><6>[ 60.946797] schedule+0x3f/0xc0 ><6>[ 60.946811] schedule_timeout+0x1be/0x2e0 ><6>[ 60.946829] ? del_timer_sync+0xb0/0xb0 ><6>[ 60.946849] ? 0xffffffff81000000 ><6>[ 60.946864] ? wait_for_completion_timeout+0x79/0x120 ><6>[ 60.946879] wait_for_completion_timeout+0xab/0x120 ><6>[ 60.946906] snd_hdac_i915_init+0xa5/0xb0 [snd_hda_core] ><6>[ 60.946943] azx_probe_work+0x71/0x84c [snd_hda_intel] ><6>[ 60.946974] process_one_work+0x275/0x5c0 ><6>[ 60.947010] worker_thread+0x37/0x370 ><6>[ 60.947028] ? process_one_work+0x5c0/0x5c0 ><6>[ 60.947038] kthread+0xef/0x120 ><6>[ 60.947047] ? kthread_complete_and_exit+0x20/0x20 ><6>[ 60.947065] ret_from_fork+0x22/0x30 ><6>[ 60.947110] </TASK> > >Signed-off-by: Ramalingam C <ramalingam.c@intel.com> to clarify: this should be in topic/core-for-CI branch. The longer term fix is more elaborate on the sound/ side. For now, this is ok to use with Intel CI. Our main issue is that when we have both integrated and discreate, but integrated is disabled in the bios, i915 will never bind to the integrated and the sound driver will wait until timeout. If the timeout is greater than the hung_task_timeout, we get the warning above and taint CI execution on BAT. With the amended explanation above in the commit message: Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Lucas De Marchi
diff --git a/sound/hda/hdac_i915.c b/sound/hda/hdac_i915.c index fbca4bf53a47..d20a450a9a15 100644 --- a/sound/hda/hdac_i915.c +++ b/sound/hda/hdac_i915.c @@ -184,7 +184,7 @@ int snd_hdac_i915_init(struct hdac_bus *bus) !request_module("i915")) { /* 60s timeout */ wait_for_completion_timeout(&acomp->master_bind_complete, - msecs_to_jiffies(60 * 1000)); + msecs_to_jiffies(30 * 1000)); } } if (!acomp->ops) {
To avoid the kernel taint for kworker being blocked for more than 30sec lets reduce the wait to 30Sec. <3>[ 60.946316] INFO: task kworker/11:1:104 blocked for more than 30 seconds. <3>[ 60.946479] Tainted: G W 5.17.0-rc5-CI-CI_DRM_11265+ #1 <3>[ 60.946580] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. <6>[ 60.946688] task:kworker/11:1 state:D stack:14192 pid: 104 ppid: 2 flags:0x00004000 <6>[ 60.946713] Workqueue: events azx_probe_work [snd_hda_intel] <6>[ 60.946740] Call Trace: <6>[ 60.946745] <TASK> <6>[ 60.946763] __schedule+0x42c/0xa80 <6>[ 60.946797] schedule+0x3f/0xc0 <6>[ 60.946811] schedule_timeout+0x1be/0x2e0 <6>[ 60.946829] ? del_timer_sync+0xb0/0xb0 <6>[ 60.946849] ? 0xffffffff81000000 <6>[ 60.946864] ? wait_for_completion_timeout+0x79/0x120 <6>[ 60.946879] wait_for_completion_timeout+0xab/0x120 <6>[ 60.946906] snd_hdac_i915_init+0xa5/0xb0 [snd_hda_core] <6>[ 60.946943] azx_probe_work+0x71/0x84c [snd_hda_intel] <6>[ 60.946974] process_one_work+0x275/0x5c0 <6>[ 60.947010] worker_thread+0x37/0x370 <6>[ 60.947028] ? process_one_work+0x5c0/0x5c0 <6>[ 60.947038] kthread+0xef/0x120 <6>[ 60.947047] ? kthread_complete_and_exit+0x20/0x20 <6>[ 60.947065] ret_from_fork+0x22/0x30 <6>[ 60.947110] </TASK> Signed-off-by: Ramalingam C <ramalingam.c@intel.com> --- sound/hda/hdac_i915.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)