06 Jul, 2016

1 commit


05 May, 2015

1 commit


21 Aug, 2013

1 commit


30 Jul, 2013

1 commit

  • dbf2576e37 ("workqueue: make all workqueues non-reentrant") made
    WQ_NON_REENTRANT no-op but the following patches didn't remove the
    flag or update the documentation. Let's mark the flag deprecated and
    update the documentation accordingly.

    Signed-off-by: Tejun Heo

    Tejun Heo
     

14 Jul, 2012

1 commit

  • WQ_HIGHPRI was implemented by queueing highpri work items at the head
    of the global worklist. Other than queueing at the head, they weren't
    handled differently; unfortunately, this could lead to execution
    latency of a few seconds on heavily loaded systems.

    Now that workqueue code has been updated to deal with multiple
    worker_pools per global_cwq, this patch reimplements WQ_HIGHPRI using
    a separate worker_pool. NR_WORKER_POOLS is bumped to two and
    gcwq->pools[0] is used for normal pri work items and ->pools[1] for
    highpri. Highpri workers get -20 nice level and has 'H' suffix in
    their names. Note that this change increases the number of kworkers
    per cpu.

    POOL_HIGHPRI_PENDING, pool_determine_ins_pos() and highpri chain
    wakeup code in process_one_work() are no longer used and removed.

    This allows proper prioritization of highpri work items and removes
    high execution latency of highpri work items.

    v2: nr_running indexing bug in get_pool_nr_running() fixed.

    v3: Refreshed for the get_pool_nr_running() update in the previous
    patch.

    Signed-off-by: Tejun Heo
    Reported-by: Josh Hunt
    LKML-Reference:
    Cc: Tony Luck
    Cc: Fengguang Wu

    Tejun Heo
     

31 Mar, 2011

1 commit


17 Feb, 2011

1 commit

  • There are two spellings in use for 'freeze' + 'able' - 'freezable' and
    'freezeable'. The former is the more prominent one. The latter is
    mostly used by workqueue and in a few other odd places. Unify the
    spelling to 'freezable'.

    Signed-off-by: Tejun Heo
    Reported-by: Alan Stern
    Acked-by: "Rafael J. Wysocki"
    Acked-by: Greg Kroah-Hartman
    Acked-by: Dmitry Torokhov
    Cc: David Woodhouse
    Cc: Alex Dubov
    Cc: "David S. Miller"
    Cc: Steven Whitehouse

    Tejun Heo
     

11 Oct, 2010

1 commit

  • Add WQ_MEM_RECLAIM flag which currently maps to WQ_RESCUER, mark
    WQ_RESCUER as internal and replace all external WQ_RESCUER usages to
    WQ_MEM_RECLAIM.

    This makes the API users express the intent of the workqueue instead
    of indicating the internal mechanism used to guarantee forward
    progress. This is also to make it cleaner to add more semantics to
    WQ_MEM_RECLAIM. For example, if deemed necessary, memory reclaim
    workqueues can be made highpri.

    This patch doesn't introduce any functional change.

    Signed-off-by: Tejun Heo
    Cc: Jeff Garzik
    Cc: Dave Chinner
    Cc: Steven Whitehouse

    Tejun Heo
     

13 Sep, 2010

1 commit

  • Update copyright notice and add Documentation/workqueue.txt.

    Randy Dunlap, Dave Chinner: misc fixes.

    Signed-off-by: Tejun Heo
    Reviewed-By: Florian Mickler
    Cc: Ingo Molnar
    Cc: Christoph Lameter
    Cc: Randy Dunlap
    Cc: Dave Chinner

    Tejun Heo