2010-01-25 21:50:34

by Himanshu Chauhan

[permalink] [raw]
Subject: [PATCH] scripts/kallsyms build warning fix

Hi all,

This is a small patch that fixes the build warning
of scripts/kallsyms.c

Regards
Himanshu

Signed-off-by: Himanshu Chauhan <[email protected]>
---
scripts/kallsyms.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c
index 86c3896..e3902fb 100644
--- a/scripts/kallsyms.c
+++ b/scripts/kallsyms.c
@@ -108,8 +108,10 @@ static int read_symbol(FILE *in, struct sym_entry *s)
rc = fscanf(in, "%llx %c %499s\n", &s->addr, &stype, str);
if (rc != 3) {
if (rc != EOF) {
- /* skip line */
- fgets(str, 500, in);
+ /* skip line. sym is used as dummy to
+ * shut of "warn_unused_result" warning.
+ */
+ sym = fgets(str, 500, in);
}
return -1;
}
--
1.6.3.3


2010-01-26 03:02:37

by Cong Wang

[permalink] [raw]
Subject: Re: [PATCH] scripts/kallsyms build warning fix

On Tue, Jan 26, 2010 at 5:41 AM, Himanshu Chauhan
<[email protected]> wrote:
> Hi all,
>
> This is a small patch that fixes the build warning
> of scripts/kallsyms.c
>
> Regards
> Himanshu
>
> Signed-off-by: Himanshu Chauhan <[email protected]>
> ---
>  scripts/kallsyms.c |    6 ++++--
>  1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c
> index 86c3896..e3902fb 100644
> --- a/scripts/kallsyms.c
> +++ b/scripts/kallsyms.c
> @@ -108,8 +108,10 @@ static int read_symbol(FILE *in, struct sym_entry *s)
>        rc = fscanf(in, "%llx %c %499s\n", &s->addr, &stype, str);
>        if (rc != 3) {
>                if (rc != EOF) {
> -                       /* skip line */
> -                       fgets(str, 500, in);
> +                       /* skip line. sym is used as dummy to
> +                        * shut of "warn_unused_result" warning.
> +                        */
> +                       sym = fgets(str, 500, in);
>                }
>                return -1;
>        }

Why not use the return value to do some useful checking?

2010-01-26 05:23:55

by Himanshu Chauhan

[permalink] [raw]
Subject: Re: [PATCH] scripts/kallsyms build warning fix

On Tue, Jan 26, 2010 at 11:02:34AM +0800, Am?rico Wang wrote:
> On Tue, Jan 26, 2010 at 5:41 AM, Himanshu Chauhan
> <[email protected]> wrote:
> > Hi all,
> >
> > This is a small patch that fixes the build warning
> > of scripts/kallsyms.c
> >
> > Regards
> > Himanshu
> >
> > Signed-off-by: Himanshu Chauhan <[email protected]>
> > ---
> > ?scripts/kallsyms.c | ? ?6 ++++--
> > ?1 files changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c
> > index 86c3896..e3902fb 100644
> > --- a/scripts/kallsyms.c
> > +++ b/scripts/kallsyms.c
> > @@ -108,8 +108,10 @@ static int read_symbol(FILE *in, struct sym_entry *s)
> > ? ? ? ?rc = fscanf(in, "%llx %c %499s\n", &s->addr, &stype, str);
> > ? ? ? ?if (rc != 3) {
> > ? ? ? ? ? ? ? ?if (rc != EOF) {
> > - ? ? ? ? ? ? ? ? ? ? ? /* skip line */
> > - ? ? ? ? ? ? ? ? ? ? ? fgets(str, 500, in);
> > + ? ? ? ? ? ? ? ? ? ? ? /* skip line. sym is used as dummy to
> > + ? ? ? ? ? ? ? ? ? ? ? ?* shut of "warn_unused_result" warning.
> > + ? ? ? ? ? ? ? ? ? ? ? ?*/
> > + ? ? ? ? ? ? ? ? ? ? ? sym = fgets(str, 500, in);
> > ? ? ? ? ? ? ? ?}
> > ? ? ? ? ? ? ? ?return -1;
> > ? ? ? ?}
>
> Why not use the return value to do some useful checking?

fgets is called as a part of error handling. Its called just to
drop a line and return immediately. read_map is reading the file
in a loop and read_symbol reads line by line. So I think there is
no point in using return value for useful checking. Other checks
like 3 items were returned or !EOF have already been done.

Regards
Himanshu