Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp2036262pxb; Thu, 11 Feb 2021 02:37:27 -0800 (PST) X-Google-Smtp-Source: ABdhPJyh8JF0qDtTkHVT30GqF7JJWTLYvQ4UxTN6Utuhm2UdKMQccl5LJDWwsSGNK6NDLLi2Hq46 X-Received: by 2002:a17:906:a2da:: with SMTP id by26mr8152961ejb.191.1613039847572; Thu, 11 Feb 2021 02:37:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1613039847; cv=none; d=google.com; s=arc-20160816; b=PZ12E5AFkLx/psBnac5SCwBSRDQNzxut55qyjrFJpJ1c2Bu92YKfg0YDvqld0LDQj3 Gkop7Rgjb2ievqFa38Ka0i1zQSLlzbuYbeGpEZc0xRs8Ebaet5ooLCj/HmTeOhCk7LtQ w4F1o3tHJ+RESrFA+pW8cFDasy2dm0wLKDNM3Ic7mKEzBr0tjTyYkFALb5ScuI+BKwUE OCTNdWX+3d/lCHOvrBgd2cYsONhHXTaL5B5yNmq+jcrxacZq/vdTrw1L8ZQNzEyPpqNK 417KYD35ag7ARIKcqev07+Jd3ZE8igC3uHbuQaHvUZccPCm8r6jiDLwdahr1f1pDEHBo JJmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=uePn2O5m3uCPvfDNTg0HJfgxIbIqSUckxIXJ4/kV6fs=; b=TAXwARDADogXNakXY8aRfeLZVyKlou8W1dlj08z79wVy65RE1Vpj3PVHcUbIDd9ECu LBaeMrTaPqAOX0F5bFc7IoFheOUXvvCvtJRuMFS2UYeGmOqb50D6Zhof+XMoG6AZmSdO tE/pkEJ2Aml9Zw6jagUExDqJd2d0uxPsgLD0LKtTEf3xurBgT77s72Y52wSKRRrpnDvk mECR0tpSm8RWuK4kAwJ7ngCPpR+6KKtYwR7mN2TxtLrWm4TeqVUXmIKaR3euKS/2dcDA 6j20jNx+vIZNBXuqAH6kb4c0a0OQzrYzOQWdHfM0iIXbts9M2KOk4NgHrd/0lzG46t1v XWHQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s20si3853956eji.61.2021.02.11.02.37.04; Thu, 11 Feb 2021 02:37:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230051AbhBKKes (ORCPT + 99 others); Thu, 11 Feb 2021 05:34:48 -0500 Received: from elvis.franken.de ([193.175.24.41]:44682 "EHLO elvis.franken.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230177AbhBKKbm (ORCPT ); Thu, 11 Feb 2021 05:31:42 -0500 Received: from uucp (helo=alpha) by elvis.franken.de with local-bsmtp (Exim 3.36 #1) id 1lA9FS-0005LQ-04; Thu, 11 Feb 2021 11:30:58 +0100 Received: by alpha.franken.de (Postfix, from userid 1000) id 13471C0E70; Thu, 11 Feb 2021 11:29:05 +0100 (CET) Date: Thu, 11 Feb 2021 11:29:05 +0100 From: Thomas Bogendoerfer To: Tiezhu Yang Cc: Oleg Nesterov , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org, Xuefeng Li , kernel test robot , Xingxing Su Subject: Re: [PATCH v2] MIPS: Add basic support for ptrace single step Message-ID: <20210211102905.GE7985@alpha.franken.de> References: <1612939961-8827-1-git-send-email-yangtiezhu@loongson.cn> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1612939961-8827-1-git-send-email-yangtiezhu@loongson.cn> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 10, 2021 at 02:52:41PM +0800, Tiezhu Yang wrote: > In the current code, arch_has_single_step() is not defined on MIPS, > that means MIPS does not support instruction single-step for user mode. > > Delve is a debugger for the Go programming language, the ptrace syscall > PtraceSingleStep() failed [1] on MIPS and then the single step function > can not work well, we can see that PtraceSingleStep() definition returns > ptrace(PTRACE_SINGLESTEP) [2]. > > So it is necessary to support ptrace single step on MIPS. one way to see it. The other way is, that the Go debugger needs to learn single stepping without ptrace single step support. IMHO gdb is already able to do that. IMHO ptrace single step is for CPUs supporting single stepping and not for emulating it in the kernel. Thomas. -- Crap can work. Given enough thrust pigs will fly, but it's not necessarily a good idea. [ RFC1925, 2.3 ]