From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg0-f69.google.com (mail-pg0-f69.google.com [74.125.83.69]) by kanga.kvack.org (Postfix) with ESMTP id 859892802FE for ; Wed, 23 Aug 2017 11:58:42 -0400 (EDT) Received: by mail-pg0-f69.google.com with SMTP id e2so4140696pgf.7 for ; Wed, 23 Aug 2017 08:58:42 -0700 (PDT) Received: from mga11.intel.com (mga11.intel.com. [192.55.52.93]) by mx.google.com with ESMTPS id m22si1325686plk.368.2017.08.23.08.58.38 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 23 Aug 2017 08:58:39 -0700 (PDT) Subject: Re: [PATCH 1/2] sched/wait: Break up long wake list walk References: <37D7C6CF3E00A74B8858931C1DB2F077537879BB@SHSMSX103.ccr.corp.intel.com> <20170818144622.oabozle26hasg5yo@techsingularity.net> <37D7C6CF3E00A74B8858931C1DB2F07753787AE4@SHSMSX103.ccr.corp.intel.com> <20170818185455.qol3st2nynfa47yc@techsingularity.net> <20170821183234.kzennaaw2zt2rbwz@techsingularity.net> <37D7C6CF3E00A74B8858931C1DB2F07753788B58@SHSMSX103.ccr.corp.intel.com> <37D7C6CF3E00A74B8858931C1DB2F0775378A24A@SHSMSX103.ccr.corp.intel.com> <37D7C6CF3E00A74B8858931C1DB2F0775378A377@SHSMSX103.ccr.corp.intel.com> <37D7C6CF3E00A74B8858931C1DB2F0775378A8AB@SHSMSX103.ccr.corp.intel.com> From: Tim Chen Message-ID: <6e8b81de-e985-9222-29c5-594c6849c351@linux.intel.com> Date: Wed, 23 Aug 2017 08:58:37 -0700 MIME-Version: 1.0 In-Reply-To: <37D7C6CF3E00A74B8858931C1DB2F0775378A8AB@SHSMSX103.ccr.corp.intel.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: owner-linux-mm@kvack.org List-ID: To: "Liang, Kan" , Linus Torvalds Cc: Mel Gorman , Mel Gorman , "Kirill A. Shutemov" , Peter Zijlstra , Ingo Molnar , Andi Kleen , Andrew Morton , Johannes Weiner , Jan Kara , linux-mm , Linux Kernel Mailing List On 08/23/2017 07:49 AM, Liang, Kan wrote: >> On Tue, Aug 22, 2017 at 12:55 PM, Liang, Kan wrote: >>> >>>> So I propose testing the attached trivial patch. >>> >>> It doesna??t work. >>> The call stack is the same. >> >> So I would have expected the stack trace to be the same, and I would even >> expect the CPU usage to be fairly similar, because you'd see repeating from >> the callers (taking the fault again if the page is - once again - being migrated). >> >> But I was hoping that the wait queues would be shorter because the loop for >> the retry would be bigger. >> >> Oh well. >> >> I'm slightly out of ideas. Apparently the yield() worked ok (apart from not >> catching all cases), and maybe we could do a version that waits on the page >> bit in the non-contended case, but yields under contention? >> >> IOW, maybe this is the best we can do for now? Introducing that >> "wait_on_page_migration()" helper might allow us to tweak this a bit as >> people come up with better ideas.. > > The "wait_on_page_migration()" helper works well in the overnight testing. > Linus, Will you still consider the original patch as a fail safe mechanism? Thanks. Tim -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org