Hi Andraž!
Thanks for your reply...
It gave me many useful informations and I could learn a lot
about debugging C apps. since Sunday.
But there is more things that puzzle me - I got stuck a bit.
The application which I am trying to debug reports this when it crashes:
Thread 1 (Thread -1223099840 (LWP 7313)):
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb7e682ae in __lll_mutex_lock_wait ()
from /lib/tls/i686/cmov/libpthread.so.0
#2 0xb7e64fbb in _L_mutex_lock_33 ()
from /lib/tls/i686/cmov/libpthread.so.0
#3 0x00000000 in ?? ()
So the whole thing got stucked in __lll_mutex_lock_wait ()
which was called by _L_mutex_lock_33 (). That I can understand.
But I can't figure out, which part called _L_mutex_lock_33 ().
So I have 2 questions...
1. Why does 0x00000000 in ?? () occur? What does it mean?
2. Is there a way to figure out which function called
_L_mutex_lock_33 ()?
I will be very grateful for any hint or suggestion.
All the best and thank you again for your help so far!
Miha
On ned, 2006-10-15 at 16:18 +0200, Andraž Tori wrote:
> This backtrace dumps of all threads are useful when you have multiple
> threads waiting on eachother to finish - so called deadlocks.
>
> Naturally it also helps if you have stuff compiled with -g (to include
> debug symbols), but even without that, problem can be diagnosed.
>
> If you are not a progamer familar with the source code in question there
> is probably no way to diagnose the problem through stack traces. But
> that kind of trace might help the original developer to understand a
> problem.
>
> More importantly deadlocks are just one of the reasons why application
> freezes. They happen only in multithreaded applications. Other reasons
> could be stalls in system calls, infinite loops, waiting for events that
> never happen...
>
> bye
> andraz
>
> On Sun, 2006-10-15 at 17:01 +0900, Miha Kitič wrote:
> > Hi Andraž!
> >
> > Sorry to interrupt with potentially dumb question but...
> > I have another application (qdvdauthor) which is constantly freezing
> > on any text imput from the keyboard. I am trying to figure out
> > why this is happening, but I just can't get hold onto a problem.
> >
> > I sense that there are some similarities between Scott's and my own
> > problem. So I would just like to ask you...
> >
> > How do you figure out from gdb entering "thread apply all bt"
> > why an app. is freezing? How do you read the output?
> >
> > You may feel that my question is too wide and can not be answered
> > easily. In that case I will be very grateful if you could point me to a
> > good manual or suggest a place where I could start searching for the
> > answers.
> >
> > Thanks in advance!
> >
> > Miha
> >
> >
> > On sob, 2006-10-14 at 22:14 +0200, Andraž Tori wrote:
> > > Thanks for debug info, but what i really need is this:
> > > When cinelerra freezes, go to other terminal and type "ps aux" ... now
> > > you can read the process id of cinelerra, then you should type "gdb
> > > cinelerra 12345" (12345 being the proper process id), after that you
> > > should run "thread apply all bt" and report the whole output you get...
> > >
> > > bye
> > > andraz
> > >
> > > On Sat, 2006-10-14 at 15:51 -0400, Scott C. Frase wrote:
> > > > Andraz,
> > > > I compiled the latest svn. At first, I thought your new code had fixed
> > > > my hang problem. However, upon loading an older project it hung. I
> > > > looked at the terminal window and noticed that I got a message:
> > > > mpeg3io_open_file: No such file or directory
> > > >
> > > > Note that this message was not captured in the new Cinelerra Error
> > > > dialog box.
> > > >
> > > > I CTRL-C'd out of the project and have included the output below. Since
> > > > most of the hangs that I'm getting occur on projects that were
> > > > originally 2.0 projects that I've since migrated to 2.1 format, I will
> > > > create a pure 2.1 project and see if I get hangs.
> > > >
> > > > thanks for the help,
> > > > scott
> > > >
> > > > mpeg3io_open_file: No such file or directory
> > > > signal_entry: got SIGINT my pid=22773 execution table size=16:
> > > > mwindowedit.C: paste_edls: 1435
> > > > mwindowedit.C: paste_edls: 1439
> > > > mwindowedit.C: paste_edls: 1480
> > > > mwindowedit.C: paste_edls: 1562
> > > > mwindowedit.C: paste_edls: 1591
> > > > mwindowedit.C: paste_edls: 1595
> > > > mwindowedit.C: paste_edls: 1606
> > > > mwindowedit.C: paste_edls: 1609
> > > > filempeg.C: open_file: 164
> > > > filempeg.C: open_file: 496
> > > > filempeg.C: read_frame: 1174
> > > > vrender.C: run: 414
> > > > vrender.C: process_buffer: 103
> > > > vrender.C: process_buffer: 113
> > > > filempeg.C: read_frame: 1180
> > > > filempeg.C: read_frame: 1209
> > > > signal_entry: lock table size=19
> > > > 0x84b8c58 BC_Synchronous::next_command BC_Synchronous::run
> > > > 0xace1fe98 BC_WindowBase::event_condition BC_WindowBase::get_event
> > > > 0xacea37b0 Cinelerra: 20060627newgarbage.xml BC_Repeater::run
> > > > 0x8b29400 TransportQue::output_lock PlaybackEngine::run
> > > > 0xacea37b0 Cinelerra: 20060627newgarbage.xml MWindow::paste_edls *
> > > > 0xacea37b0 Cinelerra: 20060627newgarbage.xml MainIndexes::run 1
> > > > 0xb6592138 RotateEngine::input_lock RotateEngine::run
> > > > 0xb657daa0 RotateEngine::input_lock RotateEngine::run
> > > > 0xacea37b0 Cinelerra: 20060627newgarbage.xml BC_Repeater::run
> > > > 0xace76028 Canvas::canvas_lock VDeviceX11::new_output_buffer *
> > > > 0xace20cf0 Cinelerra: Song 6 - heavy VDeviceX11::new_output_buffer 1
> > > > 0xacea2790 TransportQue::output_lock PlaybackEngine::run
> > > > 0xacea37b0 Cinelerra: 20060627newgarbage.xml
> > > > ResourceThread::do_video
> > > > 0xace20cf0 Cinelerra: Song 6 - heavy BC_Repeater::run
> > > > 0x8a5b418 BC_WindowBase::event_condition BC_WindowBase::get_event
> > > > 0xaa43b2a0 BC_WindowBase::event_condition BC_WindowBase::get_event
> > > > 0x893ab80 BC_WindowBase::event_condition BC_WindowBase::get_event
> > > > 0x8b2ac88 BC_WindowBase::event_condition BC_WindowBase::get_event
> > > > 0x8ad1e50 BC_WindowBase::event_condition BC_WindowBase::get_event
> > > > BC_Signals::dump_buffers: buffer table size=0
> > > > BC_Signals::delete_temps: deleting 0 temp files
> > > > SigHandler::signal_handler total files=0
> > > > Aborted
> > > >
> > > > On Sat, 2006-10-14 at 18:47 +0200, Andraž Tori wrote:
> > > > > This might be it or it might not be.
> > > > >
> > > > > Recompiling from SVN is the only way to be sure. Please do it and
> > > > > report
> > > > > results ASAP (while i still have time to fix stuff :).
> > > > >
> > > > > I don't plan any new fixes right now.
> > > > >
> > > > > bye
> > > > > andraz
> > > >
> > > > > On Sat, 2006-10-14 at 12:01 -0400, Scott C. Frase wrote:
> > > > > > Thanks Andraz,
> > > > > > Because I've been plagued by the freezes, can I recompile now with
> > > > > > a svn
> > > > > > update or do you think you'll have more fixes coming?
> > > > > > scott
> > > > > >
> > > > > > On Sat, 2006-10-14 at 17:48 +0200, Andraž Tori wrote:
> > > > > > > A small fix that adds locking of cwindowgui where it was
> > > > > > > forgotten previously.
> > > > > > >
> > > > > > > I got at least one freeze because of this.
> > > > > > >
> > > > > > > bye
> > > > > > > andraz
> > > > > >
> > > > > >
> > > > > > _______________________________________________
> > > > > > Cinelerra mailing list
> > > > > > [email protected]
> > > > > > https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
> > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Cinelerra mailing list
> > > > > [email protected]
> > > > > https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
> > > >
> > > >
> > > > _______________________________________________
> > > > Cinelerra mailing list
> > > > [email protected]
> > > > https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
> > >
> > >
> > > _______________________________________________
> > > Cinelerra mailing list
> > > [email protected]
> > > https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
> > >
> >
> >
> > _______________________________________________
> > Cinelerra mailing list
> > [email protected]
> > https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
>
>
> _______________________________________________
> Cinelerra mailing list
> [email protected]
> https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
>
_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra