diff options
| author | Yann E. MORIN <yann.morin.1998@free.fr> | 2013-04-13 17:18:36 +0200 | 
|---|---|---|
| committer | Yann E. MORIN <yann.morin.1998@free.fr> | 2013-04-25 00:16:30 +0200 | 
| commit | e43956e607692f9b1c710311e4a6591ffba1edf0 (patch) | |
| tree | c42d170aa789a5ff0758a32b328e82ccbaa22142 /Documentation/kbuild | |
| parent | 0d8024c6ebadb68f1154377c2e1996b4e649e4c8 (diff) | |
| download | linux-e43956e607692f9b1c710311e4a6591ffba1edf0.tar.bz2 | |
kconfig: implement KCONFIG_PROBABILITY for randconfig
Currently the odds to set each symbol is (rounded):
    booleans:   y: 50%          n: 50%
    tristates:  y: 33%  m: 33%  n: 33%
Introduce a KCONFIG_PROBABILITY environment variable to tweak the
probabilities (in percentage), as such:
    KCONFIG_PROBABILITY     y:n split           y:m:n split
    -----------------------------------------------------------------
[1] unset or empty          50  : 50            33  : 33  : 34
[2] N                        N  : 100-N         N/2 : N/2 : 100-N
    N:M                     N+M : 100-(N+M)      N  :  M  : 100-(N+M)
    N:M:L                    N  : 100-N          M  :  L  : 100-(M+L)
[1] The current behaviour is kept as default, for backward compatibility
[2] The solution initially implemented by Peter for Buildroot, see:
    http://git.buildroot.org/buildroot/commit/?id=3435c1afb5
Signed-off-by: Peter Korsgaard <jacmet@uclibc.org>
[yann.morin.1998@free.fr: add to Documentation/]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Diffstat (limited to 'Documentation/kbuild')
| -rw-r--r-- | Documentation/kbuild/kconfig.txt | 27 | 
1 files changed, 27 insertions, 0 deletions
| diff --git a/Documentation/kbuild/kconfig.txt b/Documentation/kbuild/kconfig.txt index dbf746b70553..3f429ed8b3b8 100644 --- a/Documentation/kbuild/kconfig.txt +++ b/Documentation/kbuild/kconfig.txt @@ -98,6 +98,33 @@ You can set this to the integer value used to seed the RNG, if you want  to somehow debug the behaviour of the kconfig parser/frontends.  If not set, the current time will be used. +KCONFIG_PROBABILITY +-------------------------------------------------- +This variable can be used to skew the probabilities. This variable can +be unset or empty, or set to three different formats: +	KCONFIG_PROBABILITY     y:n split           y:m:n split +	----------------------------------------------------------------- +	unset or empty          50  : 50            33  : 33  : 34 +	N                        N  : 100-N         N/2 : N/2 : 100-N +    [1] N:M                     N+M : 100-(N+M)      N  :  M  : 100-(N+M) +    [2] N:M:L                    N  : 100-N          M  :  L  : 100-(M+L) + +where N, M and L are integers (in base 10) in the range [0,100], and so +that: +    [1] N+M is in the range [0,100] +    [2] M+L is in the range [0,100] + +Examples: +	KCONFIG_PROBABILITY=10 +		10% of booleans will be set to 'y', 90% to 'n' +		5% of tristates will be set to 'y', 5% to 'm', 90% to 'n' +	KCONFIG_PROBABILITY=15:25 +		40% of booleans will be set to 'y', 60% to 'n' +		15% of tristates will be set to 'y', 25% to 'm', 60% to 'n' +	KCONFIG_PROBABILITY=10:15:15 +		10% of booleans will be set to 'y', 90% to 'n' +		15% of tristates will be set to 'y', 15% to 'm', 70% to 'n' +  ______________________________________________________________________  Environment variables for 'silentoldconfig' |