On Tue, 2013-11-05 at 19:57 +0100, Peter Zijlstra wrote:On Tue, Nov 05, 2013 at 09:42:39AM -0800, Tim Chen wrote:I also made the suggestion originally of keeping both lock and unlock in+ * The _raw_mcs_spin_lock() function should not be called directly. Instead,So why keep it in the header at all?
+ * users should call mcs_spin_lock().
*/
-static noinline
-void mcs_spin_lock(struct mcs_spinlock **lock, struct mcs_spinlock *node)
+static inline
+void _raw_mcs_spin_lock(struct mcs_spinlock **lock, struct mcs_spinlock *node)
{
struct mcs_spinlock *prev;
mcs_spinlock.c. Wonder if Waiman decides to keep them in header
because in-lining the unlock function makes execution a bit faster?
Tim