Identify Deadlock Reason using VxWorks - VxWorks

This is a discussion on Identify Deadlock Reason using VxWorks - VxWorks ; Hi, My VxWorks application goes into Deadlock condition. How to View/Identify Reason for Deadlock using VxWorks ? Is there any log Info available for this ? I use PowerPC. Kindly provide me some solution for this. Thx in advans, Karthik ...

+ Reply to Thread
Results 1 to 9 of 9

Thread: Identify Deadlock Reason using VxWorks

  1. Identify Deadlock Reason using VxWorks

    Hi,

    My VxWorks application goes into Deadlock condition.
    How to View/Identify Reason for Deadlock using VxWorks ?
    Is there any log Info available for this ?
    I use PowerPC. Kindly provide me some solution for this.

    Thx in advans,
    Karthik Balaguru


  2. Re: Identify Deadlock Reason using VxWorks

    On Feb 6, 7:25 am, "karthikbg"
    wrote:
    > Hi,
    >
    > My VxWorks application goes into Deadlock condition.
    > How to View/Identify Reason for Deadlock using VxWorks ?
    > Is there any log Info available for this ?
    > I use PowerPC. Kindly provide me some solution for this.
    >
    > Thx in advans,
    > Karthik Balaguru


    Try using WindView in postmortem mode. Here you can examine what your
    system was doing before you had to restart it.

    Regards,
    Johan


  3. Re: Identify Deadlock Reason using VxWorks

    On Feb 6, 11:49 am, "Borkhuis" wrote:
    > On Feb 6, 7:25 am, "karthikbg"
    > wrote:
    >
    > > Hi,

    >
    > > My VxWorks application goes into Deadlock condition.
    > > How to View/Identify Reason for Deadlock using VxWorks ?
    > > Is there any log Info available for this ?
    > > I use PowerPC. Kindly provide me some solution for this.

    >
    > > Thx in advans,
    > > Karthik Balaguru

    >
    > Try using WindView in postmortem mode. Here you can examine what your
    > system was doing before you had to restart it.
    >
    > Regards,
    > Johan


    Hi,
    Thx for your idea. Looks good.
    But, Can i use Post-Mortem Mode for my scenario .

    The scenario here is very different. I am unable to identify the
    reason/time at which this
    deadlock occurs. It is NOT Reproduceable in the Lab.
    But, In the field, Deadlock occurs once in 2 months OR once in a month
    OR Deadlock never occurs . What kind of approach can I take now to
    identify the DeadLock ?

    Is it possible to identify the deadlock Reason using Post-Mortem Mode
    in this kind of scenario (Application has to run for long duration) ?

    Thx in advans,
    Karthik Balaguru



  4. Re: Identify Deadlock Reason using VxWorks

    On Feb 6, 9:17 am, "karthikbg"
    wrote:
    > On Feb 6, 11:49 am, "Borkhuis" wrote:
    >
    > > On Feb 6, 7:25 am, "karthikbg"
    > > wrote:

    >
    > > > Hi,

    >
    > > > My VxWorks application goes into Deadlock condition.
    > > > How to View/Identify Reason for Deadlock using VxWorks ?
    > > > Is there any log Info available for this ?
    > > > I use PowerPC. Kindly provide me some solution for this.

    >
    > > > Thx in advans,
    > > > Karthik Balaguru

    >
    > > Try using WindView in postmortem mode. Here you can examine what your
    > > system was doing before you had to restart it.

    >
    > > Regards,
    > > Johan

    >
    > Hi,
    > Thx for your idea. Looks good.
    > But, Can i use Post-Mortem Mode for my scenario .
    >
    > The scenario here is very different. I am unable to identify the
    > reason/time at which this
    > deadlock occurs. It is NOT Reproduceable in the Lab.
    > But, In the field, Deadlock occurs once in 2 months OR once in a month
    > OR Deadlock never occurs . What kind of approach can I take now to
    > identify the DeadLock ?
    >
    > Is it possible to identify the deadlock Reason using Post-Mortem Mode
    > in this kind of scenario (Application has to run for long duration) ?
    >
    > Thx in advans,
    > Karthik Balaguru


    That is a different problem. WindView is usefull when you do it in the
    lab, and when a problem occurs regularly. In this case I would suggest
    building as much debug info into your application as possible and
    logging to a cyclic file-buffer (without filling your file-system),
    and see if you can pinpoint where the problem is.

    Regards,
    Johan


  5. Re: Identify Deadlock Reason using VxWorks

    > WindView is usefull when you do it in the
    > lab, and when a problem occurs regularly. In this case I would suggest
    > building as much debug info into your application as possible and
    > logging to a cyclic file-buffer (without filling your file-system),
    > and see if you can pinpoint where the problem is.


    Thx for the info. Thats really a good idea.
    I think the method of Making lots of Debug Logs in Code and sending to
    Field will be a good solution
    as it might give enough insight into the problem.

    I would like to know, Is there any VxWorks Call/utility that will help
    in telling the Reason for Deadlock of a specific Task ?
    If there is such kind of feature in Vxworks, i will try to incorporate
    those with my tasks and give it in field . It would be really nice as
    it would be very reliable .
    Kindly let me know if there is any such API / utility in Vxworks that
    would tell the reason for a Deadlock .

    Thx in advans,
    Karthik Balaguru



  6. Re: Identify Deadlock Reason using VxWorks

    On Feb 6, 12:19 pm, "karthikbg"
    wrote:
    > > WindView is usefull when you do it in the
    > > lab, and when a problem occurs regularly. In this case I would suggest
    > > building as much debug info into your application as possible and
    > > logging to a cyclic file-buffer (without filling your file-system),
    > > and see if you can pinpoint where the problem is.

    >
    > Thx for the info. Thats really a good idea.
    > I think the method of Making lots of Debug Logs in Code and sending to
    > Field will be a good solution
    > as it might give enough insight into the problem.
    >
    > I would like to know, Is there any VxWorks Call/utility that will help
    > in telling the Reason for Deadlock of a specific Task ?
    > If there is such kind of feature in Vxworks, i will try to incorporate
    > those with my tasks and give it in field . It would be really nice as
    > it would be very reliable .
    > Kindly let me know if there is any such API / utility in Vxworks that
    > would tell the reason for a Deadlock .
    >
    > Thx in advans,
    > Karthik Balaguru


    It would help if you'd describe what you mean by deadlock (what is the
    resource in contention?).
    How did you come to the conclusion that a deadlock is the problem?
    There is no generic 'dead lock' detect command or API.
    How do you imagine such an API work?

    GV


  7. Re: Identify Deadlock Reason using VxWorks

    Hello Karthik Balaguru,

    karthikbg schrieb:
    > I would like to know, Is there any VxWorks Call/utility that will help
    > in telling the Reason for Deadlock of a specific Task ?
    > If there is such kind of feature in Vxworks, i will try to incorporate
    > those with my tasks and give it in field . It would be really nice as
    > it would be very reliable .
    > Kindly let me know if there is any such API / utility in Vxworks that
    > would tell the reason for a Deadlock .


    Ther is only an architectural approach for such problems:
    Build a SW-watchdog, which urges all tasks to tell within a specific
    time frame that they are alife.
    And if not, the watchdog tells the log about the missing task and resets
    the target board in an intelligent way.

    Hope it helps...

    --
    BaSystem Martin Raabe
    E: Martin.RaabeB-a-S-y-s-t-e-mde

  8. Re: Identify Deadlock Reason using VxWorks

    On Feb 6, 9:19 am, "karthikbg"
    wrote:
    > > WindView is usefull when you do it in the
    > > lab, and when a problem occurs regularly. In this case I would suggest
    > > building as much debug info into your application as possible and
    > > logging to a cyclic file-buffer (without filling your file-system),
    > > and see if you can pinpoint where the problem is.

    >
    > Thx for the info. Thats really a good idea.
    > I think the method of Making lots of Debug Logs in Code and sending to
    > Field will be a good solution
    > as it might give enough insight into the problem.
    >
    > I would like to know, Is there any VxWorks Call/utility that will help
    > in telling the Reason for Deadlock of a specific Task ?
    > If there is such kind of feature in Vxworks, i will try to incorporate
    > those with my tasks and give it in field . It would be really nice as
    > it would be very reliable .
    > Kindly let me know if there is any such API / utility in Vxworks that
    > would tell the reason for a Deadlock .
    >
    > Thx in advans,
    > Karthik Balaguru


    Maybe I'm missing a basic point but I've always used task trace (tt)
    in the shell to see the call stack of the process. That usually gives
    me a good idea of where the task is and what it is blocking on. Then
    tw can give some info about that... Also, a checkStack() provides
    interesting information on a task, especially if dynamic memory
    allocation occurs or recursive calls are made... These all can provide
    clues....

    Good luck!
    Rick


  9. Re: Identify Deadlock Reason using VxWorks

    > There is no generic 'dead lock' detect command or API.
    > How do you imagine such an API work?


    Thats really interesting !!

    The VxWorks should be aware of the resources that are being shared
    between tasks
    and also the Maximum wait times along with scheduling policies.
    It should understand the Task Properties & its functionalities.
    Based on those info, it should be able to identify the Deadlock
    Scenarios.
    Is there any Implementation Difficulties in doing this ??? I think,
    Vxworks can get those info including Resource Sharing easily .

    This is just an idea.
    Any Other Ideas for Making an API that will identify the Reason for
    Deadlock ?

    Why does VxWorks does not have any in-built API for Identifying the
    reason for Deadlock ? It should be aware of all the info as stuffs are
    running on it and it
    can read the image. Any Reasons or Difficulties in doing that API ?

    Thx in advans,
    Karthik Balaguru





+ Reply to Thread