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 B0363C7EE22 for ; Wed, 10 May 2023 11:56:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F05106B0071; Wed, 10 May 2023 07:56:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E8DE36B0072; Wed, 10 May 2023 07:56:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D55AC6B0074; Wed, 10 May 2023 07:56:12 -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 C1DBC6B0071 for ; Wed, 10 May 2023 07:56:12 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 83E85C0A9B for ; Wed, 10 May 2023 11:56:12 +0000 (UTC) X-FDA: 80774192184.27.D18041C Received: from eu-smtp-delivery-151.mimecast.com (eu-smtp-delivery-151.mimecast.com [185.58.85.151]) by imf12.hostedemail.com (Postfix) with ESMTP id 28D4F4000C for ; Wed, 10 May 2023 11:56:09 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=none; spf=pass (imf12.hostedemail.com: domain of david.laight@aculab.com designates 185.58.85.151 as permitted sender) smtp.mailfrom=david.laight@aculab.com; dmarc=pass (policy=none) header.from=aculab.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1683719770; a=rsa-sha256; cv=none; b=yjI21C6pzAt2HT7EFR6QnN0jKps/G6cLlXEaVNychJATguNY1NcUPbX54pCJfQ5wsacBCO X5n9r6D3PPHI7eVkD0ZimP1swokNngeucmxqpE7pWQeR1lWim3/92mSYwR1L1pA8LuhZrU u0J79T67ONd9mjJJRSBBKo8Ljz6Grs4= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=none; spf=pass (imf12.hostedemail.com: domain of david.laight@aculab.com designates 185.58.85.151 as permitted sender) smtp.mailfrom=david.laight@aculab.com; dmarc=pass (policy=none) header.from=aculab.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1683719770; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Ji06FHdruQJcFdqUcTBD2WtiY9Ark+AwtIwAvkZ9O+M=; b=vI6V9V2tJPw8DIGKPZNJKR3vfP4SRHsdaann/AZ4iS9ay1elENxvxMPoFwKc1pvtoV6BBG uvIGY4FSVqjsqYHGHvxOh7H/3lwXDffKIU02Vgm8YV/efLDsCAUJfWnIN6wOYaOj1MowrL E+6G2uT/3bbxMHgZOBsKv6Zbs0y+YtA= Received: from AcuMS.aculab.com (156.67.243.121 [156.67.243.121]) by relay.mimecast.com with ESMTP with both STARTTLS and AUTH (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id uk-mta-266-ezRNJOxiNHGRFTp6EEfw5w-1; Wed, 10 May 2023 12:56:07 +0100 X-MC-Unique: ezRNJOxiNHGRFTp6EEfw5w-1 Received: from AcuMS.Aculab.com (10.202.163.6) by AcuMS.aculab.com (10.202.163.6) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Wed, 10 May 2023 12:56:05 +0100 Received: from AcuMS.Aculab.com ([::1]) by AcuMS.aculab.com ([::1]) with mapi id 15.00.1497.048; Wed, 10 May 2023 12:56:05 +0100 From: David Laight To: 'Kent Overstreet' , Lorenzo Stoakes CC: Christoph Hellwig , "linux-kernel@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , "linux-bcachefs@vger.kernel.org" , Kent Overstreet , Andrew Morton , Uladzislau Rezki , "linux-mm@kvack.org" Subject: RE: [PATCH 07/32] mm: Bring back vmalloc_exec Thread-Topic: [PATCH 07/32] mm: Bring back vmalloc_exec Thread-Index: AQHZgr3DOem8UG0tfU+5LSPSF/vac69TZImw Date: Wed, 10 May 2023 11:56:05 +0000 Message-ID: References: <20230509165657.1735798-1-kent.overstreet@linux.dev> <20230509165657.1735798-8-kent.overstreet@linux.dev> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: s3h7to1io8cnb4uxr1yhb8fe1z69reas X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 28D4F4000C X-HE-Tag: 1683719769-293336 X-HE-Meta: U2FsdGVkX1/aJoqMbSPR6GCDJ8weynEveZHv1i4O5wq3etZgz3qpPJ6QEcENEYqYhpCbDuvVBshOEuyNJ49Z/vDNHES7t6j7/y8M4fn0dua6AdsnR0lro0DVtbR+04Y4eTCyqeFl4MZpyJ/OrCI++A8T5E5QyJ0gVGpL6isjcAsCst8jgZI6or0TzFY82wsmsaBZmfEClkK8wy2EfS+moJ59QemQ17XtU641Tvwx0r18oWS+uDSf/Ec6ZaZ3+qeA30FiIikOgZBmLjbCryUJKM9y+79cbaLX22YP+3vlkWx8fC1mCf9scqwfQFQ9F6ue3356Q76tjapeNCptxYAXHsBXzyyTiGMaUtAw0Jtc4teP/GLrwAlpVkC1JIA8afypNkZFbPxUMoFXyg1xmC0+t1TFtnriS/yhcepFjVzy9zDvqNwaz2pLwjJsooIiO+VGp3X/5sRSmKvboi+3xLcd8ZFbujTJENvBbXhyB86qkLFWTzbbtI6NKvvrDUP895J1Jr0VVMk3C9rmM9GlmMzmPRjPlNEhXha6uHaFAjdYoYLL9A8FAawD7VXmuaUc5p6RMWaOU7QSp5w6kxbJVtLRTcVEHOEe6Kii9BngJgy5LNAo6EiGfNJagCrfazavLIy2SsxbC6zKm+YHRVMCnt4NpO5Sth3K4p+6oKQLVykjx3FzhRmIK5cEN4MD/HyohQLwC7pH8ueitKQrhASQAhZDyqd5xnIOgIsWplnz617WtusqzwkjeU1ztNPwnPqvRgFLwQInpUTzuNTqO44NHonVd3Jch6TEOAKvPgdM2VVHlFsTFZiYJnfDmfQo9H30asRWFG5URfdjlsDKCSd0xbwkxK2IwHD9jwjU3ypblkl4T50WULEfVMhJcmMB07qDmTwER2/tB28tTmF3MAN4VEh7A09GfqMa+kMwCZBfw6HZ4Fd5UlMuw4OnsEOYRZbP6t4LiT42w9KWztHRIHy53Tx y2zbddoD IB3ruoIAz4ZRn4CIhABDFTZnljojXixPItJzNN2s36cau7wVCiEdoO1JA4cQBFod8HiCH8XH1gbiRTsDFfUkr9JOILog4k1F5K1lBwvZEOcuum6v4I2LIYeAjHKgw0TJFqd4XY8OL5otcYM7dk//tflEIgSeqqm2ajAoIaL61qZ3GCa6GIdV0y6j0Rb6GpEJ+ImC7ieXYKfLlzzZKu23Pm1VhjHKN5PeT/7xPb6JseioIWVS5JF/1htZFWnFusZc7X2UXT4yF5NiVKTiuEwB3KL/lNEfLpfFiJTLwQ0nD5r10QPd4ipkHDWrOedppiVnx/kD/DHRRKu9SwVatS9v1mhCdrp3PF+eMmgdy X-Bogosity: Ham, tests=bogofilter, spamicity=0.000101, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Kent Overstreet > Sent: 09 May 2023 22:29 ... > The background is that bcachefs generates a per btree node unpack > function, based on the packed format for that btree node, for unpacking > keys within that node. The unpack function is only ~50 bytes, and for > locality we want it to be located with the btree node's other in-memory > lookup tables so they can be prefetched all at once. Loading data into the d-cache isn't going to load code into the i-cache. Indeed you don't want to be mixing code and data in the same cache line - because it just wastes space in the cache. Looks to me like you could have a few different unpack functions and pick the correct one based on the packed format. Quite likely the code would be just as fast (if longer) when you allow for parallel execution on modern cpu. =09David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1= PT, UK Registration No: 1397386 (Wales)