From nobody Sat Jun 20 11:53:59 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gjCY425PCz6jQ3v for ; Sat, 20 Jun 2026 11:54:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gjCY40Bk1z3bZF for ; Sat, 20 Jun 2026 11:54:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1781956440; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/ZnqR7zJ86hFY4Pn9mwRnTrQNK+gRQzio219CDWU4P0=; b=Kj1YQaoAaq0Bpkhn1huDTkOdzxWzVXjVpthEgDQAX9aAV6MvWOvH3Sk6dPM64IHfFr8PAa KxKekKg+mQjLM4e+xrDgCntlBPb2hXXsoyI3GSyKKrbe+A3XeMzzC5maMSTVakDVxtSPnV /44nVCAEiFQpS/immMTc5pWDtl5P6plpWu04k2mnNpFtXJfmVAIwgbzjmsGAk3ThhupgQQ 3/QKJZ4D0JBoafZIBqYNcPe+6XQUoxia3nRiUFJo6GheQFf9jlvnTTDzeYtsAa6w1f4mq7 tFI7mzeyFwrNdyEPh0RSFSSPWP5jKhf4VA+Jx9xaxAiR0J0oe7n/YU0atsuorA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1781956440; a=rsa-sha256; cv=none; b=PjEOqUfNu2WqMTdjNOyZRtrByx2kOiftJIYjhMX8RA1RgWua0oofgGHQgblMZBqoANGEu9 MzMLFTvetK+lwZ7fNze+m/bCqSldnRQuhV4J/jEzg0S82IWnc4s3A/MTpbVfB7AUvWjvRl vZFMA4Y/iLLqyVmdW9JlwqyU3ajG4Cl/fG/nUEjyZdnw0DfE+cJGvvEXZY2cJbIrOG8EXZ Qowm4kxksDNhmMyNAK6YzDPpbUyQhFE2a2v0Yt5oFXX1AD12pYFiGsjLcXph7CIM0TeVJs vfFsHveFxSlt6T4r3bFpO7gTT9GvDJqWBEhld0b3huZlthrHwZji/Hju9h8GpQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1781956440; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/ZnqR7zJ86hFY4Pn9mwRnTrQNK+gRQzio219CDWU4P0=; b=hD/Eb1+oNV6KHQstD+xUkfIyte+w3FlYV0MMAdTZns/4cQCyig22Q6rkjcWPckLZ8OA+YW Ua9Zrh9nXQewudFVcC7nTdMwY8qk0plFmMWeJYbhtF+cfnuUMEjsQ40SPWUEvMEUOXpf36 urJF90Hm7KHW9tEQjjq7i2G4sCB71/kSIJBnMPkVdfAI5vjSYWGsdYCSECL6a7ZaJDrCIt IQzrO9HeQ1vI3OGmxPCoTrjeRj4fhYqfe7Uh0tJrk/ARtbnB508IzVaDuamLKQrHavhkJ8 6v8KBxwH/Dh+pyj+M7bX6Dqe/z0hUqdfLD/ptLCOTDErlAcnbztSGKjluluyqA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gjCY363SpzTXK for ; Sat, 20 Jun 2026 11:53:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26120 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 20 Jun 2026 11:53:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jean-=?utf-8?Q?S=C3=A9bast?==?utf-8?Q?ien P=C3=A9?=dron Subject: git: c27779e0a954 - main - linuxkpi: Change `strscpy()` and `strscpy_pad()` to make their `len` argument optional List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c27779e0a9546e8b2bfde74b5c9cbf08bbed000e Auto-Submitted: auto-generated Date: Sat, 20 Jun 2026 11:53:59 +0000 Message-Id: <6a367f57.26120.3eb287a9@gitrepo.freebsd.org> The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=c27779e0a9546e8b2bfde74b5c9cbf08bbed000e commit c27779e0a9546e8b2bfde74b5c9cbf08bbed000e Author: Jean-Sébastien Pédron AuthorDate: 2026-06-12 20:22:51 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2026-06-20 10:36:04 +0000 linuxkpi: Change `strscpy()` and `strscpy_pad()` to make their `len` argument optional The previous implementation always took the `len` but now, it is optional and defaults to the size of `dst`. The DRM drivers started to use `strscpy()` without the `len` in Linux 6.13. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57585 --- sys/compat/linuxkpi/common/include/linux/string.h | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/string.h b/sys/compat/linuxkpi/common/include/linux/string.h index b195dcc8fe9b..8a4da9e19c94 100644 --- a/sys/compat/linuxkpi/common/include/linux/string.h +++ b/sys/compat/linuxkpi/common/include/linux/string.h @@ -31,6 +31,7 @@ #include +#include #include #include #include @@ -245,7 +246,7 @@ strreplace(char *str, char old, char new) } static inline ssize_t -strscpy(char* dst, const char* src, size_t len) +sized_strscpy(char* dst, const char* src, size_t len) { size_t i; @@ -260,8 +261,13 @@ strscpy(char* dst, const char* src, size_t len) return (-E2BIG); } +#define __strscpy0(dst, src, ...) sized_strscpy(dst, src, sizeof(dst)) +#define __strscpy1(dst, src, len) sized_strscpy(dst, src, len) +#define strscpy(dst, src, ...) \ + CONCATENATE(__strscpy, COUNT_ARGS(__VA_ARGS__))(dst, src, __VA_ARGS__) + static inline ssize_t -strscpy_pad(char* dst, const char* src, size_t len) +sized_strscpy_pad(char* dst, const char* src, size_t len) { bzero(dst, len); @@ -269,6 +275,11 @@ strscpy_pad(char* dst, const char* src, size_t len) return (strscpy(dst, src, len)); } +#define __strscpy_pad0(dst, src, ...) sized_strscpy_pad(dst, src, sizeof(dst)) +#define __strscpy_pad1(dst, src, len) sized_strscpy_pad(dst, src, len) +#define strscpy_pad(dst, src, ...) \ + CONCATENATE(__strscpy_pad, COUNT_ARGS(__VA_ARGS__))(dst, src, __VA_ARGS__) + static inline char * strnchr(const char *cp, size_t n, int ch) {