From nobody Sun Sep 14 20:24:18 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D9AD5C32793 for ; Wed, 18 Jan 2023 12:16:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229482AbjARMQi (ORCPT ); Wed, 18 Jan 2023 07:16:38 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46108 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230215AbjARMQF (ORCPT ); Wed, 18 Jan 2023 07:16:05 -0500 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7387B875B6; Wed, 18 Jan 2023 03:37:53 -0800 (PST) Date: Wed, 18 Jan 2023 11:37:51 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1674041871; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=oc6LSVj5uaQ9n8lKpp69By84LMttGwGUBFJoT+Qh+9E=; b=ednBWYIGF63iNsMBPIBAy4uHwxgbk+WciCKC7rsJ1izsVMnELa/RF0AKmQ3Z8CpqtbAa4a H+Z/VfZaMBnMPeqBEjUVZaW5ebwmZN3Oulh1UdJjGRvoFn1dWvzlY5dW2baOw7R0I+rAX3 sy+ulgqkUus185nNjHUsaBfx9dFlA6eaR+K0pPqBYNzRPBApogBLw86maa/xPHCy22VKXJ en2Nt8PtRljcfQAlF2Cz5BAChilkDBIvSGT5s+LWDuPXtG6S7sZZveZliArl7WIiHocTOO IGNOocALMQjj7WrB5MyFl/a14TG90faIuTP7IN4ZYnD9Z1u+Ej93a0aYPP5Mbg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1674041871; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=oc6LSVj5uaQ9n8lKpp69By84LMttGwGUBFJoT+Qh+9E=; b=xZDr/NjExB8Lle79hTpslsVVdyFPbfTfPU9oSCYwNRAuQPFDuA7wf2g7Ctu8Nt6gsh6Wv4 JJlnHIOai25ZMVDQ== From: "tip-bot2 for Namhyung Kim" Sender: tip-bot2@linutronix.de Reply-to: linux-kernel@vger.kernel.org To: linux-tip-commits@vger.kernel.org Subject: [tip: perf/core] perf/core: Do not pass header for sample ID init Cc: Namhyung Kim , Ingo Molnar , Jiri Olsa , Song Liu , Peter Zijlstra , x86@kernel.org, linux-kernel@vger.kernel.org In-Reply-To: <20230118060559.615653-7-namhyung@kernel.org> References: <20230118060559.615653-7-namhyung@kernel.org> MIME-Version: 1.0 Message-ID: <167404187141.4906.14797462329290153602.tip-bot2@tip-bot2> Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The following commit has been merged into the perf/core branch of tip: Commit-ID: a7c8d0daa87581cab8435c83cc6ecbfbcb8b60cf Gitweb: https://git.kernel.org/tip/a7c8d0daa87581cab8435c83cc6ecbfbc= b8b60cf Author: Namhyung Kim AuthorDate: Tue, 17 Jan 2023 22:05:57 -08:00 Committer: Ingo Molnar CommitterDate: Wed, 18 Jan 2023 11:57:20 +01:00 perf/core: Do not pass header for sample ID init The only thing it does for header in __perf_event_header__init_id() is to update the header size with event->id_header_size. We can do this outside and get rid of the argument for the later change. Signed-off-by: Namhyung Kim Signed-off-by: Ingo Molnar Tested-by: Jiri Olsa Acked-by: Jiri Olsa Acked-by: Song Liu Acked-by: Peter Zijlstra Link: https://lore.kernel.org/r/20230118060559.615653-7-namhyung@kernel.org --- kernel/events/core.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/kernel/events/core.c b/kernel/events/core.c index 7135cb9..47bfd99 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -7054,14 +7054,12 @@ out_put: PERF_SAMPLE_ID | PERF_SAMPLE_STREAM_ID | \ PERF_SAMPLE_CPU | PERF_SAMPLE_IDENTIFIER) =20 -static void __perf_event_header__init_id(struct perf_event_header *header, - struct perf_sample_data *data, +static void __perf_event_header__init_id(struct perf_sample_data *data, struct perf_event *event, u64 sample_type) { data->type =3D event->attr.sample_type; data->sample_flags |=3D data->type & PERF_SAMPLE_ID_ALL; - header->size +=3D event->id_header_size; =20 if (sample_type & PERF_SAMPLE_TID) { /* namespace issues */ @@ -7088,8 +7086,10 @@ void perf_event_header__init_id(struct perf_event_he= ader *header, struct perf_sample_data *data, struct perf_event *event) { - if (event->attr.sample_id_all) - __perf_event_header__init_id(header, data, event, event->attr.sample_typ= e); + if (event->attr.sample_id_all) { + header->size +=3D event->id_header_size; + __perf_event_header__init_id(data, event, event->attr.sample_type); + } } =20 static void __perf_event__output_id_sample(struct perf_output_handle *hand= le, @@ -7577,7 +7577,7 @@ void perf_prepare_sample(struct perf_event_header *he= ader, u64 filtered_sample_type; =20 header->type =3D PERF_RECORD_SAMPLE; - header->size =3D sizeof(*header) + event->header_size; + header->size =3D sizeof(*header) + event->header_size + event->id_header_= size; =20 header->misc =3D 0; header->misc |=3D perf_misc_flags(regs); @@ -7595,7 +7595,7 @@ void perf_prepare_sample(struct perf_event_header *he= ader, PERF_SAMPLE_REGS_USER); filtered_sample_type &=3D ~data->sample_flags; =20 - __perf_event_header__init_id(header, data, event, filtered_sample_type); + __perf_event_header__init_id(data, event, filtered_sample_type); =20 if (filtered_sample_type & PERF_SAMPLE_IP) { data->ip =3D perf_instruction_pointer(regs);