>I have checked the ioemu-remote source that is downloaded when
>building xen unstable, it seems to be missing this patch:
> <snip>
> This patch fixes the segmentation fault on assigning device without
> Power Management Capability Structure.
************************************************
Where to get <snip> for patching Xen Unstable ?
Boris.
************************************************
> Please apply this patch after applying the following patch I have
> submitted.
[PATCH] ioemu: Cleanup the code of PCI passthrough.
Thanks,
--
Yuji Shimada.
Signed-off-by: Yuji Shimada <shimada-yxb@xxxxxxxxxxxxxxx>
diff --git
a/hw/pass-through.c b/hw/pass-through.c
index 855f69c..305ea59 100644
--- a/hw/pass-through.c
+++ b/hw/pass-through.c
@@ -1165,7 +1165,7 @@ static void pt_pci_write_config(PCIDevice *d,
uint32_t address, uint32_t val,
}
/* check power state transition flags */
- if (pm_state->flags & PT_FLAG_TRANSITING)
+ if (pm_state != NULL && pm_state->flags &
PT_FLAG_TRANSITING)
/* can't accept untill previous power state transition is
completed.
* so finished previous request here.
*/
@@ -1280,7 +1280,7 @@ out:
if (!ret)
PT_LOG("Error: pci_write_block failed. return
value[%d].\n", ret);
- if (pm_state->flags & PT_FLAG_TRANSITING)
+ if (pm_state != NULL && pm_state->flags &
PT_FLAG_TRANSITING)
/* set QEMUTimer */
qemu_mod_timer(pm_state->pm_timer,
(qemu_get_clock(rt_clock) + pm_state->pm_delay));
@@ -1337,7 +1337,7 @@ static uint32_t pt_pci_read_config(PCIDevice *d,
uint32_t address, int len)
}
/* check power state transition flags */
- if (pm_state->flags & PT_FLAG_TRANSITING)
+ if (pm_state != NULL && pm_state->flags &
PT_FLAG_TRANSITING)
/* can't accept untill previous power state transition is
completed.
* so finished previous request here.
*/
From where ? <snip>