Received: by 2002:a05:6358:5282:b0:b5:90e7:25cb with SMTP id g2csp3807398rwa; Tue, 23 Aug 2022 10:24:11 -0700 (PDT) X-Google-Smtp-Source: AA6agR64i0kK+u3ZcnXft6RPmV4aB9D/oKWZwgpDXch6+XnaNABrgPjXZyHIWX9IRdZu6Bs/qrx0 X-Received: by 2002:aa7:d856:0:b0:445:e147:e014 with SMTP id f22-20020aa7d856000000b00445e147e014mr4501253eds.425.1661275451501; Tue, 23 Aug 2022 10:24:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661275451; cv=none; d=google.com; s=arc-20160816; b=qWa0Ju30gIB/TUOlVJzlAxN+ut4B3RJV6W4p+Vhb9ZTmDroJvYw3E6FVVh1trKfUFY /Hfs4lJO4o/x1KQ+x5ZjpH5+B3d5X2V106lpZkGSh42+lbLCdabbP5zIfcY8FRxbV41G RsedgrbJ/I5aIEhohkMUK7kdmoai+2YYqsNnNrFPpLTCBU81/HCDPrQoBj1k1QufdArT +t0iuHwLpxkCu4rywjQiFV6lV48jqkRaOrCsKcsHpLfPYsPmKnI2GrM7VFt+HUbXvYHd 0l/CaReuMg4TDaEDKBeLyWe8aH9Z4c07WPq+sxeIR5GuuFNN8J5A2tpfIK+0CjTLxicT EvJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=yJo6Hq1Wdoej4Gz3OuV3oxiT7P/RSEjUbZkp71Kokcs=; b=gie1jJADJsAVIFCVVl0Sf+ybdMQCAdYSUbEX5hEVXO4sObeuQd3MJTSkGmzg2h501B X5YII+ZttuTOpX4xpMWDvh9MPlUYAzi1wzHClGEyvekjOzYPHD0CfMMHRpNJU2cC75Ss Iig3Z6FHkOzR0D5cN59LaXtUi35y33VlPwpMAafaV0oCaXQ5v+bzb+5lJZkhug0r6Zo4 NeT21eto6Nc1LiM/vChSbnC5arcmuwpmVolsoT9+YNBwVQl+HXg4XB/uIHWvg9bWYhGo ve5x4M8dqJJ7bWgcN4FcK0inXkR5y1vxrIYWDnw3ncDaYHeJ3uf8saKNzTLs7INs6w6X ntIw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=NxmDAwNX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id hc17-20020a170907169100b0073d84ee131esi253807ejc.489.2022.08.23.10.23.44; Tue, 23 Aug 2022 10:24:11 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=NxmDAwNX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244856AbiHWRMj (ORCPT + 99 others); Tue, 23 Aug 2022 13:12:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42290 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344887AbiHWRL0 (ORCPT ); Tue, 23 Aug 2022 13:11:26 -0400 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D7CE011B026 for ; Tue, 23 Aug 2022 06:58:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1661263105; x=1692799105; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=pCoa6Ugj2AJRPyPGUlNmHln305j0xDKrwGnvaLsDdR0=; b=NxmDAwNXChKMGciN5YBa8dyaY4+FKC7qMrVWETJIvwlxHYpMmh5n0tlD 5WXsEM6EwL623C5R11gr/Wbr+W9R6+ch4WMZxNTQb6dQHtnPDjkfUw/Pz BrDpl8cPchyjEI6ukqetkSQrIWJ/rNmiYe/c4rfTjZeceU3ifzNucZSTm f2ZOyUtroWPjVuNkmisPbDj2mJDq9a3q6h33XCcyU7VsLv7hUF4hWrezg 2yQ4IcY7dIw2LfYcwqY0RQnNBjOIduOT0GcwECl44HVNwUF2vp9rtZt0R KqxST7fBnAv5qYLTSz4FRY0+7PedcWRSjVIpcaUNTu9dOnlFduwDqNhP1 g==; X-IronPort-AV: E=McAfee;i="6500,9779,10448"; a="357669573" X-IronPort-AV: E=Sophos;i="5.93,257,1654585200"; d="scan'208";a="357669573" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Aug 2022 06:58:25 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,257,1654585200"; d="scan'208";a="638663353" Received: from sse-cse-haiyue-nuc.sh.intel.com ([10.239.241.114]) by orsmga008.jf.intel.com with ESMTP; 23 Aug 2022 06:58:22 -0700 From: Haiyue Wang To: linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: akpm@linux-foundation.org, david@redhat.com, apopple@nvidia.com, linmiaohe@huawei.com, ying.huang@intel.com, songmuchun@bytedance.com, naoya.horiguchi@linux.dev, alex.sierra@amd.com, mike.kravetz@oracle.com, gerald.schaefer@linux.ibm.com, Haiyue Wang Subject: [PATCH v7 0/2] fix follow_page related issues Date: Tue, 23 Aug 2022 21:58:39 +0800 Message-Id: <20220823135841.934465-1-haiyue.wang@intel.com> X-Mailer: git-send-email 2.37.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HK_RANDOM_ENVFROM, HK_RANDOM_FROM,RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org v7: Drop the zone device page check for transparent page. v6: Simplify the multiple layers of conditionals for if {} - if (page) { - err = !is_zone_device_page(page) ? page_to_nid(page) - : -ENOENT; - if (foll_flags & FOLL_GET) - put_page(page); - } else { - err = -ENOENT; - } + err = -ENOENT; + if (!page) + goto set_status; + + if (!is_zone_device_page(page)) + err = page_to_nid(page); + + if (foll_flags & FOLL_GET) + put_page(page); v5: reword the commit message for FOLL_GET with more information. v4: add '()' for the function for readability. add more words about the Non-LRU pages fix in commit message. v3: Merge the fix for handling Non-LRU pages into one patch. Drop the break_ksm zone device page check. v2: Add the Non-LRU pages fix with two patches, so that 'mm: migration: fix the FOLL_GET' can be applied directly on linux-5.19 stable branch. Haiyue Wang (2): mm: migration: fix the FOLL_GET failure on following huge page mm: fix the handling Non-LRU pages returned by follow_page mm/huge_memory.c | 2 +- mm/ksm.c | 12 +++++++++--- mm/migrate.c | 23 +++++++++++++++++------ 3 files changed, 27 insertions(+), 10 deletions(-) -- 2.37.2