Re: [4.2.0-rc1-00201-g59c3cb5] Regression: kernel NULL pointer dereference

From: Linus Torvalds
Date: Sun Jul 12 2015 - 12:52:59 EST


On Sun, Jul 12, 2015 at 1:03 AM, JÃrg Otte <jrg.otte@xxxxxxxxx> wrote:
>
> BUG: unable to handle kernel NULL pointer dereference at 0000000000000009
> IP: [<ffffffffbd3447bb>] 0xffffffffbd3447bb

Ugh. Please enable KALLSYMS to get sane symbols.

But yes, "crtc_state->base.active" is at offset 9 from "crtc_state",
so it's pretty clearly just that change frm

- if (intel_crtc->active) {
+ if (crtc_state->base.active) {

and "crtc_state" is NULL.

And the code very much knows that crtc_state can be NULL, since it's
initialized with

crtc_state = state->base.state ?
intel_atomic_get_crtc_state(state->base.state,
intel_crtc) : NULL;

Tssk. Daniel? Should I just revert that commit dec4f799d0a4
("drm/i915: Use crtc_state->active in primary check_plane func") for
now, or is there a better fix? Like just checking crtc_state for NULL?

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/