[Linux-ha-dev] Re: [Linux-ha-cvs] riloe plugin commit

Guochun Shi gshi at ncsa.uiuc.edu
Mon Oct 4 12:38:58 MDT 2004


At 07:26 AM 10/2/2004 +0200, you wrote:
>/ 2004-10-01 18:23:40 -0500
>\ Guochun Shi:
>> >
>> >First, a general criticism.  (OK. I know I'm flogging a dead horse here.
>> >But. I can't help it.) I thought the idea for STONITH modules would be
>> >that they can be loaded as plugins proper and thus the fencing doesn't
>> >need to touch the disk. I still maintain that it is either that - and
>> 
>> I did not know the initial design but any specific reason not to touch the disk? 
>> The machine stonithing the other is the good one and its disk is expected to be good 
>
>the reasonning goes along the lines
> stonith is vital, and all other things depend on it,
> so it may not block for any reason, so it should be locked in memory,
> and not touch code pathes that may block.
> and not touch the disk, since the IO path may depend on fencing...
>
>the not that paranoid would say: so what, it needs to use the network
>anyways (if it is a network power switch), and that may block, or ...
>or if this box cannot swap a single page, I want it to drop o of the
>cluster rather sooner than later anyways... 
> :-/
>
>> >And, as some more hands-on feedback, the RILOE_COMMAND is hardcoded to
>> >/usr/lib/heartbeat/, which is not where heartbeat will end up on a 64bit
>> >architecture (or if the admin overrides the path). Please use the proper
>> >defines.
>> 
>> I will fix that hard-coded path. Thanks for pointing that out.
>
>and while at it, in linux we compile with -Werror -Wformat=2,
>and that means that the warning issued for non-constant format string
>arguments to printf like functions is then turned into an error and ...
>(which is ok, or I'd "only" need to write some bogus translation with
>some more format characters in it, and all goes boom)

I did compile it with -Wformat=2 (which is the default) and got no warnings/errors.
I use gcc-3.2.2

>what I wanted to say, maybe better do it like this:
>
>diff -u -p -r1.1 riloe.c
>--- lib/plugins/stonith/riloe.c 1 Oct 2004 20:12:49 -0000       1.1
>+++ lib/plugins/stonith/riloe.c 2 Oct 2004 05:17:03 -0000
>@@ -311,7 +311,7 @@ riloe_reset_req(Stonith * s, int request
>                syslog(LOG_ERR, "invalid argument to %s", __FUNCTION__);
>                return(S_OOPS);
>        }
>-       syslog(LOG_INFO, _("Host %s riloe-reset."), host);
>+       syslog(LOG_INFO, "%s '%s'", _("riloe-reset host"), host);
> 
>        sprintf(cmd, "%s %s reset", RILOE_COMMAND, host);
is this the only line that does not compile? What about other syslog(LOG_ERR, ....)?

-Guochun



More information about the Linux-HA-Dev mailing list