Re: [tip:perf/core] jump label: x86 support

Mathieu Desnoyers
2010-10-18T12:48:32Z

* Peter Zijlstra (peterz@infradead.org) wrote:
> On Fri, 2010-09-24 at 09:01 +0000, tip-bot for Jason Baron wrote:
> > +void arch_jump_label_transform(struct jump_entry *entry,
> > + enum jump_label_type type)
> > +{
> > + union jump_code_union code;
> > +
> > + if (type == JUMP_LABEL_ENABLE) {
> > + code.jump = 0xe9;
> > + code.offset = entry->target -
> > + (entry->code + JUMP_LABEL_NOP_SIZE);
> > + } else
> > + memcpy(&code, ideal_nop5, JUMP_LABEL_NOP_SIZE);
> > + get_online_cpus();
> > + mutex_lock(&text_mutex);
> > + text_poke_smp((void *)entry->code, &code, JUMP_LABEL_NOP_SIZE);
> > + mutex_unlock(&text_mutex);
> > + put_online_cpus();
> > +}
>
> hpa, mathieu, what's the status of stop_machine less text poking?
> Because the above basically means we have to disable architecture
> jump_label support for -rt.

hpa got an unofficial answer from Intel OTC, that states the stop_machine-less
text poking procedure is valid.

http://lkml.org/lkml/2010/1/12/300

We are still waiting for the "official" blessing though.

Thanks,

Mathieu

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.