Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp164647pxb; Wed, 20 Jan 2021 04:05:33 -0800 (PST) X-Google-Smtp-Source: ABdhPJxT4R1qu5wGOWU9zVAAIUrSpr/FAEQT52v8Bz311lGbKJbYuiiUmrUINyIFZf1krlFNfmq7 X-Received: by 2002:a17:907:7346:: with SMTP id dq6mr6386932ejc.237.1611144254273; Wed, 20 Jan 2021 04:04:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611144254; cv=none; d=google.com; s=arc-20160816; b=fZwgqMeqK/gAEQAUR9fdiJ0Z/nmazgXWNqqG5hNsWvzJtvlenQsBhjM05b9UbU2dh7 xXH5OwadV0eti3y8B60b/q0T7POvkuvnoz8utnA9ZZYdxF4KnNgmi+SjGTXpqna/irvP P2/yhsd9z3NG0Zn0cxiRciymYYj8aRDq+18EYLgpyF5wIP1LKL6+2Im3afjWGX4qHSDU a39Sg3oWQ+nvv3uvBxEB3UzEJc8kSAISTGPeS7gC2059rYSsix/LmQhSbG226MO33dnj VPuvXWdNT0JClY2yq3yuOczbTzIDKaMwc3y0zXvir81Kqi0fRx7WKQ5RPT2RVbDrhthI ezLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:subject:from :references:cc:to; bh=5uaa0OBhCex6+cZbk3EBeKNucsABbdGyLDApGNx5D8g=; b=NPTgzCEm+yJAhM8mvfpwmYgi3tsoR/z8qdeLARzBK3dMpzrCg0yuYyxo87ce6XL7B+ jrk6DRKb/u5UHciSXZzls8HT6aGvP7UAMmTooIPFHiWAetWacrOz2vZkjPdotsaQ/HQI bJNMNt8i6LJFwZzcjS9ciiqihB/hnC4jVdtc4gxMnHgl053lGv0oQxQsATmrntOFqU7s 2IUl8I1ZpojF3+l0SYNIlypL7Lu5cRuvVGE7eyPmdOMTcbXi5pTHTdlHK0w9+0qk/b7J 4ewBhdA2+Uk4b/PnFd/4QEYo6W8YmDV39tJrtMi0sYgnqEJomn/njhLVMbKpZb2ZGT9h aiqQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cs10si621695ejc.200.2021.01.20.04.03.41; Wed, 20 Jan 2021 04:04:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733259AbhATLkx (ORCPT + 99 others); Wed, 20 Jan 2021 06:40:53 -0500 Received: from mx2.suse.de ([195.135.220.15]:41800 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388839AbhATLF1 (ORCPT ); Wed, 20 Jan 2021 06:05:27 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id EA644AC63; Wed, 20 Jan 2021 11:04:45 +0000 (UTC) To: David Rientjes , Charan Teja Reddy Cc: akpm@linux-foundation.org, mhocko@suse.com, khalid.aziz@oracle.com, ngupta@nitingupta.dev, vinmenon@codeaurora.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <1610989938-31374-1-git-send-email-charante@codeaurora.org> From: Vlastimil Babka Subject: Re: [PATCH V3] mm/compaction: correct deferral logic for proactive compaction Message-ID: <80a1a433-c520-4c73-61ce-55cf33739fc5@suse.cz> Date: Wed, 20 Jan 2021 12:04:45 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 1/19/21 8:26 PM, David Rientjes wrote: > On Mon, 18 Jan 2021, Charan Teja Reddy wrote: > >> should_proactive_compact_node() returns true when sum of the >> weighted fragmentation score of all the zones in the node is greater >> than the wmark_high of compaction, which then triggers the proactive >> compaction that operates on the individual zones of the node. But >> proactive compaction runs on the zone only when its weighted >> fragmentation score is greater than wmark_low(=wmark_high - 10). >> >> This means that the sum of the weighted fragmentation scores of all the >> zones can exceed the wmark_high but individual weighted fragmentation >> zone scores can still be less than wmark_low which makes the unnecessary >> trigger of the proactive compaction only to return doing nothing. >> >> Issue with the return of proactive compaction with out even trying is >> its deferral. It is simply deferred for 1 << COMPACT_MAX_DEFER_SHIFT if >> the scores across the proactive compaction is same, thinking that >> compaction didn't make any progress but in reality it didn't even try. > > Isn't this an issue in deferred compaction as well? It seems like > deferred compaction should check that work was actually performed before > deferring subsequent calls to compaction. Direct compaction does, proactive not. > In other words, I don't believe deferred compaction is intended to avoid > checks to determine if compaction is worth it; it should only defer > *additional* work that was not productive. Yeah, that should be more optimal. > Thoughts? >