bcachefs: bch2_gc() is now private to btree_gc.c
authorKent Overstreet <kent.overstreet@linux.dev>
Sat, 6 Apr 2024 04:11:01 +0000 (00:11 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Wed, 8 May 2024 21:29:18 +0000 (17:29 -0400)
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_gc.c
fs/bcachefs/btree_gc.h
fs/bcachefs/recovery_passes.c
fs/bcachefs/sysfs.c

index 791470b0c654553e2fbb9216fb60df1eb8c5fec2..606e1120ab7cdf5c667aaa7b7d85c998f6c61c6c 100644 (file)
@@ -1756,7 +1756,7 @@ static void bch2_gc_stripes_reset(struct bch_fs *c, bool metadata_only)
  *    move around - if references move backwards in the ordering GC
  *    uses, GC could skip past them
  */
-int bch2_gc(struct bch_fs *c, bool initial, bool metadata_only)
+static int bch2_gc(struct bch_fs *c, bool initial, bool metadata_only)
 {
        unsigned iter = 0;
        int ret;
@@ -1843,6 +1843,11 @@ out:
        return ret;
 }
 
+int bch2_check_allocations(struct bch_fs *c)
+{
+       return bch2_gc(c, true, false);
+}
+
 static int gc_btree_gens_key(struct btree_trans *trans,
                             struct btree_iter *iter,
                             struct bkey_s_c k)
@@ -2024,14 +2029,7 @@ static int bch2_gc_thread(void *arg)
                last = atomic64_read(&clock->now);
                last_kick = atomic_read(&c->kick_gc);
 
-               /*
-                * Full gc is currently incompatible with btree key cache:
-                */
-#if 0
-               ret = bch2_gc(c, false, false);
-#else
                bch2_gc_gens(c);
-#endif
                debug_check_no_locks_held();
        }
 
index 607575f83a00232b67d026a0423f9d486f044f2e..0d6c0a2df613e35492dc966af646d2b54791088b 100644 (file)
@@ -6,7 +6,7 @@
 #include "btree_types.h"
 
 int bch2_check_topology(struct bch_fs *);
-int bch2_gc(struct bch_fs *, bool, bool);
+int bch2_check_allocations(struct bch_fs *);
 int bch2_gc_gens(struct bch_fs *);
 void bch2_gc_thread_stop(struct bch_fs *);
 int bch2_gc_thread_start(struct bch_fs *);
index 0cec0f7d9703520a3cf24bcc2ca2ce7f86285ebc..c065c0d012125740596c5e35c665595b0bea2c2b 100644 (file)
@@ -26,11 +26,6 @@ const char * const bch2_recovery_passes[] = {
        NULL
 };
 
-static int bch2_check_allocations(struct bch_fs *c)
-{
-       return bch2_gc(c, true, false);
-}
-
 static int bch2_set_may_go_rw(struct bch_fs *c)
 {
        struct journal_keys *keys = &c->journal_keys;
index b6bfd7cbce1849eb7844c6005f6aea9cdee65fad..4011ab4e710b7ff8781373a4196b39e321505870 100644 (file)
@@ -501,18 +501,8 @@ STORE(bch2_fs)
        if (attr == &sysfs_btree_wakeup)
                bch2_btree_wakeup_all(c);
 
-       if (attr == &sysfs_trigger_gc) {
-               /*
-                * Full gc is currently incompatible with btree key cache:
-                */
-#if 0
-               down_read(&c->state_lock);
-               bch2_gc(c, false, false);
-               up_read(&c->state_lock);
-#else
+       if (attr == &sysfs_trigger_gc)
                bch2_gc_gens(c);
-#endif
-       }
 
        if (attr == &sysfs_trigger_discards)
                bch2_do_discards(c);