? distrib/utils/sysinst/cscope.out Index: usr.sbin/installboot/arch/hp700.c =================================================================== RCS file: /cvsroot/src/usr.sbin/installboot/arch/hp700.c,v retrieving revision 1.4 diff -u -p -u -r1.4 hp700.c --- usr.sbin/installboot/arch/hp700.c 28 Apr 2008 20:24:16 -0000 1.4 +++ usr.sbin/installboot/arch/hp700.c 9 Jan 2012 07:34:51 -0000 @@ -181,6 +181,7 @@ hp700_setboot(ib_params *params) warnx("WARNING: Partition `a' of `%s' exceeds 2GB boundary.", params->filesystem); warnx("WARNING: It won't boot since hp700 PDC can handle only 2GB."); + goto done; } /* read boot loader */ Index: distrib/utils/sysinst/arch/hp700/md.c =================================================================== RCS file: /cvsroot/src/distrib/utils/sysinst/arch/hp700/md.c,v retrieving revision 1.13 diff -u -p -u -r1.13 md.c --- distrib/utils/sysinst/arch/hp700/md.c 5 Jan 2012 21:32:36 -0000 1.13 +++ distrib/utils/sysinst/arch/hp700/md.c 9 Jan 2012 07:34:51 -0000 @@ -50,6 +50,8 @@ #include "msg_defs.h" #include "menu_defs.h" +#define HP700_PDC_LIMIT ((unsigned)2*1024*1024*1024) + void md_init(void) { @@ -108,7 +110,7 @@ md_get_info(void) /* * hp700 PDC can only address up to 2GB. */ - root_limit = ((unsigned)2*1024*1024*1024) / (unsigned)sectorsize; + root_limit = HP700_PDC_LIMIT / (unsigned)sectorsize; return 1; } @@ -128,6 +130,23 @@ md_make_bsd_partitions(void) int md_check_partitions(void) { + /* Check the root partition is sane. */ + uint32_t limit = HP700_PDC_LIMIT / (unsigned)sectorsize; + int part; + + for (part = PART_A; part < MAXPARTITIONS; part++) { + if (strcmp(bsdlabel[part].pi_mount, "/") == 0) { + uint32_t offset = bsdlabel[part].pi_offset; + uint32_t size = bsdlabel[part].pi_size; + + if (offset > limit || offset + size > limit) { + msg_display(MSG_md_pdclimit); + process_menu(MENU_ok, NULL); + return 0; + } + } + } + return 1; } Index: distrib/utils/sysinst/arch/hp700/msg.md.de =================================================================== RCS file: /cvsroot/src/distrib/utils/sysinst/arch/hp700/msg.md.de,v retrieving revision 1.5 diff -u -p -u -r1.5 msg.md.de --- distrib/utils/sysinst/arch/hp700/msg.md.de 4 Apr 2011 08:30:29 -0000 1.5 +++ distrib/utils/sysinst/arch/hp700/msg.md.de 9 Jan 2012 07:34:51 -0000 @@ -50,3 +50,6 @@ message dobootblks message set_kernel_1 {Kernel (GENERIC)} + +message md_pdclimit +{The root partition start or extends beyond the PDC limit of 2GB.} Index: distrib/utils/sysinst/arch/hp700/msg.md.en =================================================================== RCS file: /cvsroot/src/distrib/utils/sysinst/arch/hp700/msg.md.en,v retrieving revision 1.5 diff -u -p -u -r1.5 msg.md.en --- distrib/utils/sysinst/arch/hp700/msg.md.en 4 Apr 2011 08:30:29 -0000 1.5 +++ distrib/utils/sysinst/arch/hp700/msg.md.en 9 Jan 2012 07:34:51 -0000 @@ -50,3 +50,6 @@ message dobootblks message set_kernel_1 {Kernel (GENERIC)} + +message md_pdclimit +{The root partition start or extends beyond the PDC limit of 2GB.} Index: distrib/utils/sysinst/arch/hp700/msg.md.es =================================================================== RCS file: /cvsroot/src/distrib/utils/sysinst/arch/hp700/msg.md.es,v retrieving revision 1.5 diff -u -p -u -r1.5 msg.md.es --- distrib/utils/sysinst/arch/hp700/msg.md.es 4 Apr 2011 08:30:29 -0000 1.5 +++ distrib/utils/sysinst/arch/hp700/msg.md.es 9 Jan 2012 07:34:51 -0000 @@ -50,3 +50,6 @@ message dobootblks message set_kernel_1 {Kernel (GENERIC)} + +message md_pdclimit +{The root partition start or extends beyond the PDC limit of 2GB.} Index: distrib/utils/sysinst/arch/hp700/msg.md.fr =================================================================== RCS file: /cvsroot/src/distrib/utils/sysinst/arch/hp700/msg.md.fr,v retrieving revision 1.6 diff -u -p -u -r1.6 msg.md.fr --- distrib/utils/sysinst/arch/hp700/msg.md.fr 4 Apr 2011 08:30:29 -0000 1.6 +++ distrib/utils/sysinst/arch/hp700/msg.md.fr 9 Jan 2012 07:34:51 -0000 @@ -51,3 +51,5 @@ message dobootblks message set_kernel_1 {Kernel (GENERIC)} +message md_pdclimit +{The root partition start or extends beyond the PDC limit of 2GB.} Index: distrib/utils/sysinst/arch/hp700/msg.md.pl =================================================================== RCS file: /cvsroot/src/distrib/utils/sysinst/arch/hp700/msg.md.pl,v retrieving revision 1.5 diff -u -p -u -r1.5 msg.md.pl --- distrib/utils/sysinst/arch/hp700/msg.md.pl 4 Apr 2011 08:30:29 -0000 1.5 +++ distrib/utils/sysinst/arch/hp700/msg.md.pl 9 Jan 2012 07:34:53 -0000 @@ -53,3 +53,5 @@ message dobootblks message set_kernel_1 {Kernel (GENERIC)} +message md_pdclimit +{The root partition start or extends beyond the PDC limit of 2GB.}