Our software group writes some custom software which runs on multiple platforms, including IRIX, Solaris, and RedHat 5.3. We are brainstorming a problem we are observing on the RedHat platform. The software consists of a a central "core" module that runs on each host and communicates by passing messages between the hosts. the core module then spawns threads and subprocesses according to which tasks it needs to run. The same code runs on all platforms. On Solaris and IRIX the interprocess locking code (which usess a sem_wait function) causes no delays, but on RedHat there is a delay in the process and the program hangs. During one run of the software a debugger was attached while the process was hung and the following output resulted:
#0 0xFFFFE405 in __kernel_vsyscall() #1 0x00DDb8B0 in sem_w...@glibc_2.0 () from /lib/libpthread.so.0 #2 0x............ in pmi_lockShmSem () #3 0x............ in PmQueryApps2 () #3 0x............ in PmQueryApps () #4 0x... When the process doesn't hang with the sem_wait, it looks like this: #0 0xFFFFE405 in __kernel_vsyscall() #1 0x............. in ____newselect_nocancel () from /lib/libc.so.6 #2 0x............. In VtAppMainLoop () #3 0x.... One of the software people involved describes it thusly in an email: "Might be a runtime issue, when the same code (******, ***) is implemented on the Solaris box the sem_wait does not have any delays (staying around value 1), but when the same code is implemented on the Linux box the sem_wait has deplays. When the Linux sem_wait is set to value 2 (by issuing a pid or ped command), the delays go away. Issue - value 2 puts the sem in two user share mode not a good state for the ****** processing. I would expect the sem_wait to work the same as Solaris with no delays." [Note: the ****** represents the core process running on each host. The *** process is one that gets invoked and is the process hanging] We are preparing a support request for RedHat, but I thought to post about it here and see if anyone had seen such a thing or had advice or input. Thanks for your attention.
_______________________________________________ rhelv5-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/rhelv5-list
