diff options
-rw-r--r-- | fs/omfs/inode.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/omfs/inode.c b/fs/omfs/inode.c index 68aa38a48308..ce93ccca8639 100644 --- a/fs/omfs/inode.c +++ b/fs/omfs/inode.c @@ -362,12 +362,11 @@ static int omfs_get_imap(struct super_block *sb) bh = sb_bread(sb, block++); if (!bh) goto nomem_free; - *ptr = kmalloc(sb->s_blocksize, GFP_KERNEL); + *ptr = kmemdup(bh->b_data, sb->s_blocksize, GFP_KERNEL); if (!*ptr) { brelse(bh); goto nomem_free; } - memcpy(*ptr, bh->b_data, sb->s_blocksize); if (count < sb->s_blocksize) memset((void *)*ptr + count, 0xff, sb->s_blocksize - count); |