Dear Takashi,

On 04/23/18 14:21, Takashi Iwai wrote:
On Mon, 23 Apr 2018 14:05:52 +0200,
Paul Menzel wrote:

From: Paul Menzel <[email protected]>
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 <[email protected]>

What actually took so long?  Could you analyze further instead of
blindly putting the flag?

Well, I am not sure. Could you please give me hints, how to debug this further? Is there some debug flag?

I am only aware of the Ftrace framework, but in my experience it also skews the timings quite a bit, so might not be the best choice.


Kind regards,

Paul

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to