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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id DA8C9C6FD19 for ; Mon, 13 Mar 2023 16:26:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 322026B0075; Mon, 13 Mar 2023 12:26:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2AA826B0078; Mon, 13 Mar 2023 12:26:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 14C106B007B; Mon, 13 Mar 2023 12:26:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 014056B0075 for ; Mon, 13 Mar 2023 12:26:07 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id C747C16061C for ; Mon, 13 Mar 2023 16:26:07 +0000 (UTC) X-FDA: 80564401974.03.8AD85CA Received: from mail-qv1-f44.google.com (mail-qv1-f44.google.com [209.85.219.44]) by imf15.hostedemail.com (Postfix) with ESMTP id B8785A0003 for ; Mon, 13 Mar 2023 16:26:05 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=cmpxchg-org.20210112.gappssmtp.com header.s=20210112 header.b=xAMIUDJF; spf=pass (imf15.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.44 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1678724766; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ySLTlGrwz6oW+f8sFlLSgS6OiFk6jTO/4mJGRVwuTkU=; b=xVrZbsA8vxvpiM5wUjsGv0hYhzWdwku6Uib2zI9zEHCPeySJXUVKhPpnXGPlSiitK3Z7iO ia0X6swplMrlxhs+wN/MGTv1z9k+jiUtBLGwcFWZA3tABwFUFmDUUX4L2RbAB22a0SrKpU GmOXsqsOA5Qv0tQPDVwIyzrxIEYAyQs= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=cmpxchg-org.20210112.gappssmtp.com header.s=20210112 header.b=xAMIUDJF; spf=pass (imf15.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.44 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1678724766; a=rsa-sha256; cv=none; b=TTe8f1OnPGjwFHJmlbAX3NDofF5xa0GwSHcISIC5PQapzf/H3U9ewFmLGpO46cxeKOxG4Z /AQP+IRkqkkonROxXh3/BQ7xfNO5MJ6SEjewIO1guVt8laQcExIs6acLp162UYjja7qWNV Y53qf1TibMV3R9CaA0FstSjWsW7dh8A= Received: by mail-qv1-f44.google.com with SMTP id jl13so4617530qvb.10 for ; Mon, 13 Mar 2023 09:26:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cmpxchg-org.20210112.gappssmtp.com; s=20210112; t=1678724765; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=ySLTlGrwz6oW+f8sFlLSgS6OiFk6jTO/4mJGRVwuTkU=; b=xAMIUDJFE3jM819ZTUErzGnW1a312jSUlvICyJX2o9vTCwqnhtx2ygELjCRyVf+XiC Rw3JKEQL3nTidz1EvLc1vMwJ0V/l8gF/O0kURWSMpygu+eI2SKLGgaLaGL+nklo5oVB9 QScThBxuFtijKa9Xbf8EJtIISiw7AdM7ZI1jUTpl/TjtShKgN8NEYiBXDOBQqViXCUgK FfCYKa0tLSYU3LshWYlaIQDUHB8OAc2dzQd4x9tB/W2P6i0xGB8KM8B/YAXe+EsE4qKT VI82vrv5r/HJvY2x37Qdfwz/4wflQgkUlY6RUcivF50fg6IfbiA3dCuxmKXm1Hdsz4zf kTjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678724765; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ySLTlGrwz6oW+f8sFlLSgS6OiFk6jTO/4mJGRVwuTkU=; b=CkskHHUwGVD58SX0hAUQ8Ldp0gAZPGB1oVaBM+nt5RccteJDn5W3TIWXCPcZVOFMMq 1PMwq8r5CZWi9QHucCNx9ZjjL4J2fJWF27igKCyKjpfz6nF9sVobDweDnpTeDRU8U0Sp l43YnDcOAh/rDHLmpus6lFKSAzn1op1BHRh+7LsHLjxcRYhvdg1LwB1RtVas5QvWGG/y 6j3+pPudkpRZ209uZ6YRexoJOKUm4wPOqGJ+mafXlzfRt6L0KSqQ4Y3etJbTiiIkq1Ti NfkxWcT8THcuvRtAXEgtpe5QiiJSDU1EnSG68mcpUn9pB5jvFbzIY+1GDS5F95hs3sKm NCqw== X-Gm-Message-State: AO0yUKX2ACFMx65QqfrqLQtInm61wxxNDojKy6xioNRX64cSVLeN7QVP b+F2NGsafSN/B+RSh3WHR3Mb/A== X-Google-Smtp-Source: AK7set+HTJLvv62hY5uBNZqcsnd89WiHsgwusCnYu6ISinhxqnJaDD8TylUxF7V9gCMfZ6kLymlK+g== X-Received: by 2002:a05:6214:2464:b0:56e:a918:a4ed with SMTP id im4-20020a056214246400b0056ea918a4edmr14771754qvb.1.1678724764783; Mon, 13 Mar 2023 09:26:04 -0700 (PDT) Received: from localhost ([2620:10d:c091:400::5:d32c]) by smtp.gmail.com with ESMTPSA id n188-20020a37bdc5000000b007456b2759efsm21679qkf.28.2023.03.13.09.26.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Mar 2023 09:26:04 -0700 (PDT) Date: Mon, 13 Mar 2023 12:26:03 -0400 From: Johannes Weiner To: Stefan Roesch Cc: kernel-team@fb.com, linux-mm@kvack.org, riel@surriel.com, mhocko@suse.com, david@redhat.com, linux-kselftest@vger.kernel.org, linux-doc@vger.kernel.org, akpm@linux-foundation.org, Bagas Sanjaya Subject: Re: [PATCH v4 1/3] mm: add new api to enable ksm per process Message-ID: <20230313162603.GA965640@cmpxchg.org> References: <20230310182851.2579138-1-shr@devkernel.io> <20230310182851.2579138-2-shr@devkernel.io> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230310182851.2579138-2-shr@devkernel.io> X-Stat-Signature: ja9c5bc6ck14qq9cbn7ne8nkikt9o64b X-Rspam-User: X-Rspamd-Queue-Id: B8785A0003 X-Rspamd-Server: rspam06 X-HE-Tag: 1678724765-631942 X-HE-Meta: U2FsdGVkX1/uqGDs5RrsrASZykuD9gzFtutdshwknwR/YwTlNIcLIJJqnv5tFcYr5iDcozHMKKtZNsNnKyaCzkftIpbhVzHkNy2074M4tyC2cZ9lF/yEZt0zEtL6NwgKa6rZ12xFJtLZMbsd27lnCcOAV8PXXWY4GkypkKcuLjnU+RztnPrepmkoVMt2gOPB61HfNtKFW+LfeALpZQteZGrdR2LXuiZ6KNF2lMztHlqKa9YiZMuIomeD2ZN9oZuXyvSsLnRgA1cotBxoLVyNA2NSKXDv6FVJRzZROtB125VthsDUKOJ4htP9CCzi5mgASIMUiWzdz70ytBSKkljLNZvrVuuPooVFgaYuRWM5unRV9eKk6IDFH+xlDBt7GdcEq+QiHCnHiF9WZlGU/vBS5POj4cwJB2tWOP4lbwp31y4xvgiAts80SJp+uQEQKEAUU9pETX3PZCGXMSg8tWkRgGHhGu5pXqqZ53uWkQw1x0UE16syHlz9iFeK7tCZt2i3pFRc7nsFctwKc0KHiItIz1tgt94sI3YSCBuDMfjl4O7dMO/p7pE1UK1uG4gz4PVUy83TpAvc6lZ1JZkG8tcUFZdNxApA31dBiLKbIoLSmwC6YiHQtdN1Ye62oMy7vPg6z76f/mThyTigb7Z7qqpg0su6VwJ1y4u1NmzjsQck/xpBPfsr9rft0MmDg74xtlhvGWF0at6jXirprrojSDfEYJBm3Gx8WZUElBjimNU6FwIUIIJeeQq45TNKbdgFJmPU2jOvfOnT5bnfOqFGS5H83aGWOuwr5Ivd5TqpsNYktkKblZnr93cZfF9wazYT1hhrb//0YOjwhAu10eF6LNGbvBM10WrQPiPi2FqiohFeR2KBTvxEzofbjzRcB8SBPwMdi2XpUWNXYb9UxQFKtWwRZKi8MPWW5h35DjyCE9MdFrYRJwfP1GSMzsKh8sE/YTF7UCjkCAaybzCFtNuxWDW UD3rjc1b qbv4+k6McOyPNBECf0LOPFNh9GD7tfhe7/6dZ+faouA+u1UTkHI0BGPzBqw+BUGvX9qpz2wKDjFmzfSeSGjTj1mAPwIgJMSyiMwCcouD0TNHOraX6XntJoBHuXbf4A92tjLjmiiqAHYXIaZP5LDXdgCixGB2QJ/UebKoQS6fWJm+NYYnMe+9B048GnMww+EflXtptd6BPrDe02ZoDDkf3oJeRE3qUmgC0pDd5JnTNhstJakNZDzzICVave4cEl5dcF71sGMF0nbKoiReyaBKgmdz0fPRTGtxNvbr6fdDJR2D2i/nKkKdspWM5yU3JGrshx4YwHAhdfRpzGZ9S/bprBFiFvhI8xZpueVVN3A9Om+wzPgS0b7MEZ1Ie5IhL1L+YGeoxmjnL8Pi5YkBPMZZExExuGC+PMkGrXVzP+RLQ+VXKSDLJRznvYQ4AuX70ajJg8O7Jh9QapDhCsBfKC9AQ/6wK7g== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Fri, Mar 10, 2023 at 10:28:49AM -0800, Stefan Roesch wrote: > @@ -534,16 +534,58 @@ static int break_ksm(struct vm_area_struct *vma, unsigned long addr, > return (ret & VM_FAULT_OOM) ? -ENOMEM : 0; > } > > +static bool vma_ksm_compatible(struct vm_area_struct *vma) > +{ > + /* > + * Be somewhat over-protective for now! > + */ > + if (vma->vm_flags & (VM_MERGEABLE | VM_SHARED | VM_MAYSHARE | > + VM_PFNMAP | VM_IO | VM_DONTEXPAND | > + VM_HUGETLB | VM_MIXEDMAP)) > + return false; /* just ignore the advice */ > + > + if (vma_is_dax(vma)) > + return false; > + > +#ifdef VM_SAO > + if (*vm_flags & VM_SAO) > + return false; > +#endif > +#ifdef VM_SPARC_ADI > + if (*vm_flags & VM_SPARC_ADI) > + return false; > +#endif These two also need to check vma->vm_flags, or it won't build on those configs. Otherwise, the patch looks good to me.