Open
Conversation
Signed-off-by: tim-rj <sonic_rd@ruijie.com.cn>
Signed-off-by: tim-rj <sonic_rd@ruijie.com.cn>
lguohan
reviewed
Jul 28, 2020
lguohan
reviewed
Aug 12, 2020
|
|
||
| When a source file is compiled with the gcov compiling options, each executable line in this source file will be followed by a new-added piece of code that updates coverage statistics. Gcov realizes this process by adding stubs when generating assembly files. Each stub point will be inserted into 3 to 4 new assembly statements. These statements are directly added to the .s files. Then the assembly files can be assembled to the object files and the executable file. After doing this, when the executable file is running, the stubs added during compiling will collect the execution information. The statistical approach for these stubs is very simple, they are just variables in the memory and record the execution times for each code line. Therefore in the practical running environment, the performance impact brought by generating .gcda files can be ignored. The user can also hardly feel the difference.<br> | ||
|
|
||
| # 5. Coverage data for the python script |
Contributor
There was a problem hiding this comment.
suggest to remove section 5 since it is not gcov related.
Signed-off-by: tim-rj <sonic_rd@ruijie.com.cn>
added 2 commits
April 25, 2021 11:31
Signed-off-by: chengzhengnan <chengzhengnan@ragilenetworks.com>
…ation Signed-off-by: chengzhengnan <chengzhengnan@ragilenetworks.com>
4 tasks
Contributor
|
hi @lguohan help push forward this hld, thanks! |
…nformation in Azure pipeline platform Signed-off-by: pettershao-ragilenetworks <pettershao@ragilenetworks.com>
Contributor
|
hi @lguohan help push forward this hld, thanks! |
Contributor
|
@lguohan @qiluo-msft @yxieca as gcov for swss daemon is work fine and be in merging, help mege this hld, thanks! |
1 similar comment
Contributor
|
@lguohan @qiluo-msft @yxieca as gcov for swss daemon is work fine and be in merging, help mege this hld, thanks! |
Contributor
|
@lguohan @qiluo-msft @yxieca as gcov for swss daemon has been merged, help mege this hld, thanks! |
8498931 to
8837dc2
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Code coverage rate is the term used in code testing in Ruijie commercial switch for years. It is the rate of the number of code lines has been executed divide by the number of total code lines in switch operating system. We reuse this term in SONiC code testing and create some related tools for SONiC code testing.
Ruijie use the Gcov tools to measure the code coverage rate in its commercial switch and white box switch. We create the Linux scripts for Gcov compiling, Gcov data collect, and Gcov data show functions for SONiC. A GCOV_ENABLE compiling tag is provided for SONiC code project. And we integrate all these Gcov functions into Jenkins CICD system. Our solution is a complete tool set for code coverage rate for SONiC.