Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp911252ybi; Fri, 2 Aug 2019 06:21:25 -0700 (PDT) X-Google-Smtp-Source: APXvYqzVou555Wm7PhpjnKd/19hK64UooesQij1Ma2ZWULBfAWoLUd5D/BAnVsM2BxAZWoWNIsis X-Received: by 2002:a17:90a:9f0b:: with SMTP id n11mr4246169pjp.98.1564752085867; Fri, 02 Aug 2019 06:21:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1564752085; cv=none; d=google.com; s=arc-20160816; b=PwXafsD1FGuwkxt4NcKVoLDrSdIhS7v4KvWDa7YtbtrJ9q2SsJfKyusYNo+fST3lid t914nLiNz+IVxNl8x4WliBrD9VocRA0aIrA2v4IlaQla6CRe4hw77wxKR557Hl1NhvDN yz5H/xFiWhlYNbuhKwv9ybfHESYbqYJsAc87ozZOULnQKj4gOumXMQrC6/R9vCL1wNOv 6R2N4mPcOHCyziTOm1gpMVRiB+8oo8oyFS4uWYSM4M5Og82Sw4GdjI1OYP1M+RJECNcb qSXJrkd4NLg1fq0T9G6f/20ZaaxKbWtQYUjzUCs+CFaFHZNRXGL3KRNpMyhpAW5fv58F tKDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:to :from; bh=dVGyOOy/BBzfLexn03Fu6nXpM2AWF8UprVbha6DEywM=; b=BQSg9sNaGlOZyZBRU2k1utYZnV13TMHLjijSVIvvURksHDj6xYu0qxsfRra+uOyDng b/TZHKqB4tDG/3ZaIpmRvgTcVNIwt5c1Bq5OLBTWv5uVd6twBV+lRcgReAjP4zZ1XAMK y0wuttha1VmOCxdnTEt01rtGvcBljmsn/TkIRu6Eshq1Kec7RCv1bBpOxUDszmri7BHm N0e8Dy/JY2dzbZLSkrD376QgCFVursfyX9IyqUgCseHbcD/tmu6Jmn7oM4LiAKC6qF9V b6WjXNBqOGg6GhhSVibIDgZTQyqzxEbONsoEsg1FxAbMht5VlW2UguxORRLffzrrgPUf a+lw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r63si35883747plb.136.2019.08.02.06.21.10; Fri, 02 Aug 2019 06:21:25 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2404230AbfHBIcW (ORCPT + 99 others); Fri, 2 Aug 2019 04:32:22 -0400 Received: from mail5.windriver.com ([192.103.53.11]:50568 "EHLO mail5.wrs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729866AbfHBIcW (ORCPT ); Fri, 2 Aug 2019 04:32:22 -0400 Received: from ALA-HCB.corp.ad.wrs.com (ala-hcb.corp.ad.wrs.com [147.11.189.41]) by mail5.wrs.com (8.15.2/8.15.2) with ESMTPS id x728Twtg028074 (version=TLSv1 cipher=AES128-SHA bits=128 verify=FAIL); Fri, 2 Aug 2019 01:30:19 -0700 Received: from pek-lpg-core2.corp.ad.wrs.com (128.224.153.41) by ALA-HCB.corp.ad.wrs.com (147.11.189.41) with Microsoft SMTP Server id 14.3.468.0; Fri, 2 Aug 2019 01:29:55 -0700 From: To: , , , , , , , , , , Subject: [PATCH 1/2] perf: Fix failure to set cpumask when only one cpu Date: Fri, 2 Aug 2019 16:29:51 +0800 Message-ID: <1564734592-15624-1-git-send-email-zhe.he@windriver.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: He Zhe The buffer containing string used to set cpumask is overwritten by end of string later in cpu_map__snprint_mask due to not enough memory space, when there is only one cpu. And thus causes the following failure. $ perf ftrace ls failed to reset ftrace This patch fixes the calculation of cpumask string size. Signed-off-by: He Zhe --- tools/perf/builtin-ftrace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/builtin-ftrace.c b/tools/perf/builtin-ftrace.c index 66d5a66..0193128 100644 --- a/tools/perf/builtin-ftrace.c +++ b/tools/perf/builtin-ftrace.c @@ -173,7 +173,7 @@ static int set_tracing_cpumask(struct cpu_map *cpumap) int last_cpu; last_cpu = cpu_map__cpu(cpumap, cpumap->nr - 1); - mask_size = (last_cpu + 3) / 4 + 1; + mask_size = last_cpu / 4 + 2; /* one more byte for EOS */ mask_size += last_cpu / 32; /* ',' is needed for every 32th cpus */ cpumask = malloc(mask_size); -- 2.7.4