summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys
diff options
context:
space:
mode:
authorJerry Jelinek <jerry.jelinek@joyent.com>2020-07-09 11:42:13 +0000
committerJerry Jelinek <jerry.jelinek@joyent.com>2020-07-09 11:42:13 +0000
commit466fd238ca24f5d17cd0b74a70dfc36ab67a624b (patch)
tree6fadeb6f60d7720619c51da693dc4d571e0df7e3 /usr/src/uts/common/sys
parentb97f5b09ef2e4af27e3cc4addd8abe5fc7c4d817 (diff)
parent4a663bac9c5f9f82a5f633bc9639bbee3c2317ff (diff)
downloadillumos-joyent-466fd238ca24f5d17cd0b74a70dfc36ab67a624b.tar.gz
[illumos-gate merge]
commit 4a663bac9c5f9f82a5f633bc9639bbee3c2317ff 12904 Update nvme health logpage and temp thresholds commit 480497bc2ff96b447dc09403a6c187a1593ac1ec 12934 sockfs rights test should close unneeded descriptors commit fdb2a7e9480266dfaa0b5aaa0e1237456552f332 12881 sparcv9: add __multi3 commit 7fc77f3f3f63424c569601711f173702dbfd5c45 12927 loader: move zfs_boot_args to bootargs.h commit 1c0fc4547783fdfd7365d5d483e2750915523d44 6089 The comment for svc_callout_find() should be improved commit 66373fa702508a0a41753138f0b10f985c7e058d 12902 epoll should nominally support EPOLLEXCLUSIVE commit 33f84ecfada5880d94e9bfc5af7954d41e5664d5 12924 blkdev needs to be better at handling attach failures
Diffstat (limited to 'usr/src/uts/common/sys')
-rw-r--r--usr/src/uts/common/sys/epoll.h2
-rw-r--r--usr/src/uts/common/sys/nvme.h27
2 files changed, 27 insertions, 2 deletions
diff --git a/usr/src/uts/common/sys/epoll.h b/usr/src/uts/common/sys/epoll.h
index f2e4b90ab7..3b38d9f629 100644
--- a/usr/src/uts/common/sys/epoll.h
+++ b/usr/src/uts/common/sys/epoll.h
@@ -11,6 +11,7 @@
/*
* Copyright (c) 2014, Joyent, Inc. All rights reserved.
+ * Copyright 2020 Oxide Computer Company
*/
#ifndef _SYS_EPOLL_H
@@ -60,6 +61,7 @@ typedef struct epoll_event {
#define EPOLLHUP 0x0010
#define EPOLLRDHUP 0x2000
+#define EPOLLEXCLUSIVE (1UL << 28) /* sets exclusive wake-up mode */
#define EPOLLWAKEUP (1UL << 29) /* no meaning; silently ignored */
#define EPOLLONESHOT (1UL << 30) /* translated to POLLONESHOT */
#define EPOLLET (1UL << 31) /* translated to POLLET */
diff --git a/usr/src/uts/common/sys/nvme.h b/usr/src/uts/common/sys/nvme.h
index 9a0d926dc5..1d54b05f21 100644
--- a/usr/src/uts/common/sys/nvme.h
+++ b/usr/src/uts/common/sys/nvme.h
@@ -436,7 +436,23 @@ typedef struct {
nvme_uint128_t hl_unsafe_shutdn; /* Unsafe Shutdowns */
nvme_uint128_t hl_media_errors; /* Media Errors */
nvme_uint128_t hl_errors_logged; /* Number of errors logged */
- uint8_t hl_rsvd2[512 - 192];
+ /* Added in NVMe 1.2 */
+ uint32_t hl_warn_temp_time; /* Warning Composite Temp Time */
+ uint32_t hl_crit_temp_time; /* Critical Composite Temp Time */
+ uint16_t hl_temp_sensor_1; /* Temperature Sensor 1 */
+ uint16_t hl_temp_sensor_2; /* Temperature Sensor 2 */
+ uint16_t hl_temp_sensor_3; /* Temperature Sensor 3 */
+ uint16_t hl_temp_sensor_4; /* Temperature Sensor 4 */
+ uint16_t hl_temp_sensor_5; /* Temperature Sensor 5 */
+ uint16_t hl_temp_sensor_6; /* Temperature Sensor 6 */
+ uint16_t hl_temp_sensor_7; /* Temperature Sensor 7 */
+ uint16_t hl_temp_sensor_8; /* Temperature Sensor 8 */
+ /* Added in NVMe 1.3 */
+ uint32_t hl_tmtemp_1_tc; /* Thermal Mgmt Temp 1 Transition # */
+ uint32_t hl_tmtemp_2_tc; /* Thermal Mgmt Temp 1 Transition # */
+ uint32_t hl_tmtemp_1_time; /* Time in Thermal Mgmt Temp 1 */
+ uint32_t hl_tmtemp_2_time; /* Time in Thermal Mgmt Temp 2 */
+ uint8_t hl_rsvd2[512 - 232];
} nvme_health_log_t;
/*
@@ -551,11 +567,18 @@ typedef struct {
typedef union {
struct {
uint16_t tt_tmpth; /* Temperature Threshold */
- uint16_t tt_rsvd;
+ uint16_t tt_tmpsel:4; /* Temperature Select */
+ uint16_t tt_thsel:2; /* Temperature Type */
+ uint16_t tt_resv:10;
} b;
uint32_t r;
} nvme_temp_threshold_t;
+#define NVME_TEMP_THRESH_MAX_SENSOR 8
+#define NVME_TEMP_THRESH_ALL 0xf
+#define NVME_TEMP_THRESH_OVER 0x00
+#define NVME_TEMP_THRESH_UNDER 0x01
+
/* Error Recovery Feature */
typedef union {
struct {