Bug 29309 - Перестал работать fglrx после обновления.
: Перестал работать fglrx после обновления.
Status: CLOSED FIXED
: Branch p7
(All bugs in Branch p7/fglrx_glx)
: не указана
: all Linux
: P3 normal
Assigned To:
:
:
:
:
: 27685
  Show dependency tree
 
Reported: 2013-08-31 19:17 by
Modified: 2013-09-30 15:56 (History)


Attachments
journalctl -b (192.51 KB, text/plain)
2013-08-31 19:17, f546607@yandex.ru
no flags Details
xorg.0.log (23.41 KB, text/x-log)
2013-08-31 19:19, f546607@yandex.ru
no flags Details
journalctl -b 11.09.2013 (162.56 KB, text/plain)
2013-09-11 22:30, f546607@yandex.ru
no flags Details


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2013-08-31 19:17:06
Пришла новая версия fglrx вместе с обновлением. В итоге не запускается Хсервер.
------- Comment #1 From 2013-08-31 19:17:47 -------
Created an attachment (id=5925) [details]
journalctl -b
------- Comment #2 From 2013-08-31 19:19:16 -------
Created an attachment (id=5926) [details]
xorg.0.log
------- Comment #3 From 2013-09-01 12:28:48 -------
тот же fglrx с офсайта работает.
------- Comment #4 From 2013-09-02 14:18:55 -------
Попробуйте обновить ядро из p7 3 сентября или сейчас из Сизифа.
------- Comment #5 From 2013-09-03 18:09:00 -------
env LIBGL_DEBUG=1  glxinfo | grep Open
libGL error: OpenDriver: failed to open
/usr/X11R6/lib64/modules/dri/fglrx_dri.so,
error[/usr/X11R6/lib64/modules/dri/fglrx_dri.so: cannot open shared object
file: No such file or directory]
Setting of real/effective user Id to 0/0 failed
Error! Fail to load fglrx kernel module! Maybe you can switch to root user to
load kernel module directly
libGL error: open uki failed (Operation not permitted)
libGL error: reverting to (slow) indirect rendering
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: AMD Radeon HD 7700 Series 
OpenGL version string: 2.1 (4.3.12441 Compatibility Profile Context 12.104)
OpenGL shading language version string: (null)
OpenGL extensions:

Это в P7.
------- Comment #6 From 2013-09-03 18:31:46 -------
и в sisyphus тоже самое.
и еще вот это
https://bugzilla.altlinux.org/show_bug.cgi?id=29316
------- Comment #7 From 2013-09-03 19:21:12 -------
Не написал. В начале Xorg вообще не запускался.
После обновления 3го сентября запускается, но 3Д не работает. С сообщением
выше.
------- Comment #8 From 2013-09-04 11:21:47 -------
(В ответ на комментарий №7)
> Не написал. В начале Xorg вообще не запускался.
> После обновления 3го сентября запускается, но 3Д не работает. С сообщением
> выше.

Ага, то есть это две разные проблемы.. Первая была -- несоответствие модуля
ядра, а вот вторая -- видимо ошибка упаковки самого fglrx_glx...
------- Comment #9 From 2013-09-11 12:20:51 -------
а если создать /usr/X11R6/lib64/ и сдалать там ссылку на /usr/lib64/X11/modules
?
Будет работать?
------- Comment #10 From 2013-09-11 18:42:14 -------
да работает
------- Comment #11 From 2013-09-11 22:18:52 -------
В ядре led-ws работает.
А в ядре std-def...

env LIBGL_DEBUG=verbose glxgears
libGL: AtiGetClientDriverName: 13.20.5 fglrx (screen 0)
ukiDynamicMajor: failed to open /proc/ati/major
Setting of real/effective user Id to 0/0 failed
Error! Fail to load fglrx kernel module! Maybe you can switch to root user to
load kernel module directly
ukiDynamicMajor: failed to open /proc/ati/major
ukiDynamicMajor: failed to open /proc/ati/major
libGL error: open uki failed (Operation not permitted)
libGL error: reverting to (slow) indirect rendering
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
      after 21908 requests (45 known processed) with 0 events remaining.
------- Comment #12 From 2013-09-11 22:22:50 -------
вот как выглядит в std-def
ls -l /proc/ | grep ati
d---------  4 root       root                     0 сен 11 22:13 ati

