Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp3098925ioo; Tue, 24 May 2022 13:03:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyzdYAfnhFUAmrrLrQ0fv6Dj3I3W3kiS/WlOx8pp4zu8KjQmLDfCRULf0eq0sWbneq+SOUG X-Received: by 2002:aa7:cb8f:0:b0:42a:e9bd:3b5f with SMTP id r15-20020aa7cb8f000000b0042ae9bd3b5fmr30673541edt.8.1653422627098; Tue, 24 May 2022 13:03:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653422627; cv=none; d=google.com; s=arc-20160816; b=m0hRIYPp1GtsCcoPjNlY2MgzPw7EhpxkzZ0/kU3FSCrfhTjlRKbzk/r495/UAlEYqS hPWxnzZjPug6rZVum4Z6EYbNj92uumvXQS3eyjlCHhgQzEVnA+ZKF+6QCo7tPT1nOHwo louZ1xTPL8XHMbh0ercbaAns5RZbdlwZl6nbUtAyK3vCU7CZcRrmtlq09PVUIjMNKYgu Wb4R/qykwHD4p50ZbHHXbpqxcbVbw97/OrNkrU40uIxKnnMoFzS71osQGMtntFCR8sfk A1fxwiszlBQAIngmv5YI385CCG7Ii9rN4zXzwqWLPmJuSkdlvjO34RnaKknhtlvERDr/ 29uQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature; bh=oPCAh/MbNJ7vTzTZ4OICpOYd9k58HhsAFhhZYJpObms=; b=ftjoj2EcHbkXn6MXlf5lK8AAl117ADvvbrDv8Gpjocxb5Vfl+5ztcJBZp2bE3X5jgp mQG0ILe3kiFP/EMmUoAWj1wrKN7BT4PMnWQ5TVd2L+t5VmUh3EoBpQhm6ZTQWDmMzo4J o2uhiWiTH0CqNTPONhgdtS91vge5OCPhgx7rBe4xigza9w/rLSTrk2X8bWUrD2y+oR/5 XHBFXnc83Y550qhg9qnS3yc4kUOkQJddXC5K/tLyQJ5HyUcr7FCKB/98JNDZ+tah+yEK 9qmS+4ugOhV+aWmwJDnUNl5ZWIn0w2qQRuB1gSFTeDQAY2ZivEO/0vQfABKc6XSFtm7H VZaw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=google header.b=T5qQDbRM; 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=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ne20-20020a1709077b9400b006e7f5e5c677si21444830ejc.969.2022.05.24.13.03.16; Tue, 24 May 2022 13:03:47 -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=@linuxfoundation.org header.s=google header.b=T5qQDbRM; 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=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238782AbiEXPQ7 (ORCPT + 99 others); Tue, 24 May 2022 11:16:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58482 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232684AbiEXPQ4 (ORCPT ); Tue, 24 May 2022 11:16:56 -0400 Received: from mail-oi1-x229.google.com (mail-oi1-x229.google.com [IPv6:2607:f8b0:4864:20::229]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 721911903A for ; Tue, 24 May 2022 08:16:54 -0700 (PDT) Received: by mail-oi1-x229.google.com with SMTP id l84so4424871oif.10 for ; Tue, 24 May 2022 08:16:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=google; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=oPCAh/MbNJ7vTzTZ4OICpOYd9k58HhsAFhhZYJpObms=; b=T5qQDbRM+U5IieOuT0qtFSvOh21ZF62wGaKxGUwtlgHrCMThlJ4Gw8B91aRK5nhj6z tf3F4MNHUJRdtwCO5KyQVrSuhoSvGAW9/0FpJ9aFpULcf/cxjwQr4/cq8KVWICgAFT0O gjrxNVlAu2FnAoO3mV25cFGeGCr3EMHsxwtXU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=oPCAh/MbNJ7vTzTZ4OICpOYd9k58HhsAFhhZYJpObms=; b=DZpdP1TmNXs+cwh0JeV1K5iCMFyKKhGDLR73QR9vWRPNIMiv6MChAsMjnjBKRKlwh0 SOYKx406sEyGk3lCtH5bqUB6/fCnqCI9buZC7fsAPPDGp5BxRWCL5vsjtsY970fYojan P2WamzRNTgOC1Beoqe3IH3GgvilLKyTQxEbzaggjj8dj879Z3nsgfrFYvQOcZmTKW+kl Lwnj9UmncSDAlo52Jxz1iV/REWMTsBU5kfZLeK/FZRo3oN/pERpj8x/DkR5A/+R22vXj kz+BvaMR3HH73Cm40DbXrnZNqp/vQI1VVGO9koHburQMU1U/Nym1BPL2NJdgtrYo28pt BDEw== X-Gm-Message-State: AOAM530M+BjABlnjQxHSWJygtqRhk2VsUJxYUX4fqHVF+LF1jIcgxknh 6lC/mlSga1bgrO4skE2xNBdp8w== X-Received: by 2002:a05:6808:248:b0:32b:6aa:6cbd with SMTP id m8-20020a056808024800b0032b06aa6cbdmr2437182oie.34.1653405413669; Tue, 24 May 2022 08:16:53 -0700 (PDT) Received: from [192.168.1.128] ([38.15.45.1]) by smtp.gmail.com with ESMTPSA id x26-20020a056830245a00b0060afe803e5bsm3972666otr.35.2022.05.24.08.16.52 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 24 May 2022 08:16:53 -0700 (PDT) Subject: Re: [GIT PULL] KUnit update for Linux 5.19-rc1 To: linux-kselftest@vger.kernel.org Cc: Brendan Higgins , shuah , linux-kernel@vger.kernel.org, Shuah Khan , Linus Torvalds References: <76e8af6c-9757-4367-1407-84fbad96cc8d@linuxfoundation.org> From: Shuah Khan Message-ID: Date: Tue, 24 May 2022 09:16:51 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <76e8af6c-9757-4367-1407-84fbad96cc8d@linuxfoundation.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-6.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham 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 5/23/22 12:21 PM, Shuah Khan wrote: > Hi Linus, > > Please pull the following KUnit update for Linux 5.19-rc1. > > This KUnit update for Linux 5.19-rc1 consists of several fixes, cleanups, > and enhancements to tests and framework: > > - introduces _NULL and _NOT_NULL macros to pointer error checks > > - reworks kunit_resource allocation policy to fix memory leaks when >   caller doesn't specify free() function to be used when allocating >   memory using kunit_add_resource() and kunit_alloc_resource() funcs. > > - adds ability to specify suite-level init and exit functions > > diff is attached. > > thanks, > -- Shuah > This bounced from linux-kselftest list as the diff exceeded the message size. Sorry for the noise for others that are seeing this twice (minus the diff). FYI that the following KUnit pull request has been sent for Linux 5.19-rc1 thanks, -- Shuah > ---------------------------------------------------------------- > The following changes since commit 3123109284176b1532874591f7c81f3837bbdc17: > >   Linux 5.18-rc1 (2022-04-03 14:08:21 -0700) > > are available in the Git repository at: > >   git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest tags/linux-kselftest-kunit-5.19-rc1 > > for you to fetch changes up to e7eaffce47b7db72b077630dbe836f0c4132496d: > >   kunit: tool: Use qemu-system-i386 for i386 runs (2022-05-18 17:03:54 -0600) > > ---------------------------------------------------------------- > linux-kselftest-kunit-5.19-rc1 > > This KUnit update for Linux 5.19-rc1 consists of several fixes, cleanups, > and enhancements to tests and framework: > > - introduces _NULL and _NOT_NULL macros to pointer error checks > > - reworks kunit_resource allocation policy to fix memory leaks when >   caller doesn't specify free() function to be used when allocating >   memory using kunit_add_resource() and kunit_alloc_resource() funcs. > > - adds ability to specify suite-level init and exit functions > > ---------------------------------------------------------------- > Brendan Higgins (2): >       kunit: add support for kunit_suites that reference init code >       kunit: tool: update riscv QEMU config with new serial dependency > > Daniel Latypov (25): >       kunit: tool: make --json handling a bit clearer >       kunit: tool: drop unused KernelDirectoryPath var >       kunit: tool: drop last uses of collections.namedtuple >       kunit: tool: simplify code since build_dir can't be None >       kunit: tool: readability tweaks in KernelCI json generation logic >       kunit: tool: refactor how we plumb metadata into JSON >       kunit: tool: properly report the used arch for --json, or '' if not known >       kunit: tool: more descriptive metavars/--help output >       kunit: split resource API from test.h into new resource.h >       kunit: split resource API impl from test.c into new resource.c >       Documentation: kunit: update kconfig options needed for UML coverage >       kunit: rename print_subtest_{start,end} for clarity (s/subtest/suite) >       kunit: add ability to specify suite-level init and exit functions >       kfence: test: use new suite_{init/exit} support, add .kunitconfig >       kunit: fix debugfs code to use enum kunit_status, not bool >       lib/Kconfig.debug: change KUnit tests to default to KUNIT_ALL_TESTS >       kunit: bail out of test filtering logic quicker if OOM >       kunit: tool: update test counts summary line format >       kunit: tool: stop using a shell to run kernel under QEMU >       kunit: tool: print clearer error message when there's no TAP output >       kunit: tool: remove dead parse_crash_in_log() logic >       kunit: tool: make parser stop overwriting status of suites w/ no_tests >       kunit: tool: minor cosmetic cleanups in kunit_parser.py >       kunit: tool: misc cleanups >       kunit: fix executor OOM error handling logic on non-UML > > David Gow (5): >       list: test: Test the hlist structure >       kunit: Make kunit_remove_resource() idempotent >       kunit: Rework kunit_resource allocation policy >       kunit: tool: Add list of all valid test configs on UML >       kunit: tool: Use qemu-system-i386 for i386 runs > > Kees Cook (1): >       kunit: tool: Do not colorize output when redirected > > Marco Elver (1): >       kcsan: test: use new suite_{init,exit} support > > Miguel Ojeda (1): >       kunit: take `kunit_assert` as `const` > > Ricardo Ribalda (6): >       kunit: Introduce _NULL and _NOT_NULL macros >       kunit: use NULL macros >       thunderbolt: test: use NULL macros >       kasan: test: Use NULL macros >       mctp: test: Use NULL macros >       apparmor: test: Use NULL macros > > >  Documentation/dev-tools/kunit/api/index.rst        |   5 + >  Documentation/dev-tools/kunit/api/resource.rst     |  13 + >  Documentation/dev-tools/kunit/running_tips.rst     |   3 +- >  Documentation/dev-tools/kunit/usage.rst            |  19 +- >  drivers/thunderbolt/test.c                         | 134 +++---- >  include/kunit/resource.h                           | 406 ++++++++++++++++++++ >  include/kunit/test.h                               | 418 ++++++--------------- >  kernel/kcsan/kcsan_test.c                          |  31 +- >  lib/Kconfig.debug                                  |  15 +- >  lib/kunit/Makefile                                 |   1 + >  lib/kunit/debugfs.c                                |   2 +- >  lib/kunit/executor.c                               |  32 +- >  lib/kunit/executor_test.c                          |   4 +- >  lib/kunit/kunit-example-test.c                     |  16 + >  lib/kunit/kunit-test.c                             |  37 +- >  lib/kunit/resource.c                               |  79 ++++ >  lib/kunit/test.c                                   | 145 ++----- >  lib/list-test.c                                    | 397 ++++++++++++++++++- >  lib/test_kasan.c                                   |   2 +- >  mm/kfence/.kunitconfig                             |   6 + >  mm/kfence/kfence_test.c                            |  31 +- >  net/mctp/test/route-test.c                         |   4 +- >  security/apparmor/policy_unpack_test.c             |   6 +- >  tools/testing/kunit/configs/all_tests_uml.config   |  37 ++ >  tools/testing/kunit/kunit.py                       |  63 ++-- >  tools/testing/kunit/kunit_config.py                |  21 +- >  tools/testing/kunit/kunit_json.py                  |  66 ++-- >  tools/testing/kunit/kunit_kernel.py                |  81 ++-- >  tools/testing/kunit/kunit_parser.py                | 154 +++----- >  tools/testing/kunit/kunit_tool_test.py             |  44 +-- >  tools/testing/kunit/qemu_config.py                 |  17 +- >  tools/testing/kunit/qemu_configs/alpha.py          |   2 +- >  tools/testing/kunit/qemu_configs/arm.py            |   2 +- >  tools/testing/kunit/qemu_configs/arm64.py          |   2 +- >  tools/testing/kunit/qemu_configs/i386.py           |   4 +- >  tools/testing/kunit/qemu_configs/powerpc.py        |   2 +- >  tools/testing/kunit/qemu_configs/riscv.py          |   7 +- >  tools/testing/kunit/qemu_configs/s390.py           |   4 +- >  tools/testing/kunit/qemu_configs/sparc.py          |   2 +- >  tools/testing/kunit/qemu_configs/x86_64.py         |   2 +- >  tools/testing/kunit/run_checks.py                  |   2 +- >  .../kunit/test_data/test_is_test_passed-crash.log  |  70 ---- >  .../test_is_test_passed-no_tests_no_plan.log       |   2 +- >  43 files changed, 1499 insertions(+), 891 deletions(-) >  create mode 100644 Documentation/dev-tools/kunit/api/resource.rst >  create mode 100644 include/kunit/resource.h >  create mode 100644 lib/kunit/resource.c >  create mode 100644 mm/kfence/.kunitconfig >  create mode 100644 tools/testing/kunit/configs/all_tests_uml.config >  delete mode 100644 tools/testing/kunit/test_data/test_is_test_passed-crash.log > ----------------------------------------------------------------