From: Jan Beulich Date: Wed, 10 Jun 2015 13:17:55 +0000 (+0100) Subject: xen/pt: correctly handle PM status bit X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=5c6e4c043793bee997cd396de544bc9bcf5e74d2;p=qemu-xen-4.2-testing.git xen/pt: correctly handle PM status bit xen_pt_pmcsr_reg_write() needs an adjustment to deal with the RW1C nature of the not passed through bit 15 (PCI_PM_CTRL_PME_STATUS). This is a preparatory patch for XSA-131. Signed-off-by: Jan Beulich Reviewed-by: Stefano Stabellini --- diff --git a/hw/pass-through.c b/hw/pass-through.c index 98a7df6e3..34aa15490 100644 --- a/hw/pass-through.c +++ b/hw/pass-through.c @@ -3784,7 +3784,8 @@ static int pt_pmcsr_reg_write(struct pt_dev *ptdev, /* create value for writing to I/O device register */ throughable_mask = ~reg->emu_mask & valid_mask; - *value = PT_MERGE_VALUE(*value, dev_value, throughable_mask); + *value = PT_MERGE_VALUE(*value, dev_value & ~PCI_PM_CTRL_PME_STATUS, + throughable_mask); if (!ptdev->power_mgmt) return 0;