Merge branch 'block-6.15' into for-6.16/block
authorJens Axboe <axboe@kernel.dk>
Mon, 5 May 2025 13:13:44 +0000 (07:13 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 5 May 2025 13:13:44 +0000 (07:13 -0600)
Merge 6.15 block fixes in, once again, to resolve conflicts with the
fixes for ublk that went into mainline and the 6.16 ublk updates.

* block-6.15:
  nvmet-auth: always free derived key data
  nvmet-tcp: don't restore null sk_state_change
  nvmet-tcp: select CONFIG_TLS from CONFIG_NVME_TARGET_TCP_TLS
  nvme-tcp: select CONFIG_TLS from CONFIG_NVME_TCP_TLS
  nvme-tcp: fix premature queue removal and I/O failover
  nvme-pci: add quirks for WDC Blue SN550 15b7:5009
  nvme-pci: add quirks for device 126f:1001
  nvme-pci: fix queue unquiesce check on slot_reset
  ublk: remove the check of ublk_need_req_ref() from __ublk_check_and_get_req
  ublk: enhance check for register/unregister io buffer command
  ublk: decouple zero copy from user copy
  selftests: ublk: fix UBLK_F_NEED_GET_DATA

Signed-off-by: Jens Axboe <axboe@kernel.dk>
1  2 
drivers/block/ublk_drv.c

index 02e52b0663182f0e5575efe789626877847a08e7,f9032076bc06158f77f5b2d2e2cab2f05ab94efa..2c8f28c0d0a1ca6b70eab33d91cb4d75c585b429
@@@ -208,20 -201,10 +208,15 @@@ struct ublk_params_header 
  static void ublk_stop_dev_unlocked(struct ublk_device *ub);
  static void ublk_abort_queue(struct ublk_device *ub, struct ublk_queue *ubq);
  static inline struct request *__ublk_check_and_get_req(struct ublk_device *ub,
-               struct ublk_queue *ubq, int tag, size_t offset);
+               const struct ublk_queue *ubq, int tag, size_t offset);
  static inline unsigned int ublk_req_build_flags(struct request *req);
 -static inline struct ublksrv_io_desc *ublk_get_iod(struct ublk_queue *ubq,
 -                                                 int tag);
 +
 +static inline struct ublksrv_io_desc *
 +ublk_get_iod(const struct ublk_queue *ubq, unsigned tag)
 +{
 +      return &ubq->io_cmd_buf[tag];
 +}
 +
- static inline bool ublk_dev_is_user_copy(const struct ublk_device *ub)
- {
-       return ub->dev_info.flags & (UBLK_F_USER_COPY | UBLK_F_SUPPORT_ZERO_COPY);
- }
  static inline bool ublk_dev_is_zoned(const struct ublk_device *ub)
  {
        return ub->dev_info.flags & UBLK_F_ZONED;