• Serhii Popovych's avatar
    KVM: PPC: Book3S HV: Drop prepare_done from struct kvm_resize_hpt · 3073774e
    Serhii Popovych authored
    Currently the kvm_resize_hpt structure has two fields relevant to the
    state of an ongoing resize: 'prepare_done', which indicates whether
    the worker thread has completed or not, and 'error' which indicates
    whether it was successful or not.
    
    Since the success/failure isn't known until completion, this is
    confusingly redundant.  This patch consolidates the information into
    just the 'error' value: -EBUSY indicates the worked is still in
    progress, other negative values indicate (completed) failure, 0
    indicates successful completion.
    
    As a bonus this reduces size of struct kvm_resize_hpt by
    __alignof__(struct kvm_hpt_info) and saves few bytes of code.
    
    While there correct comment in struct kvm_resize_hpt which references
    a non-existent semaphore (leftover from an early draft).
    
    Assert with WARN_ON() in case of HPT allocation thread work runs more
    than once for resize request or resize_hpt_allocate() returns -EBUSY
    that is treated specially.
    
    Change comparison against zero to make checkpatch.pl happy.
    
    Cc: stable@vger.kernel.org # v4.10+
    Signed-off-by: default avatarSerhii Popovych <spopovyc@redhat.com>
    [dwg: Changed BUG_ON()s to WARN_ON()s and altered commit message for
     clarity]
    Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
    Signed-off-by: default avatarPaul Mackerras <paulus@ozlabs.org>
    3073774e
book3s_64_mmu_hv.c 52.6 KB