From patchwork Wed Feb 5 20:09:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mateusz Guzik X-Patchwork-Id: 13961857 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 B22DAC02198 for ; Wed, 5 Feb 2025 20:09:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1A50E280018; Wed, 5 Feb 2025 15:09:45 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 105DC280008; Wed, 5 Feb 2025 15:09:44 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E0360280018; Wed, 5 Feb 2025 15:09:44 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id BE181280008 for ; Wed, 5 Feb 2025 15:09:44 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 6408414073C for ; Wed, 5 Feb 2025 20:09:44 +0000 (UTC) X-FDA: 83086981488.20.AAA72E1 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) by imf28.hostedemail.com (Postfix) with ESMTP id 7AD10C0006 for ; Wed, 5 Feb 2025 20:09:42 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ONauV2YH; spf=pass (imf28.hostedemail.com: domain of mjguzik@gmail.com designates 209.85.218.47 as permitted sender) smtp.mailfrom=mjguzik@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738786182; 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=/diWf3Ne11QncyO86if84fhx289XRB6QA3E34QVttl8=; b=yyhi2r3Uq/KYeJwG5R/HOiknQVMCOgV38n+Bn50CazrHDBGMUb4ZSCmkKscWrDeSdtZ2l3 cDxatx4G5AgmpnontbwEmi5BqqtGsqQtBYDICXiW1eiAPG49Uwx5nbN2OzcMgwzEYydMIy T27cNMLHoVnV8VTwPoiZlVZKtN8BZr8= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ONauV2YH; spf=pass (imf28.hostedemail.com: domain of mjguzik@gmail.com designates 209.85.218.47 as permitted sender) smtp.mailfrom=mjguzik@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738786182; a=rsa-sha256; cv=none; b=TfiPHQM0Q1FI7iT2dPv1/oAL3yVhM67l7O+YFMGybcyfR8NTwk6qZLADcNODZfULXrx0pS nVgK41BDLGQLZF2qr1KGJQQPVJs/zYsSD7ZNFpOlIuNtzOso3qOe7XYJR5zFYWD0RIIFiT 6GYsvDjBEC/16y5+5aQ/IBLmzcQFpmU= Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-ab7430e27b2so36098666b.3 for ; Wed, 05 Feb 2025 12:09:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1738786181; x=1739390981; 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=/diWf3Ne11QncyO86if84fhx289XRB6QA3E34QVttl8=; b=ONauV2YH5Y1yCMsg8yzjDBvpn4KDDA56E2C7oAz4SN34wIBUiowkZE/EkieisfoR1x r9NKL0+QD38a1C9UYVmmkYS1paHP2CJ4IlbDevXMWq8t9ixSTmvC8aqhzdBno2VgBzlZ gEZr9+guz9hUX2EL3QkibidjYrsfIQ5F/r8+3sqivucObzw8LIBNPcHsnKavsdCH4MyX MVu5rSeub5nSbP54Hqxv+gDl2W4+T/VYDG9YUFo1moyDzd3+y1VN3KS58Z+IJXgJcoMy Mgpjaz4b7Jt21zecy2chKMik2tAOuMG4szozTuf2ZhUNIMsPeXvFUIuaoMxbeIA33asH xW/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738786181; x=1739390981; 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=/diWf3Ne11QncyO86if84fhx289XRB6QA3E34QVttl8=; b=QpVnxVR/II9ATXlMfA3pnCp+cZQpOdPZp3FnFqzjByTPe0oZs+6qMSo2u5pmMfMxDU p1tWjxQFpUcIUdYIxHIYP611LbaVF4j7gbKfp0rSvkGTqETigyEXtvBG9M6bOTvLtoeU xXXUCwfXr+luTaKGvzigfqdvVWh1ytkw+5EqPgO7+dpc0+OkKuVo70rHvis1twbVuPDj j6waZnIv3JJZAaAssek6dWD5G90YfSL596Cr5nuntb7Jyk09xrxzau92euWrOI5S1VGM 7s+mudxgfjB7/eOGZgQdUMpSj6bPrMyAIZfMRDc49SyHEJ6DEUu0I3GmraHEui0qKd7B i+Rw== X-Forwarded-Encrypted: i=1; AJvYcCV1VyX6dDh0pWHiUrBAeR8dQdUXCKsY9156NNYDZn/OIH0wt3+vbXlQeHAQe95/RhMtBjUEW0RrRA==@kvack.org X-Gm-Message-State: AOJu0YzdVSwAbBeAAnvm/+fJX2q7+eg6i63H/v+qP4C0q2Gu7ckCpkzA xfD4tD/HIOEnFzglZVFxkj3De6ow6eVZ4t9wVY+AsKxZaAstcdcX X-Gm-Gg: ASbGncs5EVXYXccjxDjqg0gojisDbjSDnPZqx+MTCGZIxEPhEPl1RTqTCazvKlSz1Tl DXRhl6OEzydlZKRImPrPNHtU/mN0Lgus5U7w4cL0QhkZpycBAs3mjSqVwSDMjbAHVwlDsp4VG/G B7Lr+xRCX51Wp+AzQwWfdkAUC7z11lOU1MplZo2BLv6BuLC+lrDlHlXBqniX8JkGuYuZZD1GbFa dWDZphR5HBJuEyS01fPKajdvJ2FbR00F+f0DI6rnnsje5u8P2SC3B6nqrPOP6997K0qZlIt/xMz Yv4RDcF6X6N1/kChWE1YCgp/ra5k62U= X-Google-Smtp-Source: AGHT+IHhm2J6TejI3Q6Hmp1UNNqGIH6Qdf4lJY6zmYuaoxwWi9cVhTvNKwZHZvNjq8bgfHO1UeNWVQ== X-Received: by 2002:a17:907:8692:b0:ab6:d547:da9b with SMTP id a640c23a62f3a-ab75e23c77amr411221966b.23.1738786180759; Wed, 05 Feb 2025 12:09:40 -0800 (PST) Received: from f.. (cst-prg-95-94.cust.vodafone.cz. [46.135.95.94]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ab703fbcc0csm932221866b.53.2025.02.05.12.09.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 12:09:39 -0800 (PST) From: Mateusz Guzik To: ebiederm@xmission.com, oleg@redhat.com Cc: brauner@kernel.org, akpm@linux-foundation.org, Liam.Howlett@oracle.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Mateusz Guzik Subject: [PATCH v5 2/5] exit: hoist get_pid() in release_task() outside of tasklist_lock Date: Wed, 5 Feb 2025 21:09:26 +0100 Message-ID: <20250205200929.406568-3-mjguzik@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205200929.406568-1-mjguzik@gmail.com> References: <20250205200929.406568-1-mjguzik@gmail.com> MIME-Version: 1.0 X-Rspamd-Queue-Id: 7AD10C0006 X-Stat-Signature: qf1if6yyisdq3qsbc4ymufgs69g1bc8e X-Rspamd-Server: rspam08 X-Rspam-User: X-HE-Tag: 1738786182-459497 X-HE-Meta: U2FsdGVkX1+W6JO6sb6jC5MSz7xvK0+ZS2vgY6n07e3Z+GoFMUXIy+VtS6at+TVUsEaVlY//MS1guKiN5g5VkkBnhf+nDvS25SUZo2PtnPqEOcoFH1s5B7HBGHj4uaje0mECnqMfoNfbe5i5xx3iIBZysZTPhwFO6c39VH9EC2CatPnGko5yo+e5IA1BPaymQuq/f7AK/jsY0c/7icwHtsGwEoe1LQESs6+6v704xiHf3WnRRrUXFNy5toT7ZBbtOgFyFi1Gf/HNZgg6nqfQmxoUTwEZDfMmyqKytgAPCEe6opSH8T9HIA+KV610IGC6VZQz+VRHFW7qeLxHkv7BHXSj3aXv9WTY2YScImkwmfI18PCZObsXPTTdjdnZX3v47e2rAOEaTR1aqcDDvHKN1FmOgNMa733hj/ZICH7kkZGPu0wmxRmtqEDwPvq+rKUKmItYUqntFW7Nb+r9mRNeDNuDgFAvUyUtSXxUActFjaEXKpeT+zp42fe0wV/lv1UuxNorWHqEDfKe39ZpMqL2gjpKcxdAJ7BjJHAV8AOfRSiLT0z0MSw9eee1II1WyrpkJkNLyBtwlBDDGbwjfOlVrV73qTy2a+oRBqbiCJoGUwaqzglTevZMy3LEELczs47Y/dkOzuMetPqN1qfdqQHjjbSad856rZQutCtkHE/OiUZEi91rQRj5tp1dSqulTZYecgwG2RjX3wjXt3QWa9nEVlRfVRa9d6Nn50gntpqo8a4DOuIfetbJt+X0OofGljSEKs6ESgdsh4/HiE2q6vFohBbaabEMQZ8PD3QvBJpqGLxP6X0DKPx5KERi9wm6kFaU36GZysIxd4GCEVcqm6Y06ZxgsEjhp76xEaQGJMYoGtr5olQAw+binLu7tJppOFRGEX/c5nrNu6zGkG0PXdnaZGWhVe8tLFKFumpa4tB8T1+B4jc7zxpfrHAS4hR0td6KEA+cwdHduzROXnqYMGr eXWr0cLk A/uusCDVDmvdKf3dH8lN/rAKUPsq0rt1uB0vnOt1pOtHJ193eeLyPTmPo2gM7WbU1WgdMELl1h0itDTKrGcCU6Kz+yTYs1DcQdNw196U5ok+Mc8XYBjUPPtcIfQ5ggyto55EIXim1vZS3lBGiWk6aSXvL/ukE6yHdSnOCprUFuiKeOOIjt+qf9rs16fo/cj7sP5rFRbZI/Js05FzBoRSHV58fmwnsvNbDBFXmBkbWTJclL4nmbF2aYVpDJJ6klzD84mSjf8aJZfjjwkw7+p421VXvwJ2tPSkRtP9psY472yKRAwP5URQnbeUvOeMOIbIbNDtQLX076Tv4FiVWi6bXOGKStupcWSOQUN/sTHZg0gGxb+jFjMdEDHHY5F/7j6ALYEloVr7WUypYAwn1rrtBoamH0QB15AfUlf/3Bv/q/KihZjuZi4U/Lc8yFc0gvvpy3uKSN5vdfVGLaf7d0Juj3h1Vkw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.001407, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: reduces hold time as get_pid() contains an atomic Reviewed-by: Oleg Nesterov Signed-off-by: Mateusz Guzik --- kernel/exit.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/exit.c b/kernel/exit.c index c79b41509cd3..b5c0cbc6bdfb 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -248,9 +248,10 @@ void release_task(struct task_struct *p) cgroup_release(p); + thread_pid = get_pid(p->thread_pid); + write_lock_irq(&tasklist_lock); ptrace_release_task(p); - thread_pid = get_pid(p->thread_pid); __exit_signal(p); /*