From: "Daniel P. Berrange" <berrange@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel@nongnu.org, Peter Xu <peterx@redhat.com>
Subject: Re: [Qemu-devel] [PULL 08/51] chardev: introduce qemu_chr_timeout_add_ms()
Date: Tue, 16 Jan 2018 14:43:11 +0000 [thread overview]
Message-ID: <20180116144311.GG1521@redhat.com> (raw)
In-Reply-To: <1516112253-14480-9-git-send-email-pbonzini@redhat.com>
On Tue, Jan 16, 2018 at 03:16:50PM +0100, Paolo Bonzini wrote:
> From: Peter Xu <peterx@redhat.com>
>
> It's a replacement of g_timeout_add[_seconds]() for chardevs. Chardevs
> now can have dedicated gcontext, we should always bind chardev tasks
> onto those gcontext rather than the default main context. Since there
> are quite a few of g_timeout_add[_seconds]() callers, a new function
> qemu_chr_timeout_add_ms() is introduced.
FYI the point of using g_timeout_add_seconds() is that it allow the
glib event loop to be more efficient. It ensures that all timers
which second granularity are dispatched on the same iteration of
the main loop. IOW, if you have 10 timers registered with
g_timeout_add_seconds() the main loop wakes up once a second and
runs all 10 of them. If you have 10 timers registered with g_timeout_add
the main loop wakes up 10 times a second, at a different time for each
timer.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2018-01-16 14:43 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-16 14:16 [Qemu-devel] [PULL v4 00/51] Misc patches for 2018-01-12 Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 01/51] scsi-generic: Add share-rw option Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 02/51] scsi: fix scsi_convert_sense crash when in_buf == NULL && in_len == 0 Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 03/51] pc: fail memory hot-plug/unplug with -no-acpi and Q35 machine type Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 04/51] hpet: recover timer offset correctly Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 05/51] i386/cpu/kvm: look at PMU's CPUID before setting MSRs Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 06/51] chardev: use backend chr context when watch for fe Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 07/51] chardev: let g_idle_add() be with chardev gcontext Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 08/51] chardev: introduce qemu_chr_timeout_add_ms() Paolo Bonzini
2018-01-16 14:43 ` Daniel P. Berrange [this message]
2018-01-16 15:07 ` Paolo Bonzini
2018-01-17 16:21 ` Marc-André Lureau
2018-01-18 5:00 ` Peter Xu
2018-01-16 14:16 ` [Qemu-devel] [PULL 09/51] build-sys: fix qemu-ga -pthread linking Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 10/51] build-sys: silence make by default or V=0 Paolo Bonzini
2018-01-23 15:38 ` Daniel P. Berrange
2018-01-23 16:08 ` Marc-Andre Lureau
2018-01-23 17:05 ` Daniel P. Berrange
2018-01-16 14:16 ` [Qemu-devel] [PULL 11/51] build-sys: add a rule to print a variable Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 12/51] build-sys: compile with -Og or -O1 when --enable-debug Paolo Bonzini
2018-03-02 18:48 ` Peter Maydell
2018-03-02 21:04 ` Alex Bennée
2018-03-06 10:33 ` Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 13/51] tests/docker: add some sanitizers to fedora dockerfile Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 14/51] tests/docker: add test-debug Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 15/51] tests: fix check-qobject leak Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 16/51] vl: fix direct firmware directories leak Paolo Bonzini
2018-01-16 14:16 ` [Qemu-devel] [PULL 17/51] readline: add a free function Paolo Bonzini
2018-02-02 0:00 ` Alex Williamson
2018-02-02 0:10 ` Paolo Bonzini
2018-02-02 9:05 ` Greg Kurz
2018-01-16 14:17 ` [Qemu-devel] [PULL 18/51] tests: fix migration-test leak Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 19/51] crypto: fix stack-buffer-overflow error Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 20/51] qemu-config: fix leak in query-command-line-options Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 21/51] tests: fix qmp-test leak Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 22/51] tests: fix coroutine leak in /basic/entered Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 23/51] mips: fix potential fopen(NULL,...) Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 24/51] disas/s390: fix global-buffer-overflow Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 25/51] scsi-disk: release AioContext in unaligned WRITE SAME case Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 26/51] tests/boot-serial-test: Add tests for microblaze boards Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 27/51] tests/boot-serial-test: Add a test for the moxiesim machine Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 28/51] tests/boot-serial-test: Add support for the raspi2 machine Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 29/51] target/i386: move hflags update code to a function Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 30/51] target/i386: hax: change to use x86_update_hflags Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 31/51] target/i386: hax: Move x86_update_hflags Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 32/51] target-i386: update hflags on Hypervisor.framework Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 33/51] scripts/qemu-gdb: add simple tcg lock status helper Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 34/51] scripts/qemu-gdb/timers.py: new helper to dump timer state Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 35/51] icount: fixed saving/restoring of icount warp timers Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 36/51] cpus: unify qemu_*_wait_io_event Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 37/51] irq: fix memory leak Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 38/51] net: Drop unusual use of do { } while (0); Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 39/51] mips: Tweak location of ';' in macros Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 40/51] chardev: Use goto/label instead of do/break/while(0) Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 41/51] chardev: Clean up previous patch indentation Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 42/51] tests: Avoid 'do/while(false); ' in vhost-user-bridge Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 43/51] maint: Fix macros with broken 'do/while(0); ' usage Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 44/51] checkpatch: Enforce proper do/while (0) style Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 45/51] cpu_physical_memory_sync_dirty_bitmap: Another alignment fix Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 46/51] find_ram_offset: Add comments and tracing Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 47/51] find_ram_offset: Align ram_addr_t allocation on long boundaries Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 48/51] block/iscsi: fix initialization of iTask in iscsi_co_get_block_status Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 49/51] cpu: flush TB cache when loading VMState Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 50/51] util/qemu-thread-*: add qemu_lock, locked and unlock trace events Paolo Bonzini
2018-01-16 14:17 ` [Qemu-devel] [PULL 51/51] scripts/analyse-locks-simpletrace.py: script to analyse lock times Paolo Bonzini
2018-01-16 15:30 ` [Qemu-devel] [PULL v4 00/51] Misc patches for 2018-01-12 no-reply
2018-01-16 17:36 ` Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180116144311.GG1521@redhat.com \
--to=berrange@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peterx@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).