lkml.org 
[lkml]   [2011]   [Mar]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [GIT PULL] Core block IO bits for 2.6.39 - early Oops
    On 2011-03-25 14:09, Markus Trippelsdorf wrote:
    > On 2011.03.25 at 13:44 +0100, Jens Axboe wrote:
    >> On 2011-03-25 10:57, Markus Trippelsdorf wrote:
    >>>
    >>> Reverting it solves all problems here.
    >>
    >> Can you try this one?
    >
    > This one doesn't help; I still get the same BUG.
    >
    > BTW if you're having trouble reproducing this, here is the only non
    > stock xfs option that I use on the affected partitions:
    >
    > noatime,logbsize=262144

    This?

    diff --git a/block/blk-core.c b/block/blk-core.c
    index 59b5c00..121df87 100644
    --- a/block/blk-core.c
    +++ b/block/blk-core.c
    @@ -1197,6 +1197,7 @@ static bool attempt_plug_merge(struct task_struct *tsk, struct request_queue *q,
    if (!plug)
    goto out;

    + preempt_disable();
    list_for_each_entry_reverse(rq, &plug->list, queuelist) {
    int el_ret;

    @@ -1214,6 +1215,7 @@ static bool attempt_plug_merge(struct task_struct *tsk, struct request_queue *q,
    break;
    }
    }
    + preempt_enable();
    out:
    return ret;
    }
    @@ -1322,7 +1324,9 @@ get_rq:
    * Debug flag, kill later
    */
    req->cmd_flags |= REQ_ON_PLUG;
    + preempt_disable();
    list_add_tail(&req->queuelist, &plug->list);
    + preempt_enable();
    drive_stat_acct(req, 1);
    } else {
    spin_lock_irq(q->queue_lock);
    --
    Jens Axboe



    \
     
     \ /
      Last update: 2011-03-25 15:13    [W:0.034 / U:0.068 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site