Print this page
9250 remove xpv related code from bootadm
*** 287,298 ****
"delete_all_entries", OPT_ABSENT, delete_all_entries, 0, /* PVT */
"update_entry", OPT_REQ, update_entry, 0, /* menu */
"update_temp", OPT_OPTIONAL, update_temp, 0, /* reboot */
"upgrade", OPT_ABSENT, upgrade_menu, 0, /* menu */
"list_setting", OPT_OPTIONAL, list_setting, 1, /* menu */
- "disable_hypervisor", OPT_ABSENT, cvt_to_metal, 0, /* menu */
- "enable_hypervisor", OPT_ABSENT, cvt_to_hyper, 0, /* menu */
NULL, 0, NULL, 0 /* must be last */
};
/* Archive related sub commands */
static subcmd_defn_t arch_subcmds[] = {
--- 287,296 ----
*** 550,560 ****
usage();
bam_exit(1);
}
if (ret != BAM_SUCCESS)
! bam_exit((ret == BAM_NOCHANGE) ? 2 : 1);
bam_unlock();
return (0);
}
--- 548,558 ----
usage();
bam_exit(1);
}
if (ret != BAM_SUCCESS)
! bam_exit(1);
bam_unlock();
return (0);
}
*** 622,633 ****
* -i install_bootloader -- install-bootloader
* -m update_entry -- update-menu
* -m list_entry -- list-menu
* -m update_temp -- (reboot -- [boot-args])
* -m delete_all_entries -- (called from install)
- * -m enable_hypervisor [args] -- cvt_to_hyper
- * -m disable_hypervisor -- cvt_to_metal
* -m list_setting [entry] [value] -- list_setting
*
* A set of private flags is there too:
* -F -- purge the cache directories and rebuild them
* -e -- use the (faster) archive update approach (used by
--- 620,629 ----
*** 760,770 ****
"one of sun4u, sun4v or i86pc\n"),
bam_platform);
}
break;
case 'X':
! bam_is_hv = BAM_HV_PRESENT;
break;
case 'Z':
bam_zfs = 1;
break;
case 'e':
--- 756,766 ----
"one of sun4u, sun4v or i86pc\n"),
bam_platform);
}
break;
case 'X':
! /* obsolete */
break;
case 'Z':
bam_zfs = 1;
break;
case 'e':
*** 866,880 ****
usage();
return (BAM_ERROR);
}
if (bam_argc == 1)
sync_menu = 0;
! } else if (((strcmp(subcmd, "enable_hypervisor") != 0) &&
! (strcmp(subcmd, "list_setting") != 0)) && (bam_argc || bam_argv)) {
/*
! * Of the remaining subcommands, only "enable_hypervisor" and
! * "list_setting" take trailing arguments.
*/
bam_error(_("invalid trailing arguments\n"));
usage();
return (BAM_ERROR);
}
--- 862,876 ----
usage();
return (BAM_ERROR);
}
if (bam_argc == 1)
sync_menu = 0;
! } else if (strcmp(subcmd, "list_setting") != 0 &&
! (bam_argc || bam_argv)) {
/*
! * Of the remaining subcommands, only "list_setting" takes
! * trailing arguments.
*/
bam_error(_("invalid trailing arguments\n"));
usage();
return (BAM_ERROR);
}
*** 1429,1440 ****
* final step now.
*/
if (strcmp(subcmd, "set_option") == 0) {
assert(largc == 1 && largv[0] && largv[1] == NULL);
opt = largv[0];
! } else if ((strcmp(subcmd, "enable_hypervisor") != 0) &&
! (strcmp(subcmd, "list_setting") != 0)) {
assert(largc == 0 && largv == NULL);
}
ret = get_boot_cap(bam_root);
if (ret != BAM_SUCCESS) {
--- 1425,1435 ----
* final step now.
*/
if (strcmp(subcmd, "set_option") == 0) {
assert(largc == 1 && largv[0] && largv[1] == NULL);
opt = largv[0];
! } else if (strcmp(subcmd, "list_setting") != 0) {
assert(largc == 0 && largv == NULL);
}
ret = get_boot_cap(bam_root);
if (ret != BAM_SUCCESS) {
*** 1453,1516 ****
} else if (strcmp(subcmd, "list_entry") == 0) {
ret = f(menu, menu_path, opt);
} else if (strcmp(subcmd, "list_setting") == 0) {
ret = f(menu, ((largc > 0) ? largv[0] : ""),
((largc > 1) ? largv[1] : ""));
- } else if (strcmp(subcmd, "disable_hypervisor") == 0) {
- if (is_sparc()) {
- bam_error(_("%s operation unsupported on SPARC "
- "machines\n"), subcmd);
- ret = BAM_ERROR;
- } else {
- ret = f(menu, bam_root, NULL);
- }
- } else if (strcmp(subcmd, "enable_hypervisor") == 0) {
- if (is_sparc()) {
- bam_error(_("%s operation unsupported on SPARC "
- "machines\n"), subcmd);
- ret = BAM_ERROR;
- } else {
- char *extra_args = NULL;
-
- /*
- * Compress all arguments passed in the largv[] array
- * into one string that can then be appended to the
- * end of the kernel$ string the routine to enable the
- * hypervisor will build.
- *
- * This allows the caller to supply arbitrary unparsed
- * arguments, such as dom0 memory settings or APIC
- * options.
- *
- * This concatenation will be done without ANY syntax
- * checking whatsoever, so it's the responsibility of
- * the caller to make sure the arguments are valid and
- * do not duplicate arguments the conversion routines
- * may create.
- */
- if (largc > 0) {
- int extra_len, i;
-
- for (extra_len = 0, i = 0; i < largc; i++)
- extra_len += strlen(largv[i]);
-
- /*
- * Allocate space for argument strings,
- * intervening spaces and terminating NULL.
- */
- extra_args = alloca(extra_len + largc);
-
- (void) strcpy(extra_args, largv[0]);
-
- for (i = 1; i < largc; i++) {
- (void) strcat(extra_args, " ");
- (void) strcat(extra_args, largv[i]);
- }
- }
-
- ret = f(menu, bam_root, extra_args);
- }
} else
ret = f(menu, NULL, opt);
if (ret == BAM_WRITE) {
BAM_DPRINTF(("%s: writing menu to clean-menu-root: <%s>\n",
--- 1448,1457 ----
*** 4627,4639 ****
} else if (strncmp(arg, MULTI_BOOT_FAILSAFE,
sizeof (MULTI_BOOT_FAILSAFE) - 1) == 0) {
BAM_DPRINTF(("%s: setting MULTIBOOT|MULTIBOOT_FAILSAFE "
"flag: %s\n", fcn, arg));
entry->flags |= BAM_ENTRY_MULTIBOOT | BAM_ENTRY_FAILSAFE;
- } else if (strstr(arg, XEN_KERNEL_SUBSTR)) {
- BAM_DPRINTF(("%s: setting XEN HV flag: %s\n", fcn, arg));
- entry->flags |= BAM_ENTRY_HV;
} else if (!(entry->flags & (BAM_ENTRY_BOOTADM|BAM_ENTRY_LU))) {
BAM_DPRINTF(("%s: is HAND kernel flag: %s\n", fcn, arg));
return (BAM_ERROR);
} else if (strncmp(arg, KERNEL_PREFIX, strlen(KERNEL_PREFIX)) == 0 &&
strstr(arg, UNIX_SPACE)) {
--- 4568,4577 ----
*** 4670,4682 ****
strcmp(arg, DIRECT_BOOT_ARCHIVE_32) == 0 ||
strcmp(arg, DIRECT_BOOT_ARCHIVE_64) == 0 ||
strcmp(arg, MULTIBOOT_ARCHIVE) == 0 ||
strcmp(arg, FAILSAFE_ARCHIVE) == 0 ||
strcmp(arg, FAILSAFE_ARCHIVE_32) == 0 ||
! strcmp(arg, FAILSAFE_ARCHIVE_64) == 0 ||
! strcmp(arg, XEN_KERNEL_MODULE_LINE) == 0 ||
! strcmp(arg, XEN_KERNEL_MODULE_LINE_ZFS) == 0) {
BAM_DPRINTF(("%s: bootadm or LU module cmd: %s\n", fcn, arg));
return (BAM_SUCCESS);
} else if (!(entry->flags & BAM_ENTRY_BOOTADM) &&
!(entry->flags & BAM_ENTRY_LU)) {
/* don't emit warning for hand entries */
--- 4608,4618 ----
strcmp(arg, DIRECT_BOOT_ARCHIVE_32) == 0 ||
strcmp(arg, DIRECT_BOOT_ARCHIVE_64) == 0 ||
strcmp(arg, MULTIBOOT_ARCHIVE) == 0 ||
strcmp(arg, FAILSAFE_ARCHIVE) == 0 ||
strcmp(arg, FAILSAFE_ARCHIVE_32) == 0 ||
! strcmp(arg, FAILSAFE_ARCHIVE_64) == 0) {
BAM_DPRINTF(("%s: bootadm or LU module cmd: %s\n", fcn, arg));
return (BAM_SUCCESS);
} else if (!(entry->flags & BAM_ENTRY_BOOTADM) &&
!(entry->flags & BAM_ENTRY_LU)) {
/* don't emit warning for hand entries */
*** 8251,8267 ****
kernel, lp->arg));
/*
* Check for matching module entry (failsafe or normal).
* If it fails to match, we go around the loop again.
- * For xpv entries, there are two module lines, so we
- * do the check twice.
*/
lp = lp->next; /* advance to module line */
! if (check_cmd(lp->cmd, MODULE_CMD, lp->arg, module) ||
! (((lp = lp->next) != NULL) &&
! check_cmd(lp->cmd, MODULE_CMD, lp->arg, module))) {
/* match found */
BAM_DPRINTF(("%s: module match: %s, %s\n", fcn,
module, lp->arg));
break;
}
--- 8187,8199 ----
kernel, lp->arg));
/*
* Check for matching module entry (failsafe or normal).
* If it fails to match, we go around the loop again.
*/
lp = lp->next; /* advance to module line */
! if (check_cmd(lp->cmd, MODULE_CMD, lp->arg, module)) {
/* match found */
BAM_DPRINTF(("%s: module match: %s, %s\n", fcn,
module, lp->arg));
break;
}
*** 8586,8609 ****
(bam_zfs ? DIRECT_BOOT_KERNEL_ZFS : DIRECT_BOOT_KERNEL),
NULL, DIRECT_BOOT_ARCHIVE,
root_optional(osroot, menu_root));
BAM_DPRINTF(("%s: updated boot entry bam_zfs=%d, "
"grubsign = %s\n", fcn, bam_zfs, grubsign));
- if ((entry != BAM_ERROR) && (bam_is_hv == BAM_HV_PRESENT)) {
- (void) update_boot_entry(mp, NEW_HV_ENTRY, grubsign,
- grubroot, XEN_MENU, bam_zfs ?
- XEN_KERNEL_MODULE_LINE_ZFS : XEN_KERNEL_MODULE_LINE,
- DIRECT_BOOT_ARCHIVE,
- root_optional(osroot, menu_root));
- BAM_DPRINTF(("%s: updated HV entry bam_zfs=%d, "
- "grubsign = %s\n", fcn, bam_zfs, grubsign));
- }
} else {
entry = update_boot_entry(mp, title, grubsign, grubroot,
MULTI_BOOT, NULL, MULTIBOOT_ARCHIVE,
root_optional(osroot, menu_root));
-
BAM_DPRINTF(("%s: updated MULTIBOOT entry grubsign = %s\n",
fcn, grubsign));
}
/*
--- 8518,8531 ----