From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753153AbbIRTIw (ORCPT ); Fri, 18 Sep 2015 15:08:52 -0400 Received: from mail-ig0-f169.google.com ([209.85.213.169]:35581 "EHLO mail-ig0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752748AbbIRTIu (ORCPT ); Fri, 18 Sep 2015 15:08:50 -0400 Subject: Re: First kernel patch (optimization) To: Raymond Jennings , Greg KH , "Theodore Ts'o" , Josh Boyer , Eric Curtin , Steve Calfee , Valentina Manea , Shuah Khan , USB list , Kernel development list References: <1442346808-3784-1-git-send-email-ericcurtin17@gmail.com> <55F95671.6060405@gmail.com> <20150916132426.GA7420@kroah.com> <20150916164031.GH7394@thunk.org> <20150918031251.GA30905@thunk.org> <20150918074248.GA10792@kroah.com> <55FBD9EF.1080201@gmail.com> From: Austin S Hemmelgarn Message-ID: <55FC6135.5000307@gmail.com> Date: Fri, 18 Sep 2015 15:08:37 -0400 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <55FBD9EF.1080201@gmail.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-512; boundary="------------ms080608080104010000010507" X-Antivirus: avast! (VPS 150918-0, 2015-09-18), Outbound message X-Antivirus-Status: Clean Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is a cryptographically signed message in MIME format. --------------ms080608080104010000010507 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: quoted-printable On 2015-09-18 05:31, Raymond Jennings wrote: > On 09/18/15 00:42, Greg KH wrote: >> On Thu, Sep 17, 2015 at 11:12:51PM -0400, Theodore Ts'o wrote: >>> On Wed, Sep 16, 2015 at 01:26:51PM -0400, Josh Boyer wrote: >>>> That isn't true. It helps the submitter understand the workflow and= >>>> expectations. What you meant to say is that it doesn't help you. >>> The problem is that workflow isn't the hard part. It's the part that= >>> can be taught most easily, sure. But people seem to get really hung >>> up on it, and I fear that we have people who never progress beyond >>> sending trivial patches and spelling fixes and white space fixes and >>> micro-optimizations. >>> >>> If the "you too can be a kernel developer" classes and web sites and >>> tutorials also taught people how to take performance measurements, an= d >>> something about the scientific measurement, that would be something. >>> Or if it taught people how to create tests and to run regression >>> testing. Or if it taught people how to try to do fuzz testing, and >>> then once they find a sequence which causes crash, how to narrow down= >>> the failure to a specific part of the kernel, and how to fix and >>> confirm that the kernel no longer crashes with the fix --- that would= >>> be useful. >>> >>> If they can understand kernel code; if they can understand the >>> scientific measurement; if they can understand how to do performance >>> measurements --- being able to properly format patches is something >>> which most kernel developers can very easily guide a new contributor >>> to do correctly. Or in the worst case, it doesn't take much time for= >>> me to fix a whitespace problem and just tell the contributor --- by >>> the way, I fixed up this minor issue; could you please make sure you >>> do this in the future? >>> >>> But if a test hasn't been tested, or if the contributor things it's a= >>> micro-optimization, but it actually takes more CPU time and/or more >>> stack space and/or bloats the kernel --- that's much more work for th= e >>> kernel maintainer to have to deal with when reviewing a patch. >>> >>> So I have a very strong disagreement with the belief that teaching >>> people the workflow is the more important thing. In my mind, that's >>> like first focusing on the proper how to properly fill out a golf >>> score card, and the ettiquette and traditions around handicaps, etc >>> --- before making sure the prospective player is good at putting and >>> driving. Personally, I'm terrible at putting and driving, so spendin= g >>> a lot of time learning how to fill out a golf score card would be a >>> waste of my time. >>> >>> A good kernel programmer has to understand systems thinking; how to >>> figure out abstractions and when it's a good thing to add a new layer= >>> of abstraction and when it's better to rework an exsting abstraction >>> layer. >>> >>> If we have someone who knows the workflow, but which doesn't >>> understand systems thinking, or how to do testing, then what? Great,= >>> we've just created another Nick Krause. Do you think encouraging a >>> Nick Krause helps anyone? >>> >>> If people really are hung up on learning the workflow, I don't mind i= f >>> they want to learn that part and send some silly micro-optimization o= r >>> spelling fix or whitespace fix. But it's really, really important >>> that they move beyond that. And if they aren't capable of moving >>> beyond that, trying to inflate are recruitment numbers by encouraging= >>> someone who can only do trivial fixes means that we may be get what w= e >>> can easily measure --- but it may not be what we really need as a >>> community. >> Ted, you are full of crap. >> >> Where do you think that "new developers" come from? Do they show up i= n >> our inbox, with full knowledge of kernel internals and OS theory yet >> they somehow just can't grasp how to submit a patch correctly? Yes, >> they sometimes rarely do. But for the majority of people who got into= >> Linux, that is not the case at all. >> >> People need to start with something simple, and easy, to get over the >> hurdles of: >> - generating a patch >> - sending an email >> - fixing the email client as it just corrupted the patch >> - fix the subject line as it was incorrect >> - fix the changelog as it was missing >> - fix the email client again as it corrupted the patch in a >> different way >> - giving up on using a web email client as it just will not work >> - figuring out who to send the patch to >> - fixing the email client as the mailing list bounced the email >> >> Those are non-trivial tasks. And by starting with "remove this space"= >> you take the worry away from the specific content of the patch, and le= t >> them worry about the "hard" part first. > +1 for this. > > For example, I for one cannot tell you how many times gmail snuck html > sections into my outgoing emails before I finally caught it red handed > and switched to using a local native client. > It's also worth pointing out that if we don't have people submitting=20 code cleanups and typo fixes and stuff like that, then either we end up=20 over time with unmaintainable gibberish, or the people who do know=20 systems programming spending most of their time trying to deal with=20 cleaning up the code (and this is coming from someone who works for a=20 company who's software department used to be almost 50 people and is now = 5, and we have exactly this problem (that and for some reason no-one=20 wants to do any kind of code-review, but that's a separate issue)). So=20 in a way, they are contributing something useful, just not something=20 that directly impacts users in any immediate time-frame. --------------ms080608080104010000010507 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature 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 cnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0IFNpZ25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcN AQkBFhJzdXBwb3J0QGNhY2VydC5vcmcCAxBuVTANBglghkgBZQMEAgMFAKCCAiEwGAYJKoZI hvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMTUwOTE4MTkwODM3WjBPBgkq hkiG9w0BCQQxQgRAPi6VwwbZDI8orsOVYEx35sx5F63Avduslxx5L/XJCnKTwrmA6VcYjD5w gR8l9Boj7GtLRaXeU+CfDR1hfyUVsjBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFlAwQBKjAL BglghkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFA MAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGRBgkrBgEEAYI3EAQxgYMwgYAweTEQMA4GA1UE ChMHUm9vdCBDQTEeMBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlD QSBDZXJ0IFNpZ25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2Vy dC5vcmcCAxBuVTCBkwYLKoZIhvcNAQkQAgsxgYOggYAweTEQMA4GA1UEChMHUm9vdCBDQTEe MBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0IFNpZ25p bmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2VydC5vcmcCAxBuVTAN BgkqhkiG9w0BAQEFAASCAgCRWpF+uHlNJYmERxBCm+GBRXcCiKxf6jUvDsYj4ROOTGUdYQvH iQcsO2EbmVVx+woBcMWps4miuAL6BrXlZ2e/GvgmKGOtNKqhXp5xri8M8B+oq2jBfq0ezGzO CtJ9ca21esAeHVt3XRmI9v4sayBxuaHqlTZo/nJjdqUikVXUDq4ijuOcPqTDw780f340Dhg6 C6v/RzhM3cH73WWstU5t3TmotW+uAU+q7GGhFvo2gzDRBMp7ZNnp5jLIJJAVlDIrP6y3BQfL Y4M99+4Ti6dkkxYqetfZ6W60dMNtON1Plf0A+Wy1DqpSVrmzOLLJyHoaVCv2E8k2lZFaPw5m CoH73UpPRGNNTJiE8fC6BDwj20phrDNQ+2/2xDfJlwQGnVCrXz49X2pWQsiLcP1IdoOpMe3P P8quUqfVAqwS8Z23p/BajZ1WXCpXBSRbJAKqJqr2jNWcQdvs94iomfK4rZ6iHUppgqb3g5EP dQ68dkCp5yPhhnHly49kpoKzNyEQVp5ZKkj8FnoZGpiraD2jV9UbljjIyA72CuvIhaIjJ7+A EHDU6b+bSPyPL7Dh9bwz9ax7n1zh3ouBEL7ZJliSgffo/X6bU9CZysqqVhHW0ZtqjZuKi5aS rUiZmjo1C3Y98MDj8PYRlbTanT9iHxNGKnlmswg3ufoih8JvyZ5kd//RlgAAAAAAAA== --------------ms080608080104010000010507--