On Mon, 2017-03-20 at 16:43 -0400, Christoph Hellwig wrote:
> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
> index 5a7da607ca04..3b3bd646f580 100644
> --- a/include/linux/blkdev.h
> +++ b/include/linux/blkdev.h
> @@ -333,6 +333,7 @@ struct queue_limits {
>       unsigned short          max_segments;
>       unsigned short          max_integrity_segments;
>       unsigned short          max_discard_segments;
> +     unsigned int            max_discard_segment_size;
>  
>       unsigned char           misaligned;
>       unsigned char           discard_misaligned;
> @@ -1150,6 +1151,8 @@ extern void blk_queue_max_segments(struct request_queue 
> *, unsigned short);
>  extern void blk_queue_max_discard_segments(struct request_queue *,
>               unsigned short);
>  extern void blk_queue_max_segment_size(struct request_queue *, unsigned int);
> +extern void blk_queue_max_discard_segment_size(struct request_queue *,
> +             unsigned int);
>  extern void blk_queue_max_discard_sectors(struct request_queue *q,
>               unsigned int max_discard_sectors);
>  extern void blk_queue_max_write_same_sectors(struct request_queue *q,
> @@ -1415,6 +1418,11 @@ static inline unsigned int 
> queue_max_segment_size(struct request_queue *q)
>       return q->limits.max_segment_size;
>  }
>  
> +static inline unsigned int queue_max_discard_segment_size(struct 
> request_queue *q)
> +{
> +     return q->limits.max_discard_segment_size;
> +}
> +
>  static inline unsigned short queue_logical_block_size(struct request_queue 
> *q)
>  {
>       int retval = 512;

Hello Christoph,

It's probably a good idea to add a comment somewhere that the unit of
max_discard_segment_size is one byte.

Additionally, should it be mentioned in the commit message that this
patch limits the maximum discard segment size to 4 GB?

Thanks,

Bart.

Reply via email to