Re: [PATCH v2] spin_lock_nested(): Always evaluate second argument

From: Bart Van Assche
Date: Fri Aug 08 2014 - 06:32:45 EST


On 08/06/14 23:56, David Rientjes wrote:
> On Wed, 6 Aug 2014, Bart Van Assche wrote:
>> diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h
>> index 3f2867f..485d5dc 100644
>> --- a/include/linux/spinlock.h
>> +++ b/include/linux/spinlock.h
>> @@ -197,7 +197,8 @@ static inline void do_raw_spin_unlock(raw_spinlock_t *lock) __releases(lock)
>> _raw_spin_lock_nest_lock(lock, &(nest_lock)->dep_map); \
>> } while (0)
>> #else
>> -# define raw_spin_lock_nested(lock, subclass) _raw_spin_lock(lock)
>> +# define raw_spin_lock_nested(lock, subclass) \
>> + ((void)(subclass), _raw_spin_lock(lock))
>> # define raw_spin_lock_nest_lock(lock, nest_lock) _raw_spin_lock(lock)
>> #endif
>>
>
> I think it would be nice to comment why we're evaluating the subclass when
> CONFIG_DEBUG_LOCK_ALLOC=n so that nobody comes along and unknowingly
> changes it back.
>
> Thanks for posting the updated version and keeping at it!

This morning I received an e-mail from Wu Fengguang reporting that this
patch breaks the build for CONFIG_SMP=n. I will post a third version.

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