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() ...
Showing the changes to include/uapi/linux (3 of 128 files). Show all
Unified · Split
| @@ -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 | |||
| 8 | struct 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 | |||
| 18 | struct 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 | |||
| 25 | struct 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 */ | ||
| @@ -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 devices | 216 | /* 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 */ |
| @@ -405,6 +405,11 @@ struct ublk_param_zoned { · 404 unmodified lines | |||
| 405 | __u8 reserved[20]; | 405 | __u8 reserved[20]; |
| 406 | }; | 406 | }; |
| 407 | 407 | ||
| 408 | struct ublk_param_dma_align { | ||
| 409 | __u32 alignment; | ||
| 410 | __u8 pad[4]; | ||
| 411 | }; | ||
| 412 | |||
| 408 | struct ublk_params { | 413 | struct ublk_params { |
| 409 | /* | 414 | /* |
| 410 | * Total length of parameters, userspace has to set 'len' for both | 415 | * 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 | #endif | 435 | #endif |