Re: [PATCH] mmc: queue: allocate the scatterlist with a correct value

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

 



On 04/05/16 08:31, Jaehoon Chung wrote:
> If host->max is lower than PAGE_CACHE_SIZE, it should allocate

host->max?

PAGE_CACHE_SIZE does not exist anymore.  Now there is only PAGE_SIZE.

> the scatterlist with incorrect size.

Don't understand what you mean.

> To prevent illegal behavior, fixed the scatterlist size for mmc_alloc_sg().
> 
> Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>
> ---
>  drivers/mmc/card/queue.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/mmc/card/queue.c b/drivers/mmc/card/queue.c
> index 6f4323c..0353f99 100644
> --- a/drivers/mmc/card/queue.c
> +++ b/drivers/mmc/card/queue.c
> @@ -276,12 +276,14 @@ int mmc_init_queue(struct mmc_queue *mq, struct mmc_card *card,
>  		blk_queue_max_segments(mq->queue, host->max_segs);

So now mq->queue->limits.max_segments == host->max_segs unless it was zero.

>  		blk_queue_max_segment_size(mq->queue, host->max_seg_size);
>  
> -		mqrq_cur->sg = mmc_alloc_sg(host->max_segs, &ret);
> +		mqrq_cur->sg =
> +			mmc_alloc_sg(mq->queue->limits.max_segments, &ret);

So that is the same unless host->max_segs is zero.

>  		if (ret)
>  			goto cleanup_queue;
>  
>  
> -		mqrq_prev->sg = mmc_alloc_sg(host->max_segs, &ret);
> +		mqrq_prev->sg =
> +			mmc_alloc_sg(mq->queue->limits.max_segments, &ret);
>  		if (ret)
>  			goto cleanup_queue;
>  	}
> 

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



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux