Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964794AbcDLL5D (ORCPT ); Tue, 12 Apr 2016 07:57:03 -0400 Received: from mail-pa0-f53.google.com ([209.85.220.53]:35079 "EHLO mail-pa0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933541AbcDLL46 (ORCPT ); Tue, 12 Apr 2016 07:56:58 -0400 Message-ID: <570CE279.5070706@gmail.com> Date: Tue, 12 Apr 2016 17:26:41 +0530 From: Sudip Mukherjee User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Arend van Spriel , Amitkumar Karwar , Nishant Sarmukadam , Kalle Valo CC: linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, Sudip Mukherjee , Christian Daudt Subject: Re: [PATCH v2] mwifiex: fix possible NULL dereference References: <1460461597-7309-1-git-send-email-sudipm.mukherjee@gmail.com> <570CE113.20200@broadcom.com> In-Reply-To: <570CE113.20200@broadcom.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1429 Lines: 45 On Tuesday 12 April 2016 05:20 PM, Arend van Spriel wrote: > > > On 12-04-16 13:46, Sudip Mukherjee wrote: >> From: Sudip Mukherjee >> >> We have a check for card just after dereferencing it. So if it is NULL >> we have already dereferenced it before its check. Lets dereference it >> after checking card for NULL. > > And you are changing the scope of the pdev variable. yes, and since all usage of pdev is inside the "if" block so it should not matter. regards sudip > > Regards, > Arend > >> Signed-off-by: Sudip Mukherjee >> --- >> drivers/net/wireless/marvell/mwifiex/pcie.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c >> index edf8b07..d4db9db 100644 >> --- a/drivers/net/wireless/marvell/mwifiex/pcie.c >> +++ b/drivers/net/wireless/marvell/mwifiex/pcie.c >> @@ -2884,10 +2884,11 @@ static void mwifiex_unregister_dev(struct mwifiex_adapter *adapter) >> { >> struct pcie_service_card *card = adapter->card; >> const struct mwifiex_pcie_card_reg *reg; >> - struct pci_dev *pdev = card->dev; >> int i; >> >> if (card) { >> + struct pci_dev *pdev = card->dev; >> + >> if (card->msix_enable) { >> for (i = 0; i < MWIFIEX_NUM_MSIX_VECTORS; i++) >> synchronize_irq(card->msix_entries[i].vector); >>