You are not logged in.

#1 2016-06-13 04:51:05

nbd
Member
Registered: 2014-08-04
Posts: 389

[SOLVED] After switching to x86_64, video mode is not correct

Greetings!

After migrating i686 installation to x86_64, the console video mode is not set anymore to the best resolution after booting.

I have a 1280x1024 monitor and a SiS videocard. After booting, the resolution in X mode is set correctly, and in console mode it is set, depending on different settings, either to 1024x768 (then X works OK) or to 1280x1024, but X mode then is slow and has visual glitches. On i686 - both modes were set and worked correctly.

On i686 Arch was started with the following grub menu entry:

menuentry "Arch" --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=1280x1024x32
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd2,msdos2)'
	echo 'Loading Linux...'
	linux /boot/vmlinuz-linux root=/dev/sdf2
	echo 'Loading initial ramfs...'
	initrd /boot/initramfs-linux.img
}

On x86_64 these settings give the correct console resolution, bit cause glitches in X mode.

When the following settings are used:

menuentry "Arch" --class gnu-linux --class gnu --class os {
	set root='(hd2,msdos2)'
	echo 'Loading Linux...'
	linux /boot/vmlinuz-linux root=/dev/sdf2
	echo 'Loading initial ramfs...'
	initrd /boot/initramfs-linux.img
}

The X works OK, but the console is set to 1024x768 mode.

On both i686 and x86_64 I have the following video driver and videcard:

[root@kw al]# pacman -Qs xf86-video
local/xf86-video-vesa 2.3.4-2 (xorg-drivers xorg)
    X.org vesa video driver
[root@kw al]# lspci | grep VGA
01:00.0 VGA compatible controller: Silicon Integrated Systems [SiS] 661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter (rev 04)
[root@kw al]# 

I tried xf86-video-sis, but it produces segfault on "X :0 -configure".

The /etc/default/grub is the following:

GRUB_DEFAULT="Arch Linux 64"
GRUB_TIMEOUT=15
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable Hidden Menu, and optionally hide the timeout count
#GRUB_HIDDEN_TIMEOUT=5
#GRUB_HIDDEN_TIMEOUT_QUIET=true

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=auto
GRUB_GFXMODE=1280x1024x32

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter 
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx" 
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper 
# modes only.  Entries specified as foreground/background.
#GRUB_COLOR_NORMAL="light-blue/black"
#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
GRUB_BACKGROUND="/home/al/tmp/grub_mb/grub_mb.png"
#GRUB_THEME="/home/al/tmp/grub_mb/theme.txt"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"

#GRUB_SAVEDEFAULT="true"

Could someone advise what boot settings should be used for 1280x1024 console mode without glitches in X mode?

Last edited by nbd (2016-06-14 21:09:27)


bing different

Offline

#2 2016-06-13 05:47:48

alex.theoto
Member
From: Athens Greece
Registered: 2014-11-30
Posts: 307

Re: [SOLVED] After switching to x86_64, video mode is not correct

https://wiki.archlinux.org/index.php/SiS

When you say 'migrating' do you mean you switched architectures without fresh install? This will not work.

Last edited by alex.theoto (2016-06-13 06:17:44)

Offline

#3 2016-06-13 07:47:00

nbd
Member
Registered: 2014-08-04
Posts: 389

Re: [SOLVED] After switching to x86_64, video mode is not correct

Unfortunately all of the three sis drivers listed on the wiki page failed even to start X in my case.

sis and sisusb drivers segfaulted during 'X :0 -configure'

sisimedia during 'X :0 -configure' produced an error "Number of created screens doesn't match number of detected devices."

Manually copying the recommended settings from that page to /etc/X11/xorg.conf didn't help: 'startx' failed with all three drivers.

It probably should be mentioned, that vesa driver works just fine on x86_64, including handling desktop compositing effects on XFCE, when the console is in 1024x768 mode. And on i686 vesa worked OK even when console was in 1280x1024 mode.

P.S. By 'migrating' I meant reinstalling the installation on new architecture accordingly to "Migrating between architectures" wiki page.


bing different

Offline

#4 2016-06-13 08:58:10

alex.theoto
Member
From: Athens Greece
Registered: 2014-11-30
Posts: 307

Re: [SOLVED] After switching to x86_64, video mode is not correct

I'm not sure but wiki might be old.
Maybe if you remove any .conf you set on Xorg and let X start and config your driver automatically can help.

I haven't this card... Maybe someone else can help.