если так сделать то ошибок не выдает
sudo chmod +xr /proc/ati
------- Comment #13 From 2013-09-11 22:30:23 -------
Created an attachment (id=5936) [details]
journalctl -b 11.09.2013
------- Comment #14 From 2013-09-12 00:00:43 -------
AMD почему-то убрала возможность ложить modules/dri/fglrx_dri.so в %_libdir/X11
(раьше можно было).
А положить modules/dri/fglrx_dri.so в /usr/X11R6/%_lib/ не разрешает
сборочница:

/.out/fglrx_glx-13.20.11-alt2.x86_64.rpm: FHS violations: /usr/X11R6
/usr/X11R6/lib64 /usr/X11R6/lib64/X11
sisyphus_check: check-fhs ERROR: FHS violation
hsh-rebuild: fglrx_glx-13.20.11-alt2.src.rpm: sisyphus_check failed.

Т.о. получаем deadlock.
------- Comment #15 From 2013-09-12 18:51:06 -------
(В ответ на комментарий №14)

Проблема в ядерном модуле, проявляется только в модулях для ядра >= 3.10:
неправильные пермишены для /proc/ati.

Сообщение
error[/usr/X11R6/lib64/modules/dri/fglrx_dri.so: cannot open shared object
file: No such file or directory]
только сбивает с толку. На самом деле fglrx_dri.so ищется в
/usr/X11R6/lib64/modules/dri/, /usr/lib64/modules/dri/, /usr/lib64/dri/ -
именно в таком порядке. В нашем случае находит /usr/lib64/dri/fglrx_dri.so

Модуль починил, обновление fglrx_glx и
kernel-modules-fglrx-{std-def,std-pae,un-def} ушли в Sisyphus.

Для p7 - task #103988 - у мен недостаточно прав.
------- Comment #16 From 2013-09-12 22:49:17 -------
Там не только в разрешениях проблема.
посмотрите в journalctl...
------- Comment #17 From 2013-09-12 22:49:45 -------
сен 11 22:10:27 c0mp.localdomain avahi-daemon[901]: Withdrawing address record
for fe80::ea40:f2ff:fec2:767c on eno1.
сен 11 22:10:27 c0mp.localdomain kernel: fglrx_pci 0000:01:00.0: irq 53 for
MSI/MSI-X
сен 11 22:10:27 c0mp.localdomain kernel: <6>[fglrx] Firegl kernel thread PID:
2324
сен 11 22:10:27 c0mp.localdomain kernel: <6>[fglrx] Firegl kernel thread PID:
2325
сен 11 22:10:27 c0mp.localdomain kernel: <6>[fglrx] Firegl kernel thread PID:
2326
сен 11 22:10:27 c0mp.localdomain kernel: <6>[fglrx] IRQ 53 Enabled
сен 11 22:10:27 c0mp.localdomain kernel: BUG: sleeping function called from
invalid context at mm/slab.c:3054
сен 11 22:10:27 c0mp.localdomain kernel: in_atomic(): 1, irqs_disabled(): 0,
pid: 2275, name: X
сен 11 22:10:27 c0mp.localdomain kernel: CPU: 3 PID: 2275 Comm: X Tainted: P   
       O 3.10.10-std-def-alt1 #1
