Dominique Leuenberger 2021-03-10 07:48:08 +00:00 committed by Git OBS Bridge
commit 2c658e062b
3 changed files with 64 additions and 0 deletions

View File

@ -0,0 +1,56 @@
From 9e72a28b0faca4754ebcc1d7030d555120b03be4 Mon Sep 17 00:00:00 2001
From: Coly Li <colyli@suse.de>
Date: Fri, 22 Jan 2021 23:05:07 +0800
Subject: [PATCH] bcache-tools: Update super block version in bch_set_feature_*
routines
Git-commit: 9e72a28b0faca4754ebcc1d7030d555120b03be4
References: jsc#SLE-9807
When calling bch_set_feature_* routines, it indicates the super block
supports feature set and its version of cache device should at least be
BCACHE_SB_VERSION_CDEV_WITH_FEATURES.
In order to always keep the cache device super block version being
updated, this patch checks whether the super block version is set
correctly when calling bch_set_feature_* routines, if not then set
the version to BCACHE_SB_VERSION_CDEV_WITH_FEATURES.
Signed-off-by: Coly Li <colyli@suse.de>
---
bcache.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/bcache.h b/bcache.h
index 6dcdbb7..46d9683 100644
--- a/bcache.h
+++ b/bcache.h
@@ -228,6 +228,8 @@ static inline int bch_has_feature_##name(struct cache_sb *sb) \
} \
static inline void bch_set_feature_##name(struct cache_sb *sb) \
{ \
+ if ((sb)->version < BCACHE_SB_VERSION_CDEV_WITH_FEATURES) \
+ (sb)->version = BCACHE_SB_VERSION_CDEV_WITH_FEATURES; \
(sb)->feature_compat |= \
BCH##_FEATURE_COMPAT_##flagname; \
} \
@@ -245,6 +247,8 @@ static inline int bch_has_feature_##name(struct cache_sb *sb) \
} \
static inline void bch_set_feature_##name(struct cache_sb *sb) \
{ \
+ if ((sb)->version < BCACHE_SB_VERSION_CDEV_WITH_FEATURES) \
+ (sb)->version = BCACHE_SB_VERSION_CDEV_WITH_FEATURES; \
(sb)->feature_ro_compat |= \
BCH##_FEATURE_RO_COMPAT_##flagname; \
} \
@@ -262,6 +266,8 @@ static inline int bch_has_feature_##name(struct cache_sb *sb) \
} \
static inline void bch_set_feature_##name(struct cache_sb *sb) \
{ \
+ if ((sb)->version < BCACHE_SB_VERSION_CDEV_WITH_FEATURES) \
+ (sb)->version = BCACHE_SB_VERSION_CDEV_WITH_FEATURES; \
(sb)->feature_incompat |= \
BCH##_FEATURE_INCOMPAT_##flagname; \
} \
--
2.26.2

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Wed Feb 24 14:00:08 UTC 2021 - Coly Li <colyli@suse.com>
- bcache-tools: Update super block version in bch_set_feature_*
routines (jsc#SLE-9807)
0028-bcache-tools-Update-super-block-version-in-bch_set_f.patch
-------------------------------------------------------------------
Tue Jan 5 14:20:48 UTC 2021 - Coly Li <colyli@suse.com>

View File

@ -52,6 +52,7 @@ Patch24: 0024-bcache-tools-display-obsoleted-bucket-size-configura.patch
Patch25: 0025-bcache-tools-recover-the-missing-sb.csum-for-showing.patch
Patch26: 0026-bcache-tools-only-call-to_cache_sb-for-bcache-device.patch
Patch27: 0027-bcache-tools-improve-column-alignment-for-bcache-sho.patch
Patch28: 0028-bcache-tools-Update-super-block-version-in-bch_set_f.patch
BuildRequires: pkg-config
BuildRequires: xz
BuildRequires: pkgconfig(blkid)