Skip to content
  • Takuya Yoshikawa's avatar
    KVM: set_memory_region: Identify the requested change explicitly · f64c0398
    Takuya Yoshikawa authored
    
    
    KVM_SET_USER_MEMORY_REGION forces __kvm_set_memory_region() to identify
    what kind of change is being requested by checking the arguments.  The
    current code does this checking at various points in code and each
    condition being used there is not easy to understand at first glance.
    
    This patch consolidates these checks and introduces an enum to name the
    possible changes to clean up the code.
    
    Although this does not introduce any functional changes, there is one
    change which optimizes the code a bit: if we have nothing to change, the
    new code returns 0 immediately.
    
    Note that the return value for this case cannot be changed since QEMU
    relies on it: we noticed this when we changed it to -EINVAL and got a
    section mismatch error at the final stage of live migration.
    
    Signed-off-by: default avatarTakuya Yoshikawa <yoshikawa_takuya_b1@lab.ntt.co.jp>
    Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
    f64c0398