| From 854e55ad289ef8888e7991f0ada85d5846f5afb9 Mon Sep 17 00:00:00 2001 |
| From: Josh Poimboeuf <jpoimboe@redhat.com> |
| Date: Thu, 15 Mar 2018 22:11:54 -0500 |
| Subject: objtool, perf: Fix GCC 8 -Wrestrict error |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Josh Poimboeuf <jpoimboe@redhat.com> |
| |
| commit 854e55ad289ef8888e7991f0ada85d5846f5afb9 upstream. |
| |
| Starting with recent GCC 8 builds, objtool and perf fail to build with |
| the following error: |
| |
| ../str_error_r.c: In function ‘str_error_r’: |
| ../str_error_r.c:25:3: error: passing argument 1 to restrict-qualified parameter aliases with argument 5 [-Werror=restrict] |
| snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err); |
| |
| The code seems harmless, but there's probably no benefit in printing the |
| 'buf' pointer in this situation anyway, so just remove it to make GCC |
| happy. |
| |
| Reported-by: Laura Abbott <labbott@redhat.com> |
| Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> |
| Tested-by: Laura Abbott <labbott@redhat.com> |
| Cc: Adrian Hunter <adrian.hunter@intel.com> |
| Cc: Jiri Olsa <jolsa@kernel.org> |
| Cc: Namhyung Kim <namhyung@kernel.org> |
| Cc: Wang Nan <wangnan0@huawei.com> |
| Link: http://lkml.kernel.org/r/20180316031154.juk2uncs7baffctp@treble |
| Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> |
| Cc: Fredrik Schön <fredrikschon@gmail.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| tools/lib/str_error_r.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/tools/lib/str_error_r.c |
| +++ b/tools/lib/str_error_r.c |
| @@ -22,6 +22,6 @@ char *str_error_r(int errnum, char *buf, |
| { |
| int err = strerror_r(errnum, buf, buflen); |
| if (err) |
| - snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err); |
| + snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, [buf], %zd)=%d", errnum, buflen, err); |
| return buf; |
| } |