From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754628AbcEQJLB (ORCPT ); Tue, 17 May 2016 05:11:01 -0400 Received: from eu-smtp-delivery-143.mimecast.com ([207.82.80.143]:50976 "EHLO eu-smtp-delivery-143.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751717AbcEQJK6 convert rfc822-to-8bit (ORCPT ); Tue, 17 May 2016 05:10:58 -0400 Date: Tue, 17 May 2016 17:10:12 +0800 From: Huang Shijie To: David Long CC: Catalin Marinas , Will Deacon , Sandeepa Prabhu , William Cohen , Pratyush Anand , Steve Capper , , , Marc Zyngier , Mark Rutland , Petr Mladek , Viresh Kumar , John Blackwood , Feng Kan , Zi Shen Lim , Dave P Martin , Yang Shi , Vladimir Murzin , Kees Cook , "Suzuki K. Poulose" , Mark Brown , Alex =?iso-8859-1?Q?Benn=E9e?= , Ard Biesheuvel , Greg Kroah-Hartman , Mark Salyzyn , James Morse , Christoffer Dall , Andrew Morton , Robin Murphy , Jens Wiklander , Balamurugan Shanmugam , Subject: Re: [PATCH v12 05/10] arm64: Kprobes with single stepping support Message-ID: <20160517091009.GA5082@sha-win-210.asiapac.arm.com> References: <1461783185-9056-1-git-send-email-dave.long@linaro.org> <1461783185-9056-6-git-send-email-dave.long@linaro.org> MIME-Version: 1.0 In-Reply-To: <1461783185-9056-6-git-send-email-dave.long@linaro.org> User-Agent: Mutt/1.6.0 (2016-04-01) X-Originating-IP: [101.230.208.200] X-ClientProxiedBy: TY1PR01CA0014.jpnprd01.prod.outlook.com (10.161.131.152) To DB5PR08MB0502.eurprd08.prod.outlook.com (10.161.245.156) X-MS-Office365-Filtering-Correlation-Id: ac5666bf-a20a-48ce-b8d8-08d37e332499 X-Microsoft-Exchange-Diagnostics: 1;DB5PR08MB0502;2:ngBilVj9jl/RJijzgPlD2a/FJNfnHUwzT5Dzyexf+eQanCIT/JUDp4y1I1SaRl1/xxqXE+DWZsVN0c3YvP3+XZ2ql4Xveqp4GiSbDA4HsRMT0kaWUW0/4I1D3vC1UrgUORnhbD++vBPUtHWWv5R/guFrGZYp6cl+RGAT6E16CrUMby/wVjmxQ4hc8tCclqL6;3:gTkNO1fsbq1xydVIb/NzwpOb0PgXLsVZroloJ+WfiV6FxtJLCTN6rFd8UWSvtoCIfXhvSmxMdG+MXKgx0tOUxzkmHMTu6xT0WmE1uZrIAswIqF6OWpWhNnPawwXx+rs5;25:SCVe6JzKo3kPaAmO6fbAdLSBE5LTnbktNunHx33dQhnpkqoXC8x6MZKSZFQ2QIZeBt/sb+vBEWZlwXo4LXUUfZ93aR8BTLOofAJG0XO81hlVnueFMLNzPuveX5/JZH9MAhcPcUJTAPvi8Sg8dZdY1Ytp/94Xx1uh4sqcPNF3yGnIRSnRmksMVexvl77ImHXxXCUgqeJvTLsh5NM+i3O/+fk68fhX5U/NRHq8UA5QQWRVKMOmAIZ4RY9J2kueoIHT29sIqIrs/tysHfWYFUkFw26wuRcyey4ndtK3nX/0fpArpwij6/PUjRvfICQrkwU69EfP+gLcCcyb4SmfgFAbLWKUTOD4+biL77O0GeWJbTPWWHpJO7dDv3/acS6SNZbFrIAtQ+O1VrqSWzntP83Uix3cBB865EotjW9cj1YcHpI=;20:j96+6YFQtXCibk+YwHp2tZ9vaEt58YGatDuyGyJYKsjLr0EFxX8IId2SWRlk/N+AJa+AET8KdVxIb43vACWNVOf6rPxQvU59jnIBuGJtiW8ZYPDNUrg2KZ4/W1iSxkjrvAbEhSOiI+HcoGdSFUrVyik7T9fpY6U98v2h4siv6zs= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB5PR08MB0502; NoDisclaimer: True X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026);SRVR:DB5PR08MB0502;BCL:0;PCL:0;RULEID:;SRVR:DB5PR08MB0502; X-Microsoft-Exchange-Diagnostics: 1;DB5PR08MB0502;4:TsGNiCVGMKbUi2o+O2knS3fgJZaF4NP8qK3IR8PLT/RW1RAePB2u7mylRj+WDsJpVCihwFkDcHo8E3/mG5EF/VQwuDrCPNNzZQ4dVgW68mzLuINzvxKL/ENVRowUtbeM7sNTmby/2c4zjyLxa++a8/v5dC6q6SRkdCtLytHdeb0diUPe1lwoCu8aocxzRCUma0luGGfgeps786oNhrT0muEoNrQAYkBSUyl8QY5E5hXjZWnoHiz5vPDSoR3jkKdvzYosRDoIV1uB7rjzY1gX2TdpYsZZQGJtRt6TE4fZkeDE0F2kBecXiuBz0bCWAn2vYyvzs2uGab388TOA+8TD8bbzQ3/BH8I5fDUJWIIkIUUu/u39HizOY1qj442m2vc1TukclHsvbWtjY6vJNE+lhA== X-Forefront-PRVS: 0945B0CC72 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(24454002)(66066001)(5008740100001)(47776003)(110136002)(4326007)(189998001)(50986999)(86362001)(4001350100001)(97756001)(6116002)(23726003)(1076002)(2906002)(19580395003)(19580405001)(46406003)(2950100001)(586003)(77096005)(8676002)(81166006)(33656002)(5004730100002)(54356999)(92566002)(76176999)(50466002)(3846002)(42186005);DIR:OUT;SFP:1101;SCL:1;SRVR:DB5PR08MB0502;H:sha-win-210.asiapac.arm.com;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;DB5PR08MB0502;23:Bdidechx4t8Ma7YUAE0qFyosTLzQQsB6C3zOk+WEQUwMEs2TaDUpjF9ZPYvAwJblmMaW6KJsbShiejh6ZtmqGPHRYJvoIVL/72ps2hCDA410INQm0qZ+FwdHsTScyPACh/u2VBVcZ8NYwo0wRfju1k3LwebQJ2cXnxgaDaZGeDCTwwn+suCQaxwbQ+EQTakBVKrV6r5yz71ljtb3xKvtcW3evlTK9TOMr5EULarVMDaJa/AqfRwaPVdsxsUrM6y65HlISVsgL1h9rccmyU0XyakVosVpaVCUhYZMkrpJ4TLzugS8n965Mtg2UQXIdw0635kzeJxNYUnl1nOfYYdhWH7nMXK6wzlIchLHOI//F4H8o9lPcKPs4V2lpZmHYPE4ZkEN6IbNGp7lGW2s+BJC+S3ryyIr7S7XZLlGyggH6Obns+i6i0q8LTsCVzXRdrzkBTmgaP/0lfP7LIJDaW37XhqK5vZ+M/7/cv6qmR/6IzUiB3G1BhskhxfpOoHQ/Qi3DJzb/LGQxsQGYX2oKmFpUkluOyo/B05shGVZNIJpdqnbC1VGwPWxZ9u/CUujQvCM+gfTDgogb8hcuQxSHpIQL0gLaQb4HxwAgYd4jEySnioF+8IF6Xdiv7X4zdwap9tcPlXvAj4QrHHmpt7KnptLm/sQ5R/u1PLoV8nQZ2NbMuqX3d4JTPy3rxTBZ9zNVVFUDm/lJgMdTFAYwVdA6TuPiSHKG1rJ/V1roj22AyPL3+uvFh4snVjoUNXhrw8K7ZLv2acyfHIVKNxFDNboajs+l6/G6HoteSguWHkuoKCXGKdsT6oCy5CqWaTVtNglY5b9avO4MHq6JF/1dQvNXabrnabbGuGMeCI8yxZ5jebFD+HV6Yy1InkxapCFJaqYNV9NjapL69W2qTbmd+yfFxiPKg== X-Microsoft-Exchange-Diagnostics: 1;DB5PR08MB0502;5:tdFnntt1ZCVpHFzgKv2psQjTL2Fxfg9twZbdPFpU7UpdmOQKlbWvJ6gM66XssGPrCqakpFNxVW72ryf88IL/2ip4CiCwCg08AKmpkwPKTZlFS0eanBfxDhCr8GHMfnRiuo0iBOWSlmVea800EdFb+Q==;24:rra+YUmMwCsONCg7AdmBhf3x4qCwY2rb3CaBY4SbEVfAFn66lWsmvjGkF0v4NPrqx+lVE8BN1ZhCU+73IO2BI8HbNyfr46r1H0ZA1rMAUCo=;7:3tweWS44qX9eCOSfkFKe1tzgySem28fGy/GF6xxOnKeX0iUngI0HQ+vE7WeKqz8YUckg1XLm555Lr6FX9suRNY8Irx7GqoSx7k7MS7vMUJPnHE9Jz+/lGfjaq6JeZZBNBn2+QS7ZdWq9PiS4K3TKOz4Y+FhlhZljLnPkxEdFUta7Cc5NOVZ+onyAXkSgi5hS;20:fC3SPAlHayAC5kQbzW8Wv+HGz4dA+HDq62nVwzri8YOesHI9Y3tGoPDCBtVeTm1GWwRVeYdYza1DYtS9YjZ1tS/O2osQH1Nj/gUV8E8fQ/rAu+x9ut7vdA2b8f1Tp6PjfYWqZO0nPVgnhD7ROMJK7I7QFBUj/LMEsbtC1t5Qkpw= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 May 2016 09:10:38.8731 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB0502 X-MC-Unique: cQicfl2BQOWRWRr3v3eQMw-1 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: 8BIT Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 27, 2016 at 02:53:00PM -0400, David Long wrote: > From: Sandeepa Prabhu > + > +static bool __kprobes aarch64_insn_is_steppable(u32 insn) Could we add more comment for this function? In the comment, we can tell that which type of instructions are steppable, which are not. > +{ > + if (aarch64_get_insn_class(insn) == AARCH64_INSN_CLS_BR_SYS) { > + if (aarch64_insn_is_branch(insn) || > + aarch64_insn_is_msr_imm(insn) || > + aarch64_insn_is_msr_reg(insn) || > + aarch64_insn_is_exception(insn)) > + return false; > + > + if (aarch64_insn_is_mrs(insn)) > + return aarch64_insn_extract_system_reg(insn) > + != AARCH64_INSN_SPCLREG_DAIF; > + > + if (aarch64_insn_is_hint(insn)) > + return aarch64_insn_is_nop(insn); > + > + return true; > + } > + > + if (aarch64_insn_uses_literal(insn) || > + aarch64_insn_is_exclusive(insn)) > + return false; > + > + return true; Thanks Huang Shijie