From: Kevin <ke...@bl...> - 2002-08-19 00:19:35
|
Hi all, I'm using lirc-0.6.5 with a program I'm writting and occasionally the daemon (lircd) hangs. What I'm doing is forking off irw and setting up a pipe between irw and my program. irw's stdout is connected to the pipe and on my program's end it just reads from the file descriptor to get the remote control button pressed. I'm having this happen on two different computer systems and it's not something that I can consistently reproduce. It may happen within a couple hours, it may take a couple days. When it does hang I've tried starting a new irw to connect to the daemon but that doesn't work, I get no response. I've also tried sending a SIGSTOP/SIGCONT signal and SIGHUP to the daemon to maybe awake it up, but that does nothing either. The pipe between the two programs isn't getting full because my program is pretty much sitting waiting on input through the pipe. The last time this happened I had started the daemon in -D5 debug mode and here's some lines before it stopped: Aug 18 14:16:49 klepvr lircd-0.6.5: found: MOUSE_NE Aug 18 14:16:49 klepvr lircd-0.6.5: writing to client 0 Aug 18 14:16:49 klepvr lircd-0.6.5: writing to client 1 Aug 18 14:16:49 klepvr lircd-0.6.5: writing to client 2 Aug 18 14:16:49 klepvr lircd-0.6.5: byte 1: fe Aug 18 14:16:49 klepvr lircd-0.6.5: byte 2: 54 Aug 18 14:16:49 klepvr lircd-0.6.5: mouse event: 54 Aug 18 14:16:49 klepvr lircd-0.6.5: trying "Logitech" remote Aug 18 14:16:49 klepvr lircd-0.6.5: pre: a0 Aug 18 14:16:49 klepvr lircd-0.6.5: code: 54 Aug 18 14:16:49 klepvr lircd-0.6.5: repeat_flag: 1 Aug 18 14:16:49 klepvr lircd-0.6.5: gap: 9414 Aug 18 14:16:49 klepvr lircd-0.6.5: rem: 16525 Aug 18 14:16:49 klepvr lircd-0.6.5: signal length: 13333 Aug 18 14:16:49 klepvr lircd-0.6.5: pre Aug 18 14:16:49 klepvr lircd-0.6.5: found: MOUSE_E Aug 18 14:16:49 klepvr lircd-0.6.5: writing to client 0 Aug 18 14:16:49 klepvr lircd-0.6.5: writing to client 1 Aug 18 14:16:49 klepvr lircd-0.6.5: writing to client 2 Aug 18 14:16:49 klepvr lircd-0.6.5: byte 1: 52 Aug 18 14:16:49 klepvr lircd-0.6.5: mouse event: 52 Aug 18 14:16:49 klepvr lircd-0.6.5: trying "Logitech" remote Aug 18 14:16:49 klepvr lircd-0.6.5: pre: a0 Aug 18 14:16:49 klepvr lircd-0.6.5: code: 52 Aug 18 14:16:49 klepvr lircd-0.6.5: repeat_flag: 1 Aug 18 14:16:49 klepvr lircd-0.6.5: gap: 3110 Aug 18 14:16:49 klepvr lircd-0.6.5: rem: 16525 Aug 18 14:16:50 klepvr lircd-0.6.5: signal length: 13333 Aug 18 14:16:50 klepvr lircd-0.6.5: pre Aug 18 14:16:50 klepvr lircd-0.6.5: found: MOUSE_NE Aug 18 14:16:50 klepvr lircd-0.6.5: writing to client 0 I'm using the AST/Logitech remote, here's the output from ls -l /dev/lirc* on the two machines: lrwxrwxrwx 1 root root 5 Aug 4 10:59 /dev/lirc -> ttyS0 srw-r--r-- 1 root root 0 Aug 18 19:50 /dev/lircd= prw-r--r-- 1 root root 0 Aug 4 10:59 /dev/lircm| lrwxrwxrwx 1 root root 5 Jul 7 14:58 /dev/lirc -> ttyS1 srw-rw-rw- 1 root root 0 Aug 17 21:21 /dev/lircd= prw-r--r-- 1 root root 0 Jul 7 14:15 /dev/lircm| I'm going to try having my program just connect up with a socket next and see if that works, I don't see why what I'm doing should be causing a problem though. Has anyone else had the daemon hang fairly often? Thanks, Kevin |