libvirt/src/util
Michal Privoznik 597fe3cee6 daemon: Create priority workers pool
This patch annotates APIs with low or high priority.
In low set MUST be all APIs which might eventually access monitor
(and thus block indefinitely). Other APIs may be marked as high
priority. However, some must be (e.g. domainDestroy).

For high priority calls (HPC), there are some high priority workers
(HPW) created in the pool. HPW can execute only HPC, although normal
worker can process any call regardless priority. Therefore, only those
APIs which are guaranteed to end in reasonable small amount of time
can be marked as HPC.

The size of this HPC pool is static, because HPC are expected to end
quickly, therefore jobs assigned to this pool will be served quickly.
It can be configured in libvirtd.conf via prio_workers variable.
Default is set to 5.

To mark API with low or high priority, append priority:{low|high} to
it's comment in src/remote/remote_protocol.x. This is similar to
autogen|skipgen. If not marked, the generator assumes low as default.
2011-09-05 18:14:08 +02:00
..
authhelper.c esx: Move username and password helper functions to authhelper.c 2010-03-16 20:15:32 +01:00
authhelper.h esx: Move username and password helper functions to authhelper.c 2010-03-16 20:15:32 +01:00
bitmap.c maint: rename virBufferVSprintf to virBufferAsprintf 2011-05-05 13:47:40 -06:00
bitmap.h Put <stdbool.h> into internal.h so it is available everywhere 2011-02-24 12:04:06 +00:00
bridge.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
bridge.h Allow brAddTap to create a tap device that is down 2011-02-17 13:36:22 -05:00
buf.c buf: protect against integer overflow 2011-06-24 16:01:56 -06:00
buf.h buf: add virBufferVasprintf 2011-05-05 13:48:19 -06:00
cgroup.c Don't leak memory if a cgroup is mounted multiple times 2011-08-31 17:51:09 +01:00
cgroup.h cgroup: Implement cpu.cfs_period_us and cpu.cfs_quota_us tuning API 2011-07-21 17:11:12 +08:00
command.c Move pidfile functions into util/virpidfile.{c,h} 2011-08-12 20:37:00 +01:00
command.h command: move all docs into .c file 2011-07-21 10:34:51 -06:00
conf.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
conf.h esx: Allow '-' in VMX entry names 2010-09-23 10:37:10 +02:00
dnsmasq.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
dnsmasq.h network: Don't ignore errors in dnsmasq config file creation 2011-06-29 02:04:55 +02:00
ebtables.c Move virRun, virExec*, virFork to util/command 2011-06-07 14:06:11 -04:00
ebtables.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
event_poll.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
event_poll.h Move event code out of the daemon/ into src/util/ 2011-03-07 14:16:13 +00:00
event.c events: Correct virEventAddTimeout docs 2011-06-21 10:08:47 -04:00
event.h Promote virEvent*Handle/Timeout to public API 2011-06-21 10:08:47 -04:00
hash.c libvirt,logging: cleanup VIR_XXX0() 2011-05-11 12:41:14 -06:00
hash.h tests: More unit tests for internal hash APIs 2011-04-27 15:32:30 +02:00
hooks.c utils: More useful error message for hook script failure 2011-07-29 22:40:47 +08:00
hooks.h qemu: add two hook script events "prepare" and "release" 2011-03-22 21:12:36 +08:00
hostusb.c util: avoid PATH_MAX-sized array 2011-06-22 17:13:58 -06:00
hostusb.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
interface.c maint: fix some compilation issues on non-linux platforms 2011-08-16 13:54:15 -04:00
interface.h interface: Add functions to get sriov PF/VF relationship of a net interface 2011-08-16 11:59:00 -04:00
iohelper.c save: let iohelper work on O_DIRECT fds 2011-07-21 16:24:08 -06:00
iptables.c Remove virConnectPtr from virRaiseErrorFull 2011-04-17 07:22:23 +02:00
iptables.h Update iptables.c to also support ip6tables. 2010-12-23 15:54:32 -05:00
json.c Remove bogus warning message in JSON code 2011-06-30 18:04:01 +01:00
json.h json: Fix *GetBoolean functions 2011-05-09 14:02:13 +02:00
keymaps.csv util: Add keymaps.csv 2011-07-21 15:02:52 +08:00
logging.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
logging.h util: reject unknown flags, and prefer unsigned flags 2011-07-13 09:04:54 -06:00
macvtap.c macvtap: Fix getPhysfn to get the PF of a direct attach network interface 2011-08-16 11:59:00 -04:00
macvtap.h bandwidth: Implement functions to enable and disable QoS 2011-07-25 13:49:55 +08:00
memory.c build: fix cygwin strerror_r failure 2011-02-11 12:32:17 -07:00
memory.h build: make VIR_FREE do some type checking 2011-04-25 10:20:18 -06:00
netlink.c build: fix compilation on systems missing libnl and new includes 2011-06-23 11:54:11 -04:00
netlink.h build: fix compilation on systems missing libnl and new includes 2011-06-23 11:54:11 -04:00
network.c bandwidth: Integrate bandwidth into portgroups 2011-07-27 10:26:25 +02:00
network.h bandwidth: Integrate bandwidth into portgroups 2011-07-27 10:26:25 +02:00
pci.c maint: fix some compilation issues on non-linux platforms 2011-08-16 13:54:15 -04:00
pci.h pci: Add helper functions for sriov devices 2011-08-16 11:59:00 -04:00
processinfo.c build: update gnulib 2010-05-06 14:35:38 -06:00
processinfo.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
qparams.c qparams.c: do not skip va_end, twice 2010-02-19 11:52:04 +01:00
qparams.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
sexpr.c sexpr: Improve serialization error reporting 2011-05-27 15:31:33 +02:00
sexpr.h Use virBufferPtr for sexpr2string instead of manual buffer handling 2011-04-05 09:14:59 +02:00
stats_linux.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
stats_linux.h build: consistently indent preprocessor directives 2010-03-09 19:22:28 +01:00
storage_file.c build: silence coverity false positives 2011-08-02 16:39:01 -06:00
storage_file.h storage: Avoid memory leak on metadata fetching 2011-07-14 16:39:42 +02:00
sysinfo.c sysinfo: Don't try to run dmidecode on archs missing it 2011-07-20 17:14:24 +02:00
sysinfo.h sysinfo: cleanup function/struct names. 2011-06-27 09:41:03 -06:00
threadpool.c daemon: Create priority workers pool 2011-09-05 18:14:08 +02:00
threadpool.h daemon: Create priority workers pool 2011-09-05 18:14:08 +02:00
threads-pthread.c threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads-pthread.h threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads-win32.c threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads-win32.h threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
threads.c build: avoid pthreads-win32 on mingw 2010-06-10 06:05:31 -06:00
threads.h threads: add one-time initialization support 2011-04-25 08:53:09 -06:00
util.c util: only fchown newly created files in virFileOpenAs 2011-08-24 15:32:00 -04:00
util.h build: simplify use of verify 2011-08-30 09:23:20 -06:00
uuid.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
uuid.h uuid: annotate non-null requirements 2011-06-08 05:28:20 -06:00
viraudit.c build: rename files.h to virfile.h 2011-07-21 10:34:51 -06:00
viraudit.h maint: rename virtaudit to match file contents 2011-07-12 07:24:43 -06:00
virfile.c maint: fix some compilation issues on non-linux platforms 2011-08-16 13:54:15 -04:00
virfile.h Add virFileLock and virFileUnlock APIs 2011-08-12 20:37:00 +01:00
virkeycode-mapgen.py Fix keymap used to talk with QEMU 2011-08-26 14:18:57 +01:00
virkeycode.c Fix keymap used to talk with QEMU 2011-08-26 14:18:57 +01:00
virkeycode.h util: add virtkeycode module 2011-07-21 15:57:47 +08:00
virpidfile.c build: fix virpidfile on mingw 2011-08-17 11:51:24 -06:00
virpidfile.h Add some APIs which use locking for crashsafe pidfile handling 2011-08-12 20:37:00 +01:00
virterror_internal.h build: avoid ATTRIBUTE_UNUSED in headers 2011-07-14 07:51:30 -06:00
virterror.c storage: Add fs pool formatting 2011-09-02 21:16:58 +08:00
xml.c xml: add another convenience function 2011-08-19 09:13:54 -06:00
xml.h xml: add another convenience function 2011-08-19 09:13:54 -06:00