aboutsummaryrefslogtreecommitdiffstats
path: root/security/selinux/hooks.c
diff options
context:
space:
mode:
Diffstat (limited to 'security/selinux/hooks.c')
-rw-r--r--security/selinux/hooks.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index 65fb5e8ea941..35eb8de892fc 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -181,11 +181,10 @@ static int inode_alloc_security(struct inode *inode)
181 struct task_security_struct *tsec = current->security; 181 struct task_security_struct *tsec = current->security;
182 struct inode_security_struct *isec; 182 struct inode_security_struct *isec;
183 183
184 isec = kmem_cache_alloc(sel_inode_cache, GFP_KERNEL); 184 isec = kmem_cache_zalloc(sel_inode_cache, GFP_KERNEL);
185 if (!isec) 185 if (!isec)
186 return -ENOMEM; 186 return -ENOMEM;
187 187
188 memset(isec, 0, sizeof(*isec));
189 mutex_init(&isec->lock); 188 mutex_init(&isec->lock);
190 INIT_LIST_HEAD(&isec->list); 189 INIT_LIST_HEAD(&isec->list);
191 isec->inode = inode; 190 isec->inode = inode;
@@ -2655,7 +2654,7 @@ static int selinux_file_send_sigiotask(struct task_struct *tsk,
2655 struct file_security_struct *fsec; 2654 struct file_security_struct *fsec;
2656 2655
2657 /* struct fown_struct is never outside the context of a struct file */ 2656 /* struct fown_struct is never outside the context of a struct file */
2658 file = (struct file *)((long)fown - offsetof(struct file,f_owner)); 2657 file = container_of(fown, struct file, f_owner);
2659 2658
2660 tsec = tsk->security; 2659 tsec = tsk->security;
2661 fsec = file->f_security; 2660 fsec = file->f_security;