Bugzilla – Bug 572789
nvidia - X crashes with PAT-enabled kernels when vesafb is active
Last modified: 2010-04-17 13:49:46 UTC
Created attachment 338114 [details] xserver log file of failure User-Agent: Mozilla/5.0 (X11; U; Linux i686; de; rv:1.9.1.6) Gecko/20091201 SUSE/3.5.6-1.1.1 Firefox/3.5.6 I try to use the nvidia driver with a "GeForce4 MX 440 with AGP8X" graphics card. The xserver crashes with a "Fatal server error". Reproducible: Always Steps to Reproduce: 1. 2. 3.
Unfortunately we can't track any NVIDIA driver bugs filed against openSUSE in Novell's bugzilla. Please complain directly to NVIDIA. Thanks.
You can pass the 'agp=off' boot parameter to the kernel, to try to fix this X.org crash. It works for me and I have same graphic card on a NForce system.
Replace 'agp=off' with 'nopat'.
I got a reply from nVidia about this problem. Stefan Dirsch, can you please take a look? Not sure whether it's possible apply a workaround in 96.* NVIDIA driver packages to resolve the trouble (disabling PAT or Vesa? it doesn't look there are performance problem working using that), or how much easy may be patching the kernel or the vesafb part as suggested. From http://www.nvnews.net/vbulletin/showthread.php?p=2201062#post2201062 : zander: «If the problem does not reproduce without vesafb, then it is an interaction problem between the two drivers, aggravated by a kernel check that's more strict than it needs to be. The only thing the NVIDIA legacy driver could do in this case is to fall back to uncached mappings of BAR1, which would likely yield severe/unacceptable performance penalties in this configuration. If you need the two drivers to coexist (technically, this is not a configuration we support), you have two options: - you can push to get vesafb updated to create write-combined mappings via ioremap_wc() on PAT-enabled kernels, rather than via a UC- mapping and a WC MTRR. - you can modify the kernel to permit the combination of UC- and WC mappings» Reopen for getting a second opinion. Thanks.
Apparently our kernel team is not interested in doing such changes in our kernel. It would be requrired to have these upstream first anyway. Unfortunately I'm not aware of a framework in openSUSE to add kernel boot parameters and remove them again during uninstall - in a safe way. Also AFAICS only the legacy driver 96.x.y is affected by that issue and only with PAT-enabled kernels. Maybe we don't have so many users in this area. Hence I suggest to document that issue and how to workaround it on www.opensuse.org instead. Closing as WONTFIX.