From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932229AbbJIGlk (ORCPT ); Fri, 9 Oct 2015 02:41:40 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:23321 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754904AbbJIGli (ORCPT ); Fri, 9 Oct 2015 02:41:38 -0400 Date: Fri, 9 Oct 2015 09:41:22 +0300 From: Dan Carpenter To: Nikhil Rao , Sudeep Dutt Cc: Nikhil Rao , Ashutosh Dixit , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: [patch 1/2] misc: mic/scif: fix error code in scif_create_remote_lookup() Message-ID: <20151009064122.GC7540@mwanda> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) X-Source-IP: aserv0022.oracle.com [141.146.126.234] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org We should be returning -ENOMEM here instead of success. Fixes: ba612aa8b487 ('misc: mic: SCIF memory registration and unregistration') Signed-off-by: Dan Carpenter diff --git a/drivers/misc/mic/scif/scif_rma.c b/drivers/misc/mic/scif/scif_rma.c index e288996..bc2dccb 100644 --- a/drivers/misc/mic/scif/scif_rma.c +++ b/drivers/misc/mic/scif/scif_rma.c @@ -386,16 +386,20 @@ static int scif_create_remote_lookup(struct scif_dev *remote_dev, remote_dev, window->nr_lookup * sizeof(*window->dma_addr_lookup.lookup), GFP_KERNEL | __GFP_ZERO); - if (!window->dma_addr_lookup.lookup) + if (!window->dma_addr_lookup.lookup) { + err = -ENOMEM; goto error_window; + } window->num_pages_lookup.lookup = scif_alloc_coherent(&window->num_pages_lookup.offset, remote_dev, window->nr_lookup * sizeof(*window->num_pages_lookup.lookup), GFP_KERNEL | __GFP_ZERO); - if (!window->num_pages_lookup.lookup) + if (!window->num_pages_lookup.lookup) { + err = -ENOMEM; goto error_window; + } vmalloc_dma_phys = is_vmalloc_addr(&window->dma_addr[0]); vmalloc_num_pages = is_vmalloc_addr(&window->num_pages[0]);