34 lines
		
	
	
		
			667 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			667 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef _SCSI_SCSI_REQUEST_H
 | |
| #define _SCSI_SCSI_REQUEST_H
 | |
| 
 | |
| #include <linux/blk-mq.h>
 | |
| 
 | |
| #define BLK_MAX_CDB	16
 | |
| 
 | |
| struct scsi_request {
 | |
| 	unsigned char	__cmd[BLK_MAX_CDB];
 | |
| 	unsigned char	*cmd;
 | |
| 	unsigned short	cmd_len;
 | |
| 	int		result;
 | |
| 	unsigned int	sense_len;
 | |
| 	unsigned int	resid_len;	/* residual count */
 | |
| 	int		retries;
 | |
| 	void		*sense;
 | |
| };
 | |
| 
 | |
| static inline struct scsi_request *scsi_req(struct request *rq)
 | |
| {
 | |
| 	return blk_mq_rq_to_pdu(rq);
 | |
| }
 | |
| 
 | |
| static inline void scsi_req_free_cmd(struct scsi_request *req)
 | |
| {
 | |
| 	if (req->cmd != req->__cmd)
 | |
| 		kfree(req->cmd);
 | |
| }
 | |
| 
 | |
| void scsi_req_init(struct scsi_request *req);
 | |
| 
 | |
| #endif /* _SCSI_SCSI_REQUEST_H */
 | 
