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=-2.5 required=3.0 tests=MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no 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 D2DE2C4CED1 for ; Fri, 4 Oct 2019 13:38:17 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id A072F222C2 for ; Fri, 4 Oct 2019 13:38:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A072F222C2 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 387CC8E0005; Fri, 4 Oct 2019 09:38:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 338C18E0003; Fri, 4 Oct 2019 09:38:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 24EE28E0005; Fri, 4 Oct 2019 09:38:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0107.hostedemail.com [216.40.44.107]) by kanga.kvack.org (Postfix) with ESMTP id 029E48E0003 for ; Fri, 4 Oct 2019 09:38:16 -0400 (EDT) Received: from smtpin25.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with SMTP id 9949A180AD7C3 for ; Fri, 4 Oct 2019 13:38:16 +0000 (UTC) X-FDA: 76006206192.25.badge62_2b1ec9ed8a725 X-HE-Tag: badge62_2b1ec9ed8a725 X-Filterd-Recvd-Size: 2617 Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by imf28.hostedemail.com (Postfix) with ESMTP for ; Fri, 4 Oct 2019 13:38:16 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id E84ACAEF6; Fri, 4 Oct 2019 13:38:14 +0000 (UTC) Date: Fri, 4 Oct 2019 15:38:14 +0200 From: Michal Hocko To: Qian Cai Cc: Anshuman Khandual , linux-mm@kvack.org, Andrew Morton , Vlastimil Babka , Oscar Salvador , Mel Gorman , Mike Rapoport , Dan Williams , Pavel Tatashin , linux-kernel@vger.kernel.org Subject: Re: [PATCH] mm/page_alloc: Add a reason for reserved pages in has_unmovable_pages() Message-ID: <20191004133814.GM9578@dhcp22.suse.cz> References: <1570090257-25001-1-git-send-email-anshuman.khandual@arm.com> <20191004105824.GD9578@dhcp22.suse.cz> <91128b73-9a47-100b-d3de-e83f0b941e9f@arm.com> <1570193776.5576.270.camel@lca.pw> <20191004130713.GK9578@dhcp22.suse.cz> <1570195839.5576.273.camel@lca.pw> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1570195839.5576.273.camel@lca.pw> User-Agent: Mutt/1.10.1 (2018-07-13) X-Bogosity: Ham, tests=bogofilter, spamicity=0.000051, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Fri 04-10-19 09:30:39, Qian Cai wrote: > On Fri, 2019-10-04 at 15:07 +0200, Michal Hocko wrote: > > On Fri 04-10-19 08:56:16, Qian Cai wrote: > > [...] > > > It might be a good time to rethink if it is really a good idea to dump_page() > > > at all inside has_unmovable_pages(). As it is right now, it is a a potential > > > deadlock between console vs memory offline. More details are in this thread, > > > > > > https://lore.kernel.org/lkml/1568817579.5576.172.camel@lca.pw/ > > > > Huh. That would imply we cannot do any printk from that path, no? > > Yes, or use something like printk_deferred() This is just insane. The hotplug code is in no way special wrt printk. It is never called from the printk code AFAIK and thus there is no real reason why this particular code should be any special. Not to mention it calls printk indirectly from a code that is shared with other code paths. > or it needs to rework of the current console locking which I have no > clue yet. Yes, if the lockdep is really referring to a real deadlock which I haven't really explored. -- Michal Hocko SUSE Labs