From patchwork Tue Dec 15 15:54:55 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jitendra Bhivare X-Patchwork-Id: 7855601 Return-Path: X-Original-To: patchwork-linux-scsi@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 3DA649F350 for ; Tue, 15 Dec 2015 15:55:32 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 6EEE52026C for ; Tue, 15 Dec 2015 15:55:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id AEB6E2037C for ; Tue, 15 Dec 2015 15:55:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754103AbbLOPzX (ORCPT ); Tue, 15 Dec 2015 10:55:23 -0500 Received: from cmrelayp1.emulex.com ([138.239.112.140]:63985 "EHLO CMRELAYP1.ad.emulex.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1754028AbbLOPzW (ORCPT ); Tue, 15 Dec 2015 10:55:22 -0500 Received: from codebrowse.iig.avagotech.net ([10.192.207.129]) by CMRELAYP1.ad.emulex.com with Microsoft SMTPSVC(7.5.7601.17514); Tue, 15 Dec 2015 07:55:27 -0800 From: Jitendra Bhivare To: linux-scsi@vger.kernel.org, michaelc@cs.wisc.edu Cc: Jitendra Subject: [PATCH 04/15] be2iscsi: Fix to synchronize tag allocation using spin_lock Date: Tue, 15 Dec 2015 21:24:55 +0530 Message-Id: <1450194906-12925-5-git-send-email-jitendra.bhivare@avagotech.com> X-Mailer: git-send-email 2.2.0 In-Reply-To: <1450194906-12925-1-git-send-email-jitendra.bhivare@avagotech.com> References: <1450194906-12925-1-git-send-email-jitendra.bhivare@avagotech.com> X-OriginalArrivalTime: 15 Dec 2015 15:55:27.0745 (UTC) FILETIME=[047A2F10:01D13751] Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Jitendra alloc_mcc_tag/free_mcc_tag is now done under mcc_lock spin_lock Signed-off-by: Jitendra Reviewed-by: Hannes Reinecke --- drivers/scsi/be2iscsi/be_cmds.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/scsi/be2iscsi/be_cmds.c b/drivers/scsi/be2iscsi/be_cmds.c index 21c806f..6f58063 100644 --- a/drivers/scsi/be2iscsi/be_cmds.c +++ b/drivers/scsi/be2iscsi/be_cmds.c @@ -118,6 +118,7 @@ unsigned int alloc_mcc_tag(struct beiscsi_hba *phba) { unsigned int tag = 0; + spin_lock(&phba->ctrl.mcc_lock); if (phba->ctrl.mcc_tag_available) { tag = phba->ctrl.mcc_tag[phba->ctrl.mcc_alloc_index]; phba->ctrl.mcc_tag[phba->ctrl.mcc_alloc_index] = 0; @@ -130,6 +131,7 @@ unsigned int alloc_mcc_tag(struct beiscsi_hba *phba) else phba->ctrl.mcc_alloc_index++; } + spin_unlock(&phba->ctrl.mcc_lock); return tag; } @@ -254,7 +256,7 @@ release_mcc_tag: void free_mcc_tag(struct be_ctrl_info *ctrl, unsigned int tag) { - spin_lock(&ctrl->mbox_lock); + spin_lock(&ctrl->mcc_lock); tag = tag & 0x000000FF; ctrl->mcc_tag[ctrl->mcc_free_index] = tag; if (ctrl->mcc_free_index == (MAX_MCC_CMD - 1)) @@ -262,7 +264,7 @@ void free_mcc_tag(struct be_ctrl_info *ctrl, unsigned int tag) else ctrl->mcc_free_index++; ctrl->mcc_tag_available++; - spin_unlock(&ctrl->mbox_lock); + spin_unlock(&ctrl->mcc_lock); } bool is_link_state_evt(u32 trailer)