After updating to the latest pi os (bullseye lite 22-09-2022) and testing it on several pi 4Bs, I'm having an issue where the x server crashes if anything is plugged into one of the USB ports. Nothing is otherwise connected to the pi except for a DSI screen 480*800 (the issue doesn't affect HDMI) that I've been using for a few years now without issue. I tried a beefy 3A USB-C power supply and a supply through GPIO pins which made no difference. I had a friend try this himself and he had the same issue (different pi/supply/DSI-screen). The steps to reproduce the problem are very simple:

  1. I start with a clean os lite image
  2. I enable ssh and wifi
  3. sudo apt update
  4. sudo apt-get install xserver-xorg
  5. sudo apt-get install xinit
  6. I set /etc/rc.local to sudo xinit
  7. I set /root/.xinitrc to touch /home/pi/test (not required, just to confirm whether the script is executed)

That's it. If I reboot with something plugged in a USB port (keyboard, USB stick...) I get one of two errors in /var/log/Xorg.0.log:

(EE) Backtrace:
[     9.873] (EE) 0: /usr/lib/xorg/Xorg (OsLookupColor+0x188) [0x557232d438]
[     9.873] (EE) unw_get_proc_info failed: no unwind info found [-10]
[     9.873] (EE)
[     9.873] (EE)
Fatal server error:
[     9.873] (EE) Caught signal 6 (Aborted). Server aborting


[     7.441] (EE) open /dev/fb0: No such file or directory
[     7.441] (EE) No devices detected.
[     7.442] (EE)
Fatal server error:
[     7.442] (EE) no screens found(EE)
[     7.442] (EE)

If nothing is plugged in, there is no crash and the log reports that the server terminated successfully.

Any ideas of what could be happening?

2 Answers 2


I found a workaround which is to enable auto-login and move the xinit call from rc.local to .bashrc

The only downside is that xinit will be called on any login (including ssh) usually resulting in an error message but nothing more.


A much better workaround:

setting rc.local to su - root -c xinit

No idea why this is necessary as of bullseye.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.