Ask Klaus!

Ask Klaus!

Article from Issue 106/2009

xorg 7.4 Upgrade Problems

Question:

I recently tried upgrading the xserver-xorg-* graphics server and drivers from Debian/unstable and noticed that the Intel (i810/i915) driver has changed. With my old xorg.conf, I get dropped to the text console instead of starting X, and when removing /etc/X11/xorg.conf, as recommended in some forums, I get unacceptably slow performance when running fast games or 3D apps. Should I wait until xorg 7.4 is more mature?

Answer:

Some essential changes took place in xorg 7.4, especially concerning default options of chipset drivers. In theory, /etc/X11/xorg.conf can be deleted, and xorg 7.4 should still use a valid default configuration and find the best match for chipset and options. The Xorg server does this by inspecting the chipset-specific modules in /usr/lib/xorg/modules/drivers/*.so one by one and comparing their proposed PCI vendor/device IDs to those found in your system. Even better: Input devices such as keyboard and mice are added to the configuration during run time by HAL (Hardware Abstraction Layer), so you should not have to worry about reconfiguring xorg.conf and restarting X when adding a new mouse or graphics tablet.

Now for the things that can go wrong:

  1. The chipset drivers are not loaded for probing the hardware and not necessarily in the best sequence, which can lead to, for example, a newer Radeon HD chipset (radeonhd driver module) being detected as only a "VESA-compatible card" (vesa driver).
  2. Duplicate detection of keyboards and mice can occur with multiple configurations whenever the HAL daemon detects a new device. Although this usually does not lock up keyboards or mice (just puts an error message in /var/log/Xorg.0.log), it could result in a touchpad with scrolling disabled.
  3. With a missing xorg.conf, some of the not-yet-completed features of xorg 7.4, which might be masked out by additional options, could lead to failures in starting X.

For these reasons, I would continue using /etc/X11/xorg.conf from the old v.7.3 installation, even in v.7.4, and streamline some configuration sections.In the chipset-specific Device section, the Driver line could be missing, which is autodetected correctly in most cases and makes xorg.conf more flexible in working with different graphics adapters. However, for some cards, chipset autodetection fails, and you might have to add the Driver line to get the accelerated driver instead of the default, vesa or fbdev.

Also, because xorg 7.4 is a work in progress, you might need to temporarily (until it's fixed upstream) disable some acceleration options and explicitly enable others to take advantage of the new driver architecture. Listing 1 is my xorg.conf Device entry for the Eee PC 701 Intel graphics chipset, which works with acceleration and the Compiz Fusion 3D window manager.

Listing 1

xorg.conf Device Section

01 Section "Device"
02   Identifier  "Intel Mobile 915GM/GMS/910GML Graphics Controller"
03   Driver          "intel"
04
05   # This is for compiz. " Option "AIGLX" should default to
06   # "true" in xorg 7.4, but it should not hurt to also set
07   # it in the ServerLayout section anyways.
08   Option "TripleBuffer" "true"
09   Option "AddARGBGLXVisuals" "true"
10   Option "AddARGBVisuals" "true"
11   Option "DisableGLXRootClipping" "true"
12   Option "AllowGLXWithComposite" "true"
13   Option "XaaNoOffscreenPixmaps" "true"
14   Option "EnablePageFlip" "on"
15
16   # New, for xorg 7.4
17   Option "AccelMethod" "UXA"
18   Option "Tiling" "no"
19   Option "DRI" "true"
20   Option "Legacy3D" "false"
21
22 EndSection

"Tiling" (accelerated drawing with small blocks), which is recommended in the xorg man page, did not work in the Debian/unstable xorg when I wrote this. Turning tiling off and setting "Legacy3D" to "false" gave me back the graphics performance of xorg 7.3 for the Intel chipset and even a little higher frame rate in glxgears than I had before upgrading. But another problem – the Knoppix default color depth of 16 bits (64K colors) – failed to work with Compiz in xorg 7.4, so I had to remove the "DefaultDepth" line in the "Screen" section, which can be removed completely because of resolution autodetection in xorg 7.4:

Section "Screen"
   Identifier "Default Screen"
   ...
#  Removed. Rely on xorg for choosing the right color depth (24) now.
#  DefaultDepth 24
   SubSection "Display"
     Virtual 2048 2048
   EndSubSection
   ...
EndSection

Virtual 2048 2048 lets you reserve enough space to extend your desktop across a total of 2048x2048 pixels, which is currently the maximum for the xorg Intel driver. If you plan to use Xinerama to spawn your desktop across two or more monitors or increase screen resolution on the fly with XRandR, adding this option reserves the necessary graphics memory.

To address the problem of xorg allocating keyboard and mice multiple times, thus configuring touchpads incorrectly, you can disable the autodetection feature

Section "ServerFlags"
  ...
  # Do NOT probe for, and add new input devices.
  Option "AutoAddDevices" "off"
EndSection

thus keeping your old xorg 7.3 keyboard and mouse settings intact.

Dual-Head and Multi-Head Again

Question:

I tried everything I found on the Internet for getting a dual-head monitor configuration to work, but failed. Is it really that complicated to have a desktop with a monitor for the left half and one for the right half?

Answer:

From a technical point of view, we demand a lot from graphics soft- and hardware to map a more or less contiguous graphical area onto two different output devices that can even have different hardware settings. In one of my earlier columns, I talked about a dual-head (two-monitor) configuration in /etc/X11/xorg.conf. Now, with xorg 7.4 vs. 7.3, some things are different (easier or more complex) and some just don't work anymore.

Here's an easy multiple-monitor configuration that requires a recent xorg 7.3 or 7.4 installation, wherein you can add a number of monitors, up to the number of physical independent output connectors, and put parts of the desktop on top of each other or side by side.

Parts of the xorg 7.3/7.4 server now allow changing resolution and geometry on request, without the need to restart the X server. This feature is called "RandR", and starting with xorg 7.3, it is automatically activated unless the chipset driver does not support it (xserver-xorg-video-vesa doesn't) or it is turned off with

Option "RandR" "false"

in the "ServerFlags" section of /etc/X11/xorg.conf. For the commands that follow it to work, it should be turned on.

Usually, you need to specify two Monitor, two Screen, and two Driver sections in xorg.conf to tell xorg how to display something on two output devices. However, the randr module can do this without modifying xorg.conf, once you describe the desired geometry with a front-end program like xrandr. To set up a dual-screen configuration on a notebook, with the left half of the screen on the internal display (LVDS) and the right half on an external monitor connected via the VGA socket, enter:

xrandr --output VGA --right-of LVDS

For both monitors, it might be necessary to specify the resolution(s) explicitly

xrandr --output LVDS --mode 1024x768 --output VGA --mode 1024x768 --right-of LVDS

especially when the total desktop size is limited by the maximum virtual resolution of the chipset drivers, as is the case with the Intel driver, which has a maximum of 2048 pixels both vertically and horizontally.

For both KDE and Gnome, an lxde and compiz >= 0.8 should immediately switch to the new resolution and handle maximizing applications correctly. With the mouse, you can move a window from the left to the right monitor and vice versa. This mode is the RandR variant of "Xinerama", which in theory can handle different settings for both monitors, but to be on the safe side, I would recommend starting with the same resolution on both monitors.

By starting xrandr with no options, you can get an overview of the device connector names and possible resolutions. Instead of --right-of, as given in this example, you can use --left-of, --above, and --below.

Some distributions have adopted this feature already in their desktop-specific display setup tools, so the multi-head setting can be set permanently and is started just after, or even before, logging in to the graphical desktop.

Waiting on Linux

Question:

I keep hoping and trusting that sometime soon Linux will become friendly. I bought the current Linux Magazine with Mint 6 "Felicia" and tried to install it on an external disk. But it won't let me choose the disk. It insists on using my C drive. I want to use the external drive. I've tried to follow the directions for creating a bootup pen drive. Not a hope. I want to get away from Windows, but I'm stuck with it unless someone somewhere does a plain, simple, point-and-click version of Linux that reads all drives, gives options for installing to whichever one I choose, gives me a decent detailed substitute for MS Office(that includes all features), and doesn't tie me to Firefox.

This latter is most important. The Firefox upgrade in Windows suddenly installs (unbidden and unasked) Search.exe, which maps everything I do on the Internet in my research and sends it back to some parasite programmer in New York. Zone Alarm alerted me as it tried to access the Internet, and I didn't recognize it. Thought I'd uninstalled it and when I clicked on file folders for My documents and Downloads on my desktop, it tried installing it all over again. Took me ages to locate all the links, clean the registry, etc. Now I'm stuck with Firefox and I haven't any idea how to prevent that happening under Linux.

How do I install Linux under a virtual machine in Windows so that I can at least have my Zone Alarm monitor net activity and hopefully stop stuff downloading to my machine? As you can see, I'm totally fed up with Linux but am insisting on trying to get it to work for me. Any advice you can give, even easy-to-read HowTo documents, would be most welcome.

Answer:

Provided that you really want to use an operating system that's different from Windows, works differently, has different native applications, and will improve your work with the computer, and you are not just looking for "a better Windows," GNU/Linux is in my opinion a good choice for you.

Installation and configuration issues. Most computer users do not install operating system and base applications on their own because today's users are less technologically oriented and just "want to do real work."

However, for a decent installation that works for you, unless you are really interested in the underlying technology, you should just hire someone to install a system that fits your needs. When buying a Windows-based installation, you would do this because you don't want to compile drivers or install things you don't know about on your own. Why should it be different for GNU/Linux? Comparing a preinstalled, vendor-optimized Windows installation with a Linux System installed by a non-expert is not a very fair comparison, in my opinion, although I think that installing an operating system on your own is easier with a Linux-based installation than with Windows.

Not able to chose an external disk drive in the Linux installer. This can simply be caused by (a) the installation program not supporting the external controller (unlikely); (b) the installer program thinking you will not be able to boot from external media unless you install a different bootloader on the primary boot device (C: in Windows language); (c) external media that are unsuitable (formatted with a wrong filesystem, bad partition table, etc.).

Therefore, the installer might not even show you the option to install on an external device. A Linux expert could show you how to install inside a virtual environment, transfer a system to external media, or both, but from what you said, I think you could do the installation inside a virtual machine from Windows. But that does not solve the securityissues you mentioned.

OpenOffice vs. Microsoft Office. If you primarily work with Microsoft's proprietary formats, then Microsoft Office is more compatible. Really. I'm not trying to push you into using an office suite you don't like.

PowerPoint presentations just look better in PowerPoint than in OpenOffice, and OpenOffice presentations look best in OpenOffice.

On the other hand, I don't think that OpenOffice's presenter is too bad. I wonder what feature you are missing or what problem you encountered. Just do all of your graphics and text work inside other OpenOffice components (e.g., adding a graph chart that you created as an OpenOffice spreadsheet object) then drag and drop between applications. OpenOffice has a vast repository of supporting clip art libraries and elements, as well as some export and import features that are completely unmatched by Microsoft Office. Maybe it's just a matter of getting used to it?

If your documents rely on Microsoft fonts, you can install them in OpenOffice under Linux. However, I find the available free fonts for various distributions absolutely sufficient and professional looking.

Firefox doing strange things. Although I'm not a Windows expert, I am not aware of Firefox installing EXE modules that change your operating system's internals to send data to someone in New York. Maybe you have a trojan-infected version from a third party, which could be related to the software you used to download the Firefox installer. However, you don't have to use Firefox under Linux if you don't want to. More than eight browsers are available for each GNU/Linux distribution.

Some desktops come with their own internal file and web browser, such as Konqueror in KDE, and you can even use Microsoft Internet Explorer in the Windows API environment (Wine) under Linux (although you will probably have to spend another Windows License for supporting libraries). However, you do not gain much of a security advantage running IE under Linux vs. Windows.

Running Linux inside a virtualization under Windows. Absolutely possible. Just start the installation disc for the virtualization software you prefer and create a virtual hard disk image that is large enough for a pretty complete desktop install (e.g., 15-20GB).

Running GNU/Linux under Windows makes it possible to use thousands of free software programs and products that are unmatched under Windows. However, your computer is still vulnerable to Windows viruses and trojans, even when running Linux applications inside. If the host system running Windows and connected to the Internet is already compromised and infected, even your installed security software won't be able to detect malware reliably anymore, and running Linux as a virtualized system does not help against this either.

Summary: I would recommend buying a computer with GNU/Linux pre-installed by someone who configured the system on your behalf, just the way you want it. If you just want to do work without learning the in-depth knowledge required to customize a computer system yourself, don't hesitate to let an expert help you with the installation.

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Command Line: Editing xorg.conf

    Understanding xorg.conf makes it easy to tweak your graphical display setup.

  • ASK KLAUS!

    Klaus Knopper is the creator of Knoppix and co-founder of the LinuxTag expo. He currently works as a teacher, programmer, and consultant. If you hav a configuration problem, or if you just want to learn more about how Linux works, send your questions to: klaus@linux-magazine.com

  • Ask Klaus!
  • Ubuntu 9.04: New Intel Graphics Drivers

    There is hope for Ubuntu users with Intel graphics. As it appears, the current 2D drivers solve most of the recent graphics problems with Intel chips, according to Ubuntu developer Bryce Harrington in a developer mailing list. Jaunty users should profit it from them as well.

  • Ubuntu 9.04 Enters Beta

    The Ubuntu 9.04 beta brings along with it a few obvious changes in the GUI and fixes the ext4 filesystem bug that could count among its new features.

comments powered by Disqus

Direct Download

Read full article as PDF:

News