x86/Sandy Bridge: reserve pages when integrated graphics is present
authorJesse Barnes <jbarnes@virtuousgeek.org>
Wed, 14 Nov 2012 20:43:31 +0000 (20:43 +0000)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 6 Feb 2013 04:33:52 +0000 (04:33 +0000)
commite9bb67a262bf49f21011e82199730a10024271c4
treeeaf1a53606306452f78f9fce8ae70a2ca0881a79
parent78e3ae2d57c0df313b079a07f6ffc16e4041e56c
x86/Sandy Bridge: reserve pages when integrated graphics is present

commit a9acc5365dbda29f7be2884efb63771dc24bd815 upstream.

SNB graphics devices have a bug that prevent them from accessing certain
memory ranges, namely anything below 1M and in the pages listed in the
table.  So reserve those at boot if set detect a SNB gfx device on the
CPU to avoid GPU hangs.

Stephane Marchesin had a similar patch to the page allocator awhile
back, but rather than reserving pages up front, it leaked them at
allocation time.

[ hpa: made a number of stylistic changes, marked arrays as static
  const, and made less verbose; use "memblock=debug" for full
  verbosity. ]

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/x86/kernel/setup.c