Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp5254678ybc; Wed, 27 Nov 2019 00:54:47 -0800 (PST) X-Google-Smtp-Source: APXvYqxlBY2olTf5iRvVvx6sdOy/t+C2w3NcuYlvgE8X2sA/e1CX8L88ub6ftTyx8sJbqyKew5hK X-Received: by 2002:a17:906:76cf:: with SMTP id q15mr30483936ejn.247.1574844886930; Wed, 27 Nov 2019 00:54:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574844886; cv=none; d=google.com; s=arc-20160816; b=R2xMP5nPY192mkbiSfzCRD0jnxPLjLuxVq5HwurXUxqCuckYjdI5J/tD0eihm935dl IHo0aNMX5DFb3b/kuMmnqff1+I8Gc0KwW1vqtiY+BYnKV82lzxmzhca4zCzob/uVpzcV 0eMRVr9mjbM9FZ68VOXsxoK/QnukJW1Ql3YYt4XZFFXwfCzkthq3tcOmseBmGQfjq5gJ niseHobBwpS8huOtLrJJamsgpci7OfNyqpsUk6zMaT8Ew/QhHO9zgTGlzE0XzK8fnXKq 2siIWgEjnhpWl2QxzvxzvocJ1L46HGnLWiAQImwS5hxo2gT1jKOPm+OHoWpa/Tn1Cw+r Eynw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=ImdFufuCLABk5owE8eytpQBnf5CgqpycdtGsCA5UGN0=; b=YNjbrUBQZ3U/RWwnMkOmL36prhu8BwMCe74LezP/+cg3ptatGaOLzmdYYtAeFPMZZM 7bwnlZL1PB4R59eEaenSPMgB4+VDlhfmt/Q5CuVQEmA6RjVJrVUm0amiZGM0PF5JWbx0 NLCw0IQTf8hcABhRTwrvBNsN2iTSWNyNXqbXF5E2drY7nsVF+jaueu5xsy2A/VmuRaJ8 nnpq88W04PYLCo7MybEFJgRRc0E/RcKLTIemUiWlDWNPcKg3KPO5aknTfXEMwwnK7pn9 SduRWCoE6oG8j/T8v2BmIBN8/5guXicCNknocqXbcf/JC/K2KcVJn09SoFNbxVxW9R0Z Ry/w== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x12si9475464edr.217.2019.11.27.00.54.23; Wed, 27 Nov 2019 00:54:46 -0800 (PST) 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727040AbfK0IuM (ORCPT + 99 others); Wed, 27 Nov 2019 03:50:12 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:40467 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726130AbfK0IuM (ORCPT ); Wed, 27 Nov 2019 03:50:12 -0500 Received: by mail-wm1-f68.google.com with SMTP id y5so6418887wmi.5 for ; Wed, 27 Nov 2019 00:50:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=ImdFufuCLABk5owE8eytpQBnf5CgqpycdtGsCA5UGN0=; b=RuLGRVNMMRMVHHZrCSKT6GThkoiDsJnj0QRDuc+enKMNpRqO9bStghG8pK4bV3KDTj Q6e1S1+OHjraBbJ1E4eTecgtpyEcuXpLCHYywdUyAnrpTZzOSVwRxv/rlIS1niDtEsxD XkeeH/7D+kMcA/J4uFH5s+veXGh3vISItdJUWOeD9i3G5Q4hxvOB1Vdu2YaPEYpL8mij YwXmc5/gRfa4BBUdbQ/EvNH1tkng3NTiq2VUF+xwhEdsxTG74GiwTPohSO/Nt6oOBJWP mCsz9l+6AbWmu6MCh1m1RjB3CyC3a4Wavkd5iv/D1SwlMnA8FMAJzbSRldjCFgvHQXF6 4utQ== X-Gm-Message-State: APjAAAURFFxcDq0MOvldlPO0ABnBjduwIGAvTstDzKMF1MvY2QZnZi+b UnCWS3e754m0+u+iJe32HFM= X-Received: by 2002:a7b:c38c:: with SMTP id s12mr3246481wmj.84.1574844610057; Wed, 27 Nov 2019 00:50:10 -0800 (PST) Received: from localhost (prg-ext-pat.suse.com. [213.151.95.130]) by smtp.gmail.com with ESMTPSA id l10sm19891393wrg.90.2019.11.27.00.50.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Nov 2019 00:50:09 -0800 (PST) Date: Wed, 27 Nov 2019 09:50:08 +0100 From: Michal Hocko To: Qian Cai Cc: Pengfei Li , "lixinhai.lxh@gmail.com" , akpm , mgorman , Vlastimil Babka , cl , "iamjoonsoo.kim" , guro , "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" Subject: Re: [RFC v1 00/19] Modify zonelist to nodelist v1 Message-ID: <20191127085008.GM20912@dhcp22.suse.cz> References: <20191125083948.GC31714@dhcp22.suse.cz> <828BAB69-4B46-418F-A5E2-35B0756340D0@lca.pw> <20191126154101.GJ20912@dhcp22.suse.cz> <8B426079-6091-4898-8D77-609915C273E8@lca.pw> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <8B426079-6091-4898-8D77-609915C273E8@lca.pw> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue 26-11-19 14:04:06, Qian Cai wrote: > > > > On Nov 26, 2019, at 10:41 AM, Michal Hocko wrote: > > > > On Tue 26-11-19 10:30:56, Qian Cai wrote: > >> > >> > >>> On Nov 25, 2019, at 3:39 AM, Michal Hocko wrote: > >>> > >>> People do care about ZONE_MOVABLE and if there is a non-movable memory > >>> sitting there then it is a bug. Please report that. > >> > >> It is trivial to test yourself if you ever care. Just pass kernelcore= > >> to as many NUMA machines you could find, an then test if ever possible > >> to offline those memory. > > > > I definitely do care if you can provide more details (ideally in a > > separate email thread). I am using movable memory for memory hotplug > > usecases and so far I do not remember any kernel/non-movable allocations > > would make it in - modulo bugs when somebody might use __GFP_MOVABLE > > when it is not appropriate. > > > > I don’t think it is anything to do with __GFP_MOVABLE. It is about booting a kernel > with either passing kernelcore= or movablecore=. Then, those ZONE_MOVABLE will > have non-movable pages which looks like those from vmemmap_populate(). OK, I see. This looks like a bug in kernelcore/movablecore. And honestly I wouldn't be surprised because these are hacks that should have been removed. I have even attempted to do that because their main usecase is mostly gone. There were some objections though... > How do you create ZONE_MOVALBLE in this first place? The most common usecase I work with is to use movable_node parameter which makes whole nodes marked as hotplugable to be moved to ZONE_MOVABLE. -- Michal Hocko SUSE Labs