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 804B8C47DD9 for ; Sat, 30 Mar 2024 09:20:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3CCDF6B009C; Sat, 30 Mar 2024 05:20:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 37C9D6B009E; Sat, 30 Mar 2024 05:20:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 21E6F6B00A0; Sat, 30 Mar 2024 05:20:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id E757E6B009C for ; Sat, 30 Mar 2024 05:20:56 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 8D8BCA17FD for ; Sat, 30 Mar 2024 09:20:56 +0000 (UTC) X-FDA: 81953160912.14.E0BD4E2 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf15.hostedemail.com (Postfix) with ESMTP id D3F9AA000A for ; Sat, 30 Mar 2024 09:20:54 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=korg header.b=026nHIMn; dmarc=pass (policy=none) header.from=linuxfoundation.org; spf=pass (imf15.hostedemail.com: domain of gregkh@linuxfoundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711790454; 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:dkim-signature; bh=SLsXNf8dq464aIimRp2QVgBQ5Olsh8eB7z86rIkXFJY=; b=rHZKvzTsksguBDiLJt0tzfDURDOAdCwPTEWg29v8QuNuo7BgCUblfMjxr0rUQIFB54A+uY Vy3c5qukCpDuuxVauxDTBh/vwzoFLXNr5gm6FBqDX2kqV5cT8I563WtvQI3+a5S9xOHoaW FolKvV+hSlLxy8793oXa54+39F1mYQU= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=korg header.b=026nHIMn; dmarc=pass (policy=none) header.from=linuxfoundation.org; spf=pass (imf15.hostedemail.com: domain of gregkh@linuxfoundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711790454; a=rsa-sha256; cv=none; b=Rew+w6h0Q0GF3wmeBzfvNnDfYl2DFeTE6AX8ZqXhtnClxOtXLEU32fQWtPYZeyH1qY+7+2 RbDshJaAaWHAcAYaM9gnSOESPhHiU7wFRjTtXslLPcbR0V5XZ8hBJyCMQqOW7prIBI4Lpg f5fXA7xnjslS42V0KLcYUwcIb4xJWcU= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 09DAE60DBD; Sat, 30 Mar 2024 09:20:54 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4B478C433C7; Sat, 30 Mar 2024 09:20:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1711790453; bh=Qi1Q0lybIeNmvU+aHSkuMvZdLp/8CGBZn65S7LfAoXI=; h=Subject:To:Cc:From:Date:In-Reply-To:From; b=026nHIMnu+80kMyJhj/WpxRpoBC6bOm51sMY2e8FOtNa2j5Cd4t2+/TxP1bDOzSeU Pb4a/fV6ANJyxaOXwQYUlIWWUH39hEIc0DzW9kgqQDYtyoR4JJR56SvDKwCaNfW/fM V0Q1fmbe0te8FnvubNbYGDTdeHN9tK3lHoF6S1WI= Subject: Patch "mm/migrate: set swap entry values of THP tail pages properly." has been added to the 6.1-stable tree To: 1707814102-22682-1-git-send-email-quic_charante@quicinc.com,akpm@linux-foundation.org,david@redhat.com,gregkh@linuxfoundation.org,linux-mm@kvack.org,naoya.horiguchi@linux.dev,quic_charante@quicinc.com,willy@infradead.org,ying.huang@intel.com,zi.yan@sent.com,ziy@nvidia.com Cc: From: Date: Sat, 30 Mar 2024 10:20:50 +0100 In-Reply-To: <20240306155217.118467-1-zi.yan@sent.com> Message-ID: <2024033050-reconcile-qualified-63fe@gregkh> MIME-Version: 1.0 Content-Type: text/plain; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: 8bit X-stable: commit X-Patchwork-Hint: ignore X-Rspamd-Queue-Id: D3F9AA000A X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: y7aotsrayubihsphhiksjknmxibcfd4q X-HE-Tag: 1711790454-17371 X-HE-Meta: U2FsdGVkX191wHgDR4/xuBH5YxArGtTr3jpywYAn8b4DKcoE9egSrKJPzYKXJUx2wn3TBnCVLScrzzP+89HQ2YhEOkHsE8sung+k4W9EBrXpiCtheut3Vzksdhn/1xTvbgyxN2L6ICyFtOwo4BPrBIvKcwVJ7qTewBp4aWA2lDJ8OX1xj2LVwN1V2WNGHzr2fT7D/fEpcl1G91ZBb76kaKHmJXjqfRj7ZSTCZcfYW7rpcNj2LLD8DD+kFpUu5yj64r09kXJFzOxGW4tgThTYaLF47eufda6Xdkd+n743AWXakujr7iHt4GYZbb6FI3JjPv4bMQZRfvb0zGKUILBu8YQKwY2MXqQSAghfkhjyYvIzFKCCnMhOBYNAJq5SDjlMHBsCE9aapVSgCfSWogLBDUOh5b1pz0WXQJFhwRRxCfPLedl+AV3nWLchLLCF9cve/y3ma9hOKE3ASagMwxcDyFopqXfbQDe0Tx5MUD002QS0Zq8n8jWM/zz70hQLQlqyA/P17jU7Uv7X/x1z2XMdJwaCiNgnaDrr3qb+C3VsjBhDYUJWKJIqp4qBiri5TxHybZ3eS5u41oJF23KMw6AlIOW7506/m4mhHvxvQ2/6kgyktA3qJxIvfAm4EmUgS9ydReFJ6FSeZYFpljTPTxBr/hNu0IVbRV0MV2d5Jxr407UBVvyavAd97/Tuz3WR/8UNW4Ix+FXgzapnuDlsmkLxVoAnhkcG8y24zBpLiKiNjAmy56rwSES9kXQMfUTj5B8r21iYCWYIngSa7XZjdy35kpgVmgxD9ODTts2vzyrreC3zrqDw80n9zhoSEw7gc+LmGvI6ItMbsQqmnCAgS4VV5kpXs4AXHyqJdxmERwlk8mmVzmenZvTytdly3qKZVtEBPpxEHDt8uFD35MhkT91axpCkgSOCpDH+gyptXg9xfC0IOmKmRWnr2cKaU0jKyQYUW8e/JZ01G5zQbm50sE8 zHR+OJJa 89ZuBspUuXObrVxT6IT1FzCboUG7G8PWWTdnPDO4EOegMSSCBxrEGjPYIKUmjB36WSM+XSdA3ODJPYMJjXglq4LhgYi4EFNblFxwAv0wnzFM0RiTG8C702/uSipo60zTZddYL4tex46n2hobEo5d2MRSS7+c3/dDUdOjTjYKr+Q6DNnmVitlLCeZ74yCIRKdO8XpEShI6dKKlwQl5zPXJ6iY3nRXLeNoEypIRMJIAGyHuNEGFW408C/MYjkkHyHbV0yVITZ1eH6hKNiU9cyMjWZptxxMgBPy/CsSfNe/5J9BhnaCvBkDsszYg92CjQREhBeCvFlOc/rGZI8DPUEZcdYqJfuQ8qNnYZ05qj4i9OpSz/LjaM7X0qdb0mPdZOxo+cJpte3THXcTMNiPHTU1eHz/T40UNuMQtyOztzkYmpfs/kmV874MTaNR0/uT3HEpamW+17X4AofvVouLYJk53AtuWy2W1odGfo20Fu/81Yb1c94KRvRk71ubocXcpgSYnupOjMdRJmqKP59Qjq4JtZkfhm1jARv3rcjSn+cZwUUOwkRCJGCjFcWupsj6HCav9EkhIWgrp3h42wM5yVoyQgg2TiM4LxcrXEn8AqZwBR7VG3f4H7PdEXVQ/mvOLyLIe8UipYsFoKkhGzq0PXkdHT/Js03PM6+tjQqccXK0nMehPiz5+U85b4tVhfeHHsVC1UAbE 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: This is a note to let you know that I've just added the patch titled mm/migrate: set swap entry values of THP tail pages properly. to the 6.1-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: mm-migrate-set-swap-entry-values-of-thp-tail-pages-properly.patch and it can be found in the queue-6.1 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let know about it. >From stable+bounces-27001-greg=kroah.com@vger.kernel.org Wed Mar 6 16:52:30 2024 From: Zi Yan Date: Wed, 6 Mar 2024 10:52:17 -0500 Subject: mm/migrate: set swap entry values of THP tail pages properly. To: gregkh@linuxfoundation.org, stable@vger.kernel.org Cc: Zi Yan , linux-mm@kvack.org, Charan Teja Kalla , "Matthew Wilcox (Oracle)" , David Hildenbrand , Andrew Morton , Huang Ying , Naoya Horiguchi Message-ID: <20240306155217.118467-1-zi.yan@sent.com> From: Zi Yan The tail pages in a THP can have swap entry information stored in their private field. When migrating to a new page, all tail pages of the new page need to update ->private to avoid future data corruption. This fix is stable-only, since after commit 07e09c483cbe ("mm/huge_memory: work on folio->swap instead of page->private when splitting folio"), subpages of a swapcached THP no longer requires the maintenance. Adding THPs to the swapcache was introduced in commit 38d8b4e6bdc87 ("mm, THP, swap: delay splitting THP during swap out"), where each subpage of a THP added to the swapcache had its own swapcache entry and required the ->private field to point to the correct swapcache entry. Later, when THP migration functionality was implemented in commit 616b8371539a6 ("mm: thp: enable thp migration in generic path"), it initially did not handle the subpages of swapcached THPs, failing to update their ->private fields or replace the subpage pointers in the swapcache. Subsequently, commit e71769ae5260 ("mm: enable thp migration for shmem thp") addressed the swapcache update aspect. This patch fixes the update of subpage ->private fields. Closes: https://lore.kernel.org/linux-mm/1707814102-22682-1-git-send-email-quic_charante@quicinc.com/ Fixes: 616b8371539a ("mm: thp: enable thp migration in generic path") Signed-off-by: Zi Yan Acked-by: David Hildenbrand Reported-and-tested-by: Charan Teja Kalla Signed-off-by: Greg Kroah-Hartman --- mm/migrate.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) --- a/mm/migrate.c +++ b/mm/migrate.c @@ -423,8 +423,12 @@ int folio_migrate_mapping(struct address if (folio_test_swapbacked(folio)) { __folio_set_swapbacked(newfolio); if (folio_test_swapcache(folio)) { + int i; + folio_set_swapcache(newfolio); - newfolio->private = folio_get_private(folio); + for (i = 0; i < nr; i++) + set_page_private(folio_page(newfolio, i), + page_private(folio_page(folio, i))); } entries = nr; } else { Patches currently in stable-queue which might be from kroah.com@vger.kernel.org are queue-6.1/vfio-pci-create-persistent-intx-handler.patch queue-6.1/vfio-fsl-mc-block-calling-interrupt-handler-without-trigger.patch queue-6.1/vfio-pci-disable-auto-enable-of-exclusive-intx-irq.patch queue-6.1/vfio-introduce-interface-to-flush-virqfd-inject-workqueue.patch queue-6.1/mm-migrate-set-swap-entry-values-of-thp-tail-pages-properly.patch queue-6.1/vfio-platform-create-persistent-irq-handlers.patch