From patchwork Wed Apr 3 23:34:51 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Deepak Gupta X-Patchwork-Id: 13616767 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 46C4ECD128A for ; Wed, 3 Apr 2024 23:41:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BCE8A6B009D; Wed, 3 Apr 2024 19:41:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B7F706B009E; Wed, 3 Apr 2024 19:41:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9A8EA6B009F; Wed, 3 Apr 2024 19:41:41 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 7251F6B009D for ; Wed, 3 Apr 2024 19:41:41 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 4628B1A062D for ; Wed, 3 Apr 2024 23:41:41 +0000 (UTC) X-FDA: 81969845202.30.4D30FFE Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by imf13.hostedemail.com (Postfix) with ESMTP id 6A6DF20013 for ; Wed, 3 Apr 2024 23:41:39 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=rivosinc-com.20230601.gappssmtp.com header.s=20230601 header.b=SOnEzq5X; spf=pass (imf13.hostedemail.com: domain of debug@rivosinc.com designates 209.85.214.181 as permitted sender) smtp.mailfrom=debug@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1712187699; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=FP/iR/CjhZ8+5rFjFCPv+Z1AgkLCTj0+E8uD6j+a7EM=; b=Vot/dYq+MFGmxo88tETrdZRSxIoreE27kH91sr9sMY0fN3KI398JujrZSvOeMfc87TiNfw 27BtuIRCOnELcscgwVBCq9XJ/qGgj8hjbufJRj1/8KXpLgfKRvi/HyyQxMOvcW1UisQNED hgQfsV22e/7lxSxajTCi1UwfgG7XaPQ= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1712187699; a=rsa-sha256; cv=none; b=MnysracXgpg6ymnIXZcZUzn/SSU4ijXoQpe6pph8rF4v6KEwy19W0ZbNdRfXt1kp8J8/tH 43odrYvGcCRG/TdsZ4zI6hO0mHFPjP8mal5rRsQSN0a+sSMrXktBXG3i6aJCMDbw9gGvFP V+U3mQVl1zhkn4t5mj4BzDETIKRGUZ0= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=rivosinc-com.20230601.gappssmtp.com header.s=20230601 header.b=SOnEzq5X; spf=pass (imf13.hostedemail.com: domain of debug@rivosinc.com designates 209.85.214.181 as permitted sender) smtp.mailfrom=debug@rivosinc.com; dmarc=none Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-1def89f0cfdso11752925ad.0 for ; Wed, 03 Apr 2024 16:41:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1712187698; x=1712792498; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=FP/iR/CjhZ8+5rFjFCPv+Z1AgkLCTj0+E8uD6j+a7EM=; b=SOnEzq5XKuBo4bOMmVoddiptA4egHrqwZbC7gkmEVzkIkaeY3OdxDHYR9Od8mugOrI x15U+hHM3HIL654zbLwYOFewSjPl43wOMLucqGMj1LAApFyEjfSaAY4p+EiEjPmAmteT nMoaCqq4o2FMB8qdOvshP/4nxfOVGF6E+sZyKvKsWbsCVgfpTntMyuliddrybNCMeZb8 7sv5IkzjC7p0D64j9nYHImhjmfjxqmvIqZSFxR4BWPx4dm/wO1ZBLOjpbBwucx6EbyeT OfD5KaB/BT9JWXsRuYuyidExZWGkbNtPZ+istl3pZnBX2AXED0hO7IpfL1RR13KmYWib Xr3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712187698; x=1712792498; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FP/iR/CjhZ8+5rFjFCPv+Z1AgkLCTj0+E8uD6j+a7EM=; b=N57tM+3wEUt+jwd2KDTmmmswbuFl/AolwIPk9ngus47/g6w7N3vYAH0n7RGYUIuRrz CLcWZWmeteSbAtwMu2xe8vBO+L2jiXuyp7LGUcc7JsAMvBqHcfEsCWtGpyorfnG5dk58 99f65gHHym9KhzoRqrzFjZx2fUi5Ap6UImDR6sV1ZGxAtvjwU1a6QZ2eQjoDW3zWVPso GvOEo0z065WlJ8UJZy1k43Q3mcBmMNrXZUDjKQDMOWWTGZOnZKOiRsV/rAvrrVPAHpiU o6MdrXXpgGOR0n0JdMR0qtOY0b3Cd4hdaCdEYD+NMNjSQ+aSNX5g5Z4TBFEb/y2NUjfo yN4g== X-Forwarded-Encrypted: i=1; AJvYcCXDX3CRsMbqTJZxNuxuXXKZgpFcqA32QSum9dchjbc9mrRBcD70u5HgAA1/+wT7tt5Nll4XflVRmZ3KT/jtfAzpG3Q= X-Gm-Message-State: AOJu0Yx2ElRuQz67Sa1bdJ1zY9Bbzzy53Jr74M/hgPHmHWZeXRuo+Oaj F5QWDj/FrQ+PRl+hO1Fi3SCyNTj7iDrIxwimdzUNY08uNc8PD7LEk2abXg4TjK0= X-Google-Smtp-Source: AGHT+IGz7S4BbcAxWhl0gW+uX+xLjSyvbd4TctmglI8Ag3ABaLDho4nYEEcOpuaastWra5ggKM/l9g== X-Received: by 2002:a17:902:ea08:b0:1e2:8f1d:6fa8 with SMTP id s8-20020a170902ea0800b001e28f1d6fa8mr5120728plg.19.1712187698319; Wed, 03 Apr 2024 16:41:38 -0700 (PDT) Received: from debug.ba.rivosinc.com ([64.71.180.162]) by smtp.gmail.com with ESMTPSA id b18-20020a170902d51200b001deeac592absm13899117plg.180.2024.04.03.16.41.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Apr 2024 16:41:38 -0700 (PDT) From: Deepak Gupta To: paul.walmsley@sifive.com, rick.p.edgecombe@intel.com, broonie@kernel.org, Szabolcs.Nagy@arm.com, kito.cheng@sifive.com, keescook@chromium.org, ajones@ventanamicro.com, conor.dooley@microchip.com, cleger@rivosinc.com, atishp@atishpatra.org, alex@ghiti.fr, bjorn@rivosinc.com, alexghiti@rivosinc.com, samuel.holland@sifive.com, conor@kernel.org Cc: linux-doc@vger.kernel.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-kselftest@vger.kernel.org, corbet@lwn.net, palmer@dabbelt.com, aou@eecs.berkeley.edu, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, oleg@redhat.com, akpm@linux-foundation.org, arnd@arndb.de, ebiederm@xmission.com, Liam.Howlett@oracle.com, vbabka@suse.cz, lstoakes@gmail.com, shuah@kernel.org, brauner@kernel.org, debug@rivosinc.com, andy.chiu@sifive.com, jerry.shih@sifive.com, hankuan.chen@sifive.com, greentime.hu@sifive.com, evan@rivosinc.com, xiao.w.wang@intel.com, charlie@rivosinc.com, apatel@ventanamicro.com, mchitale@ventanamicro.com, dbarboza@ventanamicro.com, sameo@rivosinc.com, shikemeng@huaweicloud.com, willy@infradead.org, vincent.chen@sifive.com, guoren@kernel.org, samitolvanen@google.com, songshuaishuai@tinylab.org, gerg@kernel.org, heiko@sntech.de, bhe@redhat.com, jeeheng.sia@starfivetech.com, cyy@cyyself.name, maskray@google.com, ancientmodern4@gmail.com, mathis.salmen@matsal.de, cuiyunhui@bytedance.com, bgray@linux.ibm.com, mpe@ellerman.id.au, baruch@tkos.co.il, alx@kernel.org, david@redhat.com, catalin.marinas@arm.com, revest@chromium.org, josh@joshtriplett.org, shr@devkernel.io, deller@gmx.de, omosnace@redhat.com, ojeda@kernel.org, jhubbard@nvidia.com Subject: [PATCH v3 03/29] riscv/Kconfig: enable HAVE_EXIT_THREAD for riscv Date: Wed, 3 Apr 2024 16:34:51 -0700 Message-ID: <20240403234054.2020347-4-debug@rivosinc.com> X-Mailer: git-send-email 2.43.2 In-Reply-To: <20240403234054.2020347-1-debug@rivosinc.com> References: <20240403234054.2020347-1-debug@rivosinc.com> MIME-Version: 1.0 X-Rspamd-Queue-Id: 6A6DF20013 X-Rspam-User: X-Stat-Signature: 4iy893ke7t6g65jy6fnaabo4dsbb94fb X-Rspamd-Server: rspam03 X-HE-Tag: 1712187699-499731 X-HE-Meta: U2FsdGVkX1/M2LsWvhMZUgrRAWcP2/kssyEifmPMOl4NEyVOSXX75ATN5ke/N3GRLqLjthEoOkuqKZOgYIjLLAzGoF6WCfSMMJ1T+1MZEwV7NhkZ0irzVM4JldTbKuJqAnknfGvCUGJBYC/P9sqvS3/yelipNyjcz168vANXswxYcqD7Aqd1Gk438OrzCxHoZsceKGP0beboOr6PwX9iSBzh0Nt520ig64BsS8ZdG3oxPamL/dA5fYlGJFKvy42ghj766nCSQP4wCPDjmlkcquwYPRDi9n71yloj/aoIJoQSUch94RywwMNIAY34u1xYqsrrYSA//wo/rhZEbuoArlkjlkWYHtUrhxOedrnxcmqOAMLmHP/vRALbdH6Ye4tb67KKq8c4ylCnbQd/U73C/DysgCB7aZi9741sJZ8QxtKWNMEHr1SLJKHpeHZeHhCVVI5G9WyAWfr2wCNQ0agFueI7MlSnn2pUa5T39zXhX2skZgEU2ZQiarCRI2vH6mEj22sckIsyUoh09WDuASIS/NMTMSHCuwtsgwE1yZ6z47s13onCGE3PIkIOEnHNJP5BAfwM5lxB6qHohchaA8fmkktEe5vfc5qb9RqHsZ/7Rcf8GF86HeMaT+8JNOBzWzR6Z3r88tO0uRCpfU3cczHDaFrWf0L9GLCr0KKLy2mO8e5qHcFs4lYE7sppsy9QJcTgcVQ+vO3EQ4T1BxQjIJ72qRXOzY6wmABca9ZUNpyrreJqhjPmuhnjSvTVuCKfQIO3knomZB8Pkowmi0iGruox7fdzY0hXbvoqT+tw6DV6hB6LFIQg5g+UGfzYdYI9NgJNBeqYavucypdtVMgRvnff4oAedmOi2nGQNJQQjdS7ge+TdwWI7X4uQOlSbaIozgZs3bwf/5MylDHOP5YojZRZxQxC6aREPBF7bm0wL8XOZX5f8HFCCK2TT+OvKG2CLwKNwOOREhihBqbzslh7Mnt O/KUH2kk bMjTsIzD6y6Ikw46s/hKeNuiEvEGP+hRPrye4incIivgk4L+Vjl3DvsCuf3ruHVNI38bj2QzVPRDqIuFTRkJLeKOpaLiTR/aYPU/CULr6/BVcDw7Ubsz6CDQe9BxPHyM0PUt7E8FaY+jsTYhkjuZJLRyY7f+lqcYJZ7qRylYvwxxILUaTVtSr46ZFmyaNwU9IgMUHYPl8kXcsO25A63VtTrBQRFlSBkWcTu95KFtxG/NOR53dIe5GkQ08L+7qhnepLtj1OSBdo92qlkJVIsQ/0zBuf4i39QKhMYqbcz2Zb1MjFdlPtnRmT6rxQOTIVHRKzS6bGIcZbkJSIDvZx0DUjJu8c5yDA1X+WtXJsQLunC9T2qqyxMwxMj5MP5yb5Ln26QZLEEvus5Y0FIo+zsbVb8ElPniDpleNIgVbHru93b9FKDLCISdzHzeY/9XAPABvIh/98N4sFU2rl6UuNmBcFSVLVVDX9VTSisB82KDHzIldb5qe7V+JRYPh6gAAn9EZg1S69DTb9SCBQK9bU3fCgeGLnEZ//goxf7lgvERwNwL2sgQNy5RH9EAxhwVb4w1k0VnA X-Bogosity: Ham, tests=bogofilter, spamicity=0.000008, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: riscv will need an implementation for exit_thread to clean up shadow stack when thread exits. If current thread had shadow stack enabled, shadow stack is allocated by default for any new thread. Signed-off-by: Deepak Gupta Reviewed-by: Charlie Jenkins --- arch/riscv/Kconfig | 1 + arch/riscv/kernel/process.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index e3142ce531a0..7e0b2bcc388f 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -149,6 +149,7 @@ config RISCV select HAVE_SAMPLE_FTRACE_DIRECT_MULTI select HAVE_STACKPROTECTOR select HAVE_SYSCALL_TRACEPOINTS + select HAVE_EXIT_THREAD select HOTPLUG_CORE_SYNC_DEAD if HOTPLUG_CPU select IRQ_DOMAIN select IRQ_FORCED_THREADING diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c index d3109557f951..ce577cdc2af3 100644 --- a/arch/riscv/kernel/process.c +++ b/arch/riscv/kernel/process.c @@ -200,6 +200,11 @@ int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src) return 0; } +void exit_thread(struct task_struct *tsk) +{ + +} + int copy_thread(struct task_struct *p, const struct kernel_clone_args *args) { unsigned long clone_flags = args->flags;