[06:57:33] BanderOS зашёл в конференцию [06:58:29] BanderOS вышел из конференции [07:08:00] BanderOS зашёл в конференцию [08:01:18] iNode зашёл в конференцию [08:49:43] theMIROn зашёл в конференцию [09:35:35] <jphantom> как сконфигурировать mc через ./configure на сборку отладочной версии (с -O0 и без -s) ? [09:56:29] il.smind зашёл в конференцию [09:57:29] <il.smind > я всё интересное пропустил? [10:05:37] <jphantom> кажется я нашел более короткую формулировку бага [10:05:54] <jphantom> по ssh не принимаются файлы короче 64 байт включительно [10:07:44] <jphantom> тест: сгенерировать пачку текстовых файлов длиной от 0 или 1 и до N, залить на другую машину, пытаться скачивать по ssh [10:08:58] <jphantom> вот стек в месте подвисания: ==22008== Process terminating with default action of signal 15 (SIGTERM) ==22008== at 0x5A5C370: __read_nocancel (in /lib64/libpthread-2.11.2.so) ==22008== by 0x42DC5F: fish_linear_read (fish.c:1033) ==22008== by 0x427516: vfs_s_read (direntry.c:587) ==22008== by 0x421364: mc_read (vfs.c:904) ==22008== by 0x45841E: copy_file_file (file.c:1437) ==22008== by 0x459F10: panel_operate (file.c:2470) ==22008== by 0x44E79B: copy_cmd (cmd.c:811) ==22008== by 0x466390: midnight_execute_cmd (midnight.c:1061) ==22008== by 0x419931: buttonbar_callback (buttonbar.c:150) ==22008== by 0x42B624: dlg_process_event (widget-common.h:132) ==22008== by 0x42B9D8: run_dlg (dialog.c:529) ==22008== by 0x467695: do_nc (midnight.c:881) [10:09:16] <jphantom> запускал под valgring прибил по sigterm [10:10:36] <jphantom> gdb также показывает что у fish_linear_read() в параметрах стоит на 8 меньшая длина, чем длина файла (хотя это м\б не всегда, т.е. не для всех файлов именно такое значение) [10:11:42] <jphantom> напомню, что именно 8 байт псевдомусора "### 200\n" пишется в принимаемый файл вместо его содержимого [10:11:54] <jphantom> возможно это как-то связано [10:13:46] <jphantom> сам mc при сборке оптимизировался и gdb ничего в этой части стека не показал, а как autotools перестроить на дебажную сборку я не в курсе [10:22:36] <jphantom> возможно глюк даже не в mc, а где-то в fish, либо в мс на стыке в fish, строка "### 200\n" по описанию является частью протокола fish и передается после данных [12:23:21] <il.smind > может есть желание потестить sftp? [12:36:12] ilia maslakov зашёл в конференцию [13:12:26] <jphantom> sftp эти же файлы успешно забирает [13:14:07] <jphantom> в смысле никсовый sftp клиент [13:14:22] <jphantom> что там внутри mc я не знаю [13:15:58] ilia maslakov вышел из конференции [13:16:57] ilia maslakov зашёл в конференцию [13:16:59] <il.smind > нене sftp в mc [13:17:26] <il.smind > надо собрать бранч [13:17:39] <jphantom> вы как mc отлаживаете, в чем? [13:18:51] <jphantom> ide и т.п. [13:19:55] <il.smind > https://www.midnight-commander.org/ticket/1535 [13:20:16] <il.smind > jphantom: нене [13:20:25] <il.smind > 2 варианта [13:20:48] <il.smind > добавлять mc_log () [13:21:11] <il.smind > или в gdb [13:22:52] <il.smind > если есть желание поковыряться с fish [13:23:06] <il.smind > то надо отладку включить [13:24:57] <jphantom> понятно, только по логам... [13:25:19] <il.smind > не [13:25:26] <il.smind > либо gdb [13:25:34] <il.smind > но я логами пользуюсь [13:25:48] <jphantom> голый gdb это та еще жесть [13:26:12] <il.smind > да не, почему? [13:26:24] <jphantom> как отладочную сборку то включить? [13:26:41] <il.smind > в фиш? [13:26:56] <jphantom> вообще, чтобы ничего не оптимизировалось и не стрипалось [13:28:43] <il.smind > make CFLAGS=-ggdb3 # here it is! [13:29:06] <il.smind > тут вот про https://www.midnight-commander.org/wiki/doc/tracingCrash [13:29:35] <jphantom> это прекрывает настройки в автоматически сгенерированных makefile-ах ? [13:29:55] <il.smind > эм [13:30:02] <il.smind > думаю да [13:38:18] il.smind вышел из конференции [13:53:36] <jphantom> интересная вещь происходит в fish.c [13:56:33] <jphantom> при первом же входе в fish_linear_read, если принимается файл в 64 байта или короче, то сразу на fish.c:1033 read() возвращает 8 - длину завершающей передачу строки протокола (### 200), данные вообще не приходят! mc зацикливается пытаясь слупить с сокета остальные байты, а их там _уже_ нет. [13:57:45] il.smind зашёл в конференцию [13:58:06] <il.smind > ща.. [14:00:56] <il.smind > еще раз версию скажи [14:01:00] <il.smind > мц [14:02:41] <il.smind > отладку фиш включи [14:03:35] <il.smind > в fish.c найди "Simple FISH debug interface" [14:03:51] <il.smind > надо там убрать #if 0 [14:04:05] <il.smind > и убрать #endif [14:04:32] <il.smind > тогда будет создаваться отладочный лог [14:05:51] <jphantom> bdd3893d1e6b0dfefa8cc9b69af9a3dd1df47897 [14:06:24] <jphantom> последняя стабильная ревизия [14:07:00] andrew_b зашёл в конференцию [14:11:08] <jphantom> что то не может слинковать vfs_* с включеной отладкой фиша [14:11:32] <jphantom> ftpfs.c куча undefined reference [14:12:13] <jphantom> какая либа звбыта? [14:13:53] <il.smind > <jphantom> последняя стабильная ревизия ась? [14:14:06] <jphantom> да [14:14:07] <il.smind > т.е тут всё ок быбо? [14:14:15] <il.smind > да? [14:14:23] <jphantom> не, нигде ок не было [14:15:16] <il.smind > jphantom> не, нигде ок не было т.е. всегда было плохо? [14:15:38] <il.smind > а... у тебя последняя [14:15:48] <il.smind > вот эта bdd3893d1e6b0dfefa8cc9b69af9a3dd1df47897 [14:15:51] <il.smind > да? [14:15:52] <andrew_b> $ git show bdd3893d1e6b0dfefa8cc9b69af9a3dd1df47897 fatal: bad object bdd3893d1e6b0dfefa8cc9b69af9a3dd1df47897 [14:16:03] <jphantom> да, она [14:16:07] <andrew_b> Шо за bdd3893d1e6b0dfefa8cc9b69af9a3dd1df47897? [14:16:38] <andrew_b> Нету такого. [14:16:56] <jphantom> FIXFOR: Set logfile for smbfs using mc_setctl() Author Slava Zanko<slavazanko@gmail.com> Author date 9/9/11 2:58 PM Parent (try_complete): fixed warinig: Child Working dir changes Follows 4.7.5.3 (Avoided warning message about non-existent maint/version....) FIXFOR: Set logfile for smbfs using mc_setctl() Signed-off-by: Slava Zanko <slavazanko@gmail.com> [14:17:42] <jphantom> а эта есть ( 033ccc4510505ab23c445563eb0cc81ca6982764 )? [14:18:04] <andrew_b> Эта есть. [14:18:15] <jphantom> эта с тегом [14:18:16] <andrew_b> git branch что говорит? [14:20:25] <jphantom> ну у меня это master [14:20:54] <il.smind > я просто тут с сыном лего собираю [14:21:13] <il.smind > git pull [14:21:25] <il.smind > git reset --hard origin/master [14:22:11] <jphantom> дык это уже 4.8.0-pre2 [14:23:29] <andrew_b> Там мы смотрим бранч или стабильную ветку? [14:23:34] <andrew_b> Хотя пофигу. [14:23:43] <jphantom> если в 4.8 вопиющих багов нет, то я переключуюсь на нее [14:23:52] <andrew_b> В фише разницы нет. [14:24:00] <jphantom> а в остальном? [14:24:52] <andrew_b> В остальном различия большие. [14:25:31] <andrew_b> Хотя, в vfs многое переписано. [14:25:49] <andrew_b> Лучше пока остаться на 4.7.5-stable. [14:27:23] <jphantom> ок, я тогда сейчас проверю еще последнюю ревизию в нестабильной ветке [14:31:40] <jphantom> config.status: error: cannot find input file: `lib/vfs/mc-vfs/Makefile.in' [14:32:10] <jphantom> autogen? [14:32:18] <andrew_b> Угу. [14:55:06] <andrew_b> slavazanko/w: аууу!!!111 [14:58:42] <jphantom> в этой ветке все то же самое [15:00:20] <il.smind > можно увидеть git log [15:00:21] <jphantom> если файл длиной хотя бы 65 байт, в fish.c:1071 read() принимает данные и возвращает их длину 65, но если файл 64 байта или короче, read() возвращает 8 и пишет в данные строку протокола, вместо рального содержимого файла [15:01:36] <jphantom> в общем баг успешно пережил все коммиты [15:02:06] <jphantom> вот только чей это баг становится как то не совсем понятно [15:05:10] BanderOS вышел из конференции [15:07:36] BanderOS зашёл в конференцию [15:10:38] <andrew_b> У меня локально нет таких проблем. [15:10:54] <andrew_b> Файл в 43 байта успешно скачался. [15:14:43] <jphantom> может ssh сервер кривой? [15:17:50] <jphantom> "там" стоит centos 5.6 [15:24:37] <jphantom> да, кажется с серваком не все в порядке... [15:26:14] <jphantom> или с подготовкой к копированию [15:28:06] <jphantom> по локалке с другой машины тоже нормально скачалось [15:28:53] <jphantom> кто-то кушает данные по дороге что ли? :-\ [15:35:02] BanderOS вышел из конференции [15:55:09] <jphantom> мда... strace говорит что данные действительно не доходят [15:57:24] <jphantom> для 64-байтного файла сервер сначала посылает "64\n### 100\n" и тут же дважды (!!) "###200\n", mc пытается сделать read() из сокета с длиной 64, но получает только 8-байтную служебку [15:57:36] <jphantom> ой, не дважды [15:57:45] <jphantom> один раз, но данные файла не послает [16:04:17] <jphantom> мистика [16:14:05] <jphantom> хотя нет, если sftp файлы принимает, значит червер их отдает нормально [16:14:16] <jphantom> тогда проблема в fish [16:35:22] <il.smind > jphantom: ты отладку включил в фиш? [16:36:48] <il.smind > мне к сожалению сейчас не очень удобно вникать [16:37:01] <il.smind > могу или вечером в 10 [16:37:26] <il.smind > или в понедельник с 9 утра помочь разобраться [16:37:54] <il.smind > но ты так и не показал вывод git log [16:38:07] <il.smind > хочется на него глянуть [16:41:43] <jphantom> не получилось. на стабильной ветке у меня mc с включеной отладкой фиша не слинковался, а потом я переключился на нестабильную ветку [16:43:09] <jphantom> сейчас вот тут commit 4df0e1cfbf6131c7695710670f323133d382913b Author: Slava Zanko <slavazanko@gmail.com> Date: Fri Sep 9 16:30:07 2011 +0300
Updated NEWS for 4.8.0-pre2 release.
Signed-off-by: Slava Zanko <slavazanko@gmail.com> [16:45:16] <jphantom> il.smind: в общем я пока пришел к выводу, что проблема в комбинации фиша и одной конкретной машины под centos [16:46:18] <jphantom> отдельно в mc есть только доверчивость к данным и надежда на добропоряодчность сервера :) [16:52:55] <jphantom> btw, а что там насчет sftp в mc ? [16:54:48] <jphantom> я так понял что с фишем это немного разные вещи [16:56:30] <il.smind > да не... [16:58:51] <il.smind > так вот [16:59:06] <il.smind > надо включить отладку в коде [16:59:27] <il.smind > фиша [16:59:36] <il.smind > включил? [17:03:03] <jphantom> да [17:07:42] <il.smind > можно глянуть кусок отладки? [17:12:20] <jphantom> куда оно писать должно? [17:16:08] <jphantom> /tmp/mc-FISH.sh ? [17:16:40] <il.smind > эм... [17:16:56] <jphantom> последние строчки перед повешаньем: 64\n ### 100\n [17:17:18] <il.smind > нене [17:17:36] <il.smind > переменные среды интересуют [17:18:13] <il.smind > последние пару скриптов можно глянуть? [17:19:21] <jphantom> т.е. куски этого /tmp/mc-FISH.sh ? [17:20:32] <jphantom> откуда отладочный вывод брать? [17:20:42] <jphantom> я не понял [17:24:20] <il.smind > дак вроде от туда [17:24:26] <il.smind > там только один файл [17:25:06] <il.smind > я бы глянул но я тут одной рукой с сыном собираю самолёт а второй уроки дочери проверяю [17:25:19] <il.smind > /tmp/mc-FISH.sh очень похоже [17:28:21] <il.smind > последних 30-40 строк из него бы посмотреть [17:33:14] <il.smind > ау [17:33:51] <jphantom> там фарш какой то из функций [17:34:03] <il.smind > да [17:34:09] <il.smind > давай фарш [17:34:30] <il.smind > лучше через fpaste [17:35:05] <il.smind > echo > /tmp/mc-FISH.sh запускаем mc [17:35:14] <il.smind > копируем [17:35:22] <il.smind > виснет [17:35:46] <il.smind > cat /tmp/mc-FISH.sh |fpaste [17:36:58] <jphantom> отправиол в личку [17:48:58] <il.smind > ага смотрю [17:49:26] <il.smind > вывод mc -f [17:49:54] <il.smind > и mc -F [18:19:48] <andrew_b> Предлагаю 2338 таки втолкнуть в уходящие вагоны релизов. [18:24:24] <il.smind > обоснуй [18:32:30] <slavazanko/w> 15:55:06) andrew_b: slavazanko/w: аууу!!!111 я тут. Целый день носился по городу, машину переобувал [18:32:35] <slavazanko/w> что случилось? [18:33:04] <il.smind > у вас снег? [18:34:22] <slavazanko/w> нет. У нас сегодня было +20. Завтро будет +22...24 [18:34:30] <slavazanko/w> а что? [18:37:00] <il.smind > зачем переобуваться? [18:41:58] <il.smind > slavazanko/w: эта [18:55:14] il.smind вышел из конференции [18:55:47] il.smind зашёл в конференцию [18:55:48] <andrew_b> slavazanko/w: херово всё. [18:55:59] <andrew_b> Тарбол не собирается. [18:56:00] <il.smind > да [18:56:12] <il.smind > это я и хотел сказать [18:57:00] <andrew_b> Последний мой русский перевод с этого грёбаного Трансифекса похерился. [18:57:31] <il.smind > вот суки [19:09:37] <slavazanko/w> как именно перевод похерился? перевод был на трансифексе сделан? [19:09:48] <andrew_b> Конечно нет. [19:09:56] <slavazanko/w> тарболл не собирается - ща проверю [19:09:59] <andrew_b> Перевод был сделан в репе. [19:10:18] <slavazanko/w> Блин. Понятно. Ща воостановлю [19:10:33] <andrew_b> Я сам. [19:11:16] <andrew_b> Предлагаю не спешить с релизом и подождать до завтра или до понедельника. [19:11:25] <andrew_b> А то мало ли... [19:11:45] <slavazanko/w> угу, согласен. Сейчас не спеша косячки подправим [19:13:03] <andrew_b> Логи вчерашние почитай. Я там патч приводил. [19:13:25] <andrew_b> И вроде бы patchsetfs должен быть patchsetfs+ [19:13:38] <andrew_b> Это же не файловая vfs. [19:13:45] <slavazanko/w> make[5]: *** Нет правила для сборки цели `changesetfs', требуемой для `all-am'. Останов. [19:13:47] <andrew_b> По аналогии с rpms+ [19:14:04] <slavazanko/w> наверное, да [19:16:29] <slavazanko/w> прямой коммит в мастер? [19:17:05] <andrew_b> Да. [19:17:15] <slavazanko/w> ок [19:24:00] <jphantom> бага с передачей файлов побеждена [19:24:15] <slavazanko/w> ?? [19:24:18] <slavazanko/w> как? [19:24:21] <jphantom> diff --git a/src/vfs/fish/helpers/get b/src/vfs/fish/helpers/get index edfca5c..762267a 100755 --- a/src/vfs/fish/helpers/get +++ b/src/vfs/fish/helpers/get @@ -23,7 +23,7 @@ if (open IFILE,$filename) { } printf("### 100\n"); seek (IFILE, $pos, 0); - while ($n = read(IFILE,$content,$blocks)!= 0) { + while ($n = read(IFILE,$content,$blksize)!= 0) { print $content; } close IFILE; [19:24:50] <jphantom> скрипт глотал короткие файлы [19:25:16] <slavazanko/w> жесть. Автора на мыло. [19:26:44] <jphantom> не, не надо на мыло, он хороший :) [19:28:14] <slavazanko/w> ну ладно, пусть живёт. [19:39:24] <jphantom> патчик прицепите кто-нибудь пока не забыли, плз [19:39:44] <il.smind > я же теюя просил прицепить :) [19:39:46] <il.smind > ок [19:39:47] <slavazanko/w> да, я уже создаю тикет. Спасибо большое за исследование и за фикс [19:39:57] <il.smind > я запушу фикс [19:40:06] <slavazanko/w> тикет сначала надо [19:41:37] <jphantom> il:smind: еще багу найду - тогда зарегаюсь [19:43:43] <slavazanko/w> https://www.midnight-commander.org/ticket/2605 Илья, бранчуй [19:46:07] <andrew_b> 2338 предлагаю в релизы. Во-первых, неаккуратненько. когда переполнение происходит. Во-вторых, я там строки поменял. А вроде как договорились заморозить их. [19:46:54] <slavazanko/w> ну тады навалимся и вольём. 2605 тоже предлагаю влить [19:50:35] <slavazanko/w> посмотрите ещё одним глазом DEV_extfs_fix Это чтобы в мастере если что не рабезировать надцать раз. Я всё правильно сделал с changersetfs и patchsetfs? [19:52:42] <Зося Синицкая> RSS: Новости для Midnight Commander • Ticket #2605 (FISH: mc hangs while copy lot of small files) created http://www.midnight-commander.org/ticket/2605 • Ticket #2605 (FISH: mc hangs while copy lot of small files) updated http://www.midnight-commander.org/ticket/2605#comment:1 [19:56:17] <slavazanko/w> по поводу 2338: а чего патч по расширению интовых полей до off_t не принимается? [19:57:05] <andrew_b> uintmax_t [19:57:15] <slavazanko/w> ага, уже вижу [19:57:40] <andrew_b> DEV_extfs_fix: а чёйта patchsetfs+.in вдруг in стал? [19:57:48] <slavazanko/w> да, кажись uintmax_t более правильное решение. Беззнаковое к тому же [19:58:17] <slavazanko/w> > а чёйта patchsetfs+.in вдруг in стал ну.. по аналогии с rpms+ [19:58:33] <andrew_b> Да не... [19:58:48] <andrew_b> .in, если там замену надо деать какую. [19:58:54] <slavazanko/w> угу [19:58:59] <andrew_b> А там вроде ничего не делается. [19:59:04] <slavazanko/w> ну ладно, ща переделаю [20:01:08] <andrew_b> А changesetfs не надо с плюсом? [20:03:36] <andrew_b> Шо-то не работает... [20:03:49] <slavazanko/w> ? [20:03:50] <andrew_b> cd changesetfs:// [20:06:00] <andrew_b> А, блин. [20:06:08] <andrew_b> Сначала надо cd gitfs:// [20:06:29] <andrew_b> Его, кстати, тоже с плюсом. [20:06:42] <slavazanko/w> понял [20:07:43] <andrew_b> cd gitfs:// не работает. [20:08:07] <andrew_b> Без плюса [20:08:54] <slavazanko/w> ща.. у себя допроверю и запушу [20:11:33] <andrew_b> Кто аффтар этих changesetfs и patchsetfs ? [20:13:33] <andrew_b> В них виснем напрочь. [20:14:19] <andrew_b> Причём нагрузки на процессор нет. [20:14:34] <andrew_b> Словно чего-то ждём. [20:17:39] <andrew_b> Ладно, пойду я... [20:17:44] andrew_b вышел из конференции [20:22:49] <il.smind > >Илья, бранчуй бранчевать что? [20:33:03] <jphantom> есть еще один момент с передачей файлов через ssh (FISH), но на этот раз уже с закачкой. по разным причинам mc может оставлять за собой в /tmp копии передаваемых файлов (недокачаных ?) и постепенно забивает ими весь /tmp. можно что-нибудь придумать насчет очистки "своих" ошметков из /tmp. например, регулярно вычищать их не кэшировать их туда... [20:34:12] <jphantom> в 4.8.x как с этим? [20:37:13] <slavazanko/w> > (20:39:47) slavazanko/w: да, я уже создаю тикет. Спасибо большое за исследование и за фикс > (20:39:58) il.smind : я запушу фикс 2605 [20:37:44] <slavazanko/w> в 4.8.0 будет также. Фиш мы кардинально не трогали [20:39:07] <slavazanko/w> > (21:17:39) andrew_b: Ладно, пойду я... > (21:17:44) andrew_b вышел из комнаты. апупеть. Я, блин, сидел, старался... дже когда срать припёрло - и то тужился, чтобы быстрее Андрюху удовлетворить... а он всял и свалил. Я в печали [20:45:04] <slavazanko/w> мощно запушил DEV_extfs_fix Тарболлы, созданные из бранча, собираются. Гитфс работает. Жду одобрямс перед прямым коммитом в мастер [21:13:52] <il.smind > slavazanko/w: ну я имел ввиду этот как его... клинап [21:15:57] <il.smind > хотя ладно давайте в следующий релиз [21:16:27] <il.smind > ладно забранчую [22:43:42] il.smind вышел из конференции [23:14:32] il.smind зашёл в конференцию