From: Arnd Bergmann <arnd@arndb.de>
To: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: ksummit <ksummit-discuss@lists.linuxfoundation.org>,
Dave Airlie <airlied@linux.ie>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
David Miller <davem@davemloft.net>,
Doug Ledford <dledford@redhat.com>,
Ingo Molnar <mingo@kernel.org>
Subject: Re: [Ksummit-discuss] "Maintainer summit" invitation discussion
Date: Thu, 20 Apr 2017 13:30:57 +0200 [thread overview]
Message-ID: <CAK8P3a1dOv2YNALgD+tr-C76wR_esP3FJmYZ7wi3Ee_-fzgpfQ@mail.gmail.com> (raw)
In-Reply-To: <CAKMK7uF8to7iTSK9YgM0+KGbsj3_iMRjVHHd7zVa5Xzc5ftOGQ@mail.gmail.com>
On Thu, Apr 20, 2017 at 10:53 AM, Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> On Wed, Apr 19, 2017 at 10:26 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> I think discussing arm-soc vs. driver subsystem flows would be good.
> Not a personal gripe of mine, but since I seem to be volunteered to
> rep drm overall a topic I have to bring in. We have plenty of cross
> maintainer patch series and depencies in drm, and the usual way we
> handle this is:
> - get it reviewed by everyone
> - then either get acks from the subsystems (when it's smaller patches,
> or well separated from other stuff going on in that subsystem) to
> merge it all through one tree (usually the one with the most patches
> in the series)
> - or create a topic branch and send around cross-subsystem pull requests.
>
> This works rather well, and we have a bunch of cross-subsystem
> depencies we handle each month this way with trees outside of drm, not
> including the coordination needs within drm among different drm trees.
>
> In arm-soc this seems to not happen, and instead your nice bisectable
> patch series which implements an overall feature is split up into a
> bunch of trees, which then get forwarded independently. That means the
> bisect benefits are out, testing gets harder (either you have your own
> integration tree, or try to test linux-next and suffer), and sometimes
> even the final patches to enable something or switch drivers for a
> platform need to be delayed by an entire release.
Do you know of a specific example where this happened? We try
to take a lot of care to ensure that each of the branches is bisectable,
so it sounds like we (or our downstream developers) were missing
something in the QA testing if this failed repeatedly.
When I'm aware of a change that requires cross-tree coordination
(e.g. a Kconfig symbol gets renamed, or a DT binding changes
in an incompatible way), we usually try to come up with a way to
do the change differently (e.g. add have multiple Kconfig symbols
with the same meaning for a release or two, or find a way to
make the binding backwards compatible after all), but we also
frequently give Acks for merging stuff in arch/arm, or have a shared
tree that gets merged through both a driver subsystem and one
of our branches.
> Related to this is that there's no single stop-shop for driver
> submissions for the arm platform stuff, but it's all split up. Fairly
> often that means at least one of the maintainers doesn't like your
> face, is on vacation or leave, burried for other reasons, or at least
> has slightly different ideas about what color the bikeshed needs to
> be. That makes contributions for people who just want to get their
> driver for a given platform in a pain.
This is in a large part by design: we used to have a problem with
dozens of platforms in arch/arm/mach-* doing the same things
slightly differently, each of them being controlled only by a single
platform maintainer. We have over time introduced many separate
subsystems (irqchip, rtc, gpio, pinctrl, iommu, clk, timer, led, pci,
cpufreq, cpuidle, pwm, dmaengine, phy, regulator, memory,
nvmem, thermal, hwspinlock, mailbox, reset, and probably a few
others), and moved code out of our responsibility into those
subsystems that are maintained independently.
The subsystem maintainers have a much better understanding
of how things work in their domain across all the platforms, so
we get better review than we had in the 2.6 days when this all
fell upon a single architecture or platform maintainer. You still
typically have to get new changes approved by both a platform
maintainer (for your SoC) as well as the subsystem maintainer,
and I consider that a good idea. The price for it however is that
anyone working on a single platform has to deal with a
multitude of git trees, and things become harder at the point
where they interact, especially when you migrate a platform
from old-style board files to devicetree.
Fortunately these days, the vast majority of changes we deal
with are purely additions of new drivers or features, so there
are rarely any actual cross-tree dependencies or conflicts any
more: The only things that we merge through arm-soc most
of the time are defconfig additions, dts file changes and
sometimes new Kconfig symbols for new platforms, and all
of them can come in any order without causing regressions.
Arnd
next prev parent reply other threads:[~2017-04-20 11:31 UTC|newest]
Thread overview: 135+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-18 18:59 Linus Torvalds
2017-04-18 19:50 ` Takashi Iwai
2017-04-18 20:13 ` Linus Torvalds
2017-04-18 20:21 ` Jiri Kosina
2017-04-18 20:36 ` Takashi Iwai
2017-04-18 20:29 ` Takashi Iwai
2017-04-18 20:33 ` Laura Abbott
2017-04-18 21:15 ` Mauro Carvalho Chehab
2017-04-19 22:36 ` Jonathan Corbet
2017-04-19 22:41 ` Jiri Kosina
2017-04-19 23:36 ` Josh Triplett
2017-04-19 23:51 ` Jiri Kosina
2017-04-20 1:04 ` Josh Triplett
2017-04-20 7:38 ` Jani Nikula
2017-04-20 5:23 ` Christoph Hellwig
2017-04-20 13:33 ` James Bottomley
2017-04-20 14:40 ` Alexey Dobriyan
2017-04-20 14:52 ` Ingo Molnar
2017-04-20 14:47 ` Jonathan Corbet
2017-04-20 15:34 ` James Bottomley
2017-04-20 11:25 ` Mauro Carvalho Chehab
2017-04-19 15:37 ` Doug Ledford
2017-04-19 16:18 ` Linus Torvalds
2017-04-19 16:24 ` Doug Ledford
2017-04-19 18:11 ` Justin Forbes
2017-04-19 21:52 ` Geert Uytterhoeven
2017-04-19 18:21 ` Laura Abbott
2017-04-20 8:31 ` Jani Nikula
2017-04-20 12:35 ` Mark Brown
2017-04-20 13:01 ` Jani Nikula
2017-04-21 8:41 ` Alexandre Belloni
2017-04-21 14:46 ` David Miller
2017-04-20 8:17 ` Jani Nikula
2017-04-20 10:59 ` Greg Kroah-Hartman
2017-04-20 12:22 ` Jani Nikula
2017-04-20 13:03 ` Greg Kroah-Hartman
2017-04-20 14:49 ` Mark Brown
2017-04-19 19:25 ` Laurent Pinchart
2017-04-19 19:40 ` Linus Torvalds
2017-04-19 19:45 ` Jens Axboe
2017-04-19 19:50 ` Laurent Pinchart
2017-04-19 19:55 ` James Bottomley
2017-04-20 8:26 ` Daniel Vetter
2017-04-20 13:25 ` James Bottomley
2017-04-25 16:02 ` Bart Van Assche
2017-04-25 16:38 ` Guenter Roeck
2017-04-25 16:56 ` Mark Brown
2017-04-26 3:47 ` Bart Van Assche
2017-04-26 8:39 ` Geert Uytterhoeven
2017-04-26 14:21 ` Mark Brown
2017-04-26 14:51 ` David Miller
2017-04-26 15:15 ` Mark Brown
2017-04-26 8:42 ` Dan Carpenter
2017-04-26 13:58 ` Martin K. Petersen
2017-04-26 14:15 ` Andrew Lunn
2017-04-26 15:42 ` Martin K. Petersen
2017-04-26 14:31 ` James Bottomley
2017-04-26 14:34 ` Jiri Kosina
2017-04-26 14:43 ` James Bottomley
2017-04-27 9:06 ` Jani Nikula
2017-04-27 10:41 ` Lee Jones
2017-04-27 11:02 ` Hannes Reinecke
2017-04-27 14:17 ` James Bottomley
2017-04-28 0:24 ` Rafael J. Wysocki
2017-04-27 15:40 ` Wolfram Sang
2017-04-26 15:02 ` Bart Van Assche
2017-04-26 15:25 ` James Bottomley
2017-04-26 15:36 ` Mark Brown
2017-04-19 20:14 ` Josh Triplett
2017-04-19 21:30 ` Laurent Pinchart
2017-04-20 5:44 ` Julia Lawall
2017-04-20 8:54 ` Laurent Pinchart
2017-04-19 19:58 ` Konstantin Ryabitsev
2017-04-19 20:20 ` Jiri Kosina
2017-04-18 20:00 ` Dave Airlie
2017-04-18 20:29 ` Laurent Pinchart
2017-04-18 20:38 ` Daniel Vetter
2017-04-18 20:56 ` Linus Torvalds
2017-04-18 21:39 ` Daniel Vetter
2017-04-20 19:02 ` Mark Brown
2017-04-18 20:06 ` Serge E. Hallyn
2017-04-18 20:11 ` Greg Kroah-Hartman
2017-04-18 20:21 ` Linus Torvalds
2017-04-25 15:09 ` Chris Mason
2017-04-19 0:22 ` Stephen Rothwell
2017-04-19 13:35 ` Shuah Khan
2017-04-19 20:20 ` James Bottomley
2017-04-19 20:27 ` Jiri Kosina
2017-04-20 10:24 ` Mauro Carvalho Chehab
2017-04-21 8:51 ` Alexandre Belloni
2017-04-21 8:55 ` Julia Lawall
2017-04-21 8:59 ` Wolfram Sang
2017-04-21 14:45 ` Mauro Carvalho Chehab
2017-04-21 10:34 ` Michael Ellerman
2017-04-21 15:06 ` Mauro Carvalho Chehab
2017-04-21 23:37 ` James Bottomley
2017-04-20 16:01 ` Dan Williams
2017-04-21 11:07 ` Michael Ellerman
2017-04-21 17:06 ` Mauro Carvalho Chehab
2017-04-21 23:19 ` Bjorn Helgaas
2017-04-19 20:26 ` Arnd Bergmann
2017-04-20 8:53 ` Daniel Vetter
2017-04-20 11:30 ` Arnd Bergmann [this message]
2017-04-20 13:46 ` Daniel Vetter
2017-04-24 14:02 ` Olof Johansson
2017-04-24 16:17 ` Linus Walleij
2017-04-24 17:29 ` Olof Johansson
2017-04-24 17:58 ` Mark Brown
2017-04-25 9:10 ` Lee Jones
2017-04-29 21:00 ` Daniel Vetter
2017-04-29 21:39 ` James Bottomley
2017-04-30 12:45 ` Mark Brown
2017-04-30 19:12 ` Olof Johansson
2017-05-02 8:09 ` Lee Jones
2017-04-20 19:26 ` Mark Brown
2017-04-21 11:03 ` Alexandre Belloni
2017-04-24 13:14 ` Nicolas Ferre
2017-04-19 21:05 ` Andy Lutomirski
2017-04-19 21:32 ` Linus Torvalds
2017-05-23 17:58 ` Linus Torvalds
2017-05-23 18:17 ` Randy Dunlap
2017-05-23 18:47 ` Thomas Gleixner
2017-05-23 20:34 ` Linus Torvalds
2017-05-23 19:29 ` James Bottomley
2017-05-24 3:34 ` David Miller
2017-05-24 4:55 ` Linus Torvalds
2017-04-21 0:35 ` Rafael J. Wysocki
2017-09-20 14:45 ` Doug Ledford
2017-09-20 15:07 ` James Bottomley
2017-09-20 15:22 ` Doug Ledford
2017-09-20 15:31 ` James Bottomley
2017-09-20 15:58 ` Doug Ledford
2017-09-20 22:55 ` Theodore Ts'o
2017-09-21 9:33 ` Leon Romanovsky
2017-09-21 4:54 ` James Morris
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=CAK8P3a1dOv2YNALgD+tr-C76wR_esP3FJmYZ7wi3Ee_-fzgpfQ@mail.gmail.com \
--to=arnd@arndb.de \
--cc=airlied@linux.ie \
--cc=daniel.vetter@ffwll.ch \
--cc=davem@davemloft.net \
--cc=dledford@redhat.com \
--cc=gregkh@linuxfoundation.org \
--cc=ksummit-discuss@lists.linuxfoundation.org \
--cc=mingo@kernel.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