Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1139109imm; Wed, 1 Aug 2018 10:50:11 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcp+NQOBPoaDbN15588IwNELQ7AuuJAZYFg499o1vBl5DOcShh+3u1eAZmvxPyNbneHNFRD X-Received: by 2002:a17:902:8ecb:: with SMTP id x11-v6mr26131588plo.308.1533145811791; Wed, 01 Aug 2018 10:50:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533145811; cv=none; d=google.com; s=arc-20160816; b=fa26/bpPXytjKrXmeqmWBOaG0QSMEeJ1HSOFFgawrIqrew2bZmDI9a0pyyQicS8GoA Df9mILSgV0elCydEX21hNnigGW3NuZLI4kDWud+7VAjoCQo0zHYAQgcOj450bUnFDJy0 6pKSIgcBjkVdiX/pBsONyuBYNTeuWA7EHWyx1OCOT5FE+qH7KMUKjEkOED5gavyXAtyC gkTH5MXQm9xcFrb+aQpHeRRfmM4jf27PdZVOSL70AwyVYJJa26Xw2K3Ob2fjDyU/SMk1 RGLfE4+HEh5CcG2MWfMrDk0NoAYI4lZ3/voizi1evvAlmiofSMK0Jh0j/4iX3SCjRh+v z50g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=FRjaYoDKaR3cNg3N5fnrsqOyFSgGTEYb10rzzvJWla8=; b=eg0D40X6rdH0nnkNHjJyZgh6FjPYXTsPlLqr+RLGZLNysHqNmVWuF4ihiGtnPuMi/n 2WmoBGk6hK/VhQdgIzxrWeKkF/ES7Tq6S7y48PupJKxucl7aU4BgtjAMyoqrktRIx0Fn RE974rN5h79Rpi/eVqCHJnQ+a5Jy/8lnPixY23AyDC4b63AaPGtqmkbcJjes8wUOMfg3 RyGry+bLRb9gc87F2Mq+zxy+FT/0lVRrJdBKLPORoGXkW6A8CSBsXmp3cuGq+hyRsAEQ NmeZyd6VOEci/dgNsZ16ONOYbFFnEsnD1a39rGvQWQtvBb+AJfbe4vi2Rt7uTFqliUD3 iSVg== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a15-v6si15479544pgg.611.2018.08.01.10.49.57; Wed, 01 Aug 2018 10:50:11 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2406530AbeHATLB (ORCPT + 99 others); Wed, 1 Aug 2018 15:11:01 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:51104 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2406520AbeHATLA (ORCPT ); Wed, 1 Aug 2018 15:11:00 -0400 Received: from localhost (D57E6652.static.ziggozakelijk.nl [213.126.102.82]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id CB2FACC3; Wed, 1 Aug 2018 17:24:17 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Gal Pressman , "David S. Miller" Subject: [PATCH 4.14 233/246] net: ena: Fix use of uninitialized DMA address bits field Date: Wed, 1 Aug 2018 18:52:23 +0200 Message-Id: <20180801165022.878181550@linuxfoundation.org> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180801165011.700991984@linuxfoundation.org> References: <20180801165011.700991984@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Gal Pressman [ Upstream commit 101f0cd4f2216d32f1b8a75a2154cf3997484ee2 ] UBSAN triggers the following undefined behaviour warnings: [...] [ 13.236124] UBSAN: Undefined behaviour in drivers/net/ethernet/amazon/ena/ena_eth_com.c:468:22 [ 13.240043] shift exponent 64 is too large for 64-bit type 'long long unsigned int' [...] [ 13.744769] UBSAN: Undefined behaviour in drivers/net/ethernet/amazon/ena/ena_eth_com.c:373:4 [ 13.748694] shift exponent 64 is too large for 64-bit type 'long long unsigned int' [...] When splitting the address to high and low, GENMASK_ULL is used to generate a bitmask with dma_addr_bits field from io_sq (in ena_com_prepare_tx and ena_com_add_single_rx_desc). The problem is that dma_addr_bits is not initialized with a proper value (besides being cleared in ena_com_create_io_queue). Assign dma_addr_bits the correct value that is stored in ena_dev when initializing the SQ. Fixes: 1738cd3ed342 ("net: ena: Add a driver for Amazon Elastic Network Adapters (ENA)") Signed-off-by: Gal Pressman Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/amazon/ena/ena_com.c | 1 + 1 file changed, 1 insertion(+) --- a/drivers/net/ethernet/amazon/ena/ena_com.c +++ b/drivers/net/ethernet/amazon/ena/ena_com.c @@ -331,6 +331,7 @@ static int ena_com_init_io_sq(struct ena memset(&io_sq->desc_addr, 0x0, sizeof(io_sq->desc_addr)); + io_sq->dma_addr_bits = ena_dev->dma_addr_bits; io_sq->desc_entry_size = (io_sq->direction == ENA_COM_IO_QUEUE_DIRECTION_TX) ? sizeof(struct ena_eth_io_tx_desc) :