lkml.org 
[lkml]   [2008]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[patch, minor] workqueue: consistently use 'err' in __create_workqueue_key()
    From
    Date


    I guess error handling is a bit illogical in __create_workqueue_key().
    Although, it won't cause any real problems.


    ---

    From: Dmitry Adamushko <dmitry.adamushko@gmail.com>
    Subject: workqueue: consistently use 'err' in __create_workqueue_key()

    Fix the logic behind the use of 'err' in the 'for_each_posible_cpu()' loop
    of __create_workqueue_key().

    Signed-off-by: Dmitry Adamushko <dmitry.adamushko@gmail.com>

    diff --git a/kernel/workqueue.c b/kernel/workqueue.c
    index ec7e4f6..738bf05 100644
    --- a/kernel/workqueue.c
    +++ b/kernel/workqueue.c
    @@ -827,7 +827,8 @@ struct workqueue_struct *__create_workqueue_key(const char *name,
    if (singlethread) {
    cwq = init_cpu_workqueue(wq, singlethread_cpu);
    err = create_workqueue_thread(cwq, singlethread_cpu);
    - start_workqueue_thread(cwq, -1);
    + if (!err)
    + start_workqueue_thread(cwq, -1);
    } else {
    cpu_maps_update_begin();
    spin_lock(&workqueue_lock);
    @@ -836,9 +837,11 @@ struct workqueue_struct *__create_workqueue_key(const char *name,

    for_each_possible_cpu(cpu) {
    cwq = init_cpu_workqueue(wq, cpu);
    - if (err || !cpu_online(cpu))
    + if (!cpu_online(cpu))
    continue;
    err = create_workqueue_thread(cwq, cpu);
    + if (err)
    + break;
    start_workqueue_thread(cwq, cpu);
    }
    cpu_maps_update_done();




    \
     
     \ /
      Last update: 2008-07-28 22:45    [W:0.021 / U:0.104 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site