[v4,1/4] tracing/probes: Fix to avoid double count of the string length on the array
Message ID | 168904148467.2908673.7907708071012864793.stgit@mhiramat.roam.corp.google.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a6b2:0:b0:3e4:2afc:c1 with SMTP id c18csp201104vqm; Mon, 10 Jul 2023 19:34:03 -0700 (PDT) X-Google-Smtp-Source: APBJJlGOu5BwI4GOds/wQTzpT1IYMjIIgP8Q1YgfdQPI2R0/u7GjGU81I+PiMM5Il5qtJ0KtLc7X X-Received: by 2002:a05:6808:1246:b0:3a3:eabe:7fc0 with SMTP id o6-20020a056808124600b003a3eabe7fc0mr11894219oiv.7.1689042843606; Mon, 10 Jul 2023 19:34:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689042843; cv=none; d=google.com; s=arc-20160816; b=sUtkDjKFUOMa1GCpO9z+iU0jl9kFteZVUeha3wBt8DKw93Cy/oYiMPjpsgecor1D+p lNbKnq/a5otyNCaVpFxC3OdIRUh5HHEx9gLbOwMNNXClDdMON1wTSIWCyTv54h5eVScq 04iCKEELd//ybUYAh2/nAZh56YWIZGOYwLXo0Y/OuJ4DPNdWeQqZA3dYJt72w424K38H gYmO3Uu/APJcNCOw9Agum3X836WNRlKau26cd1Wa6kat5vlbAfxlOb9awa/YMwQSMrbR YSxojvYUy/ZM/6fAYCD7N1G0VR17TebEmum645enYi9UOs8LWCLZVh/HqAJuN4ULcpjV 7j/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=WH/D6moMhfq7Wty+9IXECmMgcbR77jt2lkbVyrgwC0s=; fh=hf24JvveL55vCfzfv0agRHDWsuhzZqIeZ7dfs5kcUjQ=; b=cgyN0F5eaBvtdQ81cf3LmQgQ6h0XAqmYYH2V/LLp/KoxTplTp10b26nJCsShTSgBtg FZGK02ZuoOE4FROprn46ypr3V9vGok78hm3EcyY4DcmNVyFrHQ7R3/m67a507Tla1jp3 EJCACsawZAenY4H+dgGS6LA80EgJRm50iP1cK8zW0xcAZsVktSAgVkZX6+0LmlJCDe9g 4Y/dPwNerpjQqLMPLFT88qiF7qUATPiY/HYwYDoArKnRuNcXY+jCHVQ+22xcjL5SaY7R bfjAfQcs3AZZrVZP57Tb8lh8R1CQdZQKB7taB8d+vRdAt46VTFW11YxcXor0LPAGdkrT +vyQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="jp5PL+r/"; 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=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cw11-20020a056a00450b00b0066215192dd4si667592pfb.295.2023.07.10.19.33.50; Mon, 10 Jul 2023 19:34:03 -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=@kernel.org header.s=k20201202 header.b="jp5PL+r/"; 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=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229936AbjGKCLb (ORCPT <rfc822;ybw1215001957@gmail.com> + 99 others); Mon, 10 Jul 2023 22:11:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231260AbjGKCL3 (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Mon, 10 Jul 2023 22:11:29 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 10E2912E; Mon, 10 Jul 2023 19:11:29 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 9CD05612B9; Tue, 11 Jul 2023 02:11:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D1AABC433C8; Tue, 11 Jul 2023 02:11:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1689041488; bh=zwpa7syMeSYhTZBa9ItWWjpkC7dz4g0aJQWZT5Tc5g8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jp5PL+r/ZBA4NiHySk0h/kh9G2ejCb9dvpJqZdD1f43zVnusgqqA0XVGmO4Vrdk54 B4QAv4hF0SP9e2jiFJaZtkdXqBVSklAdFOuOFucqZ614i065wJNmD/UpzFp2gyTHm0 6IDI6PQNqy2yppOkNfIUKTNBC/ZAK4oXF1FTFHMOZ8GxO5w7VARFytEFEuzmdLErAf Bv+cvxvzPwvUI8dQx5Wra6hdKp3I1INM2ZFb+hQgaMZJFsqo/iDO59EnEowOo70nM/ m84crjA7vg4z2K2zWxvPOw546DX9OBLBt8xVbwp2SOS2cohJ4rr2cit9jq9Andtnbc p8sIdOc2PZEmA== From: "Masami Hiramatsu (Google)" <mhiramat@kernel.org> To: Steven Rostedt <rostedt@goodmis.org> Cc: Dan Carpenter <dan.carpenter@linaro.org>, linux-trace-kernel@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>, Masami Hiramatsu <mhiramat@kernel.org> Subject: [PATCH v4 1/4] tracing/probes: Fix to avoid double count of the string length on the array Date: Tue, 11 Jul 2023 11:11:24 +0900 Message-ID: <168904148467.2908673.7907708071012864793.stgit@mhiramat.roam.corp.google.com> X-Mailer: git-send-email 2.41.0.255.g8b1d071c50-goog In-Reply-To: <168904147563.2908673.18054267804278861545.stgit@mhiramat.roam.corp.google.com> References: <168904147563.2908673.18054267804278861545.stgit@mhiramat.roam.corp.google.com> User-Agent: StGit/0.19 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1771089788315395586 X-GMAIL-MSGID: 1771089788315395586 |
Series |
tracing/probes: Fix bugs in process_fetch_insn
|
|
Commit Message
Masami Hiramatsu (Google)
July 11, 2023, 2:11 a.m. UTC
From: Masami Hiramatsu (Google) <mhiramat@kernel.org> If an array is specified with the ustring or symstr, the length of the strings are accumlated on both of 'ret' and 'total', which means the length is double counted. Just set the length to the 'ret' value for avoiding double counting. Reported-by: Dan Carpenter <dan.carpenter@linaro.org> Closes: https://lore.kernel.org/all/8819b154-2ba1-43c3-98a2-cbde20892023@moroto.mountain/ Fixes: 88903c464321 ("tracing/probe: Add ustring type for user-space string") Cc: stable@vger.kernel.org Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> --- Changes in v2: - Fix patch description. --- kernel/trace/trace_probe_tmpl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/trace/trace_probe_tmpl.h b/kernel/trace/trace_probe_tmpl.h index 00707630788d..4735c5cb76fa 100644 --- a/kernel/trace/trace_probe_tmpl.h +++ b/kernel/trace/trace_probe_tmpl.h @@ -156,11 +156,11 @@ process_fetch_insn_bottom(struct fetch_insn *code, unsigned long val, code++; goto array; case FETCH_OP_ST_USTRING: - ret += fetch_store_strlen_user(val + code->offset); + ret = fetch_store_strlen_user(val + code->offset); code++; goto array; case FETCH_OP_ST_SYMSTR: - ret += fetch_store_symstrlen(val + code->offset); + ret = fetch_store_symstrlen(val + code->offset); code++; goto array; default: