[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] pcie: Fix bug in pcie_ext_cap_set_next
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH] pcie: Fix bug in pcie_ext_cap_set_next |
Date: |
Tue, 25 Dec 2012 14:18:20 +0200 |
On Tue, Dec 18, 2012 at 10:36:29PM +0100, Knut Omang wrote:
> Upper 16 bits of the PCIe Extended Capability Header was truncated during
> update,
> also breaking pcie_add_capability.
>
> Signed-off-by: Knut Omang <address@hidden>
Applied, thanks.
> ---
> hw/pcie.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/pcie.c b/hw/pcie.c
> index 7c92f19..fa260af 100644
> --- a/hw/pcie.c
> +++ b/hw/pcie.c
> @@ -494,7 +494,7 @@ uint16_t pcie_find_capability(PCIDevice *dev, uint16_t
> cap_id)
>
> static void pcie_ext_cap_set_next(PCIDevice *dev, uint16_t pos, uint16_t
> next)
> {
> - uint16_t header = pci_get_long(dev->config + pos);
> + uint32_t header = pci_get_long(dev->config + pos);
> assert(!(next & (PCI_EXT_CAP_ALIGN - 1)));
> header = (header & ~PCI_EXT_CAP_NEXT_MASK) |
> ((next << PCI_EXT_CAP_NEXT_SHIFT) & PCI_EXT_CAP_NEXT_MASK);
> --
> 1.7.11.7
>