<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/scripts/kconfig, branch v3.10.10</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/scripts/kconfig?h=v3.10.10</id>
<link rel='self' href='https://git.amat.us/linux/atom/scripts/kconfig?h=v3.10.10'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-05-29T22:14:01Z</updated>
<entry>
<title>kconfig/menu.c: fix multiple references to expressions in menu_add_prop()</title>
<updated>2013-05-29T22:14:01Z</updated>
<author>
<name>Dirk Gouders</name>
<email>dirk@gouders.net</email>
</author>
<published>2013-05-21T08:54:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e983b7b17ad1a978e954e6aaa62cf12bfc747883'/>
<id>urn:sha1:e983b7b17ad1a978e954e6aaa62cf12bfc747883</id>
<content type='text'>
menu_add_prop() applies upper menus' visibilities to actual prompts
by AND-ing the prompts visibilities with the upper menus ones.

This creates a further reference to the menu's visibilities and when
the expression reduction functions do their work, they may remove or
modify expressions that have multiple references, thus causing
unpredictable side-effects.

The following example Kconfig constructs a case where this causes
problems: a menu and a prompt which's visibilities depend on the same
symbol.  When invoking mconf with this Kconfig and pressing "Z" we
see a problem caused by a free'd expression still referenced by the
menu's visibility:

------------------------------------------------------------------------
mainmenu "Kconfig Testing Configuration"

config VISIBLE
	def_bool n

config Placeholder
	bool "Place holder"

menu "Invisible"
	visible if VISIBLE

config TEST_VAR
	bool "Test option" if VISIBLE

endmenu
------------------------------------------------------------------------

This patch fixes this problem by creating copies of the menu's
visibility expressions before AND-ing them with the prompt's one.

Signed-off-by: Dirk Gouders &lt;dirk@gouders.net&gt;
[yann.morin.1998@free.fr: move variable into its block-scope,
                          keep lines &lt;80 chars, typo]
Tested-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Reviewed-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
<entry>
<title>mconf: handle keys in empty dialogs</title>
<updated>2013-05-29T22:13:32Z</updated>
<author>
<name>Dirk Gouders</name>
<email>dirk@gouders.net</email>
</author>
<published>2013-05-19T19:48:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=063f4661fde8c03c4c03f8a205071a52691c152e'/>
<id>urn:sha1:063f4661fde8c03c4c03f8a205071a52691c152e</id>
<content type='text'>
When entering an empty dialog, using the movement keys resulted in
unexpected characters beeing displayed, other keys like "z" and "h"
did not work as expected.

This patch handles the movement keys as well as other keys, especially
"z", "h" and "/".

Signed-off-by: Dirk Gouders &lt;dirk@gouders.net&gt;
[yann.morin.1998@free.fr: keep lines &lt;80 chars, so reorder test]
Tested-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Reviewed-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
<entry>
<title>Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild</title>
<updated>2013-05-07T14:58:05Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2013-05-07T14:58:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=685e56d2943bb8bf3b641d85b1b6c69d24f7965f'/>
<id>urn:sha1:685e56d2943bb8bf3b641d85b1b6c69d24f7965f</id>
<content type='text'>
Pull kconfig updates from Michal Marek:
 - use pkg-config to detect curses libraries
 - clean up the way curses headers are searched
 - Some randconfig fixes, of which one had to be reverted
 - KCONFIG_SEED for randconfig debugging
 - memuconfig memory leak plugged
 - menuconfig &gt; breadcrumbs &gt; navigation
 - xconfig compilation fix
 - Other minor fixes

* 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
  kconfig: fix lists definition for C++
  Revert "kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG"
  kconfig: implement KCONFIG_PROBABILITY for randconfig
  kconfig: allow specifying the seed for randconfig
  kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG
  kconfig: do not override symbols already set
  kconfig: fix randconfig tristate detection
  kconfig/lxdialog: rationalise the include paths where to find {.n}curses{,w}.h
  menuconfig: Add "breadcrumbs" navigation aid
  menuconfig: Fix memory leak introduced by jump keys feature
  merge_config.sh: Avoid creating unnessary source softlinks
  kconfig: optionally use pkg-config to detect ncurses libs
  menuconfig: optionally use pkg-config to detect ncurses libs
