aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
authorThorsten Blum <thorsten.blum@linux.dev>2026-05-14 18:56:03 +0200
committerAndrew Morton <akpm@linux-foundation.org>2026-05-28 21:24:58 -0700
commit685568777c5a18fbc40bd0b64527fd9444c255be (patch)
treef61575a8c1612191df1aec2a610caae152e3c446 /lib
parent2e73ea35a5dbe7e258b7fd396bcb100fa154f029 (diff)
downloadlinux-next-history-685568777c5a18fbc40bd0b64527fd9444c255be.tar.gz
string: use min in sized_strscpy
Use min() and drop the limit variable to simplify sized_strscpy(). Link: https://lore.kernel.org/20260514165601.527883-3-thorsten.blum@linux.dev Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev> Cc: Andy Shevchenko <andy@kernel.org> Cc: Kees Cook <kees@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/string.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/string.c b/lib/string.c
index b632c71df1a50..1f9297e9776a9 100644
--- a/lib/string.c
+++ b/lib/string.c
@@ -21,6 +21,7 @@
#include <linux/errno.h>
#include <linux/limits.h>
#include <linux/linkage.h>
+#include <linux/minmax.h>
#include <linux/stddef.h>
#include <linux/string.h>
#include <linux/types.h>
@@ -125,11 +126,8 @@ ssize_t sized_strscpy(char *dest, const char *src, size_t count)
* If src is unaligned, don't cross a page boundary,
* since we don't know if the next page is mapped.
*/
- if ((long)src & (sizeof(long) - 1)) {
- size_t limit = PAGE_SIZE - ((long)src & (PAGE_SIZE - 1));
- if (limit < max)
- max = limit;
- }
+ if ((long)src & (sizeof(long) - 1))
+ max = min(PAGE_SIZE - ((long)src & (PAGE_SIZE - 1)), max);
#else
/* If src or dest is unaligned, don't do word-at-a-time. */
if (((long) dest | (long) src) & (sizeof(long) - 1))