Re: [PATCH v2 2/4] gcov: add support for gcc 4.7 gcov format

From: Frantisek Hrbata
Date: Thu Sep 19 2013 - 06:21:55 EST


On Thu, Sep 19, 2013 at 11:04:16AM +0200, Peter Oberparleiter wrote:
> On 04.09.2013 16:42, Frantisek Hrbata wrote:
> > The gcov in-memory format changed in gcc 4.7. The biggest change, which
> > requires this special implementation, is that gcov_info no longer contains
> > array of counters for each counter type for all functions and gcov_fn_info is
> > not used for mapping of function's counters to these arrays(offset). Now each
> > gcov_fn_info contans it's counters, which makes things a little bit easier.
> >
> > This is heavily based on the previous gcc_3_4.c implementation and patches
> > provided by Peter Oberparleiter. Specially the buffer gcda implementation for
> > iterator.
> >
> > v2: - removed const definition for gcov_fn_info in gcov_info
> > - use vmalloc for counter values in gcov_info_dup
> > - use iter buffer for gcda
> >
> > Signed-off-by: Frantisek Hrbata <fhrbata@xxxxxxxxxx>
>
> The patch is missing an include statement:
>
> CC kernel/gcov/gcc_4_7.o
> kernel/gcov/gcc_4_7.c: In function ?gcov_info_dup?:
> kernel/gcov/gcc_4_7.c:293:4: error: implicit declaration of function ?vmalloc? [-Werror=implicit-function-declaration]
> kernel/gcov/gcc_4_7.c:293:20: warning: assignment makes pointer from integer without a cast [enabled by default]
>
> With that added, it compiles and works with gcc 4.3.4 and 4.7.2 on
> kernel 3.21-rc1 on s390x.
>
> --- a/kernel/gcov/gcc_4_7.c
> +++ b/kernel/gcov/gcc_4_7.c
> @@ -15,6 +15,7 @@
> #include <linux/slab.h>
> #include <linux/string.h>
> #include <linux/seq_file.h>
> +#include <linux/vmalloc.h>
> #include "gcov.h"
>
> #define GCOV_COUNTERS 8
>

Hi Peter,

I'm sorry I missed that. Many thanks. In addition, do you have any other
objedtions to the code? Andrew already added the patches to the -mm tree.
Andrew, should I post a follow up patch adding the vmalloc.h include or is it
possible to fix it directly as you did for the previous patches?
Again I'm sorry for the inconvenience.

Many thanks

--
Frantisek Hrbata
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/