Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp621990pxb; Tue, 2 Feb 2021 13:29:22 -0800 (PST) X-Google-Smtp-Source: ABdhPJyO5VH76iUZk93XNErkgfqIL/OrXUPsT2nDMFpR7EuB9J6TMft8RT4/q4PjOgYbEDn0HG4g X-Received: by 2002:a50:d4d9:: with SMTP id e25mr47672edj.183.1612301362524; Tue, 02 Feb 2021 13:29:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612301362; cv=none; d=google.com; s=arc-20160816; b=XsdA6C9EFEvOpSmCa7asgDLvTX7BZ8VnidhZi7i2/VBKm/tiAkSwneyHYbHw+hAsRB savJmWzvqvUqvgMF5nWQWXbfKc8kRNRjtji7ZN5R9A0ey6gV4+TY4zFPvJP/zZ/uJ09i c231eoi0OiqK4wn7WtYZQ39J3wBIY38ad8jGC9D0s8CNu3zBSrRELk8Bwzcxzv90Az4t Lm3v6dcg35X7qzRw2wZKeHekvz/yEnM83qu2pC7Z0KLrW5fRIf+8xah+S9rDJpcKdj8r fSfwZ5Zn13d2jOeyNIJ+tgThwvJBKyLBEZn4ZyD1anJSOZsf0/bEJEtyvasi0cDPkY6A wEaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=Hvp+3yk5zet6hDXRRiGhAEBZG+kovdbLbd7TcEaLaO8=; b=d+9G9wQEmTgOwZThlXbG5EOE9sZXlyBOKuwEngYGBGjcyqgZG4dpubd6jx65N34TCb en5yBPribRsNQIn+4Occ/bXeQ3w/EPKvk7RLOBHE47WDXww/VLiex6upO336Vl+HPb3q L2K9eNTCKEjgppPUuj5rL6wVjZPmt6jLDjQs7EtDLR51yJI7KZ6dsbW7lI2AtB+VNdHZ V824IukGI8BSXcmyZV1MoFJAaw4N13yM9XvOimJYxrYobJi/NGVye3uo4PTeCe4ySsuR zdig44QJG+uQBxeUkW45JOttmaRSia3m9GUEhHsX07cs1Nnz/PHAEZihaYqVwrBfb59M NRrA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=m6OTQfqw; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u5si28911ejz.642.2021.02.02.13.28.56; Tue, 02 Feb 2021 13:29:22 -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; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=m6OTQfqw; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232011AbhBBMuT (ORCPT + 99 others); Tue, 2 Feb 2021 07:50:19 -0500 Received: from mail.kernel.org ([198.145.29.99]:50752 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231945AbhBBMuJ (ORCPT ); Tue, 2 Feb 2021 07:50:09 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 4EEB964F45; Tue, 2 Feb 2021 12:49:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1612270167; bh=l1mxEt58DDcLUIYn/PeqqKhgepc/YzCCfJbWYo9gF+0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=m6OTQfqwmfzsDSuhaE02irM8RXZ+6I61yxWerp81AbIHaAEqJgnUU1Tago6YYG+PZ lr/J7OliC0mrwyFm+Yl+JHzEuSXK/3VdkUmPzprvLqNXJeT7c7s/R/J9ZCl2+IeFtF rRdT17MK63P20HXBjgkEetlpW86oX2ThKpxrHLgmDgGybcXOIhr5G1LeWie80VfNKg QlMcZq+bz+M1S4kZa3QSlb+JQ6x7L2zxJR92gCQJ28nKgn5G8407CWFGfDfkqlEtqc 0FuByC2cyuzV9p6QWIQuYAV6UBnFm4EyXxopzOj5OqjOkGbbBSYsX5rFiF13qam/3d 9vHDje5GpJPpg== Date: Tue, 2 Feb 2021 14:48:57 +0200 From: Mike Rapoport To: Michal Hocko Cc: James Bottomley , David Hildenbrand , Andrew Morton , Alexander Viro , Andy Lutomirski , Arnd Bergmann , Borislav Petkov , Catalin Marinas , Christopher Lameter , Dan Williams , Dave Hansen , Elena Reshetova , "H. Peter Anvin" , Ingo Molnar , "Kirill A. Shutemov" , Matthew Wilcox , Mark Rutland , Mike Rapoport , Michael Kerrisk , Palmer Dabbelt , Paul Walmsley , Peter Zijlstra , Rick Edgecombe , Roman Gushchin , Shakeel Butt , Shuah Khan , Thomas Gleixner , Tycho Andersen , Will Deacon , linux-api@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-nvdimm@lists.01.org, linux-riscv@lists.infradead.org, x86@kernel.org, Hagen Paul Pfeifer , Palmer Dabbelt Subject: Re: [PATCH v16 07/11] secretmem: use PMD-size pages to amortize direct map fragmentation Message-ID: <20210202124857.GN242749@kernel.org> References: <20210121122723.3446-8-rppt@kernel.org> <20210126114657.GL827@dhcp22.suse.cz> <303f348d-e494-e386-d1f5-14505b5da254@redhat.com> <20210126120823.GM827@dhcp22.suse.cz> <20210128092259.GB242749@kernel.org> <73738cda43236b5ac2714e228af362b67a712f5d.camel@linux.ibm.com> <6de6b9f9c2d28eecc494e7db6ffbedc262317e11.camel@linux.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 02, 2021 at 10:35:05AM +0100, Michal Hocko wrote: > On Mon 01-02-21 08:56:19, James Bottomley wrote: > > I have also proposed potential ways out of this. Either the pool is not > fixed sized and you make it a regular unevictable memory (if direct map > fragmentation is not considered a major problem) I think that the direct map fragmentation is not a major problem, and the data we have confirms it, so I'd be more than happy to entirely drop the pool, allocate memory page by page and remove each page from the direct map. Still, we cannot prove negative and it could happen that there is a workload that would suffer a lot from the direct map fragmentation, so having a pool of large pages upfront is better than trying to fix it afterwards. As we get more confidence that the direct map fragmentation is not an issue as it is common to believe we may remove the pool altogether. I think that using PMD_ORDER allocations for the pool with a fallback to order 0 will do the job, but unfortunately I doubt we'll reach a consensus about this because dogmatic beliefs are hard to shake... A more restrictive possibility is to still use plain PMD_ORDER allocations to fill the pool, without relying on CMA. In this case there will be no global secretmem specific pool to exhaust, but then it's possible to drain high order free blocks in a system, so CMA has an advantage of limiting secretmem pools to certain amount of memory with somewhat higher probability for high order allocation to succeed. > or you need a careful access control Do you mind elaborating what do you mean by "careful access control"? > or you need SIGBUS on the mmap failure (to allow at least some fallback > mode to caller). As I've already said, I agree that SIGBUS is way better than OOM at #PF time. And we can add some means to fail at mmap() time if the pools are running low. -- Sincerely yours, Mike.