Changing driver into modesetting
I have previously used a couple of Linux distros; before Ubuntu, I mainly used Linux Mint. I used the instructions on THIS site to get my Mint sped up.
So, I was thinking of doing some of those things on Ubuntu according to that link. I was following the instructions on the "Improve video performance for Intel graphics" part of the article. When I tried to use modesetting instead of the default driver installed and ran the command inxi -G
I found out that the "drivers" option isn't showing intel...
Graphics: Card: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
Display Server: X.Org 1.19.3 drivers: (unloaded: fbdev,vesa)
Resolution: [email protected]
GLX Renderer: Mesa DRI Intel Haswell Desktop
GLX Version: 3.0 Mesa 17.0.7
On Mint and the other distros that I've used, this option used to show as the following:
drivers: intel(unloaded: modesetting)
So, what's going on here on Ubuntu? When I tried to uninstall outdated driver xserver-xorg-video-intel as per the instructions, I found out that I don't even have that installed!
sudo apt-get remove xserver-xorg-video-intel
[sudo] password for sakib:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'xserver-xorg-video-intel' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
This should mean that I'm already using modesetting, shouldn't it? Using the command grep modesetting /var/log/Xorg.0.log
gave me the following output:
$ grep modesetting /var/log/Xorg.0.log
[ 19.509] (==) Matched modesetting as autoconfigured driver 0
[ 19.509] (II) LoadModule: "modesetting"
[ 19.509] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[ 19.519] (II) Module modesetting: vendor="X.Org Foundation"
[ 19.532] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
The first line is valued zero, meaning that I'm not using modesetting either!
So to narrow it down, here are my questions:
- Why isn't
inxi -G
reporting any intel driver as it did in other distros? - It shows two unloaded "drivers"- fbdev, vesa; but no unloaded "modesetting" driver; this is really confusing with respect to my previous experience with Linux...
-
'xserver-xorg-video-intel'
is not installed, so what driver am I using? - I want to use "modesetting", how can I do that?
If it's any help here's my output of inxi -Fx
System: Host: apollonius Kernel: 4.10.0-28-generic x86_64 (64 bit gcc: 5.4.0)
Desktop: Unity 7.4.0 (Gtk 3.18.9-1ubuntu3.3)
Distro: Ubuntu 16.04 xenial
Machine: System: ASUS product: All Series
Mobo: ASUSTeK model: H81M-C v: Rev X.0x
Bios: American Megatrends v: 3501 date: 10/21/2016
CPU: Quad core Intel Core i5-4460 (-MCP-) cache: 6144 KB
flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 25541
clock speeds: max: 3400 MHz 1: 1345 MHz 2: 1500 MHz 3: 1559 MHz
4: 1113 MHz
Graphics: Card: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
bus-ID: 00:02.0
Display Server: X.Org 1.19.3 drivers: (unloaded: fbdev,vesa)
Resolution: [email protected]
GLX Renderer: Mesa DRI Intel Haswell Desktop
GLX Version: 3.0 Mesa 17.0.7 Direct Rendering: Yes
Audio: Card Intel 8 Series/C220 Series High Definition Audio Controller
driver: snd_hda_intel bus-ID: 00:1b.0
Sound: Advanced Linux Sound Architecture v: k4.10.0-28-generic
Network: Card: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
driver: r8169 v: 2.3LK-NAPI port: e000 bus-ID: 03:00.0
IF: enp3s0 state: up speed: 100 Mbps duplex: full
mac: f8:32:e4:9d:66:b6
Drives: HDD Total Size: 507.9GB (2.8% used)
ID-1: /dev/sda model: TOSHIBA_DT01ACA0 size: 500.1GB
ID-2: USB /dev/sdb model: USB_Flash_Drive size: 7.8GB
Partition: ID-1: / size: 113G used: 4.9G (5%) fs: ext4 dev: /dev/sda3
ID-2: swap-1 size: 8.00GB used: 0.00GB (0%) fs: swap dev: /dev/sda4
RAID: No RAID devices: /proc/mdstat, md_mod kernel module present
Sensors: System Temperatures: cpu: 29.8C mobo: 27.8C
Fan Speeds (in rpm): cpu: 0
Info: Processes: 209 Uptime: 1:56 Memory: 1226.3/7852.7MB
Init: systemd runlevel: 5 Gcc sys: 5.4.0
Client: Shell (bash 4.3.481) inxi: 2.2.35
Solution 1:
Several things are going on. First, you're using an ancient inxi, the latest inxi release is 2.3.39. While I can't say for certain, it's entirely possible there was some missing test or data in the old inxi in terms of modesetting driver display. Second, as you saw, you don't even have intel driver installed, so obviously there's no intel driver to show running or unloaded.
Given that Xorg.0.log shows the modesetting driver loaded and not unloaded, I believe this simply means you are running an ancient inxi which is failing to show the modesetting driver. There's no magic in software that targets rapidly evolving systems like GNU/Linux, it has to be updated to keep up with the changes that happen, like anything else.
To update inxi, as root (use sudo...), open /etc/inxi.conf
then change B_ALLOW_UPDATE
from 'false'
to 'true'
:
B_ALLOW_UPDATE='true'
save file, then run:
inxi -U
then as regular user try: inxi -Gxx
again, it will probably show modesetting. If not, there may be a bug.
Solution 2:
Moreover inxi
is a Perl script, what I noticed on my Ubuntu 20.04 (after a few hours of pointless debugging), this tool also gathers some info from the X.org
log file.
My version is as follows:
$ inxi --version
inxi 3.0.38-00 (2020-03-14)
By default Ubuntu keeps X.org
logs in /home/<username>/.local/share/xorg/Xorg.0.log
.
However, the script only parses /var/log/Xorg.0.log
.
I have had a situation that I had some old log in /var/log/
and the script was presenting wrong data. Thus I was misled and wasted a lot of time chasing wrong issue.
I fixed it this way:
sudo ln -s /home/<username>/.local/share/xorg/Xorg.0.log /var/log/Xorg.0.log