From nobody Mon Jun 15 23:18:17 2026 Received: from mail-pg1-f179.google.com (mail-pg1-f179.google.com [209.85.215.179]) (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 12DED23504B for ; Sun, 19 Apr 2026 17:47:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776620879; cv=none; b=C0KBkcNlLGcac0v9svjX/nz4HRW8z6Qbul/7QFiIn9N0zM0AmZQzHYso81KxL42BaTDRjxnVqxImYM8O0xuoLqDPjclgqFxnvg9iIBVi0aKl+3cIX6hYJeIXtHFU0xXKmc1R8uc7Xd5fYrBJfR1UBdZ0WQoCXFgIXddOdDo6Om8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776620879; c=relaxed/simple; bh=hOd5qR8SrjZzC+ZvlP163874cn6ST6AIqvSxqYiIptg=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=fF5jOlvu+xKxveFobEdzeBerF9cCds9bI2/eAJZvmqQRCQSCwODfo6YfkvqYBu2p0PZxN6BlPr0aLHAsTqrcp/MiHKhYfG+DEv5CjEuo7iFdI5UiQEw2NLSE3Okxzy5q8I9l+HvtlC5v8fciswl8hVPSdCUfJ4Q06dzNZfcGiSo= 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=fWaJrICC; arc=none smtp.client-ip=209.85.215.179 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="fWaJrICC" Received: by mail-pg1-f179.google.com with SMTP id 41be03b00d2f7-c6dd5b01e14so703828a12.0 for ; Sun, 19 Apr 2026 10:47:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776620877; x=1777225677; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=SU7IMwjgaaSGvWJIdVbB9YzEzjLEjhjYNgpzlOXz1yk=; b=fWaJrICCBKUzptTaJt9AGGgT5I3h4QfsKXlYSwJEonnecUKxNQUFcKMxbRPl7uWu/t NrTMiJyHbqFDVcTFfIOlG6mqdrJjfIDcGaTFgRVs2FmX+Ilj7aqc5MW62gM5xYJDffqM Uns35BUkTw8WypA+ih8kLXcxus0D8FEpnMwa+WiJLK3s7FfOR33C2jrBXpP+Hb8t5DCV ftkdK/sf8c35L48vxQ3KSpJ50cdPUdoEU5P2J3AtGouQDkXTF4xiZ121uyNefGv3rGPE 0HkKR20fdhS2gj3gdQ5cW38TyWYFYhM59Qoy/o8NVnyJIsWwOy3XPNmQ1+hTmuba53v1 9JVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776620877; x=1777225677; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SU7IMwjgaaSGvWJIdVbB9YzEzjLEjhjYNgpzlOXz1yk=; b=Hs8k2/f4RQm2iNQh43r+FgNzaGdEiK295bKKdIGSVJuFQ0AvWrlzAINqHmpvM+HaU8 inQUZuvNg9kZiJAqv/UF4oqyNU6RHQTd9XC6Wty3nNCKXBl6gH81D49ZWj81jLnKIOiw 07bMTT6FhcS1CG5ReBVmSMGIQ0Fet19IvbHEXfSgO/p0vpElSfZ/AGAwP7lBGPWxL3+r 4++J9JbOdfc3cpnWLg7XLbBqesz41YPkyxFLcvL0qfsKlBWgLd6uKtXj0PFfqAGD2/BP 1EWZunYjRuH1fQbDF8A2dB31pp8d4PBLNsyl59PcsovGLP3XyLzq+Gf6AczbDcvXMW8a nlMw== X-Forwarded-Encrypted: i=1; AFNElJ+gXIwui07jMSYkg4eAlOSNajlJnIoxO6GM4KT+NJ4TA1PfPSSGb+/b0BSWWIrKc53qgy4rGMU+v0syn+o=@vger.kernel.org X-Gm-Message-State: AOJu0Yz8kGmI4B6Vm+pPZ2sL+WLqxePE5N5g4CisDjezgyYS5w+VXPP8 XqtyVa393vAKCWYP5jMgQRmWSwoN9DWYCDNZviIYpHugIX8sMoQkVpnf X-Gm-Gg: AeBDiesmUlEu6XVtFcI/eGtijHpZgRJg/ScmUDnUO1RBvNX1e8+dcJrUg8HQX/vQm6Z Qgjv+TVMlYrj1egMRqvdk5SWkecNy8Xu38b5AJ/Al/KVhPc0pe330uNMaE52KtmtxjffLXzmCBV 0mlJ+tVl+Gx/D6DT5wziugWOQWNy5rpGqXtTbMTCQw3VvNlG4SUmNPZXLCdHz8JkVS0KKNzUuk/ FZf6CQEBEGGgHLEx+/LA1+xZNo02rU+k+I28Z/cGY9ab063qvDZWslRhq1isE9YDnezVW9uftSP VGbTP2fjbYq7Rx1bVZ9slnHxNhROWDJkSerfqmsEgNyOcSjVtBvamJ5D895jmu9hZBakXXtAm9J 7ns3yNmQFxvxArMJG7JIN63n+11mN0IrW6nN1J+r5dCLNkcjieVeEl6IoqPjXPf7Jot0oj74zew nGuXaLF78y+MKzRiuyhAXykgRfUDTXcKH0saO3xBsMzinEvKaAxJhIfI7r X-Received: by 2002:a17:90a:fc45:b0:35f:b5df:453 with SMTP id 98e67ed59e1d1-361404a3419mr10556738a91.22.1776620877397; Sun, 19 Apr 2026 10:47:57 -0700 (PDT) Received: from tech-Alienware-m15-R6.. ([122.171.16.167]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-361410a7ab7sm9880210a91.10.2026.04.19.10.47.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 10:47:57 -0700 (PDT) From: Sunny Patel To: Andrew Morton , David Hildenbrand Cc: Zi Yan , Matthew Brost , Joshua Hahn , Rakie Kim , Byungchul Park , Gregory Price , Ying Huang , Alistair Popple , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Sunny Patel Subject: [PATCH v2] mm/migrate_device: Cleanup up PMD Checks and warnings Date: Sun, 19 Apr 2026 23:17:43 +0530 Message-ID: <20260419174747.10701-1-nueralspacetech@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Remove the odd VM_WARN_ON_FOLIO(!folio, folio) usage and replace it with a simpler VM_WARN_ON_ONCE(!folio) check. Drop the redundant VM_WARN_ON_ONCE(!pmd_none(*pmdp) && !is_huge_zero_pmd(*pmdp)). Refactor the PMD checks, making the control flow clearer and avoiding duplicate condition checks. Signed-off-by: Sunny Patel Acked-by: David Hildenbrand (Arm) Acked-by: Zi Yan Reviewed-by: Huang Ying --- Changes in v2: - Removed additional check for pmd_present() as is_huge_zero_pmd() already checks for pmd_present(). Missed it in first version of this patch. mm/migrate_device.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/mm/migrate_device.c b/mm/migrate_device.c index 8079676c8f1f..2c7e89a6d1b1 100644 --- a/mm/migrate_device.c +++ b/mm/migrate_device.c @@ -807,8 +807,7 @@ static int migrate_vma_insert_huge_pmd_page(struct migr= ate_vma *migrate, bool flush =3D false; unsigned long i; =20 - VM_WARN_ON_FOLIO(!folio, folio); - VM_WARN_ON_ONCE(!pmd_none(*pmdp) && !is_huge_zero_pmd(*pmdp)); + VM_WARN_ON_ONCE(!folio); =20 if (!thp_vma_suitable_order(vma, addr, HPAGE_PMD_ORDER)) return -EINVAL; @@ -865,11 +864,9 @@ static int migrate_vma_insert_huge_pmd_page(struct mig= rate_vma *migrate, if (userfaultfd_missing(vma)) goto unlock_abort; =20 - if (!pmd_none(*pmdp)) { - if (!is_huge_zero_pmd(*pmdp)) - goto unlock_abort; + if (is_huge_zero_pmd(*pmdp)) flush =3D true; - } else if (!pmd_none(*pmdp)) + else if (!pmd_none(*pmdp)) goto unlock_abort; =20 add_mm_counter(vma->vm_mm, MM_ANONPAGES, HPAGE_PMD_NR); --=20 2.43.0