Skip to content

Commit

Permalink
[PATCH] use kzalloc and kcalloc in core fs code
Browse files Browse the repository at this point in the history
Signed-off-by: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Oliver Neukum authored and Linus Torvalds committed Mar 25, 2006
1 parent 656bde5 commit 11b0b5a
Show file tree
Hide file tree
Showing 8 changed files with 10 additions and 22 deletions.
3 changes: 1 addition & 2 deletions fs/aio.c
Original file line number Diff line number Diff line change
Expand Up @@ -122,10 +122,9 @@ static int aio_setup_ring(struct kioctx *ctx)
info->nr = 0;
info->ring_pages = info->internal_pages;
if (nr_pages > AIO_RING_PAGES) {
info->ring_pages = kmalloc(sizeof(struct page *) * nr_pages, GFP_KERNEL);
info->ring_pages = kcalloc(nr_pages, sizeof(struct page *), GFP_KERNEL);
if (!info->ring_pages)
return -ENOMEM;
memset(info->ring_pages, 0, sizeof(struct page *) * nr_pages);
}

info->mmap_size = nr_pages * PAGE_SIZE;
Expand Down
3 changes: 1 addition & 2 deletions fs/binfmt_elf.c
Original file line number Diff line number Diff line change
Expand Up @@ -1465,12 +1465,11 @@ static int elf_core_dump(long signr, struct pt_regs * regs, struct file * file)
read_lock(&tasklist_lock);
do_each_thread(g,p)
if (current->mm == p->mm && current != p) {
tmp = kmalloc(sizeof(*tmp), GFP_ATOMIC);
tmp = kzalloc(sizeof(*tmp), GFP_ATOMIC);
if (!tmp) {
read_unlock(&tasklist_lock);
goto cleanup;
}
memset(tmp, 0, sizeof(*tmp));
INIT_LIST_HEAD(&tmp->list);
tmp->thread = p;
list_add(&tmp->list, &thread_list);
Expand Down
7 changes: 2 additions & 5 deletions fs/bio.c
Original file line number Diff line number Diff line change
Expand Up @@ -636,12 +636,10 @@ static struct bio *__bio_map_user_iov(request_queue_t *q,
return ERR_PTR(-ENOMEM);

ret = -ENOMEM;
pages = kmalloc(nr_pages * sizeof(struct page *), GFP_KERNEL);
pages = kcalloc(nr_pages, sizeof(struct page *), GFP_KERNEL);
if (!pages)
goto out;

memset(pages, 0, nr_pages * sizeof(struct page *));

for (i = 0; i < iov_count; i++) {
unsigned long uaddr = (unsigned long)iov[i].iov_base;
unsigned long len = iov[i].iov_len;
Expand Down Expand Up @@ -1186,12 +1184,11 @@ void bioset_free(struct bio_set *bs)

struct bio_set *bioset_create(int bio_pool_size, int bvec_pool_size, int scale)
{
struct bio_set *bs = kmalloc(sizeof(*bs), GFP_KERNEL);
struct bio_set *bs = kzalloc(sizeof(*bs), GFP_KERNEL);

if (!bs)
return NULL;

memset(bs, 0, sizeof(*bs));
bs->bio_pool = mempool_create(bio_pool_size, mempool_alloc_slab,
mempool_free_slab, bio_slab);

Expand Down
7 changes: 2 additions & 5 deletions fs/char_dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -146,12 +146,10 @@ __register_chrdev_region(unsigned int major, unsigned int baseminor,
int ret = 0;
int i;

cd = kmalloc(sizeof(struct char_device_struct), GFP_KERNEL);
cd = kzalloc(sizeof(struct char_device_struct), GFP_KERNEL);
if (cd == NULL)
return ERR_PTR(-ENOMEM);

memset(cd, 0, sizeof(struct char_device_struct));

mutex_lock(&chrdevs_lock);

/* temporary */
Expand Down Expand Up @@ -466,9 +464,8 @@ static struct kobj_type ktype_cdev_dynamic = {

struct cdev *cdev_alloc(void)
{
struct cdev *p = kmalloc(sizeof(struct cdev), GFP_KERNEL);
struct cdev *p = kzalloc(sizeof(struct cdev), GFP_KERNEL);
if (p) {
memset(p, 0, sizeof(struct cdev));
p->kobj.ktype = &ktype_cdev_dynamic;
INIT_LIST_HEAD(&p->list);
kobject_init(&p->kobj);
Expand Down
3 changes: 1 addition & 2 deletions fs/compat.c
Original file line number Diff line number Diff line change
Expand Up @@ -1476,10 +1476,9 @@ int compat_do_execve(char * filename,
int i;

retval = -ENOMEM;
bprm = kmalloc(sizeof(*bprm), GFP_KERNEL);
bprm = kzalloc(sizeof(*bprm), GFP_KERNEL);
if (!bprm)
goto out_ret;
memset(bprm, 0, sizeof(*bprm));

file = open_exec(filename);
retval = PTR_ERR(file);
Expand Down
3 changes: 1 addition & 2 deletions fs/exec.c
Original file line number Diff line number Diff line change
Expand Up @@ -1143,10 +1143,9 @@ int do_execve(char * filename,
int i;

retval = -ENOMEM;
bprm = kmalloc(sizeof(*bprm), GFP_KERNEL);
bprm = kzalloc(sizeof(*bprm), GFP_KERNEL);
if (!bprm)
goto out_ret;
memset(bprm, 0, sizeof(*bprm));

file = open_exec(filename);
retval = PTR_ERR(file);
Expand Down
3 changes: 1 addition & 2 deletions fs/pipe.c
Original file line number Diff line number Diff line change
Expand Up @@ -662,10 +662,9 @@ struct inode* pipe_new(struct inode* inode)
{
struct pipe_inode_info *info;

info = kmalloc(sizeof(struct pipe_inode_info), GFP_KERNEL);
info = kzalloc(sizeof(struct pipe_inode_info), GFP_KERNEL);
if (!info)
goto fail_page;
memset(info, 0, sizeof(*info));
inode->i_pipe = info;

init_waitqueue_head(PIPE_WAIT(*inode));
Expand Down
3 changes: 1 addition & 2 deletions fs/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,10 @@ DEFINE_SPINLOCK(sb_lock);
*/
static struct super_block *alloc_super(void)
{
struct super_block *s = kmalloc(sizeof(struct super_block), GFP_USER);
struct super_block *s = kzalloc(sizeof(struct super_block), GFP_USER);
static struct super_operations default_op;

if (s) {
memset(s, 0, sizeof(struct super_block));
if (security_sb_alloc(s)) {
kfree(s);
s = NULL;
Expand Down

0 comments on commit 11b0b5a

Please sign in to comment.