[DRBD-cvs] drbd by phil; [by LGE] Some minor updates.

drbd-user@lists.linbit.com drbd-user@lists.linbit.com
Fri, 21 May 2004 13:43:10 +0200 (CEST)


DRBD CVS committal

Author  : phil
Module  : drbd

Dir     : drbd/drbd


Modified Files:
      Tag: rel-0_7-branch
	drbd_actlog.c drbd_dsender.c drbd_fs.c drbd_int.h drbd_proc.c 


Log Message:
[by LGE] Some minor updates.

===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/Attic/drbd_actlog.c,v
retrieving revision 1.1.2.101
retrieving revision 1.1.2.102
diff -u -3 -r1.1.2.101 -r1.1.2.102
--- drbd_actlog.c	17 May 2004 12:55:32 -0000	1.1.2.101
+++ drbd_actlog.c	21 May 2004 11:43:05 -0000	1.1.2.102
@@ -671,7 +671,7 @@
 			}
 			udw->enr = enr*SM;
 			udw->w.cb = w_update_odbm;
-			drbd_queue_work(mdev,&mdev->data.work,&udw->w);
+			drbd_queue_work_front(mdev,&mdev->data.work,&udw->w);
 			lc_del(mdev->resync,&ext->lce);
 		}
 	}
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/Attic/drbd_dsender.c,v
retrieving revision 1.1.2.113
retrieving revision 1.1.2.114
diff -u -3 -r1.1.2.113 -r1.1.2.114
--- drbd_dsender.c	21 May 2004 08:49:50 -0000	1.1.2.113
+++ drbd_dsender.c	21 May 2004 11:43:05 -0000	1.1.2.114
@@ -645,6 +645,7 @@
 
 	if(mdev->cstate == SyncTarget) {
 		D_ASSERT(!test_bit(STOP_SYNC_TIMER,&mdev->flags));
+		D_ASSERT(mdev->rs_left > 0);
 		mod_timer(&mdev->resync_timer,jiffies);
 	}
 }
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/drbd_fs.c,v
retrieving revision 1.28.2.95
retrieving revision 1.28.2.96
diff -u -3 -r1.28.2.95 -r1.28.2.96
--- drbd_fs.c	19 May 2004 19:52:47 -0000	1.28.2.95
+++ drbd_fs.c	21 May 2004 11:43:05 -0000	1.28.2.96
@@ -597,6 +597,7 @@
 	 * */
 
 	mdev->state = (Drbd_State) newstate & 0x03;
+	INFO("switched to %s state\n", nodestate_to_name(mdev->state));
 	if(newstate & Primary) {
 		NOT_IN_26( set_device_ro(MKDEV(MAJOR_NR, minor), FALSE ); )
 
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/drbd_int.h,v
retrieving revision 1.58.2.165
retrieving revision 1.58.2.166
diff -u -3 -r1.58.2.165 -r1.58.2.166
--- drbd_int.h	21 May 2004 08:49:50 -0000	1.58.2.165
+++ drbd_int.h	21 May 2004 11:43:05 -0000	1.58.2.166
@@ -1048,6 +1048,17 @@
 }
 
 static inline void
+drbd_queue_work_front(drbd_dev *mdev, struct drbd_work_queue *q,
+			struct drbd_work *w)
+{
+	unsigned long flags;
+	spin_lock_irqsave(&mdev->req_lock,flags);
+	list_add(&w->list,&q->q);
+	spin_unlock_irqrestore(&mdev->req_lock,flags);
+	up(&q->s);
+}
+
+static inline void
 drbd_queue_work(drbd_dev *mdev, struct drbd_work_queue *q,
 		  struct drbd_work *w)
 {
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/drbd_proc.c,v
retrieving revision 1.8.2.28
retrieving revision 1.8.2.29
diff -u -3 -r1.8.2.28 -r1.8.2.29
--- drbd_proc.c	19 May 2004 16:58:09 -0000	1.8.2.28
+++ drbd_proc.c	21 May 2004 11:43:05 -0000	1.8.2.29
@@ -71,11 +71,12 @@
 	sz+=sprintf(buf+sz,"sync'ed:%3lu.%lu%% ", res / 10, res % 10);
 	if (mdev->rs_total > 0x100000L) /* if more than 1 GB display in MB */
 		sz+=sprintf(buf+sz,"(%lu/%lu)M\n\t",
-			    (unsigned long) mdev->rs_left>>11, 
+			    (unsigned long) mdev->rs_left>>11,
 			    (unsigned long) mdev->rs_total>>11);
 	else
 		sz+=sprintf(buf+sz,"(%lu/%lu)K\n\t", 
-			    (unsigned long) mdev->rs_left>>1, 
+			    (unsigned long) mdev->rs_left>>1 | 
+			    (mdev->rs_left == 1),
 			    (unsigned long) mdev->rs_total>>1);
 
 	/* see drivers/md/md.c