diff options
-rw-r--r-- | drivers/md/bcache/bcache.h | 2 | ||||
-rw-r--r-- | drivers/md/bcache/buckets.c | 4 | ||||
-rw-r--r-- | drivers/md/bcache/extents.c | 8 | ||||
-rw-r--r-- | drivers/md/bcache/gc.c | 20 | ||||
-rw-r--r-- | drivers/md/bcache/gc.h | 4 | ||||
-rw-r--r-- | drivers/md/bcache/super.c | 2 |
6 files changed, 20 insertions, 20 deletions
diff --git a/drivers/md/bcache/bcache.h b/drivers/md/bcache/bcache.h index a334dfa428a9..5aa2c2863c3c 100644 --- a/drivers/md/bcache/bcache.h +++ b/drivers/md/bcache/bcache.h @@ -549,7 +549,7 @@ struct cache_set { * Protected by gc_cur_lock. Only written to by GC thread, so GC thread * can read without a lock. */ - seqlock_t gc_cur_lock; + seqcount_t gc_cur_lock; enum btree_id gc_cur_btree; unsigned gc_cur_level; struct bpos gc_cur_pos; diff --git a/drivers/md/bcache/buckets.c b/drivers/md/bcache/buckets.c index 0548d407d00d..4eadb0948490 100644 --- a/drivers/md/bcache/buckets.c +++ b/drivers/md/bcache/buckets.c @@ -77,11 +77,11 @@ struct bucket_stats bch_bucket_stats_read(struct cache *ca) unsigned seq; do { - seq = read_seqbegin(&c->gc_cur_lock); + seq = read_seqcount_begin(&c->gc_cur_lock); ret = c->gc_cur_btree > BTREE_ID_NR ? __bucket_stats_read(ca) : ca->bucket_stats_cached; - } while (read_seqretry(&c->gc_cur_lock, seq)); + } while (read_seqcount_retry(&c->gc_cur_lock, seq)); return ret; } diff --git a/drivers/md/bcache/extents.c b/drivers/md/bcache/extents.c index a5617b73c569..9699300368bc 100644 --- a/drivers/md/bcache/extents.c +++ b/drivers/md/bcache/extents.c @@ -443,10 +443,10 @@ static void btree_ptr_debugcheck(struct cache_set *c, struct btree *b, goto err; do { - seq = read_seqbegin(&c->gc_cur_lock); + seq = read_seqcount_begin(&c->gc_cur_lock); bad = (!__gc_will_visit_node(c, b) && !g->mark.is_metadata); - } while (read_seqretry(&c->gc_cur_lock, seq)); + } while (read_seqcount_retry(&c->gc_cur_lock, seq)); err = "inconsistent"; if (bad) @@ -1431,7 +1431,7 @@ static void bch_extent_debugcheck(struct cache_set *c, struct btree *b, do { struct bucket_mark mark; - seq = read_seqbegin(&c->gc_cur_lock); + seq = read_seqcount_begin(&c->gc_cur_lock); mark = READ_ONCE(g->mark); /* between mark and bucket gen */ @@ -1452,7 +1452,7 @@ static void bch_extent_debugcheck(struct cache_set *c, struct btree *b, (!mark.dirty_sectors && !mark.owned_by_allocator && dirty))); - } while (read_seqretry(&c->gc_cur_lock, seq)); + } while (read_seqcount_retry(&c->gc_cur_lock, seq)); if (bad) goto bad_ptr; diff --git a/drivers/md/bcache/gc.c b/drivers/md/bcache/gc.c index 96aea208af20..44b8b3cf4a66 100644 --- a/drivers/md/bcache/gc.c +++ b/drivers/md/bcache/gc.c @@ -185,10 +185,10 @@ static int bch_gc_btree(struct cache_set *c, enum btree_id btree_id, BUG_ON(bkey_cmp(c->gc_cur_pos, b->key.k.p) > 0); BUG_ON(!gc_will_visit_node(c, b)); - write_seqlock(&c->gc_cur_lock); + write_seqcount_begin(&c->gc_cur_lock); c->gc_cur_level = b->level; c->gc_cur_pos = b->key.k.p; - write_sequnlock(&c->gc_cur_lock); + write_seqcount_end(&c->gc_cur_lock); BUG_ON(gc_will_visit_node(c, b)); @@ -203,9 +203,9 @@ static int bch_gc_btree(struct cache_set *c, enum btree_id btree_id, b = c->btree_roots[btree_id]; __bch_btree_mark_key(c, b->level + 1, bkey_i_to_s_c(&b->key)); - write_seqlock(&c->gc_cur_lock); + write_seqcount_begin(&c->gc_cur_lock); c->gc_cur_level = b->level + 1; - write_sequnlock(&c->gc_cur_lock); + write_seqcount_end(&c->gc_cur_lock); spin_unlock(&c->btree_root_lock); return 0; } @@ -252,14 +252,14 @@ static void bch_gc_start(struct cache_set *c) struct bucket *g; unsigned i; - write_seqlock(&c->gc_cur_lock); + write_seqcount_begin(&c->gc_cur_lock); for_each_cache(ca, c, i) ca->bucket_stats_cached = __bucket_stats_read(ca); c->gc_cur_btree = 0; c->gc_cur_level = 0; c->gc_cur_pos = POS_MIN; - write_sequnlock(&c->gc_cur_lock); + write_seqcount_end(&c->gc_cur_lock); memset(c->cache_slots_used, 0, sizeof(c->cache_slots_used)); @@ -319,9 +319,9 @@ static void bch_gc_finish(struct cache_set *c) set_gc_sectors(c); - write_seqlock(&c->gc_cur_lock); + write_seqcount_begin(&c->gc_cur_lock); c->gc_cur_btree = BTREE_ID_NR + 1; - write_sequnlock(&c->gc_cur_lock); + write_seqcount_end(&c->gc_cur_lock); } /** @@ -354,11 +354,11 @@ void bch_gc(struct cache_set *c) return; } - write_seqlock(&c->gc_cur_lock); + write_seqcount_begin(&c->gc_cur_lock); c->gc_cur_btree++; c->gc_cur_level = 0; c->gc_cur_pos = POS_MIN; - write_sequnlock(&c->gc_cur_lock); + write_seqcount_end(&c->gc_cur_lock); } bch_gc_finish(c); diff --git a/drivers/md/bcache/gc.h b/drivers/md/bcache/gc.h index d431c5a50678..90953c90a116 100644 --- a/drivers/md/bcache/gc.h +++ b/drivers/md/bcache/gc.h @@ -46,9 +46,9 @@ static inline bool gc_will_visit_node(struct cache_set *c, bool ret; do { - seq = read_seqbegin(&c->gc_cur_lock); + seq = read_seqcount_begin(&c->gc_cur_lock); ret = __gc_will_visit_node(c, b); - } while (read_seqretry(&c->gc_cur_lock, seq)); + } while (read_seqcount_retry(&c->gc_cur_lock, seq)); return ret; } diff --git a/drivers/md/bcache/super.c b/drivers/md/bcache/super.c index 4299f76e35e7..27533d3a40cc 100644 --- a/drivers/md/bcache/super.c +++ b/drivers/md/bcache/super.c @@ -960,7 +960,7 @@ static const char *bch_cache_set_alloc(struct cache_sb *sb, spin_lock_init(&c->read_race_lock); INIT_WORK(&c->read_race_work, bch_read_race_work); - seqlock_init(&c->gc_cur_lock); + seqcount_init(&c->gc_cur_lock); c->prio_clock[READ].hand = 1; c->prio_clock[READ].min_prio = 0; |