Whamcloud - gitweb
git://git.whamcloud.com
/
tools
/
e2fsprogs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0a92af2
)
libext2fs: use block_buf in ext2fs_alloc_block2() if it is provided
author
Theodore Ts'o
<tytso@mit.edu>
Sat, 13 Dec 2014 03:12:45 +0000
(22:12 -0500)
committer
Theodore Ts'o
<tytso@mit.edu>
Sat, 13 Dec 2014 03:12:45 +0000
(22:12 -0500)
If the caller supplies a buffer to ext2fs_alloc_block2(), use it
instead of calling ext2fs_zero_blocks2().
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
lib/ext2fs/alloc.c
patch
|
blob
|
history
diff --git
a/lib/ext2fs/alloc.c
b/lib/ext2fs/alloc.c
index
54535c4
..
1bb4d47
100644
(file)
--- a/
lib/ext2fs/alloc.c
+++ b/
lib/ext2fs/alloc.c
@@
-184,9
+184,6
@@
errcode_t ext2fs_alloc_block2(ext2_filsys fs, blk64_t goal,
errcode_t retval;
blk64_t block;
- if (block_buf)
- memset(block_buf, 0, fs->blocksize);
-
if (fs->get_alloc_block) {
retval = (fs->get_alloc_block)(fs, goal, &block);
if (retval)
@@
-203,7
+200,11
@@
errcode_t ext2fs_alloc_block2(ext2_filsys fs, blk64_t goal,
goto fail;
}
- retval = ext2fs_zero_blocks2(fs, block, 1, NULL, NULL);
+ if (block_buf) {
+ memset(block_buf, 0, fs->blocksize);
+ retval = io_channel_write_blk64(fs->io, block, 1, block_buf);
+ } else
+ retval = ext2fs_zero_blocks2(fs, block, 1, NULL, NULL);
if (retval)
goto fail;