Bug 45181 - Kernel 3.5 OOPS on i915 DRM in skip_spaces()
Kernel 3.5 OOPS on i915 DRM in skip_spaces()
Product: Drivers
Classification: Unclassified
Component: Video(DRI - Intel)
All Linux
: P1 normal
Assigned To: drivers_video-dri-intel@kernel-bugs.osdl.org
: 45361 (view as bug list)
Depends on:
  Show dependency treegraph
Reported: 2012-07-27 00:59 UTC by Kris Karas
Modified: 2012-10-15 20:46 UTC (History)
4 users (show)

See Also:
Kernel Version: 3.5
Tree: Mainline
Regression: Yes

i915 Log output and subsequent OOPS (5.06 KB, text/plain)
2012-07-27 00:59 UTC, Kris Karas
Result of bisecting kernel, showing patch information (2.15 KB, text/plain)
2012-07-27 01:01 UTC, Kris Karas
The .config from kernel 3.5 (64.34 KB, text/plain)
2012-07-27 18:30 UTC, Kris Karas
Working patch from Ben Widawsky (597 bytes, patch)
2012-08-06 17:12 UTC, Kris Karas
Details | Diff

Description Kris Karas 2012-07-27 00:59:50 UTC
Created attachment 76191 [details]
i915 Log output and subsequent OOPS

Ben Widawsky added a patch that went into the 3.5 mainline kernel that adds sysfs entries for the i915/DRM driver.  Unfortunately, that patches causes the kernel to OOPS in the function skip_spaces().

I bisected to locate the patch, details of which are attached, along with the oops log itself.  CC'ing the patch author too.

Hardware: Dell OptiPlex 990
CPU: Intel Core i7-2600
i915 variant: Intel Corporation Second Generation Core Processor Family
              Integrated Graphics Controller (rev 09)
Comment 1 Kris Karas 2012-07-27 01:01:48 UTC
Created attachment 76201 [details]
Result of bisecting kernel, showing patch information
Comment 2 Daniel Vetter 2012-07-27 05:20:02 UTC
Please attach your kernel .config, too.
Comment 3 Kris Karas 2012-07-27 18:30:51 UTC
Created attachment 76271 [details]
The .config from kernel 3.5

OK, attaching the .config to the bug report.

I neglected to mention (in case it is not obvious) that the bug occurs at the same time on every boot, with the same stack trace.  I switched the i915 from a built-in to a loadable module, which allows the kernel to boot into a minimally functional state without triggering a panic.
Comment 4 Daniel Vetter 2012-08-05 18:33:57 UTC
Pardon the delay, I've been on vacation a bit. I'll look at your .config shortly. But first to confirm: When you build i915 as a module (and then load it), does the kernel still oops or does it only oops when you build i915 compiled-in?
Comment 5 Daniel Vetter 2012-08-05 19:01:41 UTC
*** Bug 45361 has been marked as a duplicate of this bug. ***
Comment 6 Ben Widawsky 2012-08-06 01:09:08 UTC
Do you have CONFIG_PM set?

I think this is the issue which was mentioned here:

Unfortunately the original poster seems to have gone away without satisfying my request. Can you see if this patch fixes the problem If this patch works, I'll submit another patch with what I want. The patch should apply to drm-intel-fixes.
Comment 7 Kris Karas 2012-08-06 17:12:35 UTC
Created attachment 76901 [details]
Working patch from Ben Widawsky

No problem on the delay.  :-)

Indeed, I do not have CONFIG_PM set (no suspend/hibernate) as this is a server that is effectively never powered off.

Ben, your patch works just fine!  No OOPSen on module load, and no panic on boot with i915 built-in.

FWIW, I'm attaching the patch Ben mentioned above, for convenience.
Comment 8 Kris Karas 2012-08-06 17:15:29 UTC
Marking this as resolved; I've tested the patch as module and as built-in, with modeset=0 and modeset=1 (moot, but for completeness) and it works fine.
Comment 9 Florian Mickler 2012-08-20 21:55:05 UTC
A patch referencing this bug report has been merged in Linux v3.6-rc2:

commit 5ab3633d6907018b0b830a720e877c3884d679c3
Author: Hunt Xu <mhuntxu@gmail.com>
Date:   Sun Jul 1 03:45:07 2012 +0000

    drm/i915: make rc6 in sysfs functions conditional
Comment 10 Florian Mickler 2012-10-15 20:46:03 UTC
A patch referencing a commit referencing this bug report has been merged in Linux v3.7-rc1:

commit 8c3f929b6147e142efc58d5d03dc6fa703b14a5d
Author: Ben Widawsky <ben@bwidawsk.net>
Date:   Sun Sep 2 00:24:40 2012 -0700

    drm/i915: Enable some sysfs stuff without CONFIG_PM

Note You need to log in before you can comment on or make changes to this bug.