SYNOPSIS
- struct kern_ipc_perm * ipcctl_pre_down_nolock(struct ipc_namespace * ns, struct ipc_ids * ids, int id, int cmd, struct ipc64_perm * perm, int extra_perm);
 
ARGUMENTS
ns
- 
- ipc namespace
  
ids
- the table of ids where to look for the ipc
 
id
- the id of the ipc to retrieve
 
cmd
- the cmd to check
 
perm
- the permission to set
 
extra_perm
- one extra permission parameter used by msq
 
DESCRIPTION
This function does some common audit and permissions check for some IPC_XXX cmd and is called from semctl_down, shmctl_down and msgctl_down. It must be called without any lock held and - retrieves the ipc with the given id in the given table. - performs some audit and permission check, depending on the given cmd - returns a pointer to the ipc object or otherwise, the corresponding error.
Call holding the both the rwsem and the rcu read lock.
COPYRIGHT

