[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230628153342.53406-1-andriy.shevchenko@linux.intel.com>
Date: Wed, 28 Jun 2023 18:33:42 +0300
From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To: Andrew Morton <akpm@...ux-foundation.org>,
kasan-dev@...glegroups.com, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Cc: Andrey Ryabinin <ryabinin.a.a@...il.com>,
Alexander Potapenko <glider@...gle.com>,
Andrey Konovalov <andreyknvl@...il.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Vincenzo Frascino <vincenzo.frascino@....com>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Subject: [PATCH v1 1/1] kasan: Replace strreplace() with strchrnul()
We don't need to traverse over the entire string and replace
occurrences of a character with '\0'. The first match will
suffice. Hence, replace strreplace() with strchrnul().
Signed-off-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
---
mm/kasan/report_generic.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/mm/kasan/report_generic.c b/mm/kasan/report_generic.c
index 51a1e8a8877f..63a34eac4a8c 100644
--- a/mm/kasan/report_generic.c
+++ b/mm/kasan/report_generic.c
@@ -264,6 +264,7 @@ static void print_decoded_frame_descr(const char *frame_descr)
while (num_objects--) {
unsigned long offset;
unsigned long size;
+ char *p;
/* access offset */
if (!tokenize_frame_descr(&frame_descr, token, sizeof(token),
@@ -282,7 +283,7 @@ static void print_decoded_frame_descr(const char *frame_descr)
return;
/* Strip line number; without filename it's not very helpful. */
- strreplace(token, ':', '\0');
+ p[strchrnul(token, ':') - token] = '\0';
/* Finally, print object information. */
pr_err(" [%lu, %lu) '%s'", offset, offset + size, token);
--
2.40.0.1.gaa8946217a0b
Powered by blists - more mailing lists