From: Dmitry Chistikov <dd1email@gmail.com> To: ALT Linux Community general discussions <community@lists.altlinux.org> Subject: Re: [Comm] Не открывается порт Date: Sat, 4 Feb 2012 14:52:55 +0400 Message-ID: <20120204105255.GE9497@conflux.foliandre> (raw) In-Reply-To: <4F2D022D.9030009@mail.ru> Vladimir Karpinsky, Feb. 04, 2012, 14:02 +0400: > Ведёт, но там про это ничего нет. Появляется строка, что клиент запросил > данные, и падение. Какой-нибудь debug level увеличить не получается? > В выводе strace достаточно много раз присутствует такого вида строки: > 13841 access(0xfffffffff77cf6fa, R_OK) = -1 ENOENT (No such file or directory) > ... > 13841 stat64(0xffffffffffa882e3, 0xffffffffffa871b4) = -1 ENOENT (No such > file or directory) Если поглядеть в access(2) и stat(2), то первый параметр у этих вызовов const char *. Если Вы специально не подкручивали strace на такой формат вывода, то, скорее всего, соответствующий указатель смотрит куда-то не туда. Неплохо бы понять, почему так получилось. На чем эта штука написана? Иногда может оказаться полезным ltrace (library call tracer). > 13841 socket(PF_UNSPEC, 0, 0) = 4 > 13841 connect(0, NULL, 0) = -1 ENOENT (No such file or directory) > > Можно ли как-то вычислить о каком "such file or directory" идёт речь? Не могу ответить уверенно. Обратите внимание, что socket возвращает файловый дескриптор (в данном случае это 4), а connect принимает файловый дескриптор в качестве первого параметра (в данном случае это 0). Таким образом, в этих строках речь о разном. Страница connect(3p) указывает, что для unix-сокетов (AF_UNIX) ситуация ENOENT возникает в случае, если по указанному пути, грубо говоря, нельзя пройти ("A component of the pathname does not name an existing file or the pathname is an empty string"). Попробуйте изучить историю нулевого дескриптора, скормленного connect'у, до этого вызова. > Есть ещё такие: > 13842 stat64("/usr/nrts/vyb/meta", 0xffffffffffa89144) = -1 ENOENT (No such > file or directory) > > Файла meta не существует и не должно быть. В работающей программе под ядром > 2.4 так: > 23326 stat64("/usr/nrts/vyb/meta", <unfinished ...> > 23328 <... rt_sigaction resumed> NULL, 8) = 0 > 23326 <... stat64 resumed> 0xbffff374) = -1 ENOENT (No such file or directory) > 23328 rt_sigaction(SIGRT_15, {0x1778f0, ~[], SA_RESTORER, 0x1e5958}, > <unfinished ...> > > То же про отсутствие файлов есть, но не так. По-моему, одно и то же. (Опять же могу ошибаться.) > Кончается всё сегфлотом: [...] Надо понять, в какой момент крышу начинает сносить. > Собственно главный вопрос --- не изменились ли какие-нибудь правила (при > переходах: веток 4 -> p6, ядер 2.* -> 3.*, и архитектуры i586 -> x86_64) в > смысле прав на открытие портов и т.п. Если всё должно работать по-прежнему, > то надо разбираться с разработчиками, но этот процесс увы не так прост... Правила - понятие широкое. Программа, конечно, должна адекватно отслеживать возможные ошибки, но это общезначимо и совсем не новость. Сложно сказать, на что именно программа ошибочно подвязалась (если). -- Дмитрий Чистиков
next prev parent reply other threads:[~2012-02-04 10:52 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-02-03 17:14 Vladimir Karpinsky 2012-02-04 5:23 ` Vladimir Karpinsky 2012-02-04 5:35 ` Vladimir Karpinsky 2012-02-04 7:58 ` Dmitry Chistikov 2012-02-04 9:48 ` Vladimir Karpinsky 2012-02-04 10:13 ` Alexei Takaseev 2012-02-04 10:50 ` Vladimir Karpinsky 2012-02-04 10:02 ` Vladimir Karpinsky 2012-02-04 10:52 ` Dmitry Chistikov [this message] 2012-02-04 11:23 ` Vladimir Karpinsky 2012-02-04 11:55 ` Dmitry Chistikov 2012-02-04 18:16 ` Vladimir Karpinsky
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20120204105255.GE9497@conflux.foliandre \ --to=dd1email@gmail.com \ --cc=community@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git