From patchwork Mon Oct 24 18:19:06 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10111 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp632288wru; Mon, 24 Oct 2022 13:11:12 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5fmoRYZ/dtxKtaxfYABSl37XbWeyW91bADe2EWv2lNfmuuqOkVHvH0gwYoxeUthcMOzI9s X-Received: by 2002:aa7:8293:0:b0:563:5852:e750 with SMTP id s19-20020aa78293000000b005635852e750mr35726561pfm.11.1666642271699; Mon, 24 Oct 2022 13:11:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642271; cv=none; d=google.com; s=arc-20160816; b=XACiuL6AXBTLRo502iuvtMiWEQi5zdxJIfvPsRiEZzaTIjw04vKmyoblVf49UI0BKg ysvZVOx8eQaheTVI+CZGAOcQLBiRZSo2EsYrJzDQ6Hm5zchNKPo2CW6Pa94Ew/xiKgtI LczI2cl3wTQe501fN6VRiH71s0ydfA9925Zqd7jsniONdyNI2OGElx7xtQnoWYBULzT1 tO4Mrt5dGI3Ky+sxemFJyNGCmGrjvkWYWx1yMssiQqCKeTahFHIyyyP5eWkYUr19x5ja YdQaWNMZKloqm5r/AHykEP5sEGOOuRwS8gRV9QzCbzUQYqZ98dhEFHiYC8R9gaU4gNQM oQzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=yf//nKniGE2IxHdCyFgbypJdJyKGDk5InFKRkZy7usI=; b=v/vp+2D/+WUrR3dVgpgaBV7oOMscHfhUrLa+/8qy2UqZMILJ4+ZK3socea5J8OpxMA 6E8qXVGe+eLBxmtnw7NH9YqQygD/vGfn+lNgPXfJMBKFzUs9DV5aRTNjpVyhmPsiDAzg CvKlpJbKn+vcEMLvzFnlV59XYJemPI7yWDcUtTgzwsnYoqmdfhAyettHaNHNemYMbqIL MpBIQWEYx1wtQ2IcctrpDwpTg6oPsKmm8pdp91Rfc681oBWpi08XV4T5gCWj4nVDo0Vy OyHT9uppHRGCt6x1au95JGGvBkQ0SQt5XiqlRNYA0eP/6IBgY39tT/CjSfYxVPc3a5l0 LNKw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=VRBpSdHV; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f18-20020a63f112000000b00434e297a5ccsi486376pgi.142.2022.10.24.13.10.58; Mon, 24 Oct 2022 13:11:11 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=VRBpSdHV; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233923AbiJXT6U (ORCPT + 99 others); Mon, 24 Oct 2022 15:58:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36478 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233842AbiJXT5i (ORCPT ); Mon, 24 Oct 2022 15:57:38 -0400 Received: from mail-yw1-x1149.google.com (mail-yw1-x1149.google.com [IPv6:2607:f8b0:4864:20::1149]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8C4D21799B1 for ; Mon, 24 Oct 2022 11:20:36 -0700 (PDT) Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-36b7cfda276so50539717b3.1 for ; Mon, 24 Oct 2022 11:20:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=yf//nKniGE2IxHdCyFgbypJdJyKGDk5InFKRkZy7usI=; b=VRBpSdHVTZnE+YXvFegVopepFbQ4rBU/QUHcsshpgXkjl8MaSdIQyGG6rx5fBbADpN xMvXZyLIQ9EeU5rKOW3YQugY1FE1YvVJL3Aam8IsGX43Us52UyYNk0qsy0Gzgvy3b42r i00PdJSbsUpUiyeZdfsD1Tu0dqaUQGkI24CTo+6c9/PvhAmHZRHZdd6Ihbc5pKj7gC6I zt8b4JNH31YlusjfnXVQj9XLJbc5x8ZZPPXRcudD3sO9JBxMfP38PJaqmAChSU3Bi30k MNh0Qc1AL/nplEstpRJc4gHksFuwYc33HHJbGp7zBCtWV1hPDPD164mlrKu1LZ3lKP52 2eLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=yf//nKniGE2IxHdCyFgbypJdJyKGDk5InFKRkZy7usI=; b=m+ZjsIC6SyydfRZFsf7gpCvPygeTIeFpKORXWmCj+atA8vkZTHCmSlSd5VYgyve9py lD94RdhoaKHRyIw4Mk9V18idtGrD+xZb4V083EsZMGCqE1YF6P6l5wxyVUnzsbpJuR4D u3EusaVwrUOMr13+p+qSv0O+zMHcWN6Ap41hB5i8mQ7gwDa+n4Tvh58N3PZmedWFoVSO LXDq9Gbp1Z6WhFKxBRbpajz1rv4cgDostMcm9Lowc3++zQZD8VP2TjTwtsGDs9Bn0dUt DsveeYesTK+LnXkzufL1N+EgqkyEzF/uyf4nkZz/ENqUgaOnwRx8BbF3nK8jF93hJMV+ niGw== X-Gm-Message-State: ACrzQf02aIcKnJzOrk96oEMTVch0wWMcObhgb+oQnNa46V4COIA51Yio G2Q87SsliTbiBqBaiZ7ZIi+VvCi7ntgB X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a25:504a:0:b0:6c9:8926:9048 with SMTP id e71-20020a25504a000000b006c989269048mr26969653ybb.38.1666635582786; Mon, 24 Oct 2022 11:19:42 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:06 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-2-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 1/8] perf build: Update to C standard to gnu11 From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601086410537596?= X-GMAIL-MSGID: =?utf-8?q?1747601086410537596?= C11 has become the standard for mainstream kernel development [1], allowing it in the perf build enables libraries like stdatomic.h to be assumed to be present. This came up in the context of [2]. [1] https://lore.kernel.org/lkml/CAHk-=whWbENRz-vLY6vpESDLj6kGUTKO3khGtVfipHqwewh2HQ@mail.gmail.com/ [2] https://lore.kernel.org/lkml/20221024011024.462518-1-irogers@google.com/ Signed-off-by: Ian Rogers --- tools/perf/Makefile.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config index 6fd4b1384b97..29c49e6e76a1 100644 --- a/tools/perf/Makefile.config +++ b/tools/perf/Makefile.config @@ -307,7 +307,7 @@ CORE_CFLAGS += -ggdb3 CORE_CFLAGS += -funwind-tables CORE_CFLAGS += -Wall CORE_CFLAGS += -Wextra -CORE_CFLAGS += -std=gnu99 +CORE_CFLAGS += -std=gnu11 CXXFLAGS += -std=gnu++14 -fno-exceptions -fno-rtti CXXFLAGS += -Wall From patchwork Mon Oct 24 18:19:07 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10108 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp632200wru; Mon, 24 Oct 2022 13:10:59 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6myTfvcumDBwgFZRcCcJC/ccJ1qK5VJAcFhtf61D6pNOQsWk64KnL0p7ahU000sRGBES3r X-Received: by 2002:a17:907:983:b0:77b:6e40:8435 with SMTP id bf3-20020a170907098300b0077b6e408435mr27772980ejc.570.1666642259767; Mon, 24 Oct 2022 13:10:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642259; cv=none; d=google.com; s=arc-20160816; b=lsonIAdyQhxfSKnmuAQBv9yPceZHhIQfCVCBcHGAbYTTDoXONZwr5OK7mb9EUoQ8U4 pBgflTE9sFs3kwN4maet01w0nYYOJwBHPfMep12e8JrnF9eekquw1HgoJCur/SUYKx6t +y+n3DoqOykYOxHdo7LOZHh20TglfD+riVoHhGfyKzUS7p4+HcWZ/qpdS+UhhkQekICq Qv1ywm+IT4ZwdAt788LfYJL+wC73BaFm1rnnscoC/0NZOoV14dN+/DAGMbLupb7rKTRj 55HTJsm1OIaZuw0ct5Q2Vrx9NnwPgx54vkwPvZrfTc+rm2AKAJhUIFzGIoY37XM6hI5A E96g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=DmFinCtLacORlQ2ewPLrfshypQ1cYZQ/PN4t0Vpngs0=; b=cYJ/9ejSdYVjMa9w1z/MAvkFtVkD85naA8hDPJkA40iGKO6cBmQYXRdDWWgUbHEbHb +/F5WLfU/W6EjqkLdR9spBTZ/zQcufCOwY/m+5bmOj8MX1ljKz1uYal/Buj/ZmcKpxwm Mq7/vnUUC/WV47fwwrLafJZlCPCcBHaLut4aC/tYDLTPyME9/ky/fkaF/qRcLBfviX8I fgd1ILTuSqjjPmWG036Dzlb0F/hf+Ezxl+mJ8YAkeK0Qfacd0lL/3IdSa4nKnd2xfr9Z e5EfJJgvIMprrpGlGxUEvztNt+vL/Spidav+BwsYTkfldUomO0KzxiExQxfRLX+67n0y gKRQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=pMUlhIMR; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id g5-20020a50d5c5000000b0045c98bb5359si668106edj.590.2022.10.24.13.10.34; Mon, 24 Oct 2022 13:10:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=pMUlhIMR; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233948AbiJXT6Y (ORCPT + 99 others); Mon, 24 Oct 2022 15:58:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55868 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233563AbiJXT5m (ORCPT ); Mon, 24 Oct 2022 15:57:42 -0400 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9961B1ACA89 for ; Mon, 24 Oct 2022 11:20:41 -0700 (PDT) Received: by mail-pg1-x54a.google.com with SMTP id h19-20020a63e153000000b00434dfee8dbaso5029278pgk.18 for ; Mon, 24 Oct 2022 11:20:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=DmFinCtLacORlQ2ewPLrfshypQ1cYZQ/PN4t0Vpngs0=; b=pMUlhIMRFFmttHUZkUp0YgJLF5/0k53nLgz/0+lS9Khbv9yppWgguy4wBLjw2tGr7+ JasEHQxldAstnfGM80huRUB8zV2ptt1JYQT9k4Cf5wM7OQyaIN4p+9O4aohOx52RkuuP oqdmJYa0jD0N9945GZ1F2dc+ODkV33CjJ93RLJJCBi3yPIeyo+MY1oQFnT3ubwknYp0D qih6ED/vUhPhs9+p0HwbsTkqITNuEv/GLXRZ1XeYyHWDYwvdeIhdgC5YXXLpeuuzfuxH u58Xcl7CIl8deSCTwHPx0SAAYDV08BFYWIKRqTn7cvTtjIYuOZSaODpZGFOZOy7J4O76 TbRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=DmFinCtLacORlQ2ewPLrfshypQ1cYZQ/PN4t0Vpngs0=; b=YKG6u+/m1wPrJhEhYBI5LN4Ten8jsd/iZ7GFm8NJT7Ayi9PT74Xh2GLzUFGTpVDIUl ta0BJTqp1+cCvMJHCZe29dL+KcMR+a+1h1Iv14RLZ9WczZ6Gua/ttoZK2zM2PK6vC2Cl e9BUE7Ulc3gM9nEHxhVYHXi5OaZbHRhEg4uxRAAM9ZXMHDO8W+c1U2Km2aYgj0wsoDgu WSXrhZ2WS8A+wiN1itkaF2lfQI6H0tQ1bMqTQBs1msrm/lH8vqSRZsDBejjjwSUgitx9 pnxbCXCSatxU7VtLGBTSXSoCchckJKYI0hMoy0L16vgsGmAF5xLWv36yyrjWoGItXc9Z LBeQ== X-Gm-Message-State: ACrzQf244lu57L76j3KOREdXcmVEgUpGGV+hP0AmpWmWMooW741wO+jy AcwDyWaOhIMmchC6WnCXWR5BY8gGBs9I X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a63:df10:0:b0:43b:e82f:e01c with SMTP id u16-20020a63df10000000b0043be82fe01cmr29416411pgg.19.1666635590063; Mon, 24 Oct 2022 11:19:50 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:07 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-3-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 2/8] perf record: Use sig_atomic_t for signal handlers From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601074085430335?= X-GMAIL-MSGID: =?utf-8?q?1747601074085430335?= This removes undefined behavior as described in: https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers Suggested-by: Leo Yan Signed-off-by: Ian Rogers --- tools/perf/builtin-record.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index e128b855ddde..b8438e323002 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -646,10 +646,10 @@ static int record__pushfn(struct mmap *map, void *to, void *bf, size_t size) return record__write(rec, map, bf, size); } -static volatile int signr = -1; -static volatile int child_finished; +static volatile sig_atomic_t signr = -1; +static volatile sig_atomic_t child_finished; #ifdef HAVE_EVENTFD_SUPPORT -static volatile int done_fd = -1; +static volatile sig_atomic_t done_fd = -1; #endif static void sig_handler(int sig) @@ -1926,7 +1926,7 @@ static void record__read_lost_samples(struct record *rec) } -static volatile int workload_exec_errno; +static volatile sig_atomic_t workload_exec_errno; /* * evlist__prepare_workload will send a SIGUSR1 From patchwork Mon Oct 24 18:19:08 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10109 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp632256wru; Mon, 24 Oct 2022 13:11:07 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4hCUKmG+aqvHWA57CGuaP052W11KIcIvHNebKYuJJM8erjwlukve8NiphfF6bKFiqvhqIf X-Received: by 2002:a17:907:3e06:b0:733:693:600e with SMTP id hp6-20020a1709073e0600b007330693600emr28202294ejc.410.1666642267777; Mon, 24 Oct 2022 13:11:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642267; cv=none; d=google.com; s=arc-20160816; b=ng9BDdccPFbYouBTfub0gK8GoEtqLIr1V/NaIzKu/BydhxKqaLbLnBr2etbgpuwWJs LhHjEBaTVe6SQuprJZUK3cLSQaJatMcJ5uX6751n+v1fAvq1TcTJt9tupELtIpzilBLG 3Xx3L306p87Rr6crpDU1yekPXTyLTt9BjnWuIRJDsoNq0U9wWWcpG9K5mfVst93odsI6 qpVYmDskqiRoQVDfIX1W9aTdKorcJCIslT8lKl9rvA48Bcz9VqOoHUQcNTw4vePnhsmZ 45jWnf64pIvgC9vSiB8eQCHprKSUpC5dUrpbc72RJwgbIkfDCXiiA1S4kehqy2XleF6x nhOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=JoX+rXrU6K8JU7iZ2f6KugPkmXCVMdf9ZXNzq+WXZng=; b=qDuNjxwcwmyaF9LRhXVHmfDim/s7gK4Deowdnluzl2pngWU5y5caX20bMEPSRtEl0I nrcMrTf0A+rUHqtOHJCu7VygYv3Yi4K30BcMMAFaTg0e/14+briM8+iq+aT2pg/rTD1v AGl1O1Oqe0xqIv5ExWIfmtxYxXcn9c+NJ0vBJTuRADxaXvk7WrRY5IOKPkxVZ/BqCmfL Z/aJWFcxes2tdzsub78gLaqXsxOtIdgy79oOr5bgpUMnAZXKLj0vwV/Pt02UF+UcmYr/ 921WsrjYv/ij33d5kEUWHYn9KSxn68jBfcRqj/QUO8Gt5UPfVxwKTt3XV2S5xiEUkZBQ /AiQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=PfDJLEVQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nb6-20020a1709071c8600b0078dcee0cf13si636662ejc.561.2022.10.24.13.10.42; Mon, 24 Oct 2022 13:11:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=PfDJLEVQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233940AbiJXT6s (ORCPT + 99 others); Mon, 24 Oct 2022 15:58:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55870 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232017AbiJXT6V (ORCPT ); Mon, 24 Oct 2022 15:58:21 -0400 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DFA7F1D2B64 for ; Mon, 24 Oct 2022 11:20:49 -0700 (PDT) Received: by mail-pg1-x54a.google.com with SMTP id j12-20020a63594c000000b004468ff8fc78so5038411pgm.10 for ; Mon, 24 Oct 2022 11:20:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=JoX+rXrU6K8JU7iZ2f6KugPkmXCVMdf9ZXNzq+WXZng=; b=PfDJLEVQTdoSZljLCftkKuXa4vHopLYHW+Zs+nAdnw9TlLOLf0h8zJ4UAoR/va/HTR sHI5mvAdv8WI9Esx2Hjez50/j5mBeOzp1EIRDJljrTzVizQiItYexTMX21rnSWlM11lQ z0ASHmhiCbvWXv+tdJ/n8B/rCosqMKyI+ttlXWe54G0sQsvhwzvMffRPFfuukJXfiSEW EF64a1r4+3KyRVosZ80wWMwumtN1UytVZRSLR8sB9lzHxQaMtG5msBH27OC97WnwY6vl jmojGGz0FWrjFDgGqxYlqab+Iigjjw1wJkiKE31bCXFqLRU3r7rx59vEFgTvD/vxguQ9 qzLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=JoX+rXrU6K8JU7iZ2f6KugPkmXCVMdf9ZXNzq+WXZng=; b=I5djfFlTWO5/PgVepa6gUfNaA8qz9eH1cT1mGjO2DmFuDear4LXeuo31VFpQkkxq2f u+hsNYh0BgO+QxGKwgAxeIzZfJBSw8/V6Y3fPO5s/GAiD2HmVFlBs2dn/nzCNV7Oixc2 pIL5rNC7VoJvmVRAkcpoWKSjdSl2iF+ltJQ1+iCxq8diP3aNv88YnS5hbH996aXCQJKV lgOwTYEeb3rV5p6ZV6OZg9ysHThbFfaj+LFBDarvA1XnIS24ab+d+a5nrV0l7PFcXMAY qpblZWkLeDErvT6La+WoY6KcefGV+u1fbJcZgoJakqrw+0hG+4P6Is2oG9Y61HQ81X0+ Zp0g== X-Gm-Message-State: ACrzQf3Q83fADW5FImnqheAkUIKRJoC8eOiwJDscnDjlgBxSDZgRrHFm HBHxMzmqEPaBkZ0rd88o4p6sC0aTgybr X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a17:90a:5892:b0:20a:9cf5:c13c with SMTP id j18-20020a17090a589200b0020a9cf5c13cmr75024424pji.63.1666635598568; Mon, 24 Oct 2022 11:19:58 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:08 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-4-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 3/8] perf daemon: Use sig_atomic_t to avoid UB From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601082593910186?= X-GMAIL-MSGID: =?utf-8?q?1747601082593910186?= Use sig_atomic_t for a variable written to in a signal handler and read elsewhere. This is undefined behavior as per: https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers Signed-off-by: Ian Rogers --- tools/perf/builtin-daemon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/builtin-daemon.c b/tools/perf/builtin-daemon.c index 6cb3f6cc36d0..aaa47d721ae7 100644 --- a/tools/perf/builtin-daemon.c +++ b/tools/perf/builtin-daemon.c @@ -105,7 +105,7 @@ static const char * const daemon_usage[] = { NULL }; -static bool done; +static volatile sig_atomic_t done; static void sig_handler(int sig __maybe_unused) { From patchwork Mon Oct 24 18:19:09 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10117 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp633048wru; Mon, 24 Oct 2022 13:13:14 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6iJvj/w4MeSoH96MRW7S9NXtR0F/RugQJjDB2I2mav9a7ciV+QwBnDTgOuqlwMkyeMZ1gv X-Received: by 2002:a17:902:7446:b0:186:a3a1:782d with SMTP id e6-20020a170902744600b00186a3a1782dmr7866026plt.76.1666642394083; Mon, 24 Oct 2022 13:13:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642394; cv=none; d=google.com; s=arc-20160816; b=Xuk+4a3veKSrJsKOjNVuEK8z2AM5mmO5hQNBPNdZ5AMRRwe7qSTp3Lg+Ex/goSzUaU 32Jn/l9WwIGXEiMgEhH3jk1mQgiLOX5FkIas5YMKHJf4ws8DqaAPtpaD+TMFWbRWsiQm gS3HxC+rnQMS/Dqqrt7bZh1btFwhd4auydEWva6O0Q9TKe3I1t4xbH4gqQWAilrzepYR Yh8rKWpH/cbiglECNYcwt9WJSu1aEsPniqVpTRPd+/XKv7CIYnXbU92watI5cU0I+qpO gV2F7m4VFEOYFmt0whxBCwg5opCU9QzFfmi732A+42wGDfLbmdNfjn9kvVY0I/Aj98nf SsWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=anPThKUkfGYO4MityDcRpU1q0+xCNjbPUERJ4hXkoEA=; b=wM3X7xBULVLwYkEQZM4Ff1PFz+o7RyuMpKKBUBttinsQt0j3eNnpVXuiovcm1LSv8A kaTpFmbWToHKc/RpMJlGLkFSarH5HWD7tJog0DvqIc8egme5EJEw427CqV/pKxbM55Nw YJqWknmqLJHIfzxZtpSdqxuPQC/D61CTTSx2gkgJUBmdP/+MQ4N7yOiJ8L48uZEkE+vH Xy56RT3CdwCzxklP9HlZHZc1Nme1tYhnhy774HHyNqyGnFOY6hjOwpVBHa29KQFrqw+o zdlF4GgCjxDpn7NPHT5eCRuUh5jZFu8ch84v4V7w/6on3bDmNsLRcU0KSOH4/rNwXIZD YPqg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=YzERVhg9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 184-20020a6301c1000000b0043ca0a1f7dasi390983pgb.674.2022.10.24.13.13.00; Mon, 24 Oct 2022 13:13:14 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=YzERVhg9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232341AbiJXUAu (ORCPT + 99 others); Mon, 24 Oct 2022 16:00:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54118 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233953AbiJXT6b (ORCPT ); Mon, 24 Oct 2022 15:58:31 -0400 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1A7FE27FA90 for ; Mon, 24 Oct 2022 11:21:10 -0700 (PDT) Received: by mail-pg1-x54a.google.com with SMTP id s82-20020a632c55000000b0046b2491aa95so4976006pgs.7 for ; Mon, 24 Oct 2022 11:21:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=anPThKUkfGYO4MityDcRpU1q0+xCNjbPUERJ4hXkoEA=; b=YzERVhg9gMWf4MLdxZBUxgsORWHJ5IiRDR6VYxzIXnasnGV8Hosww149KRKfuABEov w96snZWOzfeu47BuK3oYRu/RxOuk/MmwEX6+gdq2c2tFXoJckpjyu/AYbr9k86Hyybhz 1cIJLP8elnxBXNZRdVBOzhciaHBJrl2gmRzcgX67Vzg/0hUuIQUvqlGWD0k+Wd/SCM9z bItak9BMMARaNggK/JovGwRgGw/c+aSgGXbw2BnzMbBi5b1h2WKcSON2uSlPhA0U+DzQ d1HpCEVzzJeHvL37Oy8rcaQ+Q7l6sPxekv4KAY6W5Mz0MZH5Cg1EG8Loc3XJBjL9lJnm FEpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=anPThKUkfGYO4MityDcRpU1q0+xCNjbPUERJ4hXkoEA=; b=s6U9UTfc1TujbZ+sV6tVotprKmUheDhoCGSUCPDMxwezIPvHQNy5ilNnh66CKCfy7M qaDfHFCwhoeGEz3wTfqLFmZq+DLpmkicsddAwc80MJCD59aRVIUab1LGS7YRUAVk023g ilpc0brDvwbIzyI+D1hXMeJc20IyVjTfTtj5LQdTyKf4M7QJFVyLhs/xn9339Y2XOrhU k5plqgAhogo2pgQrv1klW/SK2HoKffZHkOKfntFlk71/9wMajwKhzRzeUbCTSg0RIOo6 9wT9IjF4D44VSfjFR4sv8A50b/8ooGQk3KP/6U3Q3LifGTfWnBwNlPgq2xMkjhcThyCX P3xA== X-Gm-Message-State: ACrzQf0Jp3jxsI5bt+Nmx+rf8GccZH0g0XIJUSZ6oxTQWouA8JChJBz4 PBULw/grtMRkfWUkpY1zbUHlscwKsNk/ X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a17:90b:394:b0:212:19d7:9072 with SMTP id ga20-20020a17090b039400b0021219d79072mr27097168pjb.69.1666635608577; Mon, 24 Oct 2022 11:20:08 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:09 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-5-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 4/8] perf ftrace: Use sig_atomic_t to avoid UB From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601214699675893?= X-GMAIL-MSGID: =?utf-8?q?1747601214699675893?= Use sig_atomic_t for a variable written to in a signal handler and read elsewhere. This is undefined behavior as per: https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers Signed-off-by: Ian Rogers --- tools/perf/builtin-ftrace.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/builtin-ftrace.c b/tools/perf/builtin-ftrace.c index 7de07bb16d23..d7fe00f66b83 100644 --- a/tools/perf/builtin-ftrace.c +++ b/tools/perf/builtin-ftrace.c @@ -36,8 +36,8 @@ #define DEFAULT_TRACER "function_graph" -static volatile int workload_exec_errno; -static bool done; +static volatile sig_atomic_t workload_exec_errno; +static volatile sig_atomic_t done; static void sig_handler(int sig __maybe_unused) { From patchwork Mon Oct 24 18:19:10 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10115 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp632943wru; Mon, 24 Oct 2022 13:12:53 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6f3ca8jkKeqAafjZHAwDGqm1rlYITJ4MnLrBDVv9tb+4BiPAnkfYMQh03KJCE7n9T0MidN X-Received: by 2002:a17:902:e807:b0:185:534d:4bd3 with SMTP id u7-20020a170902e80700b00185534d4bd3mr33492845plg.26.1666642373071; Mon, 24 Oct 2022 13:12:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642373; cv=none; d=google.com; s=arc-20160816; b=q3f1PzwfVGVoyE80aH2vdLrPBmG8TXi9bBdaPkEyFEPqnUwjRbM2jeb9SYNOT+VXmc QPUJWRGWYA8zpqC8XcfGawHLoSSVq966UyWjSuIPkbBnT/1N52/2hdTzw6AqXVo3AWfl joAEBL3WJVN7MeiCfLC+Jrn5UbcUdbgj9kaD46d0J6H3y/PZyDjPNQIzs3Qk85zO1+3A ZCqEwMrCrtXb7r2wWiPkvfcby8kviFb8dV3MWOneNEUWjAzWT1joASSNbeZp5v2p7PxA TFXWFp246ykW38qdt6rBp3C86vOAcA8gueuHXDBx56//VyYMwMtU1u06LlVoSdfPIHn8 TP+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=N6W+CXwQP9ZcH6ztCYE0MpcmSu0rfOg+3GfDaO039jk=; b=pR29U6UFcMfaH7S/YFlYBaYTcFT9ENAk3/QbemoCL6qugfVSe9vwZCE1hMR/4hWhJ7 71TbRrH749dnsir7lMkoU0jMXuA/b4ZV4J/sRuXjw0g5GQCS5YhEjw8d5AzWs0VgWIGd XxmmDrSDNv5FCBwDy5YNIPmcX9P3QPAY058kpLMXvja5bRaP071nz1utv6zYA+w+je3g Oy1SpMLw/eijJn1pWUaYRG2Geer5PpjkXr3VpdjktYmI/3Y+ryo6LKwZdK8RENKZ1HAt 0CoiiQnfukE14bDYRr8wUdmIvokup/iJulfJsbnMPkBsufTK/x4IPcDx/+/N8e476VG/ BVyQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=MyyCJTcb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j19-20020a17090a589300b00205da45d8a5si8936076pji.124.2022.10.24.13.12.39; Mon, 24 Oct 2022 13:12:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=MyyCJTcb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233370AbiJXUAl (ORCPT + 99 others); Mon, 24 Oct 2022 16:00:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54120 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232665AbiJXT6j (ORCPT ); Mon, 24 Oct 2022 15:58:39 -0400 Received: from mail-yw1-x114a.google.com (mail-yw1-x114a.google.com [IPv6:2607:f8b0:4864:20::114a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2CB8A27E079 for ; Mon, 24 Oct 2022 11:21:07 -0700 (PDT) Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-3691846091fso97002017b3.9 for ; Mon, 24 Oct 2022 11:21:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=N6W+CXwQP9ZcH6ztCYE0MpcmSu0rfOg+3GfDaO039jk=; b=MyyCJTcbNDcWyLPc/QWROdPmUsiRtgLtA0uZwhDYIaxhjKZzDxzsl0LiHcpqoHsJtK 1uA9haRF3y8/UUCcPDlSPw8+dqL3V6VLOOb6vGOCckQozVmUJ12d87C6a10LYnyDMeGe IOjzMYM+Qk/DMWgi1nw/qHPpKQ7Sjio4Z2pee+crAwV8uPUxdioh1H32O9lF+3yXMrsu p+uwpa6xXEwn9uUvYsT2zOZBhvGXMdYYIM+P+3FTnb4A/4gA6e0Ms4EsPIQgfnvBOp8I dX2qW7UCwOEVF89oEkT0K59f5ns6ha35MwcUu7PlLh6ia4fRViZXBJqniEWLj+wtEmsH 1YHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=N6W+CXwQP9ZcH6ztCYE0MpcmSu0rfOg+3GfDaO039jk=; b=nvd58Vf1la2NtCnI5/m6+s0ybEPdTzBqa/p2kq3sh6HSLG1fdMF7vCj8zzC+6RJM5V 00zQLRWYayy+rTpEyk1MgGtpf6iezfGYJiV7pxw9DI2OcYxIRdzYAdMXdDdaQSuIWyhk 1zyfsM7PDQCkst71SbPfo3pMxMW7qv6Nk4V2cNTWzjf26t9XaDt56XixDQmFApCA0tgd 6s7IiM/mVuMMCX6iof4xVmwohM+O/oZrg11VXLYmgVd6M4T0r1rmNYaSvySWglWCEvWt tQ4rRPtYgiMZ02ulxsYy9cr6xMYn/64Tdi9bcSRd024oF+9+Fg5MR4oCqBpZBw0L/0jL trWw== X-Gm-Message-State: ACrzQf09u40jWT90EZ+rJuuBdsIpwv/+R82F/rxFAj2K66lJFjtsAc+7 Kl3/IJ7ffSc+16J2VL7LNdsMT8xZ/O1M X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a0d:d954:0:b0:368:d5ea:fc6a with SMTP id b81-20020a0dd954000000b00368d5eafc6amr20555995ywe.50.1666635616419; Mon, 24 Oct 2022 11:20:16 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:10 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-6-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 5/8] perf session: Change type to avoid UB From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601192535013641?= X-GMAIL-MSGID: =?utf-8?q?1747601192535013641?= session_done is written to inside the signal handler of perf report and script. Switch its type to avoid undefined behavior. Signed-off-by: Ian Rogers --- tools/perf/util/session.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index 1a4f10de29ff..0e1a3d6bacb9 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c @@ -1,5 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 #include +#include #include #include #include @@ -2022,7 +2023,7 @@ static int perf_session__flush_thread_stacks(struct perf_session *session) NULL); } -volatile int session_done; +volatile sig_atomic_t session_done; static int __perf_session__process_decomp_events(struct perf_session *session); From patchwork Mon Oct 24 18:19:11 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10114 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp632659wru; Mon, 24 Oct 2022 13:12:07 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5hOZe4dPsw9/zKMj3NanTy7RUQUieR11MWJKXtEOm8c98Amjfdqn6oXRF1uF/FGeOfKBBt X-Received: by 2002:a17:906:7621:b0:750:c4a3:8fcd with SMTP id c1-20020a170906762100b00750c4a38fcdmr30533392ejn.180.1666642327181; Mon, 24 Oct 2022 13:12:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642327; cv=none; d=google.com; s=arc-20160816; b=I3HkUCNn1EAcFwIRFgcSIAigjH3PAJil7RdS9YNtjWKiRe5CcxRN8Zvx8A9HPTBr9n R53svS7NoD9oXmxwjB0gKTE9Q4iMF3DtuHX5RMo2Kq7vw/G3TyFkC6ouukVwZKMCbIl4 fpDCe+NlQ4i2HSND7RteSsBjDTiiCh7GxNwtxHN56wF19yEFCMvudg8y1NSTFDs7MZg2 pQ39zZ1sFrNFmoEq/7vHDHucOoyM5mbXtpsqF6v0YNlk2x489J5MNWhudQFFfMXkdcFE 8HJrm51dcYLCZ1KDh0fr7bUW4xXASR/xftHUDr22mfVL3fqPRRLjLf/b5ehAtN4ukViy NXTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=IO66rWb82Ym5SFWEwsbpBF8A8iB7JwCydGL2I5mbLFY=; b=sYXdxRNKltYGiNuV5gLoGaXQmmOn/0sZtI6EK/3+GIKhyaFm+qVl4NBxdM31szOrE/ f5AghdS8xC7AGQyVhGilkmX8dbTIuhLiNhnGYk023wbWgy/CtGwjNYuSWmlm3Dm5YH9F AGAgRiVUEjjiXjkweaJeJ/yxvkjq1fhNvH0tz1mfcnaPacOPpYm4ZYVfU1JIxPr675kB Lk/z0p3EcnRjF6jb2z1RiUnxGHZwRTE42DXiTNACPFLTuklXmm4aWKG3XiyIgjixPNLD der0ZZ3QKgHdW7tKvWbmEgqnj9sWqa3EBdy6OlZim91E6WugKAmRdXd6DrgD7/R8NSGF BKbQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=hds5L9pq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id dz13-20020a0564021d4d00b004619453ac91si775616edb.499.2022.10.24.13.11.41; Mon, 24 Oct 2022 13:12:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=hds5L9pq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233050AbiJXUAB (ORCPT + 99 others); Mon, 24 Oct 2022 16:00:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57926 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233971AbiJXT6o (ORCPT ); Mon, 24 Oct 2022 15:58:44 -0400 Received: from mail-pl1-x64a.google.com (mail-pl1-x64a.google.com [IPv6:2607:f8b0:4864:20::64a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 220AB280EF8 for ; Mon, 24 Oct 2022 11:21:16 -0700 (PDT) Received: by mail-pl1-x64a.google.com with SMTP id n1-20020a170902f60100b00179c0a5c51fso6773979plg.7 for ; Mon, 24 Oct 2022 11:21:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=IO66rWb82Ym5SFWEwsbpBF8A8iB7JwCydGL2I5mbLFY=; b=hds5L9pq39xD5mOs2wSydg/fTH9JKNsJ7Rbx4+Zwar0mwCiXd1hUG54QUFgvXIy46C 0Nuybfzj2CtB9cQ87gNkJHD4MHJc113lhZZBc1ReSEFoxUjqpdWMir9O2DRmqD7ls/MW /M7P7UwALSMn681ZAGb7ZMYNuscUeK/5z2yD2R3faeyxN9tYpOCOSvAqSfBITEHXq4aM ZDekWbhsSEyGVKC9MlqoG8fW1+//MdAC2v70eHWLCMBgzcrePSjc7sMpNZJTy3eIjYJP auJ5eWSlKWzOox1BEvLJHFG/Y3irC2WZBoMDi9LvpgiZ1ZpS38/wuu4xWHW7ZGO8vbV7 Bo+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=IO66rWb82Ym5SFWEwsbpBF8A8iB7JwCydGL2I5mbLFY=; b=AdPCszGK82yHO3jDmhpLy4IS+JWtW6c3nX734VvYrh/BDpbn4FfowkUL5PX75Dxei6 dS02nNYIc1fVHSTscWDQeUvgG2d3T/4YCYZt8LbjUn1+qxMQJaefdie9TLRvtAzJ6y1d 0+Ft/n63PWs7/hg4NrE6TuXF0EGTP+eKr8xF9fj2VlPQuZNupbeB33WaqEHgJBHtE1r+ izUdgftq60sv6af/10+E94HxJoBEeGdHkKAxpTz9PQqeY00h5U1NNQNq0iSw3jfLpLSy edbLTWavCYjH0RjyleUblncHrgwzr7HT+ovG5wOXPqXhOjhrArC8aYa2Jv1q5tV64iGL BbrA== X-Gm-Message-State: ACrzQf2T/lDVAv4/bvEUf7aP6EDEI4qr7hmBYpbUZ1cpoCcUu8wwsuXc FXDQSD6e3SfiIsx8NvKsXqaq6aznNqOK X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a17:90a:7a85:b0:20d:2891:15f with SMTP id q5-20020a17090a7a8500b0020d2891015fmr40660039pjf.107.1666635626193; Mon, 24 Oct 2022 11:20:26 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:11 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-7-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 6/8] perf stat: Use sig_atomic_t to avoid UB From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601145236682296?= X-GMAIL-MSGID: =?utf-8?q?1747601145236682296?= Use sig_atomic_t for variables written/accessed in signal handlers. This is undefined behavior as per: https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers Signed-off-by: Ian Rogers --- tools/perf/builtin-stat.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 265b05157972..e1a5605adb97 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c @@ -173,7 +173,7 @@ static struct target target = { #define METRIC_ONLY_LEN 20 -static volatile pid_t child_pid = -1; +static volatile sig_atomic_t child_pid = -1; static int detailed_run = 0; static bool transaction_run; static bool topdown_run = false; @@ -208,7 +208,7 @@ struct perf_stat { static struct perf_stat perf_stat; #define STAT_RECORD perf_stat.record -static volatile int done = 0; +static volatile sig_atomic_t done = 0; static struct perf_stat_config stat_config = { .aggr_mode = AGGR_GLOBAL, @@ -569,7 +569,7 @@ static void disable_counters(void) } } -static volatile int workload_exec_errno; +static volatile sig_atomic_t workload_exec_errno; /* * evlist__prepare_workload will send a SIGUSR1 @@ -1029,7 +1029,7 @@ static void print_counters(struct timespec *ts, int argc, const char **argv) evlist__print_counters(evsel_list, &stat_config, &target, ts, argc, argv); } -static volatile int signr = -1; +static volatile sig_atomic_t signr = -1; static void skip_signal(int signo) { From patchwork Mon Oct 24 18:19:12 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10112 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp632392wru; Mon, 24 Oct 2022 13:11:29 -0700 (PDT) X-Google-Smtp-Source: AMsMyM54VsY44SnJ7LXi34yN3v+gzFJu3gqf4N20Cb4oQQyEe62+i7+NRG1ZmMaZqXm9ywtfesNz X-Received: by 2002:a17:902:be0b:b0:182:fd6:1293 with SMTP id r11-20020a170902be0b00b001820fd61293mr35446728pls.146.1666642289217; Mon, 24 Oct 2022 13:11:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642289; cv=none; d=google.com; s=arc-20160816; b=Rh9sSW82VCF4A9qZA5gypBZ37mz/WQ8iuBxa5vwKmJjgyCQvRPxpxVvQPGwJ3vXbC9 8ZvkTPAe1dTyaOhk69Z6YFUE0A7EpH59w10JHKddPOlvLVEi3i0cv0j8Ib7rsbq9uRrT QoUVJ7Q4KjjAXXc3qXgJ+ynPnXc3/hvH3TFjYKC6+y5FTqzKjbUvkNc2bCcK4PyPx/V6 2W63wovva2DQ52UtAKjZBJgm6BlTofKo9Pdxkgb1j6KLXOshtV5x2wzByPBmApr7o/kX aItMfDky5UPQ3gUMSPoRj3fyhvZ5yqj3at88UwjMD+Dp1klXl0kCkQXPjmKbijLNNMiQ NwpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=kzKQRTEXGqt08SGBdEhLKezf4NlN9FWNmZKirRw+wNE=; b=0+VbiGqZwrMF+K24vOi1Jaq3dioj5jek4elZU+nqqpL0pCQztPgdoCDF3PI488FZt3 OvduadDjOtypKa4AONdUTC2TrXEYGRTm6BpLEqeHStz0PDlbUSyJauT5MyCvDaBqalx9 EGJz1obgyuqiT+mpw5k8Z0rN7FOSdsd5VmiYZKVAu0nIiXb0pmGhoW45JneumOBCiXD1 vJ+Dw5/T9xWuFoKc/YQmis1Ra7yyJabo0whNm50zD5Sd+NAHxIl0Ms2e3ZbHukmFihNB gWixrpA4Fer/cLkBj6Lv61KEImDOH8JY1BQs0AMGsuzjUkVcMAqzKkOdY2rA3RwQUg4f 7gTg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=iiTJs0VE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id qe5-20020a17090b4f8500b00205f9df1f32si1018256pjb.25.2022.10.24.13.11.16; Mon, 24 Oct 2022 13:11:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=iiTJs0VE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232186AbiJXT76 (ORCPT + 99 others); Mon, 24 Oct 2022 15:59:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38058 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233818AbiJXT6o (ORCPT ); Mon, 24 Oct 2022 15:58:44 -0400 Received: from mail-pf1-x449.google.com (mail-pf1-x449.google.com [IPv6:2607:f8b0:4864:20::449]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E7DC228511E for ; Mon, 24 Oct 2022 11:21:22 -0700 (PDT) Received: by mail-pf1-x449.google.com with SMTP id y143-20020a626495000000b0056bae530d80so2145463pfb.9 for ; Mon, 24 Oct 2022 11:21:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=kzKQRTEXGqt08SGBdEhLKezf4NlN9FWNmZKirRw+wNE=; b=iiTJs0VEY07rTilwdAieFazat3VOy+LVzf466jKCU8DFFU3klelDhVQh411e4Fda+W LEuRBdu5LJXJRND4MI9Z5m59FiS19f6TSE25O5r/TPPn58S5GgDVU2YAsHHigzmAWW5K S2L4iZahsiLBOs9YUXiczWeQG9G/+qNfojh8Pd/yuqpT87M8udlLSpbpVUSicv0UHszq WUC47j2oZTq+UOoaGTGgbZVfAe28njxnsOhstYgGz7teIVnuNOE0Ee/PTTIqj/WNedF0 sO0lxWfViGHOR2aRo/LnNfYE+7oupjVOGaFuOzh2y2uR4Gco+sfFuu/ErLgbWtfKNyQm 8Vtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=kzKQRTEXGqt08SGBdEhLKezf4NlN9FWNmZKirRw+wNE=; b=JMG0Pus4feu8g/HKEGa6hBeSUfh/8hHszP++0Pnhj3SKl/rKEIWjaN5/XansuqykPI VU0QBGOi+RQTYK5jlp41ygSr7iuPWD2JxusBexcyDrhfW+egUj8fSgq0Y/UA5ERae9Mw CQCk5OABp9avIG4d3ZMHnBsvj/0zjVByAw48vn74f6FPGxTQlKF6FoNiiB8EbfjbsfU7 xaieAjemOv1e1TRjW8SYycRSRxTkORIGeStDi06I4bvj56mBgO1W/iiy8+sqRI4ew4YE EK3XfHunJBXeycjwXKs95UVfG42vszNHHXuWQ2daPMEz8FuFbQ+/dBn40pgoLmO2Ze7J +K8Q== X-Gm-Message-State: ACrzQf3+/5JZPZn9w4IlH+LX9IjnnlAD9EHb7S03hC/RIGckw7ISNnUd qIMQkytJV4xuZmZAA0hdgVT5Mew0XR+L X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a65:4943:0:b0:46e:f5e3:3e94 with SMTP id q3-20020a654943000000b0046ef5e33e94mr7928144pgs.75.1666635634101; Mon, 24 Oct 2022 11:20:34 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:12 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-8-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 7/8] perf top: Use sig_atomic_t to avoid UB From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601105500142131?= X-GMAIL-MSGID: =?utf-8?q?1747601105500142131?= Use sig_atomic_t for variables written/accessed in signal handlers. This is undefined behavior as per: https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers Signed-off-by: Ian Rogers --- tools/perf/builtin-top.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c index 4b3ff7687236..bb5bd241246b 100644 --- a/tools/perf/builtin-top.c +++ b/tools/perf/builtin-top.c @@ -87,8 +87,8 @@ #include #include -static volatile int done; -static volatile int resize; +static volatile sig_atomic_t done; +static volatile sig_atomic_t resize; #define HEADER_LINE_NR 5 From patchwork Mon Oct 24 18:19:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 10126 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp633585wru; Mon, 24 Oct 2022 13:14:47 -0700 (PDT) X-Google-Smtp-Source: AMsMyM71mUMkVqiIL38BbliV/mDpDS0Gay3lRN/HPAqi7V8Iu0Uo47MznqndIz/Fho5vDU9sX3XP X-Received: by 2002:a17:907:9811:b0:79a:a1fe:8be6 with SMTP id ji17-20020a170907981100b0079aa1fe8be6mr16651953ejc.480.1666642487294; Mon, 24 Oct 2022 13:14:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666642487; cv=none; d=google.com; s=arc-20160816; b=S2vKICXPU3wAIRf9gt3dxMTpbw6wZcU3wS7KyBzRlJyKJ3RftgmR8sxvu8OsUrmW4X wEWoijtpDCsrSYjewSAsYCvvXa8WwrXWoiAMk6fY89MkqJostK6sgW75jsl2YypZftLT QsgGRYlOl1sz3a2cQW6Bh9MtutcNK9QWueVIkUtMQO8rh44S25Xqt0um0m5CpglHJnBE tKgbBIhoKKuZ3vueFiqeqv/HrZkl798btKMty5rGF5t99CHkAXpraqr/6lz7Zyk+spLY WRJmNoCcfm6GThMi1q1PBYghzRqI+bdFCvZd2nD1OWN2a6PM6Obp83QyU5HN0AgZR0Yi nDIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=sJwUbAas6HwUpEbmohIDJ22IirHP0xTxc+7b+i3VB6U=; b=HHjcDVMp/Tpw9X7O9pHKmpOTKxg74N5ZhJhCU0zAW2Up5ryNP0xO0sKcjm4792b2i/ ysMMy+Ryc2cjJqR7vHKZzAyyTAxJwo1drubZqjecvq16WiAnbVAh580ZbqAEMVf5LDHq MjcXZCOo/2NbexGL+siETcphzxVb8i1YwEqs0i6CIP2P7p+R0qmX+gzdYuCHebunbVrz TyGqGwhAEx57j3lIFyXjy20NRgRO4LNzqJvWRhFVfoAuhsQSO+lMoTbUJVE4tjtDyKxd ua2XXIiuMur35w0+ag501fvQW27Ul5Qi2nQ4fO+wxIxlS8Ua3FwiuZebYiW2anxRTP0G tZvw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=DnGef15I; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l17-20020a170906795100b00797670441desi637442ejo.911.2022.10.24.13.14.22; Mon, 24 Oct 2022 13:14:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=DnGef15I; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230374AbiJXUAW (ORCPT + 99 others); Mon, 24 Oct 2022 16:00:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54118 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233988AbiJXT64 (ORCPT ); Mon, 24 Oct 2022 15:58:56 -0400 Received: from mail-pl1-x64a.google.com (mail-pl1-x64a.google.com [IPv6:2607:f8b0:4864:20::64a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 178F8285B54 for ; Mon, 24 Oct 2022 11:21:31 -0700 (PDT) Received: by mail-pl1-x64a.google.com with SMTP id w11-20020a170902e88b00b001855276704aso6819562plg.4 for ; Mon, 24 Oct 2022 11:21:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=sJwUbAas6HwUpEbmohIDJ22IirHP0xTxc+7b+i3VB6U=; b=DnGef15ISVlJnfi1KdPzmICCiRSaKIZLMjxG9TJJ8kDAx+s7g+g/2xISsfzdrDh+WW /f6JqO38QlJnZ3N9v9ldBM2gB5j9g0mvhCW87whc3ZY/AogByxJnYfA9QCcZ1uJ3uJ9d 6zoLYgjruct7UaRGpXkJsHL2JA8nWB9V1yjJokQcpkKDcmkbKYEpVT/XbLGdpYFok8JB RkFfVFbMtjhAgFr81QhRU6/QGKSH8KhHTJ68iwVmVI1h7s7HMdWrgDUu130hdz+MJCS5 txCDwpf4bbfhmf8jzO6QwoM2RrNXZa4QUaZph5FgHM5muRrU0FG9hu9AHZODHPXTkvZ2 UkWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=sJwUbAas6HwUpEbmohIDJ22IirHP0xTxc+7b+i3VB6U=; b=KJiYgtX+x0gAwiVc0UFA8O1pHsDIyZm6hCcwxI/OiPQ3fzGLFRPAR2tVtc/nKRWtLt lM/fWcF2mh6eCBjRjTtNzDIZ5qpI+Rom/+5x+69rw0W6FJK/nb3lJqF2x52z8xiaM1Kw 4wg/iwojqPW2L1l5vmG+L8QRlYa9J9J9wnT/9v1xoXeTpc2p6UaxnTxaLzeASpzEhX/V IgDg1N9/HX5kbMja0qDo5fppwCQOMm7pp46ijpUVdmhUNRKGCLNtWKqFYMo8R53EdffI xlUlylzvoskFbXnRhhYN9zvhD5O7AmQ/v9YB9OWu8pPVV7+ft0XvdZd0jTG6XwDgfHow THRw== X-Gm-Message-State: ACrzQf17lQWtKLhHyrHx3sCkD/fCeAIpBp2imvTKBBxExfMCeFmxq299 lRJqR9kIq7fyx61E1eqU1F3FjnoRDEGN X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:b8bc:a57d:a2a2:efdc]) (user=irogers job=sendgmr) by 2002:a17:90a:b794:b0:20a:eab5:cf39 with SMTP id m20-20020a17090ab79400b0020aeab5cf39mr3956618pjr.1.1666635641443; Mon, 24 Oct 2022 11:20:41 -0700 (PDT) Date: Mon, 24 Oct 2022 11:19:13 -0700 In-Reply-To: <20221024181913.630986-1-irogers@google.com> Message-Id: <20221024181913.630986-9-irogers@google.com> Mime-Version: 1.0 References: <20221024181913.630986-1-irogers@google.com> X-Mailer: git-send-email 2.38.0.135.g90850a2211-goog Subject: [PATCH v2 8/8] perf trace: Use sig_atomic_t to avoid UB From: Ian Rogers To: Leo Yan , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Adrian Hunter , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stephane Eranian , Ian Rogers X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747601312436639218?= X-GMAIL-MSGID: =?utf-8?q?1747601312436639218?= Use sig_atomic_t for variables written/accessed in signal handlers. This is undefined behavior as per: https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers Signed-off-by: Ian Rogers --- tools/perf/builtin-trace.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c index d3c757769b96..72991528687e 100644 --- a/tools/perf/builtin-trace.c +++ b/tools/perf/builtin-trace.c @@ -1535,8 +1535,8 @@ static size_t trace__fprintf_tstamp(struct trace *trace, u64 tstamp, FILE *fp) } static pid_t workload_pid = -1; -static bool done = false; -static bool interrupted = false; +static volatile sig_atomic_t done = false; +static volatile sig_atomic_t interrupted = false; static void sighandler_interrupt(int sig __maybe_unused) {