lkml.org 
[lkml]   [2010]   [Feb]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH 2/3] sched: enforce per-cpu utilization limits on runtime balancing
    From
    Date
    On Tue, 2010-02-23 at 19:56 +0100, Fabio Checconi wrote:
    > +static inline void double_spin_lock(raw_spinlock_t *lock1,
    > + raw_spinlock_t *lock2)
    > + __acquires(lock1)
    > + __acquires(lock2)
    > +{
    > + if (lock1 < lock2) {
    > + raw_spin_lock(lock1);
    > + raw_spin_lock_nested(lock2, SINGLE_DEPTH_NESTING);
    > + } else {
    > + raw_spin_lock(lock2);
    > + raw_spin_lock_nested(lock1, SINGLE_DEPTH_NESTING);
    > + }
    > +}
    > +
    > +static inline void double_spin_unlock(raw_spinlock_t *lock1,
    > + raw_spinlock_t *lock2)
    > + __releases(lock1)
    > + __releases(lock2)
    > +{
    > + raw_spin_unlock(lock1);
    > + lock_set_subclass(&lock2->dep_map, 0, _RET_IP_);
    > + raw_spin_unlock(lock2);
    > +}

    If you release both there is no need to re-set the subclass.



    \
     
     \ /
      Last update: 2010-02-25 22:47    [W:0.020 / U:34.540 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site