From patchwork Wed Dec 13 01:58:32 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Levin, Alexander \(Sasha Levin\)" X-Patchwork-Id: 121709 Delivered-To: patch@linaro.org Received: by 10.140.22.227 with SMTP id 90csp4902891qgn; Tue, 12 Dec 2017 18:22:43 -0800 (PST) X-Google-Smtp-Source: ACJfBouhY3Da5QblnIOP7qoc4kj7QvLAuoI0dt+lcX4C0yoAvrJ1nrj2MBHxIuXXrq82cyfIYDR7 X-Received: by 10.159.231.20 with SMTP id w20mr4440398plq.398.1513131763114; Tue, 12 Dec 2017 18:22:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1513131763; cv=none; d=google.com; s=arc-20160816; b=Rkx58ynOzvcfw3Cxk3eggkKbCbnIUz8d26QwMM7ypaHkJJf/QKnQoTEaNQtT9LXBEY zzXRkAshHMqozbriBNhFzkelxf5d8b3VOBQe0il4kUSMpVl14qLFK7M3Pt0yCWfmOW8c WRqqgr6xQAKFfXgE1WAUx7Oz46ck4ZXxeRsjp8Aqr4boy5cjK1luQPSSM6bfvJQYXPty XMFFg82hH7Te6Q+dCH+MnLzaQd1infVfIX7+F7phZCuxogURjoU0joQOB4CeMi4BtMg9 E6e0kkRbl1d15fnd9hWnI5Fu0wgfWbb5sBp18Eo7uK5t/vpwlPaCxhgABvGL59NlLIIe KUog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:to:cc:from:dkim-signature :dkim-signature:dkim-signature:arc-authentication-results; bh=WAJGm+Iup1+AYy1oyptKTKMcbqWrP641kbpW5aNRY5w=; b=x3wD/vdGysxxSCIJe465hiz0FoBPzQIIboWkucSAqwlC+4Ccgc5p6mpxI5dJCmLptt B1pwgxvMdYuX2OMz3gRxNxxqj0/cubPv0Dy5128Qi3yvX9aPto0rE7+yUAZDbNefk3zD 6ImMrBfUNa8hqPKvBe0n4srisMKizh0094CqW7O5/TkH/DIBmlSy+TPgB9MAiDw3NmbS 7ZVVuxySUx7b/sBlxDlQCfg0P/ml30hkdA05IvOFBMZ35JrZq2Jvbmx6IkBg2h715Dgf sz7ikB6+Kr9pcGZfWEHr555tO6uXsRtHLcNwK9eo8TaxtAsOjL+hdYvo75Xu9BYbiurY LNDQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@verizon.com header.s=corp header.b=gKEtKVtJ; dkim=fail header.i=@verizon.com header.s=corp header.b=kJRXKN3d; dkim=fail header.i=@verizon.com header.s=corp header.b=H7LF2m2b; spf=pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=NONE dis=NONE) header.from=verizon.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b5si430830pgc.226.2017.12.12.18.22.42; Tue, 12 Dec 2017 18:22:43 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@verizon.com header.s=corp header.b=gKEtKVtJ; dkim=fail header.i=@verizon.com header.s=corp header.b=kJRXKN3d; dkim=fail header.i=@verizon.com header.s=corp header.b=H7LF2m2b; spf=pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=NONE dis=NONE) header.from=verizon.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753583AbdLMCWl (ORCPT + 10 others); Tue, 12 Dec 2017 21:22:41 -0500 Received: from omzsmtpe02.verizonbusiness.com ([199.249.25.209]:11025 "EHLO omzsmtpe02.verizonbusiness.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753587AbdLMCAj (ORCPT ); Tue, 12 Dec 2017 21:00:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1513130439; x=1544666439; h=from:cc:to:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=kyfTk0xptnKovUAbh25eW8Z3YBWwMC5k3zkFKFOIBo4=; b=gKEtKVtJWQ7BRB4bkBoz467my8NavUd7Sn067RmLUdWY+mjLO3NWe9ml bhTTd+WbEj9nV+q5Ik6aO0fTPq1Oyuw2piUhgO1B0ViczGy9Wa9++IJZB htRRv9bgQy78q1Hd5w4Z8+/qc+4/Gpa6HnohpgFjZW4IOyDtUSk/w8KxP A=; Received: from unknown (HELO fldsmtpi02.verizon.com) ([166.68.71.144]) by omzsmtpe02.verizonbusiness.com with ESMTP; 13 Dec 2017 02:00:36 +0000 Received: from rogue-10-255-192-101.rogue.vzwcorp.com (HELO apollo.verizonwireless.com) ([10.255.192.101]) by fldsmtpi02.verizon.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 13 Dec 2017 02:00:04 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1513130404; x=1544666404; h=from:cc:to:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=kyfTk0xptnKovUAbh25eW8Z3YBWwMC5k3zkFKFOIBo4=; b=kJRXKN3d2m98RzBHfnHCuzcKu3Og6hRCJusYvFkzGFSRh66hoUfY5vZ9 9qy2jb5j3RTConKdmBG+NUBO74JL9uM8ne6X+DfXweqwoaX7jGvXNnMnD s7uKeGN4AAmWsyMyTYprcBIzKKOo3AbWDdG5JYgdt28fQSX5cR6YNrOcZ 4=; Received: from surveyor.tdc.vzwcorp.com (HELO eris.verizonwireless.com) ([10.254.88.83]) by apollo.verizonwireless.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 12 Dec 2017 21:00:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1513130404; x=1544666404; h=to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version:from:cc; bh=kyfTk0xptnKovUAbh25eW8Z3YBWwMC5k3zkFKFOIBo4=; b=H7LF2m2b95Fowm+LoVoc/oTQztbU1is2iFl3k11BzAa0d+sD3MMREfBo Nct0TPoKhhkH8JfKYufU3DEH4UCmZLVKkv+6xyEEWHwDfkTKA1q+YiDjR mIyLgXoiMWJ6brxBekKs1Iy7hbch2ijTGaopPty2UHUIH9MNXPXsy02pj M=; From: alexander.levin@verizon.com Cc: Arnd Bergmann , "David S . Miller" , alexander.levin@verizon.com X-Host: surveyor.tdc.vzwcorp.com Received: from ohtwi1exh003.uswin.ad.vzwcorp.com ([10.144.218.45]) by eris.verizonwireless.com with ESMTP/TLS/AES128-SHA256; 13 Dec 2017 02:00:04 +0000 Received: from tbwexch28apd.uswin.ad.vzwcorp.com (153.114.162.52) by OHTWI1EXH003.uswin.ad.vzwcorp.com (10.144.218.45) with Microsoft SMTP Server (TLS) id 14.3.248.2; Tue, 12 Dec 2017 21:00:04 -0500 Received: from OMZP1LUMXCA11.uswin.ad.vzwcorp.com (144.8.22.186) by tbwexch28apd.uswin.ad.vzwcorp.com (153.114.162.52) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Tue, 12 Dec 2017 21:00:03 -0500 Received: from OMZP1LUMXCA17.uswin.ad.vzwcorp.com (144.8.22.195) by OMZP1LUMXCA11.uswin.ad.vzwcorp.com (144.8.22.186) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Tue, 12 Dec 2017 20:00:02 -0600 Received: from OMZP1LUMXCA17.uswin.ad.vzwcorp.com ([144.8.22.195]) by OMZP1LUMXCA17.uswin.ad.vzwcorp.com ([144.8.22.195]) with mapi id 15.00.1263.000; Tue, 12 Dec 2017 20:00:02 -0600 To: "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" Subject: [PATCH AUTOSEL for 4.4 26/59] bna: avoid writing uninitialized data into hw registers Thread-Topic: [PATCH AUTOSEL for 4.4 26/59] bna: avoid writing uninitialized data into hw registers Thread-Index: AQHTc7XgXMLC5bw7l0K7RTyRUkHkLg== Date: Wed, 13 Dec 2017 01:58:32 +0000 Message-ID: <20171213015817.6950-26-alexander.levin@verizon.com> References: <20171213015817.6950-1-alexander.levin@verizon.com> In-Reply-To: <20171213015817.6950-1-alexander.levin@verizon.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.144.60.250] MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: Arnd Bergmann [ Upstream commit a5af83925363eb85d467933e3d6ec5a87001eb7c ] The latest gcc-7 snapshot warns about bfa_ioc_send_enable/bfa_ioc_send_disable writing undefined values into the hardware registers: drivers/net/ethernet/brocade/bna/bfa_ioc.c: In function 'bfa_iocpf_sm_disabling_entry': arch/arm/include/asm/io.h:109:22: error: '*((void *)&disable_req+4)' is used uninitialized in this function [-Werror=uninitialized] arch/arm/include/asm/io.h:109:22: error: '*((void *)&disable_req+8)' is used uninitialized in this function [-Werror=uninitialized] The two functions look like they should do the same thing, but only one of them initializes the time stamp and clscode field. The fact that we only get a warning for one of the two functions seems to be arbitrary, based on the inlining decisions in the compiler. To address this, I'm making both functions do the same thing: - set the clscode from the ioc structure in both - set the time stamp from ktime_get_real_seconds (which also avoids the signed-integer overflow in 2038 and extends the well-defined behavior until 2106). - zero-fill the reserved field Fixes: 8b230ed8ec96 ("bna: Brocade 10Gb Ethernet device driver") Signed-off-by: Arnd Bergmann Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/brocade/bna/bfa_ioc.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) -- 2.11.0 diff --git a/drivers/net/ethernet/brocade/bna/bfa_ioc.c b/drivers/net/ethernet/brocade/bna/bfa_ioc.c index 9e59663a6ead..0f6811860ad5 100644 --- a/drivers/net/ethernet/brocade/bna/bfa_ioc.c +++ b/drivers/net/ethernet/brocade/bna/bfa_ioc.c @@ -1930,13 +1930,13 @@ static void bfa_ioc_send_enable(struct bfa_ioc *ioc) { struct bfi_ioc_ctrl_req enable_req; - struct timeval tv; bfi_h2i_set(enable_req.mh, BFI_MC_IOC, BFI_IOC_H2I_ENABLE_REQ, bfa_ioc_portid(ioc)); enable_req.clscode = htons(ioc->clscode); - do_gettimeofday(&tv); - enable_req.tv_sec = ntohl(tv.tv_sec); + enable_req.rsvd = htons(0); + /* overflow in 2106 */ + enable_req.tv_sec = ntohl(ktime_get_real_seconds()); bfa_ioc_mbox_send(ioc, &enable_req, sizeof(struct bfi_ioc_ctrl_req)); } @@ -1947,6 +1947,10 @@ bfa_ioc_send_disable(struct bfa_ioc *ioc) bfi_h2i_set(disable_req.mh, BFI_MC_IOC, BFI_IOC_H2I_DISABLE_REQ, bfa_ioc_portid(ioc)); + disable_req.clscode = htons(ioc->clscode); + disable_req.rsvd = htons(0); + /* overflow in 2106 */ + disable_req.tv_sec = ntohl(ktime_get_real_seconds()); bfa_ioc_mbox_send(ioc, &disable_req, sizeof(struct bfi_ioc_ctrl_req)); }