New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

archlinux - dummyqbs_drv.so not loading (undefined symbol: fbScreenInit) #3093

Closed
ptitdoc opened this Issue Sep 14, 2017 · 24 comments

Comments

@ptitdoc

ptitdoc commented Sep 14, 2017

Qubes OS version (e.g., R3.2):

R3.2

Affected TemplateVMs (e.g., fedora-23, if applicable):

archlinux


Expected behavior:

xorg starts properly and the GUI agent works properly.

Actual behavior:

the AppVM starts properly with qrexec working, the systemd qubes gui daemon starts properly, but no GUI application can be started.

Steps to reproduce the behavior:

Install qubes-vm-gui-3.2.17-7-x86_64.pkg.tar.xz in archlinux.

General notes:

  • /home/user/.xsession-errors shows Fatal error "no screens found"
  • /home/user/.local/share/xorg/Xorg.0.log shows the following message:
[     6.358] (II) LoadModule: "dummyqbs"
[     6.360] (II) Loading /usr/lib/xorg/modules/drivers/dummyqbs_drv.so
[     6.360] (EE) Failed to load /usr/lib/xorg/modules/drivers/dummyqbs_drv.so: /usr/lib/xorg/modules/drivers/dummyqbs_drv.so: undefined symbol: fbScreenInit
[     6.360] (II) UnloadModule: "dummyqbs"
[     6.360] (II) Unloading dummyqbs
[     6.360] (EE) Failed to load module "dummyqbs" (loader failed, 7)
[     6.360] (II) LoadModule: "qubes"
[     6.360] (II) Loading /usr/lib/xorg/modules/drivers/qubes_drv.so

Related issues:

@ptitdoc

This comment has been minimized.

Show comment
Hide comment
@ptitdoc

ptitdoc Sep 14, 2017

This can be fixed by forcing Xorg to load libfb.
For instance, by adding the following to the beginning of the file /etc/X11/xorg-qubes.conf.template:

Section "Module"
  Load "libfb.so"
EndSection

However, I have no hints why Xorg stopped loading this module automatically.

ptitdoc commented Sep 14, 2017

This can be fixed by forcing Xorg to load libfb.
For instance, by adding the following to the beginning of the file /etc/X11/xorg-qubes.conf.template:

Section "Module"
  Load "libfb.so"
EndSection

However, I have no hints why Xorg stopped loading this module automatically.

@ptitdoc

This comment has been minimized.

Show comment
Hide comment
@ptitdoc

ptitdoc Sep 14, 2017

If I check on a system before updating, in Xorg logs, libfb.so is loaded after dummyqbs_drv.so however if I check the .so file (nm -C libfb.so), libfb exports fbScreenInit.

If I check on a system after the update, in Xorg logs, dummyqbs_drv.so is loaded immediatly after glx and fail to load because of undefined symbol: fbScreenInit. If I check nm -C libfb.so, it exports fbScreenInit.

ptitdoc commented Sep 14, 2017

If I check on a system before updating, in Xorg logs, libfb.so is loaded after dummyqbs_drv.so however if I check the .so file (nm -C libfb.so), libfb exports fbScreenInit.

If I check on a system after the update, in Xorg logs, dummyqbs_drv.so is loaded immediatly after glx and fail to load because of undefined symbol: fbScreenInit. If I check nm -C libfb.so, it exports fbScreenInit.

@ptitdoc

This comment has been minimized.

Show comment
Hide comment
@ptitdoc

ptitdoc Sep 14, 2017

Do anyone see problems enforcing libfb.so loading into xorg-qubes.conf.template ? This could fix future issues with other OSes... or not...

ptitdoc commented Sep 14, 2017

Do anyone see problems enforcing libfb.so loading into xorg-qubes.conf.template ? This could fix future issues with other OSes... or not...

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Sep 14, 2017

Member

Since we don't have diverse X configurations to support there, loading libfb.so explicitly is ok.
I assume, you've already tried rebuilding gui-agent (with current Xorg headers and libs), right?

Member

marmarek commented Sep 14, 2017

Since we don't have diverse X configurations to support there, loading libfb.so explicitly is ok.
I assume, you've already tried rebuilding gui-agent (with current Xorg headers and libs), right?

@ptitdoc

This comment has been minimized.

Show comment
Hide comment
@ptitdoc

ptitdoc Sep 15, 2017

I tried to build the gui-agent twice, using the qubes builder. Additionnally, I think that loading a module built with an old Xorg server version in a new Xorg server will raise version mismatch errors (there is however an option in xorg config to accept version mismatch errors).

Anyway, I checked during 1 hour without finding the potential cause. This also could be an Xorg driver loader bug.

One strange thing however is that before this bug, the modules where loaded in the wrong order, without raising any undefined symbol errors.

ptitdoc commented Sep 15, 2017

I tried to build the gui-agent twice, using the qubes builder. Additionnally, I think that loading a module built with an old Xorg server version in a new Xorg server will raise version mismatch errors (there is however an option in xorg config to accept version mismatch errors).

Anyway, I checked during 1 hour without finding the potential cause. This also could be an Xorg driver loader bug.

One strange thing however is that before this bug, the modules where loaded in the wrong order, without raising any undefined symbol errors.

ptitdoc pushed a commit to ptitdoc/qubes-gui-agent-linux that referenced this issue Sep 16, 2017

