Re: Multi-Level Caching

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

 




> 2023年1月26日 19:30,Andrea Tomassetti <andrea.tomassetti-opensource@xxxxxxxx> 写道:
> 
> Hi,
> I know that bcache doesn't natively support multi-level caching but I
> was playing with it and found this interesting "workaround":
>  make-bcache -B /dev/vdb -C /dev/vdc
> the above command will generate a /dev/bcache0 device that we can now
> use as backing (or cached) device:
>  make-bcache -B /dev/bcache0 -C /dev/vdd
> This will make the kernel panic because the driver is trying to create
> a duplicated "bcache" folder under /sys/block/bcache0/ .
> So, simply patching the code inside register_bdev to create a folder
> "bcache2" if "bcache" already exists does the trick.
> Now I have:
> vdb                       252:16   0    5G  0 disk
> └─bcache0                 251:0    0    5G  0 disk
>  └─bcache1               251:128  0    5G  0 disk /mnt/bcache1
> vdc                       252:32   0   10G  0 disk
> └─bcache0                 251:0    0    5G  0 disk
>  └─bcache1               251:128  0    5G  0 disk /mnt/bcache1
> vdd                       252:48   0    5G  0 disk
> └─bcache1                 251:128  0    5G  0 disk /mnt/bcache1
> 
> Is anyone using this functionality? I assume not, because by default
> it doesn't work.
> Is there any good reason why this doesn't work by default?
> 
> I tried to understand how data will be read out of /dev/bcache1: will
> the /dev/vdd cache, secondly created cache device, be interrogated
> first and then will it be the turn of /dev/vdc ?
> Meaning: can we consider that now the layer structure is
> 
> vdd
> └─vdc
>       └─bcache0
>             └─bcache1
> ?

IIRC, there was a patch tried to achieve similar purpose. I was not supportive for this idea because I didn’t see really useful use case.
In general, extra layer cache means extra latency in the I/O path. What I see in practical deployments are, people try very hard to minimize the cache layer and place it close to application.

Introduce stackable bcache for itself may work, but I don’t see real usage yet, and no motivation to maintain such usage still.

Thanks.

Coly Li



[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