Re: qdiskd does not start

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 03. Jun 2008, Stephan Windmüller wrote:

> With strace I see that qdiskd reads /var/run/qdiskd.pid and tries to
> access this process (which is not running any more). Even when I delete
> this pid-file nothing changes.

After reading parts of the source code I think that I found the problem.
In qdisk/main.c the function daemon_init is called:

| if (daemon_init(argv[0]) < 0)
|     goto out;

But the type of daemon_init is "void" and it does not return a value:

| void
| daemon_init(char *prog)
| {
|
|       [...]
|
|       daemon(0, 0);
|
|       update_pidfile(prog);
| }

I do not understand why the linker does not produce an error here. Also it
seems unwanted that daemon_init dies with "exit(1)" when an error occurs
instead of returning -1.

However, qdiskd will always exit when daemonized with this code. I removed the
comparison < 0 and got this in syslog:

| qdiskd: <info> Initial score 3/3 
| qdiskd: <info> Initialization complete 
| qdiskd: <notice> Score sufficient for master operation (3/3; required=1); upgrading 
| qdiskd: <debug> Making bid for master 
| qdiskd: <info> Assuming master role 

But after that "cman_tool status" hangs and produces no output.

- Stephan

Attachment: signature.asc
Description: Digital signature

--
Linux-cluster mailing list
Linux-cluster@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/linux-cluster

[Index of Archives]     [Corosync Cluster Engine]     [GFS]     [Linux Virtualization]     [Centos Virtualization]     [Centos]     [Linux RAID]     [Fedora Users]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite Camping]

  Powered by Linux