All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Jean Delvare <jdelvare@suse.de>, Joe Perches <joe@perches.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>,
	Al Viro <viro@ZenIV.linux.org.uk>,
	Ilya Dryomov <idryomov@gmail.com>,
	Andy Whitcroft <apw@canonical.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Ceph Development <ceph-devel@vger.kernel.org>,
	Alex Elder <elder@kernel.org>, Sage Weil <sage@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	kernel-janitors@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-doc@vger.kernel.org
Subject: Re: "CodingStyle: Clarify and complete chapter 7" in docs-next
Date: Thu, 22 Sep 2016 13:43:42 +0300	[thread overview]
Message-ID: <8760pop63l.fsf@intel.com> (raw)
In-Reply-To: <20160922112407.47da9393@endymion>

On Thu, 22 Sep 2016, Jean Delvare <jdelvare@suse.de> wrote:
> Hi Joe,
>
> On Mon, 19 Sep 2016 23:32:03 -0700, Joe Perches wrote:
>> On Tue, 2016-09-20 at 07:53 +0200, Julia Lawall wrote:
>> > I think it is better to be clear.  CHECK was never really clear to me,
>> > especially if you see it in isolation, on a file that doesn't also have
>> > ERROR or WARNING.  NITS is a common word in this context, but not FLEAS
>> > and GNATS, as far as I know.
>> > There could also be a severity level: high medium and low
>> 
>> I agree clarity is good.
>> 
>> The seriousness with which some beginners take these message
>> types though is troublesome,
>
> You need to think in terms of actual use cases. Who uses checkpatch and
> why? I think there are 3 groups of users:
> * Beginners. They won't run the script by themselves, instead they will
>   submit a patch which infringes a lot of coding style rules, and the
>   maintainer will point them to checkpatch and ask for a resubmission
>   which makes checkpatch happy. Being beginners, they can only rely on
>   the script itself to only report things which need to be fixed, by
>   default.
> * Experienced developers. Who simply want to make sure they did not
>   overlook anything before they post their work for review. They have
>   the knowledge to decide if they want to ignore some of the warnings.
> * People with too much spare time, looking for anything they could
>   "contribute" to the kernel. They will use --subjective and piss off
>   every maintainer they can find.
>
> Sadly there's not much we can do about the third category, short of
> killing option --subjective altogether.

You could make checkpatch have different defaults for patches and files,
to encourage better style in new code, but to discourage finding
problems in existing code.

BR,
Jani.


>
> The default settings should work out of the box for for the first
> category.
>
>> Maybe prefix various different types of style messages.
>> 
>> Something like:
>> 
>> ERROR	-> CODE_STYLE_DEFECT
>> WARNING -> CODE_STYLE_UNPREFERRED
>> CHECK	-> CODE_STYLE_NIT
>
> I don't think you clarify anything with these changes, as they do not
> carry the requirement from a submitter's perspective. If you really
> want to change the names, I would rather suggest:
>
> ERROR -> MUST_FIX
> WARNING -> SHOULD_FIX
> CHECK -> MAY_FIX
>
> Or explain the categories in plain English, see below.
>
>> I doubt additional external documentation would help much.
>
> I agree. If anything needs to be explained, it should be included in
> the output of checkpatch directly. For example, if any ERROR was
> printed, include the following after the count summary:
>
> "ERROR means the code is infringing a core coding style rule. This MUST
> be fixed before the patch is submitted upstream."
>
> And if any WARNING was printed, include the following:
>
> "WARNING means the code is not following the best practice. This SHOULD
> be fixed before the patch is submitted upstream, unless the maintainer
> agreed otherwise."
>
> Not sure if we need something for CHECK, as these messages are not
> printed by default so I'd assume people who get them know what they
> asked for. But apparently these confused Julia so maybe a similar
> explanation would be needed for them too.

-- 
Jani Nikula, Intel Open Source Technology Center

WARNING: multiple messages have this Message-ID (diff)
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Jean Delvare <jdelvare@suse.de>, Joe Perches <joe@perches.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>,
	Al Viro <viro@ZenIV.linux.org.uk>,
	Ilya Dryomov <idryomov@gmail.com>,
	Andy Whitcroft <apw@canonical.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Ceph Development <ceph-devel@vger.kernel.org>,
	Alex Elder <elder@kernel.org>, Sage Weil <sage@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	kernel-janitors@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-doc@vger.kernel.org
Subject: Re: "CodingStyle: Clarify and complete chapter 7" in docs-next
Date: Thu, 22 Sep 2016 10:43:42 +0000	[thread overview]
Message-ID: <8760pop63l.fsf@intel.com> (raw)
In-Reply-To: <20160922112407.47da9393@endymion>

