- Create an independent "boot" partition for bootloader rather than

marking a raw partition as "boot".
- Adjust default partition size for /usr so that extracted files
  won't flood on the default full installation.
This commit is contained in:
tsutsui 2006-03-21 06:18:29 +00:00
parent c04fe5f13c
commit f5040e78bb
2 changed files with 25 additions and 9 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: md.c,v 1.22 2006/03/21 02:05:33 tsutsui Exp $ */ /* $NetBSD: md.c,v 1.23 2006/03/21 06:18:29 tsutsui Exp $ */
/* /*
* Copyright 1997 Piermont Information Systems Inc. * Copyright 1997 Piermont Information Systems Inc.
@ -99,8 +99,8 @@ md_get_info(void)
exit(1); exit(1);
} }
/* preserve first cylinder for system. */ /* We will preserve the first cylinder as PART_BOOT for bootloader. */
ptstart = disklabel.d_secpercyl; ptstart = 0;
close(fd); close(fd);
@ -184,7 +184,7 @@ md_check_partitions(void)
start = 0; start = 0;
last = PART_A - 1; last = PART_A - 1;
for (part = PART_A; part < MAXPARTITIONS; part++) { for (part = PART_A; part < MAXPARTITIONS; part++) {
if (part == PART_C) if (part == PART_RAW || part == PART_BOOT)
continue; continue;
if (last >= PART_A && bsdlabel[part].pi_size > 0) { if (last >= PART_A && bsdlabel[part].pi_size > 0) {
msg_display(MSG_emptypart, part+'a'); msg_display(MSG_emptypart, part+'a');
@ -248,3 +248,15 @@ void
md_init(void) md_init(void)
{ {
} }
int
hp300_boot_size(void)
{
int i;
i = dlcylsize;
if (i >= 1024) /* XXX: bsddisklabel.c has a hack. */
i = dlcylsize * sectorsize * 2;
return i;
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: md.h,v 1.13 2006/02/26 10:25:53 dsl Exp $ */ /* $NetBSD: md.h,v 1.14 2006/03/21 06:18:29 tsutsui Exp $ */
/* /*
* Copyright 1997 Piermont Information Systems Inc. * Copyright 1997 Piermont Information Systems Inc.
@ -55,14 +55,16 @@
#define PART_ROOT PART_A #define PART_ROOT PART_A
#define PART_SWAP PART_B #define PART_SWAP PART_B
#define PART_RAW PART_C #define PART_RAW PART_C
#define PART_USR PART_D /* Can be after PART_FIRST_FREE */ #define PART_BOOT PART_D
#define PART_FIRST_FREE PART_E #define BOOT_SIZE hp300_boot_size()
#define PART_USR PART_E /* Can be after PART_FIRST_FREE */
#define PART_FIRST_FREE PART_F
#define DEFSWAPRAM 32 /* Assume at least this RAM for swap calc */ #define DEFSWAPRAM 32 /* Assume at least this RAM for swap calc */
#define DEFROOTSIZE 20 /* Default root size */ #define DEFROOTSIZE 20 /* Default root size */
#define DEFVARSIZE 32 /* Default /var size, if created */ #define DEFVARSIZE 32 /* Default /var size, if created */
#define DEFUSRSIZE 70 /* Default /usr size, if /home */ #define DEFUSRSIZE 240 /* Default /usr size, if created */
#define XNEEDMB 35 /* Extra megs for full X installation */ #define XNEEDMB 120 /* Extra megs for full X installation */
/* /*
* Default filesets to fetch and install during installation * Default filesets to fetch and install during installation
@ -93,3 +95,5 @@
* On hp300, do what the miniroot install scripts did. * On hp300, do what the miniroot install scripts did.
*/ */
#define DISKLABEL_CMD "disklabel -w -r" #define DISKLABEL_CMD "disklabel -w -r"
int hp300_boot_size(void);