Messages in this thread | | | Subject | Re: [PATCH] i386 spinlocks should use the full 32 bits, not only 8 bits | From | Arjan van de Ven <> | Date | Mon, 17 Oct 2005 09:20:03 +0200 |
| |
On Mon, 2005-10-17 at 00:03 -0700, Andrew Morton wrote: > Eric Dumazet <dada1@cosmosbay.com> wrote: > > > > 2) The unlock sequence is not anymore inlined. It appears twice or three times > > in the kernel. > > Is that intentional though? With <randon .config> my mm/swapfile.i has an > unreferenced > > static inline void __raw_spin_unlock(raw_spinlock_t *lock) > { > __asm__ __volatile__( > "movb $1,%0" :"=m" (lock->slock) : : "memory" > ); > } > > which either a) shouldn't be there or b) should be referenced. > > Ingo, can you confirm that x86's spin_unlock is never inlined? If so, > what's my __raw_spin_unlock() doing there?
I would really want this one inlined! A movb is a much shorter code sequence than a call (esp if you factor in argument setup). De-inlining to save space is nice and all, but it can go too far....
- 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/
| |