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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9F8F1C5B549 for ; Mon, 2 Jun 2025 21:31:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2FFFB6B0348; Mon, 2 Jun 2025 17:31:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2D6A46B034A; Mon, 2 Jun 2025 17:31:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1EE5F6B034B; Mon, 2 Jun 2025 17:31:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 04DB96B0348 for ; Mon, 2 Jun 2025 17:31:04 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 4A3F3C13AD for ; Mon, 2 Jun 2025 21:31:04 +0000 (UTC) X-FDA: 83511756048.02.AF670EA Received: from mail-vs1-f52.google.com (mail-vs1-f52.google.com [209.85.217.52]) by imf04.hostedemail.com (Postfix) with ESMTP id 723404000C for ; Mon, 2 Jun 2025 21:31:02 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=kbKMFJtw; spf=pass (imf04.hostedemail.com: domain of 21cnbao@gmail.com designates 209.85.217.52 as permitted sender) smtp.mailfrom=21cnbao@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=1748899862; 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-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ahwjcQM1awKzAxWaWisDny1M/9KlXEjHJVY9Fy+4wRo=; b=5PfqrpbHV86+UBHKyAyk04HV3bPvKTPfZKLjwevB/s7owl5Pth64yF9q8EI89Jl9pPxoi/ 3C4/97PFNK2zNjquX2dL7VT0E+2M6oo2zdAh1u6akro2ro0f3pp/J18scXzRV++oDfBO6O luX2SHahcey7NoPpJ+bzfsgOrtMX5+E= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=kbKMFJtw; spf=pass (imf04.hostedemail.com: domain of 21cnbao@gmail.com designates 209.85.217.52 as permitted sender) smtp.mailfrom=21cnbao@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748899862; a=rsa-sha256; cv=none; b=oDMER8IHdpPGKGoNo3kn5spHV/5eBpaeXCPYJN7FIcqteUEEibk23RYZw/e9yXO9ozcHQI aVIk3bsn+1cc85xJOcGYWtagYK4vBRCPdxIzzDq/CTniOFPks7H9biLKScjBaUToFjZWZa pBAdrNLKEbIwvIaUw3EfiiADpQsJX+4= Received: by mail-vs1-f52.google.com with SMTP id ada2fe7eead31-4e5962a0f20so1430944137.1 for ; Mon, 02 Jun 2025 14:31:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748899861; x=1749504661; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ahwjcQM1awKzAxWaWisDny1M/9KlXEjHJVY9Fy+4wRo=; b=kbKMFJtwxqVdjPvHk9EBQLjeS9HvHLLrDdnDJkvFVLQIg6Sp72oGZA+E99VnqXz2Ta D1mQBfVgyD3x2Y6aYHybF6V9mNJJSWAJHa8DWaLSdzLyHGhMtR5VzhOnNOpa/yf1RSBB tDUuZsYRt4AwI09Fc16Xuvpitts8Su3JCEzLl+PjhLdyGC73Gk+UcGZmEceZT2kjyrGp IGITGl/Y/JhZP5NdcUP3IdytGUYhK1xxV7A8zp13BeagkXlwjgBU495P91YBj8OFnNIO tfSSoOkDnXelNH0CqXv3x3C0uyVw5iE21ssWl2vV8/jYlQJL2CieOCI86mHxMHc15HE5 XUQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748899861; x=1749504661; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ahwjcQM1awKzAxWaWisDny1M/9KlXEjHJVY9Fy+4wRo=; b=jb6MnmFFI1YzITL9ftrs4XYx2sui3aZ2NrCKacKH1SuQ+oyxxNkM1KPabaNzH8INBU YsSPKDrRB/9JmkU6b8Z6ScnukiH2PnYlol82yAQUVjETD2rK4p4pQAWXTqSbBGu8ujb/ awdzHa4Pv/75srx66/rDCBa9sKyb9Y3fI78nQGgHfGfWtuThlKJl4jg+ZwRrYZwgXBlB 6D2iFYdalCOOZoqINRserEgz1gP1NJevMU3Z7NvgSiJsI/+xsnrFfn1L+FQZSvl29S64 4nOzFeGdmk8dmrYLds/zCBVV4f397X6EGf0dWQ/0AYdSNdM1Q4VwqFAzy/z3rAKwcBnj sooQ== X-Forwarded-Encrypted: i=1; AJvYcCVfaktsNVkA5eK/jx1bwSksDmimYXeQfBn/vJGHTJ1Dv1ejDrY0E441NpqCuy2J3avvtX++Dwfhyg==@kvack.org X-Gm-Message-State: AOJu0YxRBosAwINKE6ZlzgtlnhzqU28YXDvGOg02zLzZoz72ZolALjrP 4x6JG5ZbfKA11xTj3lFKLr57xD0kvWh0xGB6pS96ZnQUga2+ldzoQAHUzXKLtst9uHvSGp0g/5Y 223l5XfvcgG4d2MuJNFxjmgl97rFzpfI= X-Gm-Gg: ASbGncu2c8UOX80Z/5V4ZJY2jhbcgiau3JB+cKxZ7pd1ePTYRm7f+PfQ2eyIRLTT/s2 K/3Jyb/uvqyD1JIqJBx9wnjpR46msAB335JZR0CXMwd9nr1adkU6wBYQKWZ97v1Ioq+MaS0wrv9 xaTnUONV3hDT3n1IyxSTNzkE4qcQY3eEwM0A== X-Google-Smtp-Source: AGHT+IFcYQpK199UwsjK58+BDiGchMTWvJ49tAMAqutY/Ui7dGVhZg+9q4IYfYLjmQELRaZ+uL53F4JPe2DguPnSajo= X-Received: by 2002:a05:6102:e10:b0:4da:e6e1:c33c with SMTP id ada2fe7eead31-4e6ecd2bed0mr11892260137.3.1748899861449; Mon, 02 Jun 2025 14:31:01 -0700 (PDT) MIME-Version: 1.0 References: <20250602174926.1074-1-sj@kernel.org> In-Reply-To: <20250602174926.1074-1-sj@kernel.org> From: Barry Song <21cnbao@gmail.com> Date: Tue, 3 Jun 2025 09:30:50 +1200 X-Gm-Features: AX0GCFvFwZVRqbrtMbtZ-QPYvwODjaTEY5PF5GpMrHhJXk4O3imOsscHXdOUxiY Message-ID: Subject: Re: [PATCH] mm/madvise: handle madvise_lock() failure during race unwinding To: SeongJae Park Cc: Andrew Morton , "Liam R. Howlett" , David Hildenbrand , Jann Horn , Lorenzo Stoakes , Shakeel Butt , Vlastimil Babka , linux-kernel@vger.kernel.org, linux-mm@kvack.org, stable@kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 723404000C X-Stat-Signature: mqm53fwebhjgsr16t3atn3rrwdefju9a X-Rspam-User: X-HE-Tag: 1748899862-467447 X-HE-Meta: U2FsdGVkX1/cTB+n53uFzqNGrUD5aYRVtKAxC/Npd44HON13qE14BRa4jURw5eE5bZ6ioCx4gNX1LhGO16xtjLmcWTn/a2sysGBRAXgy+Q/ZDkpENY1hk61n8VfxUh/EObqDQarM23r7c8vVnTTQFunGbboh2dDGuRORyaDtOmwTrR8fMauFbsEonUFc3QUhswVVRbxJuv+xFI8HsQvuy9LqXeJSbndfmrW0+j4nUGmOPFrIzANi19pZsFkoeRpwEUMEaMwLTHXwXMuIwwSteVQmGseJyLNl38g51JptQtqXYp8uCfVNg526zyV1Vq5R0Tr4p6c3M0YbdnmWCDeAO/jBNE+2sIg9D1Hz8l8QaARMYT6RzoFE2X01QX5AQ8SAKC98BBPcI0xDOc/6cTuh6metMu8PhezYg1nfLhe+zyYxXJmXQFNx0efmJLOm5dYiYJgnxyWxbtHlfiEcAVy86dcc+GEPDaif7+tifURRJvBrwiSe4EQsEuamieXjpZHmvISesSeGgTIWddAeD9nN3bi72dmYLhrNQg9yScsI4kTm/6nL4AzUPpI9BAlgY4fxpqonsZvkZ+SE0kmIBmhBDQZ3/O3OBjiBwmTsAdmcwW2BIrLVTSTDHiZ94APqukndoqArwm46kE/EZp5sOv65hhmLpXrJRAgUt7vfRYZ6Xklo9X8ZOUccAKlrO8kD2VR5+zgjYUkFOpmJ7KbPJzpUuIa2QL/AvT06bgyVoy4NbAyQrsubzh3jpA29iSoecVXAuper0MgycLUVaG2N24I+AzDrHKAlPetRvp6ON6QEbbunQwmvTh3AcoUIL2zOLC0tZEx1A6RfADQhb6o7JxHw9+uQWw+8xhxV2/NEmvjMO7jfNpiZl577cCreW/pXogYLW4O3A2T1pTVmC26ROZUQOX28WB4d8bUWJXRU6Y9wF4bpylfVWqRCEhhHUNqqnzJRr5hR7duHwNvpm6/tTxi iIT2TtY+ LviCHNHeHL/Y7xmnB26Exn3DC4VNM5fTsrqOUfQUrK9G/zWM4ptcfW9lMo7K29So95pRaPWjnEzpBH9Rgm5RxY/UQa0iGCJ5A1ogz20ev1D0oljx0vwlvWlIGz9nYB4DSZoQGBjhKpyncR4DwJgtOlDDbiQ+K/LoqXss60mfrqxlWB5VysxXo2tLdqq59lroUqSyLxbaBYAx6T9r/u+e005qNu5pCCrmwSluNQc1tRjcHsSyNFX8FIbpYxx3KHlGlY4udCTPBVGTVVMf+YazpRDIxDvsKhAvdf1A2abkf3mjhQaGM6YmUGre/FNXWEwUbaaHx7KX+qRe73gU/5IH6bnGxL5dEpV4ggG4cPA7aRQ+wkaZcjgfZpM4i+hYXNjFmHM2yp6dLHDbsCzzikfSTQD6ImHo2bH+Fk3ZX X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, Jun 3, 2025 at 5:49=E2=80=AFAM SeongJae Park wrote: > > When unwinding race on -ERESTARTNOINTR handling of process_madvise(), > madvise_lock() failure is ignored. Check the failure and abort > remaining works in the case. > > Fixes: 4000e3d0a367 ("mm/madvise: remove redundant mmap_lock operations f= rom process_madvise()") > Cc: stable@kernel.org > Reported-by: Barry Song <21cnbao@gmail.com> > Closes: https://lore.kernel.org/CAGsJ_4xJXXO0G+4BizhohSZ4yDteziPw43_uF8nP= XPWxUVChzw@mail.gmail.com > Signed-off-by: SeongJae Park LGTM, thanks! Reviewed-by: Barry Song > --- > mm/madvise.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/mm/madvise.c b/mm/madvise.c > index 8433ac9b27e0..5f7a66a1617e 100644 > --- a/mm/madvise.c > +++ b/mm/madvise.c > @@ -1881,7 +1881,9 @@ static ssize_t vector_madvise(struct mm_struct *mm,= struct iov_iter *iter, > /* Drop and reacquire lock to unwind race. */ > madvise_finish_tlb(&madv_behavior); > madvise_unlock(mm, behavior); > - madvise_lock(mm, behavior); > + ret =3D madvise_lock(mm, behavior); > + if (ret) > + goto out; > madvise_init_tlb(&madv_behavior, mm); > continue; > } > @@ -1892,6 +1894,7 @@ static ssize_t vector_madvise(struct mm_struct *mm,= struct iov_iter *iter, > madvise_finish_tlb(&madv_behavior); > madvise_unlock(mm, behavior); > > +out: > ret =3D (total_len - iov_iter_count(iter)) ? : ret; > > return ret; > > base-commit: d85ea9175e4147e15ff6e3c0e02c6c447ef473c8 > -- > 2.39.5