Re: Impact: (was Re: [PATCH] update rwlock initialization for nat_table)




* Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:

On Mon, Dec 15, 2008 at 12:20:19AM -0800, David Miller wrote:
update rwlock initialization for nat_table

Impact: clean up

The commit e099a173573ce1ba171092aee7bb3c72ea686e59
(netfilter: netns nat: per-netns NAT table) renamed the
nat_table from __nat_table to nat_table without updating the
__RW_LOCK_UNLOCKED(__nat_table.lock).

Signed-off-by: Steven Rostedt <srostedt@xxxxxxxxxx>

Applied to net-2.6, thanks Steven.

As Andrew mentioned this is a bug (albeit a "nano-bug" as you
called it :-) so I removed the Impact line in the commit
message when applying this.

Speaking of Impact: lines, is this a new fashion or what?

Looking at the ones which are already in official tree, they are either
trivially duplicating Subject: line, or effectively duplicating Subject:
line, or cover up for insufficiently informative (read: badly written)
Subject: line, or simply useless.

Subject: sched: CPU remove deadlock fix
Impact: fix possible deadlock in CPU hot-remove path

What prevented to write "Subject: sched: fix possible deadlock in CPU
hot-remove path"?

there are 655 Impact lines, right now, and we find them rather useful, for
a multitude of reasons. The impact line is a secondary subject line in
essence, describing the intended scope and practical impact of a change -
and not describe the change itself. The advantages are:

- they encourage a proper splitup of patches:

- the more complex a patch is, the harder it is to write a proper
impact line for it. So when people complain to me that they find it
hard to describe the practical impact of a patch in a single line, i
ask them to split up the patch ;-)

- they standardize and document impact analysis:

- it helps -stable later on in filtering out fixes and ordering
them by risk. We might not want to mark a commit as Cc: stable
straight away - but we want to describe the risk analysis we have
performed.

- they also help filtering out the patches that go into -git versus
devel stuff.

- they help bug analysis:

- Impact lines make it abundantly clear what the intented scope of a
change was, on the first line of the commit. We had incidents in the
past where people bisected to a commit and were wondering whether a
change was intended to have side-effects or not - and the Impact
line made it clear that the side-effect was not intended.

- they help bisection itself too: a couple of times i used it already
to home in on a suspected change that introduced a breakage. If
there's a material change in the middle of cleanups, it's hard to
see that in the changelogs immediately.

- they ease review:

- when a patch comes in that has an Impact line, i just look at the
impact line and match it up with what the patch actually does. If
there's mismatch it raises a red flag. Subject lines and changelogs
come from dozens and dozens of different authors, with different
cultural and language backgrounds, with different levels of
experience. It's much easier (and faster) to approach a patch with
an impact line from the right angle.

- they make it much harder to apply patches without a proper
level of review. Creating a good impact line is a good last line of
defense both at the submitter and at the applier level.

- they make it clear to the patch submitter if i mis-judge a change.
They tell me when i create the wrong Impact line and i can
re-consider the change.

That is an overlapping but still different purpose from a subject line.

Subject lines are controlled by the 'what' and 'how' questions of a code
change - while the Impact line is only controlled by the: 'risk'/'impact'
aspect.

Subject lines are also often controlled by subsystem maintenance
tradition, have various tags to distract from, etc. We try to match up
subject lines close to the lkml subject were they were discussed - and
only change them if they are really bad. That linkage is important.
Appending and prepending impact information gets messy.

All kernel developers and maintainers who started using them (whom i
talked to) found them rather useful - even if they had reservations about
the seemingly duplicated subject line aspect in the beginning. I dont
think you can judge this from an armchair - as you are only the reader of
an impact line, not the creator of it. At least half of the good stuff
happens while you active create them. Try it if you dont believe me ;-) In
any case, you dont have to use it if you dont like it.

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: [patch 06/23] Fix SKB_WITH_OVERHEAD calculations.
    ... Although this is correct as it is, it tirggers a latent bug ... Greg please keep the patch add the following one as it will ... [Upstream commit: fb93134dfc2a6e6fbedc7c270a31da03fce88db9] ... TSO packets get zero tail room. ...
    (Linux-Kernel)
  • Re: Oops while modprobing phy fixed module
    ... bug didn't get triggered on that particular test. ... 3007e997de91ec59af39a3f9c91595b31ae6e08b is first bad commit ... Hmm, I don't see why this one could introduce an oops in SLUB, ... Try that patch anyway, but I don't think that'll solve your problem -- ...
    (Linux-Kernel)
  • Re: NEWBUS states
    ... :>: I think the right fix here is to maintain in sync devinfo.h and bus.h ... Obviously that is not a finished patch, ... I'm specifically suggesting that we only MFC ... that would mean to not commit a patch and make impossible a future ...
    (freebsd-arch)
  • Re: [GIT PATCH] another tranche of SCSI updates for 2.6.26
    ... commit 064922a805ec7aadfafdd27aa6b4908d737c3c1d ... This patch adds more const keywords where appropriate. ... fix SLUB WARN_ON ... KVM: SVM: remove now obsolete FIXME comment ...
    (Linux-Kernel)
  • Re: [Alsa-devel] Slab corruptions & Re: 2.6.17-rc1: Oops in sound applications
    ... So I guess git bisect really lead me to this already known bug. ... Versions 2.6.16 to commit bf1bbb5a49eec51c30d341606885507b501b37e8 only ... allow a single open of /dev/dsp, and do not oops. ... Commit 3bf75f9b90c981f18f27a0d35a44f488ab68c8ea with the patch to ...
    (Linux-Kernel)