My program hung and I decided to ltrace and strace it.
strace -p pid gives me an "infinite" printing on screen :
lseek(3, 57114624, SEEK_SET) = 57114624 read(3, "\r\r\207\0\n\6O\0\16b\f\277\v\370\v1\ni\tm\10\245\7\335\7\25\6O\5v\5v"..., 4096) = 4096 lseek(3, 57118720, SEEK_SET) = 57118720 read(3, "\r\1(\0\21\0`\0\0174\16l\r\246\f\336\f\26\vO\n\207\t\277\10\371\6\233\5\323\5\v"..., 4096) = 4096 ... ltrace -p pid Gives the same "infinite" printing:
memcmp(0x12efab68, 0x12eface8, 15, 0x12eface8) = 0xfffffff8 memset(0x12fa48e0, '\0', 72) = 0x12fa48e0 memset(0x12fa4928, '\0', 144) = 0x12fa4928 lseek64(3, 0x2c30000, 0, 0x2c30000) = 0x2c30000 memcpy(0x12efab68, "DIRAC.HLTFarm.lhcb", 18) = 0x12efab68 memcmp(0x12efab68, 0x12eface8, 15, 0x12eface8) = 0xfffffff8 memcpy(0x12efab68, "DIRAC.HLTFarm.lhcb", 18^C) = 0x12efab68 What conclusions based on these results I can do about what is going on with program?
ltrace -S -p pid? That will show both library calls and system calls, correctly interleaved.