2018-08-29 20:25:05

by Jérémie Galarneau

[permalink] [raw]
Subject: [PATCH] perf tools: Initialize perf_data_file fd field

Building the perf CTF converter fails with gcc 4.8.4
on Ubuntu 14.04 with the following error:

error: missing initializer for field ‘fd’ of ‘struct perf_data_file’
[-Werror=missing-field-initializers]

Per 4b838b0d and the ensuing discussion on the mailing
list, it appears that this affects other distributions
and gcc versions.

Signed-off-by: Jérémie Galarneau <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Alexander Shishkin <[email protected]>
---
tools/perf/util/data-convert-bt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
index abd38abf1d91..f75d4aa612c5 100644
--- a/tools/perf/util/data-convert-bt.c
+++ b/tools/perf/util/data-convert-bt.c
@@ -1578,7 +1578,7 @@ int bt_convert__perf2ctf(const char *input, const char *path,
{
struct perf_session *session;
struct perf_data data = {
- .file.path = input,
+ .file = { .path = input, .fd = -1 },
.mode = PERF_DATA_MODE_READ,
.force = opts->force,
};
--
2.18.0



2018-09-05 16:10:54

by Jiri Olsa

[permalink] [raw]
Subject: Re: [PATCH] perf tools: Initialize perf_data_file fd field

On Wed, Aug 29, 2018 at 04:16:48PM -0400, Jérémie Galarneau wrote:
> Building the perf CTF converter fails with gcc 4.8.4
> on Ubuntu 14.04 with the following error:
>
> error: missing initializer for field ‘fd’ of ‘struct perf_data_file’
> [-Werror=missing-field-initializers]
>
> Per 4b838b0d and the ensuing discussion on the mailing
> list, it appears that this affects other distributions
> and gcc versions.
>
> Signed-off-by: Jérémie Galarneau <[email protected]>

Acked-by: Jiri Olsa <[email protected]>

thanks,
jirka

> Cc: Jiri Olsa <[email protected]>
> Cc: Arnaldo Carvalho de Melo <[email protected]>
> Cc: Peter Zijlstra <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Cc: Alexander Shishkin <[email protected]>
> ---
> tools/perf/util/data-convert-bt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
> index abd38abf1d91..f75d4aa612c5 100644
> --- a/tools/perf/util/data-convert-bt.c
> +++ b/tools/perf/util/data-convert-bt.c
> @@ -1578,7 +1578,7 @@ int bt_convert__perf2ctf(const char *input, const char *path,
> {
> struct perf_session *session;
> struct perf_data data = {
> - .file.path = input,
> + .file = { .path = input, .fd = -1 },
> .mode = PERF_DATA_MODE_READ,
> .force = opts->force,
> };
> --
> 2.18.0
>

2018-09-18 18:10:28

by Jérémie Galarneau

[permalink] [raw]
Subject: Re: [PATCH] perf tools: Initialize perf_data_file fd field

Hi Arnaldo,

Anything I can do to help you with this patch?

Thanks,
Jérémie

On 5 September 2018 at 12:09, Jiri Olsa <[email protected]> wrote:
> On Wed, Aug 29, 2018 at 04:16:48PM -0400, Jérémie Galarneau wrote:
>> Building the perf CTF converter fails with gcc 4.8.4
>> on Ubuntu 14.04 with the following error:
>>
>> error: missing initializer for field ‘fd’ of ‘struct perf_data_file’
>> [-Werror=missing-field-initializers]
>>
>> Per 4b838b0d and the ensuing discussion on the mailing
>> list, it appears that this affects other distributions
>> and gcc versions.
>>
>> Signed-off-by: Jérémie Galarneau <[email protected]>
>
> Acked-by: Jiri Olsa <[email protected]>
>
> thanks,
> jirka
>
>> Cc: Jiri Olsa <[email protected]>
>> Cc: Arnaldo Carvalho de Melo <[email protected]>
>> Cc: Peter Zijlstra <[email protected]>
>> Cc: Ingo Molnar <[email protected]>
>> Cc: Alexander Shishkin <[email protected]>
>> ---
>> tools/perf/util/data-convert-bt.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
>> index abd38abf1d91..f75d4aa612c5 100644
>> --- a/tools/perf/util/data-convert-bt.c
>> +++ b/tools/perf/util/data-convert-bt.c
>> @@ -1578,7 +1578,7 @@ int bt_convert__perf2ctf(const char *input, const char *path,
>> {
>> struct perf_session *session;
>> struct perf_data data = {
>> - .file.path = input,
>> + .file = { .path = input, .fd = -1 },
>> .mode = PERF_DATA_MODE_READ,
>> .force = opts->force,
>> };
>> --
>> 2.18.0
>>



--
Jérémie Galarneau
EfficiOS Inc.
http://www.efficios.com

2018-09-18 19:00:10

by Arnaldo Carvalho de Melo

[permalink] [raw]
Subject: Re: [PATCH] perf tools: Initialize perf_data_file fd field

Em Tue, Sep 18, 2018 at 02:07:41PM -0400, Jérémie Galarneau escreveu:
> Hi Arnaldo,
>
> Anything I can do to help you with this patch?

Thanks for the reminder, will apply.

- Arnaldo

> Thanks,
> Jérémie
>
> On 5 September 2018 at 12:09, Jiri Olsa <[email protected]> wrote:
> > On Wed, Aug 29, 2018 at 04:16:48PM -0400, Jérémie Galarneau wrote:
> >> Building the perf CTF converter fails with gcc 4.8.4
> >> on Ubuntu 14.04 with the following error:
> >>
> >> error: missing initializer for field ‘fd’ of ‘struct perf_data_file’
> >> [-Werror=missing-field-initializers]
> >>
> >> Per 4b838b0d and the ensuing discussion on the mailing
> >> list, it appears that this affects other distributions
> >> and gcc versions.
> >>
> >> Signed-off-by: Jérémie Galarneau <[email protected]>
> >
> > Acked-by: Jiri Olsa <[email protected]>
> >
> > thanks,
> > jirka
> >
> >> Cc: Jiri Olsa <[email protected]>
> >> Cc: Arnaldo Carvalho de Melo <[email protected]>
> >> Cc: Peter Zijlstra <[email protected]>
> >> Cc: Ingo Molnar <[email protected]>
> >> Cc: Alexander Shishkin <[email protected]>
> >> ---
> >> tools/perf/util/data-convert-bt.c | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
> >> index abd38abf1d91..f75d4aa612c5 100644
> >> --- a/tools/perf/util/data-convert-bt.c
> >> +++ b/tools/perf/util/data-convert-bt.c
> >> @@ -1578,7 +1578,7 @@ int bt_convert__perf2ctf(const char *input, const char *path,
> >> {
> >> struct perf_session *session;
> >> struct perf_data data = {
> >> - .file.path = input,
> >> + .file = { .path = input, .fd = -1 },
> >> .mode = PERF_DATA_MODE_READ,
> >> .force = opts->force,
> >> };
> >> --
> >> 2.18.0
> >>
>
>
>
> --
> Jérémie Galarneau
> EfficiOS Inc.
> http://www.efficios.com

Subject: [tip:perf/core] perf tools: Initialize perf_data_file fd field

Commit-ID: c04c859f439fb4de9039246370d60a07b9b5bcb5
Gitweb: https://git.kernel.org/tip/c04c859f439fb4de9039246370d60a07b9b5bcb5
Author: Jérémie Galarneau <[email protected]>
AuthorDate: Wed, 29 Aug 2018 16:16:48 -0400
Committer: Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Wed, 19 Sep 2018 10:25:13 -0300

perf tools: Initialize perf_data_file fd field

Building the perf CTF converter fails with gcc 4.8.4 on Ubuntu 14.04
with the following error:

error: missing initializer for field ‘fd’ of ‘struct perf_data_file’
[-Werror=missing-field-initializers]

Per 4b838b0db4e9 ("perf tools: Add compression id into 'struct
kmod_path'") and the ensuing discussion on the mailing list, it appears
that this affects other distributions and gcc versions.

Signed-off-by: Jeremie Galarneau <[email protected]>
Cc: Alexander Shishkin <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
tools/perf/util/data-convert-bt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
index abd38abf1d91..f75d4aa612c5 100644
--- a/tools/perf/util/data-convert-bt.c
+++ b/tools/perf/util/data-convert-bt.c
@@ -1578,7 +1578,7 @@ int bt_convert__perf2ctf(const char *input, const char *path,
{
struct perf_session *session;
struct perf_data data = {
- .file.path = input,
+ .file = { .path = input, .fd = -1 },
.mode = PERF_DATA_MODE_READ,
.force = opts->force,
};