Re: [PATCH] bcache: add a separate open bucket list for flash devices

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

 



On Tue, Nov 21, 2017 at 10:48:27PM +0800, Coly Li wrote:
> On 21/11/2017 6:57 PM, Kent Overstreet wrote:
> > On Tue, Nov 21, 2017 at 06:50:32PM +0800, tang.junhui@xxxxxxxxxx wrote:
> >> From: Tang Junhui <tang.junhui@xxxxxxxxxx>
> >>
> >> Currently in pick_data_bucket(), though we keep multiple buckets open
> >> for writes, and try to segregate different write streams for better
> >> cache utilization: first we look for a bucket where the last write to
> >> it was sequential with the current write, and failing that we look
> >> for a bucket that was last usedby the same task.
> >>
> >> But actually, in such scenario that there are some flash devices
> >> , and some backend bcache devices, when many tasks request these
> >> flash devices and backend bcache devices, the write IOs may still
> >> fall to the same bucket as bellow bucket:
> >> | bcache data | flash data | bcache data | bcache data| flash data|
> >> then after writeback of these backend bcache devices, the bucket would
> >> be like bellow bucket:
> >> | free | flash data | free | free | flash data |
> > 
> > This patch doesn't make any sense - open_buckets are only for allocations and
> > writes to the SSD.
> > 
> 
> Hi Kent,
> 
> I feel the purpose for this patch is to make flash only volume occupy as
> less buckets as possible. Because dirty sectors of flash only volume is
> not reclaimable, if their dirty sectors mixed with dirty sectors of
> cached device, such buckets will be marked as dirty and won't be reclaimed.

If that's the goal the way to do it would be to segregate the write points, not
the open buckets.
--
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