Bug 38854 - Segmentation fault при запуске иксов
Summary: Segmentation fault при запуске иксов
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: xorg-server (show other bugs)
Version: unstable
Hardware: aarch64 Linux
: P5 normal
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks: 33000
  Show dependency tree
 
Reported: 2020-08-27 18:36 MSK by Антон Мидюков
Modified: 2021-09-24 18:10 MSK (History)
9 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Антон Мидюков 2020-08-27 18:36:13 MSK
На Raspberry Pi 4 после недавнего обновления xorg-server, сегфолтятся иксы:

[    20.098] (II) xfree86: Adding drm device (/dev/dri/card0)
[    20.098] (II) Platform probe for /sys/devices/platform/gpu/drm/card0
[    20.115] (II) xfree86: Adding drm device (/dev/dri/card1)
[    20.115] (II) Platform probe for /sys/devices/platform/v3dbus/fec00000.v3d/drm/card1
[    20.115] (EE).
[    20.115] (EE) Backtrace:
...
[    20.116] (EE) Segmentation fault at address 0x0
[    20.117] (EE).
Fatal server error:
[    20.117] (EE) Caught signal 11 (Segmentation fault). Server aborting

Если в config.txt отключить:
dtoverlay=vc4-fkms-v3d

То грузятся нормально без аппаратного ускорения.
Comment 1 Антон Мидюков 2020-08-27 19:15:46 MSK
Аналогичная проблема на Raspberry Pi 3 с включенным 3D и на Orange Pi Prime.
Comment 2 Valery Inozemtsev 2020-08-28 09:06:04 MSK
Недавнее обновление это 1.20.9-alt1? Если откатить на версию 1.20.8-alt3, работают?
Comment 3 Антон Мидюков 2020-08-28 09:46:22 MSK
(Ответ для Valery Inozemtsev на комментарий #2)
> Недавнее обновление это 1.20.9-alt1? Если откатить на версию 1.20.8-alt3,
> работают?

Да.
Comment 4 Valery Inozemtsev 2020-08-28 10:12:23 MSK
откатывались только иксы? окружение тоже что и для 1.20.9-alt1?
Comment 5 Антон Мидюков 2020-08-28 10:38:52 MSK
(Ответ для Valery Inozemtsev на комментарий #4)
> откатывались только иксы? окружение тоже что и для 1.20.9-alt1?

Да, только xorg-server.
Comment 6 Aleksei Nikiforov 2020-08-28 10:45:46 MSK
Насколько я знаю, тоже самое произошло вот здесь:

https://bugs.gentoo.org/739056

https://gitlab.freedesktop.org/xorg/xserver/-/issues/1068

И судя по описанию там, вот этот коммит может починить проблему падения:

https://gitlab.freedesktop.org/xorg/xserver/-/commit/e50c85f4ebf559a3bac4817b41074c43d4691779

С другой стороны, в апстриме жалуются и на другие проблемы:

https://gitlab.freedesktop.org/xorg/xserver/-/issues/1068#note_609382
Comment 7 Антон Мидюков 2020-09-10 21:40:46 MSK
(Ответ для Aleksei Nikiforov на комментарий #6)
> Насколько я знаю, тоже самое произошло вот здесь:
> 
> https://bugs.gentoo.org/739056
> 
> https://gitlab.freedesktop.org/xorg/xserver/-/issues/1068
> 
> И судя по описанию там, вот этот коммит может починить проблему падения:
> 
> https://gitlab.freedesktop.org/xorg/xserver/-/commit/
> e50c85f4ebf559a3bac4817b41074c43d4691779

Сейчас предлагают откатить три коммита:
https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/508

shrek@ может откатим в тестовом задании?
Comment 8 Valery Inozemtsev 2020-09-10 22:27:06 MSK
(Ответ для Антон Мидюков на комментарий #7)
> Сейчас предлагают откатить три коммита:
я тоже думал над этим, решил подождать может починят... но жданки что то затянулись
Comment 9 Sergey Bolshakov 2020-09-14 11:59:15 MSK
(In reply to Valery Inozemtsev from comment #8)
> (Ответ для Антон Мидюков на комментарий #7)
> > Сейчас предлагают откатить три коммита:
> я тоже думал над этим, решил подождать может починят... но жданки что то
> затянулись

уж почините пожалуйста, у меня хромобук слёг.
Comment 10 Repository Robot 2020-09-15 13:11:50 MSK
xorg-server-2:1.20.9-alt2 -> sisyphus:

 Mon Sep 14 2020 Valery Inozemtsev <shrek@altlinux.ru> 2:1.20.9-alt2
 - revert 249a12c5, 74b7427c, 5c96eb5f (closes: #38854)
Comment 11 Антон Мидюков 2020-09-20 19:32:01 MSK
Спасибо!
Comment 12 Michael Shigorin 2021-08-30 21:32:45 MSK
Для архива.

Увидел эту багу, изучая %changelog после `git log config/udev.c` на предмет
http://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/645
http://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/648

Откатил revert'ы 74b7427c 5c96eb5f 249a12c5; приложил 2f53d1cf 0d93bbfa;
полученный xorg-server 1.20.12-alt1.E2K.2 будто работает.
Comment 13 Alexey Sheplyakov 2021-09-09 10:16:40 MSK
(In reply to Repository Robot from comment #10)
> xorg-server-2:1.20.9-alt2 -> sisyphus:
> 
>  Mon Sep 14 2020 Valery Inozemtsev <shrek@altlinux.ru> 2:1.20.9-alt2
>  - revert 249a12c5, 74b7427c, 5c96eb5f (closes: #38854)

Это сломало Xorg на arm платах с GPU Mali. В числе пострадавших - плата TF307 (BE-M1000), rock pi 4 (rk3399), odroid XU4.
Comment 14 Alexey Sheplyakov 2021-09-09 10:42:15 MSK
(In reply to Alexey Sheplyakov from comment #13)
> (In reply to Repository Robot from comment #10)
> > xorg-server-2:1.20.9-alt2 -> sisyphus:
> > 
> >  Mon Sep 14 2020 Valery Inozemtsev <shrek@altlinux.ru> 2:1.20.9-alt2
> >  - revert 249a12c5, 74b7427c, 5c96eb5f (closes: #38854)
> 
> Это сломало Xorg на arm платах с GPU Mali. В числе пострадавших - плата
> TF307 (BE-M1000), rock pi 4 (rk3399), odroid XU4.

Также пострадали device tree системы с дискретными PCIe видеокартами (среди них и TF307)
Comment 15 Alexey Sheplyakov 2021-09-09 10:54:18 MSK
(In reply to Alexey Sheplyakov from comment #14)
> (In reply to Alexey Sheplyakov from comment #13)
> > (In reply to Repository Robot from comment #10)
> > > xorg-server-2:1.20.9-alt2 -> sisyphus:
> > > 
> > >  Mon Sep 14 2020 Valery Inozemtsev <shrek@altlinux.ru> 2:1.20.9-alt2
> > >  - revert 249a12c5, 74b7427c, 5c96eb5f (closes: #38854)
> > 
> > Это сломало Xorg на arm платах с GPU Mali. В числе пострадавших - плата
> > TF307 (BE-M1000), rock pi 4 (rk3399), odroid XU4.
> 
> Также пострадали device tree системы с дискретными PCIe видеокартами (среди
> них и TF307)

И ещё сломался запуск второго экземпляра Xorg (X :0 & X :1), который необходим, например, для light-locker.

В результате иногда (примерно 1 раз из 5) экран можно заблокировать, но разблокировать уже не выйдет.
Comment 16 Антон Мидюков 2021-09-09 10:58:13 MSK
xorg-server обновился с тех пор, а коммиты, которые откатили, на место не вернули?
Comment 17 Valery Inozemtsev 2021-09-09 12:21:11 MSK
в апстриме как откатили и больше их не возвращали
Comment 18 Alexey Sheplyakov 2021-09-09 16:38:14 MSK
(In reply to Valery Inozemtsev from comment #17)
> в апстриме как откатили и больше их не возвращали

А что же тогда это:

https://gitlab.freedesktop.org/xorg/xserver/-/blob/master/config/udev.c#L546-L555
Comment 19 Антон Мидюков 2021-09-10 11:34:55 MSK
Проблема вернулась после:
* Thu Sep 09 2021 Valery Inozemtsev <shrek at altlinux.ru> 2:1.20.13-alt2
- revert "revert 249a12c5, 74b7427c, 5c96eb5f" (see: #38854)

Выглядит сейчас так:
[    28.354] (DB) /dev/dri/card0 has 2 connectors
[    28.362] (EE) 
[    28.363] (EE) Backtrace:
[    28.363] (EE) 0: X (xorg_backtrace+0x64) [0xaaaab41052f4]
[    28.364] (EE) 1: X (0xaaaab3f50000+0x1b9278) [0xaaaab4109278]
[    28.364] (EE) 2: linux-vdso.so.1 (__kernel_rt_sigreturn+0x0) [0xffffb58a37a0]
[    28.364] (EE) 3: /lib64/libc.so.6 (strncmp+0x20) [0xffffb518c0c4]
[    28.364] (EE) 4: X (0xaaaab3f50000+0xbad40) [0xaaaab400ad40]
[    28.365] (EE) 5: X (xf86BusProbe+0xc) [0xaaaab3fe4f7c]
[    28.365] (EE) 6: X (InitOutput+0x6f4) [0xaaaab3ff2c78]
[    28.365] (EE) 7: X (0xaaaab3f50000+0x66c48) [0xaaaab3fb6c48]
[    28.366] (EE) 8: /lib64/libc.so.6 (__libc_start_main+0xc4) [0xffffb512e954]
[    28.366] (EE) 9: X (_start+0x38) [0xaaaab3fa0038]
[    28.366] (EE) 
[    28.366] (EE) Segmentation fault at address 0x0
[    28.366] (EE) 
Fatal server error:
[    28.367] (EE) Caught signal 11 (Segmentation fault). Server aborting
Comment 20 Valery Inozemtsev 2021-09-10 12:40:18 MSK
надо откатить всю эту лабуду до состояния апстрима и не смотреть на всякие TF307
Comment 21 Repository Robot 2021-09-10 14:08:53 MSK
xorg-server-2:1.20.13-alt3 -> sisyphus:

 Fri Sep 10 2021 Valery Inozemtsev <shrek@altlinux.ru> 2:1.20.13-alt3
 - revert previous commits (closes: #38854)
Comment 22 mikhailnov 2021-09-10 15:18:30 MSK
(Ответ для Alexey Sheplyakov на комментарий #13)
> (In reply to Repository Robot from comment #10)
> > xorg-server-2:1.20.9-alt2 -> sisyphus:
> > 
> >  Mon Sep 14 2020 Valery Inozemtsev <shrek@altlinux.ru> 2:1.20.9-alt2
> >  - revert 249a12c5, 74b7427c, 5c96eb5f (closes: #38854)
> 
> Это сломало Xorg на arm платах с GPU Mali. В числе пострадавших - плата
> TF307 (BE-M1000), rock pi 4 (rk3399), odroid XU4.
На 1.20.11 + "xfree86: Detect the primary device by checking outputs" работало на BE-M1000 (не на Альте)
Сейчас уже 1.20.13 же есть
Comment 23 Alexey Sheplyakov 2021-09-10 19:39:45 MSK
(In reply to Valery Inozemtsev from comment #20)
> надо откатить всю эту лабуду до состояния апстрима и не смотреть на всякие
> TF307

1. Проблема касается вообще всех arm c GPU Mali, и/или PCIe GPU

2. Напомню, что нашу багзиллу читают коллеги из Байкал Электроникс, Эдельвейс, и многие другие производители компьютеров на отечественных процессорах.
Comment 24 Антон Мидюков 2021-09-10 19:53:39 MSK
(In reply to Alexey Sheplyakov from comment #23)
> (In reply to Valery Inozemtsev from comment #20)
> > надо откатить всю эту лабуду до состояния апстрима и не смотреть на всякие
> > TF307
> 
> 1. Проблема касается вообще всех arm c GPU Mali, и/или PCIe GPU

Тем не менее, необходимо починить так, чтобы не сломать работу xorg-server на Raspberry Pi 3/4 и Mali 450 с драйвером lima (Orange Pi Prime) с ядрами std-def/un-def.
Comment 25 Alexey Sheplyakov 2021-09-10 20:35:45 MSK
(In reply to Антон Мидюков from comment #24)
> (In reply to Alexey Sheplyakov from comment #23)
> > (In reply to Valery Inozemtsev from comment #20)
> > > надо откатить всю эту лабуду до состояния апстрима и не смотреть на всякие
> > > TF307
> > 
> > 1. Проблема касается вообще всех arm c GPU Mali, и/или PCIe GPU
> 
> Тем не менее, необходимо починить так, чтобы не сломать работу xorg-server
> на Raspberry Pi 3/4 и Mali 450 с драйвером lima (Orange Pi Prime) с ядрами
> std-def/un-def.

"откатить до состояния апстрима" как раз и ломает работу Xorg с Mali, в том числе и с Utgard. Подробности здесь: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/481
Comment 26 Michael Shigorin 2021-09-12 13:20:18 MSK
Может, нужное на aarch64 под %ifarch aarch64 и прикладывать патчами?

У меня на %e2k сейчас тоже какой-то подземный стук с выпадениями xorg-server 1.20.13-alt1.E2K.1 в осадок (насчёт dtb точно не скажу -- сюда его начали затаскивать, но на этих материнках и их прошивках `dmesg | grep -i tree` пуст.

Проверяю ветки на базе 1.20.13-alt2 и 1.20.13-alt3.
Comment 27 AEN 2021-09-13 07:18:50 MSK
(Ответ для Valery Inozemtsev на комментарий #20)
> надо откатить всю эту лабуду до состояния апстрима и не смотреть на всякие
> TF307

Так не пойдет.
Обсуждение переношу в приватную переписку.
Comment 28 AEN 2021-09-13 07:32:43 MSK
Поддержка TF307 обязательна. Регрессий быть не должно.
Comment 29 Alexey Sheplyakov 2021-09-17 21:30:27 MSK
(In reply to Michael Shigorin from comment #26)
> Может, нужное на aarch64 под %ifarch aarch64 и прикладывать патчами?
> 
> У меня на %e2k сейчас тоже какой-то подземный стук с выпадениями xorg-server
> 1.20.13-alt1.E2K.1 в осадок 

А можно послушать (увидеть?) этот "стук" более подробно?

> (насчёт dtb точно не скажу -- сюда его начали
> затаскивать, но на этих материнках и их прошивках `dmesg | grep -i tree`
> пуст.

Это не показатель. Надо глядеть в сторону /sys/firmware/devicetree/base
Comment 30 Alexey Sheplyakov 2021-09-17 21:35:09 MSK
(In reply to Michael Shigorin from comment #26)
> Может, нужное на aarch64 под %ifarch aarch64 и прикладывать патчами?

1. Этот баг про rpi4, то есть как раз таки aarch64, так что не поможет.
2. Нужно не только на aarch64, а везде, где есть device tree (armh, mipsel, riscv).
Comment 31 Michael Shigorin 2021-09-20 17:54:27 MSK
(Ответ для Alexey Sheplyakov на комментарий #29)
> (In reply to Michael Shigorin from comment #26)
> > Может, нужное на aarch64 под %ifarch aarch64 и прикладывать патчами?
> > У меня на %e2k сейчас тоже какой-то подземный стук с выпадениями xorg-server
> > 1.20.13-alt1.E2K.1 в осадок 
> А можно послушать (увидеть?) этот "стук" более подробно?
Вкратце так (но об этом почти наверняка отдельную багу лучше повесить):

[    19.884] (DB) xf86MergeOutputClassOptions unsupported bus type 0
[    19.884] (EE) FBDEV(0): EGA/VGA planes are not yet supported by the fbdev driver
[    19.885] (EE) 9: X (xf86DeleteMode+0x1a0) [0x1c8fb0]
[    19.885] (EE) 10: X (xf86DeleteScreen+0x210) [0x1a8ab8]
[    19.886] (EE) 11: X (InitOutput+0x1ff8) [0x18b348]
[    19.886] (EE) Caught signal 6 (Aborted). Server aborting

Добрался в пятницу проверить -- с теми же патчами МЦСТ поверх xorg-server 1.20.13-alt2 падать перестало (его и закоммитил в sisyphus_e2k пока что; -alt3.E2K.1 тоже не падает, но обновить-то проще, чем откатывать).

> > (насчёт dtb точно не скажу -- сюда его начали затаскивать, но на этих
> > материнках и их прошивках `dmesg | grep -i tree` пуст.
> Это не показатель. Надо глядеть в сторону /sys/firmware/devicetree/base
Спасибо, буду знать; на e801-6 и e901-1 такого каталога не значится.
Comment 32 Alexey Sheplyakov 2021-09-24 18:10:10 MSK
Исправлено в версии 2:1.20.13-alt4. Запускается и делает вид, что работает (включая 3D ускорение) на rpi4, TF307, NUC7i3BNB.