lkml.org 
[lkml]   [2010]   [Jul]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCHv2 11/11] writeback: prevent unnecessary bdi threads wakeups
    On Thu, Jul 22, 2010 at 10:41:55AM +1000, Dave Chinner wrote:
    > if (wakeup_bdi) {
    > trace_writeback_wakeup(bdi)
    > spin_lock(&bdi->wb_lock);
    > if (!bdi->wb.task) {{
    > trace_writeback_wakeup_nothread(bdi);
    > wake_up_process(default_backing_dev_info.wb.task);
    > } else
    > wake_up_process(bdi->wb.task);
    > spin_unlock(&bdi->wb_lock);

    That gives us duplicate traces for the first case, what about:

    if (wakeup_bdi) {
    spin_lock(&bdi->wb_lock);
    if (bdi->wb.task) {
    trace_writeback_wake_thread(bdi);
    wake_up_process(bdi->wb.task);
    } else {
    trace_writeback_wake_forker_thread(bdi);
    wake_up_process(default_backing_dev_info.wb.task);
    }
    spin_unlock(&bdi->wb_lock);
    }



    \
     
     \ /
      Last update: 2010-07-22 11:03    [W:0.024 / U:0.240 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site