From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 8B1E5C433EF for ; Fri, 6 May 2022 13:18:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=INR9Pdp3VKdVRBhXthSFH6sPfRzrzL2EdS1vraJ9WvM=; b=pSzg7AsvqI83H4 6yLhgyhxWEh/smpfYATic6FLJFSW111qUfI09ycN5uw4q43YdvfqQrW0oKoksh5Ezbeg7dBdan4ba O2IwdyuFuWcu9mqGnnd3ChumTu6WLxxVikCt0bCBWzM4YUPaxhqvVM7bM43zVdFy+UauQxbki63a7 6g5DAzlcavF2Pr88SwkbuqeChJ9qyh+fBUDqi1jW5XAX2J8Rqj4KPEuQkqACGPsGUAgJh2tLD0UA0 MJEbHztbU/e7cS99ctPFVQRRNYOPK63MpzixH9T1n4mgONuXwced5jmo3Y0suQRcg75+pbbnqanFV LYadMuklU7VLXjXOaGzg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmxq8-003O3p-VQ; Fri, 06 May 2022 13:17:49 +0000 Received: from ams.source.kernel.org ([145.40.68.75]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nmxq1-003Nz4-AJ for linux-arm-kernel@lists.infradead.org; Fri, 06 May 2022 13:17:46 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id C1C73B833EB; Fri, 6 May 2022 13:17:39 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 93933C385A9; Fri, 6 May 2022 13:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1651843058; bh=8051614L8Sll2Zr5aA68WUcaidhoMT52a/Hv54vHn7Y=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=AKNofkHd+W5jZB2AZzS3JakpjcYUdwsJ5lhSMaMPr/jsNkKgriuq/16GKNXj/9KhL 942ryDnREYmhsCWZvckdyD/dsAFlWLWPXAsMrVTLxjWRfa6ROVUh2AG/C5PdrW6HeC v6wU5qRy9GRzaoIqZyfvw53Q3A8XKHgYXkC4wNbLb6bNMpwMWZkKpQEDEGpywhHIb3 mWc8rolzOAoRq5fHsRTDcEYIeQybA/RALUKHKmDcmRQJDdLtne4kAupY0vA9rlVTsG 6K16alpLhGktu1kfepH05hJPkSZMZApv3RS8Qw65vUe/enrX38ojZg52LuZB5ChdiM /nRPAUsZ0tcuw== Date: Fri, 6 May 2022 14:17:33 +0100 From: Will Deacon To: sunliming Cc: catalin.marinas@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] arm64,trace: Add page fault traceponits Message-ID: <20220506131733.GE22892@willie-the-truck> References: <20220420070109.1010257-1-sunliming@kylinos.cn> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20220420070109.1010257-1-sunliming@kylinos.cn> User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220506_061741_690035_8F7939ED X-CRM114-Status: GOOD ( 13.19 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Wed, Apr 20, 2022 at 03:01:09PM +0800, sunliming wrote: > The arm64 architecture lacks some tracepoints support, this patch > adds page fault tracepoints. The code and arch policy is mainly > inherited from x86. > > Experimented on my centos8 virtual machine: > dracut:/# echo 1 > /sys/kernel/tracing/events/exceptions/enable > dracut:/# cat /sys/kernel/tracing/trace > > The results: > sh-6098 [001] ..... 1186.024675: page_fault_user: addr=0xffffe153cc00 pc=0xffffa4117338 esr=0xffffe153cc00 > cat-6126 [000] ..... 1186.024677: page_fault_kernel: addr=0xffffa4323740 pc=schedule_tail esr=0xffffa4323740 > sh-6098 [001] ..... 1186.026085: page_fault_user: addr=0xaaaad23fae34 pc=0xaaaad231c0fc esr=0xaaaad23fae34 > cat-6126 [000] ..... 1186.026106: page_fault_user: addr=0xffffa414565c pc=0xffffa414565c esr=0xffffa414565c > cat-6126 [000] ..... 1186.026222: page_fault_user: addr=0xffffa4214e10 pc=0xffffa4145670 esr=0xffffa4214e10 > cat-6126 [000] ..... 1186.026243: page_fault_user: addr=0xffffa420fd88 pc=0xffffa41456ac esr=0xffffa420fd88 > cat-6126 [000] ..... 1186.026282: page_fault_user: addr=0xffffa4117338 pc=0xffffa4117338 esr=0xffffa4117338 > cat-6126 [000] ..... 1186.026308: page_fault_user: addr=0xffffe153cc00 pc=0xffffa4117338 esr=0xffffe153cc00 > cat-6126 [000] ..... 1186.026365: page_fault_user: addr=0xaaaad231bd84 pc=0xaaaad231bd84 esr=0xaaaad231bd84 > sh-6098 [001] ..... 1186.026372: page_fault_user: addr=0xaaab04330098 pc=0xffffa411be68 esr=0xaaab04330098 > cat-6126 [000] ..... 1186.026394: page_fault_user: addr=0xaaaad22ef420 pc=0xaaaad22ef420 esr=0xaaaad22ef420 > cat-6126 [000] ..... 1186.026414: page_fault_user: addr=0xaaaad23ee9b0 pc=0xaaaad22ef424 esr=0xaaaad23ee9b0 > cat-6126 [000] ..... 1186.026426: page_fault_user: addr=0xffffa40c3110 pc=0xffffa40c3110 esr=0xffffa40c3110 > cat-6126 [000] ..... 1186.026450: page_fault_user: addr=0xaaaad22f23f8 pc=0xaaaad22f23f8 esr=0xaaaad22f23f8 > cat-6126 [000] ..... 1186.026467: page_fault_user: addr=0xaaaad23f0030 pc=0xaaaad22f240c esr=0xaaaad23f0030 > cat-6126 [000] ..... 1186.026481: page_fault_user: addr=0xaaaad23fae3c pc=0xaaaad231be40 esr=0xaaaad23fae3c > cat-6126 [000] ..... 1186.026530: page_fault_user: addr=0xffffa40d63d8 pc=0xffffa40d63d8 esr=0xffffa40d63d8 > cat-6126 [000] ..... 1186.026554: page_fault_user: addr=0xffffa431f650 pc=0xffffa40d63f8 esr=0xffffa431f650 > sh-6098 [001] ..... 1186.026556: page_fault_user: addr=0xaaab04358d28 pc=0xffffa411be70 esr=0xaaab04358d28 > cat-6126 [000] ..... 1186.026571: page_fault_user: addr=0xaaaad24015d0 pc=0xffffa40d640c esr=0xaaaad24015d0 > cat-6126 [000] ..... 1186.026600: page_fault_user: addr=0xaaaad2332be8 pc=0xaaaad2332be8 esr=0xaaaad2332be8 > cat-6126 [000] ..... 1186.026703: page_fault_user: addr=0xffffa416c438 pc=0xffffa416c438 esr=0xffffa416c438 > sh-6098 [001] ..... 1186.026749: page_fault_user: addr=0xaaab04369d70 pc=0xffffa41193d8 esr=0xaaab04369d70 > cat-6126 [000] ..... 1186.027610: page_fault_user: addr=0xaaaad2307754 pc=0xaaaad2307754 esr=0xaaaad2307754 > cat-6126 [000] ..... 1186.027711: page_fault_user: addr=0xaaaad24014c4 pc=0xaaaad23310e4 esr=0xaaaad24014c4 > cat-6126 [000] ..... 1186.027892: page_fault_user: addr=0xaaab04359a80 pc=0xaaaad23052f0 esr=0xaaab04359a80 > cat-6126 [000] ..... 1186.027916: page_fault_user: addr=0xaaaad236cf80 pc=0xaaaad236cf80 esr=0xaaaad236cf80 > > Signed-off-by: sunliming > --- > arch/arm64/include/asm/trace/common.h | 12 +++++ > arch/arm64/include/asm/trace/exceptions.h | 54 +++++++++++++++++++++++ > arch/arm64/kernel/Makefile | 1 + > arch/arm64/kernel/tracepoint.c | 24 ++++++++++ > arch/arm64/mm/Makefile | 3 ++ > arch/arm64/mm/fault.c | 19 ++++++++ We already report page faults via perf (see the calls to perf_sw_event()), so why isn't that sufficient? Will _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel