From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753372AbdHQV7X (ORCPT ); Thu, 17 Aug 2017 17:59:23 -0400 Received: from mail-yw0-f180.google.com ([209.85.161.180]:33696 "EHLO mail-yw0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752632AbdHQV7W (ORCPT ); Thu, 17 Aug 2017 17:59:22 -0400 MIME-Version: 1.0 In-Reply-To: <20170817215549.GD2872@redhat.com> References: <20170817000548.32038-1-jglisse@redhat.com> <20170817143916.63fca76e4c1fd841e0afd4cf@linux-foundation.org> <20170817215549.GD2872@redhat.com> From: Dan Williams Date: Thu, 17 Aug 2017 14:59:20 -0700 Message-ID: Subject: Re: [HMM-v25 00/19] HMM (Heterogeneous Memory Management) v25 To: Jerome Glisse Cc: Andrew Morton , "linux-kernel@vger.kernel.org" , Linux MM , John Hubbard , David Nellans , Balbir Singh Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Aug 17, 2017 at 2:55 PM, Jerome Glisse wrote: > On Thu, Aug 17, 2017 at 02:39:16PM -0700, Andrew Morton wrote: >> On Wed, 16 Aug 2017 20:05:29 -0400 J__r__me Glisse wrote: >> >> > Heterogeneous Memory Management (HMM) (description and justification) >> >> The patchset adds 55 kbytes to x86_64's mm/*.o and there doesn't appear >> to be any way of avoiding this overhead, or of avoiding whatever >> runtime overheads are added. > > HMM have already been integrated in couple of Red Hat kernel and AFAIK there > is no runtime performance issue reported. Thought the RHEL version does not > use static key as Dan asked. > >> >> It also adds 18k to arm's mm/*.o and arm doesn't support HMM at all. >> >> So that's all quite a lot of bloat for systems which get no benefit from >> the patchset. What can we do to improve this situation (a lot)? > > I will look into why object file grow so much on arm. My guess is that the > new migrate code is the bulk of that. I can hide the new page migration code > behind a kernel configuration flag. Shouldn't we completely disable all of it unless there is a driver in the kernel that selects it?