Module Name:    src
Committed By:   ad
Date:           Sat Apr  4 11:24:24 UTC 2009

Modified Files:
        src/distrib/utils/sysinst: bsddisklabel.c defs.h util.c

Log Message:
- Improve on previous.
- If no /usr and the disk still has free space, give it to /


To generate a diff of this commit:
cvs rdiff -u -r1.47 -r1.48 src/distrib/utils/sysinst/bsddisklabel.c
cvs rdiff -u -r1.139 -r1.140 src/distrib/utils/sysinst/defs.h
cvs rdiff -u -r1.156 -r1.157 src/distrib/utils/sysinst/util.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/utils/sysinst/bsddisklabel.c
diff -u src/distrib/utils/sysinst/bsddisklabel.c:1.47 src/distrib/utils/sysinst/bsddisklabel.c:1.48
--- src/distrib/utils/sysinst/bsddisklabel.c:1.47	Sat Apr  4 11:04:28 2009
+++ src/distrib/utils/sysinst/bsddisklabel.c	Sat Apr  4 11:24:24 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: bsddisklabel.c,v 1.47 2009/04/04 11:04:28 ad Exp $	*/
+/*	$NetBSD: bsddisklabel.c,v 1.48 2009/04/04 11:24:24 ad Exp $	*/
 
 /*
  * Copyright 1997 Piermont Information Systems Inc.
@@ -380,8 +380,9 @@
 		} else {
 #if DEFSWAPSIZE == -1
 			/* Dynamic swap size. */
-			pi.ptn_sizes[PI_SWAP].dflt_size = (get_mem_size() >> 20);
-			pi.ptn_sizes[PI_SWAP].size = pi.ptn_sizes[PI_SWAP].dflt_size;
+			pi.ptn_sizes[PI_SWAP].dflt_size = get_ramsize();
+			pi.ptn_sizes[PI_SWAP].size =
+			    pi.ptn_sizes[PI_SWAP].dflt_size;
 #endif
 		}
 			
@@ -443,6 +444,12 @@
 			pi.free_space -= i;
 		}
 
+		/* If no /usr and still free space, give to / */
+		if (pi.ptn_sizes[PI_USR].size == 0 && pi.free_space != 0) {
+			pi.ptn_sizes[PI_ROOT].size += pi.free_space;
+			pi.free_space = 0;
+		}
+
 		/* Ensure all of / is readable by the system boot code */
 		i = pi.ptn_sizes[PI_ROOT].limit;
 		if (i != 0 && (i -= pi.ptn_sizes[PI_ROOT].size) < 0) {

Index: src/distrib/utils/sysinst/defs.h
diff -u src/distrib/utils/sysinst/defs.h:1.139 src/distrib/utils/sysinst/defs.h:1.140
--- src/distrib/utils/sysinst/defs.h:1.139	Sat Apr  4 11:04:28 2009
+++ src/distrib/utils/sysinst/defs.h	Sat Apr  4 11:24:24 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: defs.h,v 1.139 2009/04/04 11:04:28 ad Exp $	*/
+/*	$NetBSD: defs.h,v 1.140 2009/04/04 11:24:24 ad Exp $	*/
 
 /*
  * Copyright 1997 Piermont Information Systems Inc.
@@ -420,7 +420,6 @@
 void	init_set_status(int);
 void	customise_sets(void);
 void	umount_mnt2(void);
-uint64_t get_mem_size(void);
 
 /* from target.c */
 const	char *concat_paths(const char *, const char *);

Index: src/distrib/utils/sysinst/util.c
diff -u src/distrib/utils/sysinst/util.c:1.156 src/distrib/utils/sysinst/util.c:1.157
--- src/distrib/utils/sysinst/util.c:1.156	Sat Apr  4 11:04:28 2009
+++ src/distrib/utils/sysinst/util.c	Sat Apr  4 11:24:24 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: util.c,v 1.156 2009/04/04 11:04:28 ad Exp $	*/
+/*	$NetBSD: util.c,v 1.157 2009/04/04 11:24:24 ad Exp $	*/
 
 /*
  * Copyright 1997 Piermont Information Systems Inc.
@@ -1318,16 +1318,3 @@
 		access("/sbin/mount_lfs", X_OK) == 0 &&
 		access("/sbin/newfs_lfs", X_OK) == 0);
 }
-
-uint64_t
-get_mem_size(void)
-{
-	int mib[2] = { CTL_HW, HW_PHYSMEM64 };
-	uint64_t v;
-	size_t sz;
-
-	v = 128*1024*1024;
-	sz = sizeof(v);
-	(void)sysctl(mib, 2, &v, &sz, NULL, 0);
-	return v;
-}

Reply via email to