Loading...
Note: File does not exist in v3.1.
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _SCSI_SCSI_REQUEST_H
3#define _SCSI_SCSI_REQUEST_H
4
5#include <linux/blk-mq.h>
6
7#define BLK_MAX_CDB 16
8
9struct scsi_request {
10 unsigned char __cmd[BLK_MAX_CDB];
11 unsigned char *cmd;
12 unsigned short cmd_len;
13 int result;
14 unsigned int sense_len;
15 unsigned int resid_len; /* residual count */
16 int retries;
17 void *sense;
18};
19
20static inline struct scsi_request *scsi_req(struct request *rq)
21{
22 return blk_mq_rq_to_pdu(rq);
23}
24
25static inline void scsi_req_free_cmd(struct scsi_request *req)
26{
27 if (req->cmd != req->__cmd)
28 kfree(req->cmd);
29}
30
31void scsi_req_init(struct scsi_request *req);
32
33#endif /* _SCSI_SCSI_REQUEST_H */