summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsdinstall/partedit/partedit_sparc64.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/bsdinstall/partedit/partedit_sparc64.c')
-rw-r--r--usr.sbin/bsdinstall/partedit/partedit_sparc64.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/usr.sbin/bsdinstall/partedit/partedit_sparc64.c b/usr.sbin/bsdinstall/partedit/partedit_sparc64.c
index 8232c55..c420f6a 100644
--- a/usr.sbin/bsdinstall/partedit/partedit_sparc64.c
+++ b/usr.sbin/bsdinstall/partedit/partedit_sparc64.c
@@ -42,6 +42,15 @@ is_scheme_bootable(const char *part_type) {
return (0);
}
+int
+is_fs_bootable(const char *part_type, const char *fs)
+{
+ if (strcmp(fs, "freebsd-ufs") == 0 || strcmp(fs, "freebsd-zfs") == 0)
+ return (1);
+ return (0);
+}
+
+
size_t
bootpart_size(const char *part_type) {
/* No standalone boot partition */
@@ -58,11 +67,16 @@ const char *
bootcode_path(const char *part_type) {
return (NULL);
}
-
+
const char *
-partcode_path(const char *part_type) {
- if (strcmp(part_type, "VTOC8") == 0)
- return ("/boot/boot1");
+partcode_path(const char *part_type, const char *fs_type) {
+ if (strcmp(part_type, "VTOC8") == 0) {
+ if (strcmp(fs_type, "ufs") == 0) {
+ return ("/boot/boot1");
+ } else if (strcmp(fs_type, "zfs") == 0) {
+ return ("/boot/zfsboot");
+ }
+ }
return (NULL);
}
OpenPOWER on IntegriCloud