From patchwork Wed Oct 7 18:44:01 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Axel Rasmussen X-Patchwork-Id: 11821591 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0AED413B2 for ; Wed, 7 Oct 2020 18:44:13 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 93FCC21775 for ; Wed, 7 Oct 2020 18:44:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=google.com header.i=@google.com header.b="YQmXL1IZ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 93FCC21775 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id AA76E6B005C; Wed, 7 Oct 2020 14:44:11 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id A572C6B0062; Wed, 7 Oct 2020 14:44:11 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 91E546B0068; Wed, 7 Oct 2020 14:44:11 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0092.hostedemail.com [216.40.44.92]) by kanga.kvack.org (Postfix) with ESMTP id 60B4C6B005C for ; Wed, 7 Oct 2020 14:44:11 -0400 (EDT) Received: from smtpin27.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id E56B2362A for ; Wed, 7 Oct 2020 18:44:10 +0000 (UTC) X-FDA: 77346004260.27.talk13_3817653271d1 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin27.hostedemail.com (Postfix) with ESMTP id C5B443D669 for ; Wed, 7 Oct 2020 18:44:10 +0000 (UTC) X-Spam-Summary: 1,0,0,9c7b95542a01d21f,d41d8cd98f00b204,3eqx-xw0kciwqdu17q82a88u3w44w1u.s421y3ad-220bqs0.47w@flex--axelrasmussen.bounces.google.com,,RULES_HIT:41:152:355:379:541:967:973:988:989:1260:1277:1313:1314:1345:1437:1516:1518:1534:1541:1593:1594:1711:1730:1747:1777:1792:1801:2198:2199:2393:2525:2559:2564:2682:2685:2731:2859:2911:2912:2933:2937:2939:2942:2945:2947:2951:2954:3022:3138:3139:3140:3141:3142:3152:3352:3865:3866:3867:3868:3870:3871:3872:3934:3936:3938:3941:3944:3947:3950:3953:3956:3959:4321:4425:4605:5007:6261:6653:7875:9025:9969:10004:10400:11026:11232:11658:11914:12043:12048:12291:12296:12297:12555:12679:12683:12895:13069:13311:13357:14093:14097:14181:14394:14581:14659:14721:21080:21444:21451:21627:21740:30054:30070,0,RBL:209.85.219.202:@flex--axelrasmussen.bounces.google.com:.lbl8.mailshell.net-62.18.0.100 66.100.201.100;04yfumuua86au1yxaxqfp7sb68cifyc8t1fariabhygjdq7eaduha7kh9sisujo.4a714wapo88ouzu49xrtx3bhy9cgmeniapc8qj3yytpeykai8hrg9kxg3b5ksxd.h-lbl8.m ailshell X-HE-Tag: talk13_3817653271d1 X-Filterd-Recvd-Size: 4584 Received: from mail-yb1-f202.google.com (mail-yb1-f202.google.com [209.85.219.202]) by imf15.hostedemail.com (Postfix) with ESMTP for ; Wed, 7 Oct 2020 18:44:10 +0000 (UTC) Received: by mail-yb1-f202.google.com with SMTP id 140so3112692ybf.2 for ; Wed, 07 Oct 2020 11:44:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:date:message-id:mime-version:subject:from:to:cc; bh=zaTrRhcNQbiBSpttX9+h0ylDutyOhlEu02pPakoZbW0=; b=YQmXL1IZZfWvBoigW7dnIOCgKdPdKbs1IAN19ARXkt7TgYzwNcEC2yEsvc5FjOWAkp CKmwEH6f+lh1SbFEMeLVJoaJe7M/SwbpvDvHfXA5cRclXz5oME2rL7DascOisCpTzalG I0D4L1Jf5J93lTvfG6HnetmqyGHn0zb0qWXtMlZO9xkHCXMG/tHP7KGQTct4c6QcmJii aA4u0rbJ59m5ayhtR+gDpMF3cbIBH+OVAncil2i0XVTAvswL5a2sD+BetVSR6TJHFfYK e15+Ng5AWijdmur7mDmiydhceia3L1KdV2R+/BSlqL5GEILZ5ZpF2edZUee0Sna7J48w RlPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:message-id:mime-version:subject:from :to:cc; bh=zaTrRhcNQbiBSpttX9+h0ylDutyOhlEu02pPakoZbW0=; b=dSgOMAN4H5gIa1LLHlj7UkygRacZbnjwJS24f2cZ+4tXCr8ObOMBoDjhyqP0tuI4MK v49VWRhuOwQqvtm9eTsBvk9TNfokwP65nzWbJR4GQwSsC8fCyuWQhAGUqPPZ5JscV8C/ 6YtqMVLOelODi3p5oPz7xvPw5uE2++K5faqKNSo7PC8sDlwQ2QbE7Rdda20LHQk8BW3T XenT4uo0eH6aln4xi+keELsvdhxB+W9L3J9UlrW3O6qLXPrzI9Bxiz9vJbgU0CVkIc78 nAOzO3KC19ITeI8HAmTcNFEwvdO1wM3fA8A56SVe3KIddQFyIw6o3NJKF4Y0YEg44WPw qYww== X-Gm-Message-State: AOAM533XF7DKtKp9C3vPi6u5T9frwCpxN4IRlKVqriRC9CBumcDKdvKk uoZQffpWkA7MpGqGdklzMVPPWsB+k+VxFa1Q/lEU X-Google-Smtp-Source: ABdhPJyAOvITISF0mCmeqoWdYBJRP5GPqkaRIfi/Wq6RwIQm9LoTCHtGG3kUbh6S6DCeTSQ8dqoqRMpGoRWyqTPxreXV X-Received: from ajr0.svl.corp.google.com ([2620:15c:2cd:203:f693:9fff:feef:c8f8]) (user=axelrasmussen job=sendgmr) by 2002:a25:6811:: with SMTP id d17mr5719921ybc.62.1602096249437; Wed, 07 Oct 2020 11:44:09 -0700 (PDT) Date: Wed, 7 Oct 2020 11:44:01 -0700 Message-Id: <20201007184403.1902111-1-axelrasmussen@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.28.0.806.g8561365e88-goog Subject: [PATCH v2 0/2] Add tracepoints around mmap_lock acquisition From: Axel Rasmussen To: Steven Rostedt , Ingo Molnar , Andrew Morton , Michel Lespinasse , Vlastimil Babka , Daniel Jordan , Laurent Dufour , Axel Rasmussen , Jann Horn , Chinwen Chang Cc: Yafang Shao , linux-kernel@vger.kernel.org, linux-mm@kvack.org X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: This patchset adds tracepoints around mmap_lock acquisition. This is useful so we can measure the latency of lock acquisition, in order to detect contention. This version is based upon linux-next (since it depends on some recently-merged patches [1] [2]), and incorporates feedback from the review of the previous version: - Functions renamed to reserve the "trace_" prefix for actual tracepoints. - We no longer measure the duration directly. Instead, users are expected to construct a synthetic event which computes the interval between "start locking" and "acquire returned". - The new helper for checking if tracepoints are enabled in a header is used to avoid un-inlining any of the lock wrappers. This yields ~zero overhead if the tracepoints aren't enabled, and therefore obviates the need for a Kconfig for this change. [1] https://lore.kernel.org/patchwork/patch/1316922/ [2] https://lore.kernel.org/patchwork/patch/1311996/ Axel Rasmussen (2): tracing: support "bool" type in synthetic trace events mmap_lock: add tracepoints around lock acquisition include/linux/mmap_lock.h | 112 +++++++++++++++++++++++++++--- include/trace/events/mmap_lock.h | 70 +++++++++++++++++++ kernel/trace/trace_events_synth.c | 4 ++ mm/Makefile | 2 +- mm/mmap_lock.c | 87 +++++++++++++++++++++++ 5 files changed, 265 insertions(+), 10 deletions(-) create mode 100644 include/trace/events/mmap_lock.h create mode 100644 mm/mmap_lock.c --- 2.28.0.806.g8561365e88-goog