Re: [Qemu-devel] [PATCH v2 2/2] vnc: threaded VNC server

2010-06-06 Thread Avi Kivity
On 06/04/2010 04:20 PM, Corentin Chary wrote: +if (vnc_trylock_display(vd)) { +vd-timer_interval = VNC_REFRESH_INTERVAL_BASE; +qemu_mod_timer(vd-timer, qemu_get_clock(rt_clock) + + vd-timer_interval); +return; +} + has_dirty =

Re: [Qemu-devel] [PATCH v2 2/2] vnc: threaded VNC server

2010-06-06 Thread Corentin Chary
On Sun, Jun 6, 2010 at 4:11 PM, Avi Kivity a...@redhat.com wrote: On 06/04/2010 04:20 PM, Corentin Chary wrote: +    if (vnc_trylock_display(vd)) { +        vd-timer_interval = VNC_REFRESH_INTERVAL_BASE; +        qemu_mod_timer(vd-timer, qemu_get_clock(rt_clock) + +                      

Re: [Qemu-devel] [PATCH v2 2/2] vnc: threaded VNC server

2010-06-06 Thread Avi Kivity
On 06/06/2010 05:48 PM, Corentin Chary wrote: On Sun, Jun 6, 2010 at 4:11 PM, Avi Kivitya...@redhat.com wrote: On 06/04/2010 04:20 PM, Corentin Chary wrote: +if (vnc_trylock_display(vd)) { +vd-timer_interval = VNC_REFRESH_INTERVAL_BASE; +qemu_mod_timer(vd-timer,

Re: [Qemu-devel] [PATCH v2 2/2] vnc: threaded VNC server

2010-06-06 Thread Corentin Chary
On Sun, Jun 6, 2010 at 4:53 PM, Avi Kivity a...@redhat.com wrote: On 06/06/2010 05:48 PM, Corentin Chary wrote: On Sun, Jun 6, 2010 at 4:11 PM, Avi Kivitya...@redhat.com  wrote: On 06/04/2010 04:20 PM, Corentin Chary wrote: +    if (vnc_trylock_display(vd)) { +        vd-timer_interval =

[Qemu-devel] [PATCH v2 2/2] vnc: threaded VNC server

2010-06-04 Thread Corentin Chary
Implement a threaded VNC server using the producer-consumer model. The main thread will push encoding jobs (a list a rectangles to update) in a queue, and the VNC worker thread will consume that queue and send framebuffer updates to the output buffer. The threaded VNC server can be enabled with