qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] MAINTAINERS leaves too many files uncovered


From: Markus Armbruster
Subject: [Qemu-devel] MAINTAINERS leaves too many files uncovered
Date: Mon, 20 Oct 2014 11:19:44 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

In my experience, too many files are not covered by MAINTAINERS.
scripts/get_maintainer.pl falls back to git then, unless you say
--no-git-fallback.  Copies sent there tends to annoy their recipients
without accomplishing all that much.

Two obvious improvements:

* Easy: Flip scripts/get_maintainer.pl's default to --no-git-fallback.
  I'll post the obvious patch, please raise your objections there.

* Harder: improve MAINTAINERS coverage.

Let me back up subjective experience with hard data.  The tree has quite
a few files:

    $ git-ls-files | wc -l
    3746

Counting them by extension:

    $ git-ls-files | sed -n 's#.*/##;s#.*\.##p' | sort | uniq -c | sort -nr
       1836 c
        818 h
        133 out
        105 S
         97 objs
         69 s
         64 mak
         48 json
         47 py
         41 txt
         33 exit
         33 err
         16 xml
         16 bin
         13 rom
         12 sh
         12 dsl
[Long tail that doesn't add up to anything interesting omitted]

Let's look for .c not in MAINTAINERS:

    $ for i in `git-ls-files`; do [ "`scripts/get_maintainer.pl -f 
--no-git-fallback $i`" ] || echo $i; done >unmaintained-files
    $ grep -c '\.c$' unmaintained-files
    1066

That's almost 60%.  Not good.

Apparently, nobody cares for tests:

    $ grep '^tests/' unmaintained-files | grep -c '\.c$'
    654
    $ git-ls-files | grep '^tests/' | grep -c '\.c$'
    664

Filtering those out leaves us with 412 unmaintained out of of 1172, or
35% unmaintained.  Not good even if we (foolishly!) considered tests not
worthy of maintenance.

Maybe unmaintained files are much smaller.  David A.  Wheeler's
SLOCCount counts 570kSLOC in 1212 maintained files (+140 files sloccount
doesn't know how to count) vs. 300kSLOC in 1798 unmaintained files (+596
uncounted), or 35% unmaintained SLOC.  With tests/ ignored, it's 30%.
So, unmaintained files are indeed smaller, but 30-something percent is
still not good.

Where are the unmaintained files?  Top-scoring directories outside
tests/ and include/, files in subdirs not counted:

    #files   directory
    84  68%  .
    63 100%  default-configs
    48 100%  pc-bios
    43  97%  stubs
    39 100%  util
    37 100%  pc-bios/keymaps
    35  81%  hw/display
    32  94%  scripts
    26  92%  docs
    26 100%  libcacard
    23  69%  hw/misc
    22  57%  hw/net
    21  63%  hw/intc
    19 100%  roms
    18 100%  disas
    18  56%  hw/timer
    16 100%  hw/core
    15  53%  hw/char
    15 100%  qga
    14 100%  docs/specs
    12  92%  hw/input
    12 100%  qobject
    12 100%  target-m68k
    11 100%  backends
    11 100%  pc-bios/s390-ccw
    10  71%  hw/dma

Ideas?  Takers?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]