[Nouveau] [REGRESSION] nouveau: 30 second boot hang after commit 2b700825e

Alexandre Courbot gnurou at gmail.com
Wed Mar 2 03:22:30 UTC 2016


On Tue, Mar 1, 2016 at 4:45 PM, Eric Biggers <ebiggers3 at gmail.com> wrote:
> Hello,
>
> I am encountering a 30 second hang during boot, in the Xorg process just before
> the display manager comes up.  I have bisected the problem to the following
> commit:
>
>         commit 2b700825e7a7702fb862edba1262c98040dc1bf6
>         Author: Ben Skeggs <bskeggs at redhat.com>
>         Date:   Thu Aug 20 14:54:22 2015 +1000
>
>             drm/nouveau/mc: move device irq handling to platform-specific code
>
> The hang only occurs with CONFIG_DEBUG_SHIRQ=y, which is why I didn't notice it
> sooner (I don't usually compile my kernels with that option).
>
> Based on the log output with drm_debug=0x3f, the hang is occurring in
> nouveau_gem_ioctl_cpu_prep(), where there is a 30 second timeout.
>
> This is on an "Optimus" laptop which has both an Intel and an Nvidia card.  I
> understand that the Nvidia card is being disabled automatically, and only the
> Intel one is used; but the nouveau driver obviously still does a few things
> either way.  The Nvidia hardware is: NVIDIA Corporation GK107GLM [Quadro K1100M]
> (rev a1).
>
> I don't have the expertise to fully assess the suspect commit.  Any thoughts as
> to the root cause of this problem?  Is there any other information I can
> provide?

This line of nouveau_gem_ioctl_cpu_prep() seems to match a 30-seconds timeout:

        lret = reservation_object_wait_timeout_rcu(nvbo->bo.resv,
write, true, 30 * HZ);

Without the commit you mentioned, and with CONFIG_DEBUG_SHIRQ enabled,
do you also see this error? Is it absolutely reproducable?

Also, can you give more details about the X configuration? (display
driver, PRIME configuration, how the NVIDIA GPU is used by your
display manager, etc.)


More information about the Nouveau mailing list