kmalloc_array manages count*sizeof overflow.

This patch also fixes checkpatch warnings:
ERROR: "(foo*)" should be "(foo *)"

Cc: Andrew Morton <a...@linux-foundation.org>
Cc: Jan Kara <j...@suse.cz>
Signed-off-by: Fabian Frederick <f...@skynet.be>
---
 fs/jbd/journal.c | 6 ++++--
 fs/jbd/revoke.c  | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/fs/jbd/journal.c b/fs/jbd/journal.c
index 06fe11e..26ebba7 100644
--- a/fs/jbd/journal.c
+++ b/fs/jbd/journal.c
@@ -810,7 +810,8 @@ journal_t * journal_init_dev(struct block_device *bdev,
        journal->j_blocksize = blocksize;
        n = journal->j_blocksize / sizeof(journal_block_tag_t);
        journal->j_wbufsize = n;
-       journal->j_wbuf = kmalloc(n * sizeof(struct buffer_head*), GFP_KERNEL);
+       journal->j_wbuf = kmalloc_array(n, sizeof(struct buffer_head *),
+                                       GFP_KERNEL);
        if (!journal->j_wbuf) {
                printk(KERN_ERR "%s: Can't allocate bhs for commit thread\n",
                        __func__);
@@ -871,7 +872,8 @@ journal_t * journal_init_inode (struct inode *inode)
        /* journal descriptor can store up to n blocks -bzzz */
        n = journal->j_blocksize / sizeof(journal_block_tag_t);
        journal->j_wbufsize = n;
-       journal->j_wbuf = kmalloc(n * sizeof(struct buffer_head*), GFP_KERNEL);
+       journal->j_wbuf = kmalloc_array(n, sizeof(struct buffer_head *),
+                                       GFP_KERNEL);
        if (!journal->j_wbuf) {
                printk(KERN_ERR "%s: Can't allocate bhs for commit thread\n",
                        __func__);
diff --git a/fs/jbd/revoke.c b/fs/jbd/revoke.c
index 8898bbd..7374a57 100644
--- a/fs/jbd/revoke.c
+++ b/fs/jbd/revoke.c
@@ -241,7 +241,7 @@ static struct jbd_revoke_table_s 
*journal_init_revoke_table(int hash_size)
        table->hash_size = hash_size;
        table->hash_shift = ilog2(hash_size);
        table->hash_table =
-               kmalloc(hash_size * sizeof(struct list_head), GFP_KERNEL);
+               kmalloc_array(hash_size, sizeof(struct list_head), GFP_KERNEL);
        if (!table->hash_table) {
                kmem_cache_free(revoke_table_cache, table);
                table = NULL;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to