Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp3800856pxf; Mon, 22 Mar 2021 15:54:54 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzrH54DSC22Fzn+vP7Gm1yUHIXC6rBtjsz93eFrgZDoF0E7YWE6oi+7L3Cfda3P122p4yWc X-Received: by 2002:a17:906:da0e:: with SMTP id fi14mr2052706ejb.188.1616453694548; Mon, 22 Mar 2021 15:54:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616453694; cv=none; d=google.com; s=arc-20160816; b=H1jDurqnKwrq+HzZFjFQmngA5FQhA9iy+tmcLtRZT6PxR8m84c4aUXZPi64MKpkJGq 7dotZqdH7gdaqPoA0G7im8/IZSfVQVd1GzLhBLQrMZWKosbk/cHBMlB98if+bO7vBwkR xAKMVjSLU9YoNI5vOlPfnEh0cwfY2CuqZc51pBOPTWsnXvaW8NoeuTE1qia0a4WGpymV cL6InM7AAgnkXnZkh+s4EqEXXAjrQt0nXp1qhEMAAJ3uITTqD9D4Exvgvv85azLyxx68 korGKcvxEHRxIM4LjlMLnXaoCmx3ahIbcPKuT5GFDykWORNZOHMjiL4/K+oV3f+SE3b9 wVwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=r+51m+w++y282pEpZcxM+4YOYzwIDkEbVJ47KIbTcl4=; b=Zu/8OBSwYlWVs0KhlxW/ZY4GvljUIVD9bmlZdK0BqBwsyXHSoAM3eBADQobNp6uCqU QXGMLrUceC9+dOk7KKbtBsFlZzejmp3q+sdS0tVvL6xB2iXAqgBY/oPV2hc9yNeYEe/i dwM6i9IZGvBE9SfPOIAIQOaqKnli/IlpqHUKokpHgTpMwfJS19Phd0zfy0pKEqwBuEJo hqzwLCTqBMSNrs9U/f7dDMWZjdv0iNLW8GwMZFUgJiWl4+ugkXeIoGbJYz1M4L60ntF7 TS19imepgnV/jkPOBaxtvUIXn3UY913+FsCvFOPAog6ahrjEuE+yKvk2TxDHo9T/Nd5j CzEQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QfXGEo5u; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h16si2329583ejk.221.2021.03.22.15.54.32; Mon, 22 Mar 2021 15:54:54 -0700 (PDT) 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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QfXGEo5u; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230237AbhCVWxi (ORCPT + 99 others); Mon, 22 Mar 2021 18:53:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45036 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230258AbhCVWxQ (ORCPT ); Mon, 22 Mar 2021 18:53:16 -0400 Received: from mail-pg1-x536.google.com (mail-pg1-x536.google.com [IPv6:2607:f8b0:4864:20::536]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4538AC061574 for ; Mon, 22 Mar 2021 15:53:16 -0700 (PDT) Received: by mail-pg1-x536.google.com with SMTP id u19so9786162pgh.10 for ; Mon, 22 Mar 2021 15:53:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=r+51m+w++y282pEpZcxM+4YOYzwIDkEbVJ47KIbTcl4=; b=QfXGEo5ueK2zr6oSJZYJYzRNkYnWQhD8Sox7sDDDttvRWM3EmyOUol7F4aqSEgP9NP GHQnkPJruXk3pdfbHAo3tir2mS9ZA+cqMqUYRBtFasSBiTyNXM6kW5xisTwJ4HKI0/SG Uhh0LjBwDYD72X3FfxRExA1v97vyHlTnxd8Twrvz/8nr5vPakPsWmkvzpeDp1FJzmMut ndWh0ftdPenGyc2vKPW3wQPc7/rAEs2LD5kFnJsANnSapLQ/Hp5PT+1MbvPgSryZe3FR bBzJrrxt8kQtMJG2L0bksMtfdja64mazMcYG7Hi2tzHeSn76MoHgnEYU1Piswjozpi5E rybw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=r+51m+w++y282pEpZcxM+4YOYzwIDkEbVJ47KIbTcl4=; b=IL2WqqMYdcqBQu8M2dhTowluavlb0CTl59+lustJT8AkP+x7tM3ZoMNmNbQT6p92vp qMwzNrGJTbXkf140Uk1Sien5p9REhAfH43cpQe4yf6iKYEe8dHW+Uih19f6ZJiH+pFk/ ScaXPVeEPflM8hridUSnE83zFwuCtwoeU7NYN16TExUWeDorvUVU3wYv3Op+zyftnn1i tkgBseldf9tarRJYlMce3RZQniuAOZEFF0IL1HbdHYec013WCh1CbDyBh3SVeo1UMgat lWSxvuBVBYvzJoE/E6dJx4T6RbgAMUuDFjppzmNrtWf2+GQ7EKevA+omNil1/A+joYql kcCA== X-Gm-Message-State: AOAM532lr6C/8IBuimR4T4Md38iY6XGRqFK83MJZOOlt4WL4JNHfeKLI r4OJYeEi5zl23Ooe70AF5yc= X-Received: by 2002:a05:6a00:72b:b029:218:6603:a6a9 with SMTP id 11-20020a056a00072bb02902186603a6a9mr1900419pfm.78.1616453595715; Mon, 22 Mar 2021 15:53:15 -0700 (PDT) Received: from laptop.hsd1.wa.comcast.net ([2601:600:8500:5f14:d627:c51e:516e:a105]) by smtp.gmail.com with ESMTPSA id j13sm8878211pfn.103.2021.03.22.15.53.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 22 Mar 2021 15:53:14 -0700 (PDT) From: Andrei Vagin To: Will Deacon , Catalin Marinas Cc: Oleg Nesterov , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Andrei Vagin , Dave Martin , Keno Fischer Subject: [PATCH 1/4] arm64: expose orig_x0 in the user_pt_regs structure Date: Mon, 22 Mar 2021 15:50:50 -0700 Message-Id: <20210322225053.428615-2-avagin@gmail.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210322225053.428615-1-avagin@gmail.com> References: <20210322225053.428615-1-avagin@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org orig_x0 is recorded at the start of the syscall entry and then it is used for resetting the argument back to its original value during syscall restarts. If orig_x0 isn't available from user-space, this makes it tricky to manage arguments of restarted system calls. Cc: Keno Fischer Signed-off-by: Andrei Vagin --- arch/arm64/include/asm/ptrace.h | 2 +- arch/arm64/include/uapi/asm/ptrace.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/arm64/include/asm/ptrace.h b/arch/arm64/include/asm/ptrace.h index e58bca832dff..d4cdf98ac003 100644 --- a/arch/arm64/include/asm/ptrace.h +++ b/arch/arm64/include/asm/ptrace.h @@ -183,9 +183,9 @@ struct pt_regs { u64 sp; u64 pc; u64 pstate; + u64 orig_x0; }; }; - u64 orig_x0; #ifdef __AARCH64EB__ u32 unused2; s32 syscallno; diff --git a/arch/arm64/include/uapi/asm/ptrace.h b/arch/arm64/include/uapi/asm/ptrace.h index 758ae984ff97..3c118c5b0893 100644 --- a/arch/arm64/include/uapi/asm/ptrace.h +++ b/arch/arm64/include/uapi/asm/ptrace.h @@ -90,6 +90,7 @@ struct user_pt_regs { __u64 sp; __u64 pc; __u64 pstate; + __u64 orig_x0; }; struct user_fpsimd_state { -- 2.29.2