ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] How to generate core and backtrace files
@ 2007-06-14 15:11 Eugene Prokopiev
  2007-06-14 15:41 ` Led
                   ` (2 more replies)
  0 siblings, 3 replies; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 15:11 UTC (permalink / raw)
  To: Devel

Здравствуйте!

Я прошу прощения за вопросы явно из FAQ, но нашел только 
http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjling?v=tk1&search=core, 
а кроме того помню, что с core files у нас по умолчанию не так как у 
всех, потому спрашиваю. У меня стабильно воспроизводится падение 
callweaver в определенной ситуации. Апстрим по этому поводу говорит:

If you have a core file please generate a backtrace (“gdb 
/path/to/callweaver core” and type “bt” at the prompt.

Собственно вопрос: как это сделать? callweaver у меня собирается в 
hasher, но на той же машине, что и тестируется. Я сделал hsh-install 
~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug 
callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что 
сказать LD_LIBRARY_PATH? Где включить генерацию core?

-- 
С уважением, Прокопьев Евгений



^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 15:11 [devel] How to generate core and backtrace files Eugene Prokopiev
@ 2007-06-14 15:41 ` Led
  2007-06-14 15:45   ` Pavlov Konstantin
  2007-06-14 16:01   ` Eugene Prokopiev
  2007-06-15  8:57 ` Eugene Prokopiev
  2007-06-18 19:24 ` Michael Shigorin
  2 siblings, 2 replies; 24+ messages in thread
From: Led @ 2007-06-14 15:41 UTC (permalink / raw)
  To: ALT Devel discussion list

В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
> Здравствуйте!
>
> Я прошу прощения за вопросы явно из FAQ, но нашел только
> http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjling?
>v=tk1&search=core, а кроме того помню, что с core files у нас по умолчанию
> не так как у всех, потому спрашиваю. У меня стабильно воспроизводится
> падение
> callweaver в определенной ситуации. Апстрим по этому поводу говорит:
>
> If you have a core file please generate a backtrace (“gdb
> /path/to/callweaver core” and type “bt” at the prompt.
>
> Собственно вопрос: как это сделать? callweaver у меня собирается в
> hasher, но на той же машине, что и тестируется. Я сделал hsh-install
> ~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
> callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
> сказать LD_LIBRARY_PATH? Где включить генерацию core?

man bash
на предмет ulimit

-- 
Led

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 15:41 ` Led
@ 2007-06-14 15:45   ` Pavlov Konstantin
  2007-06-14 16:06     ` Eugene Prokopiev
  2007-06-14 16:01   ` Eugene Prokopiev
  1 sibling, 1 reply; 24+ messages in thread
From: Pavlov Konstantin @ 2007-06-14 15:45 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 1252 bytes --]

On Thu, Jun 14, 2007 at 06:41:56PM +0300, Led wrote:
> В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
> > Здравствуйте!
> >
> > Я прошу прощения за вопросы явно из FAQ, но нашел только
> > http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjling?
> >v=tk1&search=core, а кроме того помню, что с core files у нас по умолчанию
> > не так как у всех, потому спрашиваю. У меня стабильно воспроизводится
> > падение
> > callweaver в определенной ситуации. Апстрим по этому поводу говорит:
> >
> > If you have a core file please generate a backtrace (???gdb
> > /path/to/callweaver core??? and type ???bt??? at the prompt.
> >
> > Собственно вопрос: как это сделать? callweaver у меня собирается в
> > hasher, но на той же машине, что и тестируется. Я сделал hsh-install
> > ~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
> > callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
> > сказать LD_LIBRARY_PATH? Где включить генерацию core?
> 
> man bash
> на предмет ulimit

и sysctl kernel.core_pattern не забыть

-- 
<Maks> Что ж так медленно пинги ходят сегодня? или это я просто после открытия
       велосезона сегодня так на всё реагирую? :)

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 15:41 ` Led
  2007-06-14 15:45   ` Pavlov Konstantin
@ 2007-06-14 16:01   ` Eugene Prokopiev
  2007-06-14 16:12     ` Andrey Rahmatullin
                       ` (2 more replies)
  1 sibling, 3 replies; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 16:01 UTC (permalink / raw)
  To: ALT Devel discussion list

Led пишет:
> В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
> 
>>Здравствуйте!
>>
>>Я прошу прощения за вопросы явно из FAQ, но нашел только
>>http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjling?
>>v=tk1&search=core, а кроме того помню, что с core files у нас по умолчанию
>>не так как у всех, потому спрашиваю. У меня стабильно воспроизводится
>>падение
>>callweaver в определенной ситуации. Апстрим по этому поводу говорит:
>>
>>If you have a core file please generate a backtrace (“gdb
>>/path/to/callweaver core” and type “bt” at the prompt.
>>
>>Собственно вопрос: как это сделать? callweaver у меня собирается в
>>hasher, но на той же машине, что и тестируется. Я сделал hsh-install
>>~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
>>callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
>>сказать LD_LIBRARY_PATH? Где включить генерацию core?
> 
> 
> man bash
> на предмет ulimit
> 

после установки собранного пакета:

# ulimit -c 10000000000
# cp -a 
/data/build/hasher-callweaver/chroot/usr/src/RPM/BUILD/callweaver-1.1.99.20070614/ 
.
# cd callweaver-1.1.99.20070614
# LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
GNU gdb 6.6-alt1 (ALT Linux)
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain 
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-alt-linux"...
Using host libthread_db library "/lib64/libthread_db.so.1".
(gdb) run -vvvvvcd
...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1092139328 (LWP 24377)]
0x00002afca9067cc4 in strncpy () from /lib64/libc.so.6
(gdb) quit
The program is running.  Exit anyway? (y or n) y

И где теперь сам дамп? В текущем каталоге ничего подозрительного нет.

-- 
С уважением, Прокопьев Евгений



^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 15:45   ` Pavlov Konstantin
@ 2007-06-14 16:06     ` Eugene Prokopiev
  0 siblings, 0 replies; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 16:06 UTC (permalink / raw)
  To: ALT Devel discussion list

Pavlov Konstantin пишет:
> On Thu, Jun 14, 2007 at 06:41:56PM +0300, Led wrote:
> 
>>В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
>>
>>>Здравствуйте!
>>>
>>>Я прошу прощения за вопросы явно из FAQ, но нашел только
>>>http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjling?
>>>v=tk1&search=core, а кроме того помню, что с core files у нас по умолчанию
>>>не так как у всех, потому спрашиваю. У меня стабильно воспроизводится
>>>падение
>>>callweaver в определенной ситуации. Апстрим по этому поводу говорит:
>>>
>>>If you have a core file please generate a backtrace (???gdb
>>>/path/to/callweaver core??? and type ???bt??? at the prompt.
>>>
>>>Собственно вопрос: как это сделать? callweaver у меня собирается в
>>>hasher, но на той же машине, что и тестируется. Я сделал hsh-install
>>>~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
>>>callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
>>>сказать LD_LIBRARY_PATH? Где включить генерацию core?
>>
>>man bash
>>на предмет ulimit
> 
> 
> и sysctl kernel.core_pattern не забыть

# sysctl -a | grep kernel.core_pattern
error: reading key "net.ipv4.route.flush": Operation not permitted
kernel.core_pattern = core

Но результат такой же - файла не вижу. Как он называться-то должен?

-- 
С уважением, Прокопьев Евгений



^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 16:01   ` Eugene Prokopiev
@ 2007-06-14 16:12     ` Andrey Rahmatullin
  2007-06-14 17:47       ` Eugene Prokopiev
  2007-06-14 18:41       ` [devel] " Sergey Vlasov
  2007-06-14 16:18     ` Led
  2007-06-14 18:35     ` Sergey Vlasov
  2 siblings, 2 replies; 24+ messages in thread
From: Andrey Rahmatullin @ 2007-06-14 16:12 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 452 bytes --]

On Thu, Jun 14, 2007 at 08:01:31PM +0400, Eugene Prokopiev wrote:
> # LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
зачем?

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

[...] подписываетесь на doc@altlinux.ru, громко говорите "я пишу доку по
использованию RPM в альт и хотел бы ознакомиться со спецификой", и через
полгода дока готова. В принципе других шансов появиться у нее нет.
		-- cray in sisyphus@

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 16:01   ` Eugene Prokopiev
  2007-06-14 16:12     ` Andrey Rahmatullin
@ 2007-06-14 16:18     ` Led
  2007-06-14 18:32       ` Eugene Prokopiev
  2007-06-14 18:35     ` Sergey Vlasov
  2 siblings, 1 reply; 24+ messages in thread
From: Led @ 2007-06-14 16:18 UTC (permalink / raw)
  To: ALT Devel discussion list

В сообщении от Thursday 14 June 2007 19:01:31 Eugene Prokopiev написал(а):
> Led пишет:
> > В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
> >>Здравствуйте!
> >>
> >>Я прошу прощения за вопросы явно из FAQ, но нашел только
> >>http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjlin
> >>g? v=tk1&search=core, а кроме того помню, что с core files у нас по
> >> умолчанию не так как у всех, потому спрашиваю. У меня стабильно
> >> воспроизводится падение
> >>callweaver в определенной ситуации. Апстрим по этому поводу говорит:
> >>
> >>If you have a core file please generate a backtrace (“gdb
> >>/path/to/callweaver core” and type “bt” at the prompt.
> >>
> >>Собственно вопрос: как это сделать? callweaver у меня собирается в
> >>hasher, но на той же машине, что и тестируется. Я сделал hsh-install
> >>~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
> >>callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
> >>сказать LD_LIBRARY_PATH? Где включить генерацию core?
> >
> > man bash
> > на предмет ulimit
>
> после установки собранного пакета:
>
> # ulimit -c 10000000000
> # cp -a
> /data/build/hasher-callweaver/chroot/usr/src/RPM/BUILD/callweaver-1.1.99.20
>070614/ .
> # cd callweaver-1.1.99.20070614
> # LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
> GNU gdb 6.6-alt1 (ALT Linux)
> Copyright (C) 2006 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you
> are welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "x86_64-alt-linux"...
> Using host libthread_db library "/lib64/libthread_db.so.1".
> (gdb) run -vvvvvcd
> ...
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 1092139328 (LWP 24377)]
> 0x00002afca9067cc4 in strncpy () from /lib64/libc.so.6
> (gdb) quit
> The program is running.  Exit anyway? (y or n) y
>
> И где теперь сам дамп? В текущем каталоге ничего подозрительного нет.

А может достаточно -fPIC в CFLAGS добавить, чтобы не сегфолтилось на x86_64? У 
нас в Сизифе сборка qiv под x86_64 с похожими симптомами лежит. И лечится 
именно -fPIC.

-- 
Led

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 16:12     ` Andrey Rahmatullin
@ 2007-06-14 17:47       ` Eugene Prokopiev
  2007-06-14 17:51         ` Andrey Rahmatullin
  2007-06-14 18:41       ` [devel] " Sergey Vlasov
  1 sibling, 1 reply; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 17:47 UTC (permalink / raw)
  To: ALT Devel discussion list

Andrey Rahmatullin пишет:
> On Thu, Jun 14, 2007 at 08:01:31PM +0400, Eugene Prokopiev wrote:
> 
>># LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
> 
> зачем?

ну а я откуда знаю? делал по аналогии с инструкцией ;)

внимательно выслушаю ваши предложения, что же мне все-таки делать :)

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 17:47       ` Eugene Prokopiev
@ 2007-06-14 17:51         ` Andrey Rahmatullin
  2007-06-14 18:43           ` Eugene Prokopiev
  0 siblings, 1 reply; 24+ messages in thread
From: Andrey Rahmatullin @ 2007-06-14 17:51 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 460 bytes --]

