nVidia drivers & PCI I/O MEM issues

Well, this is disappointing: I’ve upgraded from 11.2 to 11.3 for some of the various changes made to the base system, and my nVidia driver will no longer load. This was a problem with previous releases (especially with kernels before 2.6.30), but was fixed with the 11.2 release (i.e., I didn’t have to do any fiddling - just install the nvidia driver and off we go). Here are some specifics :

  • ASUS G1Sn-B1 laptop (BIOS ‘up-to-date’ in so much as there has never been a BIOS update. Thanks, Asus…)
  • GeForce 9500M GS
  • openSUSE 11.3 x86_84
  • 4 GB RAM (this is important…)

Here’s the snippet from dmesg when the nvidia module is loaded :

   24.659038] nvidia 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
   24.659046] NVRM: This PCI I/O region assigned to your NVIDIA device is invalid:
   24.659049] NVRM: BAR1 is 0M @ 0x0 (PCI:0001:00.0)
   24.659052] NVRM: The system BIOS may have misconfigured your GPU.
   24.659060] nvidia: probe of 0000:01:00.0 failed with error -1
   24.659598] NVRM: The NVIDIA probe routine failed for 1 device(s).
   24.659603] NVRM: None of the NVIDIA graphics adapters were initialized!

I can post the full dmesg (and the crazy memory reallocations), if that would help.

The real problem is that my BIOS is awful and ASUS won’t update it. They don’t update it, it seems, because they only support Windows and Windows uses a memory allocation fix. This can be done in Linux (and has been, in openSUSE 11.2 and most other distros). Without this workaround, nothing “nvidia” works.

This problem has nothing to do with the nvidia driver itself and cannot be resolved without recompiling the kernel (adding a line in arch/x86/pci/i386.c ==> HERE ), which, frankly, obviates the usefulness of a distro like openSUSE. (Again, this problem is NOT with the nvidia driver, it’s with the memory allocation, which openSUSE is failing to do correctly. Slackware has the fix, Ubuntu has the fix, etc. openSUSE HAD the fix. Grrrr!) If the problem were new, then I would be more understanding, but since it was already ‘fixed’ by this distro, it only shows a lack of continuity from release to release.

I’m typing this from my 11.3 laptop at a resolution of 800x600 in failsafe mode. Yes, I have consulted SDB:Configuring graphics cards - openSUSE . No, nouveau doesn’t work, nomodeset doesn’t work, blacklisting nouveau doesn’t work, installation of nvidia drivers from the nVidia openSUSE repository doesn’t work, compiling the nvidia driver doesn’t work. For me, this only means one thing : openSUSE 11.3 doesn’t work. I use openSUSE to avoid ‘getting my hands dirty.’ If I used Gentoo or Slackware or LFS, I would understand and have no problem with getting into the ‘works’ in order to have a useable machine.

I feel put out that I can’t use a distro like everyone else and update it with the assumption that - at the very least - my hardware would still be supported. It’s not old hardware…

Rinias

It (nvidia proprietary driver) works! Sort of…

In order to get the driver to work, I decided (after seeing many acpi messages in my dmesg), to try acpi=off on my GRUB kernel boot line. For some reason, this did the trick, and I was able to load the nvidia module and get graphics! So, I guess OSS 11.3 ‘works’ again… I’ll put up with no acpi over 800x600 vesa graphics any day.

I tried to post my dmesg snippets for comparison, but Novell threw some error and I lost the message. I can provide them should someone be interested.

Rinias

(I can’t edit my first post… Please mark as ‘Solved…’)

We typically do not mark the threads as ‘solved’ in the title as that breaks the thread for NNTP users.

Reference obtaining graphics superior than just using the VESA driver, you could take a look here (note things are different for graphics in 11.3 compared to 11.2): SDB:Configuring graphics cards - openSUSE

Thank you for the link. The problem - as I’ve said before - involves memory allocation and has nothing to do with the new handling of graphics in OSS 11.3. There is even a message in dmesg which says

AMI BIOS detected: BIOS may corrupt low RAM, working around it.

For some reason, disabling acpi allows PCI I/O memory allocation to work correctly for the GPU, instead of throwing the error

nvidia 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
 NVRM: This PCI I/O region assigned to your NVIDIA device is invalid:
 NVRM: BAR1 is 0M @ 0x0 (PCI:0001:00.0)
 NVRM: The system BIOS may have misconfigured your GPU.
 nvidia: probe of 0000:01:00.0 failed with error -1
 NVRM: The NVIDIA probe routine failed for 1 device(s).
 NVRM: None of the NVIDIA graphics adapters were initialized!

Note that nouveau is not installed on the system, there is no KMS in the kernel, and nomodeset never had any effect. Just for educational purposes, I may try the nouveau driver without acpi to see if it will still work.

I also hoped to make clear with this thread that I don’t find it acceptable to be thrown back to issues I had pre-11.2 when I upgrade. I would like a solution to this problem that does not involve turning acpi off (and thus losing that functionality on my laptop). Also, with the plethora of distributions available today, I don’t feel that putting up with an 800x600 vesa desktop is acceptable when my previously useable (and I’m talking about with openSUSE 11.2) GPU renders beautiful graphics – even if it’s just the GUI – at 1680x1050. I may be one of very few who (1) want to use openSUSE, and (2) have problems with memory allocation, but I don’t see the advantage in ‘forgetting’ about ‘me.’

Also, before the acpi=off solution came to me, I did make an effort to set the vesa driver up to give me 1680x1050@60 but to no avail. I used cvt to add the appropriate ModeLine and also tried xorg.conf.install but without success. The new Xorg configuration system is cryptic to say the least, and since such reliance is placed on Xorg’s automatic configuration of devices, there are no helpful comments in the files. Furthermore, the xorg.conf.install file is perhaps one of the poorest examples I have seen; the lack of information for each section and example options is depressing, especially considering that its sole use is for troubleshooting the automatic configuration system.

I know that there is a lot of work put into this distribution from the community, and I am indeed thankful for it – it has made openSUSE a distro apart from the rest of the pack. I guess that it’s just frustration that I’m unable to use my distro of choice the way it was meant to work simply because my computer manufacturer won’t update my BIOS.

/rant

Anyway, thanks to the whole openSUSE community for a great distro, even if there are a few glitches. I’ll go file a bug report…

Rinias

EDIT : Um, ok, so I was just looking an saw that I cannot edit any of the three previous posts in this thread. Perhaps this is also to avoid breaking it for NNTP users. Where can I get an idea of how long we have before we lose that option? Thanks.

Good idea. There is guidance here on raising bug reports: openSUSE:Submitting bug reports - openSUSE

While I plan to update 5 of our PCs at home from 11.2 to 11.3, I have one laptop still running openSUSE-11.1 (with the 2.6.27 kernel) that I do NOT plan to update to 11.3, because its i855GM graphics implementation is not compatible with any kernel after the 2.6.27 kernel. This impacts all distributions and not just openSUSE. I’ve written a bug report on that, and I’m trying to track the bug reports written by others in different venues (kernel, graphics, other distros) to see if there ever is a patch that will work well. Thus far various patches that have been implemented only help some i855GM graphic users and not all.

So I guess what I’m saying is sometimes regressions happen and can bite any of us. Good luck with your efforts.

Reference editing, typically 10 minutes is all that is allowed, except for some subforum areas (such as suggestions/polls) where there is no editing.