[lkml]   [2010]   [Apr]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCHSET UPDATED] workqueue: concurrency managed workqueue, take#4

    I've just updated the git tree.

    git:// review-cmwq

    The original take#4 is now in branch review-cmwq-3. This will
    probably become take#5 soonish but I don't have access to my test
    machines for some days, so this is sort of take#5 pre-release.
    Changes are...

    * The patchset is rebased on cpu_stop + sched/core. cpu_stop already
    reimplements stop_machine so that it doesn't use RT workqueue, so
    this patchset simply drops RT wq support.

    * Oleg's clear work->data patch moved at the head of the queue and now
    lives in the for-next branch which will be pushed to mainline on the
    next merge window.

    * David reported a bug where fscache show_work function caused panic
    by accessing already dead object. This turned out to be race
    condition between put() after execution and show(). If the put()
    after work execution is the last put, the object gets destroyed;
    however, show() could be called to describe the work is actually
    finished ending up dereferencing already freed object. Fixed by
    deferring put() to another work if debugfs support is enabled so
    that the object stays alive while the work is executing. Due to
    lack of test setup, I couldn't actually test this yet. I'll verify
    it works as soon as I have access to my stuff.

    * Applied Oleg's review.

    * Comments updated as suggested.

    * work_flags_to_color() replaced w/ get_work_color()

    * nr_cwqs_to_flush bug which could cause premature flush completion

    * Replace rewind + list_for_each_entry_safe_continue() w/

    * Don't directly write to *work_data_bits() but use __set_bit()

    * Fixed cpu hotplug exclusion bug.



     \ /
      Last update: 2010-04-25 10:15    [W:0.020 / U:1.372 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site