Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp2175360rdb; Thu, 7 Dec 2023 23:39:18 -0800 (PST) X-Google-Smtp-Source: AGHT+IG/AdYJOyIdHtYmNnCk+GQkcsh4w6eaVAaRN+iI42oryl/qRjPOILWUfHMwIbKxzWyZQ/Zi X-Received: by 2002:a17:903:2683:b0:1d0:6ffd:e2d1 with SMTP id jf3-20020a170903268300b001d06ffde2d1mr3601877plb.107.1702021158318; Thu, 07 Dec 2023 23:39:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702021158; cv=none; d=google.com; s=arc-20160816; b=FNYgy6R4B7GH/vandXfB+MkV2BUtAvozQJssRVIFgSao+5gBv5li/FsOjlcCUaJx6k pFz9XkWKIhEp6dvbE4PgTBYIif4go+r1ow6j3MUTcqMJtUR2IT5BGL8PLj9ZbffJkH2F 7GfLTBc8i00lMoy2KV82R/GaBZm0/zIS1dQjyTS/0Cyp9O++9hYZY733tJkbfxHLkRbZ Ko9a6M/AEEufhQ1lbsjyV5qAAyQJF7OiNwZ6SxDUEJHLDSlWHP8oSoRB37Osd7nruBZf WyMB2mtJqg6j73hnO/arM5InDIjFwpWO239IFDghtnlxS8UKTWlWryyveJMkkynpLfyo Lrpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=FCkP1UOSFN/6Yv9hZtznqIMqYxp7IUc2r86Qofpf4h4=; fh=mES/7VfJZmApsdxhhs6BdgYhiwl/UCEPsKaFwbwfTjM=; b=LNnjyKonkLpXisTFmHIyhKBebWyMRv2SuZe49CP76N3tYgyLtjEzzazT22oAKRlrZs SfywTM/P0EBid+ad01a9X4ExDYY9rd6LQWJbU12Q0E9H5rf8H5b05qj5pQz5k24ZmmgX K22uW6DK6j1uQQ2Vl0s7afkDtytgedb1C5DQQPlTA9S6/7lBSiF/pHxt0wcXur2HgW35 33CLiPTFfjSzv1VrVsDyvlteZoIKcHFPPrqlhm+Qin+Mbza6hvRMAofyehExc/IS4GDN 1jfRnxyV2tDKzyPEbXeuAuP3K7SC2gwhwk0wO2y84Qbc9jeMi33X83dq8OmC/Nzwldlm 2TgA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b="AxHsxAZ/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id z17-20020a170903019100b001cfee3a03c1si1125308plg.470.2023.12.07.23.39.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Dec 2023 23:39:18 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b="AxHsxAZ/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 1BD4580657C9; Thu, 7 Dec 2023 23:39:17 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1573280AbjLHHjG (ORCPT + 99 others); Fri, 8 Dec 2023 02:39:06 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58890 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1573249AbjLHHjF (ORCPT ); Fri, 8 Dec 2023 02:39:05 -0500 Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2C3571721 for ; Thu, 7 Dec 2023 23:39:11 -0800 (PST) Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-40c32bea30dso30065e9.0 for ; Thu, 07 Dec 2023 23:39:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1702021149; x=1702625949; darn=vger.kernel.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=FCkP1UOSFN/6Yv9hZtznqIMqYxp7IUc2r86Qofpf4h4=; b=AxHsxAZ/xykqhTKH/4qrAOMgBFMUS6FtjwtZwCt2FJ107pcqxjfJe2TEmC7LTkxXb+ rRmw6jAe31h2VQyMtb2IUDm9t9P8hrzRDhIMDR+J+geyyFoOI9QMhR/rJto3YQ3JvgDy Ufli6jeAosTAEhRXe0fviP6h189aLa9SqcyguZfuhLnGIlIoiqGGcPi1xcUedPItOGir Lv1pgYf/N7vI5EcUchnsnJ0JFQtQNtPk1pbSFVOCLY+Cf+v6TCQbmkcNgADIPKzUFL7S zUIvUz1xuWyZakmWucGiOHHSlqoCwv8gIdK2OhGdIefeoGq5TX3WHo8YX/wPtYQPZRk6 OK3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702021149; x=1702625949; h=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=FCkP1UOSFN/6Yv9hZtznqIMqYxp7IUc2r86Qofpf4h4=; b=O+DhmQXv0Q8Zv5BWMxKkPAIgMUQjSJr8E/e0oCqjaEYpTghw/EuvMYgv1v7k6eQGV8 UAJhBsk7nF/h48sUdi3Ykdelt8ztDGYIg6OYJ45JEmCNv0rVmo2CcZwaGNi1L1gPJGv4 8ap17gw+3lSP7V+uKInymJno0DKDk2yTAj3NLy2svDPICLWHs65fUGLCpxRPDvjzPhNt 9Et3JE98wdGD7DlWd404fZrG/sneS2QwhBUrWCq+WqF+fBz6Zxjnx3WToZjyLvYp8oqb TfFk+EaHDgZDLuu6NqGbZx+zxuoTte2UhOrUb0KfteeKahU6lm9RKjhjp+HCeE9uMfEA V0Gg== X-Gm-Message-State: AOJu0Yw6tO/Zx/3mPZQITOqbV/UaEyGClD5kaKptOtgkvIi/2+VEmJTI n2kseIbwFO7oVSUPZAPvYpJ6hDFnFOsrjuFD2Bbwlg== X-Received: by 2002:a05:600c:2941:b0:405:320a:44f9 with SMTP id n1-20020a05600c294100b00405320a44f9mr25035wmd.5.1702021149395; Thu, 07 Dec 2023 23:39:09 -0800 (PST) MIME-Version: 1.0 References: <20231205-kunit_bus-v1-0-635036d3bc13@google.com> <20231205-kunit_bus-v1-2-635036d3bc13@google.com> <202312061306.98DA6D275D@keescook> In-Reply-To: <202312061306.98DA6D275D@keescook> From: David Gow Date: Fri, 8 Dec 2023 15:38:56 +0800 Message-ID: Subject: Re: [PATCH 2/4] fortify: test: Use kunit_device To: Kees Cook Cc: Rae Moar , Brendan Higgins , Greg Kroah-Hartman , Matti Vaittinen , Stephen Boyd , Shuah Khan , Jonathan Corbet , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Maxime Ripard , linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org, linux-sound@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-17.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,USER_IN_DEF_DKIM_WL,USER_IN_DEF_SPF_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 07 Dec 2023 23:39:17 -0800 (PST) On Thu, 7 Dec 2023 at 05:07, Kees Cook wrote: > > On Tue, Dec 05, 2023 at 03:31:34PM +0800, davidgow@google.com wrote: > > Using struct root_device to create fake devices for tests is something > > of a hack. The new struct kunit_device is meant for this purpose, so use > > it instead. > > > > Signed-off-by: David Gow > > --- > > lib/fortify_kunit.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/lib/fortify_kunit.c b/lib/fortify_kunit.c > > index c8c33cbaae9e..f7a1fce8849b 100644 > > --- a/lib/fortify_kunit.c > > +++ b/lib/fortify_kunit.c > > @@ -16,6 +16,7 @@ > > #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt > > > > #include > > +#include > > #include > > #include > > #include > > @@ -269,7 +270,7 @@ DEFINE_ALLOC_SIZE_TEST_PAIR(kvmalloc) > > size_t len; \ > > \ > > /* Create dummy device for devm_kmalloc()-family tests. */ \ > > - dev = root_device_register(dev_name); \ > > + dev = kunit_device_register(test, dev_name); \ > > KUNIT_ASSERT_FALSE_MSG(test, IS_ERR(dev), \ > > "Cannot register test device\n"); \ > > \ > > @@ -303,7 +304,7 @@ DEFINE_ALLOC_SIZE_TEST_PAIR(kvmalloc) > > checker(len, devm_kmemdup(dev, "Ohai", len, gfp), \ > > devm_kfree(dev, p)); \ > > \ > > - device_unregister(dev); \ > > + kunit_device_unregister(test, dev); \ > > } while (0) > > DEFINE_ALLOC_SIZE_TEST_PAIR(devm_kmalloc) > > Acked-by: Kees Cook > > (As an aside; shouldn't this get automatically cleaned up like other > kunit resources, though?) > We can't just get rid of the {kunit_,}device_unregister() here, because otherwise we'd have several devices with the same name during the test. So, yes, these get automatically cleaned up, but the test would have to be restructured to either give each device a different name, or split the tests up further. -- David