Print this page
NEX-18214 unplug of multipathed disks doesn't produce EC_DEV_REMOVE/ESC_DISK event
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
Revert "NEX-18214 unplug of multipathed disks doesn't produce EC_DEV_REMOVE/ESC_DISK event"
This reverts commit b0f7e47b60b115c1bb6c07dc5aa150cc519790e7.
NEX-18214 unplug of multipathed disks doesn't produce EC_DEV_REMOVE/ESC_DISK event
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
NEX-17446 cleanup of hot unplugged disks fails intermittently
Reviewed by: Dan Fields <dan.fields@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
NEX-17521 Unable to install Nexentastor on Lenovo SR650 platform
8702 PCI addresses with physaddr > 0xffffffff can't be mapped in
8703 pci/npe DDI_CTLOPS_REGSIZE should be 64-bit aware
8704 want OFF_MAX in the kernel
8705 unsupported 64-bit prefetch memory on pci-pci bridge
Contributed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Albert Lee <trisk@forkgnu.org>
9550 Create hub symlinks for xhci devices
Contributed by: Alexander Pyhalov <apyhalov@gmail.com>
Reviewed by: Andy Stormont <astormont@racktopsystems.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
@@ -16,15 +16,17 @@
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
+
/*
* Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright 2012 Garrett D'Amore <garrett@damore.org>. All rights reserved.
* Copyright 2016 Joyent, Inc.
* Copyright (c) 2016 by Delphix. All rights reserved.
+ * Copyright 2018 Nexenta Systems, Inc.
*/
#ifndef _SYS_DDI_IMPLDEFS_H
#define _SYS_DDI_IMPLDEFS_H
@@ -283,14 +285,10 @@
/* Owned by hotplug framework */
struct ddi_hp_cn_handle *devi_hp_hdlp; /* hotplug handle list */
struct in_node *devi_in_node; /* pointer to devinfo node's in_node_t */
-
- /* detach event data */
- char *devi_ev_path;
- int devi_ev_instance;
};
#define DEVI(dev_info_type) ((struct dev_info *)(dev_info_type))
/*
@@ -612,18 +610,23 @@
#define DEVI_RETIRING 0x00000200 /* being evaluated for retire */
#define DEVI_R_CONSTRAINT 0x00000400 /* constraints have been applied */
#define DEVI_R_BLOCKED 0x00000800 /* constraints block retire */
#define DEVI_CT_NOP 0x00001000 /* NOP contract event occurred */
#define DEVI_PCI_DEVICE 0x00002000 /* dip is PCI */
+#define DEVI_GONE 0x00004000 /* device is physically removed */
#define DEVI_BUSY_CHANGING(dip) (DEVI(dip)->devi_flags & DEVI_BUSY)
#define DEVI_BUSY_OWNED(dip) (DEVI_BUSY_CHANGING(dip) && \
((DEVI(dip))->devi_busy_thread == curthread))
#define DEVI_IS_PCI(dip) (DEVI(dip)->devi_flags & DEVI_PCI_DEVICE)
#define DEVI_SET_PCI(dip) (DEVI(dip)->devi_flags |= (DEVI_PCI_DEVICE))
+#define DEVI_IS_GONE(dip) (DEVI(dip)->devi_flags & DEVI_GONE)
+#define DEVI_SET_GONE(dip) (DEVI(dip)->devi_flags |= DEVI_GONE)
+#define DEVI_UNSET_GONE(dip) (DEVI(dip)->devi_flags &= ~DEVI_GONE)
+
char *i_ddi_devi_class(dev_info_t *);
int i_ddi_set_devi_class(dev_info_t *, char *, int);
/*
* This structure represents one piece of bus space occupied by a given