All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thorsten Blum <thorsten.blum@linux.dev>
To: David Howells <dhowells@redhat.com>,
	Jarkko Sakkinen <jarkko@kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Simon Horman <horms@kernel.org>, Kees Cook <kees@kernel.org>,
	"Gustavo A. R. Silva" <gustavoars@kernel.org>
Cc: Thorsten Blum <thorsten.blum@linux.dev>,
	Tim Bird <tim.bird@sony.com>,
	keyrings@vger.kernel.org, linux-kernel@vger.kernel.org,
	netdev@vger.kernel.org, linux-hardening@vger.kernel.org
Subject: [PATCH net-next v3 2/2] KEYS: annotate struct user_key_payload with __counted_by
Date: Mon, 27 Apr 2026 13:44:24 +0200	[thread overview]
Message-ID: <20260427114422.313356-4-thorsten.blum@linux.dev> (raw)
In-Reply-To: <20260427114422.313356-3-thorsten.blum@linux.dev>

Add the __counted_by() compiler attribute to the flexible array member
'data' to improve bounds checking via CONFIG_UBSAN_BOUNDS and
CONFIG_FORTIFY_SOURCE.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
Changes in v3:
- Formatting only, do not split the declaration into two lines (Jarkko)
- v2: https://lore.kernel.org/lkml/20260409225703.158552-7-thorsten.blum@linux.dev/

Changes in v2:
- Use __aligned(8) as suggested by David
- v1: https://lore.kernel.org/lkml/20260409073711.57020-6-thorsten.blum@linux.dev/
---
 include/keys/user-type.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/keys/user-type.h b/include/keys/user-type.h
index 386c31432789..30de4f92a721 100644
--- a/include/keys/user-type.h
+++ b/include/keys/user-type.h
@@ -27,7 +27,7 @@
 struct user_key_payload {
 	struct rcu_head	rcu;		/* RCU destructor */
 	unsigned short	datalen;	/* length of this data */
-	char		data[] __aligned(__alignof__(u64)); /* actual data */
+	char		data[] __aligned(8) __counted_by(datalen); /* actual data */
 };
 
 extern struct key_type key_type_user;

  reply	other threads:[~2026-04-27 11:46 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-27 11:44 [PATCH net-next v3 1/2] keys, dns: drop unused upayload->data NUL terminator Thorsten Blum
2026-04-27 11:44 ` Thorsten Blum [this message]
2026-05-09 11:24   ` [PATCH net-next v3 2/2] KEYS: annotate struct user_key_payload with __counted_by Jarkko Sakkinen
2026-05-10 10:47     ` Thorsten Blum
2026-05-10 14:12       ` Jarkko Sakkinen
2026-05-10 14:14         ` Jarkko Sakkinen
2026-05-10 20:32       ` Gustavo A. R. Silva
2026-04-27 23:21 ` [PATCH net-next v3 1/2] keys, dns: drop unused upayload->data NUL terminator Jakub Kicinski
2026-05-08 21:21 ` Jarkko Sakkinen
2026-05-08 22:22   ` Thorsten Blum

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260427114422.313356-4-thorsten.blum@linux.dev \
    --to=thorsten.blum@linux.dev \
    --cc=davem@davemloft.net \
    --cc=dhowells@redhat.com \
    --cc=edumazet@google.com \
    --cc=gustavoars@kernel.org \
    --cc=horms@kernel.org \
    --cc=jarkko@kernel.org \
    --cc=kees@kernel.org \
    --cc=keyrings@vger.kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-hardening@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=tim.bird@sony.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.