From patchwork Wed Jul 27 19:17:23 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jarod Wilson X-Patchwork-Id: 9250349 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id B896160E66 for ; Wed, 27 Jul 2016 19:18:14 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A95672624C for ; Wed, 27 Jul 2016 19:18:14 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9E38726598; Wed, 27 Jul 2016 19:18:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B64D326538 for ; Wed, 27 Jul 2016 19:18:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758370AbcG0TRu (ORCPT ); Wed, 27 Jul 2016 15:17:50 -0400 Received: from mx1.redhat.com ([209.132.183.28]:60758 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758338AbcG0TRm (ORCPT ); Wed, 27 Jul 2016 15:17:42 -0400 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 603A3800B0; Wed, 27 Jul 2016 19:17:42 +0000 (UTC) Received: from hp-dl360pgen8-07.khw.lab.eng.bos.redhat.com (hp-dl360pgen8-07.khw.lab.eng.bos.redhat.com [10.16.184.47]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u6RJHenr032006; Wed, 27 Jul 2016 15:17:41 -0400 From: Jarod Wilson To: linux-rdma@vger.kernel.org Cc: Jarod Wilson , Yishai Hadas Subject: [PATCH libmlx5 2/6] fix coverity buffer overrun warning Date: Wed, 27 Jul 2016 15:17:23 -0400 Message-Id: <1469647047-7544-3-git-send-email-jarod@redhat.com> In-Reply-To: <1469647047-7544-1-git-send-email-jarod@redhat.com> References: <1469647047-7544-1-git-send-email-jarod@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Wed, 27 Jul 2016 19:17:42 +0000 (UTC) Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP In set_umr_data_seg, there's a union between a 16-byte struct and a 64-byte array, named data. The code then makes a memset() call on the struct that is sizeof(array) - sizeof(struct) long, which results in writing 48 bytes to a 16 byte container. Technically, we know this is actually fine, because of the union, but to silence the warning, we can just do the memset on the array instead. Same address, same result, but no warning spew from coverity. CC: Yishai Hadas Signed-off-by: Jarod Wilson --- src/qp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qp.c b/src/qp.c index 51e1176..8bb66be 100644 --- a/src/qp.c +++ b/src/qp.c @@ -426,7 +426,7 @@ static void set_umr_data_seg(struct mlx5_qp *qp, enum ibv_mw_type type, data->klm.mkey = htonl(bind_info->mr->lkey); data->klm.address = htonll(bind_info->addr); - memset(&data->klm + 1, 0, sizeof(data->reserved) - + memset(&data->reserved + 1, 0, sizeof(data->reserved) - sizeof(data->klm)); *seg += sizeof(*data);