From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754909AbeDWMVq (ORCPT ); Mon, 23 Apr 2018 08:21:46 -0400 Received: from mx2.suse.de ([195.135.220.15]:52476 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754710AbeDWMVp (ORCPT ); Mon, 23 Apr 2018 08:21:45 -0400 Date: Mon, 23 Apr 2018 14:21:44 +0200 Message-ID: From: Takashi Iwai To: "Paul Menzel" Cc: "Jaroslav Kysela" , , Subject: Re: [PATCH] ALSA: hda: Request driver probe from an async task In-Reply-To: References: User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/25.3 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 23 Apr 2018 14:05:52 +0200, Paul Menzel wrote: > > From: Paul Menzel > Date: Sat, 24 Mar 2018 09:28:43 +0100 > > On an ASRock E350M1, with Linux 4.17-rc1 according to `initcall_debug` > calling `azx_driver_init` takes sometimes more than a few milliseconds, > and up to 200 ms. > > ``` > [ 2.892598] calling azx_driver_init+0x0/0xfe4 [snd_hda_intel] @ 218 > [ 2.943002] initcall azx_driver_init+0x0/0xfe4 [snd_hda_intel] > returned 0 after 49195 usecs > ``` > > Trying to execute the Linux kernel in less than 500 ms, this is quite a > hold-up, and therefore request the probe from an async task. > > With this change, the test shows, that the function returns earlier. > > ``` > [ 3.254800] calling azx_driver_init+0x0/0xfe4 [snd_hda_intel] @ 227 > [ 3.254887] initcall azx_driver_init+0x0/0xfe4 [snd_hda_intel] > returned 0 after 66 usecs > ``` > > The same behavior is visible on a Dell OptiPlex 7010. The longer times > seem to happen, when the module *e1000e* is probed during the same time. > > Signed-off-by: Paul Menzel What actually took so long? Could you analyze further instead of blindly putting the flag? thanks, Takashi From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH] ALSA: hda: Request driver probe from an async task Date: Mon, 23 Apr 2018 14:21:44 +0200 Message-ID: References: Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Paul Menzel Cc: Jaroslav Kysela , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org List-Id: alsa-devel@alsa-project.org On Mon, 23 Apr 2018 14:05:52 +0200, Paul Menzel wrote: > > From: Paul Menzel > Date: Sat, 24 Mar 2018 09:28:43 +0100 > > On an ASRock E350M1, with Linux 4.17-rc1 according to `initcall_debug` > calling `azx_driver_init` takes sometimes more than a few milliseconds, > and up to 200 ms. > > ``` > [ 2.892598] calling azx_driver_init+0x0/0xfe4 [snd_hda_intel] @ 218 > [ 2.943002] initcall azx_driver_init+0x0/0xfe4 [snd_hda_intel] > returned 0 after 49195 usecs > ``` > > Trying to execute the Linux kernel in less than 500 ms, this is quite a > hold-up, and therefore request the probe from an async task. > > With this change, the test shows, that the function returns earlier. > > ``` > [ 3.254800] calling azx_driver_init+0x0/0xfe4 [snd_hda_intel] @ 227 > [ 3.254887] initcall azx_driver_init+0x0/0xfe4 [snd_hda_intel] > returned 0 after 66 usecs > ``` > > The same behavior is visible on a Dell OptiPlex 7010. The longer times > seem to happen, when the module *e1000e* is probed during the same time. > > Signed-off-by: Paul Menzel What actually took so long? Could you analyze further instead of blindly putting the flag? thanks, Takashi