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 16291C433F5 for ; Thu, 6 Jan 2022 10:21:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A67CE6B0074; Thu, 6 Jan 2022 05:21:27 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9EF056B0075; Thu, 6 Jan 2022 05:21:27 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8B7156B0078; Thu, 6 Jan 2022 05:21:27 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0201.hostedemail.com [216.40.44.201]) by kanga.kvack.org (Postfix) with ESMTP id 760746B0074 for ; Thu, 6 Jan 2022 05:21:27 -0500 (EST) Received: from smtpin28.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 403AE91AB2 for ; Thu, 6 Jan 2022 10:21:27 +0000 (UTC) X-FDA: 78999470214.28.25A1DD2 Received: from out30-45.freemail.mail.aliyun.com (out30-45.freemail.mail.aliyun.com [115.124.30.45]) by imf31.hostedemail.com (Postfix) with ESMTP id 19A5720003 for ; Thu, 6 Jan 2022 10:20:58 +0000 (UTC) X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R781e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=e01e04407;MF=baolin.wang@linux.alibaba.com;NM=1;PH=DS;RN=2;SR=0;TI=SMTPD_---0V15yWoX_1641464480; Received: from 30.21.164.46(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0V15yWoX_1641464480) by smtp.aliyun-inc.com(127.0.0.1); Thu, 06 Jan 2022 18:21:20 +0800 Message-ID: Date: Thu, 6 Jan 2022 18:22:11 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.4.1 Subject: Re: [bug report] mm/damon: add access checking for hugetlb pages To: Dan Carpenter Cc: linux-mm@kvack.org References: <20220106091200.GA14564@kili> From: Baolin Wang In-Reply-To: <20220106091200.GA14564@kili> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 19A5720003 X-Stat-Signature: etspzf4t1x7oi3nn3cfje866hpt86w4q Authentication-Results: imf31.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=alibaba.com; spf=pass (imf31.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.45 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com X-HE-Tag: 1641464458-320630 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: Hi Dan, On 1/6/2022 5:12 PM, Dan Carpenter wrote: > Hello Baolin Wang, > > The patch 86522923bb29: "mm/damon: add access checking for hugetlb > pages" from Dec 30, 2021, leads to the following Smatch static > checker warning: > > mm/damon/vaddr.c:405 damon_hugetlb_mkold() > warn: 'page' can't be NULL. > > mm/damon/vaddr.c > 398 static void damon_hugetlb_mkold(pte_t *pte, struct mm_struct *mm, > 399 struct vm_area_struct *vma, unsigned long addr) > 400 { > 401 bool referenced = false; > 402 pte_t entry = huge_ptep_get(pte); > 403 struct page *page = pte_page(entry); > 404 > --> 405 if (!page) > > I don't think it makes sense to check "page" because we're already dead > if pte_page() starts returning NULL. Maybe check "entry"? Thanks for reporting. Yes, no need to check the 'page' returned from pte_page(), and the entry already be checked before to make sure it is a valid and present entry. Thus I will send a fix patch to remove the redundant page checking. Thanks.