[RFC PATCH v2 03/41] uidgid: add uid_is_legacy() and gid_is_legacy()

From: Jan Koester

Date: Tue Oct 20 2026 - 23:17:12 EST


User and group ids are about to become able to hold a UUID or a GUID
besides a classic 32 bit id. Add the predicates code that can only keep
a classic id (in 32 bits of a buffer, for instance) tests with, so it
can be converted before the types change. For now every id is a classic
one.

No functional change.

Assisted-by: Claude:claude-opus-5-5

Signed-off-by: Jan Koester <jan.koester@xxxxxxxxx>
---
include/linux/uidgid.h | 14 ++++++++++++++
1 file changed, 14 insertions(+)

diff --git a/include/linux/uidgid.h b/include/linux/uidgid.h
index 2dc767e08f..182c682458 100644
--- a/include/linux/uidgid.h
+++ b/include/linux/uidgid.h
@@ -22,6 +22,20 @@ struct uid_gid_map;
#define KUIDT_INIT(value) (kuid_t){ value }
#define KGIDT_INIT(value) (kgid_t){ value }

+/*
+ * Whether an id is a classic 32 bit id. All of them are for now; code that
+ * needs one (to store it in 32 bits, for example) checks with these.
+ */
+static inline bool uid_is_legacy(kuid_t uid)
+{
+ return true;
+}
+
+static inline bool gid_is_legacy(kgid_t gid)
+{
+ return true;
+}
+
#ifdef CONFIG_MULTIUSER
static inline uid_t __kuid_val(kuid_t uid)
{
--
2.56.0