EDIT:
Please post your X.log to see what is happening.

EDIT 2:
When I say to config your X, I mean to just run startx without any configs.

Last edited by alex.theoto (2016-06-13 09:13:07)

Offline

#5 2016-06-13 12:40:43

nbd
Member
Registered: 2014-08-04
Posts: 389

Re: [SOLVED] After switching to x86_64, video mode is not correct

I deleted /etc/X11/xorg.conf, installed xf86-video-sis and rebooted. After booting to shell, I typed 'startx' and got an X session with terrible visual artefacts. The Xorg.0.log is here: http://pastebin.com/VX8uCH0x

EDIT: When I uninstalled sis driver, and installed sisusb, X session didn't started at all. Xorg.log here: http://pastebin.com/3uDY4Lcr

Last edited by nbd (2016-06-13 12:56:00)


bing different

Offline

#6 2016-06-13 13:37:09

alex.theoto
Member
From: Athens Greece
Registered: 2014-11-30
Posts: 307

Re: [SOLVED] After switching to x86_64, video mode is not correct

On grub remove the line

GRUB_GFXMODE=1280x1024x32

(That's not a big deal but to clear the area for nvidia cards)

Give us a screenshot to see your desktop.
Is sis-agp module enabled?
Looks like sisusb will not work. Try only sis.

Offline

#7 2016-06-13 13:46:28

nbd
Member
Registered: 2014-08-04
Posts: 389

Re: [SOLVED] After switching to x86_64, video mode is not correct

I think that Xorg log for vesa driver can clear up the situation for knowledgeable in video hardware. Here is the log for xf86-video-vesa with the line

set gfxpayload=1280x1024

in grub.cfg. With this line the console is in 1280x1024 mode, but X session is very slow and with visual artefacts.

The log is here: http://pastebin.com/3waPfDBW


bing different

Offline

#8 2016-06-13 16:48:30

alex.theoto
Member
From: Athens Greece
Registered: 2014-11-30
Posts: 307

Re: [SOLVED] After switching to x86_64, video mode is not correct

I'm wonder why you have problem on 64bit while you didn't have any problem on i386 with the same hardware.
How old is your computer and gpu?
Give us:

lscpu
lspci -vv

Last edited by alex.theoto (2016-06-13 16:49:58)

Offline

#9 2016-06-14 07:20:45

nbd
Member
Registered: 2014-08-04
Posts: 389

Re: [SOLVED] After switching to x86_64, video mode is not correct

alex.theoto wrote:

Please post your X.log to see what is happening.

I wonder, did the logs I posted shed some light on the possible cause of the problem?


bing different

Offline

#10 2016-06-14 09:20:22

beroal
Member
From: Ukraine
Registered: 2009-06-07
Posts: 325
Website

Re: [SOLVED] After switching to x86_64, video mode is not correct

nbd wrote:

I deleted /etc/X11/xorg.conf, installed xf86-video-sis and rebooted. After booting to shell, I typed 'startx' and got an X session with terrible visual artefacts. The Xorg.0.log is here: http://pastebin.com/VX8uCH0x

EDIT: When I uninstalled sis driver, and installed sisusb, X session didn't started at all. Xorg.log here: http://pastebin.com/3uDY4Lcr

Well, to instruct Xorg to use an alternative driver, you need to write 'Driver "$DRIVER"' in the "Device" section of "xorg.conf", so you need "xorg.conf".

sisusb is an Xorg driver for SiS (Silicon Integrated Systems) video chips that are connected via a Net2280-based USB dongle.

Do you have a Net2280-based USB dongle?

The wiki page for SiS is quite elaborated. Maybe you need some of parameters they tell about in "xorg.conf". Create "xorg.conf" manually.


we are not condemned to write ugly code

Offline

#11 2016-06-14 09:35:57

beroal
Member
From: Ukraine
Registered: 2009-06-07
Posts: 325
Website

Re: [SOLVED] After switching to x86_64, video mode is not correct

alex.theoto wrote:

How old is your computer and gpu?

Cards from Silicon Integrated Systems (SIS) are a frequent topic for discussion in Ubuntuforums. They were popular around 2001-5, and many of these computers are still suitable for light use.

source :-)


we are not condemned to write ugly code

Offline

#12 2016-06-14 10:00:55

nbd
Member
Registered: 2014-08-04
Posts: 389

Re: [SOLVED] After switching to x86_64, video mode is not correct

beroal wrote:

Well, to instruct Xorg to use an alternative driver, you need to write 'Driver "$DRIVER"' in the "Device" section of "xorg.conf", so you need "xorg.conf".

All drivers I tested not as alternate ones, but as the only drivers on the system (previous ones were uninstalled). Xorg.0.log shows that they are detected OK even without xorg.conf.

I think the matter is not in hardware, because with vesa driver X works OK even with heavy compositing desktop in XFCE. I tend to think that the correct grub arguments are needed or some tweaking of xorg.conf. But xorg.conf from wiki doesn't work. (Wiki for SiS is marked as partially outdated since it makes references to init startup details.)

EDIT:

Without xorg.conf, X with sis driver starts, but with heavy visual artefacts.

When the xorg.conf from wiki is used (and its variations with various lines commented out) the problem is the following line from Xorg.0.log:

unable to map FB aperture. invalid argument (22)
ERROR:
SiSMapMem() failed
END OF MESSAGE

Fragment of xorg.log:

[    61.659] (II) Loading /usr/lib/xorg/modules/libfb.so
[    61.699] (II) Module fb: vendor="X.Org Foundation"
[    61.699] 	compiled for 1.18.3, module version = 1.0.0
[    61.699] 	ABI class: X.Org ANSI C Emulation, version 0.4
[    61.700] (II) Loading sub module "exa"
[    61.700] (II) LoadModule: "exa"
[    61.700] (II) Loading /usr/lib/xorg/modules/libexa.so
[    61.710] (II) Module exa: vendor="X.Org Foundation"
[    61.710] 	compiled for 1.18.3, module version = 2.6.0
[    61.710] 	ABI class: X.Org Video Driver, version 20.0
[    61.710] (--) Depth 24 pixmap format is 32 bpp
[    61.710] (II) Loading sub module "vbe"
[    61.710] (II) LoadModule: "vbe"
[    61.710] (II) Loading /usr/lib/xorg/modules/libvbe.so
[    61.719] (II) Module vbe: vendor="X.Org Foundation"
[    61.719] 	compiled for 1.18.3, module version = 1.1.0
[    61.719] 	ABI class: X.Org Video Driver, version 20.0
[    61.719] (II) Loading sub module "int10"
[    61.719] (II) LoadModule: "int10"
[    61.719] (II) Loading /usr/lib/xorg/modules/libint10.so
[    61.733] (II) Module int10: vendor="X.Org Foundation"
[    61.733] 	compiled for 1.18.3, module version = 1.0.0
[    61.733] 	ABI class: X.Org Video Driver, version 20.0
[    61.733] (II) SIS(0): initializing int10
[    61.755] (II) SIS(0): Primary V_BIOS segment is: 0xc000
[    61.761] (II) SIS(0): VESA BIOS detected
[    61.761] (II) SIS(0): VESA VBE Version 3.0
[    61.761] (II) SIS(0): VESA VBE Total Mem: 32768 kB
[    61.761] (II) SIS(0): VESA VBE OEM: SiS
[    61.761] (II) SIS(0): VESA VBE OEM Software Rev: 1.0
[    61.761] (II) SIS(0): VESA VBE OEM Vendor: Silicon Integrated Systems Corp.
[    61.761] (II) SIS(0): VESA VBE OEM Product: 6330
[    61.761] (II) SIS(0): VESA VBE OEM Product Rev: 3.72.10
[    61.761] (EE) SIS(0): Unable to map FB aperture. Invalid argument (22)
[    61.761] (EE) SIS(0): **************************************************
[    61.761] (EE) SIS(0):                       ERROR:
[    61.761] (EE) SIS(0): SiSMapMem() failed
[    61.761] (EE) SIS(0):                   END OF MESSAGE
[    61.761] (EE) SIS(0): **************************************************
[    61.761] (EE) 
Fatal server error:
[    61.761] (EE) AddScreen/ScreenInit failed for driver 0
[    61.761] (EE) 
[    61.761] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[    61.761] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    61.762] (EE) 
[    62.041] (EE) Server terminated with error (1). Closing log file.

How can it be corrected?

Last edited by nbd (2016-06-14 12:06:54)


bing different

Offline

#13 2016-06-14 21:08:23

nbd
Member
Registered: 2014-08-04
Posts: 389

Re: [SOLVED] After switching to x86_64, video mode is not correct

Well, that seems rather strange, but installing linux-lts 4.1 kernel solved the problem.


bing different

Offline

Board footer

Powered by FluxBB