lkml.org 
[lkml]   [2015]   [Sep]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [tip:perf/core] tools: Add err.h with ERR_PTR PTR_ERR interface
On Mon, Sep 28, 2015 at 11:35:45PM -0700, Vinson Lee wrote:
> On Mon, Sep 21, 2015 at 4:41 PM, Vinson Lee <vlee@twopensource.com> wrote:
> > On Wed, Sep 16, 2015 at 12:28 AM, tip-bot for Jiri Olsa
> > <tipbot@zytor.com> wrote:
> >> Commit-ID: 01ca9fd41d6f2ad796a6b109b5253e06b6ae6dc7
> >> Gitweb: http://git.kernel.org/tip/01ca9fd41d6f2ad796a6b109b5253e06b6ae6dc7
> >> Author: Jiri Olsa <jolsa@kernel.org>
> >> AuthorDate: Mon, 7 Sep 2015 10:38:03 +0200
> >> Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
> >> CommitDate: Tue, 15 Sep 2015 09:48:32 -0300
> >>
> >> tools: Add err.h with ERR_PTR PTR_ERR interface
> >>
> >> Adding part of the kernel's <linux/err.h> interface:
> >>
> >> inline void * __must_check ERR_PTR(long error);
> >> inline long __must_check PTR_ERR(__force const void *ptr);
> >> inline bool __must_check IS_ERR(__force const void *ptr);
> >>
> >> It will be used to propagate error through pointers in following
> >> patches.
> >>
> >> Signed-off-by: Jiri Olsa <jolsa@kernel.org>
> >> Reviewed-by: Raphael Beamonte <raphael.beamonte@gmail.com>
> >> Cc: David Ahern <dsahern@gmail.com>
> >> Cc: Matt Fleming <matt@codeblueprint.co.uk>
> >> Cc: Namhyung Kim <namhyung@kernel.org>
> >> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> >> Link: http://lkml.kernel.org/r/1441615087-13886-2-git-send-email-jolsa@kernel.org
> >> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
> >
> >
> > Hi.
> >
> > This patch appears to have introduced a build error on CentOS 6.7 with GCC 4.4.
> >
> > This build error occurs on next-20150921.
> >
> > CC util/evlist.o
> > cc1: warnings being treated as errors
> > In file included from util/evlist.c:28:
> > tools/include/linux/err.h: In function ‘ERR_PTR’:
> > tools/include/linux/err.h:34: error: declaration of ‘error’ shadows a
> > global declaration
> > util/util.h:135: error: shadowed declaration is here
> >
> > $ gcc --version
> > gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
> > Copyright (C) 2010 Free Software Foundation, Inc.
> > This is free software; see the source for copying conditions. There is NO
> > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> >
> > Cheers,
> > Vinson
>
> Hi.
>
> This build error still occurs with next-20150929.

attached patch should fix it

FYI there's another instance of this bug in parse-events.c in
Arnaldo's perf/core due to recent fixes, I'll send out fix shortly

thanks,
jirka


---
The error variable breaks build on CentOS 6.7, due to
collision with global error symbol:

CC util/evlist.o
cc1: warnings being treated as errors
In file included from util/evlist.c:28:
tools/include/linux/err.h: In function ‘ERR_PTR’:
tools/include/linux/err.h:34: error: declaration of ‘error’ shadows a global declaration
util/util.h:135: error: shadowed declaration is here

Using 'err' name instead to fix it.

Reported-by: Vinson Lee <vlee@twopensource.com>
Link: http://lkml.kernel.org/n/tip-i9mdgdbrgauy3fe76s9rd125@git.kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
tools/include/linux/err.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/include/linux/err.h b/tools/include/linux/err.h
index c9ada48f5156..1156cd20e0b7 100644
--- a/tools/include/linux/err.h
+++ b/tools/include/linux/err.h
@@ -31,9 +31,9 @@

#define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO)

-static inline void * __must_check ERR_PTR(long error)
+static inline void * __must_check ERR_PTR(long err)
{
- return (void *) error;
+ return (void *) err;
}

static inline long __must_check PTR_ERR(__force const void *ptr)
--
2.4.3


\
 
 \ /
  Last update: 2015-09-29 09:41    [W:0.115 / U:25.816 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site