Thread (126 messages) 126 messages, 10 authors, 2011-02-18
STALE5584d

[PATCH 03/14] ARM: v6k: remove CPU_32v6K dependencies in asm/spinlock.h

From: Dave Martin <hidden>
Date: 2011-01-25 17:33:14
Also in: linux-omap

On Tue, Jan 25, 2011 at 4:59 PM, Russell King - ARM Linux
[off-list ref] wrote:
On Tue, Jan 25, 2011 at 04:43:52PM +0000, Dave Martin wrote:
quoted
A couple of questions on this:

1) I notice these spinlock functions are generally marked inline.

Is that likely to happen in modules? ?If so, there would be a need to
do SMP_ON_UP fixups at module load time -- I don't think that's
currently implemented.
No one should be using the arch_* spinlocks directly. ?The spinlocks
are implemented in out of line code in kernel/spinlock.c
OK--- do think this is something we need a sanity-check for, or does
this fall into to a category of bad driver implementation which will
get thrown out during peer review?
quoted
2) When building with this patch and CONFIG_SMP_ON_UP=y, I've seen
vmlinux link errors like this:

? LD ? ? ?.tmp_vmlinux1
`.exit.text' referenced in section `.alt.smp.init' of
drivers/built-in.o: defined in discarded section `.exit.text' of
drivers/built-in.o
make: *** [.tmp_vmlinux1] Error 1

I don't know whether this is caused by the patch directly or as a
side-effect -- I've only noticed it in the linaro-2.6.37 tree so far.
git bisect indentified this above patch as the first one with the
error in that case.

I don't understand the section discarding logic too well, so I'm not
sure how to fix it for now...
Hmm. ?I don't see how that could happen, unless some driver is going
behind the spinlock APIs, or using our dsb_sev() directly.

I think you need to first track down what's responsible for inserting
architecture spinlock code into drivers.
OK, I'll try and do a bit more digging.  I think I have a better idea
of what to look for now, anyhow.

Cheers
---Dave
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help