[LSF/MM/BPF TOPIC] [LSF/MM/BPF ATTEND] blktests: status and improvement plan of the storage stack test framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Since the discussion at the LSFMM 2017 [1], Omar Sandoval introduced the 
new
framework "blktests" dedicated for Linux Kernel Block layer testing [2].
Blktests serves as the centralized testing framework. It has grown with the
latest block layer changes and successfully integrated various stand-alone
test suites like SRP-tests, NVMFTESTS, NVMe Multipath tests, zone block 
device
tests. This integration has significantly simplified the process of 
block layer
testing and development, eliminating the need to configure and execute test
cases for each kernel release.

The storage stack community is actively engaged, contributing and adding 
new
test cases across diverse categories to the framework. Since the 
beginning, we
are consistently finding bugs proactively with the help of blktests 
testcases.
Below is a summary of the existing test categories and their test cases 
as of
January 29, 2025.

     block        :  36
     dm           :   2
     loop         :  11
     md           :   1
     nbd          :   4
     nvme         :  50
     rnbd         :   2
     scsi         :   7
     srp          :  15
     throtl       :   5
     ublk         :   6
     zbd          :  12
-----------------------------
  12 Categories   : 151 Tests


For the storage track at LSFMMBPF2025, I propose a session dedicated to
blktests. This session promises to be a great opportunity to collect
feedbacks from storage developers. The session will cover following topics:

1. Blktests as CI

    Based on discussions in LSFMMBPF 2024, the primary focus will be on
    adopting blktests as a continuous integration (CI) tool. While some
    kernel CI projects already execute blktests for the latest kernel tags,
    there is currently no automated blktests run for each kernel patch.

    Shinichiro is working on setting up a blktests CI environment,
    inspired by the approach used by linux-raid [3], leveraging KPD [4]
    and Patchwork [5]. The goal is to share these findings, gather
    feedback, and refine the setup further.

    Additionally, I have been actively looking into on blktests CI since 
late
    last year. We would like to present our progress, discuss challenges,
    and seek input from the community to help build a robust blktests CI.

2. Any new/missing features that we want to add in the blktests?

    For instance, last year saw the addition of remote target support to the
    nmve test category, and it was used for the test case nvme/056 (nvme-tcp
    zero copy offload test).

3. Potential area to expand the test coverage?

    For instance, last year saw the addition of the new test categories such
    as "throtl", "md", and "rnbd".

4. Any new kernel features that could be used to make testing easier?

The session also aims to cover other topics relevant to blktests and the
broader scope of storage stack testing. Topic suggestions will be welcomed.

-ck

[1] https://lwn.net/Articles/717699/
[2] https://github.com/osandov/blktests
[3] Presented by Paul Luse and Song Liu at LSFMMBPF 2024,
     in the session "Project per patch CI testing".
[4] https://github.com/facebookincubator/kernel-patches-daemon
[5] https://patchwork.kernel.org/project/linux-block/list/




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux