From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753196AbbDCP6h (ORCPT ); Fri, 3 Apr 2015 11:58:37 -0400 Received: from mx0a-00082601.pphosted.com ([67.231.145.42]:57719 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752347AbbDCP6a (ORCPT ); Fri, 3 Apr 2015 11:58:30 -0400 From: Jens Axboe To: , , CC: Subject: [PATCH RFC] mpt2/mpt3sas lock reduction for scsi-mq Date: Fri, 3 Apr 2015 09:58:16 -0600 Message-ID: <1428076703-31014-1-git-send-email-axboe@fb.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [192.168.52.13] X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.13.68,1.0.33,0.0.0000 definitions=2015-04-03_06:2015-04-03,2015-04-03,1970-01-01 signatures=0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, There's some "low" hanging fruit in the lsi mpt drivers for further lock reduction, when running in scsi-mq mode. For each IO, they have to lock/{get,put}/unlock a scsiio_tracker structure that is associated with the IO. In scsi-mq mode, we can ask for some payload for each command, so we don't have to store and manage this tracker structure separately. In some testing on mpt2sas, this roughly cuts the locking time in half at just 100K IOPS. Compared to scsi-mq not being enabled, the locking time with the patchset is reduced from ~47% to just ~4%. -- Jens Axboe