Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Tue, 2002-03-05 at 11:55, Matt Kraai wrote: > It worked in my testing (an iBook2). I say commit it. Done. Thanks for testing this. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, Mar 04, 2002 at 05:37:17PM -0500, Colin Walters wrote: > On Mon, 2002-03-04 at 16:19, Matt Kraai wrote: > > > No. The file system must be mounted for is_fstype, and hence > > verify_powerpc_mount, to work correctly. Since it isn't > > mounted, is_fstype always returns false, so verify_powerpc_mount > > always decides that the /boot partition file system is not > > supported. > > Ah, right. That's rather a bummer. I think I see how to solve this > though; we just pass verify_powerpc_mount the type of the partition we > want to mount it as. Maybe this will work: It worked in my testing (an iBook2). I say commit it. Matt msg16676/pgp0.pgp Description: PGP signature
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, Mar 04, 2002 at 05:37:17PM -0500, Colin Walters wrote: > On Mon, 2002-03-04 at 16:19, Matt Kraai wrote: > > > No. The file system must be mounted for is_fstype, and hence > > verify_powerpc_mount, to work correctly. Since it isn't > > mounted, is_fstype always returns false, so verify_powerpc_mount > > always decides that the /boot partition file system is not > > supported. > > Ah, right. That's rather a bummer. I think I see how to solve this > though; we just pass verify_powerpc_mount the type of the partition we > want to mount it as. Maybe this will work: This looks good. I'll test it tomorrow unless someone beats me to it. Matt msg16608/pgp0.pgp Description: PGP signature
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, 2002-03-04 at 16:19, Matt Kraai wrote: > No. The file system must be mounted for is_fstype, and hence > verify_powerpc_mount, to work correctly. Since it isn't > mounted, is_fstype always returns false, so verify_powerpc_mount > always decides that the /boot partition file system is not > supported. Ah, right. That's rather a bummer. I think I see how to solve this though; we just pass verify_powerpc_mount the type of the partition we want to mount it as. Maybe this will work: Index: partition_config.c === RCS file: /cvs/debian-boot/boot-floppies/utilities/dbootstrap/partition_config.c,v retrieving revision 1.146 diff -u -u -r1.146 partition_config.c --- partition_config.c 2002/02/17 22:00:23 1.146 +++ partition_config.c 2002/03/04 22:35:09 @@ -118,41 +118,41 @@ #if #cpu(powerpc) int -verify_powerpc_mount(char *mount_point) { -/* yaboot can read ext2,ext3,xfs,reiserfs, but crippleware filesystems - like hfs will break make-bootable. - quik can only read ext2. */ -if ((!strcmp(mount_point, "/boot")) || (!strcmp(mount_point, "/boot/"))) { - if (strstr(Arch2, "PowerMac")) { - int is_newworld = !strcmp(Arch3, "NewWorld"); - if (!is_fstype("/boot", "ext2") - || - (is_newworld ? !is_fstype("/boot", "ext3") -|| !is_fstype("/boot", "xfs") -/* Should someone WANT to lose their data...*/ - || !is_fstype("/boot", "reiserfs") -: 0)) - { - snprintf(prtbuf, sizeof(prtbuf), -_("The file system type you have chosen for /boot " - "is not compatible with the %s bootloader. Please " - "choose one of: ext2%s%s"), -is_newworld ? "yaboot" : "quik", -is_ext3 ? " ext3" : "", -is_xfs ? " xfs" : ""); - problemBox(prtbuf, - _("Choose another file system")); - return 1; - } - else if (!(((Arch3 != NULL) && (0 == strcmp(Arch3, "NewWorld"))) || (0 == strcmp(Arch2, "chrp" - if (DLG_NO == yesNoBox(_("Quik may not work correctly if a separate " - "/boot partition is used. Do you wish to continue " - "mounting /boot?"), -_("Quik problems with /boot not on /"))) - return 1; - } +verify_powerpc_mount(char *mount_point, char *type) { + /* yaboot can read ext2,ext3,xfs,reiserfs, but crippleware filesystems + like hfs will break make-bootable. + quik can only read ext2. */ + if (!strncmp(mount_point, "/target/boot", 12)) { +if (strstr(Arch2, "PowerMac")) { + int is_newworld = !strcmp(Arch3, "NewWorld"); + if ((!is_newworld + && strcmp(type, "ext2")) + || (is_newworld + && strcmp(type, "ext2") + && strcmp(type, "ext3") + && strcmp(type, "xfs") + && strcmp(type, "reiserfs"))) + { + snprintf(prtbuf, sizeof(prtbuf), + _("The file system type you have chosen for /boot " +"is not compatible with the %s bootloader. Please " +"choose one of: ext2%s%s"), + is_newworld ? "yaboot" : "quik", + is_ext3 ? " ext3" : "", + is_xfs ? " xfs" : ""); + problemBox(prtbuf, _("Choose another file system")); + return 1; + } + else if (!(((Arch3 != NULL) && (0 == strcmp(Arch3, "NewWorld"))) +|| (0 == strcmp(Arch2, "chrp" + if (DLG_NO == yesNoBox(_("Quik may not work correctly if a separate " +"/boot partition is used. Do you wish to continue " +"mounting /boot?"), + _("Quik problems with /boot not on /"))) + return 1; } -return 0; + } + return 0; } #endif @@ -639,10 +639,6 @@ else { mount_point = strdup(mount_points[status].tag); } -#if #cpu(powerpc) -if (verify_powerpc_mount(mount_point)) - return 1; -#endif if (NULL == mount_point) return 1; real_mount_point = (char *)malloc(9 + strlen(mount_point)); strcpy(real_mount_point, "/target"); @@ -710,7 +706,7 @@ if (!(strcmp(xfsmagic, "XFSB"))) { /* XFS */ #if #cpu(powerpc) - if (verify_powerpc_mount(mount_point)) + if (verify_powerpc_mount(mount_point, "xfs")) return 1; #endif INFOMSG("Mounting XFS partition %s on %s", partition->name, mount_point); @@ -722,7 +718,7 @@ else if (!(strcmp(shfsmagic, "ReIsErFs") && strcmp(shfsmagic, "ReIsEr2Fs"))) /* reiserfs */ { #if #cpu (powerpc) - if (verify_powerpc_mount(mount_point)) + if (verify_powerpc_mount(mount_point, "reiserfs")) return 1; #endif snprint
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, Mar 04, 2002 at 02:32:31PM -0800, Matt Kraai wrote: > On Mon, Mar 04, 2002 at 11:20:14PM +0100, Florian Lohoff wrote: > > On Mon, Mar 04, 2002 at 01:19:45PM -0800, Matt Kraai wrote: > > > No. The file system must be mounted for is_fstype, and hence > > > verify_powerpc_mount, to work correctly. Since it isn't > > > mounted, is_fstype always returns false, so verify_powerpc_mount > > > always decides that the /boot partition file system is not > > > supported. > > > > Might it be that its intentional to return false if /boot is a seperate > > filesystem ? I could imageing that there are bootloaders which > > are not able to follow a interpartition symlink. "delo" and "arcboot" > > the Decstation and SGI Indy/Indigo2 bootloaders definitly cant thus > > it would be a good idea not to offer a seperate /boot partition and > > to give an error that the architectures bootloader is not able > > to cope with that. > > The PowerPC boot loaders support a separate /boot partition (or > so the comments lead me to believe). If your's doesn't, feel > free to add sanity checks for your architecture. It seems to me that quik doesn't, at least not very well. Stephen -- Stephen R. Marenka If life's not fun, you're not doing it right! <[EMAIL PROTECTED]> msg16604/pgp0.pgp Description: PGP signature
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, Mar 04, 2002 at 11:20:14PM +0100, Florian Lohoff wrote: > On Mon, Mar 04, 2002 at 01:19:45PM -0800, Matt Kraai wrote: > > No. The file system must be mounted for is_fstype, and hence > > verify_powerpc_mount, to work correctly. Since it isn't > > mounted, is_fstype always returns false, so verify_powerpc_mount > > always decides that the /boot partition file system is not > > supported. > > Might it be that its intentional to return false if /boot is a seperate > filesystem ? I could imageing that there are bootloaders which > are not able to follow a interpartition symlink. "delo" and "arcboot" > the Decstation and SGI Indy/Indigo2 bootloaders definitly cant thus > it would be a good idea not to offer a seperate /boot partition and > to give an error that the architectures bootloader is not able > to cope with that. The PowerPC boot loaders support a separate /boot partition (or so the comments lead me to believe). If your's doesn't, feel free to add sanity checks for your architecture. Matt msg16602/pgp0.pgp Description: PGP signature
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, Mar 04, 2002 at 01:19:45PM -0800, Matt Kraai wrote: > No. The file system must be mounted for is_fstype, and hence > verify_powerpc_mount, to work correctly. Since it isn't > mounted, is_fstype always returns false, so verify_powerpc_mount > always decides that the /boot partition file system is not > supported. Might it be that its intentional to return false if /boot is a seperate filesystem ? I could imageing that there are bootloaders which are not able to follow a interpartition symlink. "delo" and "arcboot" the Decstation and SGI Indy/Indigo2 bootloaders definitly cant thus it would be a good idea not to offer a seperate /boot partition and to give an error that the architectures bootloader is not able to cope with that. Flo -- Florian Lohoff [EMAIL PROTECTED] +49-5201-669912 Nine nineth on september the 9th Welcome to the new billenium msg16601/pgp0.pgp Description: PGP signature
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, Mar 04, 2002 at 03:41:54PM -0500, Colin Walters wrote: > On Mon, 2002-03-04 at 13:57, Matt Kraai wrote: > > Package: boot-floppies > > Version: N/A; reported 2002-03-04 > > > > The boot-floppies do not permit a /boot partition to be > > mounted. They complain that its file system is not supported by > > the boot loader. > > Ok. Here's my suggested patch. It is not yet tested, but it *should* > work. I think. No. The file system must be mounted for is_fstype, and hence verify_powerpc_mount, to work correctly. Since it isn't mounted, is_fstype always returns false, so verify_powerpc_mount always decides that the /boot partition file system is not supported. Matt msg16596/pgp0.pgp Description: PGP signature
Bug#136818: powerpc/new-powermac] will not mount /boot partition
On Mon, 2002-03-04 at 13:57, Matt Kraai wrote: > Package: boot-floppies > Version: N/A; reported 2002-03-04 > > The boot-floppies do not permit a /boot partition to be > mounted. They complain that its file system is not supported by > the boot loader. Ok. Here's my suggested patch. It is not yet tested, but it *should* work. I think. Index: partition_config.c === RCS file: /cvs/debian-boot/boot-floppies/utilities/dbootstrap/partition_config.c,v retrieving revision 1.146 diff -u -u -r1.146 partition_config.c --- partition_config.c 2002/02/17 22:00:23 1.146 +++ partition_config.c 2002/03/04 20:40:55 @@ -119,40 +119,40 @@ #if #cpu(powerpc) int verify_powerpc_mount(char *mount_point) { -/* yaboot can read ext2,ext3,xfs,reiserfs, but crippleware filesystems - like hfs will break make-bootable. - quik can only read ext2. */ -if ((!strcmp(mount_point, "/boot")) || (!strcmp(mount_point, "/boot/"))) { - if (strstr(Arch2, "PowerMac")) { - int is_newworld = !strcmp(Arch3, "NewWorld"); - if (!is_fstype("/boot", "ext2") - || - (is_newworld ? !is_fstype("/boot", "ext3") -|| !is_fstype("/boot", "xfs") -/* Should someone WANT to lose their data...*/ - || !is_fstype("/boot", "reiserfs") -: 0)) - { - snprintf(prtbuf, sizeof(prtbuf), -_("The file system type you have chosen for /boot " - "is not compatible with the %s bootloader. Please " - "choose one of: ext2%s%s"), -is_newworld ? "yaboot" : "quik", -is_ext3 ? " ext3" : "", -is_xfs ? " xfs" : ""); - problemBox(prtbuf, - _("Choose another file system")); - return 1; - } - else if (!(((Arch3 != NULL) && (0 == strcmp(Arch3, "NewWorld"))) || (0 == strcmp(Arch2, "chrp" - if (DLG_NO == yesNoBox(_("Quik may not work correctly if a separate " - "/boot partition is used. Do you wish to continue " - "mounting /boot?"), -_("Quik problems with /boot not on /"))) - return 1; - } + /* yaboot can read ext2,ext3,xfs,reiserfs, but crippleware filesystems + like hfs will break make-bootable. + quik can only read ext2. */ + if (!strncmp(mount_point, "/target/boot", 12)) { +if (strstr(Arch2, "PowerMac")) { + int is_newworld = !strcmp(Arch3, "NewWorld"); + if ((!is_newworld + && !is_fstype("/boot", "ext2")) + || (is_newworld + && !is_fstype("/boot", "ext2") + && !is_fstype("/boot", "ext3") + && !is_fstype("/boot", "xfs") + && !is_fstype("/boot", "reiserfs"))) + { + snprintf(prtbuf, sizeof(prtbuf), + _("The file system type you have chosen for /boot " +"is not compatible with the %s bootloader. Please " +"choose one of: ext2%s%s"), + is_newworld ? "yaboot" : "quik", + is_ext3 ? " ext3" : "", + is_xfs ? " xfs" : ""); + problemBox(prtbuf, _("Choose another file system")); + return 1; + } + else if (!(((Arch3 != NULL) && (0 == strcmp(Arch3, "NewWorld"))) +|| (0 == strcmp(Arch2, "chrp" + if (DLG_NO == yesNoBox(_("Quik may not work correctly if a separate " +"/boot partition is used. Do you wish to continue " +"mounting /boot?"), + _("Quik problems with /boot not on /"))) + return 1; } -return 0; + } + return 0; } #endif @@ -639,16 +639,16 @@ else { mount_point = strdup(mount_points[status].tag); } -#if #cpu(powerpc) -if (verify_powerpc_mount(mount_point)) - return 1; -#endif if (NULL == mount_point) return 1; real_mount_point = (char *)malloc(9 + strlen(mount_point)); strcpy(real_mount_point, "/target"); if (mount_point[0] != '/') strcat(real_mount_point, "/"); strcat(real_mount_point, mount_point); +#if #cpu(powerpc) +if (verify_powerpc_mount(real_mount_point)) + return 1; +#endif } if (! NAME_ISDIR( real_mount_point, &statbuf ) ) {
Bug#136818: [powerpc/new-powermac] will not mount /boot partition
Package: boot-floppies Version: N/A; reported 2002-03-04 The boot-floppies do not permit a /boot partition to be mounted. They complain that its file system is not supported by the boot loader. Matt msg16593/pgp0.pgp Description: PGP signature