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 60055C83F07 for ; Mon, 7 Jul 2025 15:43:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E37B68D0003; Mon, 7 Jul 2025 11:43:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E0F9B8D0002; Mon, 7 Jul 2025 11:43:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D25718D0003; Mon, 7 Jul 2025 11:43:29 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id BC5778D0002 for ; Mon, 7 Jul 2025 11:43:29 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 6252914019A for ; Mon, 7 Jul 2025 15:43:29 +0000 (UTC) X-FDA: 83637888138.26.D17C9AE Received: from mail-yw1-f169.google.com (mail-yw1-f169.google.com [209.85.128.169]) by imf28.hostedemail.com (Postfix) with ESMTP id 871B9C0016 for ; Mon, 7 Jul 2025 15:43:27 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=dLSYnj5C; spf=pass (imf28.hostedemail.com: domain of ylavic.dev@gmail.com designates 209.85.128.169 as permitted sender) smtp.mailfrom=ylavic.dev@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751903007; 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:dkim-signature; bh=J8J7mBthu19mcZj/JguMENIJNkZ8LvL2vXjI2w8Tuk0=; b=j3CmkBc46CX2Otn4Q4LS4BHaLzsE/Jq8rYv52jLpbJF6KZR+GTo1HQwJs6pxUvaEwlhKww zoEFMnf7Df3CoeL5G/H59v7o8VEZbDjMEKswK8g2JGDz4l65jpXo59XkMKTI7h4M5UO/L4 tA2sT2DYpzi3DvR1l+LYwuAzBQZPqyI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751903007; a=rsa-sha256; cv=none; b=ESmInjwN+/qPpZDCfXBnna+beRyfI/mM0jaUFycxOGPTjmpML3ly0q7fhSGpIX+2nS+URM eozn/+r34+LBZaVVdLZCXjMLGcmesQpIIZuX3qF8IUN8D98LORd68aDlJBRFJyGHwfMo0f vjN+KfFztbup57xcR2oPoclYGlm14xQ= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=dLSYnj5C; spf=pass (imf28.hostedemail.com: domain of ylavic.dev@gmail.com designates 209.85.128.169 as permitted sender) smtp.mailfrom=ylavic.dev@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-yw1-f169.google.com with SMTP id 00721157ae682-711a3dda147so30119917b3.2 for ; Mon, 07 Jul 2025 08:43:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751903006; x=1752507806; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=J8J7mBthu19mcZj/JguMENIJNkZ8LvL2vXjI2w8Tuk0=; b=dLSYnj5CdlqdnomMzE5fRJC4gcxQVguxy1FX4QPsDN6ZLG7u3eQKnVOe1ap2cwmyqP VrnOZ4Ft8ZyUeVdvIbwi/uUaV3an3Dif4ba5wDoeJZFy/ACXRXefAT4XHLwqv3budXXP iLzx6qOphNG750kBWA7FLf0VaYtuQwf18AHdbNKqvD5bBOL0y8ylowKVBVCqBpqwUVvs fFeYXNupmb+RHzJs2qjNvyD/IsOSg2UhPYyanFeod7LV7RyhsYmur1t4R6T/mvO/xSn3 c8ypOXbqLLVHqGqNP7ncOOtPmizN19uIZhYr1KQcfdAEMxGupwcXQaTSeehZut14kkNR qYoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751903006; x=1752507806; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=J8J7mBthu19mcZj/JguMENIJNkZ8LvL2vXjI2w8Tuk0=; b=DXSWPZWUoY/RGrHCZPkVoDdI9Rf6AXvTyjgRvntpd0xhncJnaSaw3JpP2+5Vt++/PF 16Gszpk/wRPxY/e2+qLNXnLInXxKldfXWFroQkoYidKaeF1qpgppOFcsioWgPZ/GrLvO xuFKQitb32zWzxE2muvlRqJ+q8l/Ypi68sp+pjnyOp9bXiH7U8+Tj3C8w+IVeZPhRsLz CdC1XBMtk6UqtN3D+vLjrTTsmDQ2uxPHYh006kyyVBqoHl7WeH7swAGh+kILYF0oC6+D 0sgawPzL6F6FkxQs8H//imRh1KjP70iXhOJhuxWxzqjPWvGz9axWYO2Ph3MFdgNdt+Cd RRhQ== X-Forwarded-Encrypted: i=1; AJvYcCVslXKIIcYvp6jQKjgEcCVhjUL5EE8fa2pwsg0hptBro/p9hqnw+EoZ92u6HKp44oKte3XgQghpeQ==@kvack.org X-Gm-Message-State: AOJu0YwE1X7VuqfUmBu7idRhZ4uXBHmshtiCXv6U8FwtBE8CFf7SxiDM vy469CEhwQ4FBmpvxVBMKo6H/eA61TFSlqpyIjkD4O4T+9K0CvxHM1L5zpne+vmy5mZ+SiwkC7u kmnT+HERskk8rG0W/E3YuPzun1Ge0dIk= X-Gm-Gg: ASbGncskMF0eMI7mgtUbWLaPewWPhKbkUnmJrQWlWJwYY5Ors9oKMs/JJFn0qYmFIYo YSTVfshPByw93dHYQpGG8n0lHiayLkoeHPotRotJdAGqUiBZkpbGJw7YhNCo0aPTOo2ghgX6uP2 /GuovYyfqox6hWNe88OxZRTgftwbqAtgoujVNd1ocTPoJREtbijpVkJY+3xQYIeqWH23wZGs1Ut oav X-Google-Smtp-Source: AGHT+IHqUB9q+QVNbKJo4Uvz5BjRd+loZsudS2WgTk/kpT3zX4uCKd6Exm4IiGxGmfWLlUL4z5y4wWJVU2duqemF/uE= X-Received: by 2002:a05:690c:b1d:b0:70e:2d3d:ace6 with SMTP id 00721157ae682-7176c9f96e9mr123304777b3.15.1751903006482; Mon, 07 Jul 2025 08:43:26 -0700 (PDT) MIME-Version: 1.0 References: <20250704134943.3524829-1-rppt@kernel.org> <20250704134943.3524829-4-rppt@kernel.org> In-Reply-To: From: Yann Ylavic Date: Mon, 7 Jul 2025 17:43:15 +0200 X-Gm-Features: Ac12FXy94qZ_PO7wGP4tzdITQI0MX7kQaRgg6hDYlF5DovWOqRQJpEBlnBEJBtk Message-ID: Subject: Re: [PATCH 3/8] execmem: rework execmem_cache_free() To: Mike Rapoport Cc: Andrew Morton , Andy Lutomirski , Borislav Petkov , Daniel Gomez , Dave Hansen , Ingo Molnar , Luis Chamberlain , Mark Rutland , Masami Hiramatsu , "H. Peter Anvin" , Peter Zijlstra , Petr Pavlu , Sami Tolvanen , Steven Rostedt , Thomas Gleixner , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-modules@vger.kernel.org, linux-trace-kernel@vger.kernel.org, x86@kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 871B9C0016 X-Stat-Signature: 9nrxsd9fe8jdp7efzwyf3x7nhrydahba X-HE-Tag: 1751903007-552807 X-HE-Meta: U2FsdGVkX197M8rN2wxDDRb5vkaof5tnb5y8OrW/6EPxjkpeR+x4LqVsMENa3n3GNLrZrnWmVFclsG99E/pXdG69Nd0YVZ4f0JAngEDR8qwJiMjUB5uk/hFpdIkgCG5iC7+RRG8tUND/SpoEz+d4egVNsSC0GWc/O5ulal4R+ETGKjArruuJWD4tv6g9h/QLvNTQCzM504inCKQpdGmcefFynXA0KWMgi+zEt8sno7R9CwbdoMRKoP9efJ1ue/XrvJjjn1BspOKvH15t2lheD7qTGceRCH8HutSAMbrWUf+Vq387zsy5I5350mkZgYIQCFTOcu2VraVo24tsPvAKGdLQKvrxywmFHaUbYR95m0Fz44/tyiHEMnBFkKdAmAX53Qe86IJxMPewigVbVEO6NJaNOxW8jJddwu6mx2NmwJ0338x8OgJxhdlswCRAhOy1xS9LlXFGrDHnMCgIcMDmiBb17eEJdcFpk/F7/T1oDegc2KLmqQ3OxbIyXI4Jb7wpyBt9FfOgs7TYlvVk5rzRi0+Zzc619jFXU1qthZipT0hVrLK0uxjPLk24MKe6UghIK2hqU24uBm6KDCK+lY1hVRzjU/ENeFM/iV4W0aUe3hTBit+v9SxWdkWXYnhMYPsVkY3BmCd3Ary+KpEw961XWjfQL6idTsBZQEyu2g5qnVGSI46ozQy55JuXR68BKercxQOTVLotayf6k66lkSw/iQqDZF+2LgbkNaSBxL+ZqEX4fljMnE0Wz3S8MSy/DSpHrRAVJ42bXeNLSz/rNe8vkXafAufJz2HFGg9atr23y/wflSMQA8UzPPOB02IJTV2nEw8/XT6PMOuPMWEQkSRhe/WG0w/kzA1HC2nKvUAnkT/FKIKIcLFIXmTniKzpEl0GtnrFcpUELmUQsfZdQOw60qFR3DzNve9O5JyzSQb/xTSd3MiIB9MK5co7lLRn5KBJfW2ytREB4bQX55FWa7R dsZ0+rIF KdkCC/XbGilK7RtUFg5e3iydqdUV7DQ14/YTa/hj9y69pzyyZECAyjJkG5KvkEfWhEMMP7QEbklYWMGPj0BWgv6HD2mAiwpR1HKHD+8E386os7J7qjd4ItgBnbpOWagy+zH/7aT2ClztpfajsK8ravtAg1T7/ZCM45k0HJsxyEJAg48Men9dsfG3pWwxxg1mhm46WTA36uSHtgXunlDh8YwkkafRfdemajknfUyBJShko9vqKsonhFjOFlBCDvyulViXlFs1TRvvhQlxh1QyaiYcC9zLNH3agP7id6SE7nmZUrdUJpYI30/Xile0XH+AgMQ0k2mSZaJGDb/ENKz6aafgUeyZH7LV2sna755WpPQcyPTEMtSu4SSjYADZeucyEdkpGZgTwaYJFbIUBSK6Rtjf+YlRFbwyKvTLAeo46m5/JS15OkJyH3Tmwyaus/CWZhsCVp5hpFkkKlr5Vp2XpzupvoLgQakweM2SuVe8+LcDLcgA= 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 Mon, Jul 7, 2025 at 5:32=E2=80=AFPM Yann Ylavic w= rote: > > On Fri, Jul 4, 2025 at 3:54=E2=80=AFPM Mike Rapoport wr= ote: > > + > > +static void execmem_cache_free_slow(struct work_struct *work) > > +{ > > + struct maple_tree *busy_areas =3D &execmem_cache.busy_areas; > > + MA_STATE(mas, busy_areas, 0, ULONG_MAX); > > + void *area; > > + > > + guard(mutex)(&execmem_cache.mutex); > > + > > + if (!execmem_cache.pending_free_cnt) > > + return; > > + > > + mas_for_each(&mas, area, ULONG_MAX) { > > + if (!is_pending_free(area)) > > + continue; > > + > > + pending_free_clear(area); > > Probably: > area =3D pending_free_clear(area); > ? Likewise in execmem_cache_free_slow() btw. > > > + if (__execmem_cache_free(&mas, area, GFP_KERNEL)) > > + continue; > > + > > + execmem_cache.pending_free_cnt--; > > + } > > + > > + if (execmem_cache.pending_free_cnt) > > + schedule_delayed_work(&execmem_cache_free_work, FREE_DE= LAY); > > + else > > + schedule_work(&execmem_cache_clean_work); > > +} > > > Regards; > Yann.