LINUX.ORG.RU

Крашится firefox под firejail после установки docker

 , , ,


0

1

Появилась необходимость поставить докер, поэтому пришлось переконфигурировать ядро в соответствии с этой статьей https://wiki.gentoo.org/wiki/Docker#Kernel

После этого firefox стал странно себя вести, иногда отказываясь переходить по ссылкам и открывать новые вкладки, т.е. сам он продолжает работать, но на сайты не переходит. Исправляется только после kill -9.

Стоит еще упомянуть, что после пересборки ядра, пришлось убрать seccomp из конфига firejail, чтобы firefox завёлся.

Кусок конфига /etc/firejail/firefox.profile

caps.drop all
# machine-id breaks pulse audio; it should work fine in setups where sound is not required
#machine-id
netfilter
nodvd
#nogroups
nonewprivs
noroot
notv
protocol unix,inet,inet6,netlink
#seccomp
shell none
tracelog

disable-mnt
private-dev

В dmesg такой треш:

[55356.391560] Chrome_~dThread[17079]: segfault at 0 ip 00007fa91d9c7443 sp 00007fa91b64bb00 error 6
[55356.391563] Chrome_~dThread[16956]: segfault at 0 ip 00007fec7f3c7443 sp 00007fec7d04bb00 error 6 in libxul.so[7fec7eeaa000+5676000]
[55356.391569]  in libxul.so[7fa91d4aa000+5676000]
[55356.391571] Code: 
[55356.391571] Code: 8d 
[55356.391572] 8d 0d 
[55356.391574] 0d 
[55356.391574] e5 
[55356.391575] e5 
[55356.391575] f8 
[55356.391576] f8 21 
...
[55356.391636] 0f 
[55356.391637] ae 
[55356.391637] 1f 
[55356.391638] ff 
[55356.391638] 84 
[55356.391639] 66 
[55356.391640] 00 
[55356.391640] 2e 
[55356.391641] 0f 1f 84 00 
[61064.529276] Web Content[17983]: segfault at 0 ip 00007fb4a985e8d0 sp 00007fff7c7a6940 error 6 in libmozsandbox.so[7fb4a9850000+22000]
[61064.529280] Code: 51 ff ff c7 04 25 00 00 00 00 46 02 00 00 e8 87 51 ff ff 0f 1f 80 00 00 00 00 c7 04 25 00 00 00 00 36 01 00 00 e8 70 51 ff ff <c7> 04 25 00 00 00 00 38 01 00 00 e8 60 51 ff ff c7 04 25 00 00 00 
[61116.135785] Chrome_~dThread[17787]: segfault at 0 ip 00007f3e80ec7443 sp 00007f3e7eb4bb00 error 6 in libxul.so[7f3e809aa000+5676000]
[61116.135792] Code: 8d 0d e5 f8 21 04 48 89 08 c7 04 25 00 00 00 00 72 01 00 00 e8 9e dd ae ff 48 8b 05 2f 48 6f 05 48 8d 0d 38 fb 21 04 48 89 08 <c7> 04 25 00 00 00 00 fc 09 00 00 e8 7d dd ae ff 66 2e 0f 1f 84 00

Вопрос такой: какие опции ядра (из статьи по ссылке выше) могли вызвать подобное поведение?

Стоит еще упомянуть, что после пересборки ядра, пришлось убрать seccomp из конфига firejail, чтобы firefox завёлся.

Вот такое сообщение появляется при старте firefox с включенным seccomp:

Ваша вкладка только что упала.
Мы можем помочь!

Выберите Восстановить эту вкладку для перезагрузки страницы.

Нажатие на кнопку «Восстановить это вкладку» не помогает. Зато помогает отключение seccomp, но работа браузера становится нестабильной.

Кстати...

$ uname -r
4.18.3-gentoo
www-client/firefox-61.0-r1
sys-apps/firejail-0.9.54
driver ()
Ответ на: комментарий от anonymous

Обновление до 0.9.56~rc1 помогло, но из-за правил именования пакетов пришлось ручками бампнуть ебилд с кое-какими костылями

SRC_URI="mirror://sourceforge/${PN}/firejail-0.9.56~rc1.tar.xz -> $PN-$PV.tar.xz"
S="$WORKDIR/$PN-0.9.56~rc1"

Еще подозреваю, что помогло обновление конфигов. В новой версии они что-то нашаманили с seccomp. Вот так сейсас выглядит firefox-common.inc

apparmor
caps.drop all
# machine-id breaks pulse audio; it should work fine in setups where sound is not required
#machine-id
netfilter
# Breaks Gnome connector - disable if you use that
# Also seems to break Ubuntu titlebar menu
nodbus
nodvd
nogroups
nonewprivs
noroot
notv
protocol unix,inet,inet6,netlink
seccomp.drop @clock,@cpu-emulation,@debug,@module,@obsolete,@raw-io,@reboot,@resources,@swap,acct,add_key,bpf,fanotify_init,io_cancel,io_destroy,io_getevents,io_setup,io_submit,ioprio_set,kcmp,keyctl,mount,name_to_handle_at,nfsservctl,ni_syscall,open_by_handle_at,personality,pivot_root,process_vm_readv,ptrace,remap_file_pages,request_key,setdomainname,sethostname,syslog,umount,umount2,userfaultfd,vhangup,vmsplice
shell none
#disable tracelog, it breaks or causes major issues with many firefox based browsers, see github issue #1930
#tracelog

disable-mnt
private-dev
# private-etc below works fine on most distributions. There are some problems on CentOS.
#private-etc ca-certificates,ssl,machine-id,dconf,selinux,passwd,group,hostname,hosts,localtime,nsswitch.conf,resolv.conf,xdg,gtk-2.0,gtk-3.0,X11,pango,fonts,mime.types,mailcap,asound.conf,pulse,pki,crypto-policies,ld.so.cache
private-tmp

noexec ${HOME}
noexec /tmp
driver ()
Ответ на: комментарий от deity

ff живет своей жизнью у меня он воюет с nvidia-drivers

У меня тоже nvidia-drivers вечно с кем-то воевали - поломанный framebuffer, надоедливые артефакты, пропадающие буквы из надписей, залипающий vlc при переключении учеток и много других мелких неприятностей. Полгода помучался и избавился от нвидии (по другим причинам), теперь сижу на интеграшке от intel и горя не знаю.

driver ()