lkml.org 
[lkml]   [2006]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [openib-general] Re: [git patch review 1/4] IPoIB: Don't start send-only joins while multicast thread is stopped
    Quoting r. Roland Dreier <rdreier@cisco.com>:
    > Subject: Re: [openib-general] Re: [git patch review 1/4] IPoIB: Don't start send-only joins while multicast thread is stopped
    >
    > Michael> Basically, its as Andrew said: the lock around clear_bit
    > Michael> is there to ensure that ipoib_mcast_send isnt running
    > Michael> already when we stop the thread. Thats why test_bit has
    > Michael> to be inside the lock, too.
    >
    > Makes sense I guess. If I'm understanding correctly, the lock isn't
    > really there to serialize the bit ops, but rather to make sure
    > ipoib_mcast_send() won't do anything after we clear the bit.

    Right. Thats one way to put it.

    > Does that mean that there's no reason to take the lock around the set_bit()?

    Ugh, sorry, I dont really remember why I put it there.

    I guess I just have easier time reasoning about locks than barriers and atomic
    operations. "bit is protected by priv->lock" is a simple rule, and we are not on
    data path here. The fact that the race went unnoticed for a while validates
    this approach in my eyes.

    I guess longer term we will replace mcast_mutex with priv->lock anyway, so it
    doesnt matter much.

    --
    Michael S. Tsirkin
    Staff Engineer, Mellanox Technologies
    -
    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: 2006-02-12 17:58    [W:0.021 / U:158.672 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site