From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: ksummit-discuss@lists.linuxfoundation.org
Cc: "ltsi-dev@lists.linuxfoundation.org"
<ltsi-dev@lists.linuxfoundation.org>,
"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>
Subject: Re: [Ksummit-discuss] [Stable kernel] feature backporting collaboration
Date: Mon, 05 Sep 2016 12:28:17 +0300 [thread overview]
Message-ID: <1656524.OIRTMDr3jV@avalon> (raw)
In-Reply-To: <20160903000518.GN3950@sirena.org.uk>
On Saturday 03 Sep 2016 01:05:18 Mark Brown wrote:
> On Fri, Sep 02, 2016 at 03:16:37PM -0400, Levin, Alexander wrote:
> > Look at KASLR and KASan, it has complex interactions with pretty much the
> > rest of the kernel. Quite a few things not directly related to either of
> > those had to be fixed just because they were found to not integrate right
> > (For example, KASLR uncovered a bunch of bugs before it was actually
> > merged in), who says that there aren't any similar interactions with the
> > older kernels that no one looked into?
>
> Sure, and this sort of thing is one of the reasons we have the ability
> to disable things in Kconfig. It's not risk free but it's very much
> mitigated compared to tracking mainline.
>
> > > It's what people are doing for products, they want newer features but
> > > they also don't want to rebase their product kernel onto mainline as
> > > that's an even bigger integration risk. People aren't using this kernel
> >
> > I'm sorry but just calling a kernel "stable" doesn't mean that suddenly it
> > acquires the qualities of a stable kernel that follows the very strict
> > rules we have for those.
> >
> > Given that you're backporting features into a stable kernel it really
> > inherits the code quality of a release candidate kernel; nowhere close to
> > a stable kernel.
> >
> > This following is just my opinion as an LTS kernel maintainer: if you
> > think
> > that the integration risk of a newer stable/LTS is bigger than using these
> > frankenstein kernels you are very much mistaken.
>
> I really don't think you understand the environment that this work is
> done in. You may have heard people mention the large amount of out of
> tree code that vendors tend to be sitting on. That interacts with a
> *very* large chunk of the kernel, and of course there's also a bunch of
> performance stuff that's being looked at beyond pure correctness issues.
> Taking a new upstream requires a bunch of work to update the out of tree
> code to any new kernel APIs and realistically it's going to trash a huge
> chunk of the testing that's been done on the product and require at
> least revalidation. Taking a targeted update, especially one where the
> riskier changes are configuration options, isn't free either but the
> surface that needs to be looked at is much more known and controlled.
>
> > In your case it's nice if you could share backports betweek multiple users
> > (just like we try doing for all the stable/LTS trees), but the coverage
> > and
> > testing you're going to get for that isn't anywhere close to what you'll
> > have for a more recent stable kernel that already has those features
> > baked into that.
>
> If everything were upstream, everyone was working directly upstream and
> everyone had their QA focused on upstream what you're saying would be
> more true but as everyone is so keen to point out that's just not what's
> happening. There's a bunch of other code in play on the relevant
> systems which makes things that little bit more involved.
>
> > > > As an alternative, why not use more recent stable kernels and
> > > > customize the
> > > > config specifically for each user to enable on features that that
> > > > specific
> > > > user wants to have.
> > >
> > > That's just shipping a kernel - I don't think anyone is silly enough to
> > > ship an allmodconfig or similar in production (though I'm sure someone
> > > can come up with an example).
> >
> > I highly doubt that most shipped kernels actually go through the process
> > of auditing every single config option and figuring out if they actually
> > need it or not (in part because the kernel's config is quite a mess). I
> > really doubt that the kernel is fine-tuned for majority of the released
> > products that run linux.
>
> I'm sorry but I really don't follow what you're saying here - I'm not
> sure anyone's out of tree code is the result of a failure to understand
> Kconfig and I don't really understand the relevance of a detailed study
> of configuration to the issues around rebasing.
>
> > > Like I say in this case updating to a newer kernel also means rebasing
> > > the out of tree patch stack and taking a bunch of test risk from that -
> > > in product development for the sorts of products that end up including
> > > the LSK the churn and risk from targeted backports is seen as much safer
> > > than updating to an entire new upstream kernel.
> >
> > Same as I said before, the risk LSK introduces, IMO, is much greater than
> > rebasing and out-of-tree driver stack.
>
> I'm afraid you're very much mistaken if you believe that people are only
> working on leaf drivers, or that nothing we do upstream has a meaningful
> impact at the system level.
To provide a real-life example, we recently ran into a scheduler issue in a
project I'm working on. The device is a phone running a Qualcomm kernel, and
the scheduler is so hacked by the vendor to cover the phone use cases that
creating a spinning high priority SCHED_FIFO thread in userspace kills the
system instantly. That's the kind of crap vendors tend to ship, and moving to
a newer kernel version pretty much means they have no revalidate all the
scheduler-related use cases (and add more awful hacks to "fix issues
introduced in mainline").
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2016-09-05 9:28 UTC|newest]
Thread overview: 122+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-01 2:01 Alex Shi
2016-09-02 1:25 ` Levin, Alexander
2016-09-02 2:43 ` Stephen Hemminger
2016-09-02 9:59 ` Mark Brown
2016-09-02 9:54 ` Mark Brown
2016-09-02 10:16 ` [Ksummit-discuss] [LTSI-dev] " Geert Uytterhoeven
2016-09-02 14:42 ` [Ksummit-discuss] " James Bottomley
2016-09-02 14:55 ` Rik van Riel
2016-09-02 15:04 ` James Bottomley
2016-09-02 15:39 ` Rik van Riel
2016-09-02 17:06 ` Bird, Timothy
2016-09-05 1:45 ` NeilBrown
2016-09-05 11:04 ` Mark Brown
2016-09-05 22:44 ` NeilBrown
2016-09-06 0:57 ` Mark Brown
2016-09-06 5:41 ` NeilBrown
2016-09-08 18:33 ` [Ksummit-discuss] [LTSI-dev] " Bird, Timothy
2016-09-08 22:38 ` NeilBrown
2016-09-09 11:01 ` Mark Brown
2016-09-09 22:17 ` NeilBrown
2016-09-12 17:37 ` Mark Brown
2016-09-13 7:46 ` NeilBrown
2016-09-13 17:53 ` Mark Brown
2016-09-02 18:21 ` [Ksummit-discuss] " Olof Johansson
2016-09-02 23:35 ` Mark Brown
2016-09-03 5:29 ` Guenter Roeck
2016-09-03 10:40 ` Mark Brown
2016-09-04 0:10 ` Theodore Ts'o
2016-09-04 8:34 ` gregkh
2016-09-04 22:58 ` Amit Kucheria
2016-09-04 23:51 ` Theodore Ts'o
2016-09-05 12:58 ` Mark Brown
2016-09-05 11:11 ` Mark Brown
2016-09-05 14:03 ` Theodore Ts'o
2016-09-05 14:22 ` Laurent Pinchart
2016-09-06 0:35 ` Mark Brown
2016-09-06 15:30 ` James Bottomley
2016-09-06 19:44 ` gregkh
2016-09-06 22:20 ` Mark Brown
2016-09-06 22:34 ` James Bottomley
2016-09-08 18:55 ` Bird, Timothy
2016-09-08 19:19 ` gregkh
2016-09-09 10:45 ` Mark Brown
2016-09-09 11:03 ` gregkh
2016-09-09 11:48 ` Mark Brown
2016-09-06 23:23 ` Mark Brown
2016-09-06 13:34 ` Catalin Marinas
2016-09-06 16:24 ` Bartlomiej Zolnierkiewicz
2016-09-06 16:25 ` Guenter Roeck
2016-09-06 22:39 ` Mark Brown
2016-09-07 8:33 ` Jan Kara
2016-09-07 8:41 ` Jiri Kosina
2016-09-07 18:44 ` Mark Brown
2016-09-08 17:06 ` Frank Rowand
2016-09-09 10:32 ` Mark Brown
2016-09-09 15:21 ` Alex Shi
2016-09-12 15:34 ` Christoph Hellwig
2016-09-06 16:46 ` Olof Johansson
2016-09-08 8:34 ` Linus Walleij
2016-09-08 8:55 ` Vinod Koul
2016-09-09 14:32 ` Rob Herring
2016-09-09 14:23 ` Rob Herring
[not found] ` <2181684.5VzIQ6DWv4@amdc1976>
2016-09-07 9:32 ` Catalin Marinas
2016-09-07 13:07 ` Bartlomiej Zolnierkiewicz
2016-09-07 18:49 ` Mark Brown
2016-09-09 15:06 ` Alex Shi
2016-09-02 23:29 ` Mark Brown
2016-09-02 19:16 ` Levin, Alexander
2016-09-03 0:05 ` Mark Brown
2016-09-05 9:28 ` Laurent Pinchart [this message]
2016-09-21 6:58 ` Alex Shi
2016-09-21 9:23 ` gregkh
2016-09-21 14:52 ` Alex Shi
2016-09-21 15:28 ` gregkh
2016-09-21 18:50 ` Mark Brown
2016-09-22 3:15 ` Alex Shi
2016-09-21 18:22 ` Mark Brown
2016-09-21 18:54 ` Linus Walleij
2016-09-21 19:52 ` Theodore Ts'o
2016-09-22 0:43 ` Mark Brown
2016-09-22 5:20 ` gregkh
2016-09-22 12:56 ` Laurent Pinchart
2016-09-22 16:22 ` Mark Brown
2016-09-22 22:14 ` Theodore Ts'o
2016-09-23 12:28 ` Laurent Pinchart
2016-09-23 13:27 ` [Ksummit-discuss] [LTSI-dev] " Alex Shi
2016-09-23 13:40 ` Laurent Pinchart
2016-09-23 14:40 ` [Ksummit-discuss] " Mark Brown
2016-09-21 13:56 ` Theodore Ts'o
2016-09-21 15:23 ` Alex Shi
2016-09-21 15:33 ` gregkh
2016-09-21 19:16 ` Mark Brown
2016-09-02 13:47 ` Theodore Ts'o
2016-09-02 19:31 ` Levin, Alexander
2016-09-02 19:42 ` gregkh
2016-09-02 20:06 ` Levin, Alexander
2016-09-03 2:04 ` Mark Brown
2016-09-06 7:20 ` [Ksummit-discuss] [LTSI-dev] " Tsugikazu Shibata
2016-09-10 12:00 ` Theodore Ts'o
2016-09-12 16:27 ` Mark Brown
2016-09-12 17:14 ` Greg KH
2016-09-12 23:45 ` Mark Brown
2016-09-13 3:14 ` Theodore Ts'o
2016-09-13 10:14 ` Mark Brown
2016-09-13 13:19 ` Levin, Alexander
2016-09-13 6:19 ` Greg KH
2016-09-13 10:38 ` Mark Brown
2016-09-13 12:09 ` Greg KH
2016-09-13 12:20 ` Josh Boyer
2016-09-13 13:12 ` Greg KH
2016-09-13 16:23 ` Bird, Timothy
2016-09-13 19:02 ` Mark Brown
2016-09-14 14:47 ` Alex Shi
2016-09-20 5:15 ` Tsugikazu Shibata
2016-09-21 8:46 ` Alex Shi
2016-09-13 12:25 ` Geert Uytterhoeven
2016-09-13 19:21 ` Mark Brown
2016-09-14 1:49 ` Greg KH
2016-09-14 3:00 ` Guenter Roeck
2016-09-12 4:12 ` Alex Shi
2016-09-12 16:09 ` Masami Hiramatsu
2016-09-13 2:39 ` Alex Shi
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=1656524.OIRTMDr3jV@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=gregkh@linuxfoundation.org \
--cc=ksummit-discuss@lists.linuxfoundation.org \
--cc=ltsi-dev@lists.linuxfoundation.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