diff options
Diffstat (limited to 'usr/src/uts/intel/zfs/spa_boot.c')
-rw-r--r-- | usr/src/uts/intel/zfs/spa_boot.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/usr/src/uts/intel/zfs/spa_boot.c b/usr/src/uts/intel/zfs/spa_boot.c index a6cdb81890..adbcffaef0 100644 --- a/usr/src/uts/intel/zfs/spa_boot.c +++ b/usr/src/uts/intel/zfs/spa_boot.c @@ -24,9 +24,16 @@ * Use is subject to license terms. */ +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + #include <sys/zio.h> #include <sys/spa.h> #include <sys/sunddi.h> +#include <sys/x86_archext.h> + +extern int zfs_deadman_enabled; char * spa_get_bootprop(char *propname) @@ -44,3 +51,21 @@ spa_free_bootprop(char *value) { ddi_prop_free(value); } + +void +spa_arch_init(void) +{ + /* + * Configure the default settings for the zfs deadman unless + * overriden by /etc/system. + */ + if (zfs_deadman_enabled == -1) { + /* + * Disable the zfs deadman logic on VMware deployments. + */ + if (get_hwenv() == HW_VMWARE) + zfs_deadman_enabled = 0; + else + zfs_deadman_enabled = 1; + } +} |