Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp1326815ybx; Thu, 31 Oct 2019 08:58:37 -0700 (PDT) X-Google-Smtp-Source: APXvYqzswEeZP7/aGuUNhboO+s5y4ek1EkRbknJ1PdPgGmhQ2JcvKvE5KnZmu8qKDw37oMKGwmDj X-Received: by 2002:a50:88a6:: with SMTP id d35mr7020916edd.111.1572537516893; Thu, 31 Oct 2019 08:58:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572537516; cv=none; d=google.com; s=arc-20160816; b=V+w58zvn11d16gSNSZToklkaH90TaTzBnG0YeKVkPPWjmWqvsdgOcpmVqmFNKOQrBQ BnxtjTgbuQFTnXr0hS9vyZR/0m1wJOu+GZaV0FI5WICq17bImduqGQfJlXA3cfBhtwin iukaNnvWpTXFvi5x2PxQ9O21f8zPLmzaZRQ67VcpOp/Th8RksNBvN3JUkIHDuW4UJz37 6gOezBxHm1DTMRcQKwc29IHCBeGspyg9XZ0hokg/OdtxpjDaw8LzENgtmg+S7ObLQgO8 MPG9Q4vv9GS7OszFHdgJq66W43vMxqGXXnrxbLxmGawEIlEvdYoiy7O+n+R7zVnv3s8Q DGNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:in-reply-to :references:subject:cc:to:mime-version:user-agent:from:date :message-id; bh=p2F8ikPx6r1lp5BLIt4uJbD0pZQC+SrSw74WS0vZ04s=; b=qGc77/0s7IzIgeC4TpmnH+3BslhH3nNVxdQmktKXk047j7yWCgxkS6bq65oQSR/x6q upH8wElf7F39DHlZdXDfKMa/ufGMm/iP3mCkP7AbltqbGpUte0JwR8AdetXxChuVqYlS dVBIjs4KHkCfOzfLHMHgyDUGYUK/XujS9ZQVmnCALeV43gwPFGbL9GfRyQeH40JG7P2R TEuof3D9x6ZsRnxHf57JJGYXob9vViTFD+R3laMbE8HQXhaZLE3ErXtMTNiRbJgj6rb0 yf+tis+G27xZF8duPNrVQLgboSVeoH/Ci7P8FcsIcWfJ3vpSbJzqtzKoi3GTnlajsrB2 1pJw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i8si4120558ejv.130.2019.10.31.08.58.13; Thu, 31 Oct 2019 08:58:36 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728464AbfJaPyj (ORCPT + 99 others); Thu, 31 Oct 2019 11:54:39 -0400 Received: from szxga04-in.huawei.com ([45.249.212.190]:5673 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727681AbfJaPyj (ORCPT ); Thu, 31 Oct 2019 11:54:39 -0400 Received: from DGGEMS409-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id C00F7390A8EFEF16C032; Thu, 31 Oct 2019 23:54:30 +0800 (CST) Received: from [127.0.0.1] (10.133.219.218) by DGGEMS409-HUB.china.huawei.com (10.3.19.209) with Microsoft SMTP Server id 14.3.439.0; Thu, 31 Oct 2019 23:54:25 +0800 Message-ID: <5DBB03B0.5060003@huawei.com> Date: Thu, 31 Oct 2019 23:54:24 +0800 From: zhong jiang User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: Borislav Petkov CC: , , , , , , Subject: Re: [PATCH] mm/ioremap: Use WARN_ONCE instead of printk() + WARN_ON_ONCE() References: <1572425838-39158-1-git-send-email-zhongjiang@huawei.com> <20191031110304.GE21133@nazgul.tnic> <5DBACB61.90809@huawei.com> <20191031154916.GA24152@nazgul.tnic> In-Reply-To: <20191031154916.GA24152@nazgul.tnic> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.133.219.218] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2019/10/31 23:49, Borislav Petkov wrote: > On Thu, Oct 31, 2019 at 07:54:09PM +0800, zhong jiang wrote: >> Look at this again, It should not works. Because that will change the logical. >> if phys_addr_valid is false, we should drop out in time. > That you can do too: > > diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c > index a39dcdb5ae34..13f44cc064af 100644 > --- a/arch/x86/mm/ioremap.c > +++ b/arch/x86/mm/ioremap.c > @@ -171,12 +171,10 @@ __ioremap_caller(resource_size_t phys_addr, unsigned long size, > if (!size || last_addr < phys_addr) > return NULL; > > - if (!phys_addr_valid(phys_addr)) { > - printk(KERN_WARNING "ioremap: invalid physical address %llx\n", > - (unsigned long long)phys_addr); > - WARN_ON_ONCE(1); > + if (WARN_ONCE(!phys_addr_valid(phys_addr), > + "ioremap: invalid physical address %llx\n", > + (unsigned long long)phys_addr)) > return NULL; > - } > Yep, WARN_ONCE alway return true in that case. Thanks, zhong jiang > __ioremap_check_mem(phys_addr, size, &io_desc); > > --- > > I'm not sure whether we care about printing every invalid address, as > Joe points out. Maybe we do... *shrug* >