On Thu, Jun 14, 2007 at 09:47:42PM +0400, Eugene Prokopiev wrote:
> ну а я откуда знаю? делал по аналогии с инструкцией ;)
Так это ж совсем про другое инструкция.

> внимательно выслушаю ваши предложения, что же мне все-таки делать :)
Если всё настроить правильно, core создаётся при падении проги.

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

В этом тысячелетии реально интегрировать этот патч? ;)
		-- mithraen in #6288

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 16:18     ` Led
@ 2007-06-14 18:32       ` Eugene Prokopiev
  2007-06-14 21:15         ` Led
  0 siblings, 1 reply; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 18:32 UTC (permalink / raw)
  To: ALT Devel discussion list

Led пишет:
> В сообщении от Thursday 14 June 2007 19:01:31 Eugene Prokopiev написал(а):
> 
>>Led пишет:
>>
>>>В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
>>>
>>>>Здравствуйте!
>>>>
>>>>Я прошу прощения за вопросы явно из FAQ, но нашел только
>>>>http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjlin
>>>>g? v=tk1&search=core, а кроме того помню, что с core files у нас по
>>>>умолчанию не так как у всех, потому спрашиваю. У меня стабильно
>>>>воспроизводится падение
>>>>callweaver в определенной ситуации. Апстрим по этому поводу говорит:
>>>>
>>>>If you have a core file please generate a backtrace (“gdb
>>>>/path/to/callweaver core” and type “bt” at the prompt.
>>>>
>>>>Собственно вопрос: как это сделать? callweaver у меня собирается в
>>>>hasher, но на той же машине, что и тестируется. Я сделал hsh-install
>>>>~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
>>>>callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
>>>>сказать LD_LIBRARY_PATH? Где включить генерацию core?
>>>
>>>man bash
>>>на предмет ulimit
>>
>>после установки собранного пакета:
>>
>># ulimit -c 10000000000
>># cp -a
>>/data/build/hasher-callweaver/chroot/usr/src/RPM/BUILD/callweaver-1.1.99.20
>>070614/ .
>># cd callweaver-1.1.99.20070614
>># LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
>>GNU gdb 6.6-alt1 (ALT Linux)
>>Copyright (C) 2006 Free Software Foundation, Inc.
>>GDB is free software, covered by the GNU General Public License, and you
>>are welcome to change it and/or distribute copies of it under certain
>>conditions.
>>Type "show copying" to see the conditions.
>>There is absolutely no warranty for GDB.  Type "show warranty" for details.
>>This GDB was configured as "x86_64-alt-linux"...
>>Using host libthread_db library "/lib64/libthread_db.so.1".
>>(gdb) run -vvvvvcd
>>...
>>Program received signal SIGSEGV, Segmentation fault.
>>[Switching to Thread 1092139328 (LWP 24377)]
>>0x00002afca9067cc4 in strncpy () from /lib64/libc.so.6
>>(gdb) quit
>>The program is running.  Exit anyway? (y or n) y
>>
>>И где теперь сам дамп? В текущем каталоге ничего подозрительного нет.
> 
> 
> А может достаточно -fPIC в CFLAGS добавить, чтобы не сегфолтилось на x86_64? У 
> нас в Сизифе сборка qiv под x86_64 с похожими симптомами лежит. И лечится 
> именно -fPIC.

Как это должно выглядеть в спеке? Глянул в qiv, там make 
CFLAGS="%optflags", а где определена %optflags? Пока запустил на сборку 
c %make CFLAGS='-fPIC', не затрет это какие-нибудь другие опции?

Ну и первоначальный вопрос остается в силе: как core dump получить?

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 16:01   ` Eugene Prokopiev
  2007-06-14 16:12     ` Andrey Rahmatullin
  2007-06-14 16:18     ` Led
