mirror of https://github.com/xqemu/xqemu.git
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:
parent
00967f4e0b
commit
950fe0aa3f
|
@ -740,10 +740,7 @@ static int xen_pt_initfn(PCIDevice *d)
|
||||||
machine_irq, pirq, rc);
|
machine_irq, pirq, rc);
|
||||||
|
|
||||||
/* Disable PCI intx assertion (turn on bit10 of devctl) */
|
/* Disable PCI intx assertion (turn on bit10 of devctl) */
|
||||||
xen_host_pci_set_word(&s->real_device,
|
cmd |= PCI_COMMAND_INTX_DISABLE;
|
||||||
PCI_COMMAND,
|
|
||||||
pci_get_word(s->dev.config + PCI_COMMAND)
|
|
||||||
| PCI_COMMAND_INTX_DISABLE);
|
|
||||||
machine_irq = 0;
|
machine_irq = 0;
|
||||||
s->machine_irq = 0;
|
s->machine_irq = 0;
|
||||||
} else {
|
} else {
|
||||||
|
@ -765,9 +762,7 @@ static int xen_pt_initfn(PCIDevice *d)
|
||||||
e_intx, rc);
|
e_intx, rc);
|
||||||
|
|
||||||
/* Disable PCI intx assertion (turn on bit10 of devctl) */
|
/* Disable PCI intx assertion (turn on bit10 of devctl) */
|
||||||
xen_host_pci_set_word(&s->real_device, PCI_COMMAND,
|
cmd |= PCI_COMMAND_INTX_DISABLE;
|
||||||
*(uint16_t *)(&s->dev.config[PCI_COMMAND])
|
|
||||||
| PCI_COMMAND_INTX_DISABLE);
|
|
||||||
xen_pt_mapped_machine_irq[machine_irq]--;
|
xen_pt_mapped_machine_irq[machine_irq]--;
|
||||||
|
|
||||||
if (xen_pt_mapped_machine_irq[machine_irq] == 0) {
|
if (xen_pt_mapped_machine_irq[machine_irq] == 0) {
|
||||||
|
|
Loading…
Reference in New Issue