* [PATCH] docs: maintainer: discourage taking conversations off-list
@ 2024-07-12 14:49 Jakub Kicinski
2024-07-12 15:06 ` Greg KH
` (4 more replies)
0 siblings, 5 replies; 22+ messages in thread
From: Jakub Kicinski @ 2024-07-12 14:49 UTC (permalink / raw)
To: corbet; +Cc: Jakub Kicinski, workflows, linux-doc
Multiple vendors seem to prefer taking discussions off list, and
ask contributors to work with them privately rather than just send
patches to the list. I'd imagine this is because it's hard to fit in
time for random developers popping up with features to review into
packed schedule. From what I've seen "work in private" usually means
someone on the company side will be assigned to handle the interaction,
possibly months later. In worst case, the person scheduled to help
the contributor takes over and writes the code themselves.
This is not how the community is supposed to work.
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
CC: workflows@vger.kernel.org
CC: linux-doc@vger.kernel.org
---
.../maintainer/feature-and-driver-maintainers.rst | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/Documentation/maintainer/feature-and-driver-maintainers.rst b/Documentation/maintainer/feature-and-driver-maintainers.rst
index f04cc183e1de..ac7798280201 100644
--- a/Documentation/maintainer/feature-and-driver-maintainers.rst
+++ b/Documentation/maintainer/feature-and-driver-maintainers.rst
@@ -83,6 +83,17 @@ bugs as well, if the report is of reasonable quality or indicates a
problem that might be severe -- especially if they have *Supported*
status of the codebase in the MAINTAINERS file.
+Open development
+----------------
+
+Discussions about user reported issues, and development of new code
+should be conducted in a manner typical for the larger subsystem.
+It is common for development within a single company to be conducted
+behind closed doors. However, maintainers must not redirect discussions
+and development related to the upstream code from the upstream mailing lists
+to closed forums or private conversations. Reasonable exceptions to this
+guidance include discussions about security related issues.
+
Selecting the maintainer
========================
--
2.45.2
^ permalink raw reply [flat|nested] 22+ messages in thread* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 14:49 [PATCH] docs: maintainer: discourage taking conversations off-list Jakub Kicinski @ 2024-07-12 15:06 ` Greg KH 2024-07-12 15:25 ` Mark Brown ` (3 subsequent siblings) 4 siblings, 0 replies; 22+ messages in thread From: Greg KH @ 2024-07-12 15:06 UTC (permalink / raw) To: Jakub Kicinski; +Cc: corbet, workflows, linux-doc On Fri, Jul 12, 2024 at 07:49:03AM -0700, Jakub Kicinski wrote: > Multiple vendors seem to prefer taking discussions off list, and > ask contributors to work with them privately rather than just send > patches to the list. I'd imagine this is because it's hard to fit in > time for random developers popping up with features to review into > packed schedule. From what I've seen "work in private" usually means > someone on the company side will be assigned to handle the interaction, > possibly months later. In worst case, the person scheduled to help > the contributor takes over and writes the code themselves. > This is not how the community is supposed to work. > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > --- > CC: workflows@vger.kernel.org > CC: linux-doc@vger.kernel.org > --- > .../maintainer/feature-and-driver-maintainers.rst | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/Documentation/maintainer/feature-and-driver-maintainers.rst b/Documentation/maintainer/feature-and-driver-maintainers.rst > index f04cc183e1de..ac7798280201 100644 > --- a/Documentation/maintainer/feature-and-driver-maintainers.rst > +++ b/Documentation/maintainer/feature-and-driver-maintainers.rst > @@ -83,6 +83,17 @@ bugs as well, if the report is of reasonable quality or indicates a > problem that might be severe -- especially if they have *Supported* > status of the codebase in the MAINTAINERS file. > > +Open development > +---------------- > + > +Discussions about user reported issues, and development of new code > +should be conducted in a manner typical for the larger subsystem. > +It is common for development within a single company to be conducted > +behind closed doors. However, maintainers must not redirect discussions > +and development related to the upstream code from the upstream mailing lists > +to closed forums or private conversations. Reasonable exceptions to this > +guidance include discussions about security related issues. > + > Selecting the maintainer > ======================== > Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 14:49 [PATCH] docs: maintainer: discourage taking conversations off-list Jakub Kicinski 2024-07-12 15:06 ` Greg KH @ 2024-07-12 15:25 ` Mark Brown 2024-07-12 15:42 ` Shuah Khan 2024-07-12 18:43 ` Dan Williams ` (2 subsequent siblings) 4 siblings, 1 reply; 22+ messages in thread From: Mark Brown @ 2024-07-12 15:25 UTC (permalink / raw) To: Jakub Kicinski; +Cc: corbet, workflows, linux-doc [-- Attachment #1: Type: text/plain, Size: 1025 bytes --] On Fri, Jul 12, 2024 at 07:49:03AM -0700, Jakub Kicinski wrote: > +Open development > +---------------- > + > +Discussions about user reported issues, and development of new code > +should be conducted in a manner typical for the larger subsystem. > +It is common for development within a single company to be conducted > +behind closed doors. However, maintainers must not redirect discussions > +and development related to the upstream code from the upstream mailing lists > +to closed forums or private conversations. Reasonable exceptions to this > +guidance include discussions about security related issues. Reviewed-by: Mark Brown <broonie@kernel.org> I do think it's fine for people to have open places like github as an option as well, so long as they're optional for contributors and things pass through the lists in a normal fashion at some point. Directing people towards existing relevant discussions/reviews can work well. The main issues are taking things out of all visibility and blocking contributors. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 15:25 ` Mark Brown @ 2024-07-12 15:42 ` Shuah Khan 2024-07-12 18:11 ` Mauro Carvalho Chehab 0 siblings, 1 reply; 22+ messages in thread From: Shuah Khan @ 2024-07-12 15:42 UTC (permalink / raw) To: Mark Brown, Jakub Kicinski; +Cc: corbet, workflows, linux-doc, Shuah Khan On 7/12/24 09:25, Mark Brown wrote: > On Fri, Jul 12, 2024 at 07:49:03AM -0700, Jakub Kicinski wrote: > >> +Open development >> +---------------- >> + >> +Discussions about user reported issues, and development of new code >> +should be conducted in a manner typical for the larger subsystem. >> +It is common for development within a single company to be conducted >> +behind closed doors. However, maintainers must not redirect discussions >> +and development related to the upstream code from the upstream mailing lists >> +to closed forums or private conversations. Reasonable exceptions to this >> +guidance include discussions about security related issues. > > Reviewed-by: Mark Brown <broonie@kernel.org> > > I do think it's fine for people to have open places like github as an > option as well, so long as they're optional for contributors and things > pass through the lists in a normal fashion at some point. Directing > people towards existing relevant discussions/reviews can work well. The > main issues are taking things out of all visibility and blocking > contributors. +1 It is important to point out the prior open conversations if any that took place when patches go through reviews on kernel mailing lists. This is the practice for the most part for work stemming from discussions at conferences such as LPC. Reviewed-by: Shuah Khan <skhan@linuxfoundation.org> thanks, -- Shuah ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 15:42 ` Shuah Khan @ 2024-07-12 18:11 ` Mauro Carvalho Chehab 2024-07-12 18:19 ` Randy Dunlap 2024-07-12 23:45 ` Jakub Kicinski 0 siblings, 2 replies; 22+ messages in thread From: Mauro Carvalho Chehab @ 2024-07-12 18:11 UTC (permalink / raw) To: Shuah Khan; +Cc: Mark Brown, Jakub Kicinski, corbet, workflows, linux-doc Em Fri, 12 Jul 2024 09:42:07 -0600 Shuah Khan <skhan@linuxfoundation.org> escreveu: > On 7/12/24 09:25, Mark Brown wrote: > > On Fri, Jul 12, 2024 at 07:49:03AM -0700, Jakub Kicinski wrote: > > > >> +Open development > >> +---------------- > >> + > >> +Discussions about user reported issues, and development of new code > >> +should be conducted in a manner typical for the larger subsystem. > >> +It is common for development within a single company to be conducted > >> +behind closed doors. True. So what? > >> However, maintainers must not redirect discussions > >> +and development related to the upstream code from the upstream mailing lists > >> +to closed forums or private conversations. Reasonable exceptions to this > >> +guidance include discussions about security related issues. Not sure what this somewhat obscure message wants to accomplish. It is quite common to have developers and maintainers discussing outside public forums and internally at the companies they're working for. There are lots of reasonable exceptions besides security. On my years of experience, the reasons I've seen more often are: 1. language and/or cultural barriers; 2. teaching and mentoring new developers to start contributing upstream; 3. need to have internal discussions in the light of some IP protected material. (1) and (2) are very common for non-native English speakers and for newbies, and we do want to have more contributions from them. (3) is unavoidable, as discussions related to protected IP can't be disclosed due to legal reasons. Also, if you take it to the letter, have discussions on LPC, summits BoFs, other events handled by the open source community and wall conversations are "closed forums/private conversations". I've seen a lot of good results produced on such private conversations that solved relevant conflicts and got materialized as great contributions. There's nothing wrong with that, provided that the outcoming of such internal discussions are reflected publicly as patches, summit minutes, LWN articles, etc. The only issues I see with such talks is that the work when co-authored should be properly marked as such and that reviewews/acks taken behind doors don't have the same meaning as an upstream review, as they may be due to some internal formalities. IMO, the best would instead to give a positive message. E. g. something like: Maintainers must encourage discussions and reviews to happen at public mailing lists, avoiding whenever possible to have internal discussions. Regards, Mauro ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 18:11 ` Mauro Carvalho Chehab @ 2024-07-12 18:19 ` Randy Dunlap 2024-07-12 23:45 ` Jakub Kicinski 1 sibling, 0 replies; 22+ messages in thread From: Randy Dunlap @ 2024-07-12 18:19 UTC (permalink / raw) To: Mauro Carvalho Chehab, Shuah Khan Cc: Mark Brown, Jakub Kicinski, corbet, workflows, linux-doc On 7/12/24 11:11 AM, Mauro Carvalho Chehab wrote: > IMO, the best would instead to give a positive message. E. g. > something like: > > Maintainers must encourage discussions and reviews to happen > at public mailing lists, avoiding whenever possible to have > internal discussions. Ack that. with s/at public/on public/ -- ~Randy ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 18:11 ` Mauro Carvalho Chehab 2024-07-12 18:19 ` Randy Dunlap @ 2024-07-12 23:45 ` Jakub Kicinski 2024-07-13 0:00 ` Dan Williams 2024-07-13 7:43 ` Mauro Carvalho Chehab 1 sibling, 2 replies; 22+ messages in thread From: Jakub Kicinski @ 2024-07-12 23:45 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Shuah Khan, Mark Brown, corbet, workflows, linux-doc On Fri, 12 Jul 2024 20:11:56 +0200 Mauro Carvalho Chehab wrote: > Not sure what this somewhat obscure message wants to accomplish. > > It is quite common to have developers and maintainers discussing > outside public forums and internally at the companies they're working > for. There are lots of reasonable exceptions besides security. On my > years of experience, the reasons I've seen more often are: > > 1. language and/or cultural barriers; > 2. teaching and mentoring new developers to start contributing upstream; > 3. need to have internal discussions in the light of some IP protected > material. > > (1) and (2) are very common for non-native English speakers > and for newbies, and we do want to have more contributions from > them. (3) is unavoidable, as discussions related to protected > IP can't be disclosed due to legal reasons. Those are valid points but I don't know how to weave them in without losing clarity. The goal is also to call out such behavior to _contributors_, so that they know they can reach out to more senior maintainers if it happens to them. We don't know when discussion is taken private (by definition). Otherwise contributors get mistreated by some corpo-maintainer and they turn away from Linux :( > Also, if you take it to the letter, have discussions on LPC, > summits BoFs, other events handled by the open source community > and wall conversations are "closed forums/private conversations". > I've seen a lot of good results produced on such private > conversations that solved relevant conflicts and got > materialized as great contributions. > > There's nothing wrong with that, provided that the outcoming of > such internal discussions are reflected publicly as patches, > summit minutes, LWN articles, etc. Would it help if we speak of "open forums" instead of mailing list? I think LPC including "hallway track" fall squarely under "conducted in a manner typical for the larger subsystem." Here's slightly edited version: Open development ---------------- Discussions about user reported issues, and development of new code should be conducted in a manner typical for the larger subsystem. It is common for development within a single company to be conducted behind closed doors. However, development and discussions initiated by community members must not be redirected from public to closed forums or to private email conversations. Reasonable exceptions to this guidance include discussions about security related issues. > The only issues I see with such talks is that the work when > co-authored should be properly marked as such and that > reviewews/acks taken behind doors don't have the same meaning > as an upstream review, as they may be due to some internal > formalities. > > IMO, the best would instead to give a positive message. E. g. > something like: > > Maintainers must encourage discussions and reviews to happen > at public mailing lists, avoiding whenever possible to have > internal discussions. That's not the message, tho. If someone emails a company privately that's fine. If company has internal processes for its development - also fine (as explicitly called out). I'm trying to set the baseline, not describe the ideal world. I am specifically calling out that if someone submits a patch, or reports a regression the correct response is to review it on the list. Like a normal person. Not reply privately that "it's on the company roadmap, just wait" :| Or reply with a patch company has "forgotten to upstream".. Maybe it's a cultural thing, but to me this is where the relentless positivity is counter-productive. I don't want to encourage people to be angles. I want them not to do the shitty thing. ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 23:45 ` Jakub Kicinski @ 2024-07-13 0:00 ` Dan Williams 2024-07-13 0:12 ` Jakub Kicinski 2024-07-13 7:43 ` Mauro Carvalho Chehab 1 sibling, 1 reply; 22+ messages in thread From: Dan Williams @ 2024-07-13 0:00 UTC (permalink / raw) To: Jakub Kicinski, Mauro Carvalho Chehab Cc: Shuah Khan, Mark Brown, corbet, workflows, linux-doc Jakub Kicinski wrote: [..] > Would it help if we speak of "open forums" instead of mailing list? > I think LPC including "hallway track" fall squarely under "conducted > in a manner typical for the larger subsystem." Here's slightly edited > version: > > Open development > ---------------- > > Discussions about user reported issues, and development of new code > should be conducted in a manner typical for the larger subsystem. > It is common for development within a single company to be conducted > behind closed doors. However, development and discussions initiated > by community members must not be redirected from public to closed forums > or to private email conversations. Reasonable exceptions to this guidance > include discussions about security related issues. > > > The only issues I see with such talks is that the work when > > co-authored should be properly marked as such and that > > reviewews/acks taken behind doors don't have the same meaning > > as an upstream review, as they may be due to some internal > > formalities. > > > > IMO, the best would instead to give a positive message. E. g. > > something like: > > > > Maintainers must encourage discussions and reviews to happen > > at public mailing lists, avoiding whenever possible to have > > internal discussions. > > That's not the message, tho. If someone emails a company privately > that's fine. If company has internal processes for its development - > also fine (as explicitly called out). I'm trying to set the baseline, > not describe the ideal world. > > I am specifically calling out that if someone submits a patch, or > reports a regression the correct response is to review it on the list. > Like a normal person. > Not reply privately that "it's on the company roadmap, just wait" :| > Or reply with a patch company has "forgotten to upstream".. > > Maybe it's a cultural thing, but to me this is where the relentless > positivity is counter-productive. I don't want to encourage people > to be angles. I want them not to do the shitty thing. > To be honest I am lost trying to understand who the audience is and what the actionable takeaway is from the guidance. It sounds like you are trying to educate drive-by submitters to push back against requests to take issues off the list. I think that's a reasonable education campaign, but doesn't that kind of "submitter bill-of-rights" note belong in Documentation/admin-guide/reporting-{issues,regressions}.rst as explicit "how to work your issue upstream" guidance? ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 0:00 ` Dan Williams @ 2024-07-13 0:12 ` Jakub Kicinski 0 siblings, 0 replies; 22+ messages in thread From: Jakub Kicinski @ 2024-07-13 0:12 UTC (permalink / raw) To: Dan Williams Cc: Mauro Carvalho Chehab, Shuah Khan, Mark Brown, corbet, workflows, linux-doc On Fri, 12 Jul 2024 17:00:44 -0700 Dan Williams wrote: > To be honest I am lost trying to understand who the audience is and what > the actionable takeaway is from the guidance. It sounds like you are > trying to educate drive-by submitters to push back against requests to > take issues off the list. I think that's a reasonable education > campaign, but doesn't that kind of "submitter bill-of-rights" note > belong in Documentation/admin-guide/reporting-{issues,regressions}.rst > as explicit "how to work your issue upstream" guidance? Fair point. Not sure if reporting-* is a good place, I care about code contributions 10x more than issues and other discussions. No strong preference on the placement, as long as its documented... ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 23:45 ` Jakub Kicinski 2024-07-13 0:00 ` Dan Williams @ 2024-07-13 7:43 ` Mauro Carvalho Chehab 1 sibling, 0 replies; 22+ messages in thread From: Mauro Carvalho Chehab @ 2024-07-13 7:43 UTC (permalink / raw) To: Jakub Kicinski Cc: Mauro Carvalho Chehab, Shuah Khan, Mark Brown, corbet, workflows, linux-doc Em Fri, 12 Jul 2024 16:45:04 -0700 Jakub Kicinski <kuba@kernel.org> escreveu: > On Fri, 12 Jul 2024 20:11:56 +0200 Mauro Carvalho Chehab wrote: > > Not sure what this somewhat obscure message wants to accomplish. > > > > It is quite common to have developers and maintainers discussing > > outside public forums and internally at the companies they're working > > for. There are lots of reasonable exceptions besides security. On my > > years of experience, the reasons I've seen more often are: > > > > 1. language and/or cultural barriers; > > 2. teaching and mentoring new developers to start contributing upstream; > > 3. need to have internal discussions in the light of some IP protected > > material. > > > > (1) and (2) are very common for non-native English speakers > > and for newbies, and we do want to have more contributions from > > them. (3) is unavoidable, as discussions related to protected > > IP can't be disclosed due to legal reasons. > > Those are valid points but I don't know how to weave them in without > losing clarity. > > The goal is also to call out such behavior to > _contributors_, Then, placing it under Documentation/maintainer is not the right place ;-) > so that they know they can reach out to more senior > maintainers if it happens to them. We don't know when discussion is > taken private (by definition). Otherwise contributors get mistreated > by some corpo-maintainer and they turn away from Linux :( > > > Also, if you take it to the letter, have discussions on LPC, > > summits BoFs, other events handled by the open source community > > and wall conversations are "closed forums/private conversations". > > I've seen a lot of good results produced on such private > > conversations that solved relevant conflicts and got > > materialized as great contributions. > > > > There's nothing wrong with that, provided that the outcoming of > > such internal discussions are reflected publicly as patches, > > summit minutes, LWN articles, etc. > > Would it help if we speak of "open forums" instead of mailing list? > I think LPC including "hallway track" fall squarely under "conducted > in a manner typical for the larger subsystem." Here's slightly edited > version: Well, hallway track, invitation-only events and such aren't exactly "open forums". > > Open development > ---------------- Assuming that this got moved to a contributor's document, as from your comments the target audience is ocasional community contributors, see my comments below. > > Discussions about user reported issues, and development of new code > should be conducted in a manner typical for the larger subsystem. This seems to vague and meaningless to an occasional community developer. For instance, how someone that sends a contribution to subsystem X knows if the subsystem is a "larger subsystem", so it is "typical"? What's the "typical" rules? Btw, larger subsystems usually have their own set of rules. A couple of them are documented at maintainer-profile.rst, but most don't. > It is common for development within a single company to be conducted > behind closed doors. IMO, this is somewhat out of scope. I mean, what a contributor should expect from this? I bet a new contributor to a driver made by company X, after reading this paragraph, would try to submit patches privately to company X maintainers, which seems to be the opposite from the message you wanted to give. > However, development and discussions initiated > by community members must not be redirected from public to closed forums > or to private email conversations. Reasonable exceptions to this guidance > include discussions about security related issues. In the light of a contributor focused document, I would be a lot more direct here, using a text similar to this: Please don't send patches or reply privately to discussions initiated on public forums, as most maintainers won't appreciate such kind of behavior. Private communications outside company's own internal discussions are usually tolerated only when there are very good reasons for that, like when talking about undisclosed security issues. > > > The only issues I see with such talks is that the work when > > co-authored should be properly marked as such and that > > reviewews/acks taken behind doors don't have the same meaning > > as an upstream review, as they may be due to some internal > > formalities. > > > > IMO, the best would instead to give a positive message. E. g. > > something like: > > > > Maintainers must encourage discussions and reviews to happen > > at public mailing lists, avoiding whenever possible to have > > internal discussions. > > That's not the message, tho. If someone emails a company privately > that's fine. If company has internal processes for its development - > also fine (as explicitly called out). I'm trying to set the baseline, > not describe the ideal world. > > I am specifically calling out that if someone submits a patch, or > reports a regression the correct response is to review it on the list. > Like a normal person. It is clear now, but as Dan pointed out, this is the wrong document for contributors, as Documentation/maintainers are focused on maintainers ;-) So, if something has to be added there, it should be to try to setup a baseline for maintainer's typical behavior. > Not reply privately that "it's on the company roadmap, just wait" :| > Or reply with a patch company has "forgotten to upstream".. I'm afraid that, in the first case, we'll still see this privately, as companies won't be disclosing publicly what it is on their roadmaps. "Forgotten" patches should indeed be sent publicly for review. The text I added earlier should hopefully cover it. Perhaps a note about that at the beginning of Documentation/process/submitting-patches.rst could be more effective, e. g. something like this: diff --git a/Documentation/process/submitting-patches.rst b/Documentation/process/submitting-patches.rst index 66029999b587..3bdfb820a707 100644 --- a/Documentation/process/submitting-patches.rst +++ b/Documentation/process/submitting-patches.rst @@ -16,6 +16,9 @@ for a list of items to check before submitting code. For device tree binding patches, read Documentation/devicetree/bindings/submitting-patches.rst. +Please notice that Linux patches are meant to be submitted publicly. +Don't submit patches privately, except for security patches. + This documentation assumes that you're using ``git`` to prepare your patches. If you're unfamiliar with ``git``, you would be well-advised to learn how to use it, it will make your life as a kernel developer and in general much > Maybe it's a cultural thing, but to me this is where the relentless > positivity is counter-productive. I don't want to encourage people > to be angles. I want them not to do the shitty thing. Again, you placed the comments at the maintainer's document, where the scope of of "don't do this" is too limited. I would expect that people that volunteered themselves to do some maintainership are more willing to react to positive messages about the expected maintainer's behavior. On a contributor's document, though, I agree with you that a set of rules like don't do top posting, don't submit patches privately, and such are more effective. Thanks, Mauro ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 14:49 [PATCH] docs: maintainer: discourage taking conversations off-list Jakub Kicinski 2024-07-12 15:06 ` Greg KH 2024-07-12 15:25 ` Mark Brown @ 2024-07-12 18:43 ` Dan Williams 2024-07-13 0:05 ` Jakub Kicinski 2024-07-13 14:26 ` Laurent Pinchart 2024-07-13 14:28 ` Carlos Bilbao 4 siblings, 1 reply; 22+ messages in thread From: Dan Williams @ 2024-07-12 18:43 UTC (permalink / raw) To: Jakub Kicinski, corbet; +Cc: Jakub Kicinski, workflows, linux-doc Jakub Kicinski wrote: > Multiple vendors seem to prefer taking discussions off list, and > ask contributors to work with them privately rather than just send > patches to the list. I'd imagine this is because it's hard to fit in > time for random developers popping up with features to review into > packed schedule. From what I've seen "work in private" usually means > someone on the company side will be assigned to handle the interaction, > possibly months later. In worst case, the person scheduled to help > the contributor takes over and writes the code themselves. > This is not how the community is supposed to work. > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > --- > CC: workflows@vger.kernel.org > CC: linux-doc@vger.kernel.org > --- > .../maintainer/feature-and-driver-maintainers.rst | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/Documentation/maintainer/feature-and-driver-maintainers.rst b/Documentation/maintainer/feature-and-driver-maintainers.rst > index f04cc183e1de..ac7798280201 100644 > --- a/Documentation/maintainer/feature-and-driver-maintainers.rst > +++ b/Documentation/maintainer/feature-and-driver-maintainers.rst > @@ -83,6 +83,17 @@ bugs as well, if the report is of reasonable quality or indicates a > problem that might be severe -- especially if they have *Supported* > status of the codebase in the MAINTAINERS file. > > +Open development > +---------------- > + > +Discussions about user reported issues, and development of new code > +should be conducted in a manner typical for the larger subsystem. > +It is common for development within a single company to be conducted > +behind closed doors. However, maintainers must not redirect discussions > +and development related to the upstream code from the upstream mailing lists > +to closed forums or private conversations. Reasonable exceptions to this > +guidance include discussions about security related issues. > + This reads as a vague ambiguous quasi-threat with no actionable way to enforce it. In contrast, successful maintainers already have a sense of the benefits of pushing discussions to the list as much as possible. For new and growing maintainers, which I assume are the audience for this guidance, that are unaware of the pitfalls of taking conversations off-list, they likely need help understanding the *benefits* of open development. So if this goes in as is, so be it, but it feels like a missed opportunity to extoll the virtues of open development. The benefits are in the same vector as the "release early, release often" guidance where the urge to polish a solution in private is a common trait of newcomers. Lets document some tribal knowledge of how one moves past that first instinct. ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 18:43 ` Dan Williams @ 2024-07-13 0:05 ` Jakub Kicinski 2024-07-13 1:18 ` Dan Williams 2024-07-13 8:13 ` Mauro Carvalho Chehab 0 siblings, 2 replies; 22+ messages in thread From: Jakub Kicinski @ 2024-07-13 0:05 UTC (permalink / raw) To: Dan Williams; +Cc: corbet, workflows, linux-doc On Fri, 12 Jul 2024 11:43:14 -0700 Dan Williams wrote: > This reads as a vague ambiguous quasi-threat with no actionable way to > enforce it. In contrast, successful maintainers already have a sense of > the benefits of pushing discussions to the list as much as possible. > > For new and growing maintainers, which I assume are the audience for > this guidance, that are unaware of the pitfalls of taking conversations > off-list, they likely need help understanding the *benefits* of open > development. I don't think so. If your boss comes to you and says "Dan, from now on try not to reply to customers on the list, open a ticket first and only reply once tickets is resolved". Is it more useful to you to be able to extol the benefits of open source process; or to tell them "this is not allowed, here's a link to a quasi-threat"? > So if this goes in as is, so be it, but it feels like a missed > opportunity to extoll the virtues of open development. The benefits are > in the same vector as the "release early, release often" guidance where > the urge to polish a solution in private is a common trait of newcomers. > Lets document some tribal knowledge of how one moves past that first > instinct. Hm, the disconnect may be that you think this happens with maintainers without upstream experience. So we can train them up to be better. In most cases it happens to folks with experience who are good maintainers. They just get 2 orders of magnitudes more patches from inside the company that outside. Then a contribution comes from outside, the maintainer is overworked, and tries to shoehorn the patch into the existing, internal-only process. ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 0:05 ` Jakub Kicinski @ 2024-07-13 1:18 ` Dan Williams 2024-07-13 8:13 ` Mauro Carvalho Chehab 1 sibling, 0 replies; 22+ messages in thread From: Dan Williams @ 2024-07-13 1:18 UTC (permalink / raw) To: Jakub Kicinski, Dan Williams; +Cc: corbet, workflows, linux-doc Jakub Kicinski wrote: [..] > > So if this goes in as is, so be it, but it feels like a missed > > opportunity to extoll the virtues of open development. The benefits are > > in the same vector as the "release early, release often" guidance where > > the urge to polish a solution in private is a common trait of newcomers. > > Lets document some tribal knowledge of how one moves past that first > > instinct. > > Hm, the disconnect may be that you think this happens with maintainers > without upstream experience. So we can train them up to be better. > In most cases it happens to folks with experience who are good > maintainers. They just get 2 orders of magnitudes more patches from > inside the company that outside. Then a contribution comes from outside, > the maintainer is overworked, and tries to shoehorn the patch into the > existing, internal-only process. Oh, ok, I was failing to grok that from "Open development" note in isolation. If the guidance is for maintainers, I would say just put your changelog directly into the docuementation, that reads as specific and actionable to me. For submitters an update to reporting-* might be also be useful to remind them to push back on requests to go off-list, but not necessary. ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 0:05 ` Jakub Kicinski 2024-07-13 1:18 ` Dan Williams @ 2024-07-13 8:13 ` Mauro Carvalho Chehab 2024-07-13 14:19 ` Laurent Pinchart 2024-07-15 13:29 ` Mark Brown 1 sibling, 2 replies; 22+ messages in thread From: Mauro Carvalho Chehab @ 2024-07-13 8:13 UTC (permalink / raw) To: Jakub Kicinski; +Cc: Dan Williams, corbet, workflows, linux-doc Em Fri, 12 Jul 2024 17:05:58 -0700 Jakub Kicinski <kuba@kernel.org> escreveu: > On Fri, 12 Jul 2024 11:43:14 -0700 Dan Williams wrote: > > This reads as a vague ambiguous quasi-threat with no actionable way to > > enforce it. In contrast, successful maintainers already have a sense of > > the benefits of pushing discussions to the list as much as possible. > > > > For new and growing maintainers, which I assume are the audience for > > this guidance, that are unaware of the pitfalls of taking conversations > > off-list, they likely need help understanding the *benefits* of open > > development. > > I don't think so. If your boss comes to you and says "Dan, from now on > try not to reply to customers on the list, open a ticket first and only > reply once tickets is resolved". Is it more useful to you to be able to > extol the benefits of open source process; or to tell them "this is not > allowed, here's a link to a quasi-threat"? No matter what you write, between your text and their boss's directive, I bet the latter will be a lot more effective. > > So if this goes in as is, so be it, but it feels like a missed > > opportunity to extoll the virtues of open development. The benefits are > > in the same vector as the "release early, release often" guidance where > > the urge to polish a solution in private is a common trait of newcomers. > > Lets document some tribal knowledge of how one moves past that first > > instinct. > > Hm, the disconnect may be that you think this happens with maintainers > without upstream experience. So we can train them up to be better. No, that's the case where you can still "fix" maintainer's behaviors. > In most cases it happens to folks with experience who are good > maintainers. They just get 2 orders of magnitudes more patches from > inside the company that outside. Then a contribution comes from outside, > the maintainer is overworked, and tries to shoehorn the patch into the > existing, internal-only process. It seems unavoidable that internal patches have higher priorities even if the maintainer is not overloaded. Even on a perfect world, the degree of confidence on internal patches is usually orders of magnitude higher, as internal devs have access to internal product documentation, future line of products that will re-use the same driver and, on larger projects, will also be already tested by internal CI-based regression tests. The external patches won't have that, so they need to be reviewed by an internal developer, checked against internal docs and then submitted to the company's internal CI regression test infra to achieve the same degree of confidence. That not to mention that company will almost always prioritize new product support over maintaining existing products. No do/don't kind of document will change that. A change like that should come top/down, so it has to be addressed via other strategies, like documents underlining the benefits of upstream first, and tutorials/speeches aimed at companies management staff. Thanks, Mauro ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 8:13 ` Mauro Carvalho Chehab @ 2024-07-13 14:19 ` Laurent Pinchart 2024-07-13 16:07 ` Mauro Carvalho Chehab 2024-07-15 13:29 ` Mark Brown 1 sibling, 1 reply; 22+ messages in thread From: Laurent Pinchart @ 2024-07-13 14:19 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Jakub Kicinski, Dan Williams, corbet, workflows, linux-doc On Sat, Jul 13, 2024 at 10:13:28AM +0200, Mauro Carvalho Chehab wrote: > Em Fri, 12 Jul 2024 17:05:58 -0700 Jakub Kicinski escreveu: > > On Fri, 12 Jul 2024 11:43:14 -0700 Dan Williams wrote: > > > This reads as a vague ambiguous quasi-threat with no actionable way to > > > enforce it. In contrast, successful maintainers already have a sense of > > > the benefits of pushing discussions to the list as much as possible. > > > > > > For new and growing maintainers, which I assume are the audience for > > > this guidance, that are unaware of the pitfalls of taking conversations > > > off-list, they likely need help understanding the *benefits* of open > > > development. > > > > I don't think so. If your boss comes to you and says "Dan, from now on > > try not to reply to customers on the list, open a ticket first and only > > reply once tickets is resolved". Is it more useful to you to be able to > > extol the benefits of open source process; or to tell them "this is not > > allowed, here's a link to a quasi-threat"? > > No matter what you write, between your text and their boss's directive, > I bet the latter will be a lot more effective. I don't agree with this. I have found clear written rules valuable personally when discussing with management. Being able to point to upstream policies and tell "this is not allowed" helped change internal processes. It will obviously not have a 100% success rate, but it's not useless. > > > So if this goes in as is, so be it, but it feels like a missed > > > opportunity to extoll the virtues of open development. The benefits are > > > in the same vector as the "release early, release often" guidance where > > > the urge to polish a solution in private is a common trait of newcomers. > > > Lets document some tribal knowledge of how one moves past that first > > > instinct. > > > > Hm, the disconnect may be that you think this happens with maintainers > > without upstream experience. So we can train them up to be better. > > No, that's the case where you can still "fix" maintainer's behaviors. > > > In most cases it happens to folks with experience who are good > > maintainers. They just get 2 orders of magnitudes more patches from > > inside the company that outside. Then a contribution comes from outside, > > the maintainer is overworked, and tries to shoehorn the patch into the > > existing, internal-only process. > > It seems unavoidable that internal patches have higher priorities even > if the maintainer is not overloaded. > > Even on a perfect world, the degree of confidence on internal patches is > usually orders of magnitude higher, as internal devs have access to internal > product documentation, future line of products that will re-use the same > driver and, on larger projects, will also be already tested by internal > CI-based regression tests. > > The external patches won't have that, so they need to be reviewed by > an internal developer, checked against internal docs and then submitted to > the company's internal CI regression test infra to achieve the same degree > of confidence. We don't seem to live in the same (perfect or imperfect) world. In my experience, contributions from external kernel developers are often better than patches originating from within a company. External contributors are more used to follow proper upstream review processes. > That not to mention that company will almost always prioritize new > product support over maintaining existing products. > > No do/don't kind of document will change that. > > A change like that should come top/down, so it has to be addressed > via other strategies, like documents underlining the benefits of > upstream first, and tutorials/speeches aimed at companies management > staff. -- Regards, Laurent Pinchart ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 14:19 ` Laurent Pinchart @ 2024-07-13 16:07 ` Mauro Carvalho Chehab 2024-07-13 23:29 ` Jakub Kicinski 0 siblings, 1 reply; 22+ messages in thread From: Mauro Carvalho Chehab @ 2024-07-13 16:07 UTC (permalink / raw) To: Laurent Pinchart Cc: Mauro Carvalho Chehab, Jakub Kicinski, Dan Williams, corbet, workflows, linux-doc Em Sat, 13 Jul 2024 17:19:56 +0300 Laurent Pinchart <laurent.pinchart@ideasonboard.com> escreveu: > On Sat, Jul 13, 2024 at 10:13:28AM +0200, Mauro Carvalho Chehab wrote: > > Em Fri, 12 Jul 2024 17:05:58 -0700 Jakub Kicinski escreveu: > > > On Fri, 12 Jul 2024 11:43:14 -0700 Dan Williams wrote: > > > > This reads as a vague ambiguous quasi-threat with no actionable way to > > > > enforce it. In contrast, successful maintainers already have a sense of > > > > the benefits of pushing discussions to the list as much as possible. > > > > > > > > For new and growing maintainers, which I assume are the audience for > > > > this guidance, that are unaware of the pitfalls of taking conversations > > > > off-list, they likely need help understanding the *benefits* of open > > > > development. > > > > > > I don't think so. If your boss comes to you and says "Dan, from now on > > > try not to reply to customers on the list, open a ticket first and only > > > reply once tickets is resolved". Is it more useful to you to be able to > > > extol the benefits of open source process; or to tell them "this is not > > > allowed, here's a link to a quasi-threat"? > > > > No matter what you write, between your text and their boss's directive, > > I bet the latter will be a lot more effective. > > I don't agree with this. I have found clear written rules valuable > personally when discussing with management. Being able to point to > upstream policies and tell "this is not allowed" helped change internal > processes. It will obviously not have a 100% success rate, but it's not > useless. That's basically what I said: such things happen top/down and not at developer/maintainer level. Sure having it documented somewhere, on some document that management would actually read can be useful on discussions, specially when companies hire a third party company to help with their upstream process. The point is: a developer-focused document - or even a submission document process won't affect how companies do their inner source development: companies that have internally heavy development teams will basically keep running their own internal development cycle, being concerned about upstream only when their product managers authorize them to publicly disclosure patches. If the goal is to create a management awareness about how to better cope with upstream, then my suggestion is to write a new document from scratch [1] focusing specifically on that, containing a list of best practices with focus on orienting management inside companies about how to deal with developers and maintainers working on upstream. [1] there is a document there already that seems to be focused at management style, but it doesn't cover any best practices with regards to innersource/upstream: Documentation/process/management-style.rst > > > > So if this goes in as is, so be it, but it feels like a missed > > > > opportunity to extoll the virtues of open development. The benefits are > > > > in the same vector as the "release early, release often" guidance where > > > > the urge to polish a solution in private is a common trait of newcomers. > > > > Lets document some tribal knowledge of how one moves past that first > > > > instinct. > > > > > > Hm, the disconnect may be that you think this happens with maintainers > > > without upstream experience. So we can train them up to be better. > > > > No, that's the case where you can still "fix" maintainer's behaviors. > > > > > In most cases it happens to folks with experience who are good > > > maintainers. They just get 2 orders of magnitudes more patches from > > > inside the company that outside. Then a contribution comes from outside, > > > the maintainer is overworked, and tries to shoehorn the patch into the > > > existing, internal-only process. > > > > It seems unavoidable that internal patches have higher priorities even > > if the maintainer is not overloaded. > > > > Even on a perfect world, the degree of confidence on internal patches is > > usually orders of magnitude higher, as internal devs have access to internal > > product documentation, future line of products that will re-use the same > > driver and, on larger projects, will also be already tested by internal > > CI-based regression tests. > > > > The external patches won't have that, so they need to be reviewed by > > an internal developer, checked against internal docs and then submitted to > > the company's internal CI regression test infra to achieve the same degree > > of confidence. > > We don't seem to live in the same (perfect or imperfect) world. In my > experience, contributions from external kernel developers are often > better than patches originating from within a company. External > contributors are more used to follow proper upstream review processes. It is not about being better/worse. It is about fitting inside the innersource processes related to quality ensurance (QA). Vendors that see their Linux driver as part of their product delivery have such processes and won't be willing to accept patches that don't pass on their processes. So, all patches (internal or external ones) need to be submitted to their QA processes, effectively meaning that someone inside such companies should be responsible for reviewing the patch. Heh, you can see this even on distributions like Debian, Ubuntu, Fedora, openSUSE - and even on open source userspace projects: if you submit a bug report or a patch, someone will handle the ticket, reviewing your patch and/or writing their own patches to solve the issues. Inside companies (in special big ones), it usually means that a manager or a triage team will pick the bug report/issue and then delegate it to an internal developer, who will be internally owning the upstream patch set, doing tests, reviews and running it on the company's CI tools. Smaller companies, companies that are starting now with their upstream process and companies where Linux is not their main focus usually delegate it to third party companies, who will be handling it on their behalf or have small open source teams. Those are the ones where changing processes are easier. Bigger companies have more complex development processes. Among those, there are the ones where Linux is part of their products. They are usually responsible for a vast amount of Kernel patches[1]. Changing their process is hard and takes a lot of time/efforts. [1] Looking at https://lwn.net/Articles/972605/, it can be seen that: 7.4% is unknown, 6.8% is none and 2.0% consulting, meaning that more than 80% is credited to "direct" contribution. Granted, part of those were actually be done by third parties (or with their help). Still, just the top 17 companies listed there are responsible for more than 50% of the upstream changes. I bet that almost all of those (if not all) have their own internal innersource processes, and patches are only accepted once the company developers/maintainers handled external patches and have them passed though their QA systems. Thanks, Mauro ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 16:07 ` Mauro Carvalho Chehab @ 2024-07-13 23:29 ` Jakub Kicinski 0 siblings, 0 replies; 22+ messages in thread From: Jakub Kicinski @ 2024-07-13 23:29 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Laurent Pinchart, Dan Williams, corbet, workflows, linux-doc On Sat, 13 Jul 2024 18:07:25 +0200 Mauro Carvalho Chehab wrote: > That's basically what I said: such things happen top/down and not at > developer/maintainer level. Sure having it documented somewhere, on > some document that management would actually read can be useful on > discussions, specially when companies hire a third party company to > help with their upstream process. > > The point is: a developer-focused document - or even a submission > document process won't affect how companies do their inner source It's not a developer-focused document, Mauro. I said that the document should *ALSO*, not exclusively inform contributors that delay tactics and dismissing external contributors is not okay in Linux. > development: companies that have internally heavy development teams > will basically keep running their own internal development cycle, > being concerned about upstream only when their product managers > authorize them to publicly disclosure patches. > > If the goal is to create a management awareness about how to better > cope with upstream, then my suggestion is to write a new document > from scratch [1] focusing specifically on that, containing a list of > best practices with focus on orienting management inside companies > about how to deal with developers and maintainers working on > upstream. > > [1] there is a document there already that seems to be focused at > management style, but it doesn't cover any best practices > with regards to innersource/upstream: > > Documentation/process/management-style.rst Like multiple members of the TAB I did have a stab at rewriting management style at some point. It's not easy. Don't let perfect be the enemy of good. ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 8:13 ` Mauro Carvalho Chehab 2024-07-13 14:19 ` Laurent Pinchart @ 2024-07-15 13:29 ` Mark Brown 1 sibling, 0 replies; 22+ messages in thread From: Mark Brown @ 2024-07-15 13:29 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Jakub Kicinski, Dan Williams, corbet, workflows, linux-doc [-- Attachment #1: Type: text/plain, Size: 908 bytes --] On Sat, Jul 13, 2024 at 10:13:28AM +0200, Mauro Carvalho Chehab wrote: > Jakub Kicinski <kuba@kernel.org> escreveu: > > I don't think so. If your boss comes to you and says "Dan, from now on > > try not to reply to customers on the list, open a ticket first and only > > reply once tickets is resolved". Is it more useful to you to be able to > > extol the benefits of open source process; or to tell them "this is not > > allowed, here's a link to a quasi-threat"? > No matter what you write, between your text and their boss's directive, > I bet the latter will be a lot more effective. Like Laurent says I've had a bunch of feedback from people in companies that their management understands the need to work with upstream processes and that it's really useful to them to be able to point to something upstream says. It's helpful for them in creating good processes internally and resisting pressure. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 14:49 [PATCH] docs: maintainer: discourage taking conversations off-list Jakub Kicinski ` (2 preceding siblings ...) 2024-07-12 18:43 ` Dan Williams @ 2024-07-13 14:26 ` Laurent Pinchart 2024-07-13 23:23 ` Jakub Kicinski 2024-07-13 14:28 ` Carlos Bilbao 4 siblings, 1 reply; 22+ messages in thread From: Laurent Pinchart @ 2024-07-13 14:26 UTC (permalink / raw) To: Jakub Kicinski; +Cc: corbet, workflows, linux-doc Hi Jakub, Thank you for the patch. On Fri, Jul 12, 2024 at 07:49:03AM -0700, Jakub Kicinski wrote: > Multiple vendors seem to prefer taking discussions off list, and > ask contributors to work with them privately rather than just send > patches to the list. I'd imagine this is because it's hard to fit in > time for random developers popping up with features to review into > packed schedule. From what I've seen "work in private" usually means > someone on the company side will be assigned to handle the interaction, > possibly months later. In worst case, the person scheduled to help > the contributor takes over and writes the code themselves. > This is not how the community is supposed to work. > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > --- > CC: workflows@vger.kernel.org > CC: linux-doc@vger.kernel.org > --- > .../maintainer/feature-and-driver-maintainers.rst | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/Documentation/maintainer/feature-and-driver-maintainers.rst b/Documentation/maintainer/feature-and-driver-maintainers.rst > index f04cc183e1de..ac7798280201 100644 > --- a/Documentation/maintainer/feature-and-driver-maintainers.rst > +++ b/Documentation/maintainer/feature-and-driver-maintainers.rst > @@ -83,6 +83,17 @@ bugs as well, if the report is of reasonable quality or indicates a > problem that might be severe -- especially if they have *Supported* > status of the codebase in the MAINTAINERS file. > > +Open development > +---------------- > + > +Discussions about user reported issues, and development of new code > +should be conducted in a manner typical for the larger subsystem. > +It is common for development within a single company to be conducted > +behind closed doors. However, maintainers must not redirect discussions > +and development related to the upstream code from the upstream mailing lists > +to closed forums or private conversations. Reasonable exceptions to this > +guidance include discussions about security related issues. Overall I think this is fine, but I'm a bit concerned it could be interpreted too broadly. Brainstorming on mailing lists is hard, and kernel communities often conduct technical discussions face to face, in conferences or other events. Sometimes those discussions are as private as they can get, I've found myself cycling multiple times to the office of a fellow developer who happens to work close to my place in order to discuss kernel API design in front of a white board. We did our best to publish brainstorming notes on mailing lists, and patches are then of course reviewed and further discussed in public. Is this a behaviour you want to discourage, or is this considered fine ? > + > Selecting the maintainer > ======================== > -- Regards, Laurent Pinchart ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 14:26 ` Laurent Pinchart @ 2024-07-13 23:23 ` Jakub Kicinski 0 siblings, 0 replies; 22+ messages in thread From: Jakub Kicinski @ 2024-07-13 23:23 UTC (permalink / raw) To: Laurent Pinchart; +Cc: corbet, workflows, linux-doc On Sat, 13 Jul 2024 17:26:51 +0300 Laurent Pinchart wrote: > > +Open development > > +---------------- > > + > > +Discussions about user reported issues, and development of new code > > +should be conducted in a manner typical for the larger subsystem. > > +It is common for development within a single company to be conducted > > +behind closed doors. However, maintainers must not redirect discussions > > +and development related to the upstream code from the upstream mailing lists > > +to closed forums or private conversations. Reasonable exceptions to this > > +guidance include discussions about security related issues. > > Overall I think this is fine, but I'm a bit concerned it could be > interpreted too broadly. Brainstorming on mailing lists is hard, and > kernel communities often conduct technical discussions face to face, in > conferences or other events. Sometimes those discussions are as private > as they can get, I've found myself cycling multiple times to the office > of a fellow developer who happens to work close to my place in order to > discuss kernel API design in front of a white board. We did our best to > publish brainstorming notes on mailing lists, and patches are then of > course reviewed and further discussed in public. Is this a behaviour you > want to discourage, or is this considered fine ? That's fine. I hope in the context of the rest of the doc the new section makes sense. The doc is aimed at less upstream-savvy driver maintainers. The section before says "you must respond to bug reports" and the section after says "the person selected as maintainer should be a developer not a manager". I hope when reading in that context it is fairly clear that these are not "rules of Linux". More pointing out where folks more familiar with corporate environment get tripped up. I was planning to add this guidance to maintainer-netdev, but folks pushed back saying that the guidance is generally applicable. I semi-quoted some example situation we're aiming at here: https://lore.kernel.org/all/20240712164504.76b15e31@kernel.org/ ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-12 14:49 [PATCH] docs: maintainer: discourage taking conversations off-list Jakub Kicinski ` (3 preceding siblings ...) 2024-07-13 14:26 ` Laurent Pinchart @ 2024-07-13 14:28 ` Carlos Bilbao 2024-07-13 16:25 ` Mauro Carvalho Chehab 4 siblings, 1 reply; 22+ messages in thread From: Carlos Bilbao @ 2024-07-13 14:28 UTC (permalink / raw) To: Jakub Kicinski, corbet, laurent.pinchart, mchehab; +Cc: workflows, linux-doc On 7/12/24 09:49, Jakub Kicinski wrote: > Multiple vendors seem to prefer taking discussions off list, and > ask contributors to work with them privately rather than just send > patches to the list. I'd imagine this is because it's hard to fit in > time for random developers popping up with features to review into > packed schedule. From what I've seen "work in private" usually means > someone on the company side will be assigned to handle the interaction, > possibly months later. In worst case, the person scheduled to help > the contributor takes over and writes the code themselves. > This is not how the community is supposed to work. So this is completely unenforceable, but as Mauro mentioned, it's an opportunity to talk about this. For starters, let's be clear about what the kernel community is actually losing from closed-door discussions. E.g., if a company wants to fix their driver, and an employee suggests approach A in an internal discussion, but someone else prefers approach B, which is then shared publicly on the mailing lists--is the real issue that the community did not get a chance to learn about approach A? To discuss it, weigh the pros and cons, and share opinions? If so, we should note that for published patches preceded by an internal debate, it's encouraged to include some context in the cover letters about why different approaches were _not_taken. > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > --- > CC: workflows@vger.kernel.org > CC: linux-doc@vger.kernel.org > --- > .../maintainer/feature-and-driver-maintainers.rst | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/Documentation/maintainer/feature-and-driver-maintainers.rst b/Documentation/maintainer/feature-and-driver-maintainers.rst > index f04cc183e1de..ac7798280201 100644 > --- a/Documentation/maintainer/feature-and-driver-maintainers.rst > +++ b/Documentation/maintainer/feature-and-driver-maintainers.rst > @@ -83,6 +83,17 @@ bugs as well, if the report is of reasonable quality or indicates a > problem that might be severe -- especially if they have *Supported* > status of the codebase in the MAINTAINERS file. > > +Open development > +---------------- > + > +Discussions about user reported issues, and development of new code > +should be conducted in a manner typical for the larger subsystem. > +It is common for development within a single company to be conducted > +behind closed doors. However, maintainers must not redirect discussions > +and development related to the upstream code from the upstream mailing lists > +to closed forums or private conversations. Reasonable exceptions to this > +guidance include discussions about security related issues. > + > Selecting the maintainer > ======================== > Thanks, Carlos ^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH] docs: maintainer: discourage taking conversations off-list 2024-07-13 14:28 ` Carlos Bilbao @ 2024-07-13 16:25 ` Mauro Carvalho Chehab 0 siblings, 0 replies; 22+ messages in thread From: Mauro Carvalho Chehab @ 2024-07-13 16:25 UTC (permalink / raw) To: Carlos Bilbao Cc: Jakub Kicinski, corbet, laurent.pinchart, mchehab, workflows, linux-doc Em Sat, 13 Jul 2024 09:28:31 -0500 Carlos Bilbao <carlos.bilbao.osdev@gmail.com> escreveu: > On 7/12/24 09:49, Jakub Kicinski wrote: > > > Multiple vendors seem to prefer taking discussions off list, and > > ask contributors to work with them privately rather than just send > > patches to the list. I'd imagine this is because it's hard to fit in > > time for random developers popping up with features to review into > > packed schedule. From what I've seen "work in private" usually means > > someone on the company side will be assigned to handle the interaction, > > possibly months later. In worst case, the person scheduled to help > > the contributor takes over and writes the code themselves. > > This is not how the community is supposed to work. > > > So this is completely unenforceable, but as Mauro mentioned, it's an > opportunity to talk about this. > For starters, let's be clear about what the kernel community is actually > losing from closed-door discussions. Makes sense to me, but IMO it should also be describing what companies are losing with closed-door discussions: money and time to market. The usual excuse for innersource development practices is that this speeds up product development. In practice, this is often a false premise. Investing on closed door discussions and then send patch series only when internal development is done has two major drawbacks from company PoV: - Other companies with faster/better upstream companies may end having solutions merged upstream quicker, reducing or eliminating company market competitive advantages. Also, it means that the internal development will need to restart from the beginning, to follow the kAPI interfaces that were proposed/added by other vendors; - Even if the company is the first to upstream, maintainers may not agree with the developed solution, requiring substantial changes, and delaying product delivery. > E.g., if a company wants to fix their > driver, and an employee suggests approach A in an internal discussion, but > someone else prefers approach B, which is then shared publicly on the > mailing lists--is the real issue that the community did not get a chance to > learn about approach A? To discuss it, weigh the pros and cons, and share > opinions? If so, we should note that for published patches preceded by an > internal debate, it's encouraged to include some context in the cover > letters about why different approaches were _not_taken. > > > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > > --- > > CC: workflows@vger.kernel.org > > CC: linux-doc@vger.kernel.org > > --- > > .../maintainer/feature-and-driver-maintainers.rst | 11 +++++++++++ > > 1 file changed, 11 insertions(+) > > > > diff --git a/Documentation/maintainer/feature-and-driver-maintainers.rst b/Documentation/maintainer/feature-and-driver-maintainers.rst > > index f04cc183e1de..ac7798280201 100644 > > --- a/Documentation/maintainer/feature-and-driver-maintainers.rst > > +++ b/Documentation/maintainer/feature-and-driver-maintainers.rst > > @@ -83,6 +83,17 @@ bugs as well, if the report is of reasonable quality or indicates a > > problem that might be severe -- especially if they have *Supported* > > status of the codebase in the MAINTAINERS file. > > > > +Open development > > +---------------- > > + > > +Discussions about user reported issues, and development of new code > > +should be conducted in a manner typical for the larger subsystem. > > +It is common for development within a single company to be conducted > > +behind closed doors. However, maintainers must not redirect discussions > > +and development related to the upstream code from the upstream mailing lists > > +to closed forums or private conversations. Reasonable exceptions to this > > +guidance include discussions about security related issues. > > + > > Selecting the maintainer > > ======================== > > > > > Thanks, > > Carlos > Thanks, Mauro ^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2024-07-15 13:29 UTC | newest] Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-07-12 14:49 [PATCH] docs: maintainer: discourage taking conversations off-list Jakub Kicinski 2024-07-12 15:06 ` Greg KH 2024-07-12 15:25 ` Mark Brown 2024-07-12 15:42 ` Shuah Khan 2024-07-12 18:11 ` Mauro Carvalho Chehab 2024-07-12 18:19 ` Randy Dunlap 2024-07-12 23:45 ` Jakub Kicinski 2024-07-13 0:00 ` Dan Williams 2024-07-13 0:12 ` Jakub Kicinski 2024-07-13 7:43 ` Mauro Carvalho Chehab 2024-07-12 18:43 ` Dan Williams 2024-07-13 0:05 ` Jakub Kicinski 2024-07-13 1:18 ` Dan Williams 2024-07-13 8:13 ` Mauro Carvalho Chehab 2024-07-13 14:19 ` Laurent Pinchart 2024-07-13 16:07 ` Mauro Carvalho Chehab 2024-07-13 23:29 ` Jakub Kicinski 2024-07-15 13:29 ` Mark Brown 2024-07-13 14:26 ` Laurent Pinchart 2024-07-13 23:23 ` Jakub Kicinski 2024-07-13 14:28 ` Carlos Bilbao 2024-07-13 16:25 ` Mauro Carvalho Chehab
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox