[Lcdproc] LCDd not loading properly
brian
turbo@talstar.com
Tue Apr 17 21:24:02 2007
Peter Marschall wrote:
> Hi,
>
> On Monday, 16. April 2007 23:29, brian wrote:
>>> The problem occurs when I start LCDd (either by `service LCDd
>>> start`, or if I type `/usr/local/sbin/LCDd -c
>>> /usr/local/etc/LCDd.conf`). The system prompt doesn't return after LCDd
>>> server starts up. If it Ctrl-C, I am returned to the system prompt and
>>> the system (including LCDd!) perform normally. Clients can connect to
>>> and use the LCDd server normally. Because of this behavior, if I enable
>>> automatically loading LCDd with chkconfig, the boot-up process stops at
>>> the point where the LCDd daemon is started.
>
> This sounds really weird.
I agree. :) I'm sure I can't be the only person in the world
running LCDd under Fedora Core, or even the only one running under
Fedora Core 5, and maybe not even the only one running under Fedora Core
5 with a CFontz 632 USB display.
> Unless foreground=on in LCDd.conf (or LCDd was called with option -f),
> LCDd should deamonize itself and return to the command line-
I've even explicitly set "Foreground=no" in the LCDd.conf file, with
the same result. I think it does "daemonize" itself... the problem
occurs in the "and return to the command line" part. ;) If I hit
Ctrl-C to get to the command line, the daemon is _running_ and operates
normally.
> I have no idea why that what you describe can happen.
Nor I, thus this thread... :)
> Here are a few things to check that might help narrow things down:
> - Does it happen later as well ?
Define "later". :)
a) later in the day, week, month -- yes
b) later in the boot process -- yes
c) later source revision -- the one I posted is the
latest I've tried, but the same thing happened with the 'release'
version and every other SVN checkout revision that I tried.
> - Are network and syslog up when LCDd is started ?
Yes.
> - Did you try to start LCDd with options -s0 -r5
> (or -s1 -r5) to see on the screen (in syslog) what happens ?
Yes. It gets to the loop where it's waiting for a client to
talk to it (I don't remember the exact output, but I can run it again if
you need) -- if I Ctrl-C to get to the command prompt, I'm given a
command prompt and the endless loop of messages stating that it's
waiting for a client to talk to it continue until I pkill it. In other
words, it seems to be "operating as normal" (except for not returning me
to the command shell after it's started)
> - Maybe you can add a few fore fprintf()'s or report()'s to
> the main() routine in server/main.c to see where it hangs.
And, again, it doesn't seem to be "hanging", per se... the server
is actually running and waiting for input. Hitting Ctrl-C merely
completes the daemonization process and gives me the shell back. The
server continues to run and operate "normally". It doesn't hang,
itself, but rather hangs the shell process from which it was invoked.
...still stumped,
Brian