Summary: | Blank X except for mouse cursor | ||||||
---|---|---|---|---|---|---|---|
Product: | DRI | Reporter: | Reinhard Karcher <reinhard.karcher> | ||||
Component: | DRM/Intel | Assignee: | Jesse Barnes <jbarnes> | ||||
Status: | CLOSED FIXED | QA Contact: | |||||
Severity: | normal | ||||||
Priority: | medium | CC: | mathieu.taillefumier, mh+freedesktop, mike.auty, rb6, reinhard.karcher, remi, tsdh, vdanjean | ||||
Version: | XOrg 6.7.0 | ||||||
Hardware: | x86-64 (AMD64) | ||||||
OS: | Linux (All) | ||||||
Whiteboard: | |||||||
i915 platform: | i915 features: | ||||||
Attachments: |
|
Description
Reinhard Karcher
2009-12-08 03:02:12 UTC
You have a wedged GPU. Please follow the instructions on http://intellinuxgraphics.org/how_to_report_bug.html to grab a gpu dump. Thanks. Created attachment 31882 [details]
gpu dump while X running with blank screen
Gpu dump as requested.
still present in 2.6.33-rc1 see http://groups.google.com/group/linux.debian.kernel/browse_thread/thread/543d6ac539cb0efa/124a9a6a92d16cc2?lnk=raot and http://bugs.gentoo.org/show_bug.cgi?id=295777 I have the same bug since the 2.6.32-rc1 kernel and I was able to locate with a linear search in the linus tree which patch seems to trigger the bug. The problem is triggered by one of the patchs between the commit 11670d3c93210793562748d83502ecbef4034765 (xorg works with this commit included) and the commit 44040f107e64d689ccd3211ac62c6bc44f3f0775 (xorg does not work starting with this one). These two commits are actually two successive merges from the 2.6.32 kernel window. I can boot with both kernels on demand if needed. I can also confirm that this bug is only triggered when the computer has 4g of memory (maybe more) but not less. the dmesg files are identical for both kernels. I can confirm that the bug disappears, if I boot with the parameter mem=3500M. I finished a git bisect session and maybe found the patch that is responsible of this bug. The end result is : # bad: [17d857be649a21ca90008c6dc425d849fa83db5c] Linux 2.6.32-rc1 git bisect bad 17d857be649a21ca90008c6dc425d849fa83db5c # good: [74fca6a42863ffacaf7ba6f1936a9f228950f657] Linux 2.6.31 git bisect good 74fca6a42863ffacaf7ba6f1936a9f228950f657 # bad: [5d1fe0c98f2aef99fb57aaf6dd25e793c186cea3] Staging: vt6656: Integrate vt6656 into build system. git bisect bad 5d1fe0c98f2aef99fb57aaf6dd25e793c186cea3 # good: [13af7a6ea502fcdd4c0e3d7de6e332b102309491] netxen: update copyright git bisect good 13af7a6ea502fcdd4c0e3d7de6e332b102309491 # good: [fdf82dc2e2d43cf135b5fd352dea523642bb553a] V4L/DVB (12549): v4l2: video device: Add FM TX controls default configurations git bisect good fdf82dc2e2d43cf135b5fd352dea523642bb553a # good: [a9bbd210a44102cc50b30a5f3d111dbf5f2f9cd4] Merge branch 'docs-next' of git://git.lwn.net/linux-2.6 git bisect good a9bbd210a44102cc50b30a5f3d111dbf5f2f9cd4 # good: [18240904960a39e582ced8ba8ececb10b8c22dd3] Merge branch 'for-linus3' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 git bisect good 18240904960a39e582ced8ba8ececb10b8c22dd3 # bad: [ada3fa15057205b7d3f727bba5cd26b5912e350f] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu git bisect bad ada3fa15057205b7d3f727bba5cd26b5912e350f # good: [ea47689e74a1637fac4f5fc44890f3662c976849] V4L/DVB (12720): em28xx-cards: Add vendor/product id for Kworld DVD Maker 2 git bisect good ea47689e74a1637fac4f5fc44890f3662c976849 # good: [5579fd7e6aed8860ea0c8e3f11897493153b10ad] Merge branch 'for-next' into for-linus git bisect good 5579fd7e6aed8860ea0c8e3f11897493153b10ad # bad: [1aaf2e59135fd67321f47c11c64a54aac27014e9] Merge branch 'x86-txt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip git bisect bad 1aaf2e59135fd67321f47c11c64a54aac27014e9 # bad: [5e8d6b8bf94f1ffcb7e3c31b73284c20f297f191] agp: fix uninorth build git bisect bad 5e8d6b8bf94f1ffcb7e3c31b73284c20f297f191 # bad: [91b8e3056bf9107b688eb076c9b804171364db71] intel-agp: Move repeated sglist free into separate function git bisect bad 91b8e3056bf9107b688eb076c9b804171364db71 # bad: [176616814d700f19914d8509d9f65dec51a6ebf7] intel_agp: Use PCI DMA API correctly on chipsets new enough to have IOMMU git bisect bad 176616814d700f19914d8509d9f65dec51a6ebf7 # good: [ff663cf8705bea101d5f73cf471855c85242575e] agp: Add generic support for graphics dma remapping git bisect good ff663cf8705bea101d5f73cf471855c85242575e and the final answer from git is 176616814d700f19914d8509d9f65dec51a6ebf7 is first bad commit commit 176616814d700f19914d8509d9f65dec51a6ebf7 Author: Zhenyu Wang <zhenyu.z.wang@intel.com> Date: Mon Jul 27 12:59:57 2009 +0100 intel_agp: Use PCI DMA API correctly on chipsets new enough to have IOMMU When graphics dma remapping engine is active, we must fill gart table with dma address from dmar engine, as now graphics device access to graphics memory must go through dma remapping table to get real physical address. Add this support to all drivers which use intel_i915_insert_entries() Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> :040000 040000 2e225bb921aba5b816886d0d8ada8fd81e00e7a7 03d1ce91543e61975802c3a26df1ae5b75902b51 M drivers This should be fixed in Linus's master now. commit e6be8d9d17bd44061116f601fe2609b3ace7aa69 Author: Zhenyu Wang <zhenyu.z.wang@intel.com> Date: Tue Jan 5 11:25:05 2010 +0800 drm: remove address mask param for drm_pci_alloc() drm_pci_alloc() has input of address mask for setting pci dma mask on the device, which should be properly setup by drm driver. And leave it as a param for drm_pci_alloc() would cause confusion or mistake would corrupt the correct dma mask setting, as seen on intel hw which set wrong dma mask for hw status page. So remove it from drm_pci_alloc() function. Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (In reply to comment #7) > This should be fixed in Linus's master now. > commit e6be8d9d17bd44061116f601fe2609b3ace7aa69 > Author: Zhenyu Wang <zhenyu.z.wang@intel.com> > Date: Tue Jan 5 11:25:05 2010 +0800 > > drm: remove address mask param for drm_pci_alloc() > > drm_pci_alloc() has input of address mask for setting pci dma > mask on the device, which should be properly setup by drm driver. > And leave it as a param for drm_pci_alloc() would cause confusion > or mistake would corrupt the correct dma mask setting, as seen on > intel hw which set wrong dma mask for hw status page. So remove > it from drm_pci_alloc() function. > > Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> > Signed-off-by: Dave Airlie <airlied@redhat.com> This doesn't seem to be solving the issue for me. (cherry-picked and applied on 2.6.32 as currently in debian unstable) My original bug disapeared by patching debian linux source 2.6.36-trunk, but X with KMS is unusable. X without KMS is working. The linux from git (2.6.33-rc3 and newest patches) is OK. Actually, I didn't apply the patch to linux-source-2.6.32-trunk, but extended the masks in drivers/gpu/drm/i915/i915_{dma,gem}.c from 32 bits to 64 bits. fixed for me in latest git. (In reply to comment #8) > (In reply to comment #7) > > This should be fixed in Linus's master now. > > commit e6be8d9d17bd44061116f601fe2609b3ace7aa69 > > Author: Zhenyu Wang <zhenyu.z.wang@intel.com> > > Date: Tue Jan 5 11:25:05 2010 +0800 > > > > drm: remove address mask param for drm_pci_alloc() > > > > drm_pci_alloc() has input of address mask for setting pci dma > > mask on the device, which should be properly setup by drm driver. > > And leave it as a param for drm_pci_alloc() would cause confusion > > or mistake would corrupt the correct dma mask setting, as seen on > > intel hw which set wrong dma mask for hw status page. So remove > > it from drm_pci_alloc() function. > > > > Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> > > Signed-off-by: Dave Airlie <airlied@redhat.com> > > This doesn't seem to be solving the issue for me. (cherry-picked and applied on > 2.6.32 as currently in debian unstable) You might also need this one: commit fc61901373987ad61851ed001fe971f3ee8d96a3 Author: David Woodhouse <dwmw2@infradead.org> Date: Wed Dec 2 11:00:05 2009 +0000 agp/intel-agp: Clear entire GTT on startup (In reply to comment #10) > Actually, I didn't apply the patch to linux-source-2.6.32-trunk, but extended > the masks in drivers/gpu/drm/i915/i915_{dma,gem}.c from 32 bits to 64 bits. Based on what intel-agp does, I think the correct mask is 36-bit. (In reply to comment #12) > You might also need this one: > > commit fc61901373987ad61851ed001fe971f3ee8d96a3 Confirmed. With both it works. (Now, if that could make it to 2.6.32-6 ;) ) |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.