bcache: check unsupported feature sets for bcache register
authorColy Li <colyli@suse.de>
Mon, 4 Jan 2021 07:41:20 +0000 (15:41 +0800)
committerJens Axboe <axboe@kernel.dk>
Sat, 9 Jan 2021 16:21:03 +0000 (09:21 -0700)
commit1dfc0686c29a9bbd3a446a29f9ccde3dec3bc75a
treee05ae84eb520f5c17721c61690aa9f0e2a92fe72
parentf7b4943dea48a572ad751ce1f18a245d43debe7e
bcache: check unsupported feature sets for bcache register

This patch adds the check for features which is incompatible for
current supported feature sets.

Now if the bcache device created by bcache-tools has features that
current kernel doesn't support, read_super() will fail with error
messoage. E.g. if an unsupported incompatible feature detected,
bcache register will fail with dmesg "bcache: register_bcache() error :
Unsupported incompatible feature found".

Fixes: d721a43ff69c ("bcache: increase super block version for cache device and backing device")
Fixes: ffa470327572 ("bcache: add bucket_size_hi into struct cache_sb_disk for large bucket")
Signed-off-by: Coly Li <colyli@suse.de>
Cc: stable@vger.kernel.org # 5.9+
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/md/bcache/features.h
drivers/md/bcache/super.c