[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v5] coverity: Store the modelling file in the source tree.
On 01/24/2014 05:02 PM, Andrew Cooper wrote: On 24/01/14 16:59, George Dunlap wrote:On 01/24/2014 04:57 PM, Andrew Cooper wrote:On 24/01/14 16:52, George Dunlap wrote:On 01/23/2014 03:19 PM, Andrew Cooper wrote:On 23/01/14 15:13, George Dunlap wrote:On 01/23/2014 02:28 PM, Andrew Cooper wrote:Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> CC: Keir Fraser <keir@xxxxxxx> CC: Jan Beulich <JBeulich@xxxxxxxx> CC: Tim Deegan <tim@xxxxxxx> CC: Ian Campbell <Ian.Campbell@xxxxxxxxxx> CC: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> CC: George Dunlap <george.dunlap@xxxxxxxxxxxxx> --- George: This is just documentation, and it would be nice to include it as part of the 4.4 release. --- misc/coverity_model.c | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 misc/coverity_model.c diff --git a/misc/coverity_model.c b/misc/coverity_model.c new file mode 100644 index 0000000..418d25e --- /dev/null +++ b/misc/coverity_model.c @@ -0,0 +1,98 @@ +/* Coverity Scan model + * + * This is a modelling file for Coverity Scan. Modelling helps to avoid false + * positives. + * + * - A model file can't import any header files. + * - Therefore only some built-in primitives like int, char and void are + * available but not NULL etc. + * - Mode-ling doesn't need full structs and typedefs. Rudimentary structs + * and similar types are sufficient. + * - An uninitialized local pointer is not an error. It signifies that the + * variable could be either NULL or have some data. + * + * Coverity Scan doesn't pick up modifications automatically. The model file + * must be uploaded by an admin in the analysis.So this file isn't compiled; it's manually uploaded as part of the coverity scanning process; and could be provided out-of-band, but it's just convenient to put it in the tree, particularly if any of these things should change as things go forward. (Hence comparing it to documentation.) Is that right? -GeorgeCorrect. I believe internally Coverity compiles it (at least to an AST), but that is completely opaque to users of Scan.Right; I have a hard time coming up with a compelling reason to wait for this one. Release-acked-by: George Dunlap <george.dunlap@xxxxxxxxxxxxx> The name of the file might be a bit confusing though, if people think it is supposed to be compliled... would it make sense maybe to call it ".txt", and include some instructions at the top with a line that says "---- cut here 8< ---" or something? -GeorgeNot really - Coverity uses the file extension to work out how to interpret the modelling file. ".c" is correct here, and will cause smart text editors to apply proper syntax highlighting. Alternates are .cpp and .java, depending on the primary language of the project.Yes, I assumed that *coverity* needs it to be a .c. But it doesn't need to be a .c file in the xen tree -- the instructions could say, "Place the text below into a file named coverity_model.c". -GeorgeThis file was deliberately placed in a brand new directory, away from any Makefiles which might try to compile it for this reason. Requiring users to post-process this file just to help prevent someone from accidentally trying to compile it seems crazy IMO. The worst that happens is that someone tries to compile it and it fails to compile. Right, well a directory named "misc" probably won't remain empty for long. :-) I'd prefer Ian's suggestion of misc/coverity/, or maybe just coverity/; but I'm not too particular about it. (And the consensus seems to be that .c shoud be fine, so I'll go along with that too.) -George _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |