[DRBD-cvs] r1463 - in trunk: drbd testing/CTH user

drbd-user@lists.linbit.com drbd-user@lists.linbit.com
Wed, 28 Jul 2004 15:01:50 +0200 (CEST)


Author: lars
Date: 2004-07-28 15:01:50 +0200 (Wed, 28 Jul 2004)
New Revision: 1463

Modified:
   trunk/drbd/Kconfig
   trunk/drbd/drbd_int.h
   trunk/drbd/drbd_main.c
   trunk/testing/CTH/CTH_bash.helpers
   trunk/testing/CTH/LGE_CTH.pm
   trunk/testing/CTH/functions.sh
   trunk/user/drbdsetup.c
Log:
remove major_nr module parameter again.
default to our newly assigned LANANA device major: 147

Modified: trunk/drbd/Kconfig
===================================================================
--- trunk/drbd/Kconfig	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/drbd/Kconfig	2004-07-28 13:01:50 UTC (rev 1463)
@@ -27,21 +27,6 @@
 
 	  If unsure, say N.
 
-config DRBD_MAJOR
-	int "DRBD device major number"
-	depends on BLK_DEV_DRBD
-	range 1 255
-	default 43
-	---help---
-	  Historically DRBD hijacked the NBD major number.
-	  Until we get some number officially assigned to DRBD,
-	  you can choose one here.
-	  Typical values may be 100 or 219.
-
-	  See also Documentation/devices.txt
-
-	  If unsure, keep the default (43).
-
 comment "DRBD in kernel, no NBD possible"
 	depends on BLK_DEV_DRBD=y
 

Modified: trunk/drbd/drbd_int.h
===================================================================
--- trunk/drbd/drbd_int.h	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/drbd/drbd_int.h	2004-07-28 13:01:50 UTC (rev 1463)
@@ -71,10 +71,10 @@
 // major == nbd_major ? "nbd" : "drbd";
 extern char* drbd_devfs_name;
 
-/* Using the major_nr of the network block device
-   used to prevent us from deadlocking with no request entries
-   left on all_requests... those where the days...
-   look out for NBD_MAJOR in ll_rw_blk.c */
+#include <linux/major.h>
+#ifdef DRBD_MAJOR
+# warning "FIXME. DRBD_MAJOR is now officially defined in major.h"
+#endif
 
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
 /*lge: this hack is to get rid of the compiler warnings about

Modified: trunk/drbd/drbd_main.c
===================================================================
--- trunk/drbd/drbd_main.c	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/drbd/drbd_main.c	2004-07-28 13:01:50 UTC (rev 1463)
@@ -55,9 +55,9 @@
 #include <linux/drbd.h>
 #include "drbd_int.h"
 
-#ifndef CONFIG_DRBD_MAJOR
-#define CONFIG_DRBD_MAJOR 147
-#endif
+/* YES. We got an official device major from lanana
+ */
+#define LANANA_DRBD_MAJOR 147
 
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
 # if defined(CONFIG_PPC64) || defined(CONFIG_SPARC64) || defined(CONFIG_X86_64)
@@ -95,11 +95,11 @@
 MODULE_AUTHOR("Philipp Reisner <phil@linbit.com>, Lars Ellenberg <lars@linbit.com>");
 MODULE_DESCRIPTION("drbd - Distributed Replicated Block Device v" REL_VERSION);
 MODULE_LICENSE("GPL");
-MODULE_PARM_DESC(major_nr, "Major nr to use -- default " __stringify(CONFIG_DRBD_MAJOR) );
+//MODULE_PARM_DESC(major_nr, "Major nr to use -- default " __stringify(CONFIG_DRBD_MAJOR) );
 MODULE_PARM_DESC(minor_count, "Maximum number of drbd devices (1-255)");
 MODULE_PARM_DESC(disable_io_hints, "Necessary if the loopback network device is used for DRBD" );
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
-MODULE_PARM(major_nr,"i");
+//MODULE_PARM(major_nr,"i");
 MODULE_PARM(minor_count,"i");
 MODULE_PARM(disable_io_hints,"i");
 #else
@@ -115,16 +115,16 @@
  */
 
 /* thanks to these macros, if compiled into the kernel (not-module),
- * these become boot parameters: drbd.major_nr, drbd.minor_count and
+ * these become boot parameters: [-drbd.major_nr-], drbd.minor_count and
  * drbd.disable_io_hints
  */
-module_param(major_nr,        int,0);
+//module_param(major_nr,        int,0);
 module_param(minor_count,     int,0);
 module_param(disable_io_hints,int,0);
 #endif
 
 // module parameter, defined
-int major_nr = CONFIG_DRBD_MAJOR;
+int major_nr = LANANA_DRBD_MAJOR;
 #ifdef MODULE
 int minor_count = 2;
 #else
