#ifndef _LINUX_SHM_H_
#define _LINUX_SHM_H_
#include <linux/types.h>
#include <asm/page.h>
#include <asm/shmparam.h>
struct file;
struct task_struct;
#ifdef CONFIG_SYSVIPC
struct sysv_shm { … };
long do_shmat(int shmid, char __user *shmaddr, int shmflg, unsigned long *addr,
unsigned long shmlba);
void exit_shm(struct task_struct *task);
#define shm_init_task(task) …
#else
struct sysv_shm {
};
static inline long do_shmat(int shmid, char __user *shmaddr,
int shmflg, unsigned long *addr,
unsigned long shmlba)
{
return -ENOSYS;
}
static inline void exit_shm(struct task_struct *task)
{
}
static inline void shm_init_task(struct task_struct *task)
{
}
#endif
#endif