Commit 6cd63562 authored by Masahiro Yamada's avatar Masahiro Yamada Committed by Arnd Bergmann

mips: use __kernel_{uid,gid}32_t in uapi/asm/stat.h

Commit 8c1a381a ("mips: add asm/stat.h to UAPI compile-test
coverage") converted as follows:

  uid_t  -->  __kernel_uid_t
  gid_t  -->  __kernel_gid_t

The bit width of __kernel_{uid,gid}_t is 16 or 32-bits depending on
architectures.

MIPS uses 32-bits for them as in include/uapi/asm-generic/posix_types.h,
so the previous conversion is probably fine, but let's stick to the
arch-independent conversion just in case.

The safe replacements across all architectures are:

  uid_t  -->  __kernel_uid32_t
  gid_t  -->  __kernel_gid32_t

as defined in include/linux/types.h.

A similar issue was reported for the android binder. [1]

[1]: https://lore.kernel.org/all/20220601010017.2639048-1-cmllamas@google.com/

Fixes: 8c1a381a ("mips: add asm/stat.h to UAPI compile-test coverage")
Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent b2441b3b
...@@ -22,8 +22,8 @@ struct stat { ...@@ -22,8 +22,8 @@ struct stat {
__kernel_ino_t st_ino; __kernel_ino_t st_ino;
__kernel_mode_t st_mode; __kernel_mode_t st_mode;
__u32 st_nlink; __u32 st_nlink;
__kernel_uid_t st_uid; __kernel_uid32_t st_uid;
__kernel_gid_t st_gid; __kernel_gid32_t st_gid;
unsigned st_rdev; unsigned st_rdev;
long st_pad2[2]; long st_pad2[2];
long st_size; long st_size;
...@@ -58,8 +58,8 @@ struct stat64 { ...@@ -58,8 +58,8 @@ struct stat64 {
__kernel_mode_t st_mode; __kernel_mode_t st_mode;
__u32 st_nlink; __u32 st_nlink;
__kernel_uid_t st_uid; __kernel_uid32_t st_uid;
__kernel_gid_t st_gid; __kernel_gid32_t st_gid;
unsigned long st_rdev; unsigned long st_rdev;
unsigned long st_pad1[3]; /* Reserved for st_rdev expansion */ unsigned long st_pad1[3]; /* Reserved for st_rdev expansion */
...@@ -99,8 +99,8 @@ struct stat { ...@@ -99,8 +99,8 @@ struct stat {
__kernel_mode_t st_mode; __kernel_mode_t st_mode;
__u32 st_nlink; __u32 st_nlink;
__kernel_uid_t st_uid; __kernel_uid32_t st_uid;
__kernel_gid_t st_gid; __kernel_gid32_t st_gid;
unsigned int st_rdev; unsigned int st_rdev;
unsigned int st_pad1[3]; /* Reserved for st_rdev expansion */ unsigned int st_pad1[3]; /* Reserved for st_rdev expansion */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment