<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/scripts/kconfig/confdata.c, branch v6.8</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v6.8</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v6.8'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2023-12-29T13:25:20Z</updated>
<entry>
<title>kconfig: WERROR unmet symbol dependency</title>
<updated>2023-12-29T13:25:20Z</updated>
<author>
<name>Sergey Senozhatsky</name>
<email>senozhatsky@chromium.org</email>
</author>
<published>2023-11-22T03:47:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=15d3f7664d2776c086f813f1efbfe2ae20a85e89'/>
<id>urn:sha1:15d3f7664d2776c086f813f1efbfe2ae20a85e89</id>
<content type='text'>
When KCONFIG_WERROR env variable is set treat unmet direct
symbol dependency as a terminal condition (error).

Suggested-by: Stefan Reinauer &lt;reinauer@google.com&gt;
Signed-off-by: Sergey Senozhatsky &lt;senozhatsky@chromium.org&gt;
Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: remove redundant NULL pointer check before free()</title>
<updated>2023-12-28T07:22:47Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-12-03T10:25:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=407868deb2a344e9baa7909e1b13aec35c7217b2'/>
<id>urn:sha1:407868deb2a344e9baa7909e1b13aec35c7217b2</id>
<content type='text'>
Passing NULL to free() is allowed and is a no-op.

Remove redundant NULL pointer checks.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: massage the loop in conf_read_simple()</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T07:59:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=48ab6c9c9256003a4f2d737ccdcba81e01ba4e68'/>
<id>urn:sha1:48ab6c9c9256003a4f2d737ccdcba81e01ba4e68</id>
<content type='text'>
Make the while-loop code a little more readable.

The gain is that "CONFIG_FOO" without '=' is warned as unexpected data.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: require an exact match for "is not set" to disable CONFIG option</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T07:59:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4aced3ec84a848bd64bfd725e81c54eb31bf8b24'/>
<id>urn:sha1:4aced3ec84a848bd64bfd725e81c54eb31bf8b24</id>
<content type='text'>
Currently, any string starting "is not set" disables a CONFIG option.

For example, "# CONFIG_FOO is not settled down" is accepted as valid
input, functioning the same as "# CONFIG_FOO is not set". It is a
long-standing oddity.

Check the line against the exact pattern "is not set".

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: introduce getline_stripped() helper</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T07:59:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9925d6b7d12f5019d2a6c465ae72093101edbfd4'/>
<id>urn:sha1:9925d6b7d12f5019d2a6c465ae72093101edbfd4</id>
<content type='text'>
Currently, newline characters are stripped away in multiple places
on the caller.

Doing that in the callee is helpful for further cleanups.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: deduplicate code in conf_read_simple()</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T07:59:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d854b4b21de684a16a7d6163c7b0e9c5ff8a09d3'/>
<id>urn:sha1:d854b4b21de684a16a7d6163c7b0e9c5ff8a09d3</id>
<content type='text'>
Kconfig accepts both "# CONFIG_FOO is not set" and "CONFIG_FOO=n" as
a valid input, but conf_read_simple() duplicates similar code to handle
them. Factor out the common code.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: remove unused code for S_DEF_AUTO in conf_read_simple()</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T07:59:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=92d4fe0a48f1ab6cf20143dd0b376f4fe842854b'/>
<id>urn:sha1:92d4fe0a48f1ab6cf20143dd0b376f4fe842854b</id>
<content type='text'>
The 'else' arm here is unreachable in practical use cases.

include/config/auto.conf does not include "# CONFIG_... is not set"
line unless it is manually hacked.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: require a space after '#' for valid input</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T07:59:07Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4d137ab0107ead0f2590fc0314e627431e3b9e3f'/>
<id>urn:sha1:4d137ab0107ead0f2590fc0314e627431e3b9e3f</id>
<content type='text'>
Currently, when an input line starts with '#', (line + 2) is passed to
memcmp() without checking line[1].

It means that line[1] can be any arbitrary character. For example,
"#KCONFIG_FOO is not set" is accepted as valid input, functioning the
same as "# CONFIG_FOO is not set".

More importantly, this can potentially lead to a buffer overrun if
line[1] == '\0'. It occurs if the input only contains '#', as
(line + 2) points to an uninitialized buffer.

Check line[1], and skip the line if it is not a space.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: remove error check for xrealloc()</title>
<updated>2023-11-28T02:22:51Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-18T06:18:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=61e3e3c21a9599f7f2c6f15f7e4b099cf6ea290e'/>
<id>urn:sha1:61e3e3c21a9599f7f2c6f15f7e4b099cf6ea290e</id>
<content type='text'>
xrealloc() never returns NULL as it is checked in the callee.

This is a left-over of commit d717f24d8c68 ("kconfig: add xrealloc()
helper").

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kconfig: do not clear SYMBOL_DEF_USER when the value is out of range</title>
<updated>2023-11-28T02:22:50Z</updated>
<author>
<name>Masahiro Yamada</name>
<email>masahiroy@kernel.org</email>
</author>
<published>2023-11-05T18:10:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ce1fc9345a59c55d3a46dd7da872791cae41324e'/>
<id>urn:sha1:ce1fc9345a59c55d3a46dd7da872791cae41324e</id>
<content type='text'>
When a user-supplied value is out of range, (NEW) and an incorrect default
value are shown.

[Test Kconfig]

  config FOO
          int "foo"
          range 10 20

[Test .config]

  CONFIG_FOO=30

[Result without this fix]

  $ make config
  *
  * Main menu
  *
  foo (FOO) [10] (NEW)

[Result with this fix]

  $ make config
  *
  * Main menu
  *
  foo (FOO) [20]

Currently, the SYMBOL_DEF_USER is cleared if the user input does not
reside within the range. Kconfig forgets the initial value 30, and
prints (NEW) and an incorrect default [10].

Kconfig should remember the user's input. The default should be [20]
because the user's input, 30, is closer to the upper limit of the range.

Please note it will not show up in "make oldconfig" because it is no
longer considered as a new symbol. It also fixes the inconsistent
behavior in listnewconfig/helpnewconfig.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
</feed>
