Bug 11300 - Device major device numbers wrong on second cpqarray device during install
Summary: Device major device numbers wrong on second cpqarray device during install
Status: CLOSED DUPLICATE of bug 11304
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: anaconda
Version: 6.2
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Michael Fulbright
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2000-05-08 17:44 UTC by Chris Wood
Modified: 2008-05-01 15:37 UTC (History)
1 user (show)

Clone Of:
Last Closed: 2000-05-10 19:33:02 UTC

Attachments (Terms of Use)

Description Chris Wood 2000-05-08 17:44:39 UTC
Compaq DL380 server, with both built in and additional SMART2 controllers

All disks are on add-in card, configured for hardware raid 0+1.
Both SMART devices detected, with on-board assigned device0 and add-in
assigned device1

Using the gdth.img dd disk, although have tried without it as well.

Problem is that when the installer creates the device files for the drive
array below /tmp/ida, it names the files correctly but gives them the wrong
major device number.
All entries for my device (starting c1d0 - it's logical disk 0 on
controller 1) should have major 73, as they are on the second cpqarray
device, but infact they are assigned major 72, which should be used for the
first device.

This makes things pretty much totally uninstallable, as it appears to
create the device files for the partitions on the fly when it needs them,
overwriting any efforts I've made to create my own device files with the
correct settings.

Any help greatfully received...


Comment 1 Chris Wood 2000-05-10 10:12:59 UTC
More info for you -
The second controller is a 3200. Both controllers and the system BIOS are
patched to the latest available from compaq.
The problem is also reproducible with 6.1, using the Compaq supplied boot disk
(from the compaq.com server support site). If you don't use this boot disk, then
the second controller is not found at all.

Comment 2 Chris Wood 2000-05-10 16:19:59 UTC
OK, I've had a dig in the anaconda source, and I've found the problem.
In the isys dir, there is a file called devnodes.c, which creates devices based
on the device list it's given.
The section in that file that deals with ida devices assumes that there will
only ever be one controller, thus assigning major 72 regardless.

I think something like this patch would fix it:

--- anaconda-6.2.2/isys/devnodes.c	Fri Jan  7 16:57:15 2000
+++ anaconda-6.2.2/isys/devnodes.c.new	Wed May 10 16:09:11 2000
@@ -103,7 +103,11 @@
     } else if (!strncmp(devName, "ida/", 4)) {
 	/* Compaq Smart Array "ida/c0d0{p1} */
 	type = S_IFBLK;
-	major = 72;                    /* controller */
+	if (devName[5] == '0' ) {
+	    major = 72;                    /* controller 0 */
+	} else {
+	    major = 73;                    /* controller 1 */
+	}
 	minor = (devName[7] - '0') * 16;  /* disk */
 	if (strlen(devName) > 8)          /* partition */
 	    minor += atoi(devName + 9);

However, I'm having trouble compiling the  source so haven't been able to verify
as yet. Would appreciate it if you could take a look, verify and get back to me.
I really need this resolving asap - I have a large number of these servers to
get built as quickly as poss.



Comment 3 Jay Turner 2000-05-10 19:33:59 UTC
*** This bug has been marked as a duplicate of 11304 ***

Note You need to log in before you can comment on or make changes to this bug.