Tony Lindgren wrote: > Also, I wonder if the change __kuser_get_tls is safe? > > + ldr r0, [pc, #(16 - 8)] @ TLS set at 0xffff0ff0? > + cmp r0, #0 @ assume hw TLS if not set > + mrceq p15, 0, r0, c13, c0, 3 @ read TLS register You cannot assume the TLS value is non-zero, because it's provided by userspace to use however it wants. It doesn't even have to be an address. I'm thinking, why not an alternative() macro like on x86, which is a very nice way to describe run-time patches of one or a few instructions which depend on arch feature bits. Then all that switch_to() logic could be made the size it was before. An alternative() macro could make a lot of other chip-dependent calls smaller too, i.e. all those which dispatch through function pointers at present for cache flushing etc - they could become direct calls, or an inline instruction or two when possible. -- Jamie -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html