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;
-}