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 9FEF1C02190 for ; Tue, 28 Jan 2025 18:19:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0C6042801CF; Tue, 28 Jan 2025 13:19:01 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 04D7C2801C7; Tue, 28 Jan 2025 13:19:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E30E82801CF; Tue, 28 Jan 2025 13:19:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id C372B2801C7 for ; Tue, 28 Jan 2025 13:19:00 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 861701C6C2E for ; Tue, 28 Jan 2025 18:19:00 +0000 (UTC) X-FDA: 83057672040.11.C6840EB Received: from out-189.mta1.migadu.com (out-189.mta1.migadu.com [95.215.58.189]) by imf06.hostedemail.com (Postfix) with ESMTP id 97051180015 for ; Tue, 28 Jan 2025 18:18:58 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=ueYbhafi; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf06.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.189 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738088338; a=rsa-sha256; cv=none; b=fSyQe4lxF3XRtCsdyxUoedLcLLuwsAqfzic0RnDcqsVTWS6+5+YbBIvUYbvJAt7mqaFo7p Lk0p5x8GXdK3/b9KQcMGoIe03fiW516juRsfXXkctFsds/2WeJwiIdZ7Dpdw2bdxDDh+GS FxM9NHppERVFj1GllRoTJdt+6BP751Q= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=ueYbhafi; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf06.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.189 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738088338; 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=IwyhlDOlF0RVPBXuw0iwcRsivnX/SUhgtB5IsaWgmuE=; b=zdZEzqZM7lNVi75WQMGeTycCRsCSyivPBGy2HfRzqr7k8TlLmDvppzjC60U56HT/R9FrN5 03sQz1lCtXFrVENox6/vjzdQ+A7vDQkWi+bmM0CKyohzzZGoRHpy7QBchLukcLaeOWQCbR q4kQoUPEgDQJrTvSvrQrsBFOUczek0M= Date: Tue, 28 Jan 2025 10:18:45 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1738088336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=IwyhlDOlF0RVPBXuw0iwcRsivnX/SUhgtB5IsaWgmuE=; b=ueYbhafiRlXeScY+CKXGi0xTWMN2py9r4Higq5fd8o3w4BpK1mUwDjogDDnrcF8YFZ1cSs bP2Gim5GTIeN1S+ZCExWHGNOI41hUCw/gGcf996UtFjUjQeF+8WvkwgG1q6RCPs2XpsuN7 cInRIezlyElhB4358A8ArSifZda0SfY= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Shakeel Butt To: Alexei Starovoitov Cc: bpf@vger.kernel.org, andrii@kernel.org, memxor@gmail.com, akpm@linux-foundation.org, peterz@infradead.org, vbabka@suse.cz, bigeasy@linutronix.de, rostedt@goodmis.org, houtao1@huawei.com, hannes@cmpxchg.org, mhocko@suse.com, willy@infradead.org, tglx@linutronix.de, jannh@google.com, tj@kernel.org, linux-mm@kvack.org, kernel-team@fb.com Subject: Re: [PATCH bpf-next v6 2/6] mm, bpf: Introduce free_pages_nolock() Message-ID: References: <20250124035655.78899-1-alexei.starovoitov@gmail.com> <20250124035655.78899-3-alexei.starovoitov@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250124035655.78899-3-alexei.starovoitov@gmail.com> X-Migadu-Flow: FLOW_OUT X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 97051180015 X-Stat-Signature: 8tk1ut1588pfyzi7zh3a5amsesdocyzr X-Rspam-User: X-HE-Tag: 1738088338-821900 X-HE-Meta: U2FsdGVkX19dGpDoJq3BvuS9FduoOYFEbzmkb9NMEqMJTj40Mj9uCwAyiJay9ydj+xPOOd4qP4u0dJ9owuRzGKGnazK+NH3sEkslRBA/8okwS5IiH2ILqYtehTHRUtWT43HsVmJnyRGldq7/5tThEJZEl6uNWJ7+kdhB3dgfH6AGuiWB9sT8oC01EsOCYkw1TgCBFK93TYKjvL1xDLauFYlOR5UvScXTvOmi1MGsCGADorVBCsB77deSKlqJ+AxYF1OX8Zd+YXVV2gvzsg3E4X9nrf/aHgKiZIXSp5MjzPBaeRtVwrP3QkvVL5U/n48VrsSrNRX3qny3W09g1A25PWLSNSX0vWfuO3f30bJuwNJjmAxsobBQlpUIvXR/9j1m+Gkfo9IaP4VAebuI62KlXn3BXTFH9ejgxsr5a9WNcj+tOxNYm51lRymnKBo35gAj2awYWOBy9loqsCPin5RKpJlEWrpRdH5OKvNpbeduvexv8nMDJIroi+DPabQu7SwCqDNQaKW8cE/U4u4C18p6t4ydESfI5DKHgEG/lwl9fcIU7xmdxjkBqENgYg5gUZT2nXvuO4OGcYWE8e/Ts8N/KGzTFIy4Bict92TBkLx5QIlsGyNRhgrx8HHy+jVLPj0p8KX8t4yWHQpIOaZFwM4RqQ8hoJ6rWHXkcUjlVdYl0SrUBu5crwqxjuHpgw4tOpE4GnVCxXI7v8cfg04DhL8nLMmxXzgFh+XGsLOlmq2q/SraBNyahBEzPwTCwtJsaHxPholWTAVeM7TvHgZfAHHbX8Nk8vwwGtzzulmKU0P1beWImlY74drNKw9b9GvZbeoXpbrEYftY5fzc4tmjnd3ZlCM6Z6BQ1US2VHUbHeYoJOqMNGxUHq5DHgFSwEr5dQpAamtHe7YyQKUvPnACUvizxRxBiBg2bNJxlgtjD5aK2kDypv4gCKE+w9xy+0PNuXyaBEoafP9xYzZz6ZWSIjR 7lIVN6gi aw3z7LIzEdkh6ZY+w5M/97nrcOFJ2Kj06MTiCub7uJCJph9sEkWN4k7MozgNWNUXqZRITqnX0i5OiSmu6tSMJvRKRH4aKsIp0+IzxaSJeotTCw5K3MPUDDkrMa8xPrkeX5OuD6eRM/VXgTyx+05Qs3YTiIpdrwhSWqScOPRjiCJwu+wpq+Kh+DLUQPRqeEivFM1wDYp3eCzwI07oVFjHEAnIRwiJVM1m5oUxpT+9deNlxvkCNqJTQmtdMDNy3qlWiVXtm2dBatCd+ZrhOCjsDQUowbNlv3o1Ik7wDfuKFAXey6O0J9e8CyGFLlB6m7L5BSPOkAxO+CR8DnadegeID3WRJgWIkJzPdCudOH9JJZkYYqro= 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: List-Subscribe: List-Unsubscribe: On Thu, Jan 23, 2025 at 07:56:51PM -0800, Alexei Starovoitov wrote: > From: Alexei Starovoitov > > Introduce free_pages_nolock() that can free pages without taking locks. > It relies on trylock and can be called from any context. > Since spin_trylock() cannot be used in PREEMPT_RT from hard IRQ or NMI > it uses lockless link list to stash the pages which will be freed > by subsequent free_pages() from good context. > > Do not use llist unconditionally. BPF maps continuously > allocate/free, so we cannot unconditionally delay the freeing to > llist. When the memory becomes free make it available to the > kernel and BPF users right away if possible, and fallback to > llist as the last resort. > > Acked-by: Vlastimil Babka > Acked-by: Sebastian Andrzej Siewior > Signed-off-by: Alexei Starovoitov Reviewed-by: Shakeel Butt