From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pg1-f175.google.com (mail-pg1-f175.google.com [209.85.215.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 850D1352FAB for ; Wed, 11 Feb 2026 04:08:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.175 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770782912; cv=none; b=tKkhj9GPgplRRIFG50Op/0AlGk0aVW/QqJr39lZTx3Hs9XkaM74OCxNVL4daDAnO3cM3p4hIHMtO3BwSkZHq0lSaD+Cut7utv4uy3UGvuIClOHVGmO/ocGkcKz/ajsWxIWoiigeRaBuwFKRiLns9xoU09J0j/h/ab6Czf7OY/I0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770782912; c=relaxed/simple; bh=1R8Olwe8WW0a7Auax0qYBxIfntxRddpyhnQ6vhfbV2k=; h=From:To:Cc:Subject:In-Reply-To:Date:Message-ID:References; b=Gw+wAKZQhZaR8/JrRbJv6wmKbILm3b5IBSPnJStE0bpKsgyq+hQRdjqYvYNCgd4t9pnBSMtvewOk/YW2bSPHUYIZcd2q+DraAC22rQMwDyRmBRUkFb2cM6x2n7IL7I5CBp4gP8txfrs1PD7SxC6I+ADBk5iARVsSuks1LUgoadI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=PkTm/zuc; arc=none smtp.client-ip=209.85.215.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="PkTm/zuc" Received: by mail-pg1-f175.google.com with SMTP id 41be03b00d2f7-c6c444e89bcso591817a12.2 for ; Tue, 10 Feb 2026 20:08:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770782910; x=1771387710; darn=vger.kernel.org; h=references:message-id:date:in-reply-to:subject:cc:to:from:from:to :cc:subject:date:message-id:reply-to; bh=D2eMYc+39p5sjw2VZLfFJ4kKNtq8lBxRgNa5raKSCaw=; b=PkTm/zuclbBADyxTa58bYcgQR7OkW22FnmOgvFPvkzrcihyQWK8vN6Kcc09QljzLgk mDdl7of+fjtFuhWYJT21Aj48pcH+oP52xNfpyX1NM1AYYUXao9PPfFh8teRJVsKn1ffH qd3HF3/w0ttYygLAG/Tyyw1ZEXRcSdUZHbKIxGxkcPfN708EZXlU2E88ZbisFVpCsyDP KfZkfM3MmVqMWKh/fhtu7Ix+Hb/nSppGHgrRCvc5Nq4V8aZX0zVtQcBpTXC5uoh3bE3f vnp73VX0KKysPXMyjWq2+yKd7gwEJsY7zAWnIbB/OE1xbRM3DKqiJPt0fE40Sasyo8Ec elYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770782910; x=1771387710; h=references:message-id:date:in-reply-to:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=D2eMYc+39p5sjw2VZLfFJ4kKNtq8lBxRgNa5raKSCaw=; b=wcTS+GByRsNG7UQBY1NXRDldRoKqv7JdYmuJ6JeHQVSHseoi5cWf9oKpPGrsA97SN6 dkLBXKYqgAuteExlEWuDM9ipZyaW8+4cKocZO66CesFEOHOEXXwzHsdZb8hZD9dxnGnV TpUgflY2+U2PkxjSnebSUByLF4uGsIWnpIpN+PFvEeqXqvi33Q/nAUH9yfnNJ2lOfyqq Y1RdshdzkNKi0ss9tGZu8TyCGrKlNaD9glT9nEY225t0zwTFcMBAZE5DGytC+byZFFWU W0H0JHLSB2cDGNA/lx3olPxlvK9CM5Xn6AbP4UoKDzZk4WrmB60OlcRC5os7BZ7zJ8bV ykUQ== X-Forwarded-Encrypted: i=1; AJvYcCV/s7hTEWviafsQXrFmCyY5tL5vmL31/F1oHol6a07HcXIZYF4nY1NJFFhRZBCRNB4vifNBuujMxv8XJwQ=@vger.kernel.org X-Gm-Message-State: AOJu0Yxhz+0DQRtLaUa4kmyLN4QlfbX4Qa3caX4R4nK91wplysEG2Q8A pj3O+NiGiraW83+SRxoSSjNKw2GoKmJzsQ5o1R1RpM9b3D/4de9d5GDQ X-Gm-Gg: AZuq6aIBcKHJ61o0vt0z1VRk8lIgAErhvhOKd0xR6Gf/vd10VBi2DfeSN+nC4XsdgXl dDCxzbMm3xdEEPGf8F7URH9iTsL3VP8i/3V23DSouQ41SDt+DYh/Y51ajjp7ibJIJadyy4BTCQs OP/FsiQCMN+3RyrF7r++eRVzo2loefnjSH3hQ62QUEkenfI61YF5oh0xufU/z+J2kDdWcJb+vsE o8mxSWllrxTUnas2Os4A2muXgR6zeIBfi1csciB5SMkGkEMpCIt8Wfzr59ecTYVzbTKKf6sMorI v7+sMd4AGMFhE88jfJk3B0GvHFcmKxBhnVQrtYjgLN1CrAurFQgSe+9KBjkItoUuUgUJ7/RbZa3 +iG05egy7SRou4VrHPMLdzwta9CVPt7x9F6u1wIG/xgUZtzur4vdoF2ZAqwj6KzxNiNucSW4wD6 HRV1sPAeKoZ0+Mh0a/ X-Received: by 2002:a05:6a20:c995:b0:38b:ee34:24f4 with SMTP id adf61e73a8af0-393acf8d036mr17280014637.15.1770782909791; Tue, 10 Feb 2026 20:08:29 -0800 (PST) Received: from dw-tp ([49.205.216.49]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-8249e7d5e7csm568794b3a.33.2026.02.10.20.08.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Feb 2026 20:08:29 -0800 (PST) From: Ritesh Harjani (IBM) To: Suren Baghdasaryan , akpm@linux-foundation.org Cc: willy@infradead.org, david@kernel.org, ziy@nvidia.com, matthew.brost@intel.com, joshua.hahnjy@gmail.com, rakie.kim@sk.com, byungchul@sk.com, gourry@gourry.net, ying.huang@linux.alibaba.com, apopple@nvidia.com, lorenzo.stoakes@oracle.com, baolin.wang@linux.alibaba.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org, lance.yang@linux.dev, vbabka@suse.cz, jannh@google.com, rppt@kernel.org, mhocko@suse.com, pfalcato@suse.de, kees@kernel.org, maddy@linux.ibm.com, npiggin@gmail.com, mpe@ellerman.id.au, chleroy@kernel.org, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, surenb@google.com Subject: Re: [PATCH 1/1] mm: replace vma_start_write() with vma_start_write_killable() In-Reply-To: <20260209220849.2126486-1-surenb@google.com> Date: Wed, 11 Feb 2026 09:25:51 +0530 Message-ID: <874ino0w8o.ritesh.list@gmail.com> References: <20260209220849.2126486-1-surenb@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Suren Baghdasaryan writes: > Now that we have vma_start_write_killable() we can replace most of the > vma_start_write() calls with it, improving reaction time to the kill > signal. > > There are several places which are left untouched by this patch: > > 1. free_pgtables() because function should free page tables even if a > fatal signal is pending. > > 2. userfaultd code, where some paths calling vma_start_write() can > handle EINTR and some can't without a deeper code refactoring. > > 3. vm_flags_{set|mod|clear} require refactoring that involves moving > vma_start_write() out of these functions and replacing it with > vma_assert_write_locked(), then callers of these functions should > lock the vma themselves using vma_start_write_killable() whenever > possible. > > Suggested-by: Matthew Wilcox > Signed-off-by: Suren Baghdasaryan > --- > arch/powerpc/kvm/book3s_hv_uvmem.c | 5 +- > include/linux/mempolicy.h | 5 +- > mm/khugepaged.c | 5 +- > mm/madvise.c | 4 +- > mm/memory.c | 2 + > mm/mempolicy.c | 23 ++++++-- > mm/mlock.c | 20 +++++-- > mm/mprotect.c | 4 +- > mm/mremap.c | 4 +- > mm/pagewalk.c | 20 +++++-- > mm/vma.c | 94 +++++++++++++++++++++--------- > mm/vma_exec.c | 6 +- > 12 files changed, 139 insertions(+), 53 deletions(-) > > diff --git a/arch/powerpc/kvm/book3s_hv_uvmem.c b/arch/powerpc/kvm/book3s_hv_uvmem.c > index 7cf9310de0ec..69750edcf8d5 100644 > --- a/arch/powerpc/kvm/book3s_hv_uvmem.c > +++ b/arch/powerpc/kvm/book3s_hv_uvmem.c > @@ -410,7 +410,10 @@ static int kvmppc_memslot_page_merge(struct kvm *kvm, > ret = H_STATE; > break; > } > - vma_start_write(vma); > + if (vma_start_write_killable(vma)) { > + ret = H_STATE; > + break; > + } > /* Copy vm_flags to avoid partial modifications in ksm_madvise */ > vm_flags = vma->vm_flags; > ret = ksm_madvise(vma, vma->vm_start, vma->vm_end, The above change w.r.t. powerpc error handling in function kvmppc_memslot_page_merge() looks good to me. Please feel free to add: Reviewed-by: Ritesh Harjani (IBM) # powerpc -ritesh