From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-by2nam01on0099.outbound.protection.outlook.com ([104.47.34.99]:35296 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751941AbeA1W0K (ORCPT ); Sun, 28 Jan 2018 17:26:10 -0500 From: Sasha Levin To: "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" CC: Jiri Olsa , Arnaldo Carvalho de Melo , Sasha Levin Subject: [PATCH AUTOSEL for 4.14 014/100] perf: Fix header.size for namespace events Date: Sun, 28 Jan 2018 22:26:06 +0000 Message-ID: <20180128222547.7398-14-alexander.levin@microsoft.com> References: <20180128222547.7398-1-alexander.levin@microsoft.com> In-Reply-To: <20180128222547.7398-1-alexander.levin@microsoft.com> Content-Language: en-US Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org List-ID: From: Jiri Olsa [ Upstream commit 34900ec5c9577cc1b0f22887ac7349f458ba8ac2 ] Reset header size for namespace events, otherwise it only gets bigger in ctx iterations. Signed-off-by: Jiri Olsa Acked-by: Peter Zijlstra (Intel) Fixes: e422267322cd ("perf: Add PERF_RECORD_NAMESPACES to include namespace= s related info") Link: http://lkml.kernel.org/n/tip-nlo4gonz9d4guyb8153ukzt0@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: Sasha Levin --- kernel/events/core.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/events/core.c b/kernel/events/core.c index 24ebad5567b4..5253dbba66ea 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -6719,6 +6719,7 @@ static void perf_event_namespaces_output(struct perf_= event *event, struct perf_namespaces_event *namespaces_event =3D data; struct perf_output_handle handle; struct perf_sample_data sample; + u16 header_size =3D namespaces_event->event_id.header.size; int ret; =20 if (!perf_event_namespaces_match(event)) @@ -6729,7 +6730,7 @@ static void perf_event_namespaces_output(struct perf_= event *event, ret =3D perf_output_begin(&handle, event, namespaces_event->event_id.header.size); if (ret) - return; + goto out; =20 namespaces_event->event_id.pid =3D perf_event_pid(event, namespaces_event->task); @@ -6741,6 +6742,8 @@ static void perf_event_namespaces_output(struct perf_= event *event, perf_event__output_id_sample(event, &handle, &sample); =20 perf_output_end(&handle); +out: + namespaces_event->event_id.header.size =3D header_size; } =20 static void perf_fill_ns_link_info(struct perf_ns_link_info *ns_link_info, --=20 2.11.0