сен 11 22:10:27 c0mp.localdomain kernel: Hardware name:                 
/DQ77MK, BIOS MKQ7710H.86A.0050.2012.0830.1022 08/30/2012
сен 11 22:10:27 c0mp.localdomain kernel:  00000000000008e3 ffff880408179698
ffffffff814f971b ffff8804081796b8
сен 11 22:10:27 c0mp.localdomain kernel:  ffffffff8108b23b 0000000000000058
00000000000000d0 ffff880408179708
сен 11 22:10:27 c0mp.localdomain kernel:  ffffffff81172ba3 ff00002c00000070
ffffffffa028753e ffff8804081797f8
сен 11 22:10:27 c0mp.localdomain kernel: Call Trace:
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff814f971b>]
dump_stack+0x19/0x1b
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8108b23b>]
__might_sleep+0xeb/0x120
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff81172ba3>]
__kmalloc+0x1a3/0x250
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa028753e>] ?
KCL_MEM_SmallBufferAlloc+0xe/0x10 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa028753e>]
KCL_MEM_SmallBufferAlloc+0xe/0x10 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa028e193>]
drm_alloc+0xc3/0x1a0 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02a9527>] ?
irqmgr_wrap_register_interrupt+0x187/0x2a0 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03d2f60>] ?
PECI_GetFirmwareImageAddress+0x10/0x10 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02a5002>] ?
MCIL_IRQAssertInterrupt+0xa2/0xc0 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03cebda>] ?
PECI_RegisterInterruptWithPolarity+0xba/0x190 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03d2f60>] ?
PECI_GetFirmwareImageAddress+0x10/0x10 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03e6b92>] ?
PSM_PSDT_CheckInvariants+0x2e2/0x420 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa042dd48>] ?
PhwSIslands_RegisterInternalThermalInterrupt+0x48/0x90 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03c8097>] ?
PHM_RegisterThermalInterrupt+0x17/0x80 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03eaceb>] ?
PEM_RegisterInterrupts+0x3b/0x200 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03eb090>] ?
PEM_UnInitPowerPlayFeatureInfo+0x60/0x60 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03ed40a>] ?
PEM_Task_EnableDynamicStateManagement+0x3a/0xc0 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03ee259>] ?
PEM_Task_RegisterInterrupts+0x9/0x20 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03eb4e4>] ?
PEM_ExcuteEventChain+0x64/0xe0 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03e9ae4>] ?
PEM_Initialize+0x134/0x400 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03c65ea>] ?
PP_Initialize_internal+0x2ca/0x360 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa03c6248>] ?
PP_Initialize+0x28/0x50 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02c1943>] ?
firegl_pplib_init_powerplay+0x83/0x1c0 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02c20a4>] ?
firegl_pplib_init+0xa4/0x170 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02aa782>] ?
firegl_irqmgr_init+0x42/0x100 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02bb807>] ?
hal_init_gpu+0x1d7/0x480 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa0295e3b>] ?
firegl_open+0x2db/0x310 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa0285992>] ?
ip_firegl_open+0x12/0x20 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa02854d0>] ?
firegl_stub_open+0xa0/0x110 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8118e4e3>] ?
chrdev_open+0xc3/0x1d0
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff811874d3>] ?
do_dentry_open+0x203/0x290
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8118e420>] ?
cdev_put+0x30/0x30
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff81187590>] ?
finish_open+0x30/0x40
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff811993e9>] ?
do_last+0x709/0xf00
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8108461d>] ? up+0x2d/0x50
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff81199c91>] ?
path_openat+0xb1/0x4f0
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffffa0294199>] ?
firegl_release_helper+0x419/0x700 [fglrx]
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8108461d>] ? up+0x2d/0x50
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8119a35c>] ?
do_filp_open+0x3c/0x90
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff811a82e5>] ?
__alloc_fd+0xd5/0x140
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8118888f>] ?
do_sys_open+0xef/0x1d0
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff810212d0>] ?
syscall_trace_enter+0x20/0x260
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff8118898d>] ?
SyS_open+0x1d/0x20
сен 11 22:10:27 c0mp.localdomain kernel:  [<ffffffff81508bb7>] ?
tracesys+0xdd/0xe2
------- Comment #18 From 2013-09-12 22:51:09 -------
сен 11 22:28:00 c0mp.localdomain kernel: Hardware name:                 
/DQ77MK, BIOS MKQ7710H.86A.0050.2012.0830.1022 08/30/2012
сен 11 22:28:00 c0mp.localdomain kernel: Workqueue: xfslogd xfs_buf_iodone_work
[xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  0000000000000001 ffff88040806bd28
ffffffff814f971b ffff88040806bd48
сен 11 22:28:00 c0mp.localdomain kernel:  ffffffffa0d18f9a ffffffffa0d16725
1ec1e00300000001 ffff88040806bd88
сен 11 22:28:00 c0mp.localdomain kernel:  ffffffffa0d18ff9 570061837d08000f
8524ff83000002da ffff88039ecb3e00
сен 11 22:28:00 c0mp.localdomain kernel: Call Trace:
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff814f971b>]
dump_stack+0x19/0x1b
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffffa0d18f9a>]
xfs_error_report+0x3a/0x40 [xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffffa0d16725>] ?
xfs_buf_iodone_work+0x85/0xb0 [xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffffa0d18ff9>]
xfs_corruption_error+0x59/0x80 [xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffffa0d6f12a>]
xfs_sb_read_verify+0x11a/0x130 [xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffffa0d16725>] ?
xfs_buf_iodone_work+0x85/0xb0 [xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff81089c37>] ?
finish_task_switch+0xd7/0x130
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffffa0d16725>]
xfs_buf_iodone_work+0x85/0xb0 [xfs]
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff81076db0>]
process_one_work+0x1a0/0x490
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff8107856c>]
worker_thread+0x11c/0x3f0
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff81078450>] ?
manage_workers.isra.25+0x2e0/0x2e0
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff8107e7bb>]
kthread+0xbb/0xc0
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff8107e700>] ?
flush_kthread_worker+0x70/0x70
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff815088fc>]
ret_from_fork+0x7c/0xb0
сен 11 22:28:00 c0mp.localdomain kernel:  [<ffffffff8107e700>] ?
flush_kthread_worker+0x70/0x70
------- Comment #19 From 2013-09-12 22:51:37 -------
если fglrx не запущен такого нет
------- Comment #20 From 2013-09-12 22:54:19 -------
и на ядре 3.4 нет.
------- Comment #21 From 2013-09-12 23:01:39 -------
>Для p7 - task #103988 
вот это вот работает без жестких ссылок. По крайней мере в ядре led-ws
------- Comment #22 From 2013-09-12 23:02:49 -------
т.е без символьных ссылок в X11R6. Короче само работает.
------- Comment #23 From 2013-09-12 23:34:06 -------
(В ответ на комментарий №21)
> >Для p7 - task #103988 
> вот это вот работает без жестких ссылок. По крайней мере в ядре led-ws

