298 lines
11 KiB
HTML
298 lines
11 KiB
HTML
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<!DOCTYPE html>
|
|||
|
|
|
|||
|
|
<html lang="en">
|
|||
|
|
<head>
|
|||
|
|
<meta charset="utf-8">
|
|||
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|||
|
|
<meta name="description" content="">
|
|||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|||
|
|
|
|||
|
|
<title>FOSSY 2025 | Presentation: Linux kernel test automation with kdevops</title>
|
|||
|
|
|
|||
|
|
<meta property="og:type" content="website" />
|
|||
|
|
|
|||
|
|
<link rel="icon" href="../../../static/build/img/favicon.ico" />
|
|||
|
|
|
|||
|
|
<!-- Cards -->
|
|||
|
|
<meta property="og:title" content="FOSSY 2025 | Presentation: Linux kernel test automation with kdevops">
|
|||
|
|
<meta property="og:description" content="" />
|
|||
|
|
<meta property="og:url" content="https://2025.fossy.us/schedule/presentation/301/">
|
|||
|
|
<meta name="twitter:site" content="@conservancy">
|
|||
|
|
<meta name="twitter:image:alt" content="FOSSY 2025 | Presentation: Linux kernel test automation with kdevops" />
|
|||
|
|
<meta name="twitter:card" content="summary">
|
|||
|
|
<meta name="twitter:image" content="https://2025.fossy.us/static/build/img/conservancy_logo_tall_mono.png" />
|
|||
|
|
<meta property="og:image" content="https://2025.fossy.us/static/build/img/conservancy_logo_tall_mono.png" />
|
|||
|
|
<meta property="og:image:width" content="400" />
|
|||
|
|
<meta property="og:image:height" content="400" />
|
|||
|
|
|
|||
|
|
|
|||
|
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
|
|||
|
|
<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/hack-font@3.3.0/build/web/hack.css'>
|
|||
|
|
<link rel="stylesheet" href="https://unpkg.com/tachyons@4.12.0/css/tachyons.min.css">
|
|||
|
|
<link href="../../../static/build/scss/app.css" rel="stylesheet" type="text/css" />
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<script type="text/javascript">
|
|||
|
|
var CONF_TZ = "US/Pacific";
|
|||
|
|
</script>
|
|||
|
|
</head>
|
|||
|
|
<body class="">
|
|||
|
|
|
|||
|
|
<header class="bg-washed-yellow pa2"><div class="container"><strong>Archived:</strong> This is an archive from the 2025 conference. See <a href="https://fossy.us/">fossy.us</a> for the latest event.</div></header><header class="clearfix d-print-none">
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<nav class="navbar navbar-expand-lg navbar-dark" style="background: rgb(19,119,82); background: linear-gradient(124deg, rgba(19,119,82,1) 0%, rgba(19,106,119,1) 100%); margin-bottom: 1rem">
|
|||
|
|
<div class="container">
|
|||
|
|
<h2 class="sans-serif f2 f1-ns b lh-solid tracked-tight mv0 mr3">
|
|||
|
|
<a class="washed-yellow hover-washed-yellow" href="../../../index.html" style="text-decoration: none">
|
|||
|
|
FOSSY 2025
|
|||
|
|
</a>
|
|||
|
|
</h2>
|
|||
|
|
|
|||
|
|
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarText" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
|
|||
|
|
<span class="navbar-toggler-icon"></span>
|
|||
|
|
</button>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<div class="collapse navbar-collapse" id="navbarText">
|
|||
|
|
<ul class="navbar-nav mr-auto">
|
|||
|
|
|
|||
|
|
<li class="nav-item dropdown">
|
|||
|
|
|
|||
|
|
<a class="nav-link dropdown-toggle" href="index.html#" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|||
|
|
About
|
|||
|
|
</a>
|
|||
|
|
<div class="dropdown-menu">
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../about/index.html">About FOSSY</a>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
</li>
|
|||
|
|
|
|||
|
|
<li class="nav-item dropdown">
|
|||
|
|
|
|||
|
|
<a class="nav-link dropdown-toggle" href="index.html#" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|||
|
|
Attend
|
|||
|
|
</a>
|
|||
|
|
<div class="dropdown-menu">
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../attend/tickets/index.html">Tickets</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../travel/index.html">Travel and Lodging</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../attend/volunteer.html">Volunteer</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../attend/code-of-conduct.html">Code of Conduct</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../attend/health-and-safety/index.html">Health and Safety</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../attend/terms-and-conditions/index.html">Terms and Conditions</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="https://sfconservancy.org/privacy-policy/">Privacy policy</a>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
</li>
|
|||
|
|
|
|||
|
|
<li class="nav-item dropdown">
|
|||
|
|
|
|||
|
|
<a class="nav-link dropdown-toggle" href="index.html#" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|||
|
|
Program
|
|||
|
|
</a>
|
|||
|
|
<div class="dropdown-menu">
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../index.html">Schedule</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../pages/tracks/index.html">Tracks</a>
|
|||
|
|
|
|||
|
|
<a class="dropdown-item " href="../../../call-for-proposals/index.html">Proposals</a>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
</li>
|
|||
|
|
|
|||
|
|
<li class="nav-item ">
|
|||
|
|
|
|||
|
|
<a class="nav-link" href="../../../sponsorship/index.html">
|
|||
|
|
Sponsorship
|
|||
|
|
</a>
|
|||
|
|
|
|||
|
|
</li>
|
|||
|
|
|
|||
|
|
</ul>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</nav>
|
|||
|
|
|
|||
|
|
</header>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<main role="main" class="container">
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col page-header">
|
|||
|
|
<h1 class="page-title">Linux kernel test automation with kdevops</h1>
|
|||
|
|
<p class="lead">
|
|||
|
|
|
|||
|
|
328 | <span class="presentation-time" data-starttime="2025-07-31T16:30:00" data-endtime="2025-07-31T17:15:00">Thu 31 Jul 4:30 p.m.–5:15 p.m.</span>
|
|||
|
|
|
|||
|
|
</p>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-md-12">
|
|||
|
|
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<div class="row presentation-details">
|
|||
|
|
<div class="col-md-3">
|
|||
|
|
<h2 class="mt-4">Presented by</h4>
|
|||
|
|
<ul class="list-unstyled">
|
|||
|
|
|
|||
|
|
<li class="mb-4 pb-2">
|
|||
|
|
|
|||
|
|
<img src="https://secure.gravatar.com/avatar/ba45cc474c6f30d2c1b4d63a98ac9283?s=120&d=mp" alt="Luis Chamberlain" class="rounded-circle img-fluid">
|
|||
|
|
<p>
|
|||
|
|
<strong><a href="../../../speaker/profile/488/index.html">Luis Chamberlain</a></strong><br />
|
|||
|
|
|
|||
|
|
<i class="bi-mastodon"></i> <a href="index.html">@mcgrof</a>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
</p>
|
|||
|
|
<div class="bio"><p>Luis is a Principal Engineer at Samsung focusing the development and adoption of future Samsung NVMe storage & memory solutions with a focus on artificial intelligence. Luis has been working on the Linux kernel for over 20 years, and his fields of interest has changed over time, from Wireless, Bluetooth, Ethernet, to virtualization and lately with storage and memory technologies. He has also helped spearhead different new automation open source projects such as the Linux kernel backports project and as of late the kdevops project.</p></div>
|
|||
|
|
</p>
|
|||
|
|
</li>
|
|||
|
|
|
|||
|
|
</ul>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="col-md-9 presentation-abstract">
|
|||
|
|
<h2 class="mt-4">Abstract</h4>
|
|||
|
|
|
|||
|
|
<div class="abstract pb-4"><p><p>We have a slew of ways to test the Linux kernel: selftests, kunit, and then we have a slew of subsystem specific tests. Intel 0-day has also done a fantastic job at helping find bugs. So has syzkaller. Some subsystems like filesystems and memory management have really complex test frameworks though and have falling behind in automation. Is it possible to automate testing of complex subsystems? Should we? And what are the implications if we're successful?</p>
|
|||
|
|
<p>To provide perspective, it takes roughly 10 years to stabilize a new Linux filesystem. But can we do better? The kdevops project was started with the goal of first of addressing automation of testing of complex subsystems such as filesystems to help reduce the amount of time it takes to stabilize new filesystems or new filesystem features. The project aimed at supporting local virtualization, bare metal, and all cloud provider support. Seven years later since the project got started, with the help of a lot of community collaboration the project is now integral part not only of testing pipelines but also development workflows. The kdevops project now enables continuous integration for different subsystems starting with:</p>
|
|||
|
|
<ul>
|
|||
|
|
<li>Linux modules</li>
|
|||
|
|
<li>Linux radix tree</li>
|
|||
|
|
<li>Linux filesystems: xfs, btrfs, ext4</li>
|
|||
|
|
<li>Linux network filesystems: NFS</li>
|
|||
|
|
<li>Linux selftests</li>
|
|||
|
|
</ul>
|
|||
|
|
<p>A dashboard of results is now also updated automatically based on automatic tests: <a href="https://kdevops.org">https://kdevops.org</a></p>
|
|||
|
|
<p>What have we learned from all this effort so far? And what lies ahead for the roadmap? If you want to contribute and help how do you do that?</p></p></div>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<h2 class="mt-4">Videos</h4>
|
|||
|
|
|
|||
|
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/i59uzyv6eVc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
|
|||
|
|
|
|||
|
|
|
|||
|
|
<p style="margin-top: 1rem">Available sources:</p>
|
|||
|
|
<ul>
|
|||
|
|
|
|||
|
|
<li><a href="https://youtu.be/i59uzyv6eVc" rel="nofollow">https://youtu.be/i59uzyv6eVc</a></li>
|
|||
|
|
|
|||
|
|
</ul>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
|
|||
|
|
<script src="../../../static/build/js/app.js" type="text/javascript"></script>
|
|||
|
|
<script src="../../../static/build/js/jquery.formset.js"></script>
|
|||
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
|
|||
|
|
<script src="../../../static/build/bootstrap/js/bootstrap.bundle.min.js"></script>
|
|||
|
|
|
|||
|
|
<!--no-analytics-->
|
|||
|
|
|
|||
|
|
|
|||
|
|
<script src="../../../static/build/js/luxon.min.js"></script>
|
|||
|
|
<script src="../../../static/build/js/schedule.js" type="text/javascript"></script>
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
</main>
|
|||
|
|
|
|||
|
|
<footer class="footer mt-4 d-print-none">
|
|||
|
|
<div class="container py-4">
|
|||
|
|
<!-- <div class="row">
|
|||
|
|
<div class="col-md-12 pb-12 text-center" style="margin-top: 0px;margin-bottom: 0px;border-bottom-style: solid;border-bottom-width: 0px;padding-bottom: 20px;">Wifi: FOSSY <i>(see Registration for older wifi)</i><br/>PIN: outreachy1000</div>
|
|||
|
|
</div> -->
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-md-4 pb-4">
|
|||
|
|
<strong>FOSSY 2025</strong> <br>
|
|||
|
|
July 31st – August 3rd 2025 <br>
|
|||
|
|
Portland, OR<br>
|
|||
|
|
Timezone: PDT - UTC-7 <br>
|
|||
|
|
<a href="mailto:conference@sfconservancy.org" alt="Email"><i class="bi-envelope-fill"></i></a>
|
|||
|
|
<a href="https://x.com/conservancy" alt="Twitter"><i class="bi-twitter-x"></i></a>
|
|||
|
|
<a href="https://social.sfconservancy.org/conservancy" alt="Mastodon"><i class="bi-mastodon"></i></a>
|
|||
|
|
<a href="https://www.facebook.com/SoftwareFreedomConservancy/" alt="Facebook"><i class="bi-facebook"></i></a>
|
|||
|
|
<a href="https://www.youtube.com/@softwarefreedomconservancy8558/videos" alt="YouTube"><i class="bi-youtube"></i></a>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-4 pb-4 text-center">
|
|||
|
|
<p class="text-secondary">Brought to you by</p>
|
|||
|
|
<a href="https://sfconservancy.org"><img src="../../../static/build/img/conservancy_logo.svg" alt="Software Freedom Conservancy logo" class="footer-image"></a>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-md-4 pb-4 text-right">
|
|||
|
|
<small>
|
|||
|
|
<a href="index.html#">Back to top</a><br>
|
|||
|
|
© 2025 <a href="https://sfconservancy.org/">Software Freedom Conservancy</a><br>
|
|||
|
|
<a href="../../../credits/index.html">Credits</a>
|
|||
|
|
</small>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</footer>
|
|||
|
|
|
|||
|
|
</body>
|
|||
|
|
</html>
|