diff mbox series

[v2] uapi: stddef.h: Provide UAPI macros for __counted_by_{le, be}

Message ID AS8PR02MB72372E45071E8821C07236F78BE42@AS8PR02MB7237.eurprd02.prod.outlook.com (mailing list archive)
State Mainlined
Commit 6d305cbef1aa01b9714e01e35f3d5c28544cf04d
Headers show
Series [v2] uapi: stddef.h: Provide UAPI macros for __counted_by_{le, be} | expand

Commit Message

Erick Archer May 7, 2024, 5:33 p.m. UTC
This commit can be considered an addition to commit ca7e324e8ad3
("compiler_types: add Endianness-dependent __counted_by_{le,be}") [1].

In the commit referenced above the __counted_by_{le,be}() attributes
were defined based on platform's endianness with the goal to that the
structures contain flexible arrays at the end, and the counter for,
can be annotated with these attributes.

So, this commit only provide UAPI macros for UAPI structs that will
gain annotations for __counted_by_{le, be} attributes. And it is the
previous step to be able to use these attributes in UAPI.

Link: https://lore.kernel.org/r/20240327142241.1745989-2-aleksander.lobakin@intel.com
Suggested-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Erick Archer <erick.archer@outlook.com>
---
Changes in v2:
- Add the "Suggested_by:" tag.
- Update the commit message to better explain the goal (Miguel Ojeda).

Previous versions:
v1 -> https://lore.kernel.org/linux-hardening/AS8PR02MB7237CD9ECBF7907AD8B1CC938B1C2@AS8PR02MB7237.eurprd02.prod.outlook.com/

Hi everyone,

The goal of this commit is to be able to accept this another one [1].
And as Kees suggested in this mail [2] we need to land this patch before
the other because we will need __counted_by_be() in UAPI.

[1] https://lore.kernel.org/linux-hardening/AS8PR02MB72371F89D188B047410B755E8B192@AS8PR02MB7237.eurprd02.prod.outlook.com/
[2] https://lore.kernel.org/linux-hardening/202405060924.4001F77D@keescook/
---
 include/uapi/linux/stddef.h | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Kees Cook May 8, 2024, 7:43 a.m. UTC | #1
On Tue, 07 May 2024 19:33:18 +0200, Erick Archer wrote:
> This commit can be considered an addition to commit ca7e324e8ad3
> ("compiler_types: add Endianness-dependent __counted_by_{le,be}") [1].
> 
> In the commit referenced above the __counted_by_{le,be}() attributes
> were defined based on platform's endianness with the goal to that the
> structures contain flexible arrays at the end, and the counter for,
> can be annotated with these attributes.
> 
> [...]

Applied to for-next/hardening, thanks!

[1/1] uapi: stddef.h: Provide UAPI macros for __counted_by_{le, be}
      https://git.kernel.org/kees/c/6d305cbef1aa

Take care,
diff mbox series

Patch

diff --git a/include/uapi/linux/stddef.h b/include/uapi/linux/stddef.h
index 2ec6f35cda32..58154117d9b0 100644
--- a/include/uapi/linux/stddef.h
+++ b/include/uapi/linux/stddef.h
@@ -55,4 +55,12 @@ 
 #define __counted_by(m)
 #endif
 
+#ifndef __counted_by_le
+#define __counted_by_le(m)
+#endif
+
+#ifndef __counted_by_be
+#define __counted_by_be(m)
+#endif
+
 #endif /* _UAPI_LINUX_STDDEF_H */