From: "Daniel P. Berrange" <berrange@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
qemu-devel@nongnu.org, peter.maydell@linaro.org
Subject: Re: [Qemu-devel] Can we make better use of Coverity?
Date: Wed, 21 Jan 2015 13:31:08 +0000 [thread overview]
Message-ID: <20150121133108.GH22312@redhat.com> (raw)
In-Reply-To: <87bnlsl2qt.fsf@blackfin.pond.sub.org>
On Wed, Jan 21, 2015 at 01:47:22PM +0100, Markus Armbruster wrote:
> We're using the Coverity Scan service[*]. We've put in some effort, and
> we've gotten some mileage out of it, but I feel we could get more.
>
> Judging from the report e-mail I have lying about, we're scanning about
> once a month on average. These reports cuts off after 20 new defects.
> When there are more, which is common, people have to go to the web
> dashboard to see them. When I get one with ten, I may have a look, when
> I get one "Showing 20 of 100 defect(s)", I despair of the task, and put
> it off.
>
> I also use Coverity locally (requires a license) with a derived model
> for GLib to increase scanning power. Since last July, the number of
> defects I get that way has increased from ~400 to ~700. Not quite as
> bad as it sounds, because ~100 of the new ones are DEADCODE. Still, it
> suggests we haven't made much progress in reducing the number of defects
> to a manageable level.
>
> Some of the new defects are avoidable. For instance, we've added 16
> MISSING_BREAK. Probably just missing /* fall through */, but we can't
> be sure without examining each case. Patch review fail.
>
> At the other end of the spectrum, I see 36 new UNINIT defects.
>
> I think we should scan much more regularly. Once a week, full auto?
I agree that you need to scan much more regularly. Given the number of
patches QEMU merges, with only monthly scans you're creating a big job
for whoever has to deal with the monthly report because chances are
there will be alot of new stuff reported each month to wade through.
In libvirt we now have a coverity scan being run once a day, so when
we get new problems reported, the code in question is still fresh in
the mind of the reviewers & patch author. Daily scans also spread out
the workload much better. Only get a small number of new problems to
analyse a couple of times a week - never any real huge burden for the
person managing the coverity scan & more likely to get others to help
too if there's only a couple of things for them to look at instead of
a list of 700+ to wade through. I think these contribute to make it
practical for us to keep libvirt at zero coverity problems all the
time.
If you set the current 700 issues you have reported as your baseline,
then it is still practical to run coverity daily on QEMU. Just have
it report only new issues, ignoring the backlog, and ensure those all
get fixes posted the same day so the backlog doesn't grow. Deal with
the historical backlog of issues separately as time allows.
Also I'd suggest making "no new coverity issues" be a release blocker
item so people see you are taking it seriously and so be encouraged
to help out to ensure the release doesn't slip.
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
next prev parent reply other threads:[~2015-01-21 13:31 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-21 12:47 [Qemu-devel] Can we make better use of Coverity? Markus Armbruster
2015-01-21 12:57 ` Peter Maydell
2015-01-21 13:58 ` Markus Armbruster
2015-01-21 16:03 ` Paolo Bonzini
2015-01-21 16:50 ` Markus Armbruster
2015-01-21 13:31 ` Daniel P. Berrange [this message]
2015-01-21 15:55 ` Markus Armbruster
2015-01-21 15:59 ` Peter Maydell
2015-01-21 16:11 ` Paolo Bonzini
2015-01-21 14:19 ` Paolo Bonzini
2015-01-21 14:57 ` Markus Armbruster
2015-01-21 15:10 ` Paolo Bonzini
2015-01-21 16:05 ` Markus Armbruster
2015-01-21 16:22 ` Paolo Bonzini
2015-01-21 17:45 ` Markus Armbruster
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=20150121133108.GH22312@redhat.com \
--to=berrange@redhat.com \
--cc=armbru@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).