0001
0002 #ifndef _LINUX_IPC_H
0003 #define _LINUX_IPC_H
0004
0005 #include <linux/spinlock.h>
0006 #include <linux/uidgid.h>
0007 #include <linux/rhashtable-types.h>
0008 #include <uapi/linux/ipc.h>
0009 #include <linux/refcount.h>
0010
0011
0012 struct kern_ipc_perm {
0013 spinlock_t lock;
0014 bool deleted;
0015 int id;
0016 key_t key;
0017 kuid_t uid;
0018 kgid_t gid;
0019 kuid_t cuid;
0020 kgid_t cgid;
0021 umode_t mode;
0022 unsigned long seq;
0023 void *security;
0024
0025 struct rhash_head khtnode;
0026
0027 struct rcu_head rcu;
0028 refcount_t refcount;
0029 } ____cacheline_aligned_in_smp __randomize_layout;
0030
0031 #endif