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 E88D6EE49AB for ; Tue, 22 Aug 2023 18:29:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 62980280058; Tue, 22 Aug 2023 14:29:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5D988280053; Tue, 22 Aug 2023 14:29:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4A0F0280058; Tue, 22 Aug 2023 14:29:02 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 3C46D280053 for ; Tue, 22 Aug 2023 14:29:02 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 12708A0376 for ; Tue, 22 Aug 2023 18:29:02 +0000 (UTC) X-FDA: 81152577324.20.C28B1EF Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf08.hostedemail.com (Postfix) with ESMTP id 70301160021 for ; Tue, 22 Aug 2023 18:28:58 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=ccrrsO6F; dmarc=none; spf=none (imf08.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1692728939; 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=a15U4MejTFPZxXdAjLchlRcmwqjq8ec43bcazCol0I8=; b=bYiKudI7U+tI3TrR1OZYK0GPA1NiYWwW0CFrynU6ccc2N0AXtyoEqhIenjZhiNGzkaqAkU NN37AhAjpf0zXg5TGfKOTzxCA1W5jmodtRhrcRRrDYH5Bfc/764n3OpKvSN7rwIOwTMDk8 rwQJEIOmpFbSc473Rk7//B/pa8/ANWo= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=ccrrsO6F; dmarc=none; spf=none (imf08.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1692728939; a=rsa-sha256; cv=none; b=hbBaB+vo+N94jW5n5w8F+IZoLzNoiP4vsdFGKMUeTVjZh+Pxzx/5lIXbU7Xa1ChsD5XTBk Ovg6+3+S2uD6o/zqD4+HVnpNKJyKHwRWAoGNRro0i8j6LR+s49XYu1eX/Vh7+1YoZBIO7+ H9lEEfzsmvuarHvaS8fKo/CW0W+ZWew= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Transfer-Encoding: Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=a15U4MejTFPZxXdAjLchlRcmwqjq8ec43bcazCol0I8=; b=ccrrsO6FaMUwmvMuoxI2mJa9/6 nGglbUdgn6XwvHEbUQ9rbGnJWCCX/W/SwJl7g/yxNVdUe3N4VyLMhkDdEeJb5hv4HpdPEiewDna+4 g0/P34NZgeERT8XmTOAk9J20tMvbE9E4j3tfaPUO9cH4Q+XD3NQ4WXGU7GDnDs7suQe0GF8D+1kHz zQsuTqmuXsMcJ+tqDrTjWn16C3EjnfdDpHo8qYaD7h7MknHn/SIUBdyxFHuwoPstdKoG4Q1ufwCdt VZdpSkkzwGHUj7vFLDQ3fCotCRWnAFndZI5yjSlSuCanY62XOG2eyEsfjV7JkcYXJGGKxilBt6uSA P6ofLqSQ==; Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1qYW73-000F0d-Gp; Tue, 22 Aug 2023 18:28:21 +0000 Date: Tue, 22 Aug 2023 19:28:21 +0100 From: Matthew Wilcox To: Chris Li Cc: Mel Gorman , Andrew Morton , Kemeng Shi , baolin.wang@linux.alibaba.com, Michal Hocko , david@redhat.com, linux-mm@kvack.org, Namhyung Kim , Greg Thelen , linux-kernel@vger.kernel.org, John Sperbeck , Huang Ying , Alexei Starovoitov Subject: Re: [PATCH RFC 0/2] mm/page_alloc: free_pcppages_bulk safeguard Message-ID: References: <20230817-free_pcppages_bulk-v1-0-c14574a9f80c@kernel.org> <20230821103225.qntnsotdzuthxn2y@techsingularity.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 70301160021 X-Stat-Signature: dumirrfa74ui5toxxdk6kqtjjuapjaj4 X-HE-Tag: 1692728938-500598 X-HE-Meta: U2FsdGVkX19K+UrJJNUBkuKinxjrpEZsAwwLVHqYjcO0dH3vy18pYgy57OSUFKeGe8T3ml+btyZUiZAfPBuZYMp+00Fy3DURESEFlAVJjhLicJTLAFDtuA5gtCr93Bz7xwHbJSSlvKx8pHj7cCA+WVHIp9wJ6RKq4kKkpvSOuB+zFwMm0WaeDBzL1syFWc0oCYCv7HpNXcGvEqjwiWD99i12cIlgOPQihM4HiDesWPXV9eI9dzpUT8RsIJ6p/eH895E6aqWF6ZbNjeiaMxIcRMfr9Yv0SveMceRi3dGqJOo/FHVoB/hu01z0enVFJGncploeMSJufLTRw3ywmJzUtnDaaea1JsB6IHsArmWr2LeSXzLr6QlPFnYJkzG2uHKodC/eMDvSsLWuhdO/i8LFkSZYlTCeIDNYbex04NEIEstt2EM3p3UBTRCGFUNgWefOy9K0p4G/u05CaDbKONNRIg8yzZhGnLRJ1oPebMK+EliBa6eN9KI3bEOyN14kNn+wwzHV0BeEG52SRbqbLUV13yigjQ6fAMuBrT5PbGgSjL+d8p9TFirmNNTNXWl2jb96cdjmhCLasUzomq8bSee8pe2SuORNt76ZrkkvY8Kis1SdqrKJfqvCpsS6x3TXGab6XMjKpkgvuW4lMgr1HNQzRe0T+kD2i+Tf7SsE8WsMP2Y9Xv6+xHG9TQGdfltfr2hM8FMcDdGM/0MJacvrXmBGl2VcfyB8+ZAIUHbY1RnSWopOVws9yGvKl+e5JUfVo7nDcpAfib8+A7P3KIk9Lq9So0bWgrnuiCusjdW0g/aFGjGXbHBV1cNTeiZ5aOF4mUSSRWUEgdfzkZjxaNROab5o3b6+7qGWlN85D97hWKnacm8+5+j7k6+knI0/4j8mHxdXi1tRmm8401sdR6xB5P3d4iuyRk0QwKg3/5ONXEld4Oni26m5YqPHU2C93Dc1Py6oaFAbi8rxXtx5Poxtjfq ofYqSnAX n5NRyibduLicNAe4MYrgWqWSn4GK/4TAC7XGgaqKlPs/VN0XEbh0EH0Cv7OkwXSYzuR/loancnkWHp/6wlw0Hs8vqpZvDG5JAk7fDlxciWi+gmL/RV2/OyUo++dXvgzaFnnjO2Tk7cmdiNdzUb/X+KMzy3ZMaoliOKIjduinPIirnkyXyz0hjgRFjomBvRxChBuxmmNTNwLBHy8n5wHxJOy6/XrdAgiHHoPENpQSXEo78j9e4uyhSbXVxVrQQMaSOqiMGmPxVHLbSxxYh38YVLCoYq5xgqfzQ6EiYYSCLgxG8lMY= 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: On Tue, Aug 22, 2023 at 10:48:42AM -0700, Chris Li wrote: > Hi Mel, > > Adding Alexei to the discussion. > > On Mon, Aug 21, 2023 at 3:32 AM Mel Gorman wrote: > > > > On Thu, Aug 17, 2023 at 11:05:22PM -0700, Chris Li wrote: > > > In this patch series I want to safeguard > > > the free_pcppage_bulk against change in the > > > pcp->count outside of this function. e.g. > > > by BPF program inject on the function tracepoint. > > > > > > I break up the patches into two seperate patches > > > for the safeguard and clean up. > > > > > > Hopefully that is easier to review. > > > > > > Signed-off-by: Chris Li > > > > This sounds like a maintenance nightmare if internal state can be arbitrary > > modified by a BPF program and still expected to work properly in all cases. > > Every review would have to take into account "what if a BPF script modifies > > state behind our back?" > > Thanks for the feedback. > > I agree that it is hard to support if we allow BPF to change any internal > stage as a rule. That is why it is a RFC. Would you consider it case > by case basis? > The kernel panic is bad, the first patch is actually very small. I can > also change it > to generate warnings if we detect the inconsistent state. We wouldn't allow C code that hooks spinlocks (eg lockdep) to allocate memory. I don't understand why BPF code should allocate memory either.