[PATCH v2 12/14] seq_file: Replace seq_escape() with inliner
From: Andy Shevchenko
Date: Tue May 04 2021 - 06:27:49 EST
Convert seq_escape() to use seq_escape_mem() rather than using
a separate symbol. At the same time move it to header as inliner.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
---
fs/seq_file.c | 21 ---------------------
include/linux/seq_file.h | 19 ++++++++++++++++++-
2 files changed, 18 insertions(+), 22 deletions(-)
diff --git a/fs/seq_file.c b/fs/seq_file.c
index 532cac2eae0f..d78801403a2f 100644
--- a/fs/seq_file.c
+++ b/fs/seq_file.c
@@ -380,27 +380,6 @@ void seq_escape_mem(struct seq_file *m, const char *src, size_t len,
}
EXPORT_SYMBOL(seq_escape_mem);
-/**
- * seq_escape - print string into buffer, escaping some characters
- * @m: target buffer
- * @s: string
- * @esc: set of characters that need escaping
- *
- * Puts string into buffer, replacing each occurrence of character from
- * @esc with usual octal escape.
- * Use seq_has_overflowed() to check for errors.
- */
-void seq_escape(struct seq_file *m, const char *s, const char *esc)
-{
- char *buf;
- size_t size = seq_get_buf(m, &buf);
- int ret;
-
- ret = string_escape_str(s, buf, size, ESCAPE_OCTAL, esc);
- seq_commit(m, ret < size ? ret : -1);
-}
-EXPORT_SYMBOL(seq_escape);
-
void seq_escape_mem_ascii(struct seq_file *m, const char *src, size_t isz)
{
char *buf;
diff --git a/include/linux/seq_file.h b/include/linux/seq_file.h
index 6de442182784..0b3a6096bed3 100644
--- a/include/linux/seq_file.h
+++ b/include/linux/seq_file.h
@@ -4,6 +4,7 @@
#include <linux/types.h>
#include <linux/string.h>
+#include <linux/string_helpers.h>
#include <linux/bug.h>
#include <linux/mutex.h>
#include <linux/cpumask.h>
@@ -128,7 +129,23 @@ void seq_put_hex_ll(struct seq_file *m, const char *delimiter,
void seq_escape_mem(struct seq_file *m, const char *src, size_t len,
unsigned int flags, const char *esc);
-void seq_escape(struct seq_file *m, const char *s, const char *esc);
+
+/**
+ * seq_escape - print string into buffer, escaping some characters
+ * @m: target buffer
+ * @s: NULL-terminated string
+ * @esc: set of characters that need escaping
+ *
+ * Puts string into buffer, replacing each occurrence of character from
+ * @esc with usual octal escape.
+ *
+ * Use seq_has_overflowed() to check for errors.
+ */
+static inline void seq_escape(struct seq_file *m, const char *s, const char *esc)
+{
+ seq_escape_mem(m, s, strlen(s), ESCAPE_OCTAL, esc);
+}
+
void seq_escape_mem_ascii(struct seq_file *m, const char *src, size_t isz);
void seq_hex_dump(struct seq_file *m, const char *prefix_str, int prefix_type,
--
2.30.2