[ltt-dev] [PATCH] Fix missing definition of ltt_get_alignment() in kernel/marker.c

Mathieu Desnoyers compudj at krystal.dyndns.org
Mon Feb 2 12:07:00 EST 2009


* Dennis W. Tokarski (dwt at PolTec.COM) wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi,
>
> While looking into problems taking a trace on a dual cpu qemu-i386 VM,
> I decided to try a kernel which had ltt turned off in the configuration
> but was otherwise the same.
>
> This left me with ltt off but markers still on, and kernel/markers.c
> wouldn't build because several of the *trace_mark() calls use
> ltt_get_alignment() as an argument.  Its definition in ltt-tracer.h
> is entirely enclosed within the #ifdef CONFIG_LLT...#endif. I propose
> to move it outside. Patch attached.
>

Merged, thanks !

Mathieu

> - --Dennis
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
> Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
>
> iD8DBQFJhR+DDJucIzCImrURAgGLAJ9W7r7hLS5rVvdy/uXLPM05Vk0g6gCgoVi0
> 7b/k63xy5k0SHbx3KJaBSD8=
> =OGm/
> -----END PGP SIGNATURE-----

> Index: include/linux/ltt-tracer.h
> ===================================================================
> RCS file: /usr/src/cvs-repository/fedora/fc10-kernel/include/linux/Attic/ltt-tracer.h,v
> retrieving revision 1.1.2.1
> diff -u -r1.1.2.1 ltt-tracer.h
> --- include/linux/ltt-tracer.h	26 Jan 2009 01:12:29 -0000	1.1.2.1
> +++ include/linux/ltt-tracer.h	1 Feb 2009 03:20:09 -0000
> @@ -138,6 +138,41 @@
>  		return MARKER_ID_DYNAMIC;
>  }
>  
> +#if defined(CONFIG_LTT) && defined(CONFIG_LTT_ALIGNMENT)
> +
> +/*
> + * Calculate the offset needed to align the type.
> + * size_of_type must be non-zero.
> + */
> +static inline unsigned int ltt_align(size_t align_drift, size_t size_of_type)
> +{
> +	size_t alignment = min(sizeof(void *), size_of_type);
> +	return (alignment - align_drift) & (alignment - 1);
> +}
> +/* Default arch alignment */
> +#define LTT_ALIGN
> +
> +static inline int ltt_get_alignment(void)
> +{
> +	return sizeof(void *);
> +}
> +
> +#else
> +
> +static inline unsigned int ltt_align(size_t align_drift,
> +		 size_t size_of_type)
> +{
> +	return 0;
> +}
> +
> +#define LTT_ALIGN __attribute__((packed))
> +
> +static inline int ltt_get_alignment(void)
> +{
> +	return 0;
> +}
> +#endif /* CONFIG_LTT_ALIGNMENT */
> +
>  #ifdef CONFIG_LTT
>  
>  struct user_dbg_data {
> @@ -300,41 +335,6 @@
>  	uint8_t header_end[0];		/* End of header */
>  };
>  
> -#ifdef CONFIG_LTT_ALIGNMENT
> -
> -/*
> - * Calculate the offset needed to align the type.
> - * size_of_type must be non-zero.
> - */
> -static inline unsigned int ltt_align(size_t align_drift, size_t size_of_type)
> -{
> -	size_t alignment = min(sizeof(void *), size_of_type);
> -	return (alignment - align_drift) & (alignment - 1);
> -}
> -/* Default arch alignment */
> -#define LTT_ALIGN
> -
> -static inline int ltt_get_alignment(void)
> -{
> -	return sizeof(void *);
> -}
> -
> -#else
> -
> -static inline unsigned int ltt_align(size_t align_drift,
> -		 size_t size_of_type)
> -{
> -	return 0;
> -}
> -
> -#define LTT_ALIGN __attribute__((packed))
> -
> -static inline int ltt_get_alignment(void)
> -{
> -	return 0;
> -}
> -#endif /* CONFIG_LTT_ALIGNMENT */
> -
>  /**
>   * ltt_subbuffer_header_size - called on buffer-switch to a new sub-buffer
>   *


> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev


-- 
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68




More information about the lttng-dev mailing list