bcache: Move couple of functions to sysfs.c
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 28 May 2018 07:37:43 +0000 (15:37 +0800)
committerJens Axboe <axboe@kernel.dk>
Mon, 28 May 2018 20:53:20 +0000 (14:53 -0600)
There is couple of functions that are used exclusively in sysfs.c.
Move it to there and make them static.

Besides above, it will allow further clean up.

No functional change intended.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Coly Li <colyli@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/md/bcache/sysfs.c
drivers/md/bcache/util.c
drivers/md/bcache/util.h

index 0275450a0da969aeffd4cc57bcc37fa9f7ff1f82..36f4396dbd63f0cbe624fe43c418b987586aa9d4 100644 (file)
@@ -132,6 +132,41 @@ rw_attribute(btree_shrinker_disabled);
 rw_attribute(copy_gc_enabled);
 rw_attribute(size);
 
+static ssize_t bch_snprint_string_list(char *buf, size_t size, const char * const list[],
+                           size_t selected)
+{
+       char *out = buf;
+       size_t i;
+
+       for (i = 0; list[i]; i++)
+               out += snprintf(out, buf + size - out,
+                               i == selected ? "[%s] " : "%s ", list[i]);
+
+       out[-1] = '\n';
+       return out - buf;
+}
+
+static ssize_t bch_read_string_list(const char *buf, const char * const list[])
+{
+       size_t i;
+       char *s, *d = kstrndup(buf, PAGE_SIZE - 1, GFP_KERNEL);
+       if (!d)
+               return -ENOMEM;
+
+       s = strim(d);
+
+       for (i = 0; list[i]; i++)
+               if (!strcmp(list[i], s))
+                       break;
+
+       kfree(d);
+
+       if (!list[i])
+               return -EINVAL;
+
+       return i;
+}
+
 SHOW(__bch_cached_dev)
 {
        struct cached_dev *dc = container_of(kobj, struct cached_dev,
index 74febd5230df0091185acffa91dd64bc9fd268c2..fc479b026d6d86f4aa0c8cfd43f21f34fc5f9e82 100644 (file)
@@ -120,41 +120,6 @@ ssize_t bch_hprint(char *buf, int64_t v)
                return sprintf(buf, "%llu.%i%c", q, t * 10 / 1024, units[u]);
 }
 
-ssize_t bch_snprint_string_list(char *buf, size_t size, const char * const list[],
-                           size_t selected)
-{
-       char *out = buf;
-       size_t i;
-
-       for (i = 0; list[i]; i++)
-               out += snprintf(out, buf + size - out,
-                               i == selected ? "[%s] " : "%s ", list[i]);
-
-       out[-1] = '\n';
-       return out - buf;
-}
-
-ssize_t bch_read_string_list(const char *buf, const char * const list[])
-{
-       size_t i;
-       char *s, *d = kstrndup(buf, PAGE_SIZE - 1, GFP_KERNEL);
-       if (!d)
-               return -ENOMEM;
-
-       s = strim(d);
-
-       for (i = 0; list[i]; i++)
-               if (!strcmp(list[i], s))
-                       break;
-
-       kfree(d);
-
-       if (!list[i])
-               return -EINVAL;
-
-       return i;
-}
-
 bool bch_is_zero(const char *p, size_t n)
 {
        size_t i;
index 268024529edd66383a17ac2e98aea18d0d208014..cced87f8eb278fcfe9715fdc24c887f3b06109a1 100644 (file)
@@ -365,11 +365,6 @@ ssize_t bch_hprint(char *buf, int64_t v);
 bool bch_is_zero(const char *p, size_t n);
 int bch_parse_uuid(const char *s, char *uuid);
 
-ssize_t bch_snprint_string_list(char *buf, size_t size, const char * const list[],
-                           size_t selected);
-
-ssize_t bch_read_string_list(const char *buf, const char * const list[]);
-
 struct time_stats {
        spinlock_t      lock;
        /*