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

[dm-devel] Re: [BUG?] register_blkdev: failed to get major for device mapper



On Mon, 19 Feb 2007 11:01:02 +0100 Rolf Eike Beer <eike-kernel sf-tec de> wrote:

> Andrew Morton wrote:
> > On Fri, 16 Feb 2007 14:37:28 +0100
> > Rolf Eike Beer <eike-kernel sf-tec de> wrote:
> 
> > > I can't bring up my machine with root LVM anymore using x86_64. The same
> > > machine from same kernel tree boots fine as x86. The error message is
> > > quoted in subject. The tree is at
> > > 86a71dbd3e81e8870d0f0e56b87875f57e58222b (for those not using git:
> > > somewhere after 2.6.20).
> >
> > Does this fix it?  I don't see why it would, but this was recently added.
> 
> Yes. But now usb complains "unable to get a dynamic major for usb endpoints". 
> Nevertheless the USB mouse works.
> 

That's just nutty.

Can you add this, see what it says just prior to that "unable to get a
dynamic major for usb endpoints"?


--- a/fs/char_dev.c~a
+++ a/fs/char_dev.c
@@ -108,15 +108,21 @@ __register_chrdev_region(unsigned int ma
 	/* temporary */
 	if (major == 0) {
 		for (i = ARRAY_SIZE(chrdevs)-1; i > 0; i--) {
+			printk("%s: i = %d: ", __FUNCTION__, i);
 			/*
 			 * Disallow the LANANA-assigned LOCAL/EXPERIMENTAL
 			 * majors
 			 */
 			if ((60 <= i && i <= 63) || (120 <= i && i <= 127) ||
-					(240 <= i && i <= 254))
+					(240 <= i && i <= 254)) {
+				printk("skipped\n");
 				continue;
-			if (chrdevs[i] == NULL)
+			}
+			if (chrdevs[i] == NULL) {
+				printk("free\n");
 				break;
+			}
+			printk("used\n");
 		}
 
 		if (i == 0) {
_


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