summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/ext2/xattr.c3
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:
532 532
533 unlock_buffer(bh); 533 unlock_buffer(bh);
534 ea_bdebug(bh, "cloning"); 534 ea_bdebug(bh, "cloning");
535 header = kmalloc(bh->b_size, GFP_KERNEL); 535 header = kmemdup(HDR(bh), bh->b_size, GFP_KERNEL);
536 error = -ENOMEM; 536 error = -ENOMEM;
537 if (header == NULL) 537 if (header == NULL)
538 goto cleanup; 538 goto cleanup;
539 memcpy(header, HDR(bh), bh->b_size);
540 header->h_refcount = cpu_to_le32(1); 539 header->h_refcount = cpu_to_le32(1);
541 540
542 offset = (char *)here - bh->b_data; 541 offset = (char *)here - bh->b_data;