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 6CE6FC77B6E for ; Wed, 12 Apr 2023 13:20:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C514A6B0074; Wed, 12 Apr 2023 09:20:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C004C900003; Wed, 12 Apr 2023 09:20:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AEEC2900002; Wed, 12 Apr 2023 09:20:32 -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 9BF646B0074 for ; Wed, 12 Apr 2023 09:20:32 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 501681A00E9 for ; Wed, 12 Apr 2023 13:20:32 +0000 (UTC) X-FDA: 80672798304.14.8CC4E91 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf07.hostedemail.com (Postfix) with ESMTP id 955D84000D for ; Wed, 12 Apr 2023 13:20:30 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=Bhkm3OkI; spf=none (imf07.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681305630; 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=bZzC89xBqHZIexKBrKT7HoQWF++KmQXNtlFaFL5/dGo=; b=aiunBLd64xp1qG5Nitczt8PFaSRHTCSjEDXJv3kx9BC4MTDz4jLE/cE+lYpBv5XhfduMHH B0uMr3N1Jcom4acaXPf1hWZsmNLfdevcZFHIeqfiAPaVQFiPpXpXuYOHgvghkRHp94MBNt ePjZG5xcN9BL7v6X4LnaAucjVbcZ37A= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=Bhkm3OkI; spf=none (imf07.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681305630; a=rsa-sha256; cv=none; b=abCgTCrtRjEYVprw15buVp7TcSYe/w1FDXS5aHvfTWiLXU5OTQtWrHMsAbsy63ZdE0mMyv +DYfe6d8Nul7z4UQ3d+wFDDs77+koqKMswpKp8t4kupq0G7N7uslQXvkA8aY94YlEiVs4j RvCoVunhieWJSYr4iVMQTNtQl1my3oA= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=bZzC89xBqHZIexKBrKT7HoQWF++KmQXNtlFaFL5/dGo=; b=Bhkm3OkIjTuzwz0FHS4ccrZ729 X+9ouvRCNj4+hh725FT0ZbIz83h7MSRBsjviLga0fOC3Gi+/58AqWhmWZ4HLkPfZ+zAgEZ30Lt4bQ 5V+tN6aiK87yw+UP4uKd/Xq8wkzGRB0jIPqd5tGcDb4yab66OsS8DDx7Czir6FBfOOWk8S06ajcM5 h/z9LKAO8jjk/51kYdA/se3GfD7Yk/PjRWg6haY9qLY18En+I4/m8ayilmZiDJYoX1ByFTi0Xn8RY 3yDCAtGg2tzKYmCqiX1lNjTfRKtVviFDpUIKFzx6bS+z6KQUiKzDlq/2qX5BqM66NQfurHTi82G3h +jF0Jqiw==; Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1pmaOd-006tdK-Rk; Wed, 12 Apr 2023 13:20:23 +0000 Date: Wed, 12 Apr 2023 14:20:23 +0100 From: Matthew Wilcox 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, hannes@cmpxchg.org, Bagas Sanjaya Subject: Re: [PATCH v6 1/3] mm: add new api to enable ksm per process Message-ID: References: <20230412031648.2206875-1-shr@devkernel.io> <20230412031648.2206875-2-shr@devkernel.io> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230412031648.2206875-2-shr@devkernel.io> X-Rspam-User: X-Rspamd-Server: rspam03 X-Stat-Signature: 6be1t7pmfhrqf5sxq1x3pgy9hqjsbzr9 X-Rspamd-Queue-Id: 955D84000D X-HE-Tag: 1681305630-264235 X-HE-Meta: U2FsdGVkX19UbhndzNi6s1tTetleSbDdsmlDckruQLBR6i/6ooXGYpFRTOqtiVQxeZ8F9Y5zToLCRah8lC301VIStcv2vVSWiOSgJ/0cy5VPjeaitefx48x5vL1loF6Up5AIm5ZYNTRc0Ah6zj2P0PsZHpEe1N8GlwW94G5aoQvJkATHd7T/nTgCb+qq8KVHh8uCpdNWN97bXHfNDBd5ieCLATjulRDdB/DORLdSPrXi9zAEPL7WhVIF+zuS+I2dbMJ0hz36JPV7xGshAj8NZTkVgzm6tbKbp/ZMsEqL0OIe/IY7Qv8zxLw+3MRgU19KV5/B3G3097l3KqXIohpzORdPN+rS3ioPkpR2R8gQ7xiyj5N6Nf0agj1wgCVOtH/+kHhoWx8dguY2b4Wk9gaDMuiIDLNSBQqupaS5ae8v9ixuX5C8r4J2QfFW/odur2InJNnSH4reZtmFr96llkl2VviHd0ddbb0VKuJ1hsXQIXdcTI2GVzKFjNy5XF7KrPca+7DtnzpuzuhAQsSiccZJjW+VM0iEU2mfSeF7YPxc4/ezkFZj2fPwXoPlicZ7EzIJNMzXxo4sORVaGLto0QSGQPgqoATN+zJuRUq0KtJZNWuFcRKu4+RNRVlNmtORgG9tXcmFXxbMxqOsVjdmVAlPITHmp/MwZDZquvWjy1LiVk31XbR6DHw6hp3vdD2Fj8CYAVF+X5/siisYdojeekL57W7abs8Cc86/WPz3U0HWKajmIa9F6+NUoGAbBWIJPE1tV3Wn2puOvzWCy8JXo8QgDT3/yzSSa6o9A92goXWHVznpwaoWwFl9t2kpFW2rYuYmd+v8iE5GEd1puvPPU4wGk2ofeAtkpJtewF5QcNfxngy5xzWbqpxjDxfh8vjmolRifkQkVdhKU465BEDUE0tjRVN2AgO6+GxssarS7BAXFJaD6iGrrehnrPoGN4hHBeKFCTP5EA+bXU2bz8N2aC7 zXiNjI23 J9pXjiDLD/wSxIdBukTcp5pIEaTLjnMJ7njUQuvpCB64gEpMIQLrPEO6JwcsX9i/TddMPebrFIVuEpJiIPscGjfC1JfhivBgLZdFNRQCSH+qp9a8xP2lQaAjDyITc9CyS5iqYPlbxoHyPp/VinktWOKeqTA== 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 Tue, Apr 11, 2023 at 08:16:46PM -0700, Stefan Roesch wrote: > case PR_SET_VMA: > error = prctl_set_vma(arg2, arg3, arg4, arg5); > break; > +#ifdef CONFIG_KSM > + case PR_SET_MEMORY_MERGE: > + if (mmap_write_lock_killable(me->mm)) > + return -EINTR; > + > + if (arg2) { > + int err = ksm_add_mm(me->mm); > + > + if (!err) > + ksm_add_vmas(me->mm); in the last version of this patch, you reported the error. Now you swallow the error. I have no idea which is correct, but you've changed the behaviour without explaining it, so I assume it's wrong. > + } else { > + clear_bit(MMF_VM_MERGE_ANY, &me->mm->flags); > + } > + mmap_write_unlock(me->mm); > + break; > + case PR_GET_MEMORY_MERGE: > + if (arg2 || arg3 || arg4 || arg5) > + return -EINVAL; > + > + error = !!test_bit(MMF_VM_MERGE_ANY, &me->mm->flags); > + break; Why do we need a GET? Just for symmetry, or is there an actual need for it?