]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Provided more documentation for memory_cache_shared, including DEFAULT_DOC.
authorAlex Rousskov <rousskov@measurement-factory.com>
Fri, 9 Sep 2011 17:42:35 +0000 (11:42 -0600)
committerAlex Rousskov <rousskov@measurement-factory.com>
Fri, 9 Sep 2011 17:42:35 +0000 (11:42 -0600)
src/cf.data.pre

index 7d7a432a76b6443523f143d186a01cb5c1a08d1c..d2adc20bdb8f3ac7df4b6fb2a6dad1b5477e79ba 100644 (file)
@@ -2579,13 +2579,27 @@ COMMENT: on|off
 TYPE: YesNoNone
 LOC: Config.memShared
 DEFAULT: none
+DEFAULT_DOC: "on" where supported if doing memory caching with multiple SMP workers.
 DOC_START
        Controls whether the memory cache is shared among SMP workers.
 
+       The shared memory cache is meant to occupy cache_mem bytes and replace
+       the non-shared memory cache, although some entities may still be
+       cached locally by workers for now (e.g., internal and in-transit
+       objects may be served from a local memory cache even if shared memory
+       caching is enabled).
+
        By default, the memory cache is shared if and only if all of the
-       following conditions are satisfied: SMP mode is enabled using multiple
-       worker processes, cache_mem is positive, and Squid was built with a
-       compiler that supports GCC-style atomic operations.
+       following conditions are satisfied: Squid runs in SMP mode with
+       multiple workers, cache_mem is positive, and Squid environment
+       supports required IPC primitives (e.g., POSIX shared memory segments
+       and GCC-style atomic operations).
+
+       To avoid blocking locks, shared memory uses opportunistic algorithms
+       that do not guarantee that every cachable entity that could have been
+       shared among SMP workers will actually be shared.
+
+       Currently, entities exceeding 32KB in size cannot be shared.
 DOC_END
 
 NAME: memory_cache_mode