@@ -1686,7 +1686,7 @@
 #ifdef MODULE
 		return -EINVAL;
 #else
-		major_nr = CONFIG_DRBD_MAJOR;
+		major_nr = LANANA_DRBD_MAJOR;
 #endif
 	}
 
@@ -1706,7 +1706,7 @@
 	if (err) {
 		printk(KERN_ERR DEVICE_NAME
 		       ": unable to register block device major %d\n",
-		       major_nr);
+		       MAJOR_NR);
 		return err;
 	}
 
@@ -1858,7 +1858,7 @@
 	       "Version: " REL_VERSION " (api:%d/proto:%d)\n",
 	       API_VERSION,PRO_VERSION);
 	printk(KERN_INFO DEVICE_NAME ": %s\n", drbd_buildtag());
-	printk(KERN_INFO DEVICE_NAME": registered as block device major %d\n", major_nr);
+	printk(KERN_INFO DEVICE_NAME": registered as block device major %d\n", MAJOR_NR);
 
 	return 0; // Success!
 

Modified: trunk/testing/CTH/CTH_bash.helpers
===================================================================
--- trunk/testing/CTH/CTH_bash.helpers	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/testing/CTH/CTH_bash.helpers	2004-07-28 13:01:50 UTC (rev 1463)
@@ -25,8 +25,8 @@
 		left left_ip left_real_dev left_disk
 		right right_ip right_real_dev right_disk
 		conf)
-	DRBD_MAJOR=43
-	DRBD_DEVNAME="nb"	# /dev/ nb X
+	DRBD_MAJOR=147
+	DRBD_DEVNAME="drbd"	# /dev/ nb X
 		#   ="nbd/"
 		#   ="drbd"
 		#   ="drbd/"

Modified: trunk/testing/CTH/LGE_CTH.pm
===================================================================
--- trunk/testing/CTH/LGE_CTH.pm	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/testing/CTH/LGE_CTH.pm	2004-07-28 13:01:50 UTC (rev 1463)
@@ -42,8 +42,8 @@
 sub clean_exit { $clean_exit = 1; exit @_; };
 
 our $MINOR_COUNT =  4;
-our $DRBD_MAJOR  = 43;
-our $DRBD_DEVNAME = "nb";   # the part between /dev/ and the minor number.
+our $DRBD_MAJOR  = 147;
+our $DRBD_DEVNAME = "drbd";   # the part between /dev/ and the minor number.
 		# = "nbd/";
 		# = "drbd";
 		# = "drbd/";

Modified: trunk/testing/CTH/functions.sh
===================================================================
--- trunk/testing/CTH/functions.sh	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/testing/CTH/functions.sh	2004-07-28 13:01:50 UTC (rev 1463)
@@ -155,7 +155,8 @@
 		echo "$egrep_pat"
 		exit 1
 	fi
-	[ -e /proc/drbd ] || modprobe drbd minor_count=$MINOR_COUNT major_nr=$DRBD_MAJOR || exit 1
+	# [ -e /proc/drbd ] || modprobe drbd minor_count=$MINOR_COUNT major_nr=$DRBD_MAJOR || exit 1
+	[ -e /proc/drbd ] || modprobe drbd minor_count=$MINOR_COUNT || exit 1
 	echo "$hostname just forgot its configuration..."
 	# FIXME more paranoia
 }
@@ -184,8 +185,8 @@
 	: ${ip:?unknown admin ip} 
 	: ${hostname:?unknown hostname} 
 	# You can override these in your config
-	: ${DRBD_MAJOR:=43}
-	: ${DRBD_DEVNAME:=nb}
+	: ${DRBD_MAJOR:=147}
+	: ${DRBD_DEVNAME:=drbd}
 	: ${MINOR_COUNT:=4}
 
 

Modified: trunk/user/drbdsetup.c
===================================================================
--- trunk/user/drbdsetup.c	2004-07-28 12:06:22 UTC (rev 1462)
+++ trunk/user/drbdsetup.c	2004-07-28 13:01:50 UTC (rev 1463)
@@ -1306,6 +1306,16 @@
 	      return 20;
 	    }
 
+	  if (strncmp ("/dev/drbd", argv[1], 9))
+	    {
+	      fprintf (stderr,
+		       "  | NOTE: we now have officially asigned"
+		       " device name and major number.\n"
+		       "  | Please use /dev/drbd*; if neccessary"
+		       " create the device nodes first.\n"
+		       "  | To do so: for i in `seq 0 15` ;"
+		       " do mknod /dev/drbd$i b 147 $i; done\n");
+	    }
 	  drbd_fd=open_drbd_device(argv[1]);
 
 	  opterr = 1; /* let getopt() print error messages */