| /linux/Documentation/dev-tools/ |
| H A D | kcov.rst | 1 KCOV: code coverage for fuzzing 4 KCOV collects and exposes kernel code coverage information in a form suitable 5 for coverage-guided fuzzing. Coverage data of a running kernel is exported via 6 the ``kcov`` debugfs file. Coverage collection is enabled on a task basis, and 7 thus KCOV can capture precise coverage of a single system call. 9 Note that KCOV does not aim to collect as much coverage as possible. It aims 10 to collect more or less stable coverage that is a function of syscall inputs. 11 To achieve this goal, it does not collect coverage in soft/hard interrupts 12 (unless remove coverage collection is enabled, see below) and from some 15 Besides collecting code coverage, KCOV can also collect comparison operands. [all …]
|
| H A D | gcov.rst | 4 gcov profiling kernel support enables the use of GCC's coverage testing 5 tool gcov_ with the Linux kernel. Coverage data of a running kernel 7 To get coverage data for a specific file, change to the kernel build 16 for the entire kernel and provide coverage overviews in HTML format. 37 and to get coverage data for the entire kernel:: 86 generate coverage reports. If left unset the report is omitted. 98 Global reset file: resets all coverage data to zero when 103 tool. Resets file coverage data to zero when written to. 108 option ``-ftest-coverage``. 116 coverage data for such code by keeping a copy of the data associated [all …]
|
| H A D | testing-overview.rst | 66 Code Coverage Tools 69 The Linux Kernel supports two different code coverage measurement tools. These 74 Documentation/dev-tools/gcov.rst is GCC's coverage testing tool, which can be 75 used with the kernel to get global or per-module coverage. Unlike KCOV, it 76 does not record per-task coverage. Coverage data can be read from debugfs, 80 kernel to allow capturing coverage on a per-task level. It's therefore useful
|
| /linux/Documentation/networking/ |
| H A D | udplite.rst | 37 IPPROTO need to be changed; senders additionally set the checksum coverage 58 using partial checksum coverage and so emulate UDP mode (full coverage). 60 To make use of the partial checksum coverage facilities requires setting a 61 single socket option, which takes an integer specifying the coverage length: 63 * Sender checksum coverage: UDPLITE_SEND_CSCOV 70 sets the checksum coverage length to 20 bytes (12b data + 8b header). 76 * Receiver checksum coverage: UDPLITE_RECV_CSCOV 79 required to enable traffic with partial checksum coverage. Its function is 81 all packets which have a coverage _less_ than this value. For example, if 83 packets with a minimum coverage of 20 are admitted:: [all …]
|
| /linux/kernel/ |
| H A D | kcov.c | 52 * - task with enabled coverage (we can't unwire it from another task) 53 * - each code section for remote coverage collection 61 /* Coverage buffer shared with user space. */ 63 /* Task for which we collect coverage, or NULL. */ 65 /* Collecting coverage from remote (background) threads. */ 179 * We are interested in code coverage as a function of a syscall inputs, in check_kcov_mode() 181 * coverage collection section in a softirq. in check_kcov_mode() 464 * shouldn't be exiting when it's in a kcov coverage collection in kcov_task_exit() 466 * coverage, and t->kcov->t points to the thread that created the in kcov_task_exit() 597 * Enable coverage for the current task. in kcov_ioctl_locked() [all …]
|
| /linux/Documentation/dev-tools/kunit/ |
| H A D | running_tips.rst | 100 Generating code coverage reports under UML 108 This is different from the "normal" way of getting coverage information that is 125 # Append coverage options to the current config 127 # Extract the coverage information from the build dir (.kunit/) 128 $ lcov -t "my_kunit_tests" -o coverage.info -c -d .kunit/ 132 $ genhtml -o /tmp/coverage_html coverage.info 140 $ lcov -t "my_kunit_tests" -o coverage.info -c -d .kunit/ --gcov-tool=/usr/bin/gcov-6 146 # Build with LLVM and append coverage options to the current config 149 $ llvm-cov export --format=lcov .kunit/vmlinux -instr-profile default.profdata > coverage.info 150 …# The coverage.info file is in lcov-compatible format and it can be used to e.g. generate HTML rep… [all …]
|
| /linux/include/net/ |
| H A D | udplite.h | 12 #define UDPLITE_SEND_CSCOV 10 /* sender partial coverage (as sent) */ 13 #define UDPLITE_RECV_CSCOV 11 /* receiver partial coverage (threshold ) */ 45 if (cscov == 0) /* Indicates that full coverage is required. */ in udplite_checksum_init() 49 * Coverage length violates RFC 3828: log and discard silently. in udplite_checksum_init() 51 net_dbg_ratelimited("UDPLite: bad csum coverage %d/%d\n", in udplite_checksum_init()
|
| /linux/tools/testing/selftests/net/rds/ |
| H A D | run.sh | 67 # Check to see if the kconfig has the required configs to generate a coverage report 71 echo "INFO: CONFIG_GCOV_PROFILE_RDS should be enabled for coverage reports" 75 echo "INFO: CONFIG_GCOV_KERNEL should be enabled for coverage reports" 79 echo "INFO: CONFIG_GCOV_PROFILE_ALL should be disabled for coverage reports" 189 COVR_DIR="${LOG_DIR}/coverage/" 204 echo saving coverage data... 215 echo "Coverage report will be skipped"
|
| H A D | README.txt | 4 These scripts provide a coverage test for RDS-TCP by creating two 11 kernel may optionally be configured to omit the coverage report as well. 41 An HTML coverage report will be output in tools/testing/selftests/net/rds/rds_logs/coverage/.
|
| /linux/tools/perf/util/ |
| H A D | block-range.c | 173 .coverage = entry->coverage, in block_range__create() 211 .coverage = entry->coverage, in block_range__create() 301 * Compute coverage as: 303 * br->coverage / br->sym->max_coverage 308 * Returns [0-1] for coverage and -1 if we had no data what so ever or the 331 return (double)br->coverage / branch->max_coverage; in block_range__coverage()
|
| H A D | block-range.h | 18 * @coverage: number of blocks that cover this range 32 u64 coverage; member
|
| /linux/arch/arm/probes/kprobes/ |
| H A D | test-core.c | 670 * Decoding table test coverage analysis 703 struct coverage_table coverage; variable 736 struct coverage_table *coverage = (struct coverage_table *)args; in coverage_start_fn() local 738 struct coverage_entry *entry = coverage->base + coverage->num_entries; in coverage_start_fn() 740 if (coverage->num_entries == MAX_COVERAGE_ENTRIES - 1) { in coverage_start_fn() 741 pr_err("FAIL: Out of space for test coverage data"); in coverage_start_fn() 745 ++coverage->num_entries; in coverage_start_fn() 749 entry->nesting = coverage->nesting; in coverage_start_fn() 755 ++coverage->nesting; in coverage_start_fn() 756 ret = table_iter(d->table.table, coverage_start_fn, coverage); in coverage_start_fn() [all …]
|
| /linux/scripts/ |
| H A D | Makefile.kstack_erase | 12 kstack-erase-cflags-y += -fsanitize-coverage=stack-depth 13 kstack-erase-cflags-y += -fsanitize-coverage-stack-depth-callback-min=$(CONFIG_KSTACK_ERASE_TRACK_M… 14 DISABLE_KSTACK_ERASE := -fno-sanitize-coverage=stack-depth
|
| H A D | Makefile.compiler | 79 …LAGS += $(call __rustc-option,$(RUSTC),$(MY_RUSTFLAGS),-Cinstrument-coverage,-Zinstrument-coverage) 87 # Usage: rustflags-y += $(call rustc-option,-Cinstrument-coverage,-Zinstrument-coverage) 92 # Usage: flag := $(call rustc-option-yn,-Cinstrument-coverage)
|
| H A D | Makefile.kcov | 2 kcov-flags-y += -fsanitize-coverage=trace-pc 3 kcov-flags-$(CONFIG_KCOV_ENABLE_COMPARISONS) += -fsanitize-coverage=trace-cmp 6 kcov-rflags-y += -Cllvm-args=-sanitizer-coverage-level=3 7 kcov-rflags-y += -Cllvm-args=-sanitizer-coverage-trace-pc 8 kcov-rflags-$(CONFIG_KCOV_ENABLE_COMPARISONS) += -Cllvm-args=-sanitizer-coverage-trace-compares
|
| /linux/include/linux/ |
| H A D | compiler-clang.h | 102 * with no_sanitize("coverage"). Prior versions of Clang support coverage 106 #define __no_sanitize_coverage __attribute__((no_sanitize("coverage"))) 111 /* Only Clang needs to disable the coverage sanitizer for kstack_erase. */
|
| H A D | kcov.h | 13 /* Coverage collection is not enabled yet. */ 18 * Tracing coverage collection mode. 60 * work around for kcov's lack of nested remote coverage sections support in
|
| /linux/drivers/of/ |
| H A D | Kconfig | 17 compile-coverage. 89 can enable it manually to improve device tree unit test coverage. 114 enable it manually to improve device tree unit test coverage.
|
| /linux/include/uapi/linux/ |
| H A D | kcov.h | 13 __u32 area_size; /* Length of coverage buffer in words */ 28 * Tracing coverage collection mode.
|
| /linux/arch/x86/um/vdso/ |
| H A D | Makefile | 50 CFLAGS_REMOVE_vdso-note.o = -pg -fprofile-arcs -ftest-coverage 51 CFLAGS_REMOVE_um_vdso.o = -pg -fprofile-arcs -ftest-coverage
|
| /linux/security/ |
| H A D | Kconfig.hardening | 29 greatest coverage (since all functions can have their 34 This chooses the level of coverage over classes of potentially 86 def_bool $(cc-option,-fsanitize-coverage-stack-depth-callback-min=1) 124 instrumented. This is useful for comparing coverage between
|
| /linux/tools/testing/selftests/arm64/fp/ |
| H A D | README | 61 to maximise test coverage. 96 maximise test coverage.
|
| H A D | TODO | 2 - More coverage for ptrace:
|
| /linux/kernel/trace/ |
| H A D | Makefile | 29 # for GCOV coverage profiling 35 # code and produce random code coverage.
|
| /linux/drivers/net/wireless/ath/ath10k/ |
| H A D | hw.c | 589 /* The firmware does not support setting the coverage class. Instead this 632 /* Break out if the coverage class and registers have the expected in ath10k_hw_qca988x_set_coverage_class() 655 "failed to set coverage class: expected integer microsecond value in register\n"); in ath10k_hw_qca988x_set_coverage_class() 664 … "failed to set coverage class: expected slot time of 9 or 20us in HW register. It is %uus.\n", in ath10k_hw_qca988x_set_coverage_class() 671 * delay (3us per coverage class). in ath10k_hw_qca988x_set_coverage_class() 702 * coverage class is larger than 0. This is important as we need to in ath10k_hw_qca988x_set_coverage_class() 718 /* After an error we will not retry setting the coverage class. */ in ath10k_hw_qca988x_set_coverage_class()
|