Gentoo Archives: gentoo-dev

From: "Steven J. Long" <slong@××××××××××××××××××.uk>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: [gentoo-kernel] Proper distribution integration of kernel *-sources, patches and configuration.
Date: Thu, 04 Jul 2013 05:26:27
Message-Id: 20130704052759.GB13271@rathaus.eclipse.co.uk
In Reply to: Re: [gentoo-dev] Re: Re: [gentoo-kernel] Proper distribution integration of kernel *-sources, patches and configuration. by Tom Wijsman
1 Tom Wijsman wrote:
2 > "Steven J. Long" wrote:
3 > > If it does [affect the build by default] then it should never be
4 > > applied, unless the user specifically asks for it, imo, and the
5 > > resultant kernel is labelled -exp as you suggest.
6 >
7 > Yes, we are going to introduce an experimental USE flag for this.
8
9 That's for the over-arching set of patches isn't it? Which takes care of
10 the labelling.
11
12 > > > It's just a matter of embedding each + block in the diff with a
13 > > > config check and updating the counts.
14 ..
15 > > > I can convert the original developer's patch whenever he updates
16 > > > it; or on top of that, write a script to generate the original
17 > > > patch back.
18
19 > > Please, just keep a copy of the original patch as well as the modified
20 > > output from the script, somewhere reasonable to you, if you are doing
21 > > any editing. Traceability is essential here.
22 >
23 > The need to keep duplicates around is a broken design; if you would
24 > need to do this, there is something worse going on.
25
26 There is indeed: there's major changes to other parts of the kernel tree,
27 even when the patch's configuration options are set to off, as they are
28 by default (or must be in the Gentoo experimental config patch.) That's
29 the reason they were not accepted, as has been discussed earlier in the
30 thread.
31
32 > But yes, some git branches can easily cover the editing part.
33
34 I think a lot of these things are checks that should happen before patches
35 are included, and on every upgrade. So we need to separate out what the
36 developer/ebuild-maintainer has to do to prepare files/, and what needs
37 to happen in the ebuild itself.
38
39 > > Personally I think it ill-advised, and would prefer simply that the
40 > > patch were not applied if the above process in your testing prior to
41 > > usage, showed that it would affect other parts of the build
42 > > inappropriately, even when configured off. Or it's known to do so,
43 > > like aufs.
44 >
45 > Maybe, we can hear whether the patch authors want to do something about
46 > this, so we don't have to convert patches like this; maybe most of them
47 > are willing to do this without a problem.
48
49 The conversation is definitely worth having. Especially if Gentoo runs
50 automated tests on the patchsets to verify previously "safe" patches
51 are still safe to apply unconditionally, ie that all changes are #ifdef
52 or #if guarded.
53
54 > Though, there are going to be
55 > parts that they want to unconditionally apply, which is why we will
56 > need to wrap those parts with a check.
57
58 Indeed; upstream patch authors are not going to suddenly change, especially
59 with the known-troublesome cases, while there is still the need to make
60 the patches available to users who would otherwise be applying them
61 without Gentoo -exp labelling.
62
63 > > Unless of course the user specifically requests it. This can be a
64 > > simple variable with a list of required patches, or whatever.
65 >
66 > With USE=-experimental (which will be the default) they are excluded by
67 > default, after enabling that the user can exclude patches by setting
68 > UNIPATCH_EXCLUDE through the package.env mechanism.
69
70 I'd feel happier if certain patches, the troublesome ones discussed, had
71 to be explicity enabled, before the configuration options and the patch
72 to kernel files took place. Perhaps via UNIPATCH_INCLUDE or USE=aufs.
73
74 Regards,
75 steveL.
76 --
77 #friendly-coders -- We're friendly, but we're not /that/ friendly ;-)

Replies