History

Merge tag 'for-6.15/block-20250322' of git://git.kernel.dk/linux

Pull block updates from Jens Axboe: - Fixes for integrity handling - NVMe pull request via Keith: - Secure concatenation for TCP transport (Hannes) - Multipath sysfs visibility (Nilay) - Various cleanups (Qasim, Baruch, Wang, Chen, Mike, Damien, Li) - Correct use of 64-bit BARs for pci-epf target (Niklas) - Socket fix for selinux when used in containers (Peijie) - MD pull request via Yu: - fix recovery can preempt resync (Li Nan) - fix md-bitmap IO limit (Su Yue) - fix raid10 discard with REQ_NOWAIT (Xiao Ni) - fix raid1 memory leak (Zheng Qixing) - fix mddev uaf (Yu Kuai) - fix raid1,raid10 IO flags (Yu Kuai) - some refactor and cleanup (Yu Kuai) - Series cleaning up and fixing bugs in the bad block handling code - Improve support for write failure simulation in null_blk - Various lock ordering fixes - Fixes for locking for debugfs attributes - Various ublk related fixes and improvements - Cleanups for blk-rq-qos wait handling - blk-throttle fixes - Fixes for loop dio and sync handling - Fixes and cleanups for the auto-PI code - Block side support for hardware encryption keys in blk-crypto - Various cleanups and fixes * tag 'for-6.15/block-20250322' of git://git.kernel.dk/linux: (105 commits) nvmet: replace max(a, min(b, c)) by clamp(val, lo, hi) nvme-tcp: fix selinux denied when calling sock_sendmsg nvmet: pci-epf: Always configure BAR0 as 64-bit nvmet: Remove duplicate uuid_copy nvme: zns: Simplify nvme_zone_parse_entry() nvmet: pci-epf: Remove redundant 'flush_workqueue()' calls nvmet-fc: Remove unused functions nvme-pci: remove stale comment nvme-fc: Utilise min3() to simplify queue count calculation nvme-multipath: Add visibility for queue-depth io-policy nvme-multipath: Add visibility for numa io-policy nvme-multipath: Add visibility for round-robin io-policy nvmet: add tls_concat and tls_key debugfs entries nvmet-tcp: support secure channel concatenation nvmet: Add 'sq' argument to alloc_ctrl_args nvme-fabrics: reset admin connection for secure concatenation nvme-tcp: request secure channel concatenation nvme-keyring: add nvme_tls_psk_refresh() nvme: add nvme_auth_derive_tls_psk() nvme: add nvme_auth_generate_digest() ...

Linus Torvalds committed 1 year ago

Commit 9b960d82 parents 91928e0 3c9f0c9128 files · +4059 −1561Browse files

Showing the changes to include/uapi/linux (3 of 128 files). Show all

Unified · Split

3 files
  1. include/uapi/linux/blk-crypto.h +44 −0
  2. include/uapi/linux/fs.h +2 −4
  3. include/uapi/linux/ublk_cmd.h +7 −0
include/uapi/linux/blk-crypto.h+44−0
@@ -0,0 +1,44 @@
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _UAPI_LINUX_BLK_CRYPTO_H
3#define _UAPI_LINUX_BLK_CRYPTO_H
4
5#include <linux/ioctl.h>
6#include <linux/types.h>
7
8struct blk_crypto_import_key_arg {
9 /* Raw key (input) */
10 __u64 raw_key_ptr;
11 __u64 raw_key_size;
12 /* Long-term wrapped key blob (output) */
13 __u64 lt_key_ptr;
14 __u64 lt_key_size;
15 __u64 reserved[4];
16};
17
18struct blk_crypto_generate_key_arg {
19 /* Long-term wrapped key blob (output) */
20 __u64 lt_key_ptr;
21 __u64 lt_key_size;
22 __u64 reserved[4];
23};
24
25struct blk_crypto_prepare_key_arg {
26 /* Long-term wrapped key blob (input) */
27 __u64 lt_key_ptr;
28 __u64 lt_key_size;
29 /* Ephemerally-wrapped key blob (output) */
30 __u64 eph_key_ptr;
31 __u64 eph_key_size;
32 __u64 reserved[4];
33};
34
35/*
36 * These ioctls share the block device ioctl space; see uapi/linux/fs.h.
37 * 140-141 are reserved for future blk-crypto ioctls; any more than that would
38 * require an additional allocation from the block device ioctl space.
39 */
40#define BLKCRYPTOIMPORTKEY _IOWR(0x12, 137, struct blk_crypto_import_key_arg)
41#define BLKCRYPTOGENERATEKEY _IOWR(0x12, 138, struct blk_crypto_generate_key_arg)
42#define BLKCRYPTOPREPAREKEY _IOWR(0x12, 139, struct blk_crypto_prepare_key_arg)
43
44#endif /* _UAPI_LINUX_BLK_CRYPTO_H */
include/uapi/linux/fs.h+2−4
@@ -212,10 +212,8 @@ struct fsxattr { · 211 unmodified lines
212#define BLKROTATIONAL _IO(0x12,126)212#define BLKROTATIONAL _IO(0x12,126)
213#define BLKZEROOUT _IO(0x12,127)213#define BLKZEROOUT _IO(0x12,127)
214#define BLKGETDISKSEQ _IOR(0x12,128,__u64)214#define BLKGETDISKSEQ _IOR(0x12,128,__u64)
215/*215/* 130-136 are used by zoned block device ioctls (uapi/linux/blkzoned.h) */
216 * A jump here: 130-136 are reserved for zoned block devices216/* 137-141 are used by blk-crypto ioctls (uapi/linux/blk-crypto.h) */
217 * (see uapi/linux/blkzoned.h)
218 */
219 217
220#define BMAP_IOCTL 1 /* obsolete - kept for compatibility */218#define BMAP_IOCTL 1 /* obsolete - kept for compatibility */
221#define FIBMAP _IO(0x00,1) /* bmap access */219#define FIBMAP _IO(0x00,1) /* bmap access */
include/uapi/linux/ublk_cmd.h+7−0
@@ -405,6 +405,11 @@ struct ublk_param_zoned { · 404 unmodified lines
405 __u8 reserved[20];405 __u8 reserved[20];
406};406};
407 407
408struct ublk_param_dma_align {
409 __u32 alignment;
410 __u8 pad[4];
411};
412
408struct ublk_params {413struct ublk_params {
409 /*414 /*
410 * Total length of parameters, userspace has to set 'len' for both415 * Total length of parameters, userspace has to set 'len' for both
@@ -417,12 +422,14 @@ struct ublk_params { · 6 unmodified lines
417#define UBLK_PARAM_TYPE_DISCARD (1 << 1)422#define UBLK_PARAM_TYPE_DISCARD (1 << 1)
418#define UBLK_PARAM_TYPE_DEVT (1 << 2)423#define UBLK_PARAM_TYPE_DEVT (1 << 2)
419#define UBLK_PARAM_TYPE_ZONED (1 << 3)424#define UBLK_PARAM_TYPE_ZONED (1 << 3)
425#define UBLK_PARAM_TYPE_DMA_ALIGN (1 << 4)
420 __u32 types; /* types of parameter included */426 __u32 types; /* types of parameter included */
421 427
422 struct ublk_param_basic basic;428 struct ublk_param_basic basic;
423 struct ublk_param_discard discard;429 struct ublk_param_discard discard;
424 struct ublk_param_devt devt;430 struct ublk_param_devt devt;
425 struct ublk_param_zoned zoned;431 struct ublk_param_zoned zoned;
432 struct ublk_param_dma_align dma;
426};433};
427 434
428#endif435#endif