[DRBD-cvs] r1639 - in trunk: . drbd

svn at svn.drbd.org svn at svn.drbd.org
Tue Nov 16 12:48:38 CET 2004


Author: phil
Date: 2004-11-16 12:48:35 +0100 (Tue, 16 Nov 2004)
New Revision: 1639

Modified:
   trunk/
   trunk/ROADMAP
   trunk/drbd/drbd_fs.c
   trunk/drbd/drbd_int.h
   trunk/drbd/drbd_receiver.c
   trunk/drbd/drbd_worker.c
Log:
svnp run. Investigated 1632 to 1639

r1638 by phil on 2004-11-15 22:45:05 +0100 (Mon, 15 Nov 2004) 
  Changed paths:
     M /branches/drbd-0.7/drbd/drbd_fs.c
     M /branches/drbd-0.7/drbd/drbd_int.h
     M /branches/drbd-0.7/drbd/drbd_receiver.c
     M /branches/drbd-0.7/drbd/drbd_worker.c
  
  * Replaced a call to sock_alloc() by sock_create(). Since 
    Linux-2.6.10-rc2 sock_alloc() is no longer available to
    modules
  * Introduced drbd_suicide() wich makes use of 
    current->exit_state = EXIT_ZOMBIE method introduced with
    Linux-2.6.10-rc2
  



Property changes on: trunk
___________________________________________________________________
Name: propagate:at
   - 1632
   + 1639

Modified: trunk/ROADMAP
===================================================================
--- trunk/ROADMAP	2004-11-15 21:45:05 UTC (rev 1638)
+++ trunk/ROADMAP	2004-11-16 11:48:35 UTC (rev 1639)
@@ -97,7 +97,7 @@
 
   New commands:
     drbdadm resume r0
-    drbdadm outdate r0 
+    drbdadm outdate r0
     drbdadm suspend r0
 
   remove option value: on-disconnect=suspend_io
@@ -136,7 +136,7 @@
   tasks as well.
 
   Eventually introduce on-disconnent-cmd "command";
-  0% DONE
+  33% DONE
 
 8 New command drbdmeta
 

Modified: trunk/drbd/drbd_fs.c
===================================================================
--- trunk/drbd/drbd_fs.c	2004-11-15 21:45:05 UTC (rev 1638)
+++ trunk/drbd/drbd_fs.c	2004-11-16 11:48:35 UTC (rev 1639)
@@ -419,8 +419,7 @@
 		 */
 		// return i;
 		drbd_panic("Cannot allocate act_log\n");
-		set_current_state(TASK_ZOMBIE);
-		schedule(); // drbdsetup suicide...
+		drbd_suicide();
 	}
 
 	if (md_gc_valid > 0) {

Modified: trunk/drbd/drbd_int.h
===================================================================
--- trunk/drbd/drbd_int.h	2004-11-15 21:45:05 UTC (rev 1638)
+++ trunk/drbd/drbd_int.h	2004-11-16 11:48:35 UTC (rev 1639)
@@ -1406,3 +1406,13 @@
 #define dump_packet(ignored...) ((void)0)
 #endif
 
+static inline void drbd_suicide(void)
+{
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10)
+	set_current_state(TASK_ZOMBIE);
+#else
+	current->exit_state = EXIT_ZOMBIE;
+#endif
+	schedule();
+}
+

Modified: trunk/drbd/drbd_receiver.c
===================================================================
--- trunk/drbd/drbd_receiver.c	2004-11-15 21:45:05 UTC (rev 1638)
+++ trunk/drbd/drbd_receiver.c	2004-11-16 11:48:35 UTC (rev 1639)
@@ -448,7 +448,7 @@
 	if (err)
 		goto out;
 
-	if (!(newsock = sock_alloc()))
+	if (sock_create(PF_INET, SOCK_STREAM, IPPROTO_TCP, &newsock))
 		goto out;
 
 	newsock->type = sock->type;
@@ -476,8 +476,7 @@
 	int rv;
 
 	if (unlikely(drbd_did_panic == DRBD_MAGIC)) {
-		set_current_state(TASK_ZOMBIE);
-		schedule(); // commit suicide
+		drbd_suicide();
 	}
 
 	msg.msg_control = NULL;
@@ -508,8 +507,7 @@
 	int rv;
 
 	if (unlikely(drbd_did_panic == DRBD_MAGIC)) {
-		set_current_state(TASK_ZOMBIE);
-		schedule(); // commit suicide
+		drbd_suicide();
 	}
 
 	msg.msg_control = NULL;

Modified: trunk/drbd/drbd_worker.c
===================================================================
--- trunk/drbd/drbd_worker.c	2004-11-15 21:45:05 UTC (rev 1638)
+++ trunk/drbd/drbd_worker.c	2004-11-16 11:48:35 UTC (rev 1639)
@@ -782,8 +782,7 @@
 		intr = down_interruptible(&mdev->data.work.s);
 
 		if (unlikely(drbd_did_panic == DRBD_MAGIC)) {
-			set_current_state(TASK_ZOMBIE);
-			schedule(); // commit suicide
+			drbd_suicide();
 		}
 
 		if (intr) {



More information about the drbd-cvs mailing list