From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0C5EB2DD60E for ; Tue, 31 Mar 2026 00:43:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774917806; cv=none; b=Ul6QjsRxFBGQ5RCeUbGhAIUs11VLJQmXafNOFeRxXT6NSFkUohbwtQcHdgXUTo9a5Feopu2qrnrS6besrVWeVnuKIt3I2o0LBegMY2Mdk9l6VJ/aWKnYty1y0I7oDDecCLLWv/rWphj3QFZWgR72UxYgsTWduPHSVV/5o5Hy3Jg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774917806; c=relaxed/simple; bh=1mZ5bqsR4JHJKwqEdvHyPS6LztT+koIzH1iwrpzXzHY=; h=Date:To:From:Subject:Message-Id; b=iFcN6fRSg30UKjp+z+A/Av5eZLpremvDBDVwJiKPAGvrZv1oEpGVyAZ28J/EFDrHIkQHr2wa0HIrABDCCmKMYOZYhJEIrTK+ZfxmxQs+w+fHC4E/QOPJSGBP7cBO8g47OlscU7k4Jl9b950ZPTUDoIeaA+3RYUJRd/WFTO8SkLA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b=uPJKV7Yp; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b="uPJKV7Yp" Received: by smtp.kernel.org (Postfix) with ESMTPSA id CDA50C4CEF7; Tue, 31 Mar 2026 00:43:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1774917805; bh=1mZ5bqsR4JHJKwqEdvHyPS6LztT+koIzH1iwrpzXzHY=; h=Date:To:From:Subject:From; b=uPJKV7Yplca2tW3idFG0ZKAXI0lIDLOZajRJJxDAO3P3pF99UIyEJ5pUiIW/SQObL xz0ockbl7OKYDsQTt6gx0FksAEy0awQTloySdxG4lyaUfc57VljI+XISTw4slWyls5 08IubMs8hLeskxAw8blBKpQRCJUI9gbUqCTE9fVY= Date: Mon, 30 Mar 2026 17:43:25 -0700 To: mm-commits@vger.kernel.org,wei.liu@kernel.org,viro@zeniv.linux.org.uk,vigneshr@ti.com,vbabka@kernel.org,surenb@google.com,ryan.roberts@arm.com,rppt@kernel.org,richard@nod.at,pfalcato@suse.de,miquel.raynal@bootlin.com,mhocko@suse.com,mcoquelin.stm32@gmail.com,martin.petersen@oracle.com,marc.dionne@auristor.com,longli@microsoft.com,liam.howlett@oracle.com,kys@microsoft.com,jannh@google.com,jack@suse.cz,haiyangz@microsoft.com,gregkh@linuxfoundation.org,dhowells@redhat.com,decui@microsoft.com,david@kernel.org,corbet@lwn.net,clemens@ladisch.de,brauner@kernel.org,bostroesser@gmail.com,arnd@arndb.de,alexandre.torgue@foss.st.com,alexander.shishkin@linux.intel.com,ljs@kernel.org,akpm@linux-foundation.org From: Andrew Morton Subject: [merged mm-stable] stm-replace-deprecated-mmap-hook-with-mmap_prepare.patch removed from -mm tree Message-Id: <20260331004325.CDA50C4CEF7@smtp.kernel.org> Precedence: bulk X-Mailing-List: mm-commits@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: The quilt patch titled Subject: stm: replace deprecated mmap hook with mmap_prepare has been removed from the -mm tree. Its filename was stm-replace-deprecated-mmap-hook-with-mmap_prepare.patch This patch was dropped because it was merged into the mm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm ------------------------------------------------------ From: "Lorenzo Stoakes (Oracle)" Subject: stm: replace deprecated mmap hook with mmap_prepare Date: Fri, 20 Mar 2026 22:39:41 +0000 The f_op->mmap interface is deprecated, so update driver to use its successor, mmap_prepare. The driver previously used vm_iomap_memory(), so this change replaces it with its mmap_prepare equivalent, mmap_action_simple_ioremap(). Also, in order to correctly maintain reference counting, add a vm_ops->mapped callback to increment the reference count when successfully mapped. Link: https://lkml.kernel.org/r/9f3d559a264a83cf45518fcf35cc7ef1d7dfd500.1774045440.git.ljs@kernel.org Signed-off-by: Lorenzo Stoakes (Oracle) Reviewed-by: Suren Baghdasaryan Acked-by: Vlastimil Babka (SUSE) Cc: Alexander Shishkin Cc: Alexandre Torgue Cc: Al Viro Cc: Arnd Bergmann Cc: Bodo Stroesser Cc: Christian Brauner Cc: Clemens Ladisch Cc: David Hildenbrand Cc: David Howells Cc: Dexuan Cui Cc: Greg Kroah-Hartman Cc: Haiyang Zhang Cc: Jan Kara Cc: Jann Horn Cc: Jonathan Corbet Cc: K. Y. Srinivasan Cc: Liam Howlett Cc: Long Li Cc: Marc Dionne Cc: "Martin K. Petersen" Cc: Maxime Coquelin Cc: Michal Hocko Cc: Mike Rapoport Cc: Miquel Raynal Cc: Pedro Falcato Cc: Richard Weinberger Cc: Ryan Roberts Cc: Vignesh Raghavendra Cc: Wei Liu Signed-off-by: Andrew Morton --- drivers/hwtracing/stm/core.c | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) --- a/drivers/hwtracing/stm/core.c~stm-replace-deprecated-mmap-hook-with-mmap_prepare +++ a/drivers/hwtracing/stm/core.c @@ -666,6 +666,16 @@ static ssize_t stm_char_write(struct fil return count; } +static int stm_mmap_mapped(unsigned long start, unsigned long end, pgoff_t pgoff, + const struct file *file, void **vm_private_data) +{ + struct stm_file *stmf = file->private_data; + struct stm_device *stm = stmf->stm; + + pm_runtime_get_sync(&stm->dev); + return 0; +} + static void stm_mmap_open(struct vm_area_struct *vma) { struct stm_file *stmf = vma->vm_file->private_data; @@ -684,12 +694,14 @@ static void stm_mmap_close(struct vm_are } static const struct vm_operations_struct stm_mmap_vmops = { + .mapped = stm_mmap_mapped, .open = stm_mmap_open, .close = stm_mmap_close, }; -static int stm_char_mmap(struct file *file, struct vm_area_struct *vma) +static int stm_char_mmap_prepare(struct vm_area_desc *desc) { + struct file *file = desc->file; struct stm_file *stmf = file->private_data; struct stm_device *stm = stmf->stm; unsigned long size, phys; @@ -697,10 +709,10 @@ static int stm_char_mmap(struct file *fi if (!stm->data->mmio_addr) return -EOPNOTSUPP; - if (vma->vm_pgoff) + if (desc->pgoff) return -EINVAL; - size = vma->vm_end - vma->vm_start; + size = vma_desc_size(desc); if (stmf->output.nr_chans * stm->data->sw_mmiosz != size) return -EINVAL; @@ -712,13 +724,12 @@ static int stm_char_mmap(struct file *fi if (!phys) return -EINVAL; - pm_runtime_get_sync(&stm->dev); - - vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); - vm_flags_set(vma, VM_IO | VM_DONTEXPAND | VM_DONTDUMP); - vma->vm_ops = &stm_mmap_vmops; - vm_iomap_memory(vma, phys, size); + desc->page_prot = pgprot_noncached(desc->page_prot); + vma_desc_set_flags(desc, VMA_IO_BIT, VMA_DONTEXPAND_BIT, + VMA_DONTDUMP_BIT); + desc->vm_ops = &stm_mmap_vmops; + mmap_action_simple_ioremap(desc, phys, size); return 0; } @@ -836,7 +847,7 @@ static const struct file_operations stm_ .open = stm_char_open, .release = stm_char_release, .write = stm_char_write, - .mmap = stm_char_mmap, + .mmap_prepare = stm_char_mmap_prepare, .unlocked_ioctl = stm_char_ioctl, .compat_ioctl = compat_ptr_ioctl, }; _ Patches currently in -mm which might be from ljs@kernel.org are maintainers-update-mglru-entry-to-reflect-current-status.patch selftests-mm-add-merge-test-for-partial-msealed-range.patch