Bug 28782 - uninitialized variable in glxdri.c
Summary: uninitialized variable in glxdri.c
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: xorg-server (show other bugs)
Version: unstable
Hardware: all Linux
: P3 major
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL: http://www.opennet.ru/opennews/art.sh...
Keywords:
Depends on:
Blocks:
 
Reported: 2013-04-03 03:56 MSK by Michael Shigorin
Modified: 2013-05-08 04:11 MSK (History)
6 users (show)

See Also:


Attachments
fix-glx.patch (319 bytes, patch)
2013-05-02 04:50 MSK, Aleksey Borisenkov
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Shigorin 2013-04-03 03:56:29 MSK
Наблюдаю занятное.  Наличие virtualbox-guest-additions-4.2.10-alt1 приводит к неработоспособности i586-образов livecd под virtualbox-4.2.10/4.2.4 (запуск иксов приводит к чёрному экрану с текстовым курсором в левом верхнем углу, окошко предварительного просмотра виртуалки может показывать разные моргающие спецэффекты), при этом аналогичные x86_64 iso из такого же среза сизифа -- работают.

Воспроизвести можно на:
http://nightly.altlinux.org/sisyphus/snapshots/20130327/regular-icewm-20130327-i586.iso
http://nightly.altlinux.org/sisyphus/snapshots/20130327/regular-icewm-20130327-x86_64.iso

Добытый через проброшенный заранее ssh хвост /var/log/Xorg.0.log:

[   460.014] drmOpenDevice: node name is /dev/dri/card0
[   460.014] drmOpenDevice: open result is 13, (OK)
[   460.014] drmOpenByBusid: Searching for BusID pci:0000:00:02.0
[   460.014] drmOpenDevice: node name is /dev/dri/card0
[   460.014] drmOpenDevice: open result is 13, (OK)
[   460.014] drmOpenByBusid: drmOpenMinor returns 13
[   460.014] drmOpenByBusid: Interface 1.4 failed, trying 1.1
[   460.014] drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
[   460.028] (EE) AIGLX error: dlopen of /usr/lib/X11/modules/dri/vboxvideo_dri.so failed (VBoxOGLcrutil.so: cannot open shared object file: No such file or directory)  

Ссылка есть и она указывает на существующий файл:

/usr/lib/X11/modules/dri/vboxvideo_dri.so -> ../../../virtualbox/additions/VBoxOGL.so

Собрал было 4.2.10-alt2 с патчиком из bug #27340, comment 11 -- ничего не изменилось.

Собственно, в образе двухнедельной давности было то же сообщение, но сам видеодрайвер из ровно того же 4.2.10-alt1 работал -- см. http://nightly.altlinux.org/sisyphus/snapshots/20130320/regular-icewm-20130320-i586.iso

С 20.03 по 27.03 из заметного изменилась glibc (2.16->2.17), откатить её одну не получается (другое уже с новой собралось), а архиф сизифа вдруг стал заканчиваться на http://ftp.altlinux.org/pub/distributions/archive/Sisyphus/2013/03/05/
Comment 1 Michael Shigorin 2013-04-07 22:04:13 MSK
(В ответ на комментарий №0)
> при этом аналогичные x86_64 iso из такого же среза сизифа -- работают.
(опять споткнувшись) Ну ведь тривиальная должна быть разница явно... граждане, в чём может быть различие между i586 и x86_64-сборками этого набора модулей?
Comment 2 Igor Zubkov 2013-04-08 01:40:22 MSK
Этот баг жутко мешает тестировать новые образы в VirtualBox. Ну и баги так же.
Comment 3 Aleksey Borisenkov 2013-04-11 04:30:19 MSK
Я пока не понял что изменилось, но в качестве объезда вроде помогает отключение AIGLX:

Section "ServerFlags"
        option "AIGLX" "false"
EndSection
Comment 4 Michael Shigorin 2013-04-11 16:06:36 MSK
(В ответ на комментарий №3)
> Я пока не понял что изменилось
Видимо, по мотивам bug #27340.

> но в качестве объезда вроде помогает отключение AIGLX:
О, спасибо, попробую.  Всё-таки меньшие кишки, чем выкидывать vboxvideo и вырезать следом fbdev, т.к. далее грузится он и с ним тоже проблемы...
Comment 5 Michael Shigorin 2013-04-19 18:17:21 MSK
К сожалению, продолжает воспроизводиться на 4.2.12-alt1:
http://ftp.linux.kiev.ua/pub/Linux/ALT/people/mike/iso/mkimage-profiles/tmp/regular-icewm-20130419-i586.iso (не работает)
http://ftp.linux.kiev.ua/pub/Linux/ALT/people/mike/iso/mkimage-profiles/tmp/regular-icewm-20130419-x86_64.iso (работает)
Comment 6 Michael Shigorin 2013-04-22 20:58:55 MSK
(In reply to comment #3)
> Я пока не понял, что изменилось
Кроме собирающегося из glibc.git идей пока нет.

> но в качестве объезда вроде помогает отключение AIGLX:
Подтверждаю; слепил пакет livecd-virtualbox-noglx по этому поводу.

PS: включение/выключение галки "Включить 3D-ускорение" на результат не влияет.
Comment 7 Michael Shigorin 2013-04-24 13:15:38 MSK
Видимо, это тоже дубль.

*** This bug has been marked as a duplicate of bug 27340 ***
Comment 8 Aleksey Borisenkov 2013-05-02 04:47:30 MSK
Не, это не дубль. Это libglx.

Ожидаемое поведение:
[    20.859] (EE) AIGLX error: vboxvideo does not export required DRI extension
[    20.864] (EE) AIGLX: reverting to software rendering
[    21.771] (II) AIGLX: Loaded and initialized swrast
При этом в функции __glXDRIscreenProbe производится вызов glxProbeDriver, который должен вернуть ошибку, после чего происходит переключение на программную отрисовку.
Однако из-за того, что переменная framebuffer.base осталась неинициализированной, в строке 1145 происходит освобождение нужного участка памяти с последующим сегфолтом.
Comment 9 Aleksey Borisenkov 2013-05-02 04:50:03 MSK
Created attachment 5816 [details]
fix-glx.patch

Вот с таким исправлением гостевой драйвер virtualbox у меня работает нормально.
Comment 10 AEN 2013-05-02 08:18:41 MSK
(В ответ на комментарий №9)
> Created an attachment (id=5816) [details]
> fix-glx.patch
> 
> Вот с таким исправлением гостевой драйвер virtualbox у меня работает нормально.

О! Спасибо!
То же здесь:
https://bugs.freedesktop.org/show_bug.cgi?id=59825
и
http://web.archiveorange.com/archive/v/gTLYUAX7U7A8TDDR32Bq :
"Arch xorg-server packages have been built with this patch 
applhttp://lists.x.org/archives/xorg-devel/2009-December/004338.htmlied since Feb 16 and no further problems were reported."

Забавно, что еще в 2009 году:
http://lists.x.org/archives/xorg-devel/2009-December/004338.html
Comment 11 Repository Robot 2013-05-02 11:11:15 MSK
xorg-server-2:1.14.1-alt2 -> sisyphus:

* Thu May 02 2013 Valery Inozemtsev <shrek@altlinux> 2:1.14.1-alt2
- fixed uninitialized variable in glxdri.c (closes #28782)
Comment 12 Michael Shigorin 2013-05-08 04:11:32 MSK
Спасибо!  Вместе с virtualbox-4.2.12-alt2 наконец-то опять не падает :)