Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9c1e8a4e authored by Lubomir Rintel's avatar Lubomir Rintel Committed by Linus Torvalds
Browse files

intel-agp: fix a panic with 1M of shared memory, no GTT entries

When GTT size is equal to amount of video memory, the amount of GTT
entries is computed lower than zero, which is invalid and leads to
off-by-one error in intel_i915_configure()

Originally posted here:
http://bugzilla.kernel.org/show_bug.cgi?id=12539
http://bugzilla.redhat.com/show_bug.cgi?id=445592



Signed-off-by: default avatarLubomir Rintel <lkundrak@v3.sk>
Cc: Lubomir Rintel <lkundrak@v3.sk>
Cc: Dave Airlie <airlied@linux.ie>
Reviewed-by: default avatarEric Anholt <eric@anholt.net>
Cc: <stable@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 229cc58b
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -633,13 +633,15 @@ static void intel_i830_init_gtt_entries(void)
			break;
		}
	}
	if (gtt_entries > 0)
	if (gtt_entries > 0) {
		dev_info(&agp_bridge->dev->dev, "detected %dK %s memory\n",
		       gtt_entries / KB(1), local ? "local" : "stolen");
	else
		gtt_entries /= KB(4);
	} else {
		dev_info(&agp_bridge->dev->dev,
		       "no pre-allocated video memory detected\n");
	gtt_entries /= KB(4);
		gtt_entries = 0;
	}

	intel_private.gtt_entries = gtt_entries;
}