This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: GDB does not step into or over "sleep" function



Denset.Serralta@radisys.com writes:
> We are using GDB 4.18 on an NT host to debug target software running on a
> PowerPC based adapter. We are using a function called ProcessSleep which is
> a call to our kernel.  It basically allocates a semaphore, blocks on it
> subject to a user specified timeout and then returns the semaphore.One
> problem we can't seem to get around though is that if the process being
> debugged makes a 'ProcessSleep' call, the debugger never gains control when
> we step over it.  Even if we set a breakpoint past the call and let it run,
> it never returns.  A status utility that we have shows the process as
> queued, but we never regain control.  Does anybody know any reason(s) why
> this should happen.

Let me make sure I understand.  If you have code like this:

    ... some code ...
    ProcessSleep (...);
    ... some more code ...

and you set a breakpoint on the `some more code' line, your program
hangs and never reaches the breakpoint.

But if you run the program without GDB, it sleeps the expected amount
of time, and then continues normally.

Is that right?

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]