[DRBD-cvs] r1512 - in trunk: . documentation scripts user
svn at svn.drbd.org
svn at svn.drbd.org
Fri Aug 27 14:04:57 CEST 2004
Author: phil
Date: 2004-08-27 14:04:52 +0200 (Fri, 27 Aug 2004)
New Revision: 1512
Modified:
trunk/ChangeLog
trunk/documentation/drbd.conf.sgml
trunk/scripts/drbd
trunk/scripts/drbd.conf
trunk/user/drbdadm_main.c
trunk/user/drbdadm_parser.y
trunk/user/drbdadm_scanner.fl
Log:
Backing out the wait-sync-target option.
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/ChangeLog 2004-08-27 12:04:52 UTC (rev 1512)
@@ -4,9 +4,6 @@
Cumulative changes since last tarball.
For even more detail, use "svn log" and "svn diff".
- * New config option "wait-sync-target" in the startup section.
- When set, the drbd script will block the boot process to prevent
- heartbeat to make a SyncTarget-node primary.
* prevent possible in-kernel buffer overflow in drbd_proc.c
* Fixed debian's postinst script to create /dev/drbd? instead of /dev/nb?
* drbd status:
Modified: trunk/documentation/drbd.conf.sgml
===================================================================
--- trunk/documentation/drbd.conf.sgml 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/documentation/drbd.conf.sgml 2004-08-27 12:04:52 UTC (rev 1512)
@@ -182,8 +182,7 @@
<manvolnum>8</manvolnum></citerefentry> for detailed description
of this section's parameters.
Optional parameters:
- <option>wfc-timeout</option>, <option>degr-wfc-timeout</option>,
- <option>wait-sync-target</option>.
+ <option>wfc-timeout</option>, <option>degr-wfc-timeout</option>.
</para>
</listitem>
</varlistentry>
Modified: trunk/scripts/drbd
===================================================================
--- trunk/scripts/drbd 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/scripts/drbd 2004-08-27 12:04:52 UTC (rev 1512)
@@ -64,14 +64,6 @@
done
echo "."
$DRBDADM wait_con_int # User interruptible version of wait_connect all
- for I in $RESOURCES; do
- WAIT_TS=`$DRBDADM sh-wait-st $I`
- CSTATE=`$DRBDADM cstate $I`
- if [ "$WAIT_TS" == "set" -a $CSTATE == "SyncTarget" ]; then
- echo "Waiting until sync on $I finished."
- $DRBDADM wait_sync $I
- fi
- done
;;
stop)
echo -n "Stopping all DRBD resources"
Modified: trunk/scripts/drbd.conf
===================================================================
--- trunk/scripts/drbd.conf 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/scripts/drbd.conf 2004-08-27 12:04:52 UTC (rev 1512)
@@ -135,11 +135,6 @@
# is rebooted, this timeout value is used.
#
degr-wfc-timeout 120; # 2 minutes.
-
- # The initscript blocks the bootprocess as long as any device
- # is in SyncTarget cstate. Usefull to prevent current heartbeat
- # to make a SyncTarget-node primary.
- # wait-sync-target;
}
disk {
Modified: trunk/user/drbdadm_main.c
===================================================================
--- trunk/user/drbdadm_main.c 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/user/drbdadm_main.c 2004-08-27 12:04:52 UTC (rev 1512)
@@ -81,9 +81,8 @@
static int adm_up(struct d_resource* ,char* );
extern int adm_adjust(struct d_resource* ,char* );
static int adm_dump(struct d_resource* ,char* );
-static int adm_wait(struct d_resource* ,char* );
+static int adm_wait_c(struct d_resource* ,char* );
static int adm_wait_ci(struct d_resource* ,char* );
-static int adm_show_opt(struct d_resource* ,char* );
static int sh_resources(struct d_resource* ,char* );
static int sh_mod_parms(struct d_resource* ,char* );
static int sh_dev(struct d_resource* ,char* );
@@ -127,8 +126,7 @@
{ "resize", adm_resize, 0 ,1,1 },
{ "syncer", adm_syncer, 0 ,1,1 },
{ "adjust", adm_adjust, 0 ,1,1 },
- { "wait_connect", adm_wait, "wait_connect" ,1,1 },
- { "wait_sync", adm_wait, "wait_sync" ,1,1 },
+ { "wait_connect", adm_wait_c, 0 ,1,1 },
{ "state", adm_generic_s,"state" ,1,1 },
{ "cstate", adm_generic_s,"cstate" ,1,1 },
{ "dump", adm_dump, 0 ,1,1 },
@@ -138,8 +136,7 @@
{ "sh-dev", sh_dev, 0 ,0,1 },
{ "sh-ll-dev", sh_ll_dev, 0 ,0,1 },
{ "sh-md-dev", sh_md_dev, 0 ,0,1 },
- { "sh-md-idx", sh_md_idx, 0 ,0,1 },
- { "sh-wait-st", adm_show_opt,"wait-sync-target" ,0,1 }
+ { "sh-md-idx", sh_md_idx, 0 ,0,1 }
};
@@ -280,37 +277,7 @@
return 0;
}
-static char* get_opt_val(struct d_option* base,char* name,char* def)
-{
- while(base) {
- if(!strcmp(base->name,name)) {
- return base->value;
- }
- base=base->next;
- }
- return def;
-}
-static int adm_show_opt(struct d_resource* res,char* optname)
-{
- char *nf="unset"; // not_found
- char *v;
-
- do {
- if((v=get_opt_val(res->net_options,optname,nf)) != nf) break;
- if((v=get_opt_val(res->disk_options,optname,nf)) != nf) break;
- if((v=get_opt_val(res->sync_options,optname,nf)) != nf) break;
- if((v=get_opt_val(res->startup_options,optname,nf)) != nf) break;
- } while(0);
-
- if(v==NULL) v="set"; // boolean option, value == 0
-
- printf("%s\n",v);
-
- return 0;
-}
-
-
static int sh_mod_parms(struct d_resource* res,char* unused)
{
int mc=global_options.minor_count;
@@ -627,7 +594,7 @@
}
-static int adm_wait(struct d_resource* res ,char* cmd)
+static int adm_wait_c(struct d_resource* res ,char* unused)
{
char* argv[20];
struct d_option* opt;
@@ -635,13 +602,9 @@
argv[argc++]=drbdsetup;
argv[argc++]=res->me->device;
- argv[argc++]=cmd;
+ argv[argc++]="wait_connect";
opt=res->startup_options;
- while(opt) {
- if(strstr(opt->name,"timeout"))
- ssprintf(argv[argc++],"--%s=%s",opt->name,opt->value);
- opt=opt->next;
- }
+ make_options(opt);
argv[argc++]=0;
rv = m_system(argv,SLEEPS_FOREVER);
@@ -653,6 +616,7 @@
return rv;
}
+
/* In case a child exited, or exits, its return code is stored as
negative number in the pids[i] array */
static int childs_running(pid_t* pids,int opts)
@@ -739,6 +703,17 @@
return pr;
}
+static char* get_opt_val(struct d_option* base,char* name,char* def)
+{
+ while(base) {
+ if(!strcmp(base->name,name)) {
+ return base->value;
+ }
+ base=base->next;
+ }
+ return def;
+}
+
void chld_sig_hand(int unused)
{
// do nothing. But interrupt systemcalls :)
@@ -788,11 +763,7 @@
argv[argc++]=res->me->device;
argv[argc++]="wait_connect";
opt=res->startup_options;
- while(opt) {
- if(strstr(opt->name,"timeout"))
- ssprintf(argv[argc++],"--%s=%s",opt->name,opt->value);
- opt=opt->next;
- }
+ make_options(opt);
argv[argc++]=0;
pids[i++]=m_system(argv,RETURN_PID);
Modified: trunk/user/drbdadm_parser.y
===================================================================
--- trunk/user/drbdadm_parser.y 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/user/drbdadm_parser.y 2004-08-27 12:04:52 UTC (rev 1512)
@@ -119,7 +119,7 @@
%token TK_MINOR_COUNT TK_DISABLE_IO_HINTS
%token TK_PROTOCOL TK_INCON_DEGR_CMD
%token TK_ADDRESS TK_DISK TK_DEVICE TK_META_DISK
-%token <txt> TK_INTEGER TK_STRING TK_WAIT_SYNC_TARGET
+%token <txt> TK_INTEGER TK_STRING
%token <txt> TK_ON_IO_ERROR TK_SIZE
%token <txt> TK_TIMEOUT TK_CONNECT_INT TK_PING_INT TK_MAX_BUFFERS TK_IPADDR
%token <txt> TK_MAX_EPOCH_SIZE TK_SNDBUF_SIZE
@@ -273,5 +273,4 @@
startup_stmt: TK_WFC_TIMEOUT TK_INTEGER { $$=new_opt($1,$2); }
| TK_DEGR_WFC_TIMEOUT TK_INTEGER { $$=new_opt($1,$2); }
- | TK_WAIT_SYNC_TARGET { $$=new_opt($1,0); }
;
Modified: trunk/user/drbdadm_scanner.fl
===================================================================
--- trunk/user/drbdadm_scanner.fl 2004-08-27 11:53:06 UTC (rev 1511)
+++ trunk/user/drbdadm_scanner.fl 2004-08-27 12:04:52 UTC (rev 1512)
@@ -214,8 +214,7 @@
<STARTUP>{
wfc-timeout do_assign(NUM); CP; return TK_WFC_TIMEOUT;
degr-wfc-timeout do_assign(NUM); CP; return TK_DEGR_WFC_TIMEOUT;
- wait-sync-target yy_push_state(SEMICOLON); CP; return TK_WAIT_SYNC_TARGET;
- {NDELIM} expect_error("one of 'wfc-timeout|degr-wfc-timeout|wait-sync-target'");
+ {NDELIM} expect_error("one of 'wfc-timeout|degr-wfc-timeout'");
}
<DISK>{
More information about the drbd-cvs
mailing list