On Thu, Jan 16, 2014 at 04:08:24PM -0800, Tim Chen wrote: > copy to kernel/locking/mcs_spinlock.c > index 96f14299..44fb092 100644 > --- a/include/linux/mcs_spinlock.h > +++ b/kernel/locking/mcs_spinlock.c > +/* > + * asm/processor.h may define arch_mutex_cpu_relax(). > + * If it is not defined, cpu_relax() will be used. > + */ > +#include <asm/barrier.h> > +#include <asm/cmpxchg.h> > +#include <asm/processor.h> > +#include <linux/compiler.h> > +#include <linux/mcs_spinlock.h> > +#include <linux/export.h> > > +#ifndef arch_mutex_cpu_relax > +# define arch_mutex_cpu_relax() cpu_relax() > +#endif Why not include <linux/mutex.h> to obtain arch_mutex_cpu_relax() ? Now you have duplicated the definition, and in a file unrelated to its name 'mutex'. Now, arguable, we should maybe look at renaming the thing now that its used outside of mutices, but whatever we do, I think its sane to keep a single 'generic' definition. -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html