xen-devel
[Xen-devel] Re: [PATCH RFC V1 02/11] qemu-timer: Introduce qemu_run_one_
On Tue, 4 Oct 2011, Jan Kiszka wrote:
> On 2011-10-04 16:51, Anthony PERARD wrote:
> > Used by the Xen PCI Passthrough code to run the timer about the power
> > state transition.
> >
> > Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> > ---
> > qemu-timer.c | 15 +++++++++++++++
> > qemu-timer.h | 3 +++
> > 2 files changed, 18 insertions(+), 0 deletions(-)
> >
> > diff --git a/qemu-timer.c b/qemu-timer.c
> > index 46dd483..15e659b 100644
> > --- a/qemu-timer.c
> > +++ b/qemu-timer.c
> > @@ -1163,3 +1163,18 @@ int qemu_calculate_timeout(void)
> > return 1000;
> > }
> >
> > +/* run the specified timer */
> > +void qemu_run_one_timer(QEMUTimer *ts)
> > +{
> > + uint64_t current_time;
> > +
> > + /* remove timer from the list before calling the callback */
> > + qemu_del_timer(ts);
> > +
> > + while ((current_time = qemu_get_clock_ms(rt_clock)) < ts->expire_time)
> > + /* sleep until the expire time */
> > + usleep((ts->expire_time - current_time) * 1000);
> > +
> > + /* run the callback */
> > + ts->cb(ts->opaque);
> > +}
>
> This looks funny. I can't imagine that this could ever fit into the
> standard (asynchronous) QEMU execution model for I/O. Keep it private to
> Xen?
I haven't finished reading the series yet, but this caught my eye
because it is particularly ugly; we should get rid of it.
Considering that on a real device if you try to write to the PCI config
space before a power transition is completed the write just fails, maybe
we should do the same here and remove the timer.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [PATCH RFC V1 00/11] Xen PCI Passthrough, Anthony PERARD
- [Xen-devel] [PATCH RFC V1 01/11] Introduce HostPCIDevice to access a pci device on the host., Anthony PERARD
- [Xen-devel] [PATCH RFC V1 04/11] pci_regs: Fix value of PCI_EXP_TYPE_RC_EC., Anthony PERARD
- [Xen-devel] [PATCH RFC V1 03/11] pci_ids: Add INTEL_82599_VF id., Anthony PERARD
- [Xen-devel] [PATCH RFC V1 02/11] qemu-timer: Introduce qemu_run_one_timer, Anthony PERARD
- [Xen-devel] [PATCH RFC V1 05/11] pci_regs: Add PCI_EXP_TYPE_PCIE_BRIDGE, Anthony PERARD
- [Xen-devel] [PATCH RFC V1 06/11] pci.c: Add pci_check_bar_overlap, Anthony PERARD
- [Xen-devel] [PATCH RFC V1 07/11] host-pci-device: Add host_pci_find_ext_cap_offset, Anthony PERARD
- [Xen-devel] [PATCH RFC V1 08/11] Introduce Xen PCI Passthrough, qdevice (1/3), Anthony PERARD
- [Xen-devel] [PATCH RFC V1 11/11] config/make: Introduce --enable-xen-pci-passthrough, built it., Anthony PERARD
- [Xen-devel] [PATCH RFC V1 10/11] Introduce Xen PCI Passthrough, MSI (3/3), Anthony PERARD
|
|
|