@ 2007-06-14 18:35     ` Sergey Vlasov
  2 siblings, 0 replies; 24+ messages in thread
From: Sergey Vlasov @ 2007-06-14 18:35 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 1924 bytes --]

On Thu, Jun 14, 2007 at 08:01:31PM +0400, Eugene Prokopiev wrote:
> # ulimit -c 10000000000
> # cp -a 
> /data/build/hasher-callweaver/chroot/usr/src/RPM/BUILD/callweaver-1.1.99.20070614/ 
> .
> # cd callweaver-1.1.99.20070614
> # LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
> GNU gdb 6.6-alt1 (ALT Linux)
> Copyright (C) 2006 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain 
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "x86_64-alt-linux"...
> Using host libthread_db library "/lib64/libthread_db.so.1".
> (gdb) run -vvvvvcd
> ...
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 1092139328 (LWP 24377)]
> 0x00002afca9067cc4 in strncpy () from /lib64/libc.so.6
> (gdb) quit
> The program is running.  Exit anyway? (y or n) y
> 
> И где теперь сам дамп? В текущем каталоге ничего подозрительного нет.

gdb перехватывает SIGSEGV до создания дампа (но в таком варианте дамп
и не нужен - после SIGSEGV можно изучать через gdb состояние ещё
живого процесса, а не восстановленное из дампа, которое может быть уже
неполным).  Вот если запускать программу напрямую (без gdb), должен
создастся дамп (но опять-таки при условии, что программа не пытается
обработать SIGSEGV самостоятельно).

Ещё одни возможные грабли: обычно дамп пишется в текущий каталог
процесса - если выполнялись вызовы chdir(), дамп может оказаться не
там, где ожидалось (либо вообще не создастся, если запись в каталог
оказалась запрещена).  Подобная ситуация может возникать при отладке
демонов; в таких случаях можно писать в kernel.core_pattern абсолютный
путь (и добавить, например, ".%p", чтобы имя файла зависело от pid).

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 16:12     ` Andrey Rahmatullin
  2007-06-14 17:47       ` Eugene Prokopiev
@ 2007-06-14 18:41       ` Sergey Vlasov
  1 sibling, 0 replies; 24+ messages in thread
