lkml.org 
[lkml]   [2004]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    Subject[patch] Real-Time Preemption, -RT-2.6.9-rc4-mm1-U6

    i have released the -U6 Real-Time Preemption patch:

    http://redhat.com/~mingo/realtime-preempt/realtime-preempt-2.6.9-rc4-mm1-U6

    this is a fixes-only release.

    found and fixed the 'big bug' that was probably the one causing
    stability problems for a number of people. There was a small window for
    a task double-free race to occur, causing all sorts of crashes later on.
    This bug could trigger on UP and SMP systems alike, on SMP being a bit
    more frequent.

    Also, a common networking deadlock was found and fixed as well, using
    the deadlock detector.

    Changes since -U5:

    - crash bug: fix task double free caused by irq-preemption of
    do_exit(). This got introduced in -U5 as part of a simplification of
    the zombie-reaping rewrite that the -U series did. That rewrite had an
    unrobustness which got triggered by -U5 in a subtle way, opening up a
    small window at the end of do_exit() for an interrupt-triggered
    preemption to cause a double-free. This could fix some of the crashes
    reported by Rui Nuno Capela, Mark H Johnson.

    - deadlock bug: fix networking deadlock reported by Matthew L Foster.
    Restructured the way the RT-RCU locking of ptype_lock is done - it's
    cleaner and more obvious now (besides being correct). This could also
    fix the deadlock reported by Michal Schmidt.

    - deadlock bug: fix NFS startup breakage related to semaphore abuse,
    patch from Thomas Gleixner.

    - build bug: fix aha152x.c, based on patch from K.R. Foley.

    - build bug: fix compilation error in qla2xxx. (reported by Fernando
    Pablo Lopez-Lezcano and Mark H Johnson)

    - build bug: fix !PREEMPT_REALTIME compilation error. (reported by
    Matthew L Foster)

    - build bug: fix ipmi-watchdog compilation error. (reported by Mark H
    Johnson)

    - tracer fix: if an assert happens within the tracer then we'd get into
    infinite recursion. The fix was to correctly nest tracing on/off
    points.

    - debug enhancement: added a few more asserts to catch underflowing
    atomic counters. (this made the task double-free trigger earlier.)

    - debug enhancement: extended CONFIG_DEBUG_STACKOVERFLOW to be
    mcount()-driven as well. This helps in catching stack overflows much
    more reliably than the do_IRQ() based method.

    to create a -U6 tree from scratch, the patching order is:

    http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.tar.bz2
    + http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.9-rc4.bz2
    + http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.9-rc4/2.6.9-rc4-mm1/2.6.9-rc4-mm1.bz2
    + http://redhat.com/~mingo/realtime-preempt/realtime-preempt-2.6.9-rc4-mm1-U6

    Ingo
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 14:07    [W:2.569 / U:0.104 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site