Re: [PATCH] jump label: Add MIPS support.

David Daney
2010-10-04T19:06:11Z

On 10/04/2010 10:50 AM, Jason Baron wrote:
> On Mon, Oct 04, 2010 at 10:43:07AM -0700, David Daney wrote:
>> On 10/03/2010 11:15 AM, Rabin Vincent wrote:
>>> On Tue, Sep 28, 2010 at 11:40 PM, David Daney<ddaney@caviumnetworks.com> wrote:
>>>> +void arch_jump_label_text_poke_early(jump_label_t addr)
>>>> +{
>>>> + union mips_instruction *insn_p =
>>>> + (union mips_instruction *)(unsigned long)addr;
>>>> +
>>>> + insn_p->word = 0; /* nop */
>>>> + flush_icache_range((unsigned long)insn_p,
>>>> + (unsigned long)insn_p + sizeof(*insn_p));
>>>> +}
>>>
>>> Can't this function be a no-op on MIPS? This seems to be
>>> used on x86 to patch in the optimal nop instruction, but
>>> on MIPS the optimal/only nop instruction should already
>>> be in place at build time. Same thing for the SPARC
>>> implementation.
>>>
>>
>> Yes, I think you are correct.
>>
>> On MIPS the NOP is already optimal. I will respin the MIPS patch to
>> make arch_jump_label_text_poke_early() be empty.
>>
>> davem wasn't CCed on the original message, so I added him. I would
>> defer to him on the SPARC version.
>>
>>
>
> that's right, arch_jump_label_text_poke_early() can probably be a no-op
> for most arches.
>
> We can also look at adding an empty definition into the generic
> header. So that arches don't have to provide an empty definition.
>

I just sent the patch that does that. It should be showing up in an
In-Box near you soon.

David Daney