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 X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 67349C4CEC9 for ; Fri, 20 Sep 2019 15:51:33 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 1160B208C3 for ; Fri, 20 Sep 2019 15:51:32 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="D8TdJ0eZ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1160B208C3 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 60E946B0003; Fri, 20 Sep 2019 11:51:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5BDF96B0005; Fri, 20 Sep 2019 11:51:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4ACD96B0006; Fri, 20 Sep 2019 11:51:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0217.hostedemail.com [216.40.44.217]) by kanga.kvack.org (Postfix) with ESMTP id 249E66B0003 for ; Fri, 20 Sep 2019 11:51:32 -0400 (EDT) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with SMTP id CF9A98126 for ; Fri, 20 Sep 2019 15:51:31 +0000 (UTC) X-FDA: 75955738782.14.hate96_64a0669e44144 X-HE-Tag: hate96_64a0669e44144 X-Filterd-Recvd-Size: 3914 Received: from mail-pl1-f195.google.com (mail-pl1-f195.google.com [209.85.214.195]) by imf28.hostedemail.com (Postfix) with ESMTP for ; Fri, 20 Sep 2019 15:51:31 +0000 (UTC) Received: by mail-pl1-f195.google.com with SMTP id f19so3382462plr.3 for ; Fri, 20 Sep 2019 08:51:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=a9/+SgLw8oNthBvjNUOXlSYCITnE6ULq2xe/7PxSFng=; b=D8TdJ0eZLo56jrxmPqeHGtDTxK71Db3O3RkprW0rUp5xPNG1+B1eHTeQrRltVckSWF VPkTMmwvLB4sRoscbyxgkH7mhbyDf02XNyJVH7OwQVQjhKIYWRBmuLbBJPVpDqVHlcnK kIcfXcIoDM9N2LYiP6UNLfIsZDDXywyBoYp3st9tOUZsAuIjfVgk6ohJ/7qF/NQeQHBj JrFcbdmG47Optksq/DXrz6iiKDSLFZK9YX62jdj3Hz2oWG9pVLBC4MCABuCz8ScplEAD zvUQ42sW+uWHw7zH3RQUNXp33lHi7z1Bpkm+DxB5+GycSt+FegrJD43EHBQfrvJGjhxR YT+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=a9/+SgLw8oNthBvjNUOXlSYCITnE6ULq2xe/7PxSFng=; b=ckjIKPfq4nqcl/MnEPOLawkRRLsh0USes4pLF1oiv+iAccQ7Pn/MmZVv6VNDYY5N76 dlzh/o2badfXgg4GUnp9Ml9Qhrujin8jgas+83dSD6Rz1Syp6Me73wVGy/itfH2CjghJ P0He4dR5WRh6goNBpaIjcSMJ4I3CzgyJgCUKHU+kGny7Mx5EsdMk/Z9u5FTWbXSSOX0e 63G4PuwjFSVg1nl8dpkRLUq6hRbx9fgDYR84FCnZzjQi7mXq5GaTCcMAaExFmZ1I80pg znknmLgSE1GZkvncDFydR0PpFHZteKC286BQ+rpZWGZEMfOZBQqoKyW3Op3QoM2//mSP zpnw== X-Gm-Message-State: APjAAAWSypIS1de7YQ3VzVBmjT9d7lwbemnPjzDiz95QELeFVyd67xXe gukTzXUD+wYs/S/JWNqsWek= X-Google-Smtp-Source: APXvYqxvndhpCMApsjE1tUfROofkiXe1h+7EpvrbdBEDGEpqdoyzYXhe/1Jhv/MZc5NjEevXWQ/8kg== X-Received: by 2002:a17:902:b903:: with SMTP id bf3mr18096396plb.1.1568994690390; Fri, 20 Sep 2019 08:51:30 -0700 (PDT) Received: from hqjagain.localdomain ([47.56.172.21]) by smtp.gmail.com with ESMTPSA id e4sm2422792pff.22.2019.09.20.08.51.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 20 Sep 2019 08:51:29 -0700 (PDT) From: Qiujun Huang To: akpm@linux-foundation.org Cc: ira.weiny@intel.com, jgg@ziepe.ca, dan.j.williams@intel.com, rppt@linux.ibm.com, hqjagain@gmail.com, jhubbard@nvidia.com, aneesh.kumar@linux.ibm.com, keith.busch@intel.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/3] mm:fix gup_pud_range Date: Fri, 20 Sep 2019 23:51:24 +0800 Message-Id: <1568994684-1425-1-git-send-email-hqjagain@gmail.com> X-Mailer: git-send-email 1.8.3.1 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: __get_user_pages_fast try to walk the page table but the hugepage pte is replace by hwpoison swap entry by mca path. ... [15798.177437] mce: Uncorrected hardware memory error in user-access at 224f1761c0 [15798.180171] MCE 0x224f176: Killing pal_main:6784 due to hardware memory corruption [15798.180176] MCE 0x224f176: Killing qemu-system-x86:167336 due to hardware memory corruption ... [15798.180206] BUG: unable to handle kernel [15798.180226] paging request at ffff891200003000 [15798.180236] IP: [] gup_pud_range+ 0x13e/0x1e0 ... We need to skip the hwpoison entry in gup_pud_range. Signed-off-by: Qiujun Huang --- mm/gup.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mm/gup.c b/mm/gup.c index 98f13ab..6157ed9 100644 --- a/mm/gup.c +++ b/mm/gup.c @@ -2230,6 +2230,8 @@ static int gup_pud_range(p4d_t p4d, unsigned long addr, unsigned long end, next = pud_addr_end(addr, end); if (pud_none(pud)) return 0; + if (unlikely(!pud_present(pud))) + return 0; if (unlikely(pud_huge(pud))) { if (!gup_huge_pud(pud, pudp, addr, next, flags, pages, nr)) -- 1.8.3.1