| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
1) Use the generic bisection implementation in pkg/bisect. It adds the
support of identifying several necessary config diffs at once.
2) For now, limit the number of minimization iterations to 6. It's a
lengthy process and we don't want to spend too much time doing this.
3) Bisect over leaf configuration options -- that is, those no other
config depends upon. This should make diff split during bisection
more reliable.
4) Save all intermediate configs to the debug files folder.
|
| | |
|
| |
|
|
|
| |
Store config options identified using DebugTracer. Also change bisection
and configuration minimization code to use new DebugTracer.
|
| |
|
|
|
|
|
|
|
|
|
| |
Test for case described in:
https://groups.google.com/g/syzkaller/c/c1J1kzzW7Ew/m/CeyEJm04AQAJ
It seems to work as is (mostly).
Fix parsing of the very last kconfig config (currently it's dropped).
s/menuend/endmenu/ in error message.
Sort dependencies so that we can express the test.
But none of this should have affected actual config minimization.
|
| |
|
|
|
| |
Always move all non-tristate configs from full because
we don't minimize them.
|
|
|
Minimize finds an equivalent with respect to the provided predicate, but smaller config.
It accepts base (small) and full (large) config. It is assumed that the predicate returns true for the full config.
It is also assumed that base and full are not just two completely arbitrary configs, but full it produced from base
mostly by adding more configs. The minimization procedure thus consists of figuring out what set of configs that
are present in full and are not present in base affect the predicate.
Update #2171
|