[xf86-video-ati-9999]Radeon HD 5650 и падение X [SOLVED (actually just figured out:)]

Мне удалось разобраться с видеокартой, но теперь возникли проблемы с KDE. Я пробовал запускать openbox, fluxbox и xfce - всё запускается нормально. У меня собрана KDE из метапакетов:

qlist -CIv kde | grep meta
kde-base/kdeaccessibility-meta-4.5.4
kde-base/kdeartwork-meta-4.5.4
kde-base/kdebase-meta-4.5.4
kde-base/kdebase-runtime-meta-4.5.4
kde-base/kdebindings-meta-4.5.4
kde-base/kdegames-meta-4.5.4
kde-base/kdegraphics-meta-4.5.4
kde-base/kdemultimedia-meta-4.5.4
kde-base/kdenetwork-meta-4.5.4
kde-base/kdepim-meta-4.4.9
kde-base/kdesdk-meta-4.5.4
kde-base/kdeutils-meta-4.5.4

Запускаю иксы с сессией KDE - всё загружается. Заставка исчезает, появляется рабочий стол и через несколько секунд иксы падают и вываливается простыня трейса примерно следующего содержания:

Jan  8 20:45:34 laptop kernel: start_kdeinit (18203): /proc/18203/oom_adj is deprecated, please use /proc/18203/oom_score_adj instead.
Jan  8 20:45:40 laptop kernel: BUG: unable to handle kernel paging request at 0000007a00000010
Jan  8 20:45:40 laptop kernel: IP: [<ffffffff8184889b>] __mutex_unlock_slowpath+0x20/0x2e
Jan  8 20:45:40 laptop kernel: PGD 1526e0067 PUD 0 
Jan  8 20:45:40 laptop kernel: Oops: 0000 [#1] SMP 
Jan  8 20:45:40 laptop kernel: last sysfs file: /sys/devices/virtual/backlight/acpi_video1/actual_brightness
Jan  8 20:45:40 laptop kernel: CPU 1 
Jan  8 20:45:40 laptop kernel: Modules linked in: i915
Jan  8 20:45:40 laptop kernel: 
Jan  8 20:45:40 laptop kernel: Pid: 18159, comm: X Not tainted 2.6.36-gentoo-r5 #9 144A/HP Pavilion dv6 Notebook PC
Jan  8 20:45:40 laptop kernel: RIP: 0010:[<ffffffff8184889b>]  [<ffffffff8184889b>] __mutex_unlock_slowpath+0x20/0x2e
Jan  8 20:45:40 laptop kernel: RSP: 0018:ffff880153e35d00  EFLAGS: 00010203
Jan  8 20:45:40 laptop kernel: RAX: 0000007a00000000 RBX: ffff88015660bc28 RCX: 0000000000000000
Jan  8 20:45:40 laptop kernel: RDX: ffff88015660bc30 RSI: ffff880153e35d88 RDI: ffff88015660bc2c
Jan  8 20:45:40 laptop kernel: RBP: 0000000000000000 R08: 0000000000000000 R09: 00000000000003ef
Jan  8 20:45:40 laptop kernel: R10: 0000000000040004 R11: 0000000000000002 R12: ffff880153e35d28
Jan  8 20:45:40 laptop kernel: R13: ffff88015660a000 R14: ffffffff81f2ce30 R15: 00000000c0206466
Jan  8 20:45:40 laptop kernel: FS:  00007f898ca60700(0000) GS:ffff880002440000(0000) knlGS:0000000000000000
Jan  8 20:45:40 laptop kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Jan  8 20:45:40 laptop kernel: CR2: 0000007a00000010 CR3: 00000001525f7000 CR4: 00000000000006e0
Jan  8 20:45:40 laptop kernel: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Jan  8 20:45:40 laptop kernel: DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Jan  8 20:45:40 laptop kernel: Process X (pid: 18159, threadinfo ffff880153e34000, task ffff880157580870)
Jan  8 20:45:40 laptop kernel: Stack:
Jan  8 20:45:40 laptop kernel: ffff88015660bc28 ffffffff8184887a ffffffff8133d859 0000000000000296
Jan  8 20:45:40 laptop kernel: <0> ffff880153e35e18 ffff880157e80088 ffff88015660a000 ffff880155d19680
Jan  8 20:45:40 laptop kernel: <0> 0000000000000002 ffff880153cfaac0 ffff88015362db80 00000007000003ef
Jan  8 20:45:40 laptop kernel: Call Trace:
Jan  8 20:45:40 laptop kernel: [<ffffffff8184887a>] ? mutex_unlock+0x12/0x13
Jan  8 20:45:40 laptop kernel: [<ffffffff8133d859>] ? radeon_cs_ioctl+0x17d/0x18d
Jan  8 20:45:40 laptop kernel: [<ffffffff8133bfb0>] ? radeon_gem_wait_idle_ioctl+0xd0/0xde
Jan  8 20:45:40 laptop kernel: [<ffffffff812ed8ef>] ? drm_ioctl+0x251/0x306
Jan  8 20:45:40 laptop kernel: [<ffffffff8133d6dc>] ? radeon_cs_ioctl+0x0/0x18d
Jan  8 20:45:40 laptop kernel: [<ffffffff81006d20>] ? __switch_to+0x248/0x26f
Jan  8 20:45:40 laptop kernel: [<ffffffff8104d833>] ? enqueue_hrtimer+0x61/0x6f
Jan  8 20:45:40 laptop kernel: [<ffffffff8109d879>] ? do_vfs_ioctl+0x450/0x48f
Jan  8 20:45:40 laptop kernel: [<ffffffff81848262>] ? schedule+0x572/0x619
Jan  8 20:45:40 laptop kernel: [<ffffffff8109d8f4>] ? sys_ioctl+0x3c/0x60
Jan  8 20:45:40 laptop kernel: [<ffffffff81007f02>] ? system_call_fastpath+0x16/0x1b
Jan  8 20:45:40 laptop kernel: Code: f0 ff 07 7f 05 e8 01 00 00 00 c3 53 48 89 fb 48 8d 7f 04 e8 b1 0f 00 00 48 8b 43 08 48 8d 53 08 c7 03 01 00 00 00 48 39 d0 74 09 <48> 8b 78 10 e8 8b 88 7e ff fe 43 04 5b c3 b8 01 00 00 00 31 d2 
Jan  8 20:45:40 laptop kernel: RIP  [<ffffffff8184889b>] __mutex_unlock_slowpath+0x20/0x2e
Jan  8 20:45:40 laptop kernel: RSP <ffff880153e35d00>
Jan  8 20:45:40 laptop kernel: CR2: 0000007a00000010
Jan  8 20:45:40 laptop kernel: ---[ end trace 69799fd684671e2c ]---
Jan  8 20:45:41 laptop kernel: [drm:drm_release] *ERROR* Device busy: 1

Помогите советом...

emerge --info в студию ;)