On Thu, 22 Sep 2016, Jean Delvare <jdelvare@suse.de> wrote:
> Hi Joe,
>
> On Mon, 19 Sep 2016 23:32:03 -0700, Joe Perches wrote:
>> On Tue, 2016-09-20 at 07:53 +0200, Julia Lawall wrote:
>> > I think it is better to be clear.  CHECK was never really clear to me,
>> > especially if you see it in isolation, on a file that doesn't also have
>> > ERROR or WARNING.  NITS is a common word in this context, but not FLEAS
>> > and GNATS, as far as I know.
>> > There could also be a severity level: high medium and low
>> 
>> I agree clarity is good.
>> 
>> The seriousness with which some beginners take these message
>> types though is troublesome,
>
> You need to think in terms of actual use cases. Who uses checkpatch and
> why? I think there are 3 groups of users:
> * Beginners. They won't run the script by themselves, instead they will
>   submit a patch which infringes a lot of coding style rules, and the
>   maintainer will point them to checkpatch and ask for a resubmission
>   which makes checkpatch happy. Being beginners, they can only rely on
>   the script itself to only report things which need to be fixed, by
>   default.
> * Experienced developers. Who simply want to make sure they did not
>   overlook anything before they post their work for review. They have
>   the knowledge to decide if they want to ignore some of the warnings.
> * People with too much spare time, looking for anything they could
>   "contribute" to the kernel. They will use --subjective and piss off
>   every maintainer they can find.
>
> Sadly there's not much we can do about the third category, short of
> killing option --subjective altogether.

You could make checkpatch have different defaults for patches and files,
to encourage better style in new code, but to discourage finding
problems in existing code.

BR,
Jani.


>
> The default settings should work out of the box for for the first
> category.
>
>> Maybe prefix various different types of style messages.
>> 
>> Something like:
>> 
>> ERROR	-> CODE_STYLE_DEFECT
>> WARNING -> CODE_STYLE_UNPREFERRED
>> CHECK	-> CODE_STYLE_NIT
>
> I don't think you clarify anything with these changes, as they do not
> carry the requirement from a submitter's perspective. If you really
> want to change the names, I would rather suggest:
>
> ERROR -> MUST_FIX
> WARNING -> SHOULD_FIX
> CHECK -> MAY_FIX
>
> Or explain the categories in plain English, see below.
>
>> I doubt additional external documentation would help much.
>
> I agree. If anything needs to be explained, it should be included in
> the output of checkpatch directly. For example, if any ERROR was
> printed, include the following after the count summary:
>
> "ERROR means the code is infringing a core coding style rule. This MUST
> be fixed before the patch is submitted upstream."
>
> And if any WARNING was printed, include the following:
>
> "WARNING means the code is not following the best practice. This SHOULD
> be fixed before the patch is submitted upstream, unless the maintainer
> agreed otherwise."
>
> Not sure if we need something for CHECK, as these messages are not
> printed by default so I'd assume people who get them know what they
> asked for. But apparently these confused Julia so maybe a similar
> explanation would be needed for them too.

-- 
Jani Nikula, Intel Open Source Technology Center

  parent reply	other threads:[~2016-09-22 10:43 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-19 11:53 "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust the position of a jump label in rbd_header_from_disk()) Ilya Dryomov
2016-09-19 11:53 ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust Ilya Dryomov
2016-09-20  0:11 ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust the position of a jump label in rbd_header_from_disk()) Al Viro
2016-09-20  0:11   ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adj Al Viro
2016-09-20  2:46   ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust the position of a jump label in rbd_header_from_disk()) Joe Perches
2016-09-20  2:46     ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adj Joe Perches
2016-09-20  5:53     ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust the position of a jump label in rbd_header_from_disk()) Julia Lawall
2016-09-20  5:53       ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adj Julia Lawall
2016-09-20  6:32       ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust the position of a jump label in rbd_header_from_disk()) Joe Perches
2016-09-20  6:32         ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adj Joe Perches
2016-09-20  6:46         ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adjust the position of a jump label in rbd_header_from_disk()) Julia Lawall
2016-09-20  6:46           ` "CodingStyle: Clarify and complete chapter 7" in docs-next (was Re: [PATCH 03/47] block-rbd: Adj Julia Lawall
2016-09-22  9:24         ` "CodingStyle: Clarify and complete chapter 7" in docs-next Jean Delvare
2016-09-22  9:24           ` Jean Delvare
2016-09-22 10:42           ` Joe Perches
2016-09-22 10:42             ` Joe Perches
2016-09-22 11:57             ` Jean Delvare
2016-09-22 11:57               ` Jean Delvare
2016-09-22 13:11               ` Al Viro
2016-09-22 13:11                 ` Al Viro
2016-09-22 14:58                 ` Jean Delvare
2016-09-22 14:58                   ` Jean Delvare
2016-09-22 15:05                   ` Julia Lawall
2016-09-22 15:05                     ` Julia Lawall
2016-09-22 17:50                 ` Joe Perches
2016-09-22 17:50                   ` Joe Perches
2016-09-22 17:49               ` Joe Perches
2016-09-22 17:49                 ` Joe Perches
2016-09-22 19:47                 ` Jean Delvare
2016-09-22 19:47                   ` Jean Delvare
2016-09-22 10:43           ` Jani Nikula [this message]
2016-09-22 10:43             ` Jani Nikula
2016-09-22 12:46             ` Jean Delvare
2016-09-22 12:46               ` Jean Delvare
2016-09-22 13:06               ` Jani Nikula
2016-09-22 13:06                 ` Jani Nikula

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=8760pop63l.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=apw@canonical.com \
    --cc=ceph-devel@vger.kernel.org \
    --cc=corbet@lwn.net \
    --cc=elder@kernel.org \
    --cc=idryomov@gmail.com \
    --cc=jdelvare@suse.de \
    --cc=joe@perches.com \
    --cc=julia.lawall@lip6.fr \
    --cc=kernel-janitors@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sage@redhat.com \
    --cc=torvalds@linux-foundation.org \
    --cc=viro@ZenIV.linux.org.uk \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.