From: Sergey Vlasov @ 2007-06-14 18:41 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 856 bytes --]

On Thu, Jun 14, 2007 at 10:12:56PM +0600, Andrey Rahmatullin wrote:
> On Thu, Jun 14, 2007 at 08:01:31PM +0400, Eugene Prokopiev wrote:
> > # LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
> зачем?

Добавление %_libdir/debug может быть полезно, чтобы видеть в gdb
значения параметров, переданные функциям libc, если падение происходит
внутри них (что как раз имеет место в данном случае).  Правда, сделано
это было не совсем правильно - на x86_64 нужно указывать путь
/usr/lib64/debug, ну и должен быть установлен как минимум пакет
glibc-core-debug.

Что касается $PWD и .libs/ - можно было вместо ручного указания
использовать команду

  libtool gdb callweaver

В этом случае libtool должен автоматически подставить нужные пути
(возможно, пакет содержит другие библиотеки в этом же .libs/ или в
аналогичных каталогах рядом).

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 17:51         ` Andrey Rahmatullin
@ 2007-06-14 18:43           ` Eugene Prokopiev
  2007-06-14 18:45             ` Andrey Rahmatullin
  2007-06-14 19:18             ` Sergey Vlasov
  0 siblings, 2 replies; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 18:43 UTC (permalink / raw)
  To: ALT Devel discussion list

