Re: [patch 1/4] Linux Kernel Markers - Architecture Independent Code

Mathieu Desnoyers
2007-09-19T11:37:48Z

* Mathieu Desnoyers (mathieu.desnoyers@polymtl.ca) wrote:
> The marker activation functions sits in kernel/marker.c. A hash table is used
> to keep track of the registered probes and armed markers, so the markers within
> a newly loaded module that should be active can be activated at module load
> time.
>
> marker_query has been removed. marker_get_first, marker_get_next and
> marker_release should be used as iterators on the markers.
>
> Changelog:
> - markers_mutex now nests inside module_mutex rather than the opposite.
> - Iteration on modules is now done in module.c.
> - module_mutex is not exported anymore.
>
[...]
> Index: linux-2.6-lttng/include/asm-generic/vmlinux.lds.h
> ===================================================================
> --- linux-2.6-lttng.orig/include/asm-generic/vmlinux.lds.h 2007-09-14 10:11:18.000000000 -0400
> +++ linux-2.6-lttng/include/asm-generic/vmlinux.lds.h 2007-09-14 10:11:31.000000000 -0400
> @@ -12,7 +12,11 @@
> /* .data section */
> #define DATA_DATA \
> *(.data) \
> - *(.data.init.refok)
> + *(.data.init.refok) \
> + . = ALIGN(8); \
> + VMLINUX_SYMBOL(__start___markers) = .; \
> + *(__markers) \
> + VMLINUX_SYMBOL(__stop___markers) = .;
>
> #define RO_DATA(align) \
> . = ALIGN((align)); \
> @@ -129,6 +133,11 @@
> VMLINUX_SYMBOL(__stop___immediate) = .; \
> } \
> \
> + /* Markers: strings */ \
> + __markers_strings : AT(ADDR(__markers_strings) - LOAD_OFFSET) { \
> + *(__markers_strings) \
> + } \
> + \
> /* Kernel symbol table: strings */ \
> __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
> *(__ksymtab_strings) \
[...]

Do you think I should also remove the __markers_strings section from here ?