[DRBD-cvs] r1620 - trunk/drbd

svn at svn.drbd.org svn at svn.drbd.org
Fri Oct 29 13:24:26 CEST 2004


Author: lars
Date: 2004-10-29 13:24:23 +0200 (Fri, 29 Oct 2004)
New Revision: 1620

Modified:
   trunk/drbd/drbd_bitmap.c
   trunk/drbd/drbd_fs.c
   trunk/drbd/drbd_proc.c
Log:
size is now in sectors; don't set double capacity.

Modified: trunk/drbd/drbd_bitmap.c
===================================================================
--- trunk/drbd/drbd_bitmap.c	2004-10-29 02:21:01 UTC (rev 1619)
+++ trunk/drbd/drbd_bitmap.c	2004-10-29 11:24:23 UTC (rev 1620)
@@ -172,7 +172,12 @@
 #else
 #define BM_PARANOIA_CHECK() do {					\
 	D_ASSERT(b->bm[b->bm_words] == DRBD_MAGIC);			\
-	D_ASSERT(b->bm_dev_capacity == drbd_get_capacity(mdev->this_bdev));	\
+	if (b->bm_dev_capacity != drbd_get_capacity(mdev->this_bdev)) {	\
+		ERR("%s:%d: bm_dev_capacity:%llu drbd_get_capacity:%llu\n", \
+		__FILE__, __LINE__,					\
+		(unsigned long long) b->bm_dev_capacity,		\
+		(unsigned long long) drbd_get_capacity(mdev->this_bdev));\
+	}								\
 } while (0)
 #endif
 // }

Modified: trunk/drbd/drbd_fs.c
===================================================================
--- trunk/drbd/drbd_fs.c	2004-10-29 02:21:01 UTC (rev 1619)
+++ trunk/drbd/drbd_fs.c	2004-10-29 11:24:23 UTC (rev 1620)
@@ -96,6 +96,7 @@
  */
 STATIC int do_determin_dev_size(struct Drbd_Conf* mdev)
 {
+#warning "these ._size <<1 shifts have to go"
 	sector_t p_size = mdev->p_size <<1;  // partner's disk size.
 	sector_t la_size = mdev->la_size; // last agreed size.
 	sector_t m_size; // my size
@@ -131,6 +132,7 @@
 	}
 
 	if(u_size) {
+		/* FIXME size now in sectors, user still provides KB */
 		if(u_size > size) {
 			ERR("Requested disk size is too big (%lu > %lu)\n",
 			    (unsigned long)u_size, (unsigned long)size);
@@ -148,7 +150,7 @@
 			    ppsize(ppb,size>>1),(unsigned long)size);
 		} else {
 			// racy, see comments above.
-			drbd_set_my_capacity(mdev,size<<1);
+			drbd_set_my_capacity(mdev,size);
 			mdev->la_size = size;
 			INFO("size = %s (%lu sect)\n",ppsize(ppb,size>>1),
 			     (unsigned long)size);

Modified: trunk/drbd/drbd_proc.c
===================================================================
--- trunk/drbd/drbd_proc.c	2004-10-29 02:21:01 UTC (rev 1619)
+++ trunk/drbd/drbd_proc.c	2004-10-29 11:24:23 UTC (rev 1620)
@@ -244,8 +244,9 @@
 			);
 
 			if ( drbd_conf[i].cstate == SyncSource ||
-			     drbd_conf[i].cstate == SyncTarget )
+			     drbd_conf[i].cstate == SyncTarget ) {
 				rlen += drbd_syncer_progress(drbd_conf+i,buf+rlen);
+			}
 
 			rlen += lc_sprintf_stats(buf+rlen,drbd_conf[i].resync);
 			rlen += lc_sprintf_stats(buf+rlen,drbd_conf[i].act_log);



More information about the drbd-cvs mailing list