Ignore:
Timestamp:
Apr 14, 2017, 9:41:36 PM (3 months ago)
Author:
brainslayer
Message:

kernel update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/linux/universal/linux-4.4/arch/arm/kvm/mmu.c

    r30691 r31859  
    797797
    798798        idx = srcu_read_lock(&kvm->srcu);
     799        down_read(&current->mm->mmap_sem);
    799800        spin_lock(&kvm->mmu_lock);
    800801
     
    804805
    805806        spin_unlock(&kvm->mmu_lock);
     807        up_read(&current->mm->mmap_sem);
    806808        srcu_read_unlock(&kvm->srcu, idx);
    807809}
     
    17601762                return -EFAULT;
    17611763
     1764        down_read(&current->mm->mmap_sem);
    17621765        /*
    17631766         * A memory region could potentially cover multiple VMAs, and any holes
     
    18031806
    18041807                        /* IO region dirty page logging not allowed */
    1805                         if (memslot->flags & KVM_MEM_LOG_DIRTY_PAGES)
    1806                                 return -EINVAL;
     1808                        if (memslot->flags & KVM_MEM_LOG_DIRTY_PAGES) {
     1809                                ret = -EINVAL;
     1810                                goto out;
     1811                        }
    18071812
    18081813                        ret = kvm_phys_addr_ioremap(kvm, gpa, pa,
     
    18161821
    18171822        if (change == KVM_MR_FLAGS_ONLY)
    1818                 return ret;
     1823                goto out;
    18191824
    18201825        spin_lock(&kvm->mmu_lock);
     
    18241829                stage2_flush_memslot(kvm, memslot);
    18251830        spin_unlock(&kvm->mmu_lock);
     1831out:
     1832        up_read(&current->mm->mmap_sem);
    18261833        return ret;
    18271834}
Note: See TracChangeset for help on using the changeset viewer.