Received: by 2002:a05:6358:16cc:b0:ea:6187:17c9 with SMTP id r12csp1765245rwl; Thu, 5 Jan 2023 19:43:06 -0800 (PST) X-Google-Smtp-Source: AMrXdXuS23R3kOuArWkWysR9RKwt8onvYa+xilkwma0ERGzdUGgfP2j7cQlsNV7av2py9Ezyd1Y1 X-Received: by 2002:a17:907:a0d0:b0:7c1:637:585d with SMTP id hw16-20020a170907a0d000b007c10637585dmr46168099ejc.0.1672976586239; Thu, 05 Jan 2023 19:43:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1672976586; cv=none; d=google.com; s=arc-20160816; b=YXTk72AvK6GbwjqL78i2QaZX+3S84KRcCkykXOmGEHKpwCUqXCXB6mRZpQoWTiBCnS +vcOHoJk91B4wNI/r83DGBI5cz2DjJWVPHn9oLnLXmmYSfnD2QKPXrPcS+SwCVxPufrH 8C2FATi2BajPGIyCcW7Cqt5a0TgwmfxMBOt1QyJ2flfVJH8LDgaRunTUrDZ9BrmbyY5d CqtEs0QP+ohueXBXnPENXipSg9X1A33riLX856/Bnv0AeSYd0ZS1hO2K/M8XwQ/xO1Lr P1qFHEvyOq1Jxodff/bAdpM7BelLyEHBCC7ZNJWd0t6TI7/cqkQ8FwjQKSRj3R7gAVcY Bgsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=rjo4Jghjutr6bluz62hoCdS6glZQG3a52/9FK2lukzI=; b=KnScKiIEhsBeG6cVHL4LhzK18VXDPf3yl+BNAu9Hnf0WIjLiRiy13Y7GmwzPKL0A6Z 9SWAIJyG9zQMIBYJMmEAGBAxHO+iq/fO0heccdX36Py1Niha2pCm3muEImg1IrohUde/ utfOsDQu4T6Y9De+J7m9ci0cppv1Adk7jsvzzvbkK61rqHuz2PZxfke/+8JeTp8Ld9dQ CC1pTy95ECTSlihU/6CFBALEQoE2W4GHiWJSQ0CUaKDv76knK1W8U3tY7FE/CFASAkg7 OuqvaB0Vmr3CEFnlxhKRNI2r2n933fIsi/Sbicf12h7EjuzDhj4J+0nqo8Oob+oIurXO aoLw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=s532sJFg; 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=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ga20-20020a1709070c1400b00781d82a6fc9si34698336ejc.264.2023.01.05.19.42.53; Thu, 05 Jan 2023 19:43:06 -0800 (PST) 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=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=s532sJFg; 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=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231514AbjAFDYe (ORCPT + 55 others); Thu, 5 Jan 2023 22:24:34 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38816 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229643AbjAFDYb (ORCPT ); Thu, 5 Jan 2023 22:24:31 -0500 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AAE11676C0 for ; Thu, 5 Jan 2023 19:24:30 -0800 (PST) Received: by mail-wm1-x32a.google.com with SMTP id m8-20020a05600c3b0800b003d96f801c48so2757757wms.0 for ; Thu, 05 Jan 2023 19:24:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20210112.gappssmtp.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=rjo4Jghjutr6bluz62hoCdS6glZQG3a52/9FK2lukzI=; b=s532sJFg8u450Qtnjvc/7S8yDiQlxN44MCQwiYg3nBAaEj1ihbFjS7mgygzUH7flRU UxThz7fma4uKEzG3fmC1GTapPHlMJUmmBYYR3Fdd7BDVgpVAYeNX1ncZzX5IcIEpcq4P EUWrl9zP55XM1wVxSKy7ERkn1duQrGbRcXFKBnZIUCaTRyRW3uhtg53516nGSDsG1BKL C4pyo8OLuPv/Hxe8MJ/9yrk6CURl1evRKG79PO3eGHNGfydg0KMOX80uFeX/uEjmHxuw sJbfY2Tkwl9zJlglXGqs2PSAxuUEMikqeGIkku8xwlrljedzrVyU7XPkJVddlXPh7ak5 uIow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rjo4Jghjutr6bluz62hoCdS6glZQG3a52/9FK2lukzI=; b=d5Y2vlok6lhmCqsmRscHyjXLtWJFDCsNeNyAsltzgwR2jcydJa31amM+b2mhKk+nGZ 6CSvkdUoaT7a6PmaHXkkIyoKWlU1LVUosH+sTKj5ri2cSVYExTlE6w6ebz3mXKLUwi8A omp7YLaAuYPFRTZ65Fym73A5gf0q2E+O1rC6pX4Gdp4jjJIyvaxlhThkvOeq7D19cUWO deHeD/rVLkqPvV2Ki565fEplJ5LatPMlsrXfEiCMk5T0ZUoxTbD6kdpsOL+ai5OSx2kh 68RqXfjhYisIM7pJUozvLH6TkP7dejFtaWq4Z7Y0XDFwxcfpGBPQhaFMlODVEKfFtOR/ gi7A== X-Gm-Message-State: AFqh2kpjL9CDZNbTvXaSQ6PLg7d0FlDXbqpN5Q6fhstMJmBbLZlsHDs0 7zbINhfuHti0XxEOilNHGLwpN2TrRbpLYFJsrNCLbg== X-Received: by 2002:a05:600c:2d84:b0:3cf:77cc:5f65 with SMTP id i4-20020a05600c2d8400b003cf77cc5f65mr2990503wmg.25.1672975469284; Thu, 05 Jan 2023 19:24:29 -0800 (PST) MIME-Version: 1.0 References: <20230105100014.1935-1-cuiyunhui@bytedance.com> <20230105090807.51213cea@gandalf.local.home> In-Reply-To: <20230105090807.51213cea@gandalf.local.home> From: =?UTF-8?B?6L+Q6L6J5bSU?= Date: Fri, 6 Jan 2023 11:24:18 +0800 Message-ID: Subject: Re: [External] Re: [PATCH v2] sock: add tracepoint for send recv length To: Steven Rostedt Cc: mhiramat@kernel.org, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, duanxiongchun@bytedance.com, kuniyu@amazon.com, linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 On Thu, Jan 5, 2023 at 10:08 PM Steven Rostedt wrote: > > On Thu, 5 Jan 2023 18:00:14 +0800 > Yunhui Cui wrote: > > > @@ -715,6 +716,10 @@ static inline int sock_sendmsg_nosec(struct socket= *sock, struct msghdr *msg) > > inet_sendmsg, sock, msg, > > msg_data_left(msg)); > > BUG_ON(ret =3D=3D -EIOCBQUEUED); > > + > > + trace_sock_sendmsg_length(sock->sk, sock->sk->sk_family, > > + sock->sk->sk_protocol, > > + ret > 0 ? ret : 0, ret > 0 ? 0 : ret, 0= ); > > The length and error seem confusing. Basically, length is ret > 0 and err= or > is ret < 0, right? > > That means we don't need both. We could simply have: > > > + TP_ARGS(sk, family, protocol, length, error, flags), > > TP_ARGS(sk, family, protocol, ret, flags) > Hi Steve, thank you for your advice=EF=BC=8Ci'll modify it on v3. > > > > @@ -992,9 +997,17 @@ INDIRECT_CALLABLE_DECLARE(int inet6_recvmsg(struct= socket *, struct msghdr *, > > static inline int sock_recvmsg_nosec(struct socket *sock, struct msghd= r *msg, > > int flags) > > { > > - return INDIRECT_CALL_INET(sock->ops->recvmsg, inet6_recvmsg, > > + int ret =3D INDIRECT_CALL_INET(sock->ops->recvmsg, inet6_recvmsg, > > inet_recvmsg, sock, msg, msg_data_left(= msg), > > flags); > > + > > + trace_sock_recvmsg_length(sock->sk, sock->sk->sk_family, > > + sock->sk->sk_protocol, > > + (ret > 0 && !(flags & MSG_PEEK)) ? > > + ret : 0, > > + (ret > 0 && !(flags & MSG_PEEK)) ? 0 : = ret, > > Since both length and error are zero when flags has MSG_PEEK set: > > trace_sock_recvmsg_length(sock->sk, sock->sk->sk_family, > sock->sk->sk_protocol, > !(flags & MSG_PEEK) ? ret : 0, > > -- Steve Regardless of whether the MSG_PEEK flag is set or not, it is possible to return -errno, but based on your suggestion, I plan to modify it like this: trace_sock_recvmsg_length(sock->sk, sock->sk->sk_family, sock->sk->sk_protocol, !(flags & MSG_PEEK) ? ret : (ret < 0 ? ret : 0), what do you think? Thanks, Yunhui