From patchwork Wed Dec 13 01:57:33 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: 121715 Delivered-To: patch@linaro.org Received: by 10.140.22.227 with SMTP id 90csp4918400qgn; Tue, 12 Dec 2017 18:42:40 -0800 (PST) X-Google-Smtp-Source: ACJfBovQc0s2PgHiZOLFmPqQaDoBSLhVFUVDeUFAJX8CSV7d5MLvllKKrfJlnq+3j+ql4oWNGpII X-Received: by 10.98.58.208 with SMTP id v77mr4460111pfj.150.1513132960211; Tue, 12 Dec 2017 18:42:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1513132960; cv=none; d=google.com; s=arc-20160816; b=FNmqRFr37IusVCEqwS7XsVtyOLgLESsq0ELbxqkI6OShEd8tk/fsk/4b0ahYfn1BCi U5AGjrE1E8vihlO+YWKcUUA+6yy9PrSUlQWzzEGQBeNvM7Ubgc8Jwj4D56exobE/390X BiFMlQ4ghU0f5eB3Nch85xA1wY3wJsZHRjtPfPoY7T/F5duQO1vIG9+yE9QGVN/BQ4wO F2Tp5r3Rd5ICObbnVIVCBOjfPI61sAte1/cBMaF04qny5BuWrkxcfgq73AEHUmW203Rr +u69dtvjzIW42kQ/awlKBZhuIT82oOSTO+XMYzM5HMX0L1uVfBpNkeqFL5zQoejmXm1L DhQw== 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=uucP4PHkMAXIyQeNfaz6kpFEMNX2t4tpTxUbvmaVRZXT/MQDpRePsPaXLQcblyevn+ /UCW7SZuIheev29hNair1+RO5p4LMeei3tcr17GP5Vl+Mic3n4KgHa+I5ZFNGJNK+UYC c5iJLqClHpoyGuDMbWR0iS17J0T4A2Z+96ymy3jyPX6nqEr9uBBae6puWuiHAoGk5DrO xGLBw2wjofDu+IfAcwUHDRsDZCZqFKUBW6Su9hMPZUVwPAaQXEmgWg+e2zgSzA+cgAOc D/7RQFpTumUOsXSCLNhLZHTxreMHYgbJ8fKjmzCL5u4833KgioVsFb0mvdSl7DN20WGx ksuQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@verizon.com header.s=corp header.b=gpcfOHfz; dkim=fail header.i=@verizon.com header.s=corp header.b=i4qciamy; dkim=fail header.i=@verizon.com header.s=corp header.b=BXTCOFNG; 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=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 d2si446058pgq.658.2017.12.12.18.42.39; Tue, 12 Dec 2017 18:42:40 -0800 (PST) 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=fail header.i=@verizon.com header.s=corp header.b=gpcfOHfz; dkim=fail header.i=@verizon.com header.s=corp header.b=i4qciamy; dkim=fail header.i=@verizon.com header.s=corp header.b=BXTCOFNG; 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=fail (p=QUARANTINE sp=NONE dis=NONE) header.from=verizon.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753225AbdLMCmc (ORCPT + 10 others); Tue, 12 Dec 2017 21:42:32 -0500 Received: from omzsmtpe03.verizonbusiness.com ([199.249.25.208]:32009 "EHLO omzsmtpe03.verizonbusiness.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753153AbdLMB6U (ORCPT ); Tue, 12 Dec 2017 20:58:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1513130300; x=1544666300; h=from:cc:to:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=kyfTk0xptnKovUAbh25eW8Z3YBWwMC5k3zkFKFOIBo4=; b=gpcfOHfzhnONF5XYQ0Z89gJxbrDTz5UHk51u4j2kwiZBETw/O8ap/PaN 3CEFdn7VBWkMoqnK85R+bDi4jKBXFAS2x+4aL+wHgo7FY3apFPUWNV92h O1ZrvUixCsw3pfGHfEZZSyS4wKjqHTLwZMVsg9tr6hozIMsgw9FU6Nhpp M=; Received: from unknown (HELO fldsmtpi02.verizon.com) ([166.68.71.144]) by omzsmtpe03.verizonbusiness.com with ESMTP; 13 Dec 2017 01:58:06 +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 01:57:40 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1513130260; x=1544666260; h=from:cc:to:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=kyfTk0xptnKovUAbh25eW8Z3YBWwMC5k3zkFKFOIBo4=; b=i4qciamyLg4SGmpMlmXrxb/R3mwOJRu+ettsvxRTOLOhTfs+Kq3bq7om KBqvW35Iy8DCk7AoTmVfkwWOpjl1i75z9QmWyElgb0+Q+M9EjIp8GGItv hvKobuoXntlCXwjglTgnTA419CdAiYg93SJeTnOVCzaGrc5Qp1NGtFYZu I=; Received: from mariner.tdc.vzwcorp.com (HELO eris.verizonwireless.com) ([10.254.88.84]) by apollo.verizonwireless.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 12 Dec 2017 20:57:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1513130260; x=1544666260; h=to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version:from:cc; bh=kyfTk0xptnKovUAbh25eW8Z3YBWwMC5k3zkFKFOIBo4=; b=BXTCOFNGitxK+sbR8HIowX4oHh7xi43VZ+82Jzksec2iw+JlN7JIBPqc PSnEWEAcsbngR/7ttQScF8QC8na6iD8GB3fjEMI4g28AzejMQpfl0WwMT wPYJhPIp5ZGv8+1trU8A8n6cSH7UcFralCSKGSGuiFyYRlb54L0Fl5Z4Y Y=; From: alexander.levin@verizon.com Cc: Arnd Bergmann , "David S . Miller" , alexander.levin@verizon.com X-Host: mariner.tdc.vzwcorp.com Received: from ohtwi1exh001.uswin.ad.vzwcorp.com ([10.144.218.43]) by eris.verizonwireless.com with ESMTP/TLS/AES128-SHA256; 13 Dec 2017 01:57:40 +0000 Received: from tbwexch10apd.uswin.ad.vzwcorp.com (153.114.162.34) by OHTWI1EXH001.uswin.ad.vzwcorp.com (10.144.218.43) with Microsoft SMTP Server (TLS) id 14.3.248.2; Tue, 12 Dec 2017 20:57:40 -0500 Received: from OMZP1LUMXCA17.uswin.ad.vzwcorp.com (144.8.22.195) by tbwexch10apd.uswin.ad.vzwcorp.com (153.114.162.34) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Tue, 12 Dec 2017 20:57:39 -0500 Received: from OMZP1LUMXCA17.uswin.ad.vzwcorp.com (144.8.22.195) by OMZP1LUMXCA17.uswin.ad.vzwcorp.com (144.8.22.195) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Tue, 12 Dec 2017 19:57:39 -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 19:57:39 -0600 To: "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" Subject: [PATCH AUTOSEL for 4.9 042/100] bna: avoid writing uninitialized data into hw registers Thread-Topic: [PATCH AUTOSEL for 4.9 042/100] bna: avoid writing uninitialized data into hw registers Thread-Index: AQHTc7W9eEz4ptLFFUqd+0KPb9YjDQ== Date: Wed, 13 Dec 2017 01:57:33 +0000 Message-ID: <20171213015722.6722-17-alexander.levin@verizon.com> References: <20171213015722.6722-1-alexander.levin@verizon.com> In-Reply-To: <20171213015722.6722-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: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@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)); }