All of lore.kernel.org
 help / color / mirror / Atom feed
* kernel tree support matrix for Clang
@ 2019-06-19 18:04 ndesaulniers
  2019-06-19 18:57 ` Mark Brown
  0 siblings, 1 reply; 7+ messages in thread
From: ndesaulniers @ 2019-06-19 18:04 UTC (permalink / raw)
  To: Matt Hart
  Cc: Dan Rue, Anmar Oueja, kernelci, clang-built-linux, Todd Kjos,
	Sandeep Patil, Alistair Delva, Stephen Hines

Following up with Matt from this past week's meeting.

For building kernels with Clang, I'm running a bare bones CI I setup
on TravisCI; I would like to transition all of this to kernelCI.
Because we're using TravisCI's free tier, the build boxes are dual
core and builds timeout after 50 minutes.  This causes us to rely
heavily on ccache (last night's builds all were cold because of the
nightly compiler uprev; build 792 has some hot cache timings), and
limits our coverage to basically defconfigs.

In terms of what trees/branches/ISAs are important, let's look at last
night's build as an example:
https://travis-ci.com/ClangBuiltLinux/continuous-integration/builds/116089229

Currently 40 targets.  They're not partitioned in the UI, but here's
how I view them:
794.1-794.7 are builds of mainline (torvalds/linux) various archs and
LLD enabled if supported
794.8-794.14 are builds of the master branch of linux-next tree.
794.15-794.18 are builds of the 4.19.y branch of the stable tree.
794.19-794.22 are builds of the 4.14.y branch of the stable tree.
794.23-794.25 are builds of the 4.9.y branch of the stable tree.
794.26-794.27 are builds of the 4.4.y branch of the stable tree.
794.28-794.33 are builds of various branches of the android-common tree.
794.34-794.40 are builds of mainline with the latest released version
of clang, clang-8. All of the above use ToT clang from the Clang
Debian package maintainer in a docker image we build nightly.

linux-next coverage is important to us for observing regressions ASAP
and hopefully before they hit mainline.
mainline coverage is important to us so that clang "just works" for
anyone who clones linux and tries clang.
stable coverage is important to us because Android and CrOS base their
device kernels off of stable.
android-common trees are downstream of the stable trees, and are
important that we don't regress them.
clang-8 tests are important to us so that users who don't build their
own compiler can use a released version of clang and it "just works".

Today KernelCI is covering builds of linux-next with Clang, which is a
great first step.  I think the above list of trees & branches listed
above for the reasons above are good next steps for KernelCI coverage.

What do you all think?
-- 
Thanks,
~Nick Desaulniers

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-06-26 11:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-19 18:04 kernel tree support matrix for Clang ndesaulniers
2019-06-19 18:57 ` Mark Brown
2019-06-19 21:12   ` Nick Desaulniers
2019-06-20 11:30     ` Mark Brown
2019-06-25 13:55       ` Matt Hart
2019-06-25 19:45         ` Nick Desaulniers
2019-06-26 11:11           ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.