scripts/kconfig/confdata.c | 2 ++ 1 file changed, 2 insertions(+)
As David Laight pointed out, there is not much point in calling
ferror() unless you call fflush() first.
Reported-by: David Laight <David.Laight@ACULAB.COM>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---
scripts/kconfig/confdata.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
index d3c3a61308ad..94dcec2cc803 100644
--- a/scripts/kconfig/confdata.c
+++ b/scripts/kconfig/confdata.c
@@ -979,6 +979,7 @@ static int conf_write_autoconf_cmd(const char *autoconf_name)
fprintf(out, "\n$(deps_config): ;\n");
+ fflush(out);
ret = ferror(out); /* error check for all fprintf() calls */
fclose(out);
if (ret)
@@ -1097,6 +1098,7 @@ static int __conf_write_autoconf(const char *filename,
if ((sym->flags & SYMBOL_WRITE) && sym->name)
print_symbol(file, sym);
+ fflush(file);
/* check possible errors in conf_write_heading() and print_symbol() */
ret = ferror(file);
fclose(file);
--
2.32.0
On Sun, Feb 13, 2022 at 1:19 AM Masahiro Yamada <masahiroy@kernel.org> wrote: > > As David Laight pointed out, there is not much point in calling > ferror() unless you call fflush() first. > > Reported-by: David Laight <David.Laight@ACULAB.COM> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> > --- Applied to linux-kbuild. > > scripts/kconfig/confdata.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c > index d3c3a61308ad..94dcec2cc803 100644 > --- a/scripts/kconfig/confdata.c > +++ b/scripts/kconfig/confdata.c > @@ -979,6 +979,7 @@ static int conf_write_autoconf_cmd(const char *autoconf_name) > > fprintf(out, "\n$(deps_config): ;\n"); > > + fflush(out); > ret = ferror(out); /* error check for all fprintf() calls */ > fclose(out); > if (ret) > @@ -1097,6 +1098,7 @@ static int __conf_write_autoconf(const char *filename, > if ((sym->flags & SYMBOL_WRITE) && sym->name) > print_symbol(file, sym); > > + fflush(file); > /* check possible errors in conf_write_heading() and print_symbol() */ > ret = ferror(file); > fclose(file); > -- > 2.32.0 > -- Best Regards Masahiro Yamada
© 2016 - 2026 Red Hat, Inc.