Received: by 10.213.65.68 with SMTP id h4csp1281418imn; Sun, 18 Mar 2018 22:56:22 -0700 (PDT) X-Google-Smtp-Source: AG47ELt+TjIQCF5TJDxumJIH0BBfTHM3oVzqrtLrdIi38O21LrMELIKtNHBBdmbkYqmHnZmEs5Ls X-Received: by 10.98.242.6 with SMTP id m6mr9194500pfh.230.1521438982890; Sun, 18 Mar 2018 22:56:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521438982; cv=none; d=google.com; s=arc-20160816; b=wIDlaup/Xkuj0KQjCA+ERseCfEnD7Mw5zh8/eEn+oqhTPnpbQ70bnQ/GzRFMZnQ9Vk r807dMehzyiXLjRTEyvBTHwfm5Kg5cBM1GM9CMFwvGbQ7VE68/21AcFciWIET+R8OOBl F2MpWIdJsyUY5URTdr39mTZ4gc6NNMhvO7jtNfJ/04Z40k3T06IX9n4oz91XgayBtJSh gh5opmerDhwGQVA6maLVWAP9G91NQ3WaYgtSd+7/d7f5pHkuky7RXy2pQb/0ZXMNRzSB S3sxdbQPEObDzXtTbgoY+Je5hcp/AlIhaqsDCcGVMraK/lpPCxjuFe2g/nP0hPquZ77B ZvMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=rDfh7NiVlJ3rMYMmGVFtCKmDoD7i1kDQT2q3pMXNvxk=; b=RfspDhKR2ndGUv5xpkRWpO6izZWZsNoRt/xsZCU6NXHuGkwzutLGBOsmGTyiTWfCKH GM9e69S9PGkd7MP404VoEOByjsi4lArnKkU5zEfsKdoBoqDq/MJGB0VHWksz2z1lhRPo TKA+qqWQJ1nQileus9yz2hutzCY/BJ7der3MM67ZfenqER5++o+p/gU6IyA+i7i2VWYv uuuYdhfy8BLXWm36FS36vwVkBkx87diLEOXjwC0POktBmpGkQfVc0aUop7chm4WECmDq y1VnzW7kzK87/aZU3UJCvxD8+54cmGmbZYuOZBLQBQvQMDgcMUXgMG7P/GcwX+lywJyO 8UnQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tS7eerxq; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q4-v6si11443658plr.365.2018.03.18.22.56.08; Sun, 18 Mar 2018 22:56:22 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tS7eerxq; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932077AbeCSFzQ (ORCPT + 99 others); Mon, 19 Mar 2018 01:55:16 -0400 Received: from mail-pf0-f195.google.com ([209.85.192.195]:37634 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752285AbeCSFzO (ORCPT ); Mon, 19 Mar 2018 01:55:14 -0400 Received: by mail-pf0-f195.google.com with SMTP id h11so6646491pfn.4 for ; Sun, 18 Mar 2018 22:55:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=rDfh7NiVlJ3rMYMmGVFtCKmDoD7i1kDQT2q3pMXNvxk=; b=tS7eerxq+PJVUpNbtwFuQF4gPS4p6tvVcRgAftvbv1cYdgID5ss0HJrFe9PQav0lRy IiHOBCCEpuR2keJycELPFs2c/XJrhkcZk6B/3ukx983YwmWkhVrbQ/6FQ5EBBl1jyrGT lBDrS8k0+HEE4gVS3nSdXeDgloYLz7mDQY3kOQVWu/uvRg/VhUdE58pHZMEhi/qTjAtE x3oGgx6Zdc5bAAu0F17xjp+/14Ucdi7iuaIyDMmGT4vGDBjLUvIvjWgRewVZ1MJyKjAS im7WmD/ZrnJyx75tmhsh5h/SefA2+8F5OKzf0TyoMUsCCZIaj8QBiOXEorfAc+XdaJUf SR8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=rDfh7NiVlJ3rMYMmGVFtCKmDoD7i1kDQT2q3pMXNvxk=; b=lRu/kH8JHqZgj+Hb8oy8Ybv/plpTp94IBRrsMIRPEtaWJrZdbrQRAIg1zPnF6hFP40 Ib+7wNb3MbxzkBqsESAEbSIaTGb4WsoWEFiSsX2FJRTFItNv8sw8jSP28jQMtAVuEdV7 uTi8oFNhiYk4L9GaKr88WS4SLOp5ZwErASmKctSMlTQhu0vD0onFT3lomE9zoaHr+ws1 rDPvrxyRFiNBGMJLVdYD7RuurDnx6lbtgBwuKOF3J9a8OuBuhXzR68b9aXcJafg52Ngx ivWfbojT/DbdyuwlVJGCLhuZuepyUtmhpVuq1ZqUt2cM+d+1UrSWYwowfxz6mcg/jREw ei5w== X-Gm-Message-State: AElRT7EWl/XkqDKKMSngc3krfEWxO7Hqb6VhYTca0RUs3pODAGkF1wEh 5NhCk/f6zpF8HwRzQnNiIQg= X-Received: by 10.101.101.139 with SMTP id u11mr2167813pgv.436.1521438914113; Sun, 18 Mar 2018 22:55:14 -0700 (PDT) Received: from localhost.localdomain ([39.7.47.135]) by smtp.gmail.com with ESMTPSA id p9sm23469990pgs.89.2018.03.18.22.55.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 18 Mar 2018 22:55:12 -0700 (PDT) From: Sergey Senozhatsky X-Google-Original-From: Sergey Senozhatsky To: Arnaldo Carvalho de Melo Cc: Namhyung Kim , Jiri Olsa , Shuah Khan , linux-kernel@vger.kernel.org, Sergey Senozhatsky Subject: [PATCH] tools: Fix str_error_r() Werror=restrict build Date: Mon, 19 Mar 2018 14:55:04 +0900 Message-Id: <20180319055504.757-1-sergey.senozhatsky@gmail.com> X-Mailer: git-send-email 2.16.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit c8b5f2c96d1bf6c ("tools: Introduce str_error_r()") added an str_error_r() wrapper which makes gcc8 unhappy due to restrict-qualified parameter aliasing violation: ../lib/str_error_r.c: In function ‘str_error_r’: ../lib/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); ^~~~~~~~ cc1: all warnings being treated as errors Workaround that aliasing error by creating an additional stack variable which holds the buf pointer value we passed to strerror_r(). Signed-off-by: Sergey Senozhatsky --- tools/lib/str_error_r.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/lib/str_error_r.c b/tools/lib/str_error_r.c index d6d65537b0d9..11c3425f272b 100644 --- a/tools/lib/str_error_r.c +++ b/tools/lib/str_error_r.c @@ -21,7 +21,12 @@ char *str_error_r(int errnum, char *buf, size_t buflen) { int err = strerror_r(errnum, buf, buflen); - if (err) - snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err); + if (err) { + char *err_buf = buf; + + snprintf(err_buf, buflen, + "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", + errnum, buf, buflen, err); + } return buf; } -- 2.16.2