[DRBD-cvs] svn commit by lars - r2229 - in branches/drbd-0.7:
documentation drbd drbd/linux scripts user - * bdev-threshold
--> unplug-watermark * convert drbd_si
drbd-cvs at lists.linbit.com
drbd-cvs at lists.linbit.com
Fri Jun 9 15:38:09 CEST 2006
Author: lars
Date: 2006-06-09 15:38:07 +0200 (Fri, 09 Jun 2006)
New Revision: 2229
Modified:
branches/drbd-0.7/documentation/drbd.conf.sgml
branches/drbd-0.7/documentation/drbdsetup.sgml
branches/drbd-0.7/drbd/drbd_main.c
branches/drbd-0.7/drbd/drbd_receiver.c
branches/drbd-0.7/drbd/drbd_sizeof_sanity_check.c
branches/drbd-0.7/drbd/linux/drbd.h
branches/drbd-0.7/scripts/drbd.conf
branches/drbd-0.7/user/drbd_limits.h
branches/drbd-0.7/user/drbdadm_adjust.c
branches/drbd-0.7/user/drbdadm_parser.y
branches/drbd-0.7/user/drbdadm_scanner.fl
branches/drbd-0.7/user/drbdsetup.c
Log:
* bdev-threshold --> unplug-watermark
* convert drbd_sizeof_sanity_check.c to use compile time assertions,
so we won't build some 64bit ioctl incompatibilities by accident again.
Modified: branches/drbd-0.7/documentation/drbd.conf.sgml
===================================================================
--- branches/drbd-0.7/documentation/drbd.conf.sgml 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/documentation/drbd.conf.sgml 2006-06-09 13:38:07 UTC (rev 2229)
@@ -175,7 +175,7 @@
<option>sndbuf-size</option>, <option>timeout</option>,
<option>connect-int</option>, <option>ping-int</option>,
<option>max-buffers</option>, <option>max-epoch-size</option>,
- <option>bdev-threshold</option>,
+ <option>unplug-watermark</option>,
<option>ko-count</option>, <option>on-disconnect</option>.
</para>
</listitem>
@@ -428,11 +428,11 @@
</varlistentry>
<varlistentry>
- <term><option>bdev-threshold <replaceable>number</replaceable></option></term>
+ <term><option>unplug-watermark <replaceable>number</replaceable></option></term>
<listitem>
<para>
When the number of pending write requests on the standby
- (secondary) node exceeds the bdev-threshold, we trigger
+ (secondary) node exceeds the unplug-watermark, we trigger
the request processing of our backing storage device.
Some storage controllers deliver better performance with small
values, other deliver best performance when it is set to
Modified: branches/drbd-0.7/documentation/drbdsetup.sgml
===================================================================
--- branches/drbd-0.7/documentation/drbdsetup.sgml 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/documentation/drbdsetup.sgml 2006-06-09 13:38:07 UTC (rev 2229)
@@ -314,11 +314,11 @@
</varlistentry>
<varlistentry>
<term><option>-l</option>,
- <option>--bdev-threshold <replaceable>val</replaceable></option></term>
+ <option>--unplug-watermark <replaceable>val</replaceable></option></term>
<listitem>
<para>
When the number of pending write requests on the standby
- (secondary) node exceeds the bdev-threshold, we trigger
+ (secondary) node exceeds the unplug-watermark, we trigger
the request processing of our backing storage device.
Some storage controllers deliver better performance with small
values, other deliver best performance when it is set to
Modified: branches/drbd-0.7/drbd/drbd_main.c
===================================================================
--- branches/drbd-0.7/drbd/drbd_main.c 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/drbd/drbd_main.c 2006-06-09 13:38:07 UTC (rev 2229)
@@ -1736,9 +1736,6 @@
": never change the size or layout of the HandShake packet.\n");
return -EINVAL;
}
- if (sizeof_drbd_structs_sanity_check()) {
- return -EINVAL;
- }
if (use_nbd_major) {
major_nr = NBD_MAJOR;
Modified: branches/drbd-0.7/drbd/drbd_receiver.c
===================================================================
--- branches/drbd-0.7/drbd/drbd_receiver.c 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/drbd/drbd_receiver.c 2006-06-09 13:38:07 UTC (rev 2229)
@@ -303,7 +303,7 @@
MUST_HOLD(&mdev->ee_lock);
if(mdev->ee_vacant == EE_MININUM / 2 &&
- (mdev->conf.bdev_threshold != mdev->conf.max_buffers) ) {
+ (mdev->conf.unplug_watermark != mdev->conf.max_buffers) ) {
spin_unlock_irq(&mdev->ee_lock);
drbd_kick_lo(mdev);
spin_lock_irq(&mdev->ee_lock);
@@ -910,7 +910,7 @@
* reference counts on it, which typically are locally submitted io
* requests. don't use unacked_cnt, so we speed up proto A and B, too.
*/
- if (atomic_read(&mdev->local_cnt) >= mdev->conf.bdev_threshold ) {
+ if (atomic_read(&mdev->local_cnt) >= mdev->conf.unplug_watermark ) {
drbd_kick_lo(mdev);
}
mdev->writ_cnt+=data_size>>9;
Modified: branches/drbd-0.7/drbd/drbd_sizeof_sanity_check.c
===================================================================
--- branches/drbd-0.7/drbd/drbd_sizeof_sanity_check.c 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/drbd/drbd_sizeof_sanity_check.c 2006-06-09 13:38:07 UTC (rev 2229)
@@ -1,24 +1,17 @@
#include <linux/drbd.h>
#include <linux/kernel.h>
+#define COMPILETIME_ASSERT(x) \
+ switch(0) { case 0:; case (x):; }
#define SZO(type,size) \
- s = sizeof(type); \
- if (s != size) { \
- printk("<3>sizeof(" #type "): %d != %d\n", s, size); \
- err = -1; \
- }
+void __assert_sizeof_ ##type ## _eq_ ##size(void) { COMPILETIME_ASSERT(sizeof(struct type) == (size)); } \
+void __assert_sizeof_ ##type ## _modulo_8_eq_0(void) { COMPILETIME_ASSERT(sizeof(struct type) % 8 == 0); }
-int sizeof_drbd_structs_sanity_check(void)
-{
- int err = 0, s = 0;
- SZO(struct disk_config, 24)
- SZO(struct net_config, 308)
- SZO(struct syncer_config, 24)
- SZO(struct ioctl_disk_config, 32)
- SZO(struct ioctl_net_config, 316)
- SZO(struct ioctl_syncer_config, 32)
- SZO(struct ioctl_wait, 16)
- SZO(struct ioctl_get_config, 444)
- if (err) printk("<3>ioctls won't work, aborting\n");
- return err;
-}
+SZO(disk_config, 24)
+SZO(net_config, 304)
+SZO(syncer_config, 24)
+SZO(ioctl_disk_config, 32)
+SZO(ioctl_net_config, 312)
+SZO(ioctl_syncer_config, 32)
+SZO(ioctl_wait, 16)
+SZO(ioctl_get_config, 440)
Modified: branches/drbd-0.7/drbd/linux/drbd.h
===================================================================
--- branches/drbd-0.7/drbd/linux/drbd.h 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/drbd/linux/drbd.h 2006-06-09 13:38:07 UTC (rev 2229)
@@ -93,11 +93,10 @@
IN int ping_int; /* seconds */
IN int max_epoch_size;
IN int max_buffers;
- IN int bdev_threshold;
+ IN int unplug_watermark;
IN int sndbuf_size; /* socket send buffer size */
IN unsigned int ko_count;
IN enum disconnect_handler on_disconnect;
- const int _pad;
};
struct syncer_config {
Modified: branches/drbd-0.7/scripts/drbd.conf
===================================================================
--- branches/drbd-0.7/scripts/drbd.conf 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/scripts/drbd.conf 2006-06-09 13:38:07 UTC (rev 2229)
@@ -173,7 +173,7 @@
# max-buffers 2048;
# When the number of outstanding requests on a standby (secondary)
- # node exceeds bdev-threshold, we start to kick the backing device
+ # node exceeds unplug-watermark, we start to kick the backing device
# to start its request processing. This is an advanced tuning
# parameter to get more performance out of capable storage controlers.
# Some controlers like to be kicked often, other controlers
@@ -181,7 +181,7 @@
# Set it to the value of max-buffers to get the least possible
# number of run_task_queue_disk() / q->unplug_fn(q) calls.
#
- # bdev-threshold 128;
+ # unplug-watermark 128;
# The highest number of data blocks between two write barriers.
Modified: branches/drbd-0.7/user/drbd_limits.h
===================================================================
--- branches/drbd-0.7/user/drbd_limits.h 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/user/drbd_limits.h 2006-06-09 13:38:07 UTC (rev 2229)
@@ -53,7 +53,7 @@
RANGE(MAX_BUFFERS, 32, 131072);
/* @4k PageSize -> 64kB - 512MB */
- RANGE(BDEV_THRESHOLD, 16, 131072);
+ RANGE(UNPLUG_WATERMARK, 16, 131072);
/* 0 is disabled.
* 200 should be more than enough even for very short timeouts */
Modified: branches/drbd-0.7/user/drbdadm_adjust.c
===================================================================
--- branches/drbd-0.7/user/drbdadm_adjust.c 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/user/drbdadm_adjust.c 2006-06-09 13:38:07 UTC (rev 2229)
@@ -337,7 +337,7 @@
do_connect |= check_opt_d(in,"ping-int",1,"sec",res->net_options);
do_connect |= check_opt_d(in,"max-epoch-size",1,"",res->net_options);
do_connect |= check_opt_d(in,"max-buffers",1,"",res->net_options);
- do_connect |= check_opt_d(in,"bdev-threshold",1,"",res->net_options);
+ do_connect |= check_opt_d(in,"unplug-watermark",1,"",res->net_options);
do_connect |= check_opt_d(in,"sndbuf-size",1,"",res->net_options);
do_connect |= check_opt_d(in,"ko-count",1,"",res->net_options);
do_connect |= check_opt_s(in,"on-disconnect",res->net_options);
Modified: branches/drbd-0.7/user/drbdadm_parser.y
===================================================================
--- branches/drbd-0.7/user/drbdadm_parser.y 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/user/drbdadm_parser.y 2006-06-09 13:38:07 UTC (rev 2229)
@@ -144,7 +144,7 @@
R_CONNECT_INT,
R_PING_INT,
R_MAX_BUFFERS,
- R_BDEV_THRESHOLD,
+ R_UNPLUG_WATERMARK,
R_MAX_EPOCH_SIZE,
R_SNDBUF_SIZE,
R_KO_COUNT,
@@ -193,9 +193,9 @@
m_strtoll_range(value, 1, name, DRBD_MAX_BUFFERS_MIN,
DRBD_MAX_BUFFERS_MAX);
break;
- case R_BDEV_THRESHOLD:
- m_strtoll_range(value, 1, name, DRBD_BDEV_THRESHOLD_MIN,
- DRBD_BDEV_THRESHOLD_MAX);
+ case R_UNPLUG_WATERMARK:
+ m_strtoll_range(value, 1, name, DRBD_UNPLUG_WATERMARK_MIN,
+ DRBD_UNPLUG_WATERMARK_MAX);
break;
case R_MAX_EPOCH_SIZE:
m_strtoll_range(value, 1, name, DRBD_MAX_EPOCH_SIZE_MIN,
@@ -333,7 +333,7 @@
%token <txt> TK_MINOR_COUNT 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_BDEV_THRESHOLD TK_MAX_EPOCH_SIZE TK_SNDBUF_SIZE
+%token <txt> TK_UNPLUG_WATERMARK TK_MAX_EPOCH_SIZE TK_SNDBUF_SIZE
%token <txt> TK_SKIP_SYNC TK_USE_CSUMS TK_RATE TK_SYNC_GROUP TK_AL_EXTENTS
%token <txt> TK_WFC_TIMEOUT TK_DEGR_WFC_TIMEOUT
%token <txt> TK_KO_COUNT TK_ON_DISCONNECT TK_DIALOG_REFRESH
@@ -457,8 +457,8 @@
{ range_check(R_PING_INT,$1,$2); $$=new_opt($1,$2); }
| TK_MAX_BUFFERS TK_INTEGER
{ range_check(R_MAX_BUFFERS,$1,$2); $$=new_opt($1,$2); }
- | TK_BDEV_THRESHOLD TK_INTEGER
- { range_check(R_BDEV_THRESHOLD,$1,$2); $$=new_opt($1,$2); }
+ | TK_UNPLUG_WATERMARK TK_INTEGER
+ { range_check(R_UNPLUG_WATERMARK,$1,$2); $$=new_opt($1,$2); }
| TK_MAX_EPOCH_SIZE TK_INTEGER
{ range_check(R_MAX_EPOCH_SIZE,$1,$2); $$=new_opt($1,$2); }
| TK_SNDBUF_SIZE TK_INTEGER
Modified: branches/drbd-0.7/user/drbdadm_scanner.fl
===================================================================
--- branches/drbd-0.7/user/drbdadm_scanner.fl 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/user/drbdadm_scanner.fl 2006-06-09 13:38:07 UTC (rev 2229)
@@ -258,11 +258,11 @@
ping-int do_assign(NUM); CP; return TK_PING_INT;
connect-int do_assign(NUM); CP; return TK_CONNECT_INT;
max-buffers do_assign(NUM); CP; return TK_MAX_BUFFERS;
- bdev-threshold do_assign(NUM); CP; return TK_BDEV_THRESHOLD;
+ unplug-watermark do_assign(NUM); CP; return TK_UNPLUG_WATERMARK;
max-epoch-size do_assign(NUM); CP; return TK_MAX_EPOCH_SIZE;
ko-count do_assign(NUM); CP; return TK_KO_COUNT;
on-disconnect do_assign(ON_DISCONNECT); CP; return TK_ON_DISCONNECT;
- {NDELIM} expect_error("one of 'sndbuf-size|timeout|ping-int|connect-int|max-buffers|bdev-threshold|max-epoch-size|ko-count|on-disconnect'");
+ {NDELIM} expect_error("one of 'sndbuf-size|timeout|ping-int|connect-int|max-buffers|unplug-watermark|max-epoch-size|ko-count|on-disconnect'");
}
<SYNCER>{
Modified: branches/drbd-0.7/user/drbdsetup.c
===================================================================
--- branches/drbd-0.7/user/drbdsetup.c 2006-06-09 12:05:34 UTC (rev 2228)
+++ branches/drbd-0.7/user/drbdsetup.c 2006-06-09 13:38:07 UTC (rev 2229)
@@ -68,7 +68,7 @@
#define DEF_ON_IO_ERROR PassOn
#define DEF_KO_COUNT 0
#define DEF_ON_DISCONNECT Reconnect
-#define DEF_BDEV_THRESHOLD (DEF_MAX_BUFFERS/16)
+#define DEF_UNPLUG_WATERMARK (DEF_MAX_BUFFERS/16)
#if 0
# define ioctl(X...) (fprintf(stderr,"ioctl(%s)\n",#X),0);
@@ -156,7 +156,7 @@
{ "timeout", required_argument, 0, 't' },
{ "max-epoch-size", required_argument, 0, 'e' },
{ "max-buffers",required_argument, 0, 'b' },
- { "bdev-threshold",required_argument, 0, 'l' },
+ { "unplug-watermark",required_argument, 0, 'l' },
{ "connect-int",required_argument, 0, 'c' },
{ "ping-int", required_argument, 0, 'i' },
{ "sndbuf-size",required_argument, 0, 'S' },
@@ -562,7 +562,7 @@
cn->config.sndbuf_size = DEF_SNDBUF_SIZE ;
cn->config.on_disconnect = DEF_ON_DISCONNECT;
cn->config.ko_count = DEF_KO_COUNT;
- cn->config.bdev_threshold = DEF_BDEV_THRESHOLD;
+ cn->config.unplug_watermark = DEF_UNPLUG_WATERMARK;
if(argc==0) return 0;
@@ -590,8 +590,8 @@
DRBD_MAX_BUFFERS_MIN, DRBD_MAX_BUFFERS_MAX);
break;
case 'l':
- cn->config.bdev_threshold = m_strtoll_range(optarg,1, "bdev-threshold",
- DRBD_BDEV_THRESHOLD_MIN, DRBD_BDEV_THRESHOLD_MAX);
+ cn->config.unplug_watermark = m_strtoll_range(optarg,1, "unplug-watermark",
+ DRBD_UNPLUG_WATERMARK_MIN, DRBD_UNPLUG_WATERMARK_MAX);
break;
case 'c':
cn->config.try_connect_int = m_strtoll_range(optarg,1, "connect-int",
@@ -1350,7 +1350,7 @@
SHOW_I("ping-int","sec", cn.nconf.ping_int, DEF_NET_PING_I);
SHOW_I("max-epoch-size","", cn.nconf.max_epoch_size, DEF_MAX_EPOCH_SIZE);
SHOW_I("max-buffers","", cn.nconf.max_buffers, DEF_MAX_BUFFERS);
- SHOW_I("bdev-threshold","", cn.nconf.bdev_threshold, DEF_BDEV_THRESHOLD);
+ SHOW_I("unplug-watermark","", cn.nconf.unplug_watermark, DEF_UNPLUG_WATERMARK);
SHOW_I("sndbuf-size","", cn.nconf.sndbuf_size, DEF_SNDBUF_SIZE);
SHOW_I("ko-count","", cn.nconf.ko_count, DEF_KO_COUNT);
if( cn.nconf.on_disconnect != DEF_ON_DISCONNECT) {
More information about the drbd-cvs
mailing list