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 53692CD1297 for ; Thu, 4 Apr 2024 17:04:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D01606B008C; Thu, 4 Apr 2024 13:04:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CB1EB6B0092; Thu, 4 Apr 2024 13:04:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B7ABD6B0095; Thu, 4 Apr 2024 13:04:48 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 991136B008C for ; Thu, 4 Apr 2024 13:04:48 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 5D18FA0C6F for ; Thu, 4 Apr 2024 17:04:48 +0000 (UTC) X-FDA: 81972473856.13.854BB96 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf02.hostedemail.com (Postfix) with ESMTP id 75C3680005 for ; Thu, 4 Apr 2024 17:04:46 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=SjUt7RDL; spf=none (imf02.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1712250286; 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=4CFp86wmxp1/JViVh6kBybDsWXnT4XZ0nWmOLk8Oyj0=; b=TCisasoIdgmEtxKfGI0Aue1ze0DyBJCR7a3wyRqxvc6HWJgyt2xCdLC74hgNPHx5lvHExq ZvWJzk4HxgWKmG2sVx/QjvYEItZVgJt6zqnvzl0MzojP202OfXF+Rum+HUbi51BeRN6jHx GDMSfeaDxG2K8DKKuDK4hA+qtrsvP0I= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1712250286; a=rsa-sha256; cv=none; b=O0VoqY157zSsapgHL1nkmB/fpdiRkCj57c8MYxW2iq5vVOUs6j0Xe+OT/daGpLL9Yttd4k Uxm0YhzMohL8FXZwv1J+vlsNIqEq8gQqWsDiOo+eGwWGeTadjNqTMRXWGz+XLavLy+Gbt7 W+TU/o+squu0eT0dYMHhUUvtQWLffw8= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=SjUt7RDL; spf=none (imf02.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=4CFp86wmxp1/JViVh6kBybDsWXnT4XZ0nWmOLk8Oyj0=; b=SjUt7RDLy8Dplm6P/4WcYLCDto JdMhwnM8Tzfwk5oJXKCWGBJAd6uhu57bpnCvXTmEXcMrnoqK4t0aD5o1x6FcPoeHZcEwrqQ3FPctY 0c+WEzZJ5fshBqiGEcv3yjtTXOEw5ewWZlAsh9VVpawJuENkQYvgtFXn9rIqLzHRUEv/B4yd9T+NI CKTrHVJsbB0s1mNNR0fevMlZMbCoTmBq3NE6HUw+kdV3qVOaJBosFJH6nZle7fAO04gBwW0zz6Xhl SrnK0b5GjDAXJGIixt3dWRZpcvikm3SkrvW/C/zeVmzHQuuyBVXoYOVj/ba/GG0FEGfYCQOUfddO7 XGjtmthg==; Received: from willy by casper.infradead.org with local (Exim 4.97.1 #2 (Red Hat Linux)) id 1rsQVm-00000008UpK-45BQ; Thu, 04 Apr 2024 17:04:27 +0000 Date: Thu, 4 Apr 2024 18:04:26 +0100 From: Matthew Wilcox To: Suren Baghdasaryan Cc: akpm@linux-foundation.org, joro@8bytes.org, will@kernel.org, trond.myklebust@hammerspace.com, anna@kernel.org, arnd@arndb.de, herbert@gondor.apana.org.au, davem@davemloft.net, jikos@kernel.org, benjamin.tissoires@redhat.com, tytso@mit.edu, jack@suse.com, dennis@kernel.org, tj@kernel.org, cl@linux.com, jakub@cloudflare.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, vbabka@suse.cz, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, iommu@lists.linux.dev, linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org, linux-acpi@vger.kernel.org, acpica-devel@lists.linux.dev, linux-arch@vger.kernel.org, linux-crypto@vger.kernel.org, bpf@vger.kernel.org, linux-input@vger.kernel.org, linux-ext4@vger.kernel.org, linux-mm@kvack.org, netdev@vger.kernel.org, linux-security-module@vger.kernel.org, kent.overstreet@linux.dev Subject: Re: [PATCH 1/1] mm: change inlined allocation helpers to account at the call site Message-ID: References: <20240404165404.3805498-1-surenb@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240404165404.3805498-1-surenb@google.com> X-Stat-Signature: 14ptsd1upfme3ez7wz74cecx3yx9btn4 X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 75C3680005 X-Rspam-User: X-HE-Tag: 1712250286-590043 X-HE-Meta: U2FsdGVkX1/JIPSKdQqmVdYRzAemdxw+pKIURBAF+WB+sLk9Nm7wFD4G8NBxhvORulVQ0JBVh0foQYC4j3SyLRQgrq1DIplCEmER/xgSgNXA13YOj4ucCyPxAWoKQTnW32sde710KS+pxDhKUayA69usboW6UWnUib3cV8Ek0Zu3PpvBFVkoxkSvtA/sJ4KtxBqH13rgmJYx/hRAzW98o+cHeQcPJFLFQXWRD5gsqlbgMd5SEzJi49h4UKKUK5/suF7rJ8Kg1RcLX6TChV/i7v2oq70vlypp2diZxY+rMBAxL+QNT0ozoci/0218tEZg7MFeGG2ceM5oQKA3r5VFHQk2to6UklvIIPC8HRXUCh1Z+6dgE7uph4kUP4kt1px8P+gPIFYyDa+Pp9dRi685d2K0hXCoBBqr0w5RI3mItJkfvJZ0rDfq/PGQu2D7Mhiuz274JTn1jHJu7c7WqzFk2txA3WU6FKqP9f3PHURzfVTlV2u1AY2HH1XsC4pEAu8uXAx86AibjLOI1eHTXBoru3MY2Bwjy7UeBf04G4aYT3zf6f027OVQ7LCdHIX4WN+tMYzfY6gvPKnUjnknZltKZNnjplWS8dzaZcsd0Iz72sUXvsCwKdgRT705kWbT/mjSKyCrHfwQuSDeTw1BQXeNJEvJmyOFdi+bRBYi1T+nWY3NCf8yJA9rw5fVka1fwx3humM4chBslg5R9fvNX2MRaDPf+okSXjNW39J/B+v2allFm87NMsC/l537AB86RU7pGdLZwZGs3YrcdW7LUT6odYZrJ+s4narNEWI0WRNeGYs+eOa88S2mLmohYSRZ+jQtgHf6O+c3mQwjLU8rwtW2Rx5M0c/5Mi1njHqEo7BYyugbbYrMaa4rZadwaEXL0EcjudGthFSyo3fUHq8OCha15YshdRrJkcMBhbSFpUcc5Qj89xHr0ODPrDsKHjoHaumMrtwrITyf/A70hoD3X7T BEEZn95U amuK/Ni4w+KREJmXvT7axPxk+Kc4gxGGFuXDtWeWySygEah9yHaRAqJ6T0aB9C47mOPbXuS6agAyb5E49s65FlyHZuGJe1zvEj8Ir/VIC3ZWE9qagnfDQfOpePt/UdCJjJjAZ0OdKHzeTick= 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, Apr 04, 2024 at 09:54:04AM -0700, Suren Baghdasaryan wrote: > +++ b/include/linux/dma-fence-chain.h > @@ -86,10 +86,7 @@ dma_fence_chain_contained(struct dma_fence *fence) > * > * Returns a new struct dma_fence_chain object or NULL on failure. > */ > -static inline struct dma_fence_chain *dma_fence_chain_alloc(void) > -{ > - return kmalloc(sizeof(struct dma_fence_chain), GFP_KERNEL); > -}; > +#define dma_fence_chain_alloc() kmalloc(sizeof(struct dma_fence_chain), GFP_KERNEL) You've removed some typesafety here. Before, if I wrote: struct page *page = dma_fence_chain_alloc(); the compiler would warn me that I've done something stupid. Now it can't tell. Suggest perhaps: #define dma_fence_chain_alloc() \ (struct dma_fence_chain *)kmalloc(sizeof(struct dma_fence_chain), \ GFP_KERNEL) but maybe there's a better way of doing that. There are a few other occurrences of the same problem in this monster patch. > +++ b/include/linux/hid_bpf.h > @@ -149,10 +149,7 @@ static inline int hid_bpf_connect_device(struct hid_device *hdev) { return 0; } > static inline void hid_bpf_disconnect_device(struct hid_device *hdev) {} > static inline void hid_bpf_destroy_device(struct hid_device *hid) {} > static inline void hid_bpf_device_init(struct hid_device *hid) {} > -static inline u8 *call_hid_bpf_rdesc_fixup(struct hid_device *hdev, u8 *rdesc, unsigned int *size) > -{ > - return kmemdup(rdesc, *size, GFP_KERNEL); > -} > +#define call_hid_bpf_rdesc_fixup(_hdev, _rdesc, _size) kmemdup(_rdesc, *(_size), GFP_KERNEL) here > -static inline handle_t *jbd2_alloc_handle(gfp_t gfp_flags) > -{ > - return kmem_cache_zalloc(jbd2_handle_cache, gfp_flags); > -} > +#define jbd2_alloc_handle(_gfp_flags) kmem_cache_zalloc(jbd2_handle_cache, _gfp_flags) here > +++ b/include/linux/skmsg.h > @@ -410,11 +410,8 @@ void sk_psock_stop_verdict(struct sock *sk, struct sk_psock *psock); > int sk_psock_msg_verdict(struct sock *sk, struct sk_psock *psock, > struct sk_msg *msg); > > -static inline struct sk_psock_link *sk_psock_init_link(void) > -{ > - return kzalloc(sizeof(struct sk_psock_link), > - GFP_ATOMIC | __GFP_NOWARN); > -} > +#define sk_psock_init_link() \ > + kzalloc(sizeof(struct sk_psock_link), GFP_ATOMIC | __GFP_NOWARN) here ... I kind of gave up at this point. You'll want to audit for yourself anyway ;-)