diff mbox

migration: reduce the count of strlen call

Message ID 1436780050-25001-1-git-send-email-liang.z.li@intel.com
State New
Headers show

Commit Message

Li, Liang Z July 13, 2015, 9:34 a.m. UTC
'strlen' is called three times in 'save_page_header', it's
inefficient.

Signed-off-by: Liang Li <liang.z.li@intel.com>
---
 migration/ram.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

Comments

Amit Shah July 13, 2015, 9:51 a.m. UTC | #1
On (Mon) 13 Jul 2015 [17:34:10], Liang Li wrote:
> 'strlen' is called three times in 'save_page_header', it's
> inefficient.
> 
> Signed-off-by: Liang Li <liang.z.li@intel.com>

Reviewed-by: Amit Shah <amit.shah@redhat.com>


		Amit
Juan Quintela July 15, 2015, 7:42 a.m. UTC | #2
Liang Li <liang.z.li@intel.com> wrote:
> 'strlen' is called three times in 'save_page_header', it's
> inefficient.
>
> Signed-off-by: Liang Li <liang.z.li@intel.com>

Reviewed-by: Juan Quintela <quintela@redhat.com>
Applied

> ---
>  migration/ram.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/migration/ram.c b/migration/ram.c
> index 1e58cd3..7f007e6 100644
> --- a/migration/ram.c
> +++ b/migration/ram.c
> @@ -382,16 +382,16 @@ void migrate_compress_threads_create(void)
>   */
>  static size_t save_page_header(QEMUFile *f, RAMBlock *block, ram_addr_t offset)
>  {
> -    size_t size;
> +    size_t size, len;
>  
>      qemu_put_be64(f, offset);
>      size = 8;
>  
>      if (!(offset & RAM_SAVE_FLAG_CONTINUE)) {
> -        qemu_put_byte(f, strlen(block->idstr));
> -        qemu_put_buffer(f, (uint8_t *)block->idstr,
> -                        strlen(block->idstr));
> -        size += 1 + strlen(block->idstr);
> +        len = strlen(block->idstr);
> +        qemu_put_byte(f, len);
> +        qemu_put_buffer(f, (uint8_t *)block->idstr, len);
> +        size += 1 + len;
>      }
>      return size;
>  }
diff mbox

Patch

diff --git a/migration/ram.c b/migration/ram.c
index 1e58cd3..7f007e6 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -382,16 +382,16 @@  void migrate_compress_threads_create(void)
  */
 static size_t save_page_header(QEMUFile *f, RAMBlock *block, ram_addr_t offset)
 {
-    size_t size;
+    size_t size, len;
 
     qemu_put_be64(f, offset);
     size = 8;
 
     if (!(offset & RAM_SAVE_FLAG_CONTINUE)) {
-        qemu_put_byte(f, strlen(block->idstr));
-        qemu_put_buffer(f, (uint8_t *)block->idstr,
-                        strlen(block->idstr));
-        size += 1 + strlen(block->idstr);
+        len = strlen(block->idstr);
+        qemu_put_byte(f, len);
+        qemu_put_buffer(f, (uint8_t *)block->idstr, len);
+        size += 1 + len;
     }
     return size;
 }