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 X-Spam-Level: X-Spam-Status: No, score=-7.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DFD70C43381 for ; Tue, 19 Mar 2019 03:27:19 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id AC07920850 for ; Tue, 19 Mar 2019 03:27:19 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="MQba1Uf4"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="L1xfs/td" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AC07920850 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-ID:In-Reply-To: References:Message-ID:Date:Subject:To:From:Reply-To:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=XNqlj0nWVNRGEeUXzrkKQseFiSFy2CLxpmTemBJHfjE=; b=MQba1Uf4YB6s1x t4V2CMaVUTMyErksb6c4OSvfkPPe813tgEyTb07Dy10l7i1iAwGcQMVGBJB+1ZV7y0VT7Ni6+fsY3 jmHUPiURcFjKIFwLYO7SbxsVDq6rX/eCnEkvGxjagZwaanOAK8Dxj1CraCBeQHzl9u5hehNifsRBv sE//gkqBoEMjv87iJIArtV7dKyCP/dQSHIvhdQHfKCQxGY3EVnF44lYijnBPZLsOM/pAC6A+oLHnd WIyyWIadwGrIrNKin5FfxqfYfASZNDaBXn/BhBl5MxSPe+m4RUSjJOHpj3hONVU9rFj/wSUuylLDv Kxp/5cQWIIwJyhc4DMwg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h65PB-0000GT-5t; Tue, 19 Mar 2019 03:27:09 +0000 Received: from mail-eopbgr20042.outbound.protection.outlook.com ([40.107.2.42] helo=EUR02-VE1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h65P5-0000FR-NX for linux-arm-kernel@lists.infradead.org; Tue, 19 Mar 2019 03:27:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0GoJDfoJfQDz/iILM8IrdJq4uWn0lQw79UWAEKpEBn0=; b=L1xfs/tdn5tNCLjiRGcU4YHT+jao5UxQ97pJ8Igu0BBwadh2xORJ0HKzmH6752TXI8wmWM/Q07HtncycBNUC8Z+NhtnLJe2WaK//2t57RtSKEMm9kvUbJM/AyIXYK88Eeyb5qqTP1erLkR9Xd1VrxsfRkYUHR3uQC5uqnqot2Qk= Received: from AM4PR08MB2929.eurprd08.prod.outlook.com (10.171.190.138) by AM4PR08MB2788.eurprd08.prod.outlook.com (10.170.126.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.14; Tue, 19 Mar 2019 03:26:55 +0000 Received: from AM4PR08MB2929.eurprd08.prod.outlook.com ([fe80::e522:c03f:3d0c:f4ce]) by AM4PR08MB2929.eurprd08.prod.outlook.com ([fe80::e522:c03f:3d0c:f4ce%4]) with mapi id 15.20.1709.015; Tue, 19 Mar 2019 03:26:55 +0000 From: "Haibo Xu (Arm Technology China)" To: Sudeep Holla , "x86@kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "linuxppc-dev@lists.ozlabs.org" Subject: Re: [PATCH v2 6/6] arm64: ptrace: add support for syscall emulation Thread-Topic: [PATCH v2 6/6] arm64: ptrace: add support for syscall emulation Thread-Index: AQHU3XhULdk58bsEV0aU5OxJLBF6T6YSTDMA Date: Tue, 19 Mar 2019 03:26:55 +0000 Message-ID: <14635968-ccb9-874b-4e41-2881c19be679@arm.com> References: <20190318104925.16600-1-sudeep.holla@arm.com> <20190318104925.16600-7-sudeep.holla@arm.com> In-Reply-To: <20190318104925.16600-7-sudeep.holla@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HK2PR04CA0059.apcprd04.prod.outlook.com (2603:1096:202:14::27) To AM4PR08MB2929.eurprd08.prod.outlook.com (2603:10a6:205:c::10) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Haibo.Xu@arm.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3cc99957-55da-4e20-7b60-08d6ac1abc5f x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(4618075)(2017052603328)(7153060)(7193020); SRVR:AM4PR08MB2788; x-ms-traffictypediagnostic: AM4PR08MB2788: x-microsoft-antispam-prvs: x-forefront-prvs: 0981815F2F x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(376002)(39860400002)(346002)(396003)(366004)(189003)(199004)(40434004)(5660300002)(7416002)(53546011)(36756003)(52116002)(386003)(26005)(186003)(76176011)(102836004)(6512007)(6506007)(53936002)(3846002)(6246003)(55236004)(25786009)(229853002)(8936002)(6116002)(4326008)(71190400001)(71200400001)(81156014)(81166006)(8676002)(6486002)(2616005)(106356001)(2201001)(6436002)(7736002)(110136005)(54906003)(68736007)(446003)(97736004)(305945005)(316002)(2501003)(486006)(256004)(14444005)(2906002)(5024004)(99286004)(476003)(31686004)(66066001)(14454004)(31696002)(478600001)(86362001)(11346002)(72206003)(105586002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM4PR08MB2788; H:AM4PR08MB2929.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: msrUDis69p8Eae1Iyb3T4zx+Jhn5iuDa5gAq+s51ut0Jsx5qJ8u4Xy/Df9QZT0Qx4CVSBAkWmr1Yv0PfwVq18YgZqWbJT6wREAOb3Ao8WU+Md1+n9Lgt0PWouWLqqsb640YfFciH5eHis3rNBbt6ygHXJ1XhYXASw2VU0mafCM9dtuwn1JOj9frSOfNM1payy/6yatIY3JstzUyFcaTmQ3YZSf62mJ4XrW0/5KZu4FW8rI4XfjQbTOWAvmsgCNqdH2Tbom47hphzcetf7h+IkeWgTBmaUOO/Tkct7uSfdMkWqXIr3WoIjaAi1N3ysc30M5AqWsc9wXZQwlC+512cAJHqKPHZb2aUawFjpFffBqC1tZClN4pDzC0O+slwxl8pMM1mzoQ/hiRMr35DaZUqe6bmo/81nb8HKHeHyBIFM4w= Content-ID: <94D74379531EE54985D3D9F0A9DB8386@eurprd08.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3cc99957-55da-4e20-7b60-08d6ac1abc5f X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Mar 2019 03:26:55.1607 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB2788 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190318_202703_821466_81E013B5 X-CRM114-Status: GOOD ( 20.37 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Steve Capper , Catalin Marinas , "jdike@addtoit.com" , Will Deacon , Oleg Nesterov , "Bin Lu \(Arm Technology China\)" , Richard Weinberger , Ingo Molnar , Paul Mackerras , Andy Lutomirski , Michael Ellerman , Thomas Gleixner Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 2019/3/18 18:49, Sudeep Holla wrote: > Add PTRACE_SYSEMU and PTRACE_SYSEMU_SINGLESTEP support on arm64. > We can just make sure of the generic ptrace_syscall_enter hook to > support PTRACE_SYSEMU. We don't need any special handling for > PTRACE_SYSEMU_SINGLESTEP. This looks good to me. But it'd be better to add the same logic to handle PTRACE_SYSEMU_SINGLESTEP as that of x86 in case we may need enable the single step trace function in the future. > > Cc: Catalin Marinas > Cc: Will Deacon > Signed-off-by: Sudeep Holla > --- > arch/arm64/include/asm/thread_info.h | 5 ++++- > arch/arm64/kernel/ptrace.c | 3 +++ > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/arch/arm64/include/asm/thread_info.h b/arch/arm64/include/asm/thread_info.h > index eb3ef73e07cf..c285d1ce7186 100644 > --- a/arch/arm64/include/asm/thread_info.h > +++ b/arch/arm64/include/asm/thread_info.h > @@ -75,6 +75,7 @@ void arch_release_task_struct(struct task_struct *tsk); > * TIF_SYSCALL_TRACE- syscall trace active > * TIF_SYSCALL_TRACEPOINT - syscall tracepoint for ftrace > * TIF_SYSCALL_AUDIT- syscall auditing > + * TIF_SYSCALL_EMU - syscall emulation active > * TIF_SECOMP- syscall secure computing > * TIF_SIGPENDING- signal pending > * TIF_NEED_RESCHED- rescheduling necessary > @@ -91,6 +92,7 @@ void arch_release_task_struct(struct task_struct *tsk); > #define TIF_SYSCALL_AUDIT9 > #define TIF_SYSCALL_TRACEPOINT10 > #define TIF_SECCOMP11 > +#define TIF_SYSCALL_EMU12 > #define TIF_MEMDIE18/* is terminating due to OOM killer */ > #define TIF_FREEZE19 > #define TIF_RESTORE_SIGMASK20 > @@ -109,6 +111,7 @@ void arch_release_task_struct(struct task_struct *tsk); > #define _TIF_SYSCALL_AUDIT(1 << TIF_SYSCALL_AUDIT) > #define _TIF_SYSCALL_TRACEPOINT(1 << TIF_SYSCALL_TRACEPOINT) > #define _TIF_SECCOMP(1 << TIF_SECCOMP) > +#define _TIF_SYSCALL_EMU(1 << TIF_SYSCALL_EMU) > #define _TIF_UPROBE(1 << TIF_UPROBE) > #define _TIF_FSCHECK(1 << TIF_FSCHECK) > #define _TIF_32BIT(1 << TIF_32BIT) > @@ -120,7 +123,7 @@ void arch_release_task_struct(struct task_struct *tsk); > > #define _TIF_SYSCALL_WORK(_TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | \ > _TIF_SYSCALL_TRACEPOINT | _TIF_SECCOMP | \ > - _TIF_NOHZ) > + _TIF_NOHZ | _TIF_SYSCALL_EMU) > > #define INIT_THREAD_INFO(tsk)\ > {\ > diff --git a/arch/arm64/kernel/ptrace.c b/arch/arm64/kernel/ptrace.c > index b82e0a9b3da3..cf29275cd4d9 100644 > --- a/arch/arm64/kernel/ptrace.c > +++ b/arch/arm64/kernel/ptrace.c > @@ -1819,6 +1819,9 @@ static void tracehook_report_syscall(struct pt_regs *regs, > > int syscall_trace_enter(struct pt_regs *regs) > { > +if (unlikely(ptrace_syscall_enter(regs))) > +return -1; > + > if (test_thread_flag(TIF_SYSCALL_TRACE)) > tracehook_report_syscall(regs, PTRACE_SYSCALL_ENTER); > > IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel