History

Merge tag 'for-6.1/block-2022-10-03' of git://git.kernel.dk/linux

Pull block updates from Jens Axboe: - NVMe pull requests via Christoph: - handle number of queue changes in the TCP and RDMA drivers (Daniel Wagner) - allow changing the number of queues in nvmet (Daniel Wagner) - also consider host_iface when checking ip options (Daniel Wagner) - don't map pages which can't come from HIGHMEM (Fabio M. De Francesco) - avoid unnecessary flush bios in nvmet (Guixin Liu) - shrink and better pack the nvme_iod structure (Keith Busch) - add comment for unaligned "fake" nqn (Linjun Bao) - print actual source IP address through sysfs "address" attr (Martin Belanger) - various cleanups (Jackie Liu, Wolfram Sang, Genjian Zhang) - handle effects after freeing the request (Keith Busch) - copy firmware_rev on each init (Keith Busch) - restrict management ioctls to admin (Keith Busch) - ensure subsystem reset is single threaded (Keith Busch) - report the actual number of tagset maps in nvme-pci (Keith Busch) - small fabrics authentication fixups (Christoph Hellwig) - add common code for tagset allocation and freeing (Christoph Hellwig) - stop using the request_queue in nvmet (Christoph Hellwig) - set min_align_mask before calculating max_hw_sectors (Rishabh Bhatnagar) - send a rediscover uevent when a persistent discovery controller reconnects (Sagi Grimberg) - misc nvmet-tcp fixes (Varun Prakash, zhenwei pi) - MD pull request via Song: - Various raid5 fix and clean up, by Logan Gunthorpe and David Sloan. - Raid10 performance optimization, by Yu Kuai. - sbitmap wakeup hang fixes (Hugh, Keith, Jan, Yu) - IO scheduler switching quisce fix (Keith) - s390/dasd block driver updates (Stefan) - support for recovery for the ublk driver (ZiyangZhang) - rnbd drivers fixes and updates (Guoqing, Santosh, ye, Christoph) - blk-mq and null_blk map fixes (Bart) - various bcache fixes (Coly, Jilin, Jules) - nbd signal hang fix (Shigeru) - block writeback throttling fix (Yu) - optimize the passthrough mapping handling (me) - prepare block cgroups to being gendisk based (Christoph) - get rid of an old PSI hack in the block layer, moving it to the callers instead where it belongs (Christoph) - blk-throttle fixes and cleanups (Yu) - misc fixes and cleanups (Liu Shixin, Liu Song, Miaohe, Pankaj, Ping-Xiang, Wolfram, Saurabh, Li Jinlin, Li Lei, Lin, Li zeming, Miaohe, Bart, Coly, Gaosheng * tag 'for-6.1/block-2022-10-03' of git://git.kernel.dk/linux: (162 commits) sbitmap: fix lockup while swapping block: add rationale for not using blk_mq_plug() when applicable block: adapt blk_mq_plug() to not plug for writes that require a zone lock s390/dasd: use blk_mq_alloc_disk blk-cgroup: don't update the blkg lookup hint in blkg_conf_prep nvmet: don't look at the request_queue in nvmet_bdev_set_limits nvmet: don't look at the request_queue in nvmet_bdev_zone_mgmt_emulate_all blk-mq: use quiesced elevator switch when reinitializing queues block: replace blk_queue_nowait with bdev_nowait nvme: remove nvme_ctrl_init_connect_q nvme-loop: use the tagset alloc/free helpers nvme-loop: store the generic nvme_ctrl in set->driver_data nvme-loop: initialize sqsize later nvme-fc: use the tagset alloc/free helpers nvme-fc: store the generic nvme_ctrl in set->driver_data nvme-fc: keep ctrl->sqsize in sync with opts->queue_size nvme-rdma: use the tagset alloc/free helpers nvme-rdma: store the generic nvme_ctrl in set->driver_data nvme-tcp: use the tagset alloc/free helpers nvme-tcp: store the generic nvme_ctrl in set->driver_data ...

Linus Torvalds committed 4 years ago

Commit 51338982 parents 0a78a37 30514bd135 files · +3204 −1644Browse files

Showing the changes to include/uapi/linux (2 of 135 files). Show all

Unified · Split

2 files
  1. include/uapi/linux/sed-opal.h +13 −0
  2. include/uapi/linux/ublk_cmd.h +7 −1
include/uapi/linux/sed-opal.h+13−0
@@ -132,6 +132,18 @@ struct opal_read_write_table { · 131 unmodified lines
132132 __u64 priv;
133133 };
134134
135+#define OPAL_FL_SUPPORTED 0x00000001
136+#define OPAL_FL_LOCKING_SUPPORTED 0x00000002
137+#define OPAL_FL_LOCKING_ENABLED 0x00000004
138+#define OPAL_FL_LOCKED 0x00000008
139+#define OPAL_FL_MBR_ENABLED 0x00000010
140+#define OPAL_FL_MBR_DONE 0x00000020
141+
142+struct opal_status {
143+ __u32 flags;
144+ __u32 reserved;
145+};
146+
135147 #define IOC_OPAL_SAVE _IOW('p', 220, struct opal_lock_unlock)
136148 #define IOC_OPAL_LOCK_UNLOCK _IOW('p', 221, struct opal_lock_unlock)
137149 #define IOC_OPAL_TAKE_OWNERSHIP _IOW('p', 222, struct opal_key)
@@ -148,5 +160,6 @@ struct opal_read_write_table { · 10 unmodified lines
148160 #define IOC_OPAL_MBR_DONE _IOW('p', 233, struct opal_mbr_done)
149161 #define IOC_OPAL_WRITE_SHADOW_MBR _IOW('p', 234, struct opal_shadow_mbr)
150162 #define IOC_OPAL_GENERIC_TABLE_RW _IOW('p', 235, struct opal_read_write_table)
163+#define IOC_OPAL_GET_STATUS _IOR('p', 236, struct opal_status)
151164
152165 #endif /* _UAPI_SED_OPAL_H */
include/uapi/linux/ublk_cmd.h+7−1
@@ -17,7 +17,8 @@ · 16 unmodified lines
1717 #define UBLK_CMD_STOP_DEV 0x07
1818 #define UBLK_CMD_SET_PARAMS 0x08
1919 #define UBLK_CMD_GET_PARAMS 0x09
20−
20+#define UBLK_CMD_START_USER_RECOVERY 0x10
21+#define UBLK_CMD_END_USER_RECOVERY 0x11
2122 /*
2223 * IO commands, issued by ublk server, and handled by ublk driver.
2324 *
@@ -74,9 +75,14 @@ · 50 unmodified lines
7475 */
7576 #define UBLK_F_NEED_GET_DATA (1UL << 2)
7677
78+#define UBLK_F_USER_RECOVERY (1UL << 3)
79+
80+#define UBLK_F_USER_RECOVERY_REISSUE (1UL << 4)
81+
7782 /* device state */
7883 #define UBLK_S_DEV_DEAD 0
7984 #define UBLK_S_DEV_LIVE 1
85+#define UBLK_S_DEV_QUIESCED 2
8086
8187 /* shipped via sqe->cmd of io_uring command */
8288 struct ublksrv_ctrl_cmd {