]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - Documentation/workqueue.txt
Merge branch 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6
[mv-sheeva.git] / Documentation / workqueue.txt
index e4498a2872c37a0b3b156ddc7ad7135d030d224d..996a27d9b8db8414da1751d92083dd11e91cff01 100644 (file)
@@ -196,11 +196,11 @@ resources, scheduled and executed.
        suspend operations.  Work items on the wq are drained and no
        new work item starts execution until thawed.
 
        suspend operations.  Work items on the wq are drained and no
        new work item starts execution until thawed.
 
-  WQ_RESCUER
+  WQ_MEM_RECLAIM
 
        All wq which might be used in the memory reclaim paths _MUST_
 
        All wq which might be used in the memory reclaim paths _MUST_
-       have this flag set.  This reserves one worker exclusively for
-       the execution of this wq under memory pressure.
+       have this flag set.  The wq is guaranteed to have at least one
+       execution context regardless of memory pressure.
 
   WQ_HIGHPRI
 
 
   WQ_HIGHPRI
 
@@ -356,11 +356,11 @@ If q1 has WQ_CPU_INTENSIVE set,
 
 6. Guidelines
 
 
 6. Guidelines
 
-* Do not forget to use WQ_RESCUER if a wq may process work items which
-  are used during memory reclaim.  Each wq with WQ_RESCUER set has one
-  rescuer thread reserved for it.  If there is dependency among
-  multiple work items used during memory reclaim, they should be
-  queued to separate wq each with WQ_RESCUER.
+* Do not forget to use WQ_MEM_RECLAIM if a wq may process work items
+  which are used during memory reclaim.  Each wq with WQ_MEM_RECLAIM
+  set has an execution context reserved for it.  If there is
+  dependency among multiple work items used during memory reclaim,
+  they should be queued to separate wq each with WQ_MEM_RECLAIM.
 
 * Unless strict ordering is required, there is no need to use ST wq.
 
 
 * Unless strict ordering is required, there is no need to use ST wq.
 
@@ -368,12 +368,13 @@ If q1 has WQ_CPU_INTENSIVE set,
   recommended.  In most use cases, concurrency level usually stays
   well under the default limit.
 
   recommended.  In most use cases, concurrency level usually stays
   well under the default limit.
 
-* A wq serves as a domain for forward progress guarantee (WQ_RESCUER),
-  flush and work item attributes.  Work items which are not involved
-  in memory reclaim and don't need to be flushed as a part of a group
-  of work items, and don't require any special attribute, can use one
-  of the system wq.  There is no difference in execution
-  characteristics between using a dedicated wq and a system wq.
+* A wq serves as a domain for forward progress guarantee
+  (WQ_MEM_RECLAIM, flush and work item attributes.  Work items which
+  are not involved in memory reclaim and don't need to be flushed as a
+  part of a group of work items, and don't require any special
+  attribute, can use one of the system wq.  There is no difference in
+  execution characteristics between using a dedicated wq and a system
+  wq.
 
 * Unless work items are expected to consume a huge amount of CPU
   cycles, using a bound wq is usually beneficial due to the increased
 
 * Unless work items are expected to consume a huge amount of CPU
   cycles, using a bound wq is usually beneficial due to the increased