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 0D38BC07E9D for ; Mon, 26 Sep 2022 18:13:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6BEEB8E0079; Mon, 26 Sep 2022 14:13:18 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 66F408E0066; Mon, 26 Sep 2022 14:13:18 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 50FE88E0079; Mon, 26 Sep 2022 14:13:18 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 43A758E0066 for ; Mon, 26 Sep 2022 14:13:18 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 12D7440991 for ; Mon, 26 Sep 2022 18:13:18 +0000 (UTC) X-FDA: 79955033676.22.ABE10CF Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by imf17.hostedemail.com (Postfix) with ESMTP id B434740004 for ; Mon, 26 Sep 2022 18:13:17 +0000 (UTC) Received: by mail-pl1-f180.google.com with SMTP id b21so6973335plz.7 for ; Mon, 26 Sep 2022 11:13:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=L7txMWSoVFQsVFC3RlJDGlMJxARCdhmrblMI9BE0lcU=; b=jo6C3M2oEuHzl6WQ7urYTaj57952JDgwzigtYC9vXtp9BcBVbQrayCQYzDhiXTuUHu zjzdwMaKffwe3yfc4+W8ooBGHi4cxCLtGGZDrK0v/vSzMQ5kXRKdNWDXs6Wmklq1iPKX Zv6QrJkJHZF198BR9E2qNka4GIC5sL/PuR8cUQ/TWOzYrmBNNbfcfaSCA4v993dg5C5O M41nlDWDJcQRJsXBb6O0zdjWLb0p4E5binkmanUAFI/HOGf1jy5DdQTTrEFF3Ihl4K+I ARuquJ6aAMKYZu9VQxussl/lMMEX1D5DvGwHiXEIhA/wuwDmXdKaOwtDuaP0+TXo/oA2 3lig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=L7txMWSoVFQsVFC3RlJDGlMJxARCdhmrblMI9BE0lcU=; b=ygFkT7qLu6t1VvY6+QgmSvZi2Of9WWc5jR8IYMATV+jElcKkry/fXkcBT76b0s6nHq SxTvW7cOF2KGyxBvFvh5gAMpWrIz50S6+J/lHtLjloSqm/GqE7Tq3WeRFIP0LHjqJkvT toLOK8rSlMhwXJiU5Wg+IfjT2JaYSsiZJFgQp9b006HfMqzqsbQN8sfsyBHRn8KR7kY9 YmmDbZsCTBg0ggpl7Abq66kk91vGL9L1pCiacuAi1B0bPj0kueIYXCF6aj4ItgvLOeOT ZOsA4ifKE5RhCeIV1aKl/7H2aiv60td6eN5i3KptbYjeVBIG18aWPBph75hKYaGMxZAL jRmQ== X-Gm-Message-State: ACrzQf3M6y6SHbOovqq6wNQyLEaYCTNWofz1LF2YOCt3eQYrvH7ma0P+ l/1xZdVoFjjrSmvDl2Y/yV/sITb8Rg7W2DdPg+bkrwO0 X-Google-Smtp-Source: AMsMyM6z1PdeEQOCv493wVdtgCyuHQjsiNgY/BpRerwaQF35G+haOZ9vLqoTXTlZ7KMQWR+YzuFQT0eJGX34DgiDlHo= X-Received: by 2002:a17:903:41c8:b0:177:e7e1:4f4f with SMTP id u8-20020a17090341c800b00177e7e14f4fmr22771165ple.61.1664215996674; Mon, 26 Sep 2022 11:13:16 -0700 (PDT) MIME-Version: 1.0 References: <20220922222731.1124481-1-zokeefe@google.com> In-Reply-To: <20220922222731.1124481-1-zokeefe@google.com> From: Yang Shi Date: Mon, 26 Sep 2022 11:13:04 -0700 Message-ID: Subject: Re: [PATCH v2] mm/khugepaged: check compound_order() in collapse_pte_mapped_thp() To: "Zach O'Keefe" Cc: Andrew Morton , linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=jo6C3M2o; spf=pass (imf17.hostedemail.com: domain of shy828301@gmail.com designates 209.85.214.180 as permitted sender) smtp.mailfrom=shy828301@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1664215997; a=rsa-sha256; cv=none; b=UdkbSTdgtZJCiZ00lsPWCxDU9+5ZjhHovc5NPY/XGS5FM7hzaDXlTm7eD6ARwI95rXJ0X+ fkcTRRoVxM1718bjYpmjnDYYGrDsqN+UfY4/RsO44c7qAl4EofS2ERGZP2D2mO6hKwmhYW uJ0KpCrU3gDOO+CsOInsv7JMTBxAboo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1664215997; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=L7txMWSoVFQsVFC3RlJDGlMJxARCdhmrblMI9BE0lcU=; b=c5Pw1Rg8aRDVZ36zWUHKLy6lDAk1r/bYvc4yZ2/mT3TlVTwjvzWdoSEZwE2/5a7S8UlHDm 6PpqFb+lZ3jMQlDB4Bv/md8Wa+uHiR1zoc3kzZhF2Ko1inZYlyZHbl5HHi+NYUhjAH5xj3 2/luZdr5CKbKBD3khLBvrXuXAruGYoE= X-Stat-Signature: eimsiar5ici9szwpx3neyycygc86t6wr X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: B434740004 Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=jo6C3M2o; spf=pass (imf17.hostedemail.com: domain of shy828301@gmail.com designates 209.85.214.180 as permitted sender) smtp.mailfrom=shy828301@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-HE-Tag: 1664215997-693649 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: On Thu, Sep 22, 2022 at 3:27 PM Zach O'Keefe wrote: > > By the time we lock a page in collapse_pte_mapped_thp(), the page > mapped by the address pushed onto the slot's .pte_mapped_thp[] array > might have changed arbitrarily since we last looked at it. We > revalidate that the page is still the head of a compound page, but we > don't revalidate if the compound page is of order HPAGE_PMD_ORDER before > applying rmap and page table updates. > > Since the kernel now supports large folios of arbitrary order, and since > replacing page's pte mappings by a pmd mapping only makes sense for > compound pages of order HPAGE_PMD_ORDER, revalidate that the compound > order is indeed of order HPAGE_PMD_ORDER before proceeding. > > Link: https://lore.kernel.org/linux-mm/CAHbLzkon+2ky8v9ywGcsTUgXM_B35jt5NThYqQKXW2YV_GUacw@mail.gmail.com/ > Suggested-by: Yang Shi > Signed-off-by: Zach O'Keefe Reviewed-by: Yang Shi > --- > mm/khugepaged.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mm/khugepaged.c b/mm/khugepaged.c > index 57af2c841b41..40fd9f7b3ed3 100644 > --- a/mm/khugepaged.c > +++ b/mm/khugepaged.c > @@ -1399,6 +1399,9 @@ void collapse_pte_mapped_thp(struct mm_struct *mm, unsigned long addr) > if (!PageHead(hpage)) > goto drop_hpage; > > + if (compound_order(hpage) != HPAGE_PMD_ORDER) > + goto drop_hpage; > + > if (find_pmd_or_thp_or_none(mm, haddr, &pmd) != SCAN_SUCCEED) > goto drop_hpage; > > -- > 2.37.3.998.g577e59143f-goog >