Olivier MEDOC
xorg: ensure libfb.so is loaded before dummyqbs_drv.so (Issue #3093)
Add module loading directive for libfb.so in Xorg configuration file template (QubesOS/qubes-issues#3093)

marmarek added a commit to QubesOS/qubes-gui-agent-linux that referenced this issue Sep 19, 2017

Merge remote-tracking branch 'qubesos/pr/17' into release3.2
* qubesos/pr/17:
  xorg: ensure libfb.so is loaded before dummyqbs_drv.so (Issue #3093)

Fixes QubesOS/qubes-issues#3093

marmarek added a commit to marmarek/old-qubes-gui-agent-linux that referenced this issue Sep 25, 2017

Use X module name, not filename
Both works, but Xorg complains that the filename syntax is deprecated.

QubesOS/qubes-issues#3093
@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 26, 2017

Automated announcement from builder-github

The package qubes-gui-agent_4.0.4-1+deb8u1 has been pushed to the r4.0 testing repository for the Debian jessie template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing jessie-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_4.0.4-1+deb8u1 has been pushed to the r4.0 testing repository for the Debian jessie template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing jessie-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot qubesos-bot referenced this issue in QubesOS/updates-status Sep 26, 2017

Closed

gui-agent-linux v4.0.4 (r4.0) #236

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 26, 2017

Automated announcement from builder-github

The package qubes-gui-agent_4.0.4-1+deb9u1 has been pushed to the r4.0 testing repository for the Debian stretch template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing stretch-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_4.0.4-1+deb9u1 has been pushed to the r4.0 testing repository for the Debian stretch template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing stretch-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 26, 2017

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.4-1.fc24 has been pushed to the r4.0 testing repository for the Fedora fc24 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r4.0-current-testing

Changes included in this update

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.4-1.fc24 has been pushed to the r4.0 testing repository for the Fedora fc24 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r4.0-current-testing

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 26, 2017

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.4-1.fc25 has been pushed to the r4.0 testing repository for the Fedora fc25 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r4.0-current-testing

Changes included in this update

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.4-1.fc25 has been pushed to the r4.0 testing repository for the Fedora fc25 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r4.0-current-testing

Changes included in this update

marmarek added a commit to QubesOS/qubes-gui-agent-linux that referenced this issue Sep 29, 2017

Use X module name, not filename
Both works, but Xorg complains that the filename syntax is deprecated.

QubesOS/qubes-issues#3093

(cherry picked from commit b6c620f)
@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 29, 2017

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb8u1 has been pushed to the r3.2 testing repository for the Debian jessie template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing jessie-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb8u1 has been pushed to the r3.2 testing repository for the Debian jessie template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing jessie-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot qubesos-bot referenced this issue in QubesOS/updates-status Sep 29, 2017

Closed

gui-agent-linux v3.2.18 (r3.2) #241

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 29, 2017

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb9u1 has been pushed to the r3.2 testing repository for the Debian stretch template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing stretch-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb9u1 has been pushed to the r3.2 testing repository for the Debian stretch template.
To test this update, first enable the testing repository in /etc/apt/sources.list.d/qubes-*.list by uncommenting the line containing stretch-testing, then use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 29, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc23 has been pushed to the r3.2 testing repository for the Fedora fc23 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc23 has been pushed to the r3.2 testing repository for the Fedora fc23 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 29, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc24 has been pushed to the r3.2 testing repository for the Fedora fc24 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc24 has been pushed to the r3.2 testing repository for the Fedora fc24 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 29, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc25 has been pushed to the r3.2 testing repository for the Fedora fc25 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc25 has been pushed to the r3.2 testing repository for the Fedora fc25 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Sep 29, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc26 has been pushed to the r3.2 testing repository for the Fedora fc26 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc26 has been pushed to the r3.2 testing repository for the Fedora fc26 template.
To test this update, please install it with the following command:

sudo yum update --enablerepo=qubes-vm-r3.2-current-testing

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc23 has been pushed to the r3.2 stable repository for the Fedora fc23 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc23 has been pushed to the r3.2 stable repository for the Fedora fc23 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb8u1 has been pushed to the r3.2 stable repository for the Debian jessie template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb8u1 has been pushed to the r3.2 stable repository for the Debian jessie template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc24 has been pushed to the r3.2 stable repository for the Fedora fc24 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc24 has been pushed to the r3.2 stable repository for the Fedora fc24 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb9u1 has been pushed to the r3.2 stable repository for the Debian stretch template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_3.2.18-1+deb9u1 has been pushed to the r3.2 stable repository for the Debian stretch template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc25 has been pushed to the r3.2 stable repository for the Fedora fc25 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-vm-3.2.18-1.fc25 has been pushed to the r3.2 stable repository for the Fedora fc25 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.5-1.fc24 has been pushed to the r4.0 stable repository for the Fedora fc24 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.5-1.fc24 has been pushed to the r4.0 stable repository for the Fedora fc24 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.5-1.fc25 has been pushed to the r4.0 stable repository for the Fedora fc25 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

Automated announcement from builder-github

The package pulseaudio-qubes-4.0.5-1.fc25 has been pushed to the r4.0 stable repository for the Fedora fc25 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-agent_4.0.5-1+deb8u1 has been pushed to the r4.0 stable repository for the Debian jessie template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_4.0.5-1+deb8u1 has been pushed to the r4.0 stable repository for the Debian jessie template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot

This comment has been minimized.

Show comment
Hide comment
@qubesos-bot

qubesos-bot Oct 17, 2017

Automated announcement from builder-github

The package qubes-gui-agent_4.0.5-1+deb9u1 has been pushed to the r4.0 stable repository for the Debian stretch template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Automated announcement from builder-github

The package qubes-gui-agent_4.0.5-1+deb9u1 has been pushed to the r4.0 stable repository for the Debian stretch template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment