<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/scripts/kconfig/conf.c, branch v3.12.10</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/scripts/kconfig/conf.c?h=v3.12.10</id>
<link rel='self' href='https://git.amat.us/linux/atom/scripts/kconfig/conf.c?h=v3.12.10'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-06-24T18:03:30Z</updated>
<entry>
<title>kconfig: loop as long as we changed some symbols in randconfig</title>
<updated>2013-06-24T18:03:30Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-28T20:36:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3b9a19e08960e5cdad5253998637653e592a3c29'/>
<id>urn:sha1:3b9a19e08960e5cdad5253998637653e592a3c29</id>
<content type='text'>
Because of choice-in-a-choice constructs, it can happen that not all
symbols are assigned a value during randconfig, leading in rare cases
to this situation:

    ---8&lt;--- choice-in-choice.in
    choice
        bool "A/B/C"
    config A
        bool "A"

    config B
        bool "B"
    if B
    choice
        bool "E/F"
    config E
        bool "E"
    config F
        bool "F"
    endchoice
    endif # B

    config C
        bool "C"
    endchoice
    ---8&lt;---

    $ ./scripts/kconfig/conf --randconfig choice-in-choice.in
    [--SNIP--]
    $ ./scripts/kconfig/conf --silentoldconfig choice-in-choice.in &lt;/dev/null
    [--SNIP--]
    A/B/C
      1. A (A)
    &gt; 2. B (B)
      3. C (C)
    choice[1-3]: 2
      E/F
      &gt; 1. E (E) (NEW)
        2. F (F) (NEW)
      choice[1-2]: aborted!

    Console input/output is redirected. Run 'make oldconfig' to update
    configuration.

Fix this by looping in randconfig for as long as some symbol gets assigned
a value.

Note: this was spotted with the USB EHCI Debug Device Gadget (USB_G_DBGP),
which uses this choice-in-a-choice construct, and exhibits this problem.
The example above is just a stripped-down minimalist test-case.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
<entry>
<title>kconfig/conf: print the seed used to initialise the RNG for randconfig</title>
<updated>2013-06-18T21:59:01Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-05-20T21:09:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a5f6d795f5941e97e757b643a6482968a66c6150'/>
<id>urn:sha1:a5f6d795f5941e97e757b643a6482968a66c6150</id>
<content type='text'>
... so the user has a chance to reproduce a test-case.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
<entry>
<title>kconfig/conf: accept a base-16 seed for randconfig</title>
<updated>2013-06-18T21:59:00Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-05-20T21:17:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e85ac12443da72d79dbf7c55c12e4b16b8923d87'/>
<id>urn:sha1:e85ac12443da72d79dbf7c55c12e4b16b8923d87</id>
<content type='text'>
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
<entry>
<title>kconfig: allow specifying the seed for randconfig</title>
<updated>2013-04-24T22:16:25Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-13T20:49:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0d8024c6ebadb68f1154377c2e1996b4e649e4c8'/>
<id>urn:sha1:0d8024c6ebadb68f1154377c2e1996b4e649e4c8</id>
<content type='text'>
For reproducibility, it can be useful to be able to specify the
seed to use to seed the RNG.

Add a new KCONFIG_SEED environment variable which can be set to
the seed to use:
    $ make KCONFIG_SEED=42 randconfig
    $ sha1sum .config
    70a128c8dcc61303069e1be352cce64114dfcbca  .config
    $ make KCONFIG_SEED=42 randconfig
    $ sha1sum .config
    70a128c8dcc61303069e1be352cce64114dfcbca  .config

It's very usefull for eg. debugging the kconfig parser.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
<entry>
<title>kbuild: Fix missing '\n' for NEW symbols in yes "" | make oldconfig &gt;conf.new</title>
<updated>2013-02-19T12:48:36Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2013-02-19T00:24:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=62dc989921df2a98d1a73aacd085abe941cb9828'/>
<id>urn:sha1:62dc989921df2a98d1a73aacd085abe941cb9828</id>
<content type='text'>
According to Documentation/kbuild/kconfig.txt, the commands:

    yes "" | make oldconfig &gt;conf.new
    grep "(NEW)" conf.new

should list the new config symbols with their default values.
However, currently there is no line break after each new symbol.  When
kconfig is interactive the user will type a new-line at this point,
but when non-interactive kconfig must print it.

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Reference: http://bugs.debian.org/636029
[regid23@nt1.in: Adjusted Ben's work to apply cleanly to this tree]
Reported-and-tested-by: Regid Ichira &lt;regid23@nt1.in&gt;
Reviewed-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
<entry>
<title>kconfig: replace 'oldnoconfig' with 'olddefconfig', and keep the old name as an alias</title>
<updated>2012-09-27T16:18:07Z</updated>
<author>
<name>Adam Lee</name>
<email>adam8157@gmail.com</email>
</author>
<published>2012-08-31T17:05:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fb16d8912db5268f29706010ecafff74b971c58d'/>
<id>urn:sha1:fb16d8912db5268f29706010ecafff74b971c58d</id>
<content type='text'>
As 67d34a6a391369269a2e5dba8a5f42cc4cd50231 said, 'oldnoconfig' doesn't
set new symbols to 'n', but instead sets it to their default values.

So, this patch replaces 'oldnoconfig' with 'olddefconfig', stop making
people confused, and keep the old name 'oldnoconfig' as an alias,
because people already are dependent on its behavior with the
counter-intuitive name.

Signed-off-by: Adam Lee &lt;adam8157@gmail.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
<entry>
<title>kconfig: document oldnoconfig to what it really does in conf.c</title>
<updated>2012-08-31T14:56:51Z</updated>
<author>
<name>Adam Lee</name>
<email>adam8157@gmail.com</email>
</author>
<published>2012-08-17T06:57:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1d52a4a79188e5567b6c55f67e20a4f1043d10d3'/>
<id>urn:sha1:1d52a4a79188e5567b6c55f67e20a4f1043d10d3</id>
<content type='text'>
As 67d34a6a391369269a2e5dba8a5f42cc4cd50231 said, the make target
'oldnoconfig' is a misnomer. It doesn't set new symbols to 'n', but
instead sets it to their default values.

This patch fixes the document in conf.c, and will submit another patch
to replace 'oldnoconfig' to 'olddefconfig'

Signed-off-by: Adam Lee &lt;adam8157@gmail.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
<entry>
<title>kbuild: all{no,yes,mod,def,rand}config only read files when instructed to.</title>
<updated>2012-05-07T18:51:06Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2012-05-07T12:37:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9f420bf0f4a74e404b73b42b7fc3c85c20c64ea7'/>
<id>urn:sha1:9f420bf0f4a74e404b73b42b7fc3c85c20c64ea7</id>
<content type='text'>
Prevent subtle surprises to both people working on the kconfig code
and people using make allnoconfig allyesconfig allmoconfig and
randconfig by only attempting to read a config file if
KCONFIG_ALLCONFIG is set.

Common sense suggests attempting to read the extra config files does
not make sense unless requested.  The documentation says the code
won't attempt to read the extra config files unless requested.
Current usage does not appear to include people depending on the code
reading the config files without the variable being set So do the
simple thing and stop reading config files when passed
all{no,yes,mod,def,rand}config unless KCONFIG_ALLCONFIG environment
variable is set.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Reported-by: Stephen Rothwell &lt;sfr@canb.auug.org.au&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
<entry>
<title>kconfig: Add error handling to KCONFIG_ALLCONFIG</title>
<updated>2012-05-04T22:24:07Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2012-04-26T08:51:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5efe241eac80bb534fed0a965684c2d7527af5bf'/>
<id>urn:sha1:5efe241eac80bb534fed0a965684c2d7527af5bf</id>
<content type='text'>
- Only try to read the file specified if KCONFIG_ALL_CONFIG is set to
  something other than the empty string or "1".

- Don't use stat to check the name passed to conf_read_simple so that
  zconf_fopen can find the file in the current directory or in SRCTREE
  removing a extremely source of confusing failure, where KCONFIG_ALL_CONFIG
  was not interpreted with respect to the directory make was called in.

- If conf_read_simple fails complain clearly and stop processing.
  Allowing the simple debugging of typos.

- Clearly document the behavior so it is clear to users which
  values are treated as flags and which values are treated as
  filenames.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
<entry>
<title>kconfig/conf: mark xfgets() private</title>
<updated>2011-07-02T05:04:40Z</updated>
<author>
<name>Arnaud Lacombe</name>
<email>lacombar@gmail.com</email>
</author>
<published>2011-07-02T04:59:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ab63f58f253c3eca620347f5180ca3d6a1b6aa38'/>
<id>urn:sha1:ab63f58f253c3eca620347f5180ca3d6a1b6aa38</id>
<content type='text'>
This function has not much reason to be public. In the mean time, convert
declaration from K&amp;R C to ISO C.

Signed-off-by: Arnaud Lacombe &lt;lacombar@gmail.com&gt;
</content>
</entry>
</feed>
