From: Eric Anholt <eric@anholt.net> Date: Tue, 14 Oct 2008 18:33:33 +0000 (-0700) Subject: Fix broken stolen memory counting on G4X. X-Git-Url: http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-intel.git;a=commitdiff;h=4dd00681dd0f9fce8dfd4592b46418edbbd2eeb4 Fix broken stolen memory counting on G4X. On the GM45 we were assuming too little stolen memory (mostly harmless, except when it wasn't, until the AGP fix), and on the G45 we were assuming too much stolen memory, which was quite harmful when we touched the page that didn't get mapped. Future stolen memory accounting should use src/reg_dumper/intel_gtt before and after enabling AGP on the chipset to confirm that only the GTT entries not mapped to stolen are replaced, and that all of the unmapped GTT entries are replaced with the constant scratch page. --- --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -502,8 +502,8 @@ I830DetectMemory(ScrnInfoPtr pScrn) range = gtt_size + 4; /* new 4 series hardware has seperate GTT stolen with GFX stolen */ - if (IS_G4X(pI830)) - range = 0; + if (IS_G4X(pI830) || IS_GM45(pI830)) + range = 4; if (IS_I85X(pI830) || IS_I865G(pI830) || IS_I9XX(pI830)) { switch (gmch_ctrl & I855_GMCH_GMS_MASK) {