Skip to content
  1. Jun 05, 2016
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.7-rc1-2' of git://git.linaro.org/people/ulf.hansson/mmc · 95b46aeb
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "MMC core:
         - Fix/restore behaviour when selecting bus width for (e)MMC
      
        MMC host:
         - sunxi: Fix eMMC HS-DDR modes on Allwinner A80"
      
      * tag 'mmc-v4.7-rc1-2' of git://git.linaro.org/people/ulf.hansson/mmc:
        mmc: sunxi: Re-enable eMMC HS-DDR modes on Allwinner A80
        mmc: sunxi: Fix DDR MMC timings for A80
        mmc: fix mmc mode selection for HS-DDR and higher
      95b46aeb
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · b2d5ad82
      Linus Torvalds authored
      Pull btrfs fixes from Chris Mason:
       "The important part of this pull is Filipe's set of fixes for btrfs
        device replacement.  Filipe fixed a few issues seen on the list and a
        number he found on his own"
      
      * 'for-linus-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: deal with duplciates during extent_map insertion in btrfs_get_extent
        Btrfs: fix race between device replace and read repair
        Btrfs: fix race between device replace and discard
        Btrfs: fix race between device replace and chunk allocation
        Btrfs: fix race setting block group back to RW mode during device replace
        Btrfs: fix unprotected assignment of the left cursor for device replace
        Btrfs: fix race setting block group readonly during device replace
        Btrfs: fix race between device replace and block group removal
        Btrfs: fix race between readahead and device replace/removal
      b2d5ad82
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · a3021a59
      Linus Torvalds authored
      Pull Ceph fixes from Sage Weil:
       "We have a few follow-up fixes for the libceph refactor from Ilya, and
        then some cephfs + fscache fixes from Zheng.
      
        The first two FS-Cache patches are acked by David Howells and deemed
        trivial enough to go through our tree.  The rest fix some issues with
        the ceph fscache handling (disable cache for inodes opened for write,
        and simplify the revalidation logic accordingly, dropping the
        now-unnecessary work queue)"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        ceph: use i_version to check validity of fscache
        ceph: improve fscache revalidation
        ceph: disable fscache when inode is opened for write
        ceph: avoid unnecessary fscache invalidation/revlidation
        ceph: call __fscache_uncache_page() if readpages fails
        FS-Cache: make check_consistency callback return int
        FS-Cache: wake write waiter after invalidating writes
        libceph: use %s instead of %pE in dout()s
        libceph: put request only if it's done in handle_reply()
        libceph: change ceph_osdmap_flag() to take osdc
      a3021a59
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · eb10a7b7
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "Two fixes for problems introduced recently (ACPICA and the ACPI
        backlight driver) and one fix for an older issue that prevents at
        least one system from booting.
      
        Specifics:
      
         - Fix an incorrect check introduced by recent ACPICA changes which
           causes problems with booting KVM guests to happen, among other
           things (Lv Zheng).
      
         - Fix a backlight issue introduced by recent changes to the ACPI
           video driver (Aaron Lu).
      
         - Fix the ACPI processor initialization which attempts to register an
           IO region without checking if that really is necessary and
           sometimes prevents drivers loaded subsequently from registering
           their resources which leads to boot issues (Rafael Wysocki)"
      
      * tag 'acpi-4.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / processor: Avoid reserving IO regions too early
        ACPICA / Hardware: Fix old register check in acpi_hw_get_access_bit_width()
        ACPI / Thermal / video: fix max_level incorrect value
      eb10a7b7
    • Linus Torvalds's avatar
      Merge tag 'pm-4.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 50163203
      Linus Torvalds authored
      Pull power management fixes from Rafael Wysocki:
       "Two fixes for problems introduced recently in the cpufreq core and the
        intel_pstate driver.
      
        Specifics:
      
         - Fix a silly mistake related to the clamp_val() usage in a function
           added by a recent commit (Rafael Wysocki).
      
         - Reduce the log level of an annoying message added to intel_pstate
           during the recent merge window (Srinivas Pandruvada)"
      
      * tag 'pm-4.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: Fix clamp_val() usage in cpufreq_driver_fast_switch()
        cpufreq: intel_pstate: Downgrade print level for _PPC
      50163203
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · d46d0256
      Linus Torvalds authored
      Merge various fixes from Andrew Morton:
       "10 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm, page_alloc: recalculate the preferred zoneref if the context can ignore memory policies
        mm, page_alloc: reset zonelist iterator after resetting fair zone allocation policy
        mm, oom_reaper: do not use siglock in try_oom_reaper()
        mm, page_alloc: prevent infinite loop in buffered_rmqueue()
        checkpatch: reduce git commit description style false positives
        mm/z3fold.c: avoid modifying HEADLESS page and minor cleanup
        memcg: add RCU locking around css_for_each_descendant_pre() in memcg_offline_kmem()
        mm: check the return value of lookup_page_ext for all call sites
        kdump: fix dmesg gdbmacro to work with record based printk
        mm: fix overflow in vm_map_ram()
      d46d0256
  2. Jun 04, 2016
  3. Jun 03, 2016
    • Thomas Gleixner's avatar
      Merge tag 'irqchip-4.7-rc1' of... · 2eec3707
      Thomas Gleixner authored
      Merge tag 'irqchip-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/urgent
      
      Merge irqchip updates from Marc Zyngier:
      
      - A number of embarassing buglets (GICv3, PIC32)
      - A more substential errata workaround for Cavium's GICv3 ITS
        (kept for post-rc1 due to its dependency on NUMA)
      2eec3707
    • Mark Rutland's avatar
      arm64: fix alignment when RANDOMIZE_TEXT_OFFSET is enabled · aed7eb83
      Mark Rutland authored
      With ARM64_64K_PAGES and RANDOMIZE_TEXT_OFFSET enabled, we hit the
      following issue on the boot:
      
      kernel BUG at arch/arm64/mm/mmu.c:480!
      Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
      Modules linked in:
      CPU: 0 PID: 0 Comm: swapper Not tainted 4.6.0 #310
      Hardware name: ARM Juno development board (r2) (DT)
      task: ffff000008d58a80 ti: ffff000008d30000 task.ti: ffff000008d30000
      PC is at map_kernel_segment+0x44/0xb0
      LR is at paging_init+0x84/0x5b0
      pc : [<ffff000008c450b4>] lr : [<ffff000008c451a4>] pstate: 600002c5
      
      Call trace:
      [<ffff000008c450b4>] map_kernel_segment+0x44/0xb0
      [<ffff000008c451a4>] paging_init+0x84/0x5b0
      [<ffff000008c42728>] setup_arch+0x198/0x534
      [<ffff000008c40848>] start_kernel+0x70/0x388
      [<ffff000008c401bc>] __primary_switched+0x30/0x74
      
      Commit 7eb90f2f
      
       ("arm64: cover the .head.text section in the .text
      segment mapping") removed the alignment between the .head.text and .text
      sections, and used the _text rather than the _stext interval for mapping
      the .text segment.
      
      Prior to this commit _stext was always section aligned and didn't cause
      any issue even when RANDOMIZE_TEXT_OFFSET was enabled. Since that
      alignment has been removed and _text is used to map the .text segment,
      we need ensure _text is always page aligned when RANDOMIZE_TEXT_OFFSET
      is enabled.
      
      This patch adds logic to TEXT_OFFSET fuzzing to ensure that the offset
      is always aligned to the kernel page size. To ensure this, we rely on
      the PAGE_SHIFT being available via Kconfig.
      
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Reported-by: default avatarSudeep Holla <sudeep.holla@arm.com>
      Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Fixes: 7eb90f2f
      
       ("arm64: cover the .head.text section in the .text segment mapping")
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      aed7eb83
    • Mark Rutland's avatar
      arm64: move {PAGE,CONT}_SHIFT into Kconfig · 030c4d24
      Mark Rutland authored
      
      
      In some cases (e.g. the awk for CONFIG_RANDOMIZE_TEXT_OFFSET) we would
      like to make use of PAGE_SHIFT outside of code that can include the
      usual header files.
      
      Add a new CONFIG_ARM64_PAGE_SHIFT for this, likewise with
      ARM64_CONT_SHIFT for consistency.
      
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Sudeep Holla <sudeep.holla@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      030c4d24
    • Mark Rutland's avatar
      arm64: mm: dump: log span level · 48dd73c5
      Mark Rutland authored
      
      
      The page table dump code logs spans of entries at the same level
      (pgd/pud/pmd/pte) which have the same attributes. While we log the
      (decoded) attributes, we don't log the level, which leaves the output
      ambiguous and/or confusing in some cases.
      
      For example:
      
      0xffff800800000000-0xffff800980000000           6G       RW NX SHD AF        BLK UXN MEM/NORMAL
      
      If using 4K pages, this may describe a span of 6 1G block entries at the
      PGD/PUD level, or 3072 2M block entries at the PMD level.
      
      This patch adds the page table level to each output line, removing this
      ambiguity. For the example above, this will produce:
      
      0xffffffc800000000-0xffffffc980000000           6G PUD       RW NX SHD AF        BLK UXN MEM/NORMAL
      
      When 3 level tables are in use, and we use the asm-generic/nopud.h
      definitions, the dump code treats each entry in the PGD as a 1 element
      table at the PUD level, and logs spans as being PUDs, which can be
      confusing. To counteract this, the "PUD" mnemonic is replaced with "PGD"
      when CONFIG_PGTABLE_LEVELS <= 3. Likewise for "PMD" when
      CONFIG_PGTABLE_LEVELS <= 2.
      
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Huang Shijie <shijie.huang@arm.com>
      Cc: Laura Abbott <labbott@fedoraproject.org>
      Cc: Steve Capper <steve.capper@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      48dd73c5
    • Mark Rutland's avatar
      arm64: update stale PAGE_OFFSET comment · a13e3a5b
      Mark Rutland authored
      Commit ab893fb9 ("arm64: introduce KIMAGE_VADDR as the virtual
      base of the kernel region") logically split KIMAGE_VADDR from
      PAGE_OFFSET, and since commit f9040773
      
       ("arm64: move kernel
      image to base of vmalloc area") the two have been distinct values.
      
      Unfortunately, neither commit updated the comment above these
      definitions, which now erroneously states that PAGE_OFFSET is the start
      of the kernel image rather than the start of the linear mapping.
      
      This patch fixes said comment, and introduces an explanation of
      KIMAGE_VADDR.
      
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      a13e3a5b
    • Julien Grall's avatar
      drivers/perf: arm_pmu: Avoid leaking pmu->irq_affinity on error · 5988a363
      Julien Grall authored
      
      
      pmu->irq_affinity will not be freed if an error occurred within
      arm_pmu_device_probe after of_pmu_irq_cfg has been called.
      
      Note that in the case of_pmu_irq_cfg is returning an error,
      pmu->irq_affinity will not be set, but it should be NULL as pmu was
      kzalloc'd. Therefore the result kfree(NULL) is benign.
      
      Signed-off-by: default avatarJulien Grall <julien.grall@arm.com>
      Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      5988a363
    • Julien Grall's avatar
      drivers/perf: arm_pmu: Defer the setting of __oprofile_cpu_pmu · 0f254c76
      Julien Grall authored
      
      
      The global variable __oprofile_cpu_pmu is set before the PMU is fully
      initialized. If an error occurs before the end of the initialization,
      the PMU will be freed and the variable will contain an invalid pointer.
      
      This will result in a kernel crash when perf will be used.
      
      Fix it by moving the setting of __oprofile_cpu_pmu when the PMU is fully
      initialized (i.e when it is no longer possible to fail).
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarJulien Grall <julien.grall@arm.com>
      Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      0f254c76
    • Julien Grall's avatar
      drivers/perf: arm_pmu: Fix reference count of a device_node in of_pmu_irq_cfg · 121323ae
      Julien Grall authored
      
      
      The only function called by of_pmu_irq_cfg that will increment the
      reference count on dn is of_parse_phandle.
      
      Each time we successfully parse a possible CPU from an
      interrupt-affinity property, we increment the refcount of that CPU node
      once via of_parse_handle. After validating the CPU is possible, we
      decrement the refcount once. Subsequently, we decrement the refcount
      again, either as part of an early break if we don't have a matching SPI,
      or as part of the end of the loop body.
      
      This will lead to decrementing twice the refcounnt.
      Remove the second pairs of call to of_node_put as nobody is using dn
      between the first and second call to of_node_put.
      
      Signed-off-by: default avatarJulien Grall <julien.grall@arm.com>
      Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      121323ae
    • Mark Rutland's avatar
      arm64: report CPU number in bad_mode · 8051f4d1
      Mark Rutland authored
      
      
      If we take an exception we don't expect (e.g. SError), we report this in
      the bad_mode handler with pr_crit. Depending on the configured log
      level, we may or may not log additional information in functions called
      subsequently. Notably, the messages in dump_stack (including the CPU
      number) are printed with KERN_DEFAULT and may not appear.
      
      Some exceptions have an IMPLEMENTATION DEFINED ESR_ELx.ISS encoding, and
      knowing the CPU number is crucial to correctly decode them. To ensure
      that this is always possible, we should log the CPU number along with
      the ESR_ELx value, so we are not reliant on subsequent logs or
      additional printk configuration options.
      
      This patch logs the CPU number in bad_mode such that it is possible for
      a developer to decode these exceptions, provided access to sufficient
      documentation.
      
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Reported-by: default avatarAl Grant <Al.Grant@arm.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Dave Martin <dave.martin@arm.com>
      Cc: Robin Murphy <robin.murphy@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      8051f4d1
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 4340fa55
      Linus Torvalds authored
      Pull KVM fixes from Radim Krčmář:
       "ARM:
         - two fixes for 4.6 vgic [Christoffer] (cc stable)
      
         - six fixes for 4.7 vgic [Marc]
      
        x86:
         - six fixes from syzkaller reports [Paolo] (two of them cc stable)
      
         - allow OS X to boot [Dmitry]
      
         - don't trust compilers [Nadav]"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: x86: fix OOPS after invalid KVM_SET_DEBUGREGS
        KVM: x86: avoid vmalloc(0) in the KVM_SET_CPUID
        KVM: irqfd: fix NULL pointer dereference in kvm_irq_map_gsi
        KVM: fail KVM_SET_VCPU_EVENTS with invalid exception number
        KVM: x86: avoid vmalloc(0) in the KVM_SET_CPUID
        kvm: x86: avoid warning on repeated KVM_SET_TSS_ADDR
        KVM: Handle MSR_IA32_PERF_CTL
        KVM: x86: avoid write-tearing of TDP
        KVM: arm/arm64: vgic-new: Removel harmful BUG_ON
        arm64: KVM: vgic-v3: Relax synchronization when SRE==1
        arm64: KVM: vgic-v3: Prevent the guest from messing with ICC_SRE_EL1
        arm64: KVM: Make ICC_SRE_EL1 access return the configured SRE value
        KVM: arm/arm64: vgic-v3: Always resample level interrupts
        KVM: arm/arm64: vgic-v2: Always resample level interrupts
        KVM: arm/arm64: vgic-v3: Clear all dirty LRs
        KVM: arm/arm64: vgic-v2: Clear all dirty LRs
      4340fa55
    • Joshua Henderson's avatar
      irqchip/irq-pic32-evic: Fix bug with external interrupts. · 0de6b997
      Joshua Henderson authored
      
      
      The wrong external interrupt bits are being set, offset by 1.
      
      Signed-off-by: default avatarJoshua Henderson <digitalpeer@digitalpeer.com>
      Signed-off-by: default avatarPurna Chandra Mandal <purna.mandal@microchip.com>
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      0de6b997
    • Ganapatrao Kulkarni's avatar
      irqchip/gicv3-its: numa: Enable workaround for Cavium thunderx erratum 23144 · fbf8f40e
      Ganapatrao Kulkarni authored
      
      
      The erratum fixes the hang of ITS SYNC command by avoiding inter node
      io and collections/cpu mapping on thunderx dual-socket platform.
      
      This fix is only applicable for Cavium's ThunderX dual-socket platform.
      
      Reviewed-by: default avatarRobert Richter <rrichter@cavium.com>
      Signed-off-by: default avatarGanapatrao Kulkarni <gkulkarni@caviumnetworks.com>
      Signed-off-by: default avatarRobert Richter <rrichter@cavium.com>
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      fbf8f40e
    • Andrew Jones's avatar
      irqchip/gic-v3: Fix quiescence check in gic_enable_redist · cf1d9d11
      Andrew Jones authored
      
      
      Make sure the two sides of the bitwise operation are bool.
      
      Signed-off-by: default avatarAndrew Jones <drjones@redhat.com>
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      cf1d9d11
    • Andrew Jones's avatar
      irqchip/gic-v3: Fix copy+paste mistakes in defines · fab0cdc3
      Andrew Jones authored
      
      
      ICC_SGI1R_AFFINITY_{2,3}_MASK are unused, which is good
      because they were defined with the wrong shifts.
      
      Signed-off-by: default avatarAndrew Jones <drjones@redhat.com>
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      fab0cdc3
    • Marc Zyngier's avatar
      irqchip/gic-v3: Fix ICC_SGI1R_EL1.INTID decoding mask · dd5f1b04
      Marc Zyngier authored
      
      
      The INTID mask is wrong, and is made a signed value, which has
      nteresting effects in the KVM emulation. Let's sanitize it.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      dd5f1b04
  4. Jun 02, 2016
    • Paolo Bonzini's avatar
      KVM: x86: fix OOPS after invalid KVM_SET_DEBUGREGS · d14bdb55
      Paolo Bonzini authored
      
      
      MOV to DR6 or DR7 causes a #GP if an attempt is made to write a 1 to
      any of bits 63:32.  However, this is not detected at KVM_SET_DEBUGREGS
      time, and the next KVM_RUN oopses:
      
         general protection fault: 0000 [#1] SMP
         CPU: 2 PID: 14987 Comm: a.out Not tainted 4.4.9-300.fc23.x86_64 #1
         Hardware name: LENOVO 2325F51/2325F51, BIOS G2ET32WW (1.12 ) 05/30/2012
         [...]
         Call Trace:
          [<ffffffffa072c93d>] kvm_arch_vcpu_ioctl_run+0x141d/0x14e0 [kvm]
          [<ffffffffa071405d>] kvm_vcpu_ioctl+0x33d/0x620 [kvm]
          [<ffffffff81241648>] do_vfs_ioctl+0x298/0x480
          [<ffffffff812418a9>] SyS_ioctl+0x79/0x90
          [<ffffffff817a0f2e>] entry_SYSCALL_64_fastpath+0x12/0x71
         Code: 55 83 ff 07 48 89 e5 77 27 89 ff ff 24 fd 90 87 80 81 0f 23 fe 5d c3 0f 23 c6 5d c3 0f 23 ce 5d c3 0f 23 d6 5d c3 0f 23 de 5d c3 <0f> 23 f6 5d c3 0f 0b 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00
         RIP  [<ffffffff810639eb>] native_set_debugreg+0x2b/0x40
          RSP <ffff88005836bd50>
      
      Testcase (beautified/reduced from syzkaller output):
      
          #include <unistd.h>
          #include <sys/syscall.h>
          #include <string.h>
          #include <stdint.h>
          #include <linux/kvm.h>
          #include <fcntl.h>
          #include <sys/ioctl.h>
      
          long r[8];
      
          int main()
          {
              struct kvm_debugregs dr = { 0 };
      
              r[2] = open("/dev/kvm", O_RDONLY);
              r[3] = ioctl(r[2], KVM_CREATE_VM, 0);
              r[4] = ioctl(r[3], KVM_CREATE_VCPU, 7);
      
              memcpy(&dr,
                     "\x5d\x6a\x6b\xe8\x57\x3b\x4b\x7e\xcf\x0d\xa1\x72"
                     "\xa3\x4a\x29\x0c\xfc\x6d\x44\x00\xa7\x52\xc7\xd8"
                     "\x00\xdb\x89\x9d\x78\xb5\x54\x6b\x6b\x13\x1c\xe9"
                     "\x5e\xd3\x0e\x40\x6f\xb4\x66\xf7\x5b\xe3\x36\xcb",
                     48);
              r[7] = ioctl(r[4], KVM_SET_DEBUGREGS, &dr);
              r[6] = ioctl(r[4], KVM_RUN, 0);
          }
      
      Reported-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: default avatarRadim Krčmář <rkrcmar@redhat.com>
      d14bdb55