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;