]> Git Repo - qemu.git/commitdiff
qcow2: Set the default cache-clean-interval to 10 minutes
authorLeonid Bloch <[email protected]>
Wed, 26 Sep 2018 16:04:46 +0000 (19:04 +0300)
committerKevin Wolf <[email protected]>
Mon, 1 Oct 2018 10:51:12 +0000 (12:51 +0200)
The default cache-clean-interval is set to 10 minutes, in order to lower
the overhead of the qcow2 caches (before the default was 0, i.e.
disabled).

* For non-Linux platforms the default is kept at 0, because
  cache-clean-interval is not supported there yet.

Signed-off-by: Leonid Bloch <[email protected]>
Reviewed-by: Alberto Garcia <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>
block/qcow2.c
block/qcow2.h
docs/qcow2-cache.txt
qapi/block-core.json
qemu-options.hx

index 20b50932694adee73e762b4b5d61d48527391adf..95e1c98daa538a8915a6d0b861f1614033798534 100644 (file)
@@ -944,7 +944,7 @@ static int qcow2_update_options_prepare(BlockDriverState *bs,
     /* New interval for cache cleanup timer */
     r->cache_clean_interval =
         qemu_opt_get_number(opts, QCOW2_OPT_CACHE_CLEAN_INTERVAL,
-                            s->cache_clean_interval);
+                            DEFAULT_CACHE_CLEAN_INTERVAL);
 #ifndef CONFIG_LINUX
     if (r->cache_clean_interval != 0) {
         error_setg(errp, QCOW2_OPT_CACHE_CLEAN_INTERVAL
index 0f0e3534bf8c0f629d0af8258d50c4bb8e1dec19..ba430316b9cd447ad6011c6937bc57a6b7982f44 100644 (file)
 
 #ifdef CONFIG_LINUX
 #define DEFAULT_L2_CACHE_MAX_SIZE S_32MiB
+#define DEFAULT_CACHE_CLEAN_INTERVAL 600  /* seconds */
 #else
 #define DEFAULT_L2_CACHE_MAX_SIZE S_8MiB
+/* Cache clean interval is currently available only on Linux, so must be 0 */
+#define DEFAULT_CACHE_CLEAN_INTERVAL 0
 #endif
 
 #define DEFAULT_CLUSTER_SIZE S_64KiB
 
-
 #define QCOW2_OPT_LAZY_REFCOUNTS "lazy-refcounts"
 #define QCOW2_OPT_DISCARD_REQUEST "pass-discard-request"
 #define QCOW2_OPT_DISCARD_SNAPSHOT "pass-discard-snapshot"
index 1fcc0658b23a1513910d4338e05d6217e2878ae1..59358b816f6630afeb3ea92f72331fb543838bda 100644 (file)
@@ -210,8 +210,8 @@ This example removes all unused cache entries every 15 minutes:
 
    -drive file=hd.qcow2,cache-clean-interval=900
 
-If unset, the default value for this parameter is 0 and it disables
-this feature.
+If unset, the default value for this parameter is 600. Setting it to 0
+disables this feature.
 
 Note that this functionality currently relies on the MADV_DONTNEED
 argument for madvise() to actually free the memory. This is a
index ac3b48ee54e2aa444af7c7c088b1a39d02157334..46dac23d2fbe338fed4701916381c519db783b82 100644 (file)
 #
 # @cache-clean-interval:  clean unused entries in the L2 and refcount
 #                         caches. The interval is in seconds. The default value
-#                         is 0 and it disables this feature (since 2.5)
+#                         is 600, and 0 disables this feature. (since 2.5)
+#
 # @encrypt:               Image decryption options. Mandatory for
 #                         encrypted images, except when doing a metadata-only
 #                         probe of the image. (since 2.10)
index 14aee78c6cd9ec57448dfdbbb4749a4c63f713ae..52d9d9f06dc3588e0d69357b1e91237537b0756d 100644 (file)
@@ -747,7 +747,7 @@ it which is not used for the L2 cache)
 
 @item cache-clean-interval
 Clean unused entries in the L2 and refcount caches. The interval is in seconds.
-The default value is 0 and it disables this feature.
+The default value is 600. Setting it to 0 disables this feature.
 
 @item pass-discard-request
 Whether discard requests to the qcow2 device should be forwarded to the data
This page took 0.047942 seconds and 4 git commands to generate.