diff --git a/mm/slub.c b/mm/slub.c
index cd04dbd2b5d0533c1ecd3919f4b067ee9047e693..1802c87799ffcb1594d9ab65ffc5a635b4e7d9c1 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -1313,9 +1313,7 @@ slab_flags_t kmem_cache_flags(unsigned int object_size,
 		char *end, *glob;
 		size_t cmplen;
 
-		end = strchr(iter, ',');
-		if (!end)
-			end = iter + strlen(iter);
+		end = strchrnul(iter, ',');
 
 		glob = strnchr(iter, end - iter, '*');
 		if (glob)