Andrey Rahmatullin пишет:
> On Thu, Jun 14, 2007 at 09:47:42PM +0400, Eugene Prokopiev wrote:
> 
>>ну а я откуда знаю? делал по аналогии с инструкцией ;)
> 
> Так это ж совсем про другое инструкция.

Разве? А в чем разница между описанной там ситуацией и моей?

>>внимательно выслушаю ваши предложения, что же мне все-таки делать :)
> 
> Если всё настроить правильно, core создаётся при падении проги.

Т.е. запускать ее под gdb не нужно? Необходимо и достаточно откомпилить 
прогу с включенной отладкой (т.е. собрать пакет с --enable debug), 
сказать ulimit -c 10000000000 и sysctl -w kernel.core_pattern=core?

Не создается :(

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 18:43           ` Eugene Prokopiev
@ 2007-06-14 18:45             ` Andrey Rahmatullin
  2007-06-14 19:18             ` Sergey Vlasov
  1 sibling, 0 replies; 24+ messages in thread
From: Andrey Rahmatullin @ 2007-06-14 18:45 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 439 bytes --]

On Thu, Jun 14, 2007 at 10:43:35PM +0400, Eugene Prokopiev wrote:
> Разве? А в чем разница между описанной там ситуацией и моей?
Во всём.
Там про создание core ни слова.


-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

<raorn> 21:56 <rphillips> I wonder if doom3 will have vim keybindings
<thresh> raorn: а ты видел системные требования этого doom3? ;]
<wRAR> thresh: у vim гораздо меньше. даже vim-gtk2

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 18:43           ` Eugene Prokopiev
  2007-06-14 18:45             ` Andrey Rahmatullin
@ 2007-06-14 19:18             ` Sergey Vlasov
  2007-06-14 20:03               ` Eugene Prokopiev
  2007-06-15  2:00               ` Hihin Ruslan
  1 sibling, 2 replies; 24+ messages in thread
From: Sergey Vlasov @ 2007-06-14 19:18 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 977 bytes --]

On Thu, Jun 14, 2007 at 10:43:35PM +0400, Eugene Prokopiev wrote:
> > Если всё настроить правильно, core создаётся при падении проги.
> 
> Т.е. запускать ее под gdb не нужно?

Наоборот - если падение воспроизводится под gdb, нет никакой
необходимости ловить core, достаточно просто запустить под gdb и
дождаться SIGSEGV, после чего делать то же самое, что потом пришлось
бы делать с core.

Кстати, может быть полезно попробовать запустить программу под
valgrind - в некоторых случаях он может обнаружить проблему ближе к
точке, где на самом деле находится ошибка.

> Необходимо и достаточно откомпилить 
> прогу с включенной отладкой (т.е. собрать пакет с --enable debug), 

На самом деле core прекрасно создаётся и без этого, только в этом
случае от него мало пользы.

