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 5CA79CD37AB for ; Tue, 3 Sep 2024 19:22:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9B5E28D01CF; Tue, 3 Sep 2024 15:22:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 965798D016E; Tue, 3 Sep 2024 15:22:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 82DAF8D01CF; Tue, 3 Sep 2024 15:22:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 64FA98D016E for ; Tue, 3 Sep 2024 15:22:38 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 08144408CD for ; Tue, 3 Sep 2024 19:22:38 +0000 (UTC) X-FDA: 82524398796.13.E8E6995 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf27.hostedemail.com (Postfix) with ESMTP id 5D98140006 for ; Tue, 3 Sep 2024 19:22:36 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=kHMge7a1; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf27.hostedemail.com: domain of kees@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=kees@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725391279; a=rsa-sha256; cv=none; b=BHBj3UkiC8N7JadELtJZMBrF2Sg0JovcgnFF1QQ7D0zqwfwSA7bkTAfUOLN18dJeUnpzT3 G5V5aKbGr4882WmznDJtZMq46QvuAiLpFxQyjU48MI8e9ik7T2JPwkZL0Z4wwVYbVpEiFt WOdhGgK320KPfcdxbrsHgUynxaTDnNk= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=kHMge7a1; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf27.hostedemail.com: domain of kees@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=kees@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1725391279; 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=sE8zITAzgauVOd67ymepObfuXg3UcO2EVv8kOWA0yCY=; b=IvNHwvw8x6seGHgCrTDkO6K7dm3eoYGoBUNaHcVZTjF5lRIl1NDfbqwhnCCH0sESCO5+25 QL7TP3mueSmweyaBbc/WIVImn9tIoEEVii16ZpjWV8XICcnWUiHfJVKvdOlkjX86Lkw0oL upDG2cRl9EJwLpFUijTzEa+xMgExRCo= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id D15C75C542F; Tue, 3 Sep 2024 19:22:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0E639C4CEC4; Tue, 3 Sep 2024 19:22:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1725391355; bh=CTj3pW0xhCzokhbK5aIla62gd5xKlrfRVeSNyjndKA0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=kHMge7a1GuPlZ/XAGqkgOdn33nsDnuYfipHOHQmSR7JgGROZ4wHbKldY9l2Z9ZUMQ VE/OTerg6ybSzqvhZjrOkPLws5vtc+rFncJygevc1aitMmT3pVGtlAP0oClC9tf+PO y3W+/D628bPSlVk9s0BAJg+N62uNePcbSoQgTU3wR1JQdTMhedV3OuUdbn/z7G/BLb r4AAZC279Z37y4Xe50NLBdVvS6j2jJ1YFU/KJ2u0ilq6jR791W+qEibVwMHKAWsdWG RJwzGgqFOTNMXD6Acw0bqIC9JfZKF51CJjWvoh543lydmZ9cM5nVDWNrzUO2hPc2Qu odFZCuCpZ90mQ== Date: Tue, 3 Sep 2024 12:22:34 -0700 From: Kees Cook To: Christian Brauner Cc: Vlastimil Babka , Jens Axboe , Jann Horn , Linus Torvalds , Mike Rapoport , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org Subject: Re: [PATCH v2 00/15] slab: add struct kmem_cache_args Message-ID: <202409031220.FECC4BD9@keescook> References: <20240903-work-kmem_cache_args-v2-0-76f97e9a4560@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240903-work-kmem_cache_args-v2-0-76f97e9a4560@kernel.org> X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 5D98140006 X-Stat-Signature: 7dos8d5brg61fgtjb861nksyk4gzouwr X-Rspam-User: X-HE-Tag: 1725391356-253437 X-HE-Meta: U2FsdGVkX1/O6QVdfosrL31/dJOh6C+qPGI5Gh4+8VDzx2221ItEE7Ohvnboi6rIBcmvisxFP/h24/i+IMyWqNp57QVCKe3Lrz3l/bRPdxEpCdkX+qqZcMNY8GeOmBz9NZqrOh2sot4N5ZlmHlzMtI07HI4NVP0+SbP6x7Y2qnUZAAlTn+3gA8MjFewpC5Ds03KPVxnzxi9mM4+vfTpwDkUTzlGvbJ6/GsdVHhkEzFq6xJc1ELiUNXZkEQbUclT4H610iKxzcaZ1hVsWGhWEpy5Y/fkyRzc+F+0NlpSU2RKyLCj8SIrKCvAbnzbfQrcWOSez7RajOwt4wYRdiloEFyl7prZkIi3+drhzmMMy5WO1qHTMDyp90PVfBEjNSpl7asnv0o6DjYoxbV7JzpzFfPQSWzqJ21d5SFXf65dyuVdw01YxLq+mtORCtPgEuCB2ChCiTxJYjePIoHkskbYMjGpQISuD+AzKgQs87Wp7xVrmSVDnrA8szH2IzBOyOEzdJSMYpHp8EO/D8KuDyPsevOUeO3UVkz6vOoZ88d9HGGDlzzakxuI2NgRshS6bGNYfYoq4DmJf8cRx9GotRA+3193LH1gYizUkR0SdcdF/yx5rbSx/CoqKCjUCiKHn8QGWFolieqHZAlrIDd9K4MDDQThplbUDDdM6W5peJyesCph2UQhBKlf39vv4MfZrMNym011aE67lA8Iypt7CvPSxCluXabei45Pjfb/WGYcUIay8F/Mzoxa+JzzvXDzaX/TNYvlT3McQysxBuXO3crMIOt3cuuXUMs+/dHyQWQGBWe1LyR7596Pn2QidbPzdK60r6QvpVZEPdj1me4FRQIoU44gHIa1paP1YSYyYAQpB745iQOG/+TYRP+y+dbhjvCFL7cgA8EI7drk2mpbgHDclQsFgjLrt6c+vVEqjVfL2ywVTeJjNVHS2gxJcdpg/3euSS2rK/gkPG7Z4jklr1Jp dXdcZ6HS bMMdCfFXKL1qlrEISKd+UkodzI6ETAUZh+J/5IJ4s23H/5MKSIQyw2EMIpHPSJvbD5KCGq7XWM6NF12VGk4Gd2ziGf3YDrh4tVr7ggSfLaPaokFxeyZurrKtr8q8//2ZVYpIuQJKXoM6yjbcEjujzReajMLaYAelHozHifmsaBguHVmIacZ0pVTK/wvlV47pp3wbFTTUJ6CvFh/4xwrDhBwqHjav5+2GKS8myrlOg9dT2pImqAkKDGFihMPgQ9kW5y7x4NgL/9zS6NK1YTAatHOyB9abgSuwGH7NiS4tfv3h2Ytu21cdDS9IfHjm/qTtMTycu 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 Tue, Sep 03, 2024 at 04:20:41PM +0200, Christian Brauner wrote: > However, I came up with an alternative using _Generic() to create a > compatibility layer that will call the correct variant of > kmem_cache_create() depending on whether struct kmem_cache_args is > passed or not. That compatibility layer can stay in place until we > updated all calls to be based on struct kmem_cache_args. Very nice! Yeah, this looks good to me. I'd been long pondering something like this for kmalloc itself (though codetags have taken that in a different direction). All the patches look like the right way forward to me: Reviewed-by: Kees Cook -- Kees Cook