1c74ca7a1a9a ("drm/fb-helper: call vga_remove_vgacon automatically.")

Gerd Hoffmann kraxel at redhat.com
Fri Aug 9 08:54:41 UTC 2019


On Fri, Aug 09, 2019 at 09:47:00AM +0200, Borislav Petkov wrote:
> Hi,
> 
> On Fri, Aug 09, 2019 at 09:21:33AM +0200, Gerd Hoffmann wrote:
> > On Thu, Aug 08, 2019 at 07:45:42PM +0200, Borislav Petkov wrote:
> > > Hi,
> > > 
> > > for some unfathomable to me reason, the commit in $Subject breaks
> > > booting of the 32-bit partition of one of my test boxes. The box doesn't
> > > finish booting (normally it boots in text mode, there is no X server
> > > setup on it) but it is still responsible in the sense that I can reboot
> > > it with the Sysrq combination. No other keystrokes have effect.
> > 
> > Is "text mode" actual vga text mode or linux console @ fbcon?
> > What display hardware do you have?
> > 
> > Can you ssh into the machine?  If so, can you grab a kernel log please?
> > If not please send a kernel log of a boot with the patch reverted.
> 
> here's dmesg in a private mail.

[ adding back the mailing list ]

> I can log into the machine and there
> are some interesting lines in dmesg which I hope should answer your
> questions:
> 
> [    8.138241] radeon 0000:00:01.0: remove_conflicting_pci_framebuffers: bar 0: 0xe0000000 -> 0xefffffff
> [    8.138545] radeon 0000:00:01.0: remove_conflicting_pci_framebuffers: bar 2: 0xf0300000 -> 0xf033ffff
> [    8.138854] radeon 0000:00:01.0: vgaarb: deactivate vga console
> [    8.140269] Console: switching to colour dummy device 80x25

A bit later:

   [    8.198138] radeon 0000:00:01.0: Direct firmware load for radeon/PALM_pfp.bin failed with error -2
   [    8.198351] r600_cp: Failed to load firmware "radeon/PALM_pfp.bin"
   [    8.198512] [drm:evergreen_init [radeon]] *ERROR* Failed to load firmware!
   [    8.198590] radeon 0000:00:01.0: Fatal error during GPU init

So the radeon drm driver tries to load and fails due to missing firmware,
thats why you have a non-working display.

So your options are:
  (a) install linux-firmware, so the radeon driver can initialize, or
  (b) boot your kernel with "nomodeset" command line option.  The radeon
      driver will not initialize then, and also not disable conflicting
      display drivers (vgacon or fbcon @ vesafb/efifb).

Possibly it also makes sense to have the radeon driver try load the firmware
(from disk) rather early in the initialization process, before calling
drm_fb_helper_remove_conflicting_pci_framebuffers, so firmware not being
installed doesn't kill the display.

[ Cc'ing amd-gfx for comments ].

cheers,
  Gerd



More information about the dri-devel mailing list