Convert this very simple smoke test to a KUnit test.
Signed-off-by: Tamir Duberstein tamird@gmail.com --- I tested this using:
$ tools/testing/kunit/kunit.py run --arch arm64 --make_options LLVM=1 --kconfig_add CONFIG_NET=y blackholedev --- lib/Kconfig.debug | 20 +++++----- lib/Makefile | 2 +- ...{test_blackhole_dev.c => blackhole_dev_kunit.c} | 45 ++++++++-------------- tools/testing/selftests/net/Makefile | 2 +- tools/testing/selftests/net/test_blackhole_dev.sh | 11 ------ 5 files changed, 28 insertions(+), 52 deletions(-)
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 1af972a92d06..238321830993 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -2557,15 +2557,6 @@ config TEST_BPF
If unsure, say N.
-config TEST_BLACKHOLE_DEV - tristate "Test blackhole netdev functionality" - depends on m && NET - help - This builds the "test_blackhole_dev" module that validates the - data path through this blackhole netdev. - - If unsure, say N. - config FIND_BIT_BENCHMARK tristate "Test find_bit functions" help @@ -2888,6 +2879,17 @@ config USERCOPY_KUNIT_TEST on the copy_to/from_user infrastructure, making sure basic user/kernel boundary testing is working.
+config BLACKHOLE_DEV_KUNIT_TEST + tristate "Test blackhole netdev functionality" if !KUNIT_ALL_TESTS + depends on NET + depends on KUNIT + default KUNIT_ALL_TESTS + help + This builds the "blackhole_dev_kunit" module that validates the + data path through this blackhole netdev. + + If unsure, say N. + config TEST_UDELAY tristate "udelay test driver" help diff --git a/lib/Makefile b/lib/Makefile index d5cfc7afbbb8..19ff6993c2bc 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -102,7 +102,6 @@ obj-$(CONFIG_TEST_RUNTIME) += tests/ obj-$(CONFIG_TEST_DEBUG_VIRTUAL) += test_debug_virtual.o obj-$(CONFIG_TEST_MEMCAT_P) += test_memcat_p.o obj-$(CONFIG_TEST_OBJAGG) += test_objagg.o -obj-$(CONFIG_TEST_BLACKHOLE_DEV) += test_blackhole_dev.o obj-$(CONFIG_TEST_MEMINIT) += test_meminit.o obj-$(CONFIG_TEST_LOCKUP) += test_lockup.o obj-$(CONFIG_TEST_HMM) += test_hmm.o @@ -393,6 +392,7 @@ obj-$(CONFIG_FORTIFY_KUNIT_TEST) += fortify_kunit.o obj-$(CONFIG_CRC_KUNIT_TEST) += crc_kunit.o obj-$(CONFIG_SIPHASH_KUNIT_TEST) += siphash_kunit.o obj-$(CONFIG_USERCOPY_KUNIT_TEST) += usercopy_kunit.o +obj-$(CONFIG_BLACKHOLE_DEV_KUNIT_TEST) += blackhole_dev_kunit.o
obj-$(CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED) += devmem_is_allowed.o
diff --git a/lib/test_blackhole_dev.c b/lib/blackhole_dev_kunit.c similarity index 70% rename from lib/test_blackhole_dev.c rename to lib/blackhole_dev_kunit.c index ec290ac2a0d9..f8f5184d5b43 100644 --- a/lib/test_blackhole_dev.c +++ b/lib/blackhole_dev_kunit.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 /* - * This module tests the blackhole_dev that is created during the + * This tests the blackhole_dev that is created during the * net subsystem initialization. The test this module performs is * by injecting an skb into the stack with skb->dev as the * blackhole_dev and expects kernel to behave in a sane manner @@ -9,9 +9,8 @@ * Copyright (c) 2018, Mahesh Bandewar maheshb@google.com */
-#include <linux/init.h> +#include <kunit/test.h> #include <linux/module.h> -#include <linux/printk.h> #include <linux/skbuff.h> #include <linux/netdevice.h> #include <linux/udp.h> @@ -25,17 +24,15 @@
#define UDP_PORT 1234
-static int __init test_blackholedev_init(void) +static void test_blackholedev(struct kunit *test) { struct ipv6hdr *ip6h; struct sk_buff *skb; struct udphdr *uh; int data_len; - int ret;
skb = alloc_skb(SKB_SIZE, GFP_KERNEL); - if (!skb) - return -ENOMEM; + KUNIT_ASSERT_NOT_NULL(test, skb);
/* Reserve head-room for the headers */ skb_reserve(skb, HEAD_SIZE); @@ -68,32 +65,20 @@ static int __init test_blackholedev_init(void) skb->dev = blackhole_netdev;
/* Now attempt to send the packet */ - ret = dev_queue_xmit(skb); - - switch (ret) { - case NET_XMIT_SUCCESS: - pr_warn("dev_queue_xmit() returned NET_XMIT_SUCCESS\n"); - break; - case NET_XMIT_DROP: - pr_warn("dev_queue_xmit() returned NET_XMIT_DROP\n"); - break; - case NET_XMIT_CN: - pr_warn("dev_queue_xmit() returned NET_XMIT_CN\n"); - break; - default: - pr_err("dev_queue_xmit() returned UNKNOWN(%d)\n", ret); - } - - return 0; + KUNIT_EXPECT_EQ(test, dev_queue_xmit(skb), NET_XMIT_SUCCESS); }
-static void __exit test_blackholedev_exit(void) -{ - pr_warn("test_blackholedev module terminating.\n"); -} +static struct kunit_case blackholedev_cases[] = { + KUNIT_CASE(test_blackholedev), + {}, +}; + +static struct kunit_suite blackholedev_suite = { + .name = "blackholedev", + .test_cases = blackholedev_cases, +};
-module_init(test_blackholedev_init); -module_exit(test_blackholedev_exit); +kunit_test_suite(blackholedev_suite);
MODULE_AUTHOR("Mahesh Bandewar maheshb@google.com"); MODULE_DESCRIPTION("module test of the blackhole_dev"); diff --git a/tools/testing/selftests/net/Makefile b/tools/testing/selftests/net/Makefile index 73ee88d6b043..afa4bcdc5833 100644 --- a/tools/testing/selftests/net/Makefile +++ b/tools/testing/selftests/net/Makefile @@ -7,7 +7,7 @@ CFLAGS += -I../../../../usr/include/ $(KHDR_INCLUDES) CFLAGS += -I../
TEST_PROGS := run_netsocktests run_afpackettests test_bpf.sh netdevice.sh \ - rtnetlink.sh xfrm_policy.sh test_blackhole_dev.sh + rtnetlink.sh xfrm_policy.sh TEST_PROGS += fib_tests.sh fib-onlink-tests.sh pmtu.sh udpgso.sh ip_defrag.sh TEST_PROGS += udpgso_bench.sh fib_rule_tests.sh msg_zerocopy.sh psock_snd.sh TEST_PROGS += udpgro_bench.sh udpgro.sh test_vxlan_under_vrf.sh reuseport_addr_any.sh diff --git a/tools/testing/selftests/net/test_blackhole_dev.sh b/tools/testing/selftests/net/test_blackhole_dev.sh deleted file mode 100755 index 3119b80e711f..000000000000 --- a/tools/testing/selftests/net/test_blackhole_dev.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -# SPDX-License-Identifier: GPL-2.0 -# Runs blackhole-dev test using blackhole-dev kernel module - -if /sbin/modprobe -q test_blackhole_dev ; then - /sbin/modprobe -q -r test_blackhole_dev; - echo "test_blackhole_dev: ok"; -else - echo "test_blackhole_dev: [FAIL]"; - exit 1; -fi
--- base-commit: 2014c95afecee3e76ca4a56956a936e23283f05b change-id: 20250207-blackholedev-kunit-convert-9a52a1a1a032
Best regards,
Hi Tamir,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 2014c95afecee3e76ca4a56956a936e23283f05b]
url: https://github.com/intel-lab-lkp/linux/commits/Tamir-Duberstein/blackhole_de... base: 2014c95afecee3e76ca4a56956a936e23283f05b patch link: https://lore.kernel.org/r/20250207-blackholedev-kunit-convert-v1-1-8ef0dc1ff... patch subject: [PATCH] blackhole_dev: convert self-test to KUnit config: riscv-randconfig-r123-20250208 (https://download.01.org/0day-ci/archive/20250209/202502090248.Ed6S8p8J-lkp@i...) compiler: riscv64-linux-gcc (GCC) 14.2.0 reproduce: (https://download.01.org/0day-ci/archive/20250209/202502090248.Ed6S8p8J-lkp@i...)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot lkp@intel.com | Closes: https://lore.kernel.org/oe-kbuild-all/202502090248.Ed6S8p8J-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
lib/blackhole_dev_kunit.c:55:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] payload_len @@ got unsigned long @@
lib/blackhole_dev_kunit.c:55:27: sparse: expected restricted __be16 [usertype] payload_len lib/blackhole_dev_kunit.c:55:27: sparse: got unsigned long
vim +55 lib/blackhole_dev_kunit.c
509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 26 a644885645ce867 lib/blackhole_dev_kunit.c Tamir Duberstein 2025-02-07 27 static void test_blackholedev(struct kunit *test) 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 28 { 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 29 struct ipv6hdr *ip6h; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 30 struct sk_buff *skb; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 31 struct udphdr *uh; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 32 int data_len; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 33 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 34 skb = alloc_skb(SKB_SIZE, GFP_KERNEL); a644885645ce867 lib/blackhole_dev_kunit.c Tamir Duberstein 2025-02-07 35 KUNIT_ASSERT_NOT_NULL(test, skb); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 36 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 37 /* Reserve head-room for the headers */ 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 38 skb_reserve(skb, HEAD_SIZE); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 39 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 40 /* Add data to the skb */ 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 41 data_len = SKB_SIZE - (HEAD_SIZE + TAIL_SIZE); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 42 memset(__skb_put(skb, data_len), 0xf, data_len); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 43 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 44 /* Add protocol data */ 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 45 /* (Transport) UDP */ 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 46 uh = (struct udphdr *)skb_push(skb, sizeof(struct udphdr)); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 47 skb_set_transport_header(skb, 0); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 48 uh->source = uh->dest = htons(UDP_PORT); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 49 uh->len = htons(data_len); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 50 uh->check = 0; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 51 /* (Network) IPv6 */ 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 52 ip6h = (struct ipv6hdr *)skb_push(skb, sizeof(struct ipv6hdr)); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 53 skb_set_network_header(skb, 0); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 54 ip6h->hop_limit = 32; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 @55 ip6h->payload_len = data_len + sizeof(struct udphdr); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 56 ip6h->nexthdr = IPPROTO_UDP; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 57 ip6h->saddr = in6addr_loopback; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 58 ip6h->daddr = in6addr_loopback; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 59 /* Ether */ 843a8851e89e2e8 lib/test_blackhole_dev.c Breno Leitao 2024-02-02 60 skb_push(skb, sizeof(struct ethhdr)); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 61 skb_set_mac_header(skb, 0); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 62 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 63 skb->protocol = htons(ETH_P_IPV6); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 64 skb->pkt_type = PACKET_HOST; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 65 skb->dev = blackhole_netdev; 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 66 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 67 /* Now attempt to send the packet */ a644885645ce867 lib/blackhole_dev_kunit.c Tamir Duberstein 2025-02-07 68 KUNIT_EXPECT_EQ(test, dev_queue_xmit(skb), NET_XMIT_SUCCESS); 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 69 } 509e56b37cc32c9 lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 70
Hi Tamir,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 2014c95afecee3e76ca4a56956a936e23283f05b]
url: https://github.com/intel-lab-lkp/linux/commits/Tamir-Duberstein/blackhole_de... base: 2014c95afecee3e76ca4a56956a936e23283f05b patch link: https://lore.kernel.org/r/20250207-blackholedev-kunit-convert-v1-1-8ef0dc1ff... patch subject: [PATCH] blackhole_dev: convert self-test to KUnit config: i386-randconfig-062-20250208 (https://download.01.org/0day-ci/archive/20250209/202502090223.qCYMBjWT-lkp@i...) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250209/202502090223.qCYMBjWT-lkp@i...)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot lkp@intel.com | Closes: https://lore.kernel.org/oe-kbuild-all/202502090223.qCYMBjWT-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
lib/blackhole_dev_kunit.c:55:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] payload_len @@ got unsigned int @@
lib/blackhole_dev_kunit.c:55:27: sparse: expected restricted __be16 [usertype] payload_len lib/blackhole_dev_kunit.c:55:27: sparse: got unsigned int
vim +55 lib/blackhole_dev_kunit.c
509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 26 a644885645ce86 lib/blackhole_dev_kunit.c Tamir Duberstein 2025-02-07 27 static void test_blackholedev(struct kunit *test) 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 28 { 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 29 struct ipv6hdr *ip6h; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 30 struct sk_buff *skb; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 31 struct udphdr *uh; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 32 int data_len; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 33 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 34 skb = alloc_skb(SKB_SIZE, GFP_KERNEL); a644885645ce86 lib/blackhole_dev_kunit.c Tamir Duberstein 2025-02-07 35 KUNIT_ASSERT_NOT_NULL(test, skb); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 36 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 37 /* Reserve head-room for the headers */ 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 38 skb_reserve(skb, HEAD_SIZE); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 39 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 40 /* Add data to the skb */ 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 41 data_len = SKB_SIZE - (HEAD_SIZE + TAIL_SIZE); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 42 memset(__skb_put(skb, data_len), 0xf, data_len); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 43 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 44 /* Add protocol data */ 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 45 /* (Transport) UDP */ 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 46 uh = (struct udphdr *)skb_push(skb, sizeof(struct udphdr)); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 47 skb_set_transport_header(skb, 0); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 48 uh->source = uh->dest = htons(UDP_PORT); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 49 uh->len = htons(data_len); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 50 uh->check = 0; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 51 /* (Network) IPv6 */ 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 52 ip6h = (struct ipv6hdr *)skb_push(skb, sizeof(struct ipv6hdr)); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 53 skb_set_network_header(skb, 0); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 54 ip6h->hop_limit = 32; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 @55 ip6h->payload_len = data_len + sizeof(struct udphdr); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 56 ip6h->nexthdr = IPPROTO_UDP; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 57 ip6h->saddr = in6addr_loopback; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 58 ip6h->daddr = in6addr_loopback; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 59 /* Ether */ 843a8851e89e2e lib/test_blackhole_dev.c Breno Leitao 2024-02-02 60 skb_push(skb, sizeof(struct ethhdr)); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 61 skb_set_mac_header(skb, 0); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 62 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 63 skb->protocol = htons(ETH_P_IPV6); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 64 skb->pkt_type = PACKET_HOST; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 65 skb->dev = blackhole_netdev; 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 66 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 67 /* Now attempt to send the packet */ a644885645ce86 lib/blackhole_dev_kunit.c Tamir Duberstein 2025-02-07 68 KUNIT_EXPECT_EQ(test, dev_queue_xmit(skb), NET_XMIT_SUCCESS); 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 69 } 509e56b37cc32c lib/test_blackhole_dev.c Mahesh Bandewar 2019-07-01 70
On Fri, Feb 07, 2025 at 06:38:41PM -0500, Tamir Duberstein wrote:
Convert this very simple smoke test to a KUnit test.
Hi Tamir,
I think some text explaining why this change is being made is warranted here.
Signed-off-by: Tamir Duberstein tamird@gmail.com
I tested this using:
$ tools/testing/kunit/kunit.py run --arch arm64 --make_options LLVM=1 --kconfig_add CONFIG_NET=y blackholedev
...
On Tue, Feb 11, 2025 at 9:47 AM Simon Horman horms@kernel.org wrote:
On Fri, Feb 07, 2025 at 06:38:41PM -0500, Tamir Duberstein wrote:
Convert this very simple smoke test to a KUnit test.
Hi Tamir,
I think some text explaining why this change is being made is warranted here.
Hi Simon, I think that would be stating KUnit's raison d'etre? I followed Kees' lead as seen in https://lore.kernel.org/all/20240612195921.2685842-2-kees@kernel.org/.
In this case we saw the benefit right away: kernel test robot immediately spotted and reported a bug which I fixed in v2: https://lore.kernel.org/all/20250208-blackholedev-kunit-convert-v2-1-182db9b.... Weirdly this message is absent from lore, but should be in your inbox (and my reply to it *is* present on lore).
Signed-off-by: Tamir Duberstein tamird@gmail.com
I tested this using:
$ tools/testing/kunit/kunit.py run --arch arm64 --make_options LLVM=1 --kconfig_add CONFIG_NET=y blackholedev
...
linux-kselftest-mirror@lists.linaro.org