Squashed backup commit (no shallow-clone history issues) of xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2 branch, upstream commit 9eece662e) plus all fixes applied to get everpal_defconfig building clean against a modern (GCC 15.2.0) toolchain -- see the previous commit message on the lineage-23.2 branch (also in this repo history is not available here since this is a squashed snapshot; full incremental history lives in the local DL380 checkout and the upstream GitHub remote). Upstream: https://github.com/xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2)
102 lines
2.2 KiB
C
102 lines
2.2 KiB
C
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
|
#ifndef _ASM_STAT_H
|
|
#define _ASM_STAT_H
|
|
|
|
struct __old_kernel_stat {
|
|
unsigned short st_dev;
|
|
unsigned short st_ino;
|
|
unsigned short st_mode;
|
|
unsigned short st_nlink;
|
|
unsigned short st_uid;
|
|
unsigned short st_gid;
|
|
unsigned short st_rdev;
|
|
unsigned long st_size;
|
|
unsigned long st_atime;
|
|
unsigned long st_mtime;
|
|
unsigned long st_ctime;
|
|
};
|
|
|
|
/* This matches struct stat in uClibc/glibc. */
|
|
struct stat {
|
|
unsigned char __pad1[6];
|
|
unsigned short st_dev;
|
|
|
|
unsigned long __pad2;
|
|
unsigned long st_ino;
|
|
|
|
unsigned short __pad3;
|
|
unsigned short st_mode;
|
|
unsigned short __pad4;
|
|
unsigned short st_nlink;
|
|
|
|
unsigned short __pad5;
|
|
unsigned short st_uid;
|
|
unsigned short __pad6;
|
|
unsigned short st_gid;
|
|
|
|
unsigned char __pad7[6];
|
|
unsigned short st_rdev;
|
|
|
|
unsigned long __pad8;
|
|
unsigned long st_size;
|
|
|
|
unsigned long __pad9; /* align 64-bit st_blocks to 2-word */
|
|
unsigned long st_blksize;
|
|
|
|
unsigned long __pad10; /* future possible st_blocks high bits */
|
|
unsigned long st_blocks; /* Number 512-byte blocks allocated. */
|
|
|
|
unsigned long __unused1;
|
|
unsigned long st_atime;
|
|
|
|
unsigned long __unused2;
|
|
unsigned long st_mtime;
|
|
|
|
unsigned long __unused3;
|
|
unsigned long st_ctime;
|
|
|
|
unsigned long long __unused4;
|
|
};
|
|
|
|
/* This matches struct stat64 in uClibc/glibc. The layout is exactly
|
|
the same as that of struct stat above, with 64-bit types taking up
|
|
space that was formerly used by padding. stat syscalls are still
|
|
different from stat64, though, in that the former tests for
|
|
overflow. */
|
|
struct stat64 {
|
|
unsigned char __pad1[6];
|
|
unsigned short st_dev;
|
|
|
|
unsigned long long st_ino;
|
|
|
|
unsigned int st_mode;
|
|
unsigned int st_nlink;
|
|
|
|
unsigned long st_uid;
|
|
unsigned long st_gid;
|
|
|
|
unsigned char __pad2[6];
|
|
unsigned short st_rdev;
|
|
|
|
long long st_size;
|
|
|
|
unsigned long __pad3; /* align 64-bit st_blocks to 2-word */
|
|
unsigned long st_blksize;
|
|
|
|
unsigned long __pad4; /* future possible st_blocks high bits */
|
|
unsigned long st_blocks; /* Number 512-byte blocks allocated. */
|
|
|
|
unsigned long st_atime_nsec;
|
|
unsigned long st_atime;
|
|
|
|
unsigned int st_mtime_nsec;
|
|
unsigned long st_mtime;
|
|
|
|
unsigned long st_ctime_nsec;
|
|
unsigned long st_ctime;
|
|
|
|
unsigned long long __unused4;
|
|
};
|
|
|
|
#endif /* _ASM_STAT_H */
|