Messages in this thread | | | Date | Wed, 14 Feb 2007 23:21:37 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 02/05] Linux Kernel Markers, architecture independant code. |
| |
On Sun, 11 Feb 2007 15:03:24 -0500 Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> wrote:
> Linux Kernel Markers, architecture independant code. > > Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> > > ... > > + > +#ifndef MARK > +#define MARK GEN_MARK > +#define MARK_ENABLE_TYPE GEN_MARK_ENABLE_TYPE > +#define MARK_ENABLE_IMMEDIATE_OFFSET GEN_MARK_ENABLE_IMMEDIATE_OFFSET > +#endif
Also perhaps this nastiness can go away once each architecture has asm/marker.h?
> +#ifdef MARK_POLYMORPHIC
What's this? Is it commented somewhere? (It should be...)
> +static int marker_set_ins_enable(void *address, char enable) > +{ > +#ifdef CONFIG_X86_32 > + return arch_marker_set_ins_enable(address, enable); > +#else > + char newi[MARK_ENABLE_IMMEDIATE_OFFSET+1]; > + int size = MARK_ENABLE_IMMEDIATE_OFFSET+sizeof(MARK_ENABLE_TYPE); > + > + memcpy(newi, address, size); > + MARK_ENABLE(&newi[0]) = enable; > + memcpy(address, newi, size); > + flush_icache_range((unsigned long)address, size); > + return 0; > +#endif //CONFIG_X86_32 > +}
eww. Can we put a suitable arch_marker_set_ins_enable() into each arch's marker.h?
> +#else > +static int marker_set_ins_enable(void *address, char enable) > +{ > + return -EPERM; > +} > +#endif //MARK_POLYMORPHIC > + > > ... >
- 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/
| |