diff options
Diffstat (limited to 'security/selinux')
-rw-r--r-- | security/selinux/avc.c | 3 | ||||
-rw-r--r-- | security/selinux/hooks.c | 3 | ||||
-rw-r--r-- | security/selinux/ss/avtab.c | 3 |
3 files changed, 3 insertions, 6 deletions
diff --git a/security/selinux/avc.c b/security/selinux/avc.c index e7c0b5e2066b..da8caf10ef97 100644 --- a/security/selinux/avc.c +++ b/security/selinux/avc.c | |||
@@ -332,11 +332,10 @@ static struct avc_node *avc_alloc_node(void) | |||
332 | { | 332 | { |
333 | struct avc_node *node; | 333 | struct avc_node *node; |
334 | 334 | ||
335 | node = kmem_cache_alloc(avc_node_cachep, GFP_ATOMIC); | 335 | node = kmem_cache_zalloc(avc_node_cachep, GFP_ATOMIC); |
336 | if (!node) | 336 | if (!node) |
337 | goto out; | 337 | goto out; |
338 | 338 | ||
339 | memset(node, 0, sizeof(*node)); | ||
340 | INIT_RCU_HEAD(&node->rhead); | 339 | INIT_RCU_HEAD(&node->rhead); |
341 | INIT_LIST_HEAD(&node->list); | 340 | INIT_LIST_HEAD(&node->list); |
342 | atomic_set(&node->ae.used, 1); | 341 | atomic_set(&node->ae.used, 1); |
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 65fb5e8ea941..9eeab82719a2 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; |
diff --git a/security/selinux/ss/avtab.c b/security/selinux/ss/avtab.c index ebb993c5c244..9142073319c0 100644 --- a/security/selinux/ss/avtab.c +++ b/security/selinux/ss/avtab.c | |||
@@ -36,10 +36,9 @@ avtab_insert_node(struct avtab *h, int hvalue, | |||
36 | struct avtab_key *key, struct avtab_datum *datum) | 36 | struct avtab_key *key, struct avtab_datum *datum) |
37 | { | 37 | { |
38 | struct avtab_node * newnode; | 38 | struct avtab_node * newnode; |
39 | newnode = kmem_cache_alloc(avtab_node_cachep, GFP_KERNEL); | 39 | newnode = kmem_cache_zalloc(avtab_node_cachep, GFP_KERNEL); |
40 | if (newnode == NULL) | 40 | if (newnode == NULL) |
41 | return NULL; | 41 | return NULL; |
42 | memset(newnode, 0, sizeof(struct avtab_node)); | ||
43 | newnode->key = *key; | 42 | newnode->key = *key; |
44 | newnode->datum = *datum; | 43 | newnode->datum = *datum; |
45 | if (prev) { | 44 | if (prev) { |