From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f182.google.com (mail-pf1-f182.google.com [209.85.210.182]) (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 03CF342DFE8 for ; Mon, 29 Jun 2026 18:58:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.182 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782759541; cv=none; b=N4cyoFwgBZQXyyhBEYxQr8nlQ/PXI4IL212SC/sZWoxcQyHeppdsUrhgSxomidxbc85t1RDkME4LHwalqTRXKBAZWlr1/yleFnKxz7xZJntwqiKHfteBxKSBtHEwdDPCmCGKHyz6kvkKqGfYfniPxAygEZoLJDJbYRBwD0MFKGU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782759541; c=relaxed/simple; bh=JndH/nRfQ69Wikjmdr1LoYwP+4vQK37fjFFlaQxmROU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=hQ2WIV9KYgTLnoiPtTLMmrarE9SXpMetnEVlFfur7PuHXR4MjtaFl1bgwnZPBzk/NRm1+FxpyoGo3E7zDHxxlNpKKIeGXwhwXwmXsqjm+gi6ji4TNfsRe9fVdAjozshduW6YxQIzLE1oofBOx7H7OJTv51m2YQkJhRIXFt3MjVo= 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=OL8lGob8; arc=none smtp.client-ip=209.85.210.182 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="OL8lGob8" Received: by mail-pf1-f182.google.com with SMTP id d2e1a72fcca58-847921eed4aso888207b3a.3 for ; Mon, 29 Jun 2026 11:58:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782759539; x=1783364339; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=001LhG9jRDHFHgxoUSCKNV/Xn5fJVvktzNuLDas4KQc=; b=OL8lGob8ycahikptkCbluIDQel1WpY143rjsDYuO6WXwxfabTPRhtvIp9QM9txz7hb ++/XqnliYn70JtDzeO2lASRJivKAxOwC04ndEgCNzg3M2dNSHMctMOVp/bh/DKv9Z5dB YZ7ZZsDOP49m382aameWlgc2T64h8QqnOX0MtLoktTaBbDiDKYbd/3nVbQFsp+FhGX5s U4W4nFU3oktISOY9KNeoEUwOx9+Qfutc/EaeSaLIDaC4ok1kUdyG50hGHbRaxSeylOGF 6PReXOFdvYLsPpCJAHF/UK3is1ApZXnvJsaKOmUCsV6QHLgvHrJnnY3b6aI6A96DHaLr et5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782759539; x=1783364339; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=001LhG9jRDHFHgxoUSCKNV/Xn5fJVvktzNuLDas4KQc=; b=QYhBd/fGPGoGzdM5LHrVYxFQopvc8INjD3sgNfdIqnll4rNlEl0K8pq2ipZY6tCKx2 Xlx2s1G9o/uftKCjB4/jCBZ8R/LgqhvghYOu5UmAi+zFiQo6MtzfiA5NtHX2jKzd8bEG 4h2DVQv3JCBNjhEC6Ym2fMQ4NIw631LzMdVoMU28c4/fYBHRTkmC6K+2Y/o186Eidmdi 5g9JD0F18TJ3Zk2Ejf30Ue/jJHIDiGwAV+fEIGOm9K8l56/6o8KSW8o6b3meVLn5P/Pg ENwiTWrbpcUEKSs0KF6Amx6DuBquhcBq1b83KtFPgajB9mZ3WJK12Tnqg8vTtpOtZhgw MMWQ== X-Forwarded-Encrypted: i=1; AFNElJ8DcNO/rooD3nQaK6L2z707B4ZzXhU8ZFRWcYJIHJLKCpsS84psdaFo4U91bOzVaWbdy8Ad+Eg95Zchi+4=@vger.kernel.org X-Gm-Message-State: AOJu0YwvdPRXTa5w1NvgEX+ITYH1x72WOffMUH1qYN8IZ+V81YU/6f0a J8exjhXEonWs2FRGK1xQtCDbGD1A7NMJUMyy0De1dj4fMrw+BAZhDTMc X-Gm-Gg: AfdE7clKuPDn6m6Eve75gpyJW4tFpViPDoJ793hY1ggSGUT1lM0WFZPz/PnHq8waa7y MD05Lji4swKXl79Nfh8+c0PwjCV/OjrhcM6c0aqEQfbqj8REdApqTn/rzS4iRNE5e5Z80KJ8oSs r+Rmmhs3XawbSANwB/+zOBu13bynEiYVmx33EXsKw/QTaDh5q014g+XkuH5hdtrOb2BG7pvM7QU ZND/tc/AS6iBb6180+lUvy7wPWdy/1yTOs7xEy++TylSQPhAXGmuiTNcYT8vGsSOALbcNCehYKA Ddc1tbBjaZKF/Td9sXfok2KpMFegY2oN12f+a/LsA5QLl/ff/o0uYGCb/uMZA0sIKDI8HX25u01 93vP82BFIT3tUac3htzSSSeJMJsAp561WQxpflCw8tXa4kSskG8zq2hzzBiyC18mJg6Cr3NukDK 2v9REollnXgh9RYD1EGTBrQMs+fZhuWdLi8j8cJrWvlwKn3Atqzy4kIuemI+ISIlKGtIdoU30= X-Received: by 2002:a05:6a00:885:b0:847:8b11:5966 with SMTP id d2e1a72fcca58-8479eeb687dmr466155b3a.1.1782759539361; Mon, 29 Jun 2026 11:58:59 -0700 (PDT) Received: from fedora.hsd1.ca.comcast.net ([2601:644:937c:6c90:6d4e:7b2d:4a39:fb0c]) by smtp.googlemail.com with ESMTPSA id d2e1a72fcca58-8479ff8f959sm223955b3a.3.2026.06.29.11.58.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 29 Jun 2026 11:58:58 -0700 (PDT) From: Vishal Moola To: Dave Hansen , linux-mm@kvack.org, linux-kernel@vger.kernel.org, x86@kernel.org Cc: Mike Rapoport , Lu Baolu , xen-devel@lists.xenproject.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Andy Lutomirski , Peter Zijlstra , Juergen Gross , Boris Ostrovsky , Vishal Moola , William Kucharski Subject: [PATCH v2 3/9] x86/mm/pat: Convert collapse_pmd_page() to ptdescs Date: Mon, 29 Jun 2026 11:57:36 -0700 Message-ID: <20260629185742.126987-4-vishal.moola@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260629185742.126987-1-vishal.moola@gmail.com> References: <20260629185742.126987-1-vishal.moola@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Convert collapse_pmd_page() to ptdescs in preparation for the eventual splitting of ptdescs from struct page. Acked-by: Mike Rapoport (Microsoft) Reviewed-by: William Kucharski Signed-off-by: Vishal Moola --- arch/x86/mm/pat/set_memory.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/mm/pat/set_memory.c b/arch/x86/mm/pat/set_memory.c index 93cb71451ce2..45623d4c24c9 100644 --- a/arch/x86/mm/pat/set_memory.c +++ b/arch/x86/mm/pat/set_memory.c @@ -1297,11 +1297,11 @@ static int collapse_pmd_page(pmd_t *pmd, unsigned long addr, list_add(&page_ptdesc(pmd_page(old_pmd))->pt_list, pgtables); if (IS_ENABLED(CONFIG_X86_32)) { - struct page *page; + struct ptdesc *ptdesc; /* Update all PGD tables to use the same large page */ - list_for_each_entry(page, &pgd_list, lru) { - pgd_t *pgd = (pgd_t *)page_address(page) + pgd_index(addr); + list_for_each_entry(ptdesc, &pgd_list, pt_list) { + pgd_t *pgd = (pgd_t *)ptdesc_address(ptdesc) + pgd_index(addr); p4d_t *p4d = p4d_offset(pgd, addr); pud_t *pud = pud_offset(p4d, addr); pmd_t *pmd = pmd_offset(pud, addr); -- 2.54.0