]> git.baikalelectronics.ru Git - kernel.git/commit
bcache: add readahead cache policy options via sysfs interface
authorColy Li <colyli@suse.de>
Sat, 1 Feb 2020 14:42:33 +0000 (22:42 +0800)
committerJens Axboe <axboe@kernel.dk>
Sat, 1 Feb 2020 14:55:39 +0000 (07:55 -0700)
commit3e94fa14a6d6cd103d8aaaceca47a1c04ffdd975
tree44e5406a0c7317700f2053dcc3dcc2b870fb7a15
parent3ea2466444cf6056079e8a7aabba04cc7933ccc5
bcache: add readahead cache policy options via sysfs interface

In year 2007 high performance SSD was still expensive, in order to
save more space for real workload or meta data, the readahead I/Os
for non-meta data was bypassed and not cached on SSD.

In now days, SSD price drops a lot and people can find larger size
SSD with more comfortable price. It is unncessary to alway bypass
normal readahead I/Os to save SSD space for now.

This patch adds options for readahead data cache policies via sysfs
file /sys/block/bcache<N>/readahead_cache_policy, the options are,
- "all": cache all readahead data I/Os.
- "meta-only": only cache meta data, and bypass other regular I/Os.

If users want to make bcache continue to only cache readahead request
for metadata and bypass regular data readahead, please set "meta-only"
to this sysfs file. By default, bcache will back to cache all read-
ahead requests now.

Cc: stable@vger.kernel.org
Signed-off-by: Coly Li <colyli@suse.de>
Acked-by: Eric Wheeler <bcache@linux.ewheeler.net>
Cc: Michael Lyle <mlyle@lyle.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/md/bcache/bcache.h
drivers/md/bcache/request.c
drivers/md/bcache/sysfs.c