Re: [PATCH] bcache: inherit underlying queue limits for bcachedrivers

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

 



On 2017/5/26 下午5:17, tang.junhui@xxxxxxxxxx wrote:
> Hello Coly,
> 
> 
> > bcache_device_init() already does something overlapped with
> 
> > blk_queue_stack_limits(), which means your patch introduces redundant
> 
> > code execution. Also blk_queue_stack_limits() may fail, so if you do
> 
> > want to add this function call, you also need to check the return value
> 
> > and handle the failure condition.
> 
> Queue Limits are assigned to default value in bcache_device_init(), and then
> 
> updated by inheriting underlying driver in blk_queue_stack_limits(), so
> I think
> 
> there is no redundant or contradiction between them.
> 
> blk_queue_stack_limits() is defined as a void function, so we have no
> need to 
> 
> check the return value.
> 

blk_queue_stack_limits() is wrapper of blk_stack_limits(). If you look
into blk_stack_limits() you will find the redundant code I meant, as
well as the return value I suggested to check.


> 
> > Currently I don't see benefit from this patch. It is probably I miss
> 
>  something from your patch, please correct me if you think so.
> 
> Please consider this scenario: Bcache driver show a large max_sectors_kb,
> 
> then upper layer would merger seqention IOs to make the size of BIO as
> bigger 
> 
> as near to max_sectors_kb. But actually, bcache driver can not send this
> BIO to 
> 
> underlying driver, and have to split the big IO to smaller ones. 
> 
> I think these are useless work.

Oh, maybe I know what you mean.
It is very rare for the above scenario. Maybe I am wrong, but could you
please provide a real example for the above situation ?

Thanks.

-- 
Coly Li
--
To unsubscribe from this list: send the line "unsubscribe linux-bcache" 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]     [Linux ARM Kernel]     [Linux Filesystem Development]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux