Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp773013imw; Fri, 8 Jul 2022 11:24:46 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sizjgCWbWyYgKImk29BWT5tgbFyE7J0i8fQ8m/vexk4aO5sLH8/queh9sfnLErnyv3aFIz X-Received: by 2002:a63:1b62:0:b0:411:4722:e712 with SMTP id b34-20020a631b62000000b004114722e712mr4371083pgm.87.1657304686287; Fri, 08 Jul 2022 11:24:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1657304686; cv=none; d=google.com; s=arc-20160816; b=aXsVYTh+M7Ktsam4JIDq78v30qlIG5Em2rgB+DnmX4FlbiNf84gVn4XnRsa0Yv+Do+ BUkPeGxX4KuIRp3OZicJpmdQW30Jrm7gepNqbDChECrQRtVHcrW1fZlAinQ+5cXwcdgg VNnmhDwuPBYryf8xQZS/NcVWf4tvMnA9LZHXWb6iNCxom30K9wWR4cgmRjaolnlUZSKa KZxMVJcukJYd7RnGjsN1yxOMY92eihXZPsQHCvH/IwxuU+CpBI3wtNhFUoWZfJihYLBq IuBGUcAo1nGkcWEZjWN2eqjlO5sUJEq2R35bjYFjl0Se42/ZA0cjHy8r4y1ITPI/rhuz h/rg== 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=97VK5iQW+OLAMctb3bRhnVJI2Dk4NFeFeJbQXMmdP9g=; b=BHNE5hF228QY0HCfQ9l5GD1lxV8aCrn6+wy5JILulBMPT0KZXyFAAWgvNIVaFrkg/k FzMIDQh+7hMOS+pD7nlx0KJ6nz7t/LcrhW5DHuizKd1gqdFwlcv/60JdwqwG6LRrduYd odqjS1UPofZmS9P8BQJqhsU2SbMUkNnyakT8kr27T1vah+s3eesW0HdlEuxyWUiE9nPp Aw8N9iz7uJGEwLPFVA/FfD4jM8SAKzSB86pp7cpWXN6Bl02gxxycWqYkTGnM6DAqtjWY R1MJSLGvb+iX6pT3O+H0mXbrhlo0anbvxUYKiqUsWq66QQ8NsrK2Y8y8dRG/+r2BdWPN Jxjw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=dm7gPCV+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id k70-20020a638449000000b003fd31d844f7si6431750pgd.538.2022.07.08.11.24.31; Fri, 08 Jul 2022 11:24:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=dm7gPCV+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239483AbiGHSXi (ORCPT + 99 others); Fri, 8 Jul 2022 14:23:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41486 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239492AbiGHSXX (ORCPT ); Fri, 8 Jul 2022 14:23:23 -0400 Received: from mail-io1-xd30.google.com (mail-io1-xd30.google.com [IPv6:2607:f8b0:4864:20::d30]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E774B88F23 for ; Fri, 8 Jul 2022 11:23:19 -0700 (PDT) Received: by mail-io1-xd30.google.com with SMTP id n68so4389794iod.3 for ; Fri, 08 Jul 2022 11:23:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=97VK5iQW+OLAMctb3bRhnVJI2Dk4NFeFeJbQXMmdP9g=; b=dm7gPCV+4gyiVAxSxrFBQejGH77CCYpAJBElNtgCngEA5WBI7Yc2n3yywfIFlpcCQd 78g5turygqj6DdxWi3846rwYQBQlX8o9NVT3W8VVAhJUOgBlNd71vpPAVU7MkPRWnoyV mxwci8zjQG/h2zn69Vyv0HFfD7p0oOaFdBVmG/CeXp4vKGkaOR8ntd+QkwJKIvtSKtA3 iDWXSAT7vQ0X1EGvbKQyqsp55ZEhSbF8lpjPQDRJ7aqB5JL0JpaM/9HcziOkPjuENTsi +vuwgM7BUKnDpoiNFCqHK6QcJ8qeVKH6wEXSEvf67S6wPwYcKKbL7mxAZlb01woQqmE6 XTyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=97VK5iQW+OLAMctb3bRhnVJI2Dk4NFeFeJbQXMmdP9g=; b=hvLNY5IhXrbNOI5cFXQ9U+DLXiaF9IxL2CdRvyJepdUEfZAfvJhBcTI3yMYSJ9XB/p PEGgoMQ7U2RCg65mgH5lzoRv7uEQAP/fP3g5etBc5bVEmhK8LQ2uDQE4RJJiypwP0vsU 6s1UrkdvZUUUe64kSKVZEGzlek/d31JcxtmDvIpgzMiaiDS6L8j6JNi++Ex409ogHxUJ mAjnuP8IZRuWW7Z9kDSqWD6gA3vv2WRQ+5Jal86sue7qwrxdOqU0+mpApx50OXY9y6Gs RrDDC5OFyGPuYRUd3d6goorE5C4tJ/RxB8km1OINVgWkmKf+aJ8PNqBKUldruV594pR9 Rwbw== X-Gm-Message-State: AJIora9HPAF03WnZ+fO8ResuRHvGmGTJcEixnfPMRhRgTYhnj79mQB4I /PHO60xMg5FCf5UVvLxUO6zCFjB99woZSxVdLcEuJg== X-Received: by 2002:a02:a105:0:b0:33f:1909:6c82 with SMTP id f5-20020a02a105000000b0033f19096c82mr2997602jag.278.1657304599260; Fri, 08 Jul 2022 11:23:19 -0700 (PDT) MIME-Version: 1.0 References: <20220625050838.1618469-1-davidgow@google.com> <20220625050838.1618469-2-davidgow@google.com> In-Reply-To: <20220625050838.1618469-2-davidgow@google.com> From: Daniel Latypov Date: Fri, 8 Jul 2022 11:23:08 -0700 Message-ID: Subject: Re: [PATCH v3 1/5] kunit: unify module and builtin suite definitions To: David Gow Cc: Brendan Higgins , Luis Chamberlain , Jeremy Kerr , Shuah Khan , Andrew Jeffery , Mika Westerberg , Andra Paraschiv , Longpeng , Greg KH , kunit-dev@googlegroups.com, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?B?TWHDrXJhIENhbmFs?= , linux-mmc@vger.kernel.org, linux-aspeed@lists.ozlabs.org, openbmc@lists.ozlabs.org, linux-usb@vger.kernel.org, linux-modules@vger.kernel.org, Matt Johnston 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_NONE,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 On Fri, Jun 24, 2022 at 10:10 PM David Gow wrote: > diff --git a/include/kunit/test.h b/include/kunit/test.h > index 8ffcd7de9607..54306271cfbf 100644 > --- a/include/kunit/test.h > +++ b/include/kunit/test.h > @@ -250,41 +250,8 @@ static inline int kunit_run_all_tests(void) > } > #endif /* IS_BUILTIN(CONFIG_KUNIT) */ > > -#ifdef MODULE > -/** > - * kunit_test_suites_for_module() - used to register one or more > - * &struct kunit_suite with KUnit. > - * > - * @__suites: a statically allocated list of &struct kunit_suite. > - * > - * Registers @__suites with the test framework. See &struct kunit_suite for > - * more information. > - * > - * If a test suite is built-in, module_init() gets translated into > - * an initcall which we don't want as the idea is that for builtins > - * the executor will manage execution. So ensure we do not define > - * module_{init|exit} functions for the builtin case when registering > - * suites via kunit_test_suites() below. > - */ > -#define kunit_test_suites_for_module(__suites) \ Deleting this bit now causes merge conflicts with Shuah's kunit branch, due to https://patchwork.kernel.org/project/linux-kselftest/patch/20220702040959.3232874-3-davidgow@google.com/ I.e. We added in a MODULE_INFO(test, "Y") in this to-be-deleted section. Perhaps something like this would be a fix? #ifdef MODULE #define _kunit_mark_test_module MODULE_INFO(test, "Y") #else #define _kunit_mark_test_module #endif /* MODULE */ #define __kunit_test_suites(unique_array, unique_suites, ...) \ _kunit_mark_test_module; \ static struct kunit_suite *unique_array[] = { __VA_ARGS__, NULL }; \ static struct kunit_suite **unique_suites \ __used __section(".kunit_test_suites") = unique_array > - static int __init kunit_test_suites_init(void) \ > - { \ > - return __kunit_test_suites_init(__suites); \ > - } \ > - module_init(kunit_test_suites_init); \ > - \ > - static void __exit kunit_test_suites_exit(void) \ > - { \ > - return __kunit_test_suites_exit(__suites); \ > - } \ > - module_exit(kunit_test_suites_exit) > -#else > -#define kunit_test_suites_for_module(__suites) > -#endif /* MODULE */ > - > #define __kunit_test_suites(unique_array, unique_suites, ...) \ > static struct kunit_suite *unique_array[] = { __VA_ARGS__, NULL }; \ > - kunit_test_suites_for_module(unique_array); \ > static struct kunit_suite **unique_suites \ > __used __section(".kunit_test_suites") = unique_array >