emerge --info в студию ;)

Вот emerge --info.

в emerge --info ничего

в emerge --info ничего криминального ;)
зато вот messages угляделсо второго раза интересные строки:

Jan  8 20:45:34 laptop kernel: start_kdeinit (18203): /proc/18203/oom_adj is deprecated, please use /proc/1820 /oom_score_adj instead.
Jan  8 20:45:40 laptop kernel: BUG: unable to handle kernel paging request at 0000007a00000010
Jan  8 20:45:40 laptop kernel: IP: [<ffffffff8184889b>] __mutex_unlock_slowpath+0x20/0x2e
Jan  8 20:45:40 laptop kernel: PGD 1526e0067 PUD 0 
Jan  8 20:45:40 laptop kernel: Oops: 0000 [#1] SMP 
Jan  8 20:45:40 laptop kernel: last sysfs file: /sys/devices/virtual/backlight/acpi_video1/actual_brightness
Jan  8 20:45:40 laptop kernel: CPU 1 
Jan  8 20:45:40 laptop kernel: Modules linked in: i915

ты что на самом деле используешь - атишку или интел? ))

На самом деле Radeon. Пере

На самом деле Radeon. Пере стартом исксов закидываю echo "DDIS" > /sys/kernel/debug/vgaswitcheroo/switch. Потом убеждаемся в этом:

laptop ~#cat /sys/kernel/debug/vgaswitcheroo/switch
0:+:Pwr:0000:01:00.0
1: :Off:0000:00:02.0
laptop ~#lspci | grep -i vga
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
01:00.0 VGA compatible controller: ATI Technologies Inc Redwood [HD 5600 Series]

Кстати, по поводу строки

Jan  8 20:45:40 laptop kernel: last sysfs file: /sys/devices/virtual/backlight/acpi_video1/actual_brightness

Это судя по всему тоже не показатель, потому что файл здесь каждый раз меняется. Вероятно просто последний файл, к которому происходило обращение в момент вылета.

А вот это

Jan  8 20:45:40 laptop kernel: Modules linked in: i915

действительно интересно и я тоже это вчера заметил. И тут сразу два но: во-первых в статье по настройке switcheroo рекомендуется вкомпилировать поддержку i915 в ядро, что я и делал, а во-вторых я попробовал отключить эту опцию - в итоге switcheroo всё-равно благополучно отработал, а в тексте ошибки была строка

Jan  8 20:45:40 laptop kernel: Modules linked in: 

т.е. просто "пустое место".

а у тебя проц какой? а то там

а у тебя проц какой? а то там еще строчка присутствует:

