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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 254F8C636CC for ; Tue, 7 Feb 2023 11:30:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=BRAFqn9O8rrWYSYWFjGEa99CvekkUvrqFvh/VYbamcU=; b=F/+DyRYzG7cGtS vWXrC1AIaKMI7S1WyTN+So2qzV+zq03RUWwUmNIUzcXGNCcPeHhJbopG4fM4jC2I10f4/AYqpSvsd nf/YdKieCyonP7M0PIxh5tHlgleKK8VrUbwNMt4RGckYljl9xDgGh+bRSFzdmQj5jVw35rB3de1pD x8h1EJrPj/nkT6sGavgaDtWZxqNWedjiNCRAMk6sM4VDuBDyN3EJmYi8dFxVT9Xw9iZR32gGgOPg/ wAny598cl1GeEt39MfrACuxl/YAmb8J0tTnIGL/L4Nb349HGehGnB5klwEwGgmxRAO1xw8bzk8We+ vGi9e2a4btCFMXUyQvLg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pPMAZ-00BxLQ-FE; Tue, 07 Feb 2023 11:29:51 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pPMAW-00BxKO-C4 for linux-arm-kernel@lists.infradead.org; Tue, 07 Feb 2023 11:29:49 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0ADB261302; Tue, 7 Feb 2023 11:29:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CCB1AC433D2; Tue, 7 Feb 2023 11:29:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1675769386; bh=FMKebmT8UkF+9euLxcusDfgEaDtWb+MoAtShKQqplxA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=uRRMzvP1LqaHei6sgdqbIC2FNnrmrBBKopXsrRjigzqrmS63Khj5x5xdmLhy6U69A Uj6GfKKuk37+gGevENxVtEyBQiZIzDZS5ykNL2nwPWqd5/q62bOzSCdrnWWxfpTvVB u8t7bthW6USzVcOc5wK9wY8x6NEwkk1oYpTW8XLQuHSPML7gmLnF+DGobv9ha3g+t/ U24U1Q7WqV/UvVVNjgLm0MR53knQ0N/vtxblz1/LvAcNr78UGIXrUD+AZghJNA/WyN SNdvfm9wa8Oj3c3A2iD2KR77mXoBg5hvp9fljE3cHpZ3QZTNQvLMVd4RatsnKyhLmV qAys7FUELAzYQ== Date: Tue, 7 Feb 2023 11:29:41 +0000 From: Will Deacon To: Ard Biesheuvel Cc: Andrew Morton , Liu Shixin , Catalin Marinas , Uladzislau Rezki , Christoph Hellwig , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH RFC] arm64/vmalloc: use module region only for module_alloc() if CONFIG_RANDOMIZE_BASE is set Message-ID: <20230207112940.GA12147@willie-the-truck> References: <20221227092634.445212-1-liushixin2@huawei.com> <20230129134147.f19ca0641f1133f3e3bc185b@linux-foundation.org> <20230131150644.GA2605@willie-the-truck> <20230131150750.GB2605@willie-the-truck> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230207_032948_529964_8A791998 X-CRM114-Status: GOOD ( 28.10 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Tue, Jan 31, 2023 at 05:03:32PM +0100, Ard Biesheuvel wrote: > On Tue, 31 Jan 2023 at 16:07, Will Deacon wrote: > > On Tue, Jan 31, 2023 at 03:06:44PM +0000, Will Deacon wrote: > > > On Sun, Jan 29, 2023 at 01:41:47PM -0800, Andrew Morton wrote: > > > > On Sun, 29 Jan 2023 10:44:31 +0800 Liu Shixin wrote: > > > > > On 2022/12/27 17:26, Liu Shixin wrote: > > > > > > After I add a 10GB pmem device, I got the following error message when > > > > > > insert module: > > > > > > > > > > > > insmod: vmalloc error: size 16384, vm_struct allocation failed, > > > > > > mode:0xcc0(GFP_KERNEL), nodemask=(null),cpuset=/,mems_allowed=0 > > > > > > > > > > > > If CONFIG_RANDOMIZE_BASE is set, the module region can be located in the > > > > > > vmalloc region entirely. Although module_alloc() can fall back to a 2GB > > > > > > window if ARM64_MODULE_PLTS is set, the module region is still easily > > > > > > exhausted because the module region is located at bottom of vmalloc region > > > > > > and the vmalloc region is allocated from bottom to top. > > > > > > > > > > > > Skip module region if not calling from module_alloc(). > > > > > > > > > > > > > > I'll assume this is for the arm tree. > > > > > > > > Acked-by: Andrew Morton > > > > > > This looks like the same issue previously reported at: > > > > > > https://lore.kernel.org/all/e6a804de-a5f7-c551-ffba-e09d04e438fc@hisilicon.com/ > > > > > > where Ard had a few suggestions but, afaict, they didn't help. > > > > > Thanks for the cc. > > So this is a bit clunky, and I wonder whether we wouldn't be better > off just splitting the vmalloc region into two separate regions: one > for the kernel and modules, and one for everything else. That way, we > lose one bit of entropy in the randomized placement, but the default > 48-bit VA space is vast anway, and even on 39-bit VA configs (such as > Android), I seriously doubt that we come anywhere close to exhausting > the vmalloc space today. That sounds like a good idea to me. Liu Shixin -- do you think you could have a go at implementing Ard's suggestion instead? Cheers, Will _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel