proc: kmalloc struct pde_opener
kzalloc is too much, half of the fields will be reinitialized anyway. If proc file doesn't have ->release hook (some still do not), clearing is unnecessary because it will be freed immediately. Link: http://lkml.kernel.org/r/20161029155747.GC1246@avx2 Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
f5887c71cf
commit
39a10ac23c
@ -321,7 +321,7 @@ static int proc_reg_open(struct inode *inode, struct file *file)
|
|||||||
* by hand in remove_proc_entry(). For this, save opener's credentials
|
* by hand in remove_proc_entry(). For this, save opener's credentials
|
||||||
* for later.
|
* for later.
|
||||||
*/
|
*/
|
||||||
pdeo = kzalloc(sizeof(struct pde_opener), GFP_KERNEL);
|
pdeo = kmalloc(sizeof(struct pde_opener), GFP_KERNEL);
|
||||||
if (!pdeo)
|
if (!pdeo)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
@ -338,6 +338,8 @@ static int proc_reg_open(struct inode *inode, struct file *file)
|
|||||||
if (rv == 0 && release) {
|
if (rv == 0 && release) {
|
||||||
/* To know what to release. */
|
/* To know what to release. */
|
||||||
pdeo->file = file;
|
pdeo->file = file;
|
||||||
|
pdeo->closing = false;
|
||||||
|
pdeo->c = NULL;
|
||||||
/* Strictly for "too late" ->release in proc_reg_release(). */
|
/* Strictly for "too late" ->release in proc_reg_release(). */
|
||||||
spin_lock(&pde->pde_unload_lock);
|
spin_lock(&pde->pde_unload_lock);
|
||||||
list_add(&pdeo->lh, &pde->pde_openers);
|
list_add(&pdeo->lh, &pde->pde_openers);
|
||||||
|
Loading…
Reference in New Issue
Block a user