mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-09-02 04:13:54 -04:00
Add coverity example (#870)
* Add coverity example * Update for CI * Fix for CI 2 * Update kernel_misra.config * Rename coverity example to coverity * Update FreeRTOSConfig.h for coverity project * Update MISRA.md * Move coverity config to coverity_misra.config * Update coverity misra config * Add README.md file * Update FreeRTOSConfig.h for coverity * Fix uncrustify and spell * Update README.md for relative link path Update README.md for relative link path * Update README.md for relative link 2 * Update MISRA.md for relateive path * Fix for format * Update coverity_misra.config * Update configuration folder * Update README.md for link * Code review suggestions Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com> --------- Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com> Co-authored-by: Ubuntu <ubuntu@ip-172-31-34-245.ap-northeast-1.compute.internal> Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com> Co-authored-by: Soren Ptak <ptaksoren@gmail.com> Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com> Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
This commit is contained in:
parent
ac7fc396a0
commit
5dbfd380f0
7 changed files with 343 additions and 44 deletions
40
MISRA.md
40
MISRA.md
|
@ -8,8 +8,8 @@ has to be efficient. To achieve that and to increase the performance, it
|
|||
deviates from some MISRA rules. The specific deviations, suppressed inline,
|
||||
are listed below.
|
||||
|
||||
Additionally, [MISRA configuration](#misra-configuration) contains project
|
||||
wide deviations.
|
||||
Additionally, [MISRA configuration file](examples/coverity/coverity_misra.config)
|
||||
contains project wide deviations.
|
||||
|
||||
### Suppressed with Coverity Comments
|
||||
To find the violation references in the source files run grep on the source code
|
||||
|
@ -116,39 +116,3 @@ _Ref 21.6.1_
|
|||
- The Standard Library function snprintf is used in vTaskListTasks and
|
||||
vTaskGetRunTimeStatistics APIs, both of which are utility functions only and
|
||||
are not considered part of core kernel implementation.
|
||||
|
||||
### MISRA configuration
|
||||
|
||||
Copy below content to `misra.conf` to run Coverity on FreeRTOS-Kernel.
|
||||
|
||||
```
|
||||
// MISRA C-2012 Rules
|
||||
{
|
||||
version : "2.0",
|
||||
standard : "c2012",
|
||||
title: "Coverity MISRA Configuration",
|
||||
deviations : [
|
||||
// Disable the following rules.
|
||||
{
|
||||
deviation: "Directive 4.8",
|
||||
reason: "HeapRegion_t and HeapStats_t are used only in heap files but declared in portable.h which is included in multiple source files. As a result, these definitions appear in multiple source files where they are not used."
|
||||
},
|
||||
{
|
||||
deviation: "Directive 4.9",
|
||||
reason: "FreeRTOS-Kernel is optimised to work on small micro-controllers. To achieve that, function-like macros are used."
|
||||
},
|
||||
{
|
||||
deviation: "Rule 1.2",
|
||||
reason: "The __attribute__ tags are used via macros which are defined in port files."
|
||||
},
|
||||
{
|
||||
deviation: "Rule 3.1",
|
||||
reason: "We post HTTP links in code comments which contain // inside comments blocks."
|
||||
},
|
||||
{
|
||||
deviation: "Rule 8.7",
|
||||
reason: "API functions are not used by the library outside of the files they are defined; however, they must be externally visible in order to be used by an application."
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue