Skip to content
  • Dou Liyang's avatar
    a6baa608
    block/qapi: reduce the execution time of qmp_query_blockstats · a6baa608
    Dou Liyang authored
    
    
    In order to reduce the execution time, this patch optimize
    the qmp_query_blockstats():
    Remove the next_query_bds function.
    Remove the bdrv_query_stats function.
    Remove some judgement sentence.
    
    The original qmp_query_blockstats calls next_query_bds to get
    the next objects in each loops. In the next_query_bds, it checks
    the query_nodes and blk. It also call bdrv_query_stats to get
    the stats, In the bdrv_query_stats, it checks blk and bs each
    times. This waste more times, which may stall the main loop a
    bit. And if the disk is too many and donot use the dataplane
    feature, this may affect the performance in main loop thread.
    
    This patch removes that two functions, and makes the structure
    clearly.
    
    Signed-off-by: default avatarDou Liyang <douly.fnst@cn.fujitsu.com>
    Message-id: 1484467275-27919-3-git-send-email-douly.fnst@cn.fujitsu.com
    Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
    [mreitz: Removed duplicate info->value assignment]
    Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
    a6baa608
    block/qapi: reduce the execution time of qmp_query_blockstats
    Dou Liyang authored
    
    
    In order to reduce the execution time, this patch optimize
    the qmp_query_blockstats():
    Remove the next_query_bds function.
    Remove the bdrv_query_stats function.
    Remove some judgement sentence.
    
    The original qmp_query_blockstats calls next_query_bds to get
    the next objects in each loops. In the next_query_bds, it checks
    the query_nodes and blk. It also call bdrv_query_stats to get
    the stats, In the bdrv_query_stats, it checks blk and bs each
    times. This waste more times, which may stall the main loop a
    bit. And if the disk is too many and donot use the dataplane
    feature, this may affect the performance in main loop thread.
    
    This patch removes that two functions, and makes the structure
    clearly.
    
    Signed-off-by: default avatarDou Liyang <douly.fnst@cn.fujitsu.com>
    Message-id: 1484467275-27919-3-git-send-email-douly.fnst@cn.fujitsu.com
    Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
    [mreitz: Removed duplicate info->value assignment]
    Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
Loading