Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 407
  • Last Modified:

panic: lock_set

I have a program running on a Sparc 20 machine with Solaris 2.4 (SunOS 5.4) and using Motif 1.2.?.  I am using some of the Timer Callbacks with Motif as well as some serial, socket, and timer "interrupt" routines that we have developed.  I have received the following error mainly after letting the program run overnight:

      panic: lock_set: lock held and only one CPU

This shows up in the /usr/adm/messages after the hard reboot when such an error occurs.  What I am looking for is what would cause such an error.  I am not doing any locking on my own so it could be internal to the libraries I am using.  This was a problem early on in the project and is not repeatable nor consistent.  Now that the project is coming to an end, I would like to get this issue resolved.
0
mkcarter
Asked:
mkcarter
1 Solution
 
lockhartCommented:
Your timer interrupt routines may be the culprits.  Interrupts are not completely safe when used with X.  If you want to do something on a periodic basis, you should use XtAppAddTimeOut() so that the main event loop is your mechanism for everything.  

This shouldn't have caused a panic, but then I don't have enough information from your question to judge.

Mike
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now