Message ID | 1320134672-14310-1-git-send-email-wuzhy@linux.vnet.ibm.com |
---|---|
State | New |
Headers | show |
On Tue, Nov 1, 2011 at 8:04 AM, Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> wrote: > This patch is only to refactor some lines of codes to get better and more robust codes. > > As you have seen, in qed_read_table_cb() it's nice to > use qiov->size because that function doesn't obviously use a single > struct iovec. > > In other two functions, if qiov use more than one struct iovec, the existing way will get wrong nb_sectors. > To make the code more robust, it will be nicer to refactor the existing way as below. > > > Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> > --- > block/qed-table.c | 6 +++--- > 1 files changed, 3 insertions(+), 3 deletions(-) Acked-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Am 01.11.2011 09:04, schrieb Zhi Yong Wu: > This patch is only to refactor some lines of codes to get better and more robust codes. > > As you have seen, in qed_read_table_cb() it's nice to > use qiov->size because that function doesn't obviously use a single > struct iovec. > > In other two functions, if qiov use more than one struct iovec, the existing way will get wrong nb_sectors. > To make the code more robust, it will be nicer to refactor the existing way as below. > > > Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Thanks, applied to the block branch. Kevin
diff --git a/block/qed-table.c b/block/qed-table.c index f31f9ff..8ee8443 100644 --- a/block/qed-table.c +++ b/block/qed-table.c @@ -29,7 +29,7 @@ static void qed_read_table_cb(void *opaque, int ret) { QEDReadTableCB *read_table_cb = opaque; QEDTable *table = read_table_cb->table; - int noffsets = read_table_cb->iov.iov_len / sizeof(uint64_t); + int noffsets = read_table_cb->qiov.size / sizeof(uint64_t); int i; /* Handle I/O error */ @@ -65,7 +65,7 @@ static void qed_read_table(BDRVQEDState *s, uint64_t offset, QEDTable *table, qemu_iovec_init_external(qiov, &read_table_cb->iov, 1); aiocb = bdrv_aio_readv(s->bs->file, offset / BDRV_SECTOR_SIZE, qiov, - read_table_cb->iov.iov_len / BDRV_SECTOR_SIZE, + qiov->size / BDRV_SECTOR_SIZE, qed_read_table_cb, read_table_cb); if (!aiocb) { qed_read_table_cb(read_table_cb, -EIO); @@ -160,7 +160,7 @@ static void qed_write_table(BDRVQEDState *s, uint64_t offset, QEDTable *table, aiocb = bdrv_aio_writev(s->bs->file, offset / BDRV_SECTOR_SIZE, &write_table_cb->qiov, - write_table_cb->iov.iov_len / BDRV_SECTOR_SIZE, + write_table_cb->qiov.size / BDRV_SECTOR_SIZE, qed_write_table_cb, write_table_cb); if (!aiocb) { qed_write_table_cb(write_table_cb, -EIO);
This patch is only to refactor some lines of codes to get better and more robust codes. As you have seen, in qed_read_table_cb() it's nice to use qiov->size because that function doesn't obviously use a single struct iovec. In other two functions, if qiov use more than one struct iovec, the existing way will get wrong nb_sectors. To make the code more robust, it will be nicer to refactor the existing way as below. Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> --- block/qed-table.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-)