Bug 25960 - Падение mc при множественном использовании плагинов виртуальных файловых систем
Summary: Падение mc при множественном использовании плагинов виртуальных файловых систем
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: mc (show other bugs)
Version: unstable
Hardware: all Linux
: P3 major
Assignee: Sergey Y. Afonin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-28 10:38 MSK by serpiph
Modified: 2020-04-12 16:21 MSK (History)
2 users (show)

See Also:


Attachments
Core-файл (223.25 KB, application/x-bzip2)
2011-07-28 12:10 MSK, serpiph
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description serpiph 2011-07-28 10:38:57 MSK
mc падает, если воспользоваться несколькими плагинами, предоставляющими виртуальные файловые системы. Например, через mc зайти в любой .src.rpm, потом открыть файл CONTENTS.cpio и затем зайти в исходники программы и оставить эту панель в ожидании, работая на другой панели. Спустя какое-то время по таймауту отваливается один из слоёв, указанный в начале, при этом невозможно что-либо открыть или перейти куда-либо на первой панели, спустя какое-то время после попытки работы на первой панели mc падает с текстом "Ошибка сегментирования" без сохранения своего состояния и восстановления состояния консоли.
Comment 1 Sergey Y. Afonin 2011-07-28 11:09:48 MSK
Лучше бы такие баги сразу в багтрекер на http://midnight-commander.org/ заводить.
Кстати, в acl пакета есть Eve R. Ybody.
Comment 2 serpiph 2011-07-28 12:10:27 MSK
Created attachment 5030 [details]
Core-файл

Я, к сожалению, не имею навыков по расследованию ошибок в core-файлах. И скоро буду в отпуске, так что будет не до этих поисков. Если не трудно, прошу направить направить эту ошибку в багтрекер midnight commander, если невозможно сразу понять причину падения.
Comment 3 Sergey Y. Afonin 2012-01-07 19:55:41 MSK
А сколько времени надо ждать ? В 4.7.5.6-alt1 проявляется ?
У меня минут за 15 не проявилось.
Comment 4 serpiph 2012-01-10 08:49:51 MSK
Я только вчера вернулся домой. На 4.7.5.5-alt1 проявилось за пару минут. Вечером проверю новую версию и отпишусь.
Comment 5 serpiph 2012-01-11 10:32:01 MSK
Проверил 4.7.5.6-alt1 - падения нет. Закрываю ошибку.
Comment 6 Sergey Y. Afonin 2015-03-30 02:27:10 MSK
Удалось воспроизвести в 4.8.14-alt1: оставил в mcview открытый файл минут на десять.
Завёл тут: http://www.midnight-commander.org/ticket/3432
Comment 7 serpiph 2015-03-31 09:16:07 MSK
Есть подозрение, что mc не отслеживает связи между плагинами, когда они работают в цепочке. То есть получается use-after-free. mc запустил один плагин, получил от него информацию, запустил второй плагин, получи от него информацию. По таймауту первый плагин отключается и уничтожается, а второй всё ещё ссылается на первый плагин как на источник информации.
Comment 8 Sergey Y. Afonin 2015-03-31 10:29:37 MSK
(In reply to comment #7)

> Есть подозрение, что mc не отслеживает связи между плагинами, когда они
> работают в цепочке.

Разве что, с какими-то конкретными: с вариантом "tar в tar-е" не воспроизвелось. То есть, воспроизвелось именно в tar-е, который в cpio, который в src.rpm.
Comment 9 serpiph 2015-03-31 13:39:11 MSK
Попробуйте "tar в tar-е в tar-е". То есть повторить ту же глубину вложенности плагинов. Если не получится, то это особенность конкретного плагина, если получится - вопрос к архитектуре mc.
Comment 10 Sergey Y. Afonin 2015-04-03 23:28:37 MSK
(In reply to comment #9)

> Попробуйте "tar в tar-е в tar-е". 

Это уже лучше не здесь, а в трекере mc, в баге 3432 писать, если там вопросы появятся.
Comment 11 Sergey Y. Afonin 2016-03-26 17:37:55 MSK
Ждём, когда исправят MC ticket 3432.
Comment 12 Andrew Borodin 2019-06-19 14:12:07 MSK
Надеюсь, что это удалось исправить в https://github.com/MidnightCommander/mc/commit/94c0b79f3749f2f693ca48ea81b781140b0c1b85
Comment 13 Andrew Borodin 2020-04-09 07:16:16 MSK
В текущей версии не воспроизводится.
Comment 14 Sergey Y. Afonin 2020-04-12 16:12:48 MSK
(In reply to Andrew Borodin from comment #13)

> В текущей версии не воспроизводится.

Да, у меня тоже не воспроизвелось. Хотя кое-что есть, но во внешнем виде. Если в архиве два архива, и залезть дальше в один, то при выходе из архива во внешний подсветка слетает. Вот прямо на mc-4.8.24-alt1.src.rpm воспроизводится, внутри srpm два tar. С одиночным архивом внутри не воспроизводится вроде.
Comment 15 Sergey Y. Afonin 2020-04-12 16:15:56 MSK
(In reply to Sergey Y. Afonin from comment #14)

> и залезть дальше в один, то при выходе из архива во внешний подсветка слетает. 

Так же после длительного ожидания.
Comment 16 Andrew Borodin 2020-04-12 16:21:07 MSK
(In reply to Sergey Y. Afonin from comment #14)
> при выходе из архива во внешний подсветка слетает.
Какая подвсетка?