diff options
Diffstat (limited to 'usr/src/lib')
-rw-r--r-- | usr/src/lib/libdiskmgt/common/findevs.c | 17 | ||||
-rw-r--r-- | usr/src/lib/libdiskmgt/common/libdiskmgt.h | 4 |
2 files changed, 19 insertions, 2 deletions
diff --git a/usr/src/lib/libdiskmgt/common/findevs.c b/usr/src/lib/libdiskmgt/common/findevs.c index 68384c1ca1..7b2d951e3a 100644 --- a/usr/src/lib/libdiskmgt/common/findevs.c +++ b/usr/src/lib/libdiskmgt/common/findevs.c @@ -23,6 +23,7 @@ * Use is subject to license terms. * Copyright (c) 2011 by Delphix. All rights reserved. * Copyright 2015 Nexenta Systems, Inc. All rights reserved. + * Copyright 2017 Joyent, Inc. */ #include <fcntl.h> @@ -64,6 +65,10 @@ #define WWN_PROP "node-wwn" static char *ctrltypes[] = { + DDI_NT_NVME_NEXUS, + DDI_NT_NVME_ATTACHMENT_POINT, + DDI_NT_SATA_NEXUS, + DDI_NT_SATA_ATTACHMENT_POINT, DDI_NT_SCSI_NEXUS, DDI_NT_SCSI_ATTACHMENT_POINT, DDI_NT_FC_ATTACHMENT_POINT, @@ -1120,9 +1125,19 @@ ctype(di_node_t node, di_minor_t minor) return (DM_CTYPE_USB); } + if (libdiskmgt_str_eq(type, DDI_NT_NVME_NEXUS) || + libdiskmgt_str_eq(type, DDI_NT_NVME_ATTACHMENT_POINT)) { + return (DM_CTYPE_NVME); + } + + if (libdiskmgt_str_eq(type, DDI_NT_SATA_NEXUS) || + libdiskmgt_str_eq(type, DDI_NT_SATA_ATTACHMENT_POINT)) { + return (DM_CTYPE_SATA); + } + if (libdiskmgt_str_eq(type, DDI_NT_SCSI_NEXUS) || libdiskmgt_str_eq(type, DDI_NT_SCSI_ATTACHMENT_POINT)) { - return (DM_CTYPE_SCSI); + return (DM_CTYPE_SCSI); } if (libdiskmgt_str_eq(type, DDI_NT_FC_ATTACHMENT_POINT)) { diff --git a/usr/src/lib/libdiskmgt/common/libdiskmgt.h b/usr/src/lib/libdiskmgt/common/libdiskmgt.h index 178052a6dc..f7fc7d1f6d 100644 --- a/usr/src/lib/libdiskmgt/common/libdiskmgt.h +++ b/usr/src/lib/libdiskmgt/common/libdiskmgt.h @@ -22,8 +22,8 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. - * Copyright (c) 2012, Joyent, Inc. All rights reserved. * Copyright 2016 Nexenta Systems, Inc. + * Copyright (c) 2017, Joyent, Inc. All rights reserved. */ #ifndef _LIBDISKMGT_H @@ -351,9 +351,11 @@ typedef enum { #define DM_PATH_STATE "path_state" #define DM_CTYPE_ATA "ata" +#define DM_CTYPE_SATA "sata" #define DM_CTYPE_SCSI "scsi" #define DM_CTYPE_FIBRE "fibre channel" #define DM_CTYPE_USB "usb" +#define DM_CTYPE_NVME "nvme" #define DM_CTYPE_UNKNOWN "unknown" /* media */ |