[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#134233: no support for cciss devices



Package: boot-floppies
Version: 3.0.19
Severity: wishlist 
Tags: patch 

This patch adds support for cciss devices (on Compaq Proliant servers).
See also at patch in bugreport #132864. This patch must be applied and
debootstrap must be rebuild.
--- boot-floppies-3.0.19.orig/utilities/dbootstrap/bootconfig.c
+++ boot-floppies-3.0.19/utilities/dbootstrap/bootconfig.c
@@ -428,6 +428,7 @@
 #define DEV_SDA      "/dev/sda"
 #define DEV_RD_C0D0  "/dev/rd/c0d0"
 #define DEV_IDA_C0D0 "/dev/ida/c0d0"
+#define DEV_CCISS_C0D0 "/dev/cciss/c0d0"
 
 /* part_disk_name: return name of partition's disk device, if available */
 char *part_disk_name(struct fdisk_partition *part)
@@ -441,6 +442,7 @@
   char *dname = part_disk_name(part);
   return dname && (strcmp(dname, DEV_SDA)      == 0 ||
 		   strcmp(dname, DEV_RD_C0D0)  == 0 ||
++                  strcmp(dname, DEV_CCISS_C0D0)  == 0 ||
 		   strcmp(dname, DEV_IDA_C0D0) == 0);
 }
 
@@ -499,7 +501,12 @@
 {
   return strncmp(name, DEV_IDA_C0D0, strlen(DEV_IDA_C0D0) - 3) == 0;
 }
-
+/* is_scsicciss: returns true if partition is on a SCSI disk (/dev/cciss/c*) */
+int is_scsicciss(const char *name)
+{
+  return strncmp(name, DEV_CCISS_C0D0, strlen(DEV_CCISS_C0D0) - 3) == 0;
+}
+  
 /* Return a string containing the name of the first existing IDE disk.  */
 char *first_ide_disk(void)
 {
@@ -2307,6 +2314,8 @@
     device = DEV_RD_C0D0;
   else if (is_scsiida(boot)) 
     device = DEV_IDA_C0D0;
+  else if (is_scsicciss(boot))
+    device = DEV_CCISS_C0D0;
   else 
 #endif
   {
@@ -2390,6 +2399,7 @@
   else if (is_scsi(boot)) device = DEV_SDA;
   else if (is_scsird(boot)) device = DEV_RD_C0D0;
   else if (is_scsiida(boot)) device = DEV_IDA_C0D0;
+  else if (is_scsicciss(boot)) device = DEV_CCISS_C0D0;
   else {
     INFOMSG("couldn't determine drive type for new boot partition %s", boot);
     device = inputBox(_("The attempt to deduce what your boot disk is failed.  "
--- boot-floppies-3.0.19.orig/utilities/libfdisk/fdisk.c
+++ boot-floppies-3.0.19/utilities/libfdisk/fdisk.c
@@ -569,6 +569,7 @@
     { 65 << 8, 112, 16 },	/* sdq      - sddx      */
     { 72 << 8, 128, 16 },	/* ida/c0d0 - ida/c7d15 */
     { 94 << 8,  26,  4 },	/* dasda    - dasdz     */
+    {104 << 8, 256, 16 },       /* cciss/c0d0 - cciss/c7d15 */
     {       0,   0,  0 }
 };
 

Reply to: