Received: by 2002:a05:7412:da14:b0:e2:908c:2ebd with SMTP id fe20csp45083rdb; Thu, 5 Oct 2023 16:12:54 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG6In8qEjPoWz0SCs6UazuWVhqbvKVH+N+pH6/Ff11kLLYHk5yHKmzmWsAl3o3ZJfLuB35G X-Received: by 2002:a05:6a20:9150:b0:16b:8154:2168 with SMTP id x16-20020a056a20915000b0016b81542168mr547402pzc.26.1696547573915; Thu, 05 Oct 2023 16:12:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696547573; cv=none; d=google.com; s=arc-20160816; b=SqLWmJO96e7deH7deTW7pqer5XUCglRq6NH6VhqwxRpL5i+cLv+j+rHdZEeq+Pwqvr 1S9SEfYBCJfrK1e+Tpj/tatvqH8HSqTKJdWYFO/pPODbrgTEFKCSivgQGMC/szgv9ya2 iTfUFVrhmoFxhjxKz59RAF0Xb6EFgbB+t/WyZ36vpTOA8rutNdzSToeUMNUQOjRV7k2/ zgT4UrdgbbUTT6QVna4H9AhZYDpvOQQduzbGypBAbpaoqfYrCpr0aDO9fBp7LR1wCF9a mvuKF8RkDT1gwkSaAvv8eT8zdl2HsdCkKGpEO3jDsL5GVbYIPFdMeVbhhMny72Ja/2bl 1eDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=aDPuyVd3XTrJMjMwlPDdlF9+59DlOSoA2gz1djDjGjM=; fh=ZdzhGOa40LFu/dxho92Dtt5+PmOLas2KVCezcgX+KsA=; b=nKFoi2uRe5YG6Ho/qes2C0dxRM7P8elF/9lnf7bhS3RjyB3BmHKItssOUwVSMIzHXu +oC7yIrYqaigat0EuKQ7mmKPqwLbwigIzk0Nbl8GZjM7syueBSsCcIMRjRMMzWPePeVW LxC+LloChBkV8I+AaCzjxVynt4dveu0ROgOu5jVjz5hHAnCMByCWd6KdvPZnB1RUm69+ UljKyAwB4Ub0bTApuBxJJbdbGw6+EAp6mTrDRoou4uuVRs4SrWeW/j6vaAMmxbn5v1iG 7i8N30y4IPnIHRIjm0SDVRnv6QM8sw4AyB3pkOwjePggwb/Lba3tOFahMweGaxBXjnno vO5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=QHb1fH5j; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from howler.vger.email (howler.vger.email. [2620:137:e000::3:4]) by mx.google.com with ESMTPS id cp12-20020a056a00348c00b0069023e4bca8si209033pfb.214.2023.10.05.16.12.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Oct 2023 16:12:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 as permitted sender) client-ip=2620:137:e000::3:4; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=QHb1fH5j; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:4 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 (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 32CB9803E5B6; Thu, 5 Oct 2023 16:12:43 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229763AbjJEXLc (ORCPT + 99 others); Thu, 5 Oct 2023 19:11:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43970 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229619AbjJEXJM (ORCPT ); Thu, 5 Oct 2023 19:09:12 -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 2C1A7113 for ; Thu, 5 Oct 2023 16:09:07 -0700 (PDT) Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-5a2318df875so22818327b3.2 for ; Thu, 05 Oct 2023 16:09:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1696547346; x=1697152146; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=aDPuyVd3XTrJMjMwlPDdlF9+59DlOSoA2gz1djDjGjM=; b=QHb1fH5jZfpq8RyeS/YaV/fetq7213oKI3Glm+P5Tv0brElakNGE0zusBc1IqtkzHS F3cE0t+BdUKNRsfu4cOXwERujggbR3NbvxMMcWltEgnL7eyCws5CIP/V/GXYEIinNH++ cFxdCofmm6ACZ3U7t5n0pC7GXLLtCfcaLa9bwh0z6g4tF0bsVEVy4oUiAfiHjllUhIWT MynrYEVVosmuvb9Cc/SL22cUvJGFQuRu4kVtwnTtHBYNhkvXxDIKvrxiRIczfjwbJuq7 oHi2F4cmXpeU38AyWzqrmnv0SmctqOZYMnwGIDuFsCOKFkiJK9WpAfLQ0PmMeOUyCSCc fYJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696547346; x=1697152146; h=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=aDPuyVd3XTrJMjMwlPDdlF9+59DlOSoA2gz1djDjGjM=; b=TWaTRBHOqw9NW21Y4rba7qFAeH773vk0CA72A+CGlXDp5ODxIAMCxTgwiaS9waSEX5 QsqqmNrJpZdk3G7ZG+9ZNfwgPKvn4lGLKw2dtkSNL6dBXhsZYGkYZNyHnbgbDawPDL8k PsZU6H7QjeKiIi62lnvbfLeoWVKQGx5+ldXWS4sBRGp56nHg7K/t2n2mxonU2yVqba/C bdiH8QucPPqmNtEmWNE3w89Kgj+FQyIl55CNA10dG4FZUOMSUZGi22o8sPZkoG9Pb7Pw fV6coXKiqu4JShgsal/ljdvc3+WYan9r9B9cP7hIVsa/3iNc2G458UZH82XJ6zPaOPex uw+w== X-Gm-Message-State: AOJu0YyPovSw3cdWkyAVmZE7p4kAvy0TDKEdrwQ8BAc9vpAqC4HSePuB dWKYmH3i4IlapyrsRak8+wEDIChKndwO X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:7449:56a1:2b14:305b]) (user=irogers job=sendgmr) by 2002:a05:690c:3146:b0:5a4:f657:3a95 with SMTP id fc6-20020a05690c314600b005a4f6573a95mr91738ywb.1.1696547346425; Thu, 05 Oct 2023 16:09:06 -0700 (PDT) Date: Thu, 5 Oct 2023 16:08:37 -0700 In-Reply-To: <20231005230851.3666908-1-irogers@google.com> Message-Id: <20231005230851.3666908-5-irogers@google.com> Mime-Version: 1.0 References: <20231005230851.3666908-1-irogers@google.com> X-Mailer: git-send-email 2.42.0.609.gbb76f46606-goog Subject: [PATCH v2 04/18] perf hisi-ptt: Fix potential memory leak From: Ian Rogers To: Nathan Chancellor , Nick Desaulniers , Tom Rix , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Ian Rogers , Adrian Hunter , Yicong Yang , Jonathan Cameron , Yang Jihong , Kan Liang , Ming Wang , Huacai Chen , Sean Christopherson , K Prateek Nayak , Yanteng Si , Yuan Can , Ravi Bangoria , James Clark , llvm@lists.linux.dev, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, bpf@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-8.4 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,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 howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Thu, 05 Oct 2023 16:12:43 -0700 (PDT) Fix clang-tidy found potential memory leak and unread value: ``` tools/perf/util/hisi-ptt.c:108:3: warning: Value stored to 'data_offset' is never read [clang-analyzer-deadcode.DeadStores] data_offset = 0; ^ ~ tools/perf/util/hisi-ptt.c:108:3: note: Value stored to 'data_offset' is never read data_offset = 0; ^ ~ tools/perf/util/hisi-ptt.c:112:12: warning: Potential leak of memory pointed to by 'data' [clang-analyzer-unix.Malloc] return -errno; ^ /usr/include/errno.h:38:18: note: expanded from macro 'errno' ^ tools/perf/util/hisi-ptt.c:100:15: note: Memory is allocated void *data = malloc(size); ^~~~~~~~~~~~ tools/perf/util/hisi-ptt.c:104:6: note: Assuming 'data' is non-null if (!data) ^~~~~ tools/perf/util/hisi-ptt.c:104:2: note: Taking false branch if (!data) ^ tools/perf/util/hisi-ptt.c:107:6: note: Assuming the condition is false if (perf_data__is_pipe(session->data)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tools/perf/util/hisi-ptt.c:107:2: note: Taking false branch if (perf_data__is_pipe(session->data)) { ^ tools/perf/util/hisi-ptt.c:111:7: note: Assuming the condition is true if (data_offset == -1) ^~~~~~~~~~~~~~~~~ tools/perf/util/hisi-ptt.c:111:3: note: Taking true branch if (data_offset == -1) ^ tools/perf/util/hisi-ptt.c:112:12: note: Potential leak of memory pointed to by 'data' return -errno; ^ /usr/include/errno.h:38:18: note: expanded from macro 'errno' ``` Signed-off-by: Ian Rogers --- tools/perf/util/hisi-ptt.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tools/perf/util/hisi-ptt.c b/tools/perf/util/hisi-ptt.c index 45b614bb73bf..ea297329c526 100644 --- a/tools/perf/util/hisi-ptt.c +++ b/tools/perf/util/hisi-ptt.c @@ -98,18 +98,18 @@ static int hisi_ptt_process_auxtrace_event(struct perf_session *session, int fd = perf_data__fd(session->data); int size = event->auxtrace.size; void *data = malloc(size); - off_t data_offset; int err; if (!data) return -errno; - if (perf_data__is_pipe(session->data)) { - data_offset = 0; - } else { - data_offset = lseek(fd, 0, SEEK_CUR); - if (data_offset == -1) + if (!perf_data__is_pipe(session->data)) { + off_t data_offset = lseek(fd, 0, SEEK_CUR); + + if (data_offset == -1) { + free(data); return -errno; + } } err = readn(fd, data, size); -- 2.42.0.609.gbb76f46606-goog