diff options
Diffstat (limited to 'ipc')
-rw-r--r-- | ipc/msg.c | 3 | ||||
-rw-r--r-- | ipc/shm.c | 3 |
2 files changed, 4 insertions, 2 deletions
@@ -220,8 +220,7 @@ asmlinkage long sys_msgget (key_t key, int msgflg) | |||
220 | ret = -EEXIST; | 220 | ret = -EEXIST; |
221 | } else { | 221 | } else { |
222 | msq = msg_lock(id); | 222 | msq = msg_lock(id); |
223 | if(msq==NULL) | 223 | BUG_ON(msq==NULL); |
224 | BUG(); | ||
225 | if (ipcperms(&msq->q_perm, msgflg)) | 224 | if (ipcperms(&msq->q_perm, msgflg)) |
226 | ret = -EACCES; | 225 | ret = -EACCES; |
227 | else { | 226 | else { |
@@ -814,6 +814,9 @@ asmlinkage long sys_shmdt(char __user *shmaddr) | |||
814 | loff_t size = 0; | 814 | loff_t size = 0; |
815 | int retval = -EINVAL; | 815 | int retval = -EINVAL; |
816 | 816 | ||
817 | if (addr & ~PAGE_MASK) | ||
818 | return retval; | ||
819 | |||
817 | down_write(&mm->mmap_sem); | 820 | down_write(&mm->mmap_sem); |
818 | 821 | ||
819 | /* | 822 | /* |