> сказать ulimit -c 10000000000 и sysctl -w kernel.core_pattern=core?
> 
> Не создается :(

Программа при своей работе не меняет текущий каталог и не занимается
перехватом SIGSEGV?

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 19:18             ` Sergey Vlasov
@ 2007-06-14 20:03               ` Eugene Prokopiev
  2007-06-15  8:41                 ` Sergey Vlasov
  2007-06-15  2:00               ` Hihin Ruslan
  1 sibling, 1 reply; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-14 20:03 UTC (permalink / raw)
  To: ALT Devel discussion list

Sergey Vlasov пишет:
> On Thu, Jun 14, 2007 at 10:43:35PM +0400, Eugene Prokopiev wrote:
> 
>>>Если всё настроить правильно, core создаётся при падении проги.
>>
>>Т.е. запускать ее под gdb не нужно?
> 
> 
> Наоборот - если падение воспроизводится под gdb, нет никакой
> необходимости ловить core, достаточно просто запустить под gdb и
> дождаться SIGSEGV, после чего делать то же самое, что потом пришлось
> бы делать с core.
> 
> Кстати, может быть полезно попробовать запустить программу под
> valgrind - в некоторых случаях он может обнаружить проблему ближе к
> точке, где на самом деле находится ошибка.

Беда в том, что я совершенно не понимаю, что происходит, и как ловить и 
устранять проблему

Backtrace просил апстрим

>>Необходимо и достаточно откомпилить 
>>прогу с включенной отладкой (т.е. собрать пакет с --enable debug), 
> 
> 
> На самом деле core прекрасно создаётся и без этого, только в этом
> случае от него мало пользы.
> 
> 
>>сказать ulimit -c 10000000000 и sysctl -w kernel.core_pattern=core?
>>
>>Не создается :(
> 
> 
> Программа при своей работе не меняет текущий каталог и не занимается
> перехватом SIGSEGV?

Она меняет uid/gid, наверное и каталог тоже, а SIGSEGV перехватывает 
вряд ли.

Похоже, единственный осмысленный для меня выход - выделить VE с 
воспроизводящейся в нем проблемой и упрашивать апстрим посмотреть не нее 
поближе ...

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 18:32       ` Eugene Prokopiev
@ 2007-06-14 21:15         ` Led
  0 siblings, 0 replies; 24+ messages in thread
From: Led @ 2007-06-14 21:15 UTC (permalink / raw)
  To: ALT Devel discussion list

2007/6/14, Eugene Prokopiev <prokopiev@stc.donpac.ru>:
> Led пишет:
> > В сообщении от Thursday 14 June 2007 19:01:31 Eugene Prokopiev написал(а):
> >
> >>Led пишет:
> >>
> >>>В сообщении от Thursday 14 June 2007 18:11:28 Eugene Prokopiev написал(а):
> >>>
> >>>>Здравствуйте!
> >>>>
> >>>>Я прошу прощения за вопросы явно из FAQ, но нашел только
> >>>>http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OtladkaIProfajjlin
> >>>>g? v=tk1&search=core, а кроме того помню, что с core files у нас по
> >>>>умолчанию не так как у всех, потому спрашиваю. У меня стабильно
> >>>>воспроизводится падение
> >>>>callweaver в определенной ситуации. Апстрим по этому поводу говорит:
> >>>>
> >>>>If you have a core file please generate a backtrace ("gdb
> >>>>/path/to/callweaver core" and type "bt" at the prompt.
> >>>>
> >>>>Собственно вопрос: как это сделать? callweaver у меня собирается в
> >>>>hasher, но на той же машине, что и тестируется. Я сделал hsh-install
> >>>>~/hasher glibc-core-debug, в hsh-shell сделал rpm -bb --enable debug
> >>>>callweaver.spec. Дальше непонятно. Ну поставлю я собранный пакет. Что
> >>>>сказать LD_LIBRARY_PATH? Где включить генерацию core?
> >>>
> >>>man bash
> >>>на предмет ulimit
> >>
> >>после установки собранного пакета:
> >>
> >># ulimit -c 10000000000
> >># cp -a
> >>/data/build/hasher-callweaver/chroot/usr/src/RPM/BUILD/callweaver-1.1.99.20
> >>070614/ .
> >># cd callweaver-1.1.99.20070614
> >># LD_LIBRARY_PATH=/usr/lib/debug:$PWD gdb .libs/callweaver
> >>GNU gdb 6.6-alt1 (ALT Linux)
> >>Copyright (C) 2006 Free Software Foundation, Inc.
> >>GDB is free software, covered by the GNU General Public License, and you
> >>are welcome to change it and/or distribute copies of it under certain
> >>conditions.
> >>Type "show copying" to see the conditions.
> >>There is absolutely no warranty for GDB.  Type "show warranty" for details.
> >>This GDB was configured as "x86_64-alt-linux"...
> >>Using host libthread_db library "/lib64/libthread_db.so.1".
> >>(gdb) run -vvvvvcd
> >>...
> >>Program received signal SIGSEGV, Segmentation fault.
> >>[Switching to Thread 1092139328 (LWP 24377)]
> >>0x00002afca9067cc4 in strncpy () from /lib64/libc.so.6
> >>(gdb) quit
> >>The program is running.  Exit anyway? (y or n) y
> >>
> >>И где теперь сам дамп? В текущем каталоге ничего подозрительного нет.
> >
> >
> > А может достаточно -fPIC в CFLAGS добавить, чтобы не сегфолтилось на x86_64? У
> > нас в Сизифе сборка qiv под x86_64 с похожими симптомами лежит. И лечится
> > именно -fPIC.
>
> Как это должно выглядеть в спеке? Глянул в qiv, там make
> CFLAGS="%optflags", а где определена %optflags?

Ещё раз: в Сизифе qiv под x86_64 - нерабочий. Рабочий (исправленный) -
в Daedalus

> Пока запустил на сборку
> c %make CFLAGS='-fPIC', не затрет это какие-нибудь другие опции?

%add_optflags %optflags_shared
%make_build CFLAGS="%optflags"

>
> Ну и первоначальный вопрос остается в силе: как core dump получить?


-- 
Led.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 19:18             ` Sergey Vlasov
  2007-06-14 20:03               ` Eugene Prokopiev
@ 2007-06-15  2:00               ` Hihin Ruslan
  2007-06-15 17:29                 ` Alexey I. Froloff
  1 sibling, 1 reply; 24+ messages in thread
From: Hihin Ruslan @ 2007-06-15  2:00 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 774 bytes --]

Здравствуйте Sergey Vlasov
  В сообщении от 14 июня 2007 Sergey Vlasov написал(a):
 > On Thu, Jun 14, 2007 at 10:43:35PM +0400, Eugene Prokopiev wrote:
 >
 > Программа при своей работе не меняет текущий каталог и не занимается
 >
 > перехватом SIGSEGV?

Сергей, вы так хорошо объяснили, что возникла просьба записать в Вики.
Прошу не потому. что не знаю теорию, а потому, что такие подробные 
ответы на Вики позволят в следующий раз на аналогичный вопрос дать 
просто ссылку :)
На самом деле профеcсионалы (не преподаватели) редко так подробно 
описывают решение таких вопросов. И относя Вас к профессионалу, считаю 
что сами ответы очень качественны.

PS Преследую шкурные интересы одного из модеоаторов форума. 
существующего в интернете :) 

