[PATCH net-next v4] keys, dns: Drop unused NUL terminator from upayload->data

Thorsten Blum posted 1 patch 1 month, 3 weeks ago
net/dns_resolver/dns_key.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
[PATCH net-next v4] keys, dns: Drop unused NUL terminator from upayload->data
Posted by Thorsten Blum 1 month, 3 weeks ago
upayload->data includes an extra NUL terminator even though it is never
used as a C string. In-tree users access only the first
upayload->datalen bytes.

Remove the redundant NUL terminator and allocate one byte less for
upayload->data in dns_resolver_preparse().

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
Changes in v4:
- Drop patch 2/2 from the series and submit 1/2 as a standalone patch
- Reword subject and patch description
- v3: https://lore.kernel.org/r/20260427114422.313356-3-thorsten.blum@linux.dev/

Changes in v3:
- Update commit message
- v2: https://lore.kernel.org/r/20260409225703.158552-4-thorsten.blum@linux.dev/

Changes in v2:
- No changes in patch 1/2
- v1: https://lore.kernel.org/r/20260406175810.1018681-3-thorsten.blum@linux.dev/
---
 net/dns_resolver/dns_key.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/net/dns_resolver/dns_key.c b/net/dns_resolver/dns_key.c
index c3c8c3240ef9..451247864a63 100644
--- a/net/dns_resolver/dns_key.c
+++ b/net/dns_resolver/dns_key.c
@@ -203,7 +203,7 @@ dns_resolver_preparse(struct key_preparsed_payload *prep)
 	kdebug("store result");
 	prep->quotalen = result_len;
 
-	upayload = kmalloc_flex(*upayload, data, result_len + 1);
+	upayload = kmalloc_flex(*upayload, data, result_len);
 	if (!upayload) {
 		kleave(" = -ENOMEM");
 		return -ENOMEM;
@@ -211,7 +211,6 @@ dns_resolver_preparse(struct key_preparsed_payload *prep)
 
 	upayload->datalen = result_len;
 	memcpy(upayload->data, data, result_len);
-	upayload->data[result_len] = '\0';
 
 	prep->payload.data[dns_key_data] = upayload;
 	kleave(" = 0");
Re: [PATCH net-next v4] keys, dns: Drop unused NUL terminator from upayload->data
Posted by Jakub Kicinski 1 month, 2 weeks ago
On Thu,  6 Aug 2026 22:04:54 +0200 Thorsten Blum wrote:
> upayload->data includes an extra NUL terminator even though it is never
> used as a C string. In-tree users access only the first
> upayload->datalen bytes.
> 
> Remove the redundant NUL terminator and allocate one byte less for
> upayload->data in dns_resolver_preparse().

Okay. You know how I feel about this change already. I'll apply but
please adjust your filter for changes which are worth maintainer's time
Re: [PATCH net-next v4] keys, dns: Drop unused NUL terminator from upayload->data
Posted by Simon Horman 1 month, 2 weeks ago
On Thu, Aug 06, 2026 at 10:04:54PM +0200, Thorsten Blum wrote:
> upayload->data includes an extra NUL terminator even though it is never
> used as a C string. In-tree users access only the first
> upayload->datalen bytes.
> 
> Remove the redundant NUL terminator and allocate one byte less for
> upayload->data in dns_resolver_preparse().
> 
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---
> Changes in v4:
> - Drop patch 2/2 from the series and submit 1/2 as a standalone patch
> - Reword subject and patch description
> - v3: https://lore.kernel.org/r/20260427114422.313356-3-thorsten.blum@linux.dev/

Separating this patch out makes sense to me.
And the updated patch description looks good.

Thanks.

Reviewed-by: Simon Horman <horms@kernel.org>