On Tue, 2019-03-26 at 11:14 -0700, Adam Williamson wrote:
> 
> The justification for this is, I hope I am correctly representing all
> views here (please say so if not), that this mechanism is both less
> necessary (due to a general reduction in the amount of 'weird' graphics
> hardware out there, and general improvement in the reliability and
> coverage of the major drivers for the major graphics hardware
> manufacturers) and inherently less likely to work (due to the general
> trend of work on kernel modesetting and Wayland) than it used to be.

A note here: there is one specific case where 'basic graphics mode' may
still be regularly needed: new NVIDIA hardware.

The device matching for Intel (i915) and AMD (amdgpu, radeon) graphics
adapters is done in a very device-specific way: if you look at 'modinfo
amdgpu | grep alias' you will see a ton of entries. Each of these is
basically specific to a particular card - they include a PCI vendor ID
and a device ID (the string 'pci:v00008086d00003E94sv*sd*bc03sc*i*',
for example, means 'load this module if you see a device with vendor ID
8086, device ID 3E94, any subvendor ID, any subdevice ID, 'base class'
3 (which basically means 'graphics device'), any subclass, and any
programming interface.

If you look at 'modinfo nouveau | grep alias', though, you see two
lines:

alias:          pci:v000012D2d*sv*sd*bc03sc*i*
alias:          pci:v000010DEd*sv*sd*bc03sc*i*

these basically mean 'any time you see any device with PCI vendor ID
12D2 or 10DE, load this module'.

Effectively there is a manufacturer wildcard: the nouveau module gets
loaded for *any* NVIDIA graphics card at all.

This means that when a *new* graphics card comes out, one that the
nouveau driver doesn't actually work with right away, when you try and
boot any Linux on a system with that card, nouveau will still get
loaded and *try* to work. This may not end well (though I don't have
direct experience with this case, so I don't know whether there are
other fallback paths or anything involved that may cope with it
sometimes; ajax and airlied may be able to advise there). This is not
the case for Intel or AMD cards, because they *are* matched one device
at a time - when a completely new adapter comes out, it will have a new
device ID, and so the module just won't load, and the system will
likely automatically wind up doing more or less the same thing as
happens when you boot with 'nomodeset' on a system whose adapter *is*
supported.

Typically, though, the advice given to people who get stuck in this
state is to use 'nomodeset' - i.e. our 'basic graphics mode'. If you
poke around the usual places on the internet (Fedora forums, Q&A sites)
you'll find 'try basic graphics mode if your NVIDIA card doesn't work'
is quite a standard meme.
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to