-- 
С уважением Xихин Руслан

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 20:03               ` Eugene Prokopiev
@ 2007-06-15  8:41                 ` Sergey Vlasov
  0 siblings, 0 replies; 24+ messages in thread
From: Sergey Vlasov @ 2007-06-15  8:41 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 474 bytes --]

On Fri, Jun 15, 2007 at 12:03:54AM +0400, Eugene Prokopiev wrote:
> > Программа при своей работе не меняет текущий каталог и не занимается
> > перехватом SIGSEGV?
> 
> Она меняет uid/gid, наверное и каталог тоже, а SIGSEGV перехватывает 
> вряд ли.

Тогда самый простой путь - установить в kernel.core_pattern абсолютный
путь к файлу в каталоге, куда имеют право писать все (в простейшем случае
что-то типа /tmp/core.%p); в таком варианте дамп должен сохраниться.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 15:11 [devel] How to generate core and backtrace files Eugene Prokopiev
  2007-06-14 15:41 ` Led
@ 2007-06-15  8:57 ` Eugene Prokopiev
  2007-06-18 19:24 ` Michael Shigorin
  2 siblings, 0 replies; 24+ messages in thread
From: Eugene Prokopiev @ 2007-06-15  8:57 UTC (permalink / raw)
  To: ALT Devel discussion list

Всем, и Сергею Власову особенно, большое спасибо, с помощью gdb 
backtrace таки был получен, а из него выяснилось, что к моменту 
написания багрепорта этот баг в апстриме уже был исправлен :)

Попутно для тех кто в танке (т.е. для себя и для тех, кому это еще 
понадобится) нашел хорошую пошаговую инструкцию - 
http://www.amule.org/wiki/index.php/Backtraces

-- 
С уважением, Прокопьев Евгений



^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-15  2:00               ` Hihin Ruslan
@ 2007-06-15 17:29                 ` Alexey I. Froloff
  2007-06-16 14:49                   ` [devel] [JT] " Ivan Fedorov
  0 siblings, 1 reply; 24+ messages in thread
From: Alexey I. Froloff @ 2007-06-15 17:29 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 379 bytes --]

