Re: [PATCH/RFC] Allowing REQ_FAILFAST to be set from SG_IO

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hannes Reinecke wrote:
> Hi all,
> 
> this patch allows to set the REQ_FAILFAST flag to be set from SG_IO
> commands. With it one can send generic SCSI commands which behave
> exactly like normal requests send via the block layer.
> 
> Comments etc welcome.

Hannes,
Looks good. There is no proposed change to sg.c .
Could SG_FLAG_FAILFAST be made to work via sg device
nodes?

Doug Gilbert


> ------------------------------------------------------------------------
> 
> Allow FAILFAST flag to be set for SG_IO commands
> 
> This patch allows the FAILFAST flag to be set for SG_IO commands.
> 
> Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
> 
> diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c
> index b33eda2..658b1b5 100644
> --- a/block/scsi_ioctl.c
> +++ b/block/scsi_ioctl.c
> @@ -295,6 +295,8 @@ static int sg_io(struct file *file, requ
>  	rq->sense_len = 0;
>  
>  	rq->flags |= REQ_BLOCK_PC;
> +	if (hdr->flags & SG_FLAGS_FAILFAST)
> +		rq->flags |= REQ_FAILFAST;
>  	bio = rq->bio;
>  
>  	/*
> diff --git a/include/scsi/sg.h b/include/scsi/sg.h
> index 0a487fe..9cc466a 100644
> --- a/include/scsi/sg.h
> +++ b/include/scsi/sg.h
> @@ -142,6 +142,7 @@ typedef struct sg_io_hdr
>  #define SG_FLAG_UNUSED_LUN_INHIBIT 2   /* default is overwrite lun in SCSI */
>  				/* command block (when <= SCSI_2) */
>  #define SG_FLAG_MMAP_IO 4       /* request memory mapped IO */
> +#define SG_FLAG_FAILFAST 8      /* request should set FAILFAST flag */
>  #define SG_FLAG_NO_DXFER 0x10000 /* no transfer of kernel buffers to/from */
>  				/* user space (debug indirect IO) */
>  

-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux