lkml.org 
[lkml]   [2007]   [Oct]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] PHYLIB: IRQ event workqueue handling fixes
    On Tue, 16 Oct 2007, Jarek Poplawski wrote:

    > Yes, it's all right here. Sorry for bothering - I should've found this
    > by myself.

    Ah, no problem -- even with the right keys you may sometimes get lost in
    the results.

    > I've still some doubts about this possible enable_irq() after
    > free_irq(). If it's the only handler the status would be changed again
    > and at least some of this code in check_irq_resend() would be run, but
    > I can miss something again or/and this doesn't matter, as well.

    Well, enable_irq() and disable_irq() themselves are nesting, so they are
    not a problem. OTOH, free_irq() does not seem to maintain the depth count
    correctly, which looks like a bug to me and which could trigger regardless
    of whether flush_scheduled_work() or cancel_work_sync() was called.

    The reason is CONFIG_DEBUG_SHIRQ which makes a simulated interrupt event
    be sent at the end of free_irq(). It looks like a problem that is
    complementary to one I signalled here:

    http://lkml.org/lkml/2007/9/12/82

    with respect to request_irq(), where, similarly, such an interrupt event
    is sent at the beginning. It looks like nobody was concerned back then,
    but perhaps it is time to do a better investigation now and propose a
    solution.

    I'll think about it and thanks for your inquisitiveness that has led to
    these conclusions.

    Maciej
    -
    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: 2007-10-16 19:23    [W:3.097 / U:0.344 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site