Re: i915 X lockup

From: Eric Anholt
Date: Sat Feb 28 2009 - 04:05:23 EST


On Sat, 2009-02-28 at 00:47 -0800, Andrew Morton wrote:
> On Sat, 28 Feb 2009 09:31:28 +0100 Jiri Slaby <jirislaby@xxxxxxxxx> wrote:
>
> > On 28.2.2009 01:20, Eric Anholt wrote:
> > > KMS support is not a feature of the server but of your 2D driver. You
> > > want 2.6.2, or things will be bad.
> >
> > I have 2.5.0. After turning KMS off, problem seems to be solved.
> >
> > Anyway, I would appreciate a version of the intel driver being in the
> > Kconfig text, otherwise it looks like: don't use this on machines with
> > installation from stone age. If one has latest stable release of a
> > distro, he doesn't even think he doesn't have "new enough userspace".
> >
> > For reference, the text is:
> > Choose this option if you want kernel modesetting enabled by default,
> > and you have a new enough userspace to support this. Running old
> > userspaces with this enabled will cause pain.
>
> Hang on.
>
> The kernel deadlocked on struct_mutex, did it not? That's a kernel bug
> regardless of what userspace you're running.
>
> Do we know why this happened?

Userland went stomping all over the device state that the kernel thinks
it controls since you went and turned on the KMS option asserting "I'm
not going to run old userland", so the GPU got hung, and further
software using the GPU hung, and then somebody waiting for someone else
finishing using the GPU (struct_mutex) got hung.

The only proposal to prevent it is to use the "don't let userland map my
PCI device any more" support we now have available to us, which would
make X fail early on. The unfortunate side-effect of that is that we
lose the ability to run incredibly useful userland debug tools that do
read-only access to registers. We're moving bits of those into debugfs
for 2.6.30, but it's work that's not done even for the tools we have
today.

--
Eric Anholt
eric@xxxxxxxxxx eric.anholt@xxxxxxxxx


Attachment: signature.asc
Description: This is a digitally signed message part