From: Fabian Frederick <f...@skynet.be>

Use kzalloc and __vmalloc __GFP_ZERO for clean sd_quota_bitmap allocation.

Signed-off-by: Fabian Frederick <f...@skynet.be>
Signed-off-by: Steven Whitehouse <swhit...@redhat.com>

diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
index 8bec0e31..a5cccf6 100644
--- a/fs/gfs2/quota.c
+++ b/fs/gfs2/quota.c
@@ -1242,14 +1242,13 @@ int gfs2_quota_init(struct gfs2_sbd *sdp)
        bm_size = DIV_ROUND_UP(sdp->sd_quota_slots, 8 * sizeof(unsigned long));
        bm_size *= sizeof(unsigned long);
        error = -ENOMEM;
-       sdp->sd_quota_bitmap = kmalloc(bm_size, GFP_NOFS|__GFP_NOWARN);
+       sdp->sd_quota_bitmap = kzalloc(bm_size, GFP_NOFS | __GFP_NOWARN);
        if (sdp->sd_quota_bitmap == NULL)
-               sdp->sd_quota_bitmap = __vmalloc(bm_size, GFP_NOFS, 
PAGE_KERNEL);
+               sdp->sd_quota_bitmap = __vmalloc(bm_size, GFP_NOFS |
+                                                __GFP_ZERO, PAGE_KERNEL);
        if (!sdp->sd_quota_bitmap)
                return error;
 
-       memset(sdp->sd_quota_bitmap, 0, bm_size);
-
        for (x = 0; x < blocks; x++) {
                struct buffer_head *bh;
                const struct gfs2_quota_change *qc;
-- 
1.8.3.1

Reply via email to