On 2018/12/19 20:40, Gao Xiang wrote: > Signed-off-by: Gao Xiang <[email protected]> > --- > erofs_cache.c | 3 +-- > erofs_io.c | 7 ------- > erofs_io.h | 8 ++++++-- > mkfs_inode.c | 56 +++++++++++++++++++------------------------------------- > 4 files changed, 26 insertions(+), 48 deletions(-) > > diff --git a/erofs_cache.c b/erofs_cache.c > index cfecd7f..c8af3de 100644 > --- a/erofs_cache.c > +++ b/erofs_cache.c > @@ -174,8 +174,7 @@ int erofs_flush_all_blocks(void) > pbuf += count; > } > > - ret = dev_write(erofs_blk_buf, > - blknr_to_addr(blk->bb_blkaddr), EROFS_BLKSIZE); > + ret = blk_write(erofs_blk_buf, blk->bb_blkaddr); > if (ret) > break; > } > diff --git a/erofs_io.c b/erofs_io.c > index 563ca3f..1b6087d 100644 > --- a/erofs_io.c > +++ b/erofs_io.c > @@ -119,13 +119,6 @@ int dev_write(void *buf, u64 offset, size_t len) > return 0; > } > > -int dev_write_block(void *buf, u32 blkaddr) > -{ > - erofs_info("Write data to block %u", blkaddr); > - > - return dev_write(buf, blknr_to_addr(blkaddr), EROFS_BLKSIZE); > -} > - > int dev_fsync(void) > { > int ret; > diff --git a/erofs_io.h b/erofs_io.h > index b447062..caec141 100644 > --- a/erofs_io.h > +++ b/erofs_io.h > @@ -10,15 +10,19 @@ > #define __EROFS_IO_H > > #include <sys/cdefs.h> > -#include "erofs_types.h" > +#include "mkfs_erofs.h" > > int dev_open(const char *devname); > void dev_close(void); > int dev_write(void *buf, u64 offset, size_t len); > -int dev_write_block(void *buf, u32 blkaddr); > int dev_fsync(void); > u64 dev_length(void); > > +static inline int blk_write(void *buf, u32 blkaddr) > +{ > + return dev_write(buf, blknr_to_addr(blkaddr), EROFS_BLKSIZE); > +} > + > #endif > > > diff --git a/mkfs_inode.c b/mkfs_inode.c > index db8e586..0985e77 100644 > --- a/mkfs_inode.c > +++ b/mkfs_inode.c > @@ -389,17 +389,14 @@ static int mkfs_write_inode_dir(struct erofs_node_info > *inode) > > if (dentrys_size + EROFS_DIRENT_SIZE + len > > EROFS_BLKSIZE) { > - const u32 addr = inode->i_blkaddr + blk_cnt; > + const u32 blkaddr = inode->i_blkaddr + blk_cnt; > > write_dirents(pbuf, sum, start, pos); > - ret = dev_write(pbuf, > - blknr_to_addr(addr), > - EROFS_BLKSIZE); > + ret = blk_write(pbuf, blkaddr); > if (ret < 0) { > - erofs_err( > - "dev_write inode[%s] error[%s]", > - inode->i_fullpath, > - strerror(errno)); > + erofs_err("blk_write(file %s, err %s)", > + inode->i_fullpath, > + strerror(errno)); > return ret; > } > > @@ -441,17 +438,14 @@ static int mkfs_write_inode_dir(struct erofs_node_info > *inode) > len = strlen(d->i_name); > if (dentrys_size + EROFS_DIRENT_SIZE + len > > EROFS_BLKSIZE) { > - const u32 addr = inode->i_blkaddr + blk_cnt; > + const u32 blkaddr = inode->i_blkaddr + blk_cnt; > > write_dirents(pbuf, sum, start, pos); > - dev_write(pbuf, > - blknr_to_addr(addr), > - EROFS_BLKSIZE); > + blk_write(pbuf, blkaddr); > if (ret < 0) { > - erofs_err( > - "dev_write inode[%s] error[%s]", > - inode->i_fullpath, > - strerror(errno)); > + erofs_err("blk_write(file %s, err %s)", > + inode->i_fullpath, > + strerror(errno)); > return ret; > } > > @@ -467,13 +461,12 @@ static int mkfs_write_inode_dir(struct erofs_node_info > *inode) > > /* write last page names */ > if (start != pos) { > - const u32 addr = inode->i_blkaddr + blk_cnt; > + const u32 blkaddr = inode->i_blkaddr + blk_cnt; > > write_dirents(pbuf, sum, start, pos); > - ret = dev_write(pbuf, blknr_to_addr(addr), > - EROFS_BLKSIZE); > + ret = blk_write(pbuf, blkaddr); > if (ret < 0) { > - erofs_err("dev_write inode[%s] error[%s]", > + erofs_err("blk_write(file %s, err %s)", > inode->i_fullpath, > strerror(errno)); > return ret; > @@ -524,8 +517,6 @@ static int mkfs_write_inode_regfile(struct > erofs_node_info *inode) > } > > for (i = 0; i < page_cnt; i++) { > - u32 addr; > - > ret = read(fd, pbuf, EROFS_BLKSIZE); > if (ret < 0) { > erofs_err("read inode[%s] error[%s]", > @@ -534,12 +525,9 @@ static int mkfs_write_inode_regfile(struct > erofs_node_info *inode) > return -errno; > } > > - addr = inode->i_blkaddr + i; > - > - ret = dev_write(pbuf, blknr_to_addr(addr), > - EROFS_BLKSIZE); > + ret = blk_write(pbuf, inode->i_blkaddr + i); > if (ret < 0) { > - erofs_err("dev_write inode[%s] ret[%d]", > + erofs_err("blk_write inode[%s] ret[%d]", > filepath, > ret); > return ret; > @@ -575,8 +563,6 @@ static int mkfs_write_inode_regfile(struct > erofs_node_info *inode) > } > > for (i = 0; i < nblocks; i++) { > - u32 addr; > - > ret = read(fd, pbuf, EROFS_BLKSIZE); > if (ret < 0) { > erofs_err("read inode[%s] error[%s]", > @@ -584,13 +570,10 @@ static int mkfs_write_inode_regfile(struct > erofs_node_info *inode) > strerror(errno)); > exit(EXIT_FAILURE); > } > - addr = inode->i_blkaddr + i; > > - ret = dev_write(pbuf, > - blknr_to_addr(addr), > - EROFS_BLKSIZE); > + ret = blk_write(pbuf, inode->i_blkaddr + i); > if (ret < 0) { > - erofs_err("dev_write inode[%s] ret[%d]", > + erofs_err("blk_write inode[%s] ret[%d]", > filepath, > ret); > return ret; > @@ -657,10 +640,9 @@ static int mkfs_write_inode_symfile(struct > erofs_node_info *inode) > return -errno; > } > > - ret = dev_write(pbuf, blknr_to_addr(inode->i_blkaddr), > - EROFS_BLKSIZE); > + ret = blk_write(pbuf, inode->i_blkaddr); > if (ret < 0) { > - erofs_err("dev_write inode[%s] error[%s]", > + erofs_err("blk_write inode[%s] error[%s]", > inode->i_fullpath, > strerror(errno)); > return ret;
Reviewed-by: Li Guifu <[email protected]> Thanks,
