diff options
| author | achimm <none@none> | 2006-02-25 00:24:50 -0800 |
|---|---|---|
| committer | achimm <none@none> | 2006-02-25 00:24:50 -0800 |
| commit | 9d40a5713f30baf5a583c387b5917a1d55c63c0d (patch) | |
| tree | 868d75fac373f1310d124765eecbcf654035b4e7 /usr/src | |
| parent | 21011ea11dda4d5cbe422d3612f19c3f3d2b5f2e (diff) | |
| download | illumos-gate-9d40a5713f30baf5a583c387b5917a1d55c63c0d.tar.gz | |
6341629 metaset -s diskset -t dumps core with devid-enabled DID driver on Sun Cluster node
Diffstat (limited to 'usr/src')
| -rw-r--r-- | usr/src/lib/lvm/libmeta/common/meta_set_prv.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/usr/src/lib/lvm/libmeta/common/meta_set_prv.c b/usr/src/lib/lvm/libmeta/common/meta_set_prv.c index d5705f7c95..9fd7aaae9c 100644 --- a/usr/src/lib/lvm/libmeta/common/meta_set_prv.c +++ b/usr/src/lib/lvm/libmeta/common/meta_set_prv.c @@ -2,9 +2,8 @@ * CDDL HEADER START * * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. @@ -20,7 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2005 Sun Microsystems, Inc. All rights reserved. + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -36,6 +35,7 @@ #include <sys/cladm.h> #include <devid.h> #include <sys/lvm/md_convert.h> +#include <sdssc.h> /* * Exported Entry Points @@ -645,6 +645,7 @@ setup_db_bydd(mdsetname_t *sp, md_drive_desc *dd, int force, md_error_t *ep) char *minor_name = NULL; size_t sz; char *devid_str = NULL; + sdssc_version_t version; if ((sd = metaget_setdesc(sp, ep)) == NULL) return (-1); @@ -730,7 +731,14 @@ setup_db_bydd(mdsetname_t *sp, md_drive_desc *dd, int force, md_error_t *ep) } } - if ((dnp->devid == NULL) || MD_MNSET_DESC(sd)) { + /* + * If the device does not have a devid or is a multinode + * diskset or we are in a SunCluster 3.x enviroment then + * do not use devids. + */ + if ((dnp->devid == NULL) || MD_MNSET_DESC(sd) || + ((sdssc_version(&version) == SDSSC_OKAY) && + (version.major >= 3))) { use_devid = 0; } |