* Hihin Ruslan <ruslandh@> [070615 06:05]:
> На самом деле профеcсионалы (не преподаватели) редко так подробно 
> описывают решение таких вопросов. И относя Вас к профессионалу, считаю 
> что сами ответы очень качественны.
Сергея уже давно пора издавать в виде двухтомника.  Один том его
письма в рассылки, а второй - его changelog'и в спеках.

-- 
Regards,
Sir Raorn.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] [JT] How to generate core and backtrace files
  2007-06-15 17:29                 ` Alexey I. Froloff
@ 2007-06-16 14:49                   ` Ivan Fedorov
  2007-06-17 11:33                     ` Денис Смирнов
  0 siblings, 1 reply; 24+ messages in thread
From: Ivan Fedorov @ 2007-06-16 14:49 UTC (permalink / raw)
  To: ALT Devel discussion list

Alexey I. Froloff пишет:
> * Hihin Ruslan <ruslandh@> [070615 06:05]:
>> На самом деле профеcсионалы (не преподаватели) редко так подробно 
>> описывают решение таких вопросов. И относя Вас к профессионалу, считаю 
>> что сами ответы очень качественны.
> Сергея уже давно пора издавать в виде двухтомника.  Один том его
> письма в рассылки, а второй - его changelog'и в спеках.
> 
Боюсь под changelog'и придется выделять не том, а серию! :)


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] [JT] How to generate core and backtrace files
  2007-06-16 14:49                   ` [devel] [JT] " Ivan Fedorov
@ 2007-06-17 11:33                     ` Денис Смирнов
  0 siblings, 0 replies; 24+ messages in thread
From: Денис Смирнов @ 2007-06-17 11:33 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 757 bytes --]

On Sat, Jun 16, 2007 at 05:49:12PM +0300, Ivan Fedorov wrote:

>>> На самом деле профеcсионалы (не преподаватели) редко так подробно 
>>> описывают решение таких вопросов. И относя Вас к профессионалу, считаю 
>>> что сами ответы очень качественны.
>> Сергея уже давно пора издавать в виде двухтомника.  Один том его
>> письма в рассылки, а второй - его changelog'и в спеках.
IF> Боюсь под changelog'и придется выделять не том, а серию! :)

По тому на каждую minor версию ядра как минимум? ;) После этого lwn всякие
можно будет не читать вообще :)

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
ЗАКОН ПОИСКА
 Начинать поиски надо с самого неподходящего места.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: [devel] How to generate core and backtrace files
  2007-06-14 15:11 [devel] How to generate core and backtrace files Eugene Prokopiev
  2007-06-14 15:41 ` Led
  2007-06-15  8:57 ` Eugene Prokopiev
@ 2007-06-18 19:24 ` Michael Shigorin
  2 siblings, 0 replies; 24+ messages in thread
From: Michael Shigorin @ 2007-06-18 19:24 UTC (permalink / raw)
  To: Devel

On Thu, Jun 14, 2007 at 07:11:28PM +0400, Eugene Prokopiev wrote:
> Собственно вопрос: как это сделать?

http://www.freesource.info/wiki/AltLinux/Features/Core
(добавил заодно про ulimit)

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2007-06-18 19:24 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-06-14 15:11 [devel] How to generate core and backtrace files Eugene Prokopiev
2007-06-14 15:41 ` Led
2007-06-14 15:45   ` Pavlov Konstantin
2007-06-14 16:06     ` Eugene Prokopiev
2007-06-14 16:01   ` Eugene Prokopiev
2007-06-14 16:12     ` Andrey Rahmatullin
2007-06-14 17:47       ` Eugene Prokopiev
2007-06-14 17:51         ` Andrey Rahmatullin
2007-06-14 18:43           ` Eugene Prokopiev
2007-06-14 18:45             ` Andrey Rahmatullin
2007-06-14 19:18             ` Sergey Vlasov
2007-06-14 20:03               ` Eugene Prokopiev
2007-06-15  8:41                 ` Sergey Vlasov
2007-06-15  2:00               ` Hihin Ruslan
2007-06-15 17:29                 ` Alexey I. Froloff
2007-06-16 14:49                   ` [devel] [JT] " Ivan Fedorov
2007-06-17 11:33                     ` Денис Смирнов
2007-06-14 18:41       ` [devel] " Sergey Vlasov
2007-06-14 16:18     ` Led
2007-06-14 18:32       ` Eugene Prokopiev
2007-06-14 21:15         ` Led
2007-06-14 18:35     ` Sergey Vlasov
2007-06-15  8:57 ` Eugene Prokopiev
2007-06-18 19:24 ` Michael Shigorin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/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 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git