</content>
</entry>
<entry>
<title>menuconfig: fix NULL pointer dereference when searching a symbol</title>
<updated>2013-05-07T14:55:36Z</updated>
<author>
<name>Li Zefan</name>
<email>lizefan@huawei.com</email>
</author>
<published>2013-05-07T13:56:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=383da76f5261637b8beacb99a83f5834b14fc432'/>
<id>urn:sha1:383da76f5261637b8beacb99a83f5834b14fc432</id>
<content type='text'>
Searching for PPC_EFIKA results in a segmentation fault, and it's
because get_symbol_prop() returns NULL.

In this case CONFIG_PPC_EFIKA is defined in arch/powerpc/platforms/
52xx/Kconfig, so it won't be parsed if ARCH!=PPC, but menuconfig knows
this symbol when it parses sound/soc/fsl/Kconfig:

    config SND_MPC52xx_SOC_EFIKA
        tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
        depends on PPC_EFIKA

This bug was introduced by commit bcdedcc1afd6 ("menuconfig: print more
info for symbol without prompts").

Reported-and-tested-by: Borislav Petkov &lt;bp@alien8.de&gt;
Signed-off-by: Li Zefan &lt;lizefan@huawei.com&gt;
Tested-by: Libo Chen &lt;libo.chen@huawei.com&gt;
Reviewed-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>menuconfig: print more info for symbol without prompts</title>
<updated>2013-05-01T00:04:09Z</updated>
<author>
<name>Wengmeiling</name>
<email>wengmeiling.weng@huawei.com</email>
</author>
<published>2013-04-30T22:28:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bcdedcc1afd6ac91e15cb90aedaf8432f62fed13'/>
<id>urn:sha1:bcdedcc1afd6ac91e15cb90aedaf8432f62fed13</id>
<content type='text'>
When we search a config symbol, if it has no prompt the position of this
symbol in the Kconfig file and it's dependencies are not printed.  This
can be inconvenient, especially when it's set to n and we want to find out
why.

the following is an example:

before:

Symbol: GENERIC_SMP_IDLE_THREAD [=y]
Type  : boolean
  Selected by: X86 [=y]

after:

Symbol: GENERIC_SMP_IDLE_THREAD [=y]
Type  : boolean
  Defined at arch/Kconfig:213
  Selected by: X86 [=y]

Signed-off-by: Weng Meiling &lt;wengmeiling.weng@huawei.com&gt;
Signed-off-by: Libo Chen &lt;libo.chen@huawei.com&gt;
Cc: Michal Marek &lt;mmarek@suse.cz&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>localmodconfig: Process source kconfig files as they are found</title>
<updated>2013-04-29T19:41:51Z</updated>
<author>
<name>Steven Rostedt</name>
<email>rostedt@goodmis.org</email>
</author>
<published>2013-04-29T19:18:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ced9cb1af1e3486cc14dca755a1b3fbadf06e90b'/>
<id>urn:sha1:ced9cb1af1e3486cc14dca755a1b3fbadf06e90b</id>
<content type='text'>
A bug was reported that caused localmodconfig to not keep all the
dependencies of ATH9K. This was caused by the kconfig file:

In drivers/net/wireless/ath/Kconfig:

---
if ATH_CARDS

config ATH_DEBUG
        bool "Atheros wireless debugging"
        ---help---
          Say Y, if you want to debug atheros wireless drivers.
          Right now only ath9k makes use of this.

source "drivers/net/wireless/ath/ath5k/Kconfig"
source "drivers/net/wireless/ath/ath9k/Kconfig"
source "drivers/net/wireless/ath/carl9170/Kconfig"
source "drivers/net/wireless/ath/ath6kl/Kconfig"
source "drivers/net/wireless/ath/ar5523/Kconfig"
source "drivers/net/wireless/ath/wil6210/Kconfig"

endif
---

The current way kconfig works, it processes new source files after the
first file is completed. It creates an array of new source config files
and when the one file is finished, it continues with the next file.

Unfortunately, this means that it loses the fact that the source file is
within an "if" statement, and this means that each of these source file's
configs will not have the proper dependencies set.

As ATH9K requires ATH_CARDS set, the localmodconfig did not see that
dependency, and did not enable ATH_CARDS. When the oldconfig was run, it
forced ATH9K to be disabled.

Link: http://lkml.kernel.org/r/alpine.DEB.2.02.1304291022320.9234@oneiric

Cc: stable@vger.kernel.org # 3.8+
Reported-by: Robert P. J. Day &lt;rpjday@crashcourse.ca&gt;
Tested-by: Robert P. J. Day &lt;rpjday@crashcourse.ca&gt;
Signed-off-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
</content>
</entry>
<entry>
<title>localmodconfig: Add debug prints for dependencies of module configs</title>
<updated>2013-04-29T19:17:40Z</updated>
<author>
<name>Steven Rostedt</name>
<email>rostedt@goodmis.org</email>
</author>
<published>2013-04-29T19:17:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bc20d12eca43028548e5a4f655c2070e57bede1c'/>
<id>urn:sha1:bc20d12eca43028548e5a4f655c2070e57bede1c</id>
<content type='text'>
When a config for a module is added to the list to save in the final
config file, add a print to show what dependencies are used. This is
useful to debug when a config is disabled by the make oldconfig after
localmodconfig is finished.

This print only appears if the environment variable LOCALMODCONFIG_DEBUG
is defined.

Signed-off-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
</content>
</entry>
<entry>
<title>kconfig: fix lists definition for C++</title>
<updated>2013-04-29T17:55:56Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-29T17:50:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=21ca352b71ca252e1933b1538fe89da8a04395c3'/>
<id>urn:sha1:21ca352b71ca252e1933b1538fe89da8a04395c3</id>
<content type='text'>
The C++ compiler is more strict in that it refuses to assign
a void* to a struct list_head*.

Fix that by explicitly casting the poisonning constants.

(Tested with all 5 frontends, now.)

Reported-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Cc: Benjamin Poirier &lt;bpoirier@suse.de&gt;
</content>
</entry>
<entry>
<title>Revert "kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG"</title>
<updated>2013-04-26T21:21:59Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-26T20:41:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=23a5dfdad22a574d19d7cc19b391f9ce0d3c2f21'/>
<id>urn:sha1:23a5dfdad22a574d19d7cc19b391f9ce0d3c2f21</id>
<content type='text'>
This reverts commit 422c809f03f043d0950d8362214818e956a9daee.
It causes more harm than it solves issues.

Reported-by: Sedat Dilek &lt;sedat.dilek@gmail.com&gt;
Reported-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Tested-by: Sedat Dilek &lt;sedat.dilek@gmail.com&gt;
Cc: Sedat Dilek &lt;sedat.dilek@gmail.com&gt;
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: Michal Marek &lt;mmarek@suse.cz&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Stephen Rothwell &lt;sfr@canb.auug.org.au&gt;
Cc: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
</content>
</entry>
<entry>
<title>kconfig: implement KCONFIG_PROBABILITY for randconfig</title>
<updated>2013-04-24T22:16:30Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-13T15:18:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e43956e607692f9b1c710311e4a6591ffba1edf0'/>
<id>urn:sha1:e43956e607692f9b1c710311e4a6591ffba1edf0</id>
<content type='text'>
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 &lt;jacmet@uclibc.org&gt;
[yann.morin.1998@free.fr: add to Documentation/]
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
</content>
</entry>
</feed>
