xen/pass-through: fold host PCI command register writes

The code introduced to address XSA-126 allows simplification of other
code in xen_pt_initfn(): All we need to do is update "cmd" suitably,
as it'll be written back to the host register near the end of the
function anyway.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
Jan Beulich 2015-05-15 13:46:11 +01:00 committed by Stefano Stabellini
parent 00967f4e0b
commit 950fe0aa3f

View File

@ -740,10 +740,7 @@ static int xen_pt_initfn(PCIDevice *d)
machine_irq, pirq, rc);
/* Disable PCI intx assertion (turn on bit10 of devctl) */
xen_host_pci_set_word(&s->real_device,
PCI_COMMAND,
pci_get_word(s->dev.config + PCI_COMMAND)
| PCI_COMMAND_INTX_DISABLE);
cmd |= PCI_COMMAND_INTX_DISABLE;
machine_irq = 0;
s->machine_irq = 0;
} else {
@ -765,9 +762,7 @@ static int xen_pt_initfn(PCIDevice *d)
e_intx, rc);
/* Disable PCI intx assertion (turn on bit10 of devctl) */
xen_host_pci_set_word(&s->real_device, PCI_COMMAND,
*(uint16_t *)(&s->dev.config[PCI_COMMAND])
| PCI_COMMAND_INTX_DISABLE);
cmd |= PCI_COMMAND_INTX_DISABLE;
xen_pt_mapped_machine_irq[machine_irq]--;
if (xen_pt_mapped_machine_irq[machine_irq] == 0) {