Received: by 2002:ab2:7a09:0:b0:1f8:46dc:890e with SMTP id k9csp314945lqo; Wed, 15 May 2024 15:55:55 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCUq8atjqu+bvWpKY/rXgIkYncbf5zRjnajOnkSw47IIHsns+mEkZW4sNvlwm7sSVvqgWwIJdmmAn+W0eIGqDbiAtQDJlyZh4gQPDuWt4A== X-Google-Smtp-Source: AGHT+IHyY8Uiytqr9lnUN+k18OZPEOZQ8qNJR3rc8abVofNDcFQy/QJG1U19XKujy/zYKPvZXE4/ X-Received: by 2002:a17:902:6f09:b0:1e3:e1ff:2e79 with SMTP id d9443c01a7336-1ef43f516d5mr169275655ad.45.1715813754871; Wed, 15 May 2024 15:55:54 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1715813754; cv=pass; d=google.com; s=arc-20160816; b=k2aPIExf8uKdWN2oHpt8PZ1sf4LwArPGXeXI4aPyKvtTtV3C2Mb8iyoVW/tW4w88xM t+o++d0mLMaq+2t0yv+dL3gm9FFPecwyvQZbmF26r/kgHSIlgP7MGNkC4WC/GJqoxmbw WpH/3R5+/aDsY9XHdVJPOlDH2NT3bEgfC64n298T5n3H1FSjMBRN5KPJQxV5sKNn72YZ tvGVZXz9I30tX4qMCcrndidICZwenpWNzQhjv4+j8p4iXLQoGIkIYI3JhSFE7Y5dNXjL zdKCqV1+V1J0Zg0mTtUngY0eEsZrAn62LN8/ShK7XebdDUYZ/f3YS71gGDnxH2dND5r9 xY+w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:list-unsubscribe:list-subscribe:list-id:precedence :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=oo8tP2JjIO5kS3+u8DU/4QjZmOqGxW1CPFiQYmO+7XQ=; fh=Vea6EPtEoLuk2A/78Jp3zQNoLW/4SsUxTuOJ/lHoxIo=; b=gFXJ13/c5mP9hQy7VKhBv3k6tLprmNY44zTQhVoK+1Mxgwx81ghcz5rSDCSMzjafF9 o3CWuex9AuT5Qp5x7Keh3v0DoK6qYZ+9l2yEOc0lMyIV9Z4dphoPY2cJSsTDscxCnD7m l/DBEIOtnX3OSQSZPBfB/UB84W6IaXNp8IlEsB8MidncjkTGc1E4e89T95GWqpLmx5Gw PyfHjl8XSf2mT0ACGVJDqhgtG87oJvWUmdBT9mqbOvJ6GE/Ect6eW7acUFwqCy5J0D+K vetC7HpxV+Vy/bUipv5L5j9LwoPAQTBvQSyWycE0xfchJdEFtecllAtRR86U22ymw43u aAnA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@canb.auug.org.au header.s=201702 header.b=MpXxLqcs; arc=pass (i=1 spf=pass spfdomain=canb.auug.org.au dkim=pass dkdomain=canb.auug.org.au dmarc=pass fromdomain=canb.auug.org.au); spf=pass (google.com: domain of linux-kernel+bounces-180459-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-180459-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canb.auug.org.au Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id d9443c01a7336-1ef0c26a4absi2406395ad.587.2024.05.15.15.55.54 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 May 2024 15:55:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-180459-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@canb.auug.org.au header.s=201702 header.b=MpXxLqcs; arc=pass (i=1 spf=pass spfdomain=canb.auug.org.au dkim=pass dkdomain=canb.auug.org.au dmarc=pass fromdomain=canb.auug.org.au); spf=pass (google.com: domain of linux-kernel+bounces-180459-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-180459-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canb.auug.org.au Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 0047A283B28 for ; Wed, 15 May 2024 22:55:22 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 84DF7482E2; Wed, 15 May 2024 22:55:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=canb.auug.org.au header.i=@canb.auug.org.au header.b="MpXxLqcs" Received: from mail.ozlabs.org (gandalf.ozlabs.org [150.107.74.76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EE6463C68C; Wed, 15 May 2024 22:55:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=150.107.74.76 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715813711; cv=none; b=gVramRTwqSf2FStKpPFUmUBFlwO6JvJOpADMau0LlyrJmLx+YQTxwDn9+RG2JoBWFukUw/K5049EZo75L1sKnxT/BxMFVQ4h00Evi+GaOmELIzP753QtNNpKwtD4iqvF5rkZFsp0QkvoJc6IpSHC9Gu/g/IcsOpyGckqpgyITJA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715813711; c=relaxed/simple; bh=o4DgAy62qyJ0nADFKG9xG856wIaWqxAtZHJ9t5cc5SU=; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=W8ZDc/WKh2bbbAsTzzWAetfEtXroYb4V7zbiQXxB0JjW/yNi3yc89NPxZTr4jwZpnHf/Ru1hv21uFeitOgJWD1MSwWI2KGxMtJiBDQU2Krx2b48Q4kBLIlHgKAlNntXS3IF3GUkJouBrWk9Qs6IYqm0A82nyMiB0p23sQWxndi4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=canb.auug.org.au; spf=pass smtp.mailfrom=canb.auug.org.au; dkim=pass (2048-bit key) header.d=canb.auug.org.au header.i=@canb.auug.org.au header.b=MpXxLqcs; arc=none smtp.client-ip=150.107.74.76 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=canb.auug.org.au Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=canb.auug.org.au DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canb.auug.org.au; s=201702; t=1715813707; bh=oo8tP2JjIO5kS3+u8DU/4QjZmOqGxW1CPFiQYmO+7XQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=MpXxLqcsr/gXdzRBKYTTnyyE2Dn4g/Z73Ry0b6qoADkG2uIuCp153biTBK2DI9/CF IFASQLOEcPUkQfzD0LMbwR9WdqSZPl0Kguw9baslpgbW1juaep6ReS6+Xs6KwYLOLw 35yW0BdyFemcgSCGWWglmNHWHP5fNwbyt+BsSw+CBR76+RuNLxtCd0aYfC6i7ETinS MGdV9AU00WnTOPGD+83NJVbbWHb5xHymeCEvUoHxNdt5QJ489jfQRJeGpI01ZSOYYc Qzn6W7S26r9dSIM3x6qPx7c1I2rj18/FF466kggwjBvw7DK+u2rsWVzKFHJg5h/Q0k vZzQJhJ2HwyYA== Received: from authenticated.ozlabs.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.ozlabs.org (Postfix) with ESMTPSA id 4VfpTR0JDtz4wxf; Thu, 16 May 2024 08:55:07 +1000 (AEST) Date: Thu, 16 May 2024 08:55:06 +1000 From: Stephen Rothwell To: Andrew Morton Cc: David Miller , Jakub Kicinski , Paolo Abeni , Networking , Alexander Lobakin , Kent Overstreet , Linux Kernel Mailing List , Linux Next Mailing List , Randy Dunlap , Suren Baghdasaryan , Tony Nguyen Subject: Re: linux-next: manual merge of the net-next tree with the mm tree Message-ID: <20240516085506.6169f45f@canb.auug.org.au> In-Reply-To: <20240516085140.5c654de5@canb.auug.org.au> References: <20240429114302.7af809e8@canb.auug.org.au> <20240516085140.5c654de5@canb.auug.org.au> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/TsITq.qB1112D2X9O+uw5/w"; protocol="application/pgp-signature"; micalg=pgp-sha256 --Sig_/TsITq.qB1112D2X9O+uw5/w Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hi all, On Thu, 16 May 2024 08:51:40 +1000 Stephen Rothwell = wrote: > > On Mon, 29 Apr 2024 11:43:02 +1000 Stephen Rothwell wrote: > > > > Today's linux-next merge of the net-next tree got a conflict in: > >=20 > > include/linux/slab.h > >=20 > > between commit: > >=20 > > 7bd230a26648 ("mm/slab: enable slab allocation tagging for kmalloc an= d friends") > >=20 > > from the mm_unstable branch of the mm tree and commit: > >=20 > > a1d6063d9f2f ("slab: introduce kvmalloc_array_node() and kvcalloc_nod= e()") > >=20 > > from the net-next tree. > >=20 > > This is now a conflict between the mm-stable tree and Linus' tree. But with the revised fixup below, of course. --=20 Cheers, Stephen Rothwell diff --cc include/linux/slab.h index 4cc37ef22aae,d1d1fa5e7983..88426b015faa --- a/include/linux/slab.h +++ b/include/linux/slab.h @@@ -773,40 -744,66 +773,54 @@@ static inline __alloc_size(1, 2) void * * @size: how many bytes of memory are required. * @flags: the type of memory to allocate (see kmalloc). */ -static inline __alloc_size(1) void *kzalloc(size_t size, gfp_t flags) +static inline __alloc_size(1) void *kzalloc_noprof(size_t size, gfp_t fla= gs) { - return kmalloc(size, flags | __GFP_ZERO); + return kmalloc_noprof(size, flags | __GFP_ZERO); } +#define kzalloc(...) alloc_hooks(kzalloc_noprof(__VA_ARGS__)) +#define kzalloc_node(_size, _flags, _node) kmalloc_node(_size, (_flags)|_= _GFP_ZERO, _node) =20 -/** - * kzalloc_node - allocate zeroed memory from a particular memory node. - * @size: how many bytes of memory are required. - * @flags: the type of memory to allocate (see kmalloc). - * @node: memory node from which to allocate - */ -static inline __alloc_size(1) void *kzalloc_node(size_t size, gfp_t flags= , int node) -{ - return kmalloc_node(size, flags | __GFP_ZERO, node); -} +extern void *kvmalloc_node_noprof(size_t size, gfp_t flags, int node) __a= lloc_size(1); +#define kvmalloc_node(...) alloc_hooks(kvmalloc_node_noprof(__VA_ARGS__= )) =20 -extern void *kvmalloc_node(size_t size, gfp_t flags, int node) __alloc_si= ze(1); -static inline __alloc_size(1) void *kvmalloc(size_t size, gfp_t flags) -{ - return kvmalloc_node(size, flags, NUMA_NO_NODE); -} -static inline __alloc_size(1) void *kvzalloc_node(size_t size, gfp_t flag= s, int node) -{ - return kvmalloc_node(size, flags | __GFP_ZERO, node); -} -static inline __alloc_size(1) void *kvzalloc(size_t size, gfp_t flags) -{ - return kvmalloc(size, flags | __GFP_ZERO); -} +#define kvmalloc(_size, _flags) kvmalloc_node(_size, _flags, NUMA_NO_NO= DE) +#define kvmalloc_noprof(_size, _flags) kvmalloc_node_noprof(_size, _flag= s, NUMA_NO_NODE) +#define kvzalloc(_size, _flags) kvmalloc(_size, _flags|__GFP_ZERO) =20 -static inline __alloc_size(1, 2) void * -kvmalloc_array_node(size_t n, size_t size, gfp_t flags, int node) +#define kvzalloc_node(_size, _flags, _node) kvmalloc_node(_size, _flags|_= _GFP_ZERO, _node) + - static inline __alloc_size(1, 2) void *kvmalloc_array_noprof(size_t n, si= ze_t size, gfp_t flags) ++static inline __alloc_size(1, 2) void *kvmalloc_array_node_noprof(size_t = n, size_t size, gfp_t flags, int node) { size_t bytes; =20 if (unlikely(check_mul_overflow(n, size, &bytes))) return NULL; =20 - return kvmalloc_node_noprof(bytes, flags, NUMA_NO_NODE); - return kvmalloc_node(bytes, flags, node); ++ return kvmalloc_node_noprof(bytes, flags, node); + } +=20 ++#define kvmalloc_array_node(...) alloc_hooks(kvmalloc_array_node_noprof(_= _VA_ARGS__)) ++ + static inline __alloc_size(1, 2) void * + kvmalloc_array(size_t n, size_t size, gfp_t flags) + { + return kvmalloc_array_node(n, size, flags, NUMA_NO_NODE); + } ++#define kvmalloc_array_noprof(_n, _size, _flags) kvmalloc_array(_n, _size= , _flags) +=20 + static inline __alloc_size(1, 2) void * + kvcalloc_node(size_t n, size_t size, gfp_t flags, int node) + { - return kvmalloc_array_node(n, size, flags | __GFP_ZERO, node); ++ return kvmalloc_array_node_noprof(n, size, flags | __GFP_ZERO, node); } =20 - #define kvmalloc_array(...) alloc_hooks(kvmalloc_array_noprof(__VA_ARGS= __)) -static inline __alloc_size(1, 2) void *kvcalloc(size_t n, size_t size, gf= p_t flags) -{ - return kvmalloc_array(n, size, flags | __GFP_ZERO); -} +#define kvcalloc(_n, _size, _flags) kvmalloc_array(_n, _size, _flags|__G= FP_ZERO) - #define kvcalloc_noprof(_n, _size, _flags) kvmalloc_array_noprof(_n, _siz= e, _flags|__GFP_ZERO) ++#define kvcalloc_noprof(_n, _size, _flags) kvmalloc_array_node_noprof(_n,= _size, _flags|__GFP_ZERO) =20 -extern void *kvrealloc(const void *p, size_t oldsize, size_t newsize, gfp= _t flags) +extern void *kvrealloc_noprof(const void *p, size_t oldsize, size_t newsi= ze, gfp_t flags) __realloc_size(3); +#define kvrealloc(...) alloc_hooks(kvrealloc_noprof(__VA_ARGS__)) + extern void kvfree(const void *addr); DEFINE_FREE(kvfree, void *, if (_T) kvfree(_T)) =20 --Sig_/TsITq.qB1112D2X9O+uw5/w Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEyBAEBCAAdFiEENIC96giZ81tWdLgKAVBC80lX0GwFAmZFPUoACgkQAVBC80lX 0GwAfwf3bdnCyFNkWI2rog8o8I9W7GGzCO+n+Y3t8qoq8pN2+lkNyOUKGsTvQYmw C0S2o81B1rczgjPM9zJA+wp7KXQdw9ZIq/Ack7h2PThGxwiOpf7tS76E69zV+Td+ V2GmEE/3/KlgcfDMsu0V+DQfTSR9HF96A1O9wnPVsmhGxEEeFWIRuznsepKit7B9 6KDbCzg24gZOaJcA3csImuQ+sTf6SUzpZHyrDmEA0nR7EnlFAKXUppATqA8yAFzR yUhp9Qv5Za2uDvIoBQn+3QIom55zfSvUBcBao3VcyD9H6VwBxzadK6AxUJf1gGsx FqZ/0eBcN6x3RJsn3Gxa+mvE1OzR =/sGT -----END PGP SIGNATURE----- --Sig_/TsITq.qB1112D2X9O+uw5/w--