Оно и раньше работало. Перестало работать с ядром 3.10, потому что в коде
fglrx.ko для >= 3.10 - ошибка.
------- Comment #24 From 2013-09-13 19:50:38 -------
И? Не запускать на 3.10? Или вы исправили?
------- Comment #25 From 2013-09-13 19:57:22 -------
(В ответ на комментарий №24)
> И? Не запускать на 3.10? Или вы исправили?

https://bugzilla.altlinux.org/show_bug.cgi?id=29309#c15
------- Comment #26 From 2013-09-13 20:32:52 -------
А в journal все равно ошибки.
------- Comment #27 From 2013-09-13 20:43:35 -------
(В ответ на комментарий №26)
> А в journal все равно ошибки.

"сообщение об ошибке" != "ошибка"

присылайте исходники fglrx - я уберу раздражающие вас сообщения.
------- Comment #28 From 2013-09-13 20:52:54 -------
> "сообщение об ошибке" != "ошибка"
> 
> присылайте исходники fglrx - я уберу раздражающие вас сообщения.
Там об ошибке не fglrx говорит, а ядро.
Выше вывод journalctl -b приводил и куски из него. С модулем
kernel-modules-fglrx-std-def#1:13.20.11-alt2.199179.1 тоже самое. 
Если нужен могу прислать что с последним модулем пишет, но там приблизительно
тоже самое.
Или вы считаете что обращать внимания на эти сообщения ядра не стоит?
------- Comment #29 From 2013-09-13 21:00:07 -------
(В ответ на комментарий №28)
> > "сообщение об ошибке" != "ошибка"
> > 
> > присылайте исходники fglrx - я уберу раздражающие вас сообщения.
> Там об ошибке не fglrx говорит, а ядро.
> Выше вывод journalctl -b приводил и куски из него. С модулем
> kernel-modules-fglrx-std-def#1:13.20.11-alt2.199179.1 тоже самое. 
> Если нужен могу прислать что с последним модулем пишет, но там приблизительно
> тоже самое.
> Или вы считаете что обращать внимания на эти сообщения ядра не стоит?

мейнтейнер kernel-image-std-def решил зачем-то включить
CONFIG_DEBUG_ATOMIC_SLEEP. Решайте сами: обращать внимание или нет.
------- Comment #30 From 2013-09-30 15:56:04 -------
Насколько я понимаю, заработало