Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935173AbcCPPbO (ORCPT ); Wed, 16 Mar 2016 11:31:14 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:42124 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935092AbcCPPbN (ORCPT ); Wed, 16 Mar 2016 11:31:13 -0400 Subject: Re: [PATCH V2 3/3] scsi: mptxsas: offload IRQ execution To: Sinan Kaya , Hannes Reinecke , linux-scsi@vger.kernel.org, timur@codeaurora.org, jcm@redhat.com References: <1447034266-28003-1-git-send-email-okaya@codeaurora.org> <1447034266-28003-4-git-send-email-okaya@codeaurora.org> <5640481C.9000505@suse.de> <564187DA.6090508@codeaurora.org> Cc: agross@codeaurora.org, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Nagalakshmi Nandigama , Praveen Krishnamoorthy , Sreekanth Reddy , Abhijit Mahajan , "James E.J. Bottomley" , MPT-FusionLinux.pdl@avagotech.com, linux-kernel@vger.kernel.org From: Christopher Covington Message-ID: <56E97C3A.6030307@codeaurora.org> Date: Wed, 16 Mar 2016 11:31:06 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:43.0) Gecko/20100101 Thunderbird/43.0 MIME-Version: 1.0 In-Reply-To: <564187DA.6090508@codeaurora.org> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1318 Lines: 39 On 11/10/2015 12:59 AM, Sinan Kaya wrote: > > On 11/9/2015 2:15 AM, Hannes Reinecke wrote: >> On 11/09/2015 02:57 AM, Sinan Kaya wrote: >>> The mpt2sas and mpt3sas drivers are spinning forever in >>> their IRQ handlers if there are a lot of jobs queued up >>> by the PCIe card. This handler is causing spikes for >>> the rest of the system and sluggish behavior. >>> >>> Marking all MSI interrupts as non-shared and moving the >>> MSI interrupts to thread context. This relexes the rest >>> of the system execution. >>> >> NACK. >> >> If there is a scalability issue when handling interrupts >> it should be fixed in the driver directly. >> >> Looking at the driver is should be possible to implement >> a worker thread handling the reply descriptor, and having the >> interrupt only to fetch the reply descriptor. >> > > Can you go into the detail about which part of the _base_interrupt > function needs to be executed in ISR context and which part can be > queued up to worker thread? > > I'm not familiar with the hardware or the code. That's why, I moved the > entire ISR into the thread context. Hannes or others, any suggestions? Thanks, Christopher Covington -- Qualcomm Innovation Center, Inc. Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project