Jan  8 20:45:40 laptop kernel: Oops: 0000 [#1] SMP

Эм... Intel Core i5.

Эм... Intel Core i5. Извиняюсь, сейчас модель сказать не могу, но с ним проблем точно нет. В ядре всё подключено верно и определяется/работает тоже корректно - нареканий нет. Всё-таки проблема либо в крайне кривых драйверах (что маловероятно, потому что кроме *-9999 пробовал просто нестабильные - лучше не стало, а при запуске/отключении иксов возникают жесточайшие артефакты, с которыми даже без X во фреймбуфере жить невозможно), либо в ядре. Но оно собрано по мануалам для radeon и vga_switcheroo...

Прежде имел дело только с nvidia, после них слабо верится, что такие ужасные драйвера в принципе имеют место быть и находиться в портедже. Очень хотелось бы поставить проприетарные, конечно. Но со switcheroo это боюсь невозможно. Будет наука - не стоит брать HP.

Insomnium написал(а): Эм...

Insomnium написал(а):
Эм... Intel Core i5. Извиняюсь, сейчас модель сказать не могу, но с ним проблем точно нет.

я не к этому... просто иногда вместо SMT выставляют SMP на одноядерных интелах, а машина у тебя все же laptop зовется ))) мало-ли ;)

Опять не было времени. :} Все

Опять не было времени. :} Все дело в драйвере x11-drivers/xf86-video-ati-9999. Он пока слишком "сырой". С драйверами из стабильной ветки иксы не вылетают, но выдает всего 60-71 FPS. Остается ждать вменяемых драйверов/их добавления портедж. Искал в оверлеях - степень сырости везде одинаковая.

Можно сказать, что решено.

Причем этот trace валится

Причем этот trace валится каждый раз с разным сообщением. Т.е. в строке

Jan  8 20:45:40 laptop kernel: Pid: 18159, comm: X Not tainted 2.6.36-gentoo-r5 #9 144A/HP Pavilion dv6 Notebook PC

выделенное жирным каждый раз рандомное. Туда может попасть Kwin к примеру или любой другой процесс.

ну, PID процесса и должен

ну, PID процесса и должен меняться при каждом запуске ;)

Это-то понятно. Не понятно

Это-то понятно. Не понятно почему KDE стабильно падают после каждого запуска. :) Такое ощущение, как будто что-то насильно вызывает stack trace... И опять же странно, что только при запуске KDE.

//Дико извиняюсь, но сегодня уже не смогу отписать. Только утром. :\

OpenGL

Вот что я обнаружил сегодня утром. Я запустил openbox и пока рылся в логах собрал supertux. Как только в нем я выставил опцию "подключить OpenGL" - получил эту самую ошибку. Что-то не так с его поддержкой. Стоят естественно только открытые драйвера, они и отвечают за его поддержку. Драйвера нестабильные, но для моей видеокарты нужны именно они. (не просто нестабильные - live ebuilds). Интересно что с этим делать.

Запретить AIGLX.

Запретить AIGLX.

Тормозить стало немного

Тормозить стало немного меньше и при подключении OpenGL сразу не упало. Однако при попытке просмотра OpenGL'ного же скринсейвера снова вылетел с трейсом. Правда, на этот раз он не завис и вернуться в иксы удалось.

Хотелось бы ещё узнать возможно ли всё же завести проприетарные драйвера со switcheroo. Просто из-за ядерного DRM они не хотят работать, но он нужен для работы самого switcheroo. Замкнутый круг.

Ну попробуйте 37 ядро и

Ну попробуйте .37 ядро и драйвера 9999 из x11 оверлея. Может лучше будет работать.

Сейчас собираю 37-е. На

Сейчас собираю 37-е. На данный момент и так стоят 9999 из x11. Так что не думаю, что поможет. Мне бы вот как-нибудь fglrx заиметь, но судя по всему с дискретной карточкой без переключалки в биосе это невозможно. (Или нет?).

тогда не забывайте emerge

тогда не забывайте emerge @live-rebuild

Кажется, я нашел причину

Кажется, я нашел причину лагов и тормозов. Вот она, причина, на ArchLinux Wiki. Проверил - и правда:

[drm] radeon default to kernel modesetting.

Выход - отключить KMS. Но, мне кажется или сделать это тоже не получится по той же причине - требования vga_switcheroo?

Вот что у меня в конфиге:

--- Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)  
 < >   3dfx Banshee/Voodoo3+   
 < >   ATI Rage 128   
 <*>   ATI Radeon  
 [*]     Enable modesetting on radeon by default - NEW DRIVER   
 < >   Intel I810  
 <M>   Intel 830M, 845G, 852GM, 855GM, 865G 
 < >     i830 driver 
 <M>     i915 driver 
 [*]       Enable modesetting on intel by default   

Сначала добавил options radeon modeset=0 в /etc/modprobe.d/radeon.conf - никакой реакции.
Второй способ - загрузка ядра с передачей параметра radeon.modeset=0. Загрузилось всё отлично и dmesg отрапортовал, что загружен модуль radeon, и никакого ядерного KMS.
И тут снова пропал /sys/kernel/debug/vgaswitcheroo/switch. А причины/требования его появления/исчезновения мы уже выяснили раньше - вот, как говорят у нас в России, source.

Вопрос - хоть KMS-то обойти можно?

//Мыло есть, подумываю где бы найти веревку. :[

KMS обязательно надо -

KMS обязательно надо - http://en.gentoo-wiki.com/wiki/Radeon + CONFIG_EXTRA_FIRMWARE

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".