wiki:Coverity

Version 16 (modified by umccullough, 13 years ago) ( diff )

added pending run

What is Coverity?

"Coverity Prevent is a static code analysis tool for C, C++, C# and Java source code. It is a commercial product which originated as the Stanford Checker, which used abstract interpretation to identify defects in source code." Wikipedia

The Coverity Scan Initiative

Dev FAQ

Haiku is currently a Rung 1 project.

Prerequisites for Use

  1. Commit rights to Haiku's source repository
  2. Coverity account (Ask Urias McCullough (umccullough@…) - he coordinates with Coverity's admins)
  3. Accepting the TOS upon first login (see: http://scan.coverity.com/policy.html )

Workflow

  • Log on to Haiku's Coverity website. (Review account info you were given - accessing either via http://scan.coverity.com:9065 or http://scan2.coverity.com:9065 should work)
  • Look up a Haiku defect
  • Assess and assign the defect. (To yourself, most likely.)
  • Commit fixes to defects assigned to you. Mention the CID number in the commit message. ("Bug so and so. CID XXXX.")
  • Mark the defect as resolved. Mentioning the commit revision number. ("fixed in rXXXXX")

Query hints

Use "Edit Query" button in the top right corner:

  • Query for: "Individual Defects"
  • Helpful to use File name to filter query - Example: servers/app - lists all defects in the app_server
  • Listboxes support mult-select by holding down Shift or Ctrl key

Source to avoid

  • 3rd party code?

Source that needs special treatment

  • Kernel/app_server/input_server/registrar?

Please do

  • some text here

Please don't

  • some text here

Common defects and their resolutions

  • STACK_USE - Not really a bug. It turns out that the new version of the Coverity software automatically enabled this checker with default values, when it had been disabled before. This checker is usually used to analyze for defects in kernel or embedded system code which have tight stack limits. For Haiku, "Ignore" is probably the best resolution for now.

Runs submitted

  • Run (pending): hrev40855 nightly-raw with GPL gcc4 build processed on <pending>
  • Run 7: hrev39894 nightly-raw gcc4 build processed on 2010-12-19
  • Run 6: hrev37534 nightly-raw gcc2hybrid build processed on 2010-07-20
  • Run 5: Deleted due to issue with submission
  • Run 4: hrev28644 haiku-image gcc2 build processed on 2008-11-18
  • Run 3: hrev27211 haiku-image gcc2 build processed on 2008-09-03
  • Run 2: Deleted due to issue with submission
  • Run 1: hrev25116 haiku-image gcc2 build processed on 2008-05-21

Coverity Users

Accounts already created:

  • aldeck
  • aljen
  • anevilyak
  • axeld
  • bonefish
  • brechtm
  • czeidler
  • dlmcpaul
  • dr_evil
  • emitrax
  • jackburton
  • julun
  • kallisti5
  • kirilla
  • korli
  • laplace
  • leavengood
  • mauricek
  • mmadia
  • mmlr
  • mmu_man
  • modeenf
  • nielx
  • PulkoMandy
  • scottmc
  • stippi
  • stpere
  • tqh
  • umccullough
  • yourpalal
  • zooey

Accounts still pending creation (waiting on Coverity):

  • siarzhuk

Known issues to be resolved by Coverity

  • Haiku's listing on the Rung page(s)
    • does not have a clickable project site link
    • does not have updated statistics (defect count, LOC, etc.)
    • does not have a working "Sign in" link
  • We cannot yet administer the list of users with access
  • We cannot yet administer extra features such as "Product" and "Component"
  • Coverity's login page initially complains about browser version, but works anyway
Note: See TracWiki for help on using the wiki.