Comment 51 for bug 1038055

Revision history for this message
Stefan Bader (smb) wrote :

So asking around, grub (even in Precise) passes mode 0x70 (which happens to be efifb) as a generic framebuffer setup and the usage of efifb is more in a generic way than EFI. For real hw grub uses an internal VBE driver. The reason we never had any issues was that without the cirrus DRM driver efifb was the only framebuffer driver. Now there is one and we run into this race.

With the (admittedly ugly) patch, the init of the cirrusdrmfb does wait for the release of the efifb resources. But it fails on bringing up lightdm. What I think happens is that efifb does not completely go away until plymouth closes the old fb devices. Which it does at some point (in my tests there would be a delay of about 3s), likely when getting IO errors when accessing it. But it does not retry to open the (new) device. Or it does but would need to give a bit more time between retries.

If that would be working there currently would be the next issue that efifb and cirrusdrmfb use different resolutions. Probably not fatal but certainly visible on boot.