On Sun, Dec 05, 1999 at 12:02:41AM +0100, Piotr Wilkin wrote:

> ... So, while the partition read on 2.0.36 looks like this:
> 
> hdb: hdb1 < hdb5 hdb6 hdb7 hdb8 > hdb2 < hdb9 hdb10 >
> 
> on 2.2.13 (with compiled FreeBSD disklabel support) it looks like this:
> 
> hdb: hdb1 hdb2 < hdb5 hdb6 hdb7 hdb8 >
> 

Yes, when I saw patch-2.2.0-pre1 I already expected complaints about this
but didnt want to submit patches as long as nobody had problems.

The old code would start looking inside a BSD partition for slices
(here BSD people interchange the words partition and slice)
and the new code saves looking inside for later.

This is an improvement in that the naming of partitions/slices is less
dependent on the kernel configuration options.
However, the saving for later assigns to a single variable and hence
cannot handle two BSD partitions.

It is very easy to fix this. In linux/drivers/block/genhd.c you'll
find (on 2.2.13) code like
        bsd_kdev = MKDEV(hd->major, minor);
change that into
        bsd_kdev = MKDEV(hd->major, minor);
        printk(" <");
        bsd_disklabel_partition(hd, bsd_kdev, bsd_maxpart);
        printk(" >");
        bsd_kdev = 0;
and things should work as before.

If there still are problems, write to [EMAIL PROTECTED]

Andries

Reply via email to