ksummit.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: torvalds@linux-foundation.org
Cc: ksummit@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: linus-next: improving functional testing for to-be-merged pull requests
Date: Mon, 21 Oct 2024 12:07:13 -0400	[thread overview]
Message-ID: <ZxZ8MStt4e8JXeJb@sashalap> (raw)

Hi folks,

The linux-next tree we all know and love is widely used by the kernel
community for integration work. It offers several advantages:

	1. Early detection of conflicts between matinainer trees

	2. Catching most new build errors/warnings

However, it faces significant testing challenges:

	1. Contains a mix of "ready-to-go" code and experimental additions

	2. A single "bad" piece of code can affect testing of everything else

	3. Low barrier of entry, encouraging inclusion over exclusion

	4. While linux-next offers early conflict resolution and
	identifies build issues, it is very difficult to actually test
	due to the abundance of runtime issues it tends to have

These factors combine to make linux-next a valuable tool for integration
but problematic for comprehensive testing.

During the Maintainer's Summit, Linus Torvalds expressed concerns about
the quality of testing that code receives before he pulls it. The
subsequent discussion side-tracked to the testability of linux-next, but
we didn't directly address Linus's original concern about pre-pull
testing quality.

In an attempt to address the concerns, we're trying out a new "linus-next"
tree is being created and maintained with the following characteristics:

	1. Composed of pull requests sent directly to Linus

	2. Contains branches destined for imminent inclusion by Linus

	3. Higher code quality expectation (these are pull requests that
	maintainers expect Linus to pull)

	4. Continuous tree (not daily tags like in linux-next),
	facilitating easier bisection

The linus-next tree aims to provide a more stable and testable
integration point compared to linux-next, addressing the runtime issues
that make testing linux-next challenging and focusing on code that's
about to be pulled by Linus.

linus-next is (expected to be) particularly effective before the merge
window opens, as maintainers tend to send their pull requests early,
allowing for more thorough testing of to-be-merged changes.

We also want to avoid altering the existing workflow. In particular:

	1. No increase in latency. If anything, the expectation is that
	the cadence of merges would be improved given that Linus will
	need to do less builds and tests.

	2. Require "sign up" for the tree like linux-next does. Instead,
	pull requests are monitored and grabbed directly from the
	mailing list.

Tree location: `git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linus-next.git linus-next`

Current testing:
   - LKFT: https://qa-reports.linaro.org/lkft/sashal-linus-next/
   - KernelCI: https://t.ly/KEW7F

Feedback and suggestions for improving usability are welcome!

-- 
Thanks,
Sasha

             reply	other threads:[~2024-10-21 16:31 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-21 16:07 Sasha Levin [this message]
2024-10-21 17:18 ` Matthieu Baerts
2024-10-21 17:36   ` Sasha Levin
2024-10-22  9:11     ` Matthieu Baerts
2024-10-21 17:24 ` Bart Van Assche
2024-10-21 17:30   ` Sasha Levin
2024-10-21 18:10     ` Luis Chamberlain
2024-10-21 18:36 ` Liam R. Howlett
2024-10-21 19:44   ` Sasha Levin
2024-10-21 22:56     ` Linus Torvalds
2024-10-21 21:41 ` Mark Brown
2024-10-22  9:10   ` Thorsten Leemhuis
2024-10-22 13:19     ` Mark Brown
2024-10-31 19:22     ` Shuah Khan
2024-10-21 23:39 ` Paul E. McKenney
2024-10-22 12:06   ` Jiri Kosina
2024-10-22 14:22     ` Paul E. McKenney
2024-10-22 14:36       ` Sasha Levin
2024-10-22 14:46         ` Paul E. McKenney
2024-10-22  4:54 ` Kees Cook
2024-10-22  6:48   ` Christoph Hellwig
2024-10-22  8:12     ` Steven Rostedt
2024-10-22  9:55       ` Vlastimil Babka
2024-10-22 11:51       ` James Bottomley
2024-10-22 12:47         ` Mark Brown
2024-10-22 19:33       ` Kees Cook
2024-10-23  2:24         ` Guenter Roeck
2024-10-23  5:47       ` Christoph Hellwig
2024-10-23  8:20         ` Steven Rostedt
2024-10-23  8:36           ` Geert Uytterhoeven
2024-10-23  9:19             ` Steven Rostedt
2024-10-23  9:23               ` Geert Uytterhoeven
2024-10-23 10:11               ` Dan Carpenter
2024-10-23 17:51               ` Paul E. McKenney
2024-10-24  3:59               ` Michael Ellerman
2024-10-24  5:01                 ` Steven Rostedt
2024-10-24  5:16                   ` Guenter Roeck
2024-10-24  6:49                     ` Steven Rostedt
2024-10-24  7:01                       ` Geert Uytterhoeven
2024-10-24  9:21                         ` Steven Rostedt
2024-10-24  9:24                           ` Christoph Hellwig
2024-10-24  9:49                             ` Steven Rostedt
2024-10-24 11:08                               ` Mark Brown
2024-10-24 11:14                                 ` Christoph Hellwig
2024-10-25 21:04                               ` Jiri Kosina
2024-10-24 14:39                       ` Guenter Roeck
2024-10-25  1:11                         ` Steven Rostedt
2024-10-25  3:52                           ` Guenter Roeck
2024-10-25 11:18                           ` Mark Brown
2024-10-25 17:23                           ` Paul E. McKenney
2024-10-24 17:53                       ` Luis Chamberlain
2024-10-25  1:17                         ` Steven Rostedt
2024-10-25  2:07                           ` Luis Chamberlain
2024-10-31 19:08               ` Shuah Khan
2024-10-31 19:19                 ` Steven Rostedt
2024-10-23  9:32           ` Vlastimil Babka
2024-10-23 10:18             ` Thorsten Leemhuis
2024-10-23 11:41           ` James Bottomley
2024-10-22  9:37     ` Sasha Levin
2024-10-23  5:50       ` Christoph Hellwig
2024-10-23 17:47         ` Paul E. McKenney
2024-10-23 18:05           ` Guenter Roeck
2024-10-23 18:09             ` Linus Torvalds
2024-10-23 18:50               ` Geert Uytterhoeven
2024-10-23 18:06           ` Linus Torvalds
2024-10-23 18:37             ` Paul E. McKenney
2024-10-23 19:24               ` Linus Torvalds
2024-10-23 20:22                 ` Paul E. McKenney
2024-10-23 21:20             ` Theodore Ts'o
2024-10-23 21:24             ` Mark Brown
2024-10-24  2:51               ` Paul E. McKenney
2024-10-22 10:52     ` Sasha Levin
2024-10-22 11:50       ` Mark Brown
2024-10-22 14:47         ` Sasha Levin
2024-10-22 15:25           ` Mark Brown
2024-10-28 22:46     ` Sasha Levin
2024-10-29  8:10       ` Thorsten Leemhuis
2024-10-29 11:30         ` Sasha Levin
2024-10-29 12:46           ` Thorsten Leemhuis
2024-10-29 15:07             ` Sasha Levin
2024-10-30  6:46               ` Thorsten Leemhuis
2024-10-30 14:10                 ` Sasha Levin
2024-10-31  8:13                   ` Thorsten Leemhuis
2024-10-29  8:20       ` Geert Uytterhoeven
2024-10-30 17:08       ` Paul E. McKenney
2024-10-30 17:15         ` Sasha Levin
2024-10-30 17:32           ` Paul E. McKenney
2024-11-04  8:49       ` Joel Granados
2024-11-04 11:01         ` Sasha Levin
2024-11-25 20:05       ` Joel Granados
2024-10-22  7:02   ` Geert Uytterhoeven
2024-10-22  8:41   ` Benjamin Tissoires

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZxZ8MStt4e8JXeJb@sashalap \
    --to=sashal@kernel.org \
    --cc=ksummit@lists.linux.dev \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox