diff options
Diffstat (limited to 'fs/ext2')
-rw-r--r-- | fs/ext2/xattr.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/ext2/xattr.c b/fs/ext2/xattr.c index 839e71e78673..79369c13cc55 100644 --- a/fs/ext2/xattr.c +++ b/fs/ext2/xattr.c @@ -532,11 +532,10 @@ bad_block: unlock_buffer(bh); ea_bdebug(bh, "cloning"); - header = kmalloc(bh->b_size, GFP_KERNEL); + header = kmemdup(HDR(bh), bh->b_size, GFP_KERNEL); error = -ENOMEM; if (header == NULL) goto cleanup; - memcpy(header, HDR(bh), bh->b_size); header->h_refcount = cpu_to_le32(1); offset = (char *)here - bh->b_data; |