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 A99AEC71136 for ; Thu, 12 Jun 2025 17:36:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 477646B0096; Thu, 12 Jun 2025 13:36:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4264E6B0092; Thu, 12 Jun 2025 13:36:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 315896B0095; Thu, 12 Jun 2025 13:36:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 0BAA16B008A for ; Thu, 12 Jun 2025 13:36:25 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id AC79081635 for ; Thu, 12 Jun 2025 17:36:24 +0000 (UTC) X-FDA: 83547452688.12.4338753 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf13.hostedemail.com (Postfix) with ESMTP id 604EA20007 for ; Thu, 12 Jun 2025 17:36:22 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=gPjOJz2D; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf13.hostedemail.com: domain of agordeev@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=agordeev@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749749782; 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:references:dkim-signature; bh=ANjAB/i+3wqbtm/fqKC9pjVNNGYd+LvuX5UmSeokVjQ=; b=qk3T2G88CexJ9xL6jeRT27aPNFTSFWUQAuK8hZy6mFwcTwAq+ZuQopNIxqKfK9SdZb9l21 XYcPtSKadqmbm7G/D8Fqr7HXNQbVWzqhEgOFnT0eglNoz8mtOwEptgW3eV0d57DXAfXLYo Jw9QWJEDyGuz/Q8/tpzpqgsJlnjDGHY= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=gPjOJz2D; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf13.hostedemail.com: domain of agordeev@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=agordeev@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749749782; a=rsa-sha256; cv=none; b=seZlkOlmgPG6omD2/YUlbUz3X3jjPOn4rGnZm6/i6eCuTAS31u4v65hSrKTgR43t+KIQM4 CxuNV3HR6Jyr3l1CY7dd7pC59iD462E1d3MnJMvQq4JBFT/ulgSnx4gsrFB3LaA4sTDv6x sxR/ZqQkPaQA+L4+2Id+6zOjPdOYqsw= Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 55C9xpHh005022; Thu, 12 Jun 2025 17:36:17 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:message-id:mime-version :subject:to; s=pp1; bh=ANjAB/i+3wqbtm/fqKC9pjVNNGYd+LvuX5UmSeokV jQ=; b=gPjOJz2DlLLAahuxLsMvga8P96e5QtjjssuX3WnL7wfNwU9S7odZ1iF9n AHXZaL0QgY2Yvv6+PISmVU8AGURt3TkfFKWYn1x50taMSKAa7h1Py0L08hzBockn sQx28XfA83iutCkSgewhPkGk2hg9n0qPC6L8fNJUmDuqW9yEPkMry4L+GC9tTYO0 SD4Ldvr2NfjhdTYVv7Rn944LtNQhipOioR+F7fsnJ9kdle/XbEcv+ONZ2kYaVUYJ /VTaRAakSqlZ1oK9rnq/4HmKpkaucRMwQY60+eLDS+xgc8bSOsXNrs+da1Mm5Jx9 DxiiZIL4w7ZQHN8ei7UjgxYir2X1w== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 474x4mhdbs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Jun 2025 17:36:16 +0000 (GMT) Received: from m0360072.ppops.net (m0360072.ppops.net [127.0.0.1]) by pps.reinject (8.18.0.8/8.18.0.8) with ESMTP id 55CHaGIg029272; Thu, 12 Jun 2025 17:36:16 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 474x4mhdbp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Jun 2025 17:36:16 +0000 (GMT) Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 55CGbdNq015205; Thu, 12 Jun 2025 17:36:15 GMT Received: from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 474yrtp6b1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 12 Jun 2025 17:36:15 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 55CHaE2S46072192 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 12 Jun 2025 17:36:14 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F201B20043; Thu, 12 Jun 2025 17:36:13 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DE45420040; Thu, 12 Jun 2025 17:36:13 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTPS; Thu, 12 Jun 2025 17:36:13 +0000 (GMT) Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 55669) id 9B577E0157; Thu, 12 Jun 2025 19:36:13 +0200 (CEST) From: Alexander Gordeev To: Andrew Morton Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, sparclinux@vger.kernel.org, xen-devel@lists.xenproject.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, Hugh Dickins , Nicholas Piggin , Guenter Roeck , Juergen Gross , Jeremy Fitzhardinge , Ryan Roberts Subject: [PATCH 0/6] mm: Consolidate lazy MMU mode context Date: Thu, 12 Jun 2025 19:36:07 +0200 Message-ID: X-Mailer: git-send-email 2.48.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=Y4X4sgeN c=1 sm=1 tr=0 ts=684b1011 cx=c_pps a=bLidbwmWQ0KltjZqbj+ezA==:117 a=bLidbwmWQ0KltjZqbj+ezA==:17 a=6IFa9wvqVegA:10 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=_adeEUt4WAeD9YfioJwA:9 X-Proofpoint-GUID: qr5W2YIzc2A8ZYU2dsRpP1AphHqeKos2 X-Proofpoint-ORIG-GUID: y6xW9IJSAE1JE6kcXuiy_mrCImk2ZWSK X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNjEyMDEzMiBTYWx0ZWRfXwOXjIkbbpepd OoV77Zxzv1DOdGZHdC1rjgNBCs+WzETf7mIinKv8drROUhS3PC4S3Ul3Eq1Rd7PKATmFyM+TDvL kAnBooerznbgDsNZ+/ZPaU+KOsEBXC93w8q9w6KmW11m/vgE/aUeMTSFQFutpSKrQJxT61mMBuv KSDxU4i8iMDqRaETa8beoNjTewS286bfktL7BQreW7c9kRIZcei0lJ9aqGyaWPDFPjwcafICCtq M+2fDqSlBJ149EKa1BJjaYXJjRiLvX/CmWd9wRa81Sdbs49mWKwGJKFbJ7AczMoR5fjZJzIohlx h7ggGzYUtbK6qCOXcSYaA1viUBK2oMNNt7ackAbJO+mupvs+X1Tc6Jccl69/IVghIosL27dXHPA isXNAQ9475tlf5eWUprb3n3jaqwe+zULK27nDf9N0r4ezafy+XnKcezzdAsVHSGEj7SQHlPp X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40 definitions=2025-06-12_10,2025-06-12_02,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=994 spamscore=0 clxscore=1011 lowpriorityscore=0 malwarescore=0 bulkscore=0 adultscore=0 impostorscore=0 suspectscore=0 phishscore=0 mlxscore=0 priorityscore=1501 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2506120132 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 604EA20007 X-Stat-Signature: zfqgd1qfntk3h6zz9quooojhaq78ti3f X-Rspam-User: X-HE-Tag: 1749749782-988188 X-HE-Meta: U2FsdGVkX1+5gNGz94GRW5MceHBSxH86IMLayxmHZiA16JH7P4jJ0edTKb8uyV6cr0cbBW7bewpNR9zSbhaFdbDwr59PR77ttMBwAHzSW4DGCEG97VzjycTl8v2NvQMaqzXvIYc7pgdcD/HcTe6RuctZUKhcehGB0gO0Jxvvpvfw2VZd1CqpjkA71Pn4BIbeEw7rTzoKzyXPomCfJMI8DH4IUAzFPOCwukygXvChy9/o6qaXVe7/tSj7zW1DM97k03dtzL3PeDGBGs9m3SF/YsuBiiOR+8WzJBw87cOjOhIli6tSLyzHPS+LT3h5wlLyEZtjfqauNmMiJYzfvWaH2htTxvXSsIGe0SUFOGGLXDUf56d2JxvKj5cgZ+tPI6Qj3Hf7dhdOU3plHo9WZUHtu1ib/QSypggykSpm7MQ2KbAIuOe41zHJLNVumaPLVOmIquqxhiIcscAxvDrb3IM//CK6oS8ZisaYGUly8LKbOGNy9YEqi8Nu2HriXV+bg0eYnCt3/AnHmgl4/vTPgupzICZTa11L6zyCLp1tK6U5vuaNQDTHcS2ZGDcX/Os6YZTbVOV+QcZKUB7KcBzKikHNaOmnMZ1N9XNzy6suyYjLmoK5skKemyKuIGNPxoLkoNRm0qQ1c0F+js5o/eUyiU3P47dbW+53FbDB2cRxSrI3sIY+dLj/cIzYsR4rGC0El0QIPpHlhTL8ccyrZW/TKrdJgD0ye59/6ldqb6Bd19TevXsDSwqwQjBxG7wzCT0Bz9N/X8FvdZb6iCirNY35efG19mqDEQ03DEm9FhHQYetBO8Romfa39IGxXrjdXBSVzo2SlLCy9742pIQdsMOYtuPHJwBwIR+Ma2CKZwOPHShwIgoKgvxZ/CcwtNSwCkCv3mbw8OZyZKYy9oTYSDL6g8ijAPR6N9lcI2hTgjlazDXO69CoSfdXWzAcFirKhEmde2IAP+hfPZh6Tv1HP36k4gj apsUb7E9 yDAxxlpRg7PVy8dDx1gm5Hyrw8OarHL2y7hyGlmQ1xVMdR7J/8nojH3WR+zm6tAQ1ftEVkcL9jJqbn2GgEZe9Ugrv7f2kREqlMtQB/c6cxFVY4iEM5W197WPPky0j9IuL5SgSHe3O3KKlI+h900zIwWYhWWgPBJ+xtqajus+SO4c+Aaqqf3hPkq4Md0J+1OoGmR8PLS5lDTWSSX1M6OZjjwZtOnk/KnKpmmHKSjN3tke2LGe6JinntoqUP+6t+/S7u4Bn18jS3op6VKm4W1eMVymGC4Tau4qWaaaTTBbVvZM7YLqPykXIJ3f4/34JjUBDkTIN 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: Hi All, Consolidate arch_enter|leave|flush_lazy_mmu_mode() context and protect with a lock not only user, but also kernel mappings before entering the lazy MMU mode. For not fully preemptible (Real-Time) kernels that simplifies semantics - while the mode is active the code should assume it is executing in atomic context. That paves the way for cleanups, such as suggested for sparc and powerpc and hopefully brings a bit more clarity in what labeled in commit 691ee97e1a9d ("mm: fix lazy mmu docs and usage") as "a bit of a mess (to put it politely)". The fully preemptible (Real-Time) kernels could probably also be brought into the fold, but I am not sure about implications (to say at least). This series is continuation of [1] and [2], with commit b6ea95a34cbd ("kasan: avoid sleepable page allocation from atomic context") already upstream. I dared to keep Nicholas Piggin R-b on patch 3, but dropped it from patch 2 due to new bits. Except the optional sparc (untested) and powerpc (complile-tested) updates this series is a prerequisite for implementation of lazy MMU mode on s390. 1. https://lore.kernel.org/linux-mm/cover.1744037648.git.agordeev@linux.ibm.com/#r 2. https://lore.kernel.org/linux-mm/cover.1744128123.git.agordeev@linux.ibm.com/#r Thanks! Alexander Gordeev (6): mm: Cleanup apply_to_pte_range() routine mm: Lock kernel page tables before entering lazy MMU mode mm/debug: Detect wrong arch_enter_lazy_mmu_mode() contexts sparc/mm: Do not disable preemption in lazy MMU mode powerpc/64s: Do not disable preemption in lazy MMU mode powerpc/64s: Do not re-activate batched TLB flush .../include/asm/book3s/64/tlbflush-hash.h | 13 ++++---- arch/powerpc/include/asm/thread_info.h | 2 -- arch/powerpc/kernel/process.c | 25 -------------- arch/sparc/include/asm/tlbflush_64.h | 2 +- arch/sparc/mm/tlb.c | 12 ++++--- include/linux/pgtable.h | 32 +++++++++++++----- mm/kasan/shadow.c | 5 --- mm/memory.c | 33 ++++++++++++------- mm/vmalloc.c | 6 ++++ 9 files changed, 65 insertions(+), 65 deletions(-) -- 2.48.1