From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756019AbaIOTkQ (ORCPT ); Mon, 15 Sep 2014 15:40:16 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48905 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754383AbaIOTkJ (ORCPT ); Mon, 15 Sep 2014 15:40:09 -0400 From: Jeff Moyer To: Christoph Hellwig Cc: Hans de Goede , linux-usb , SCSI development list , Linux Kernel Mailing List Subject: Re: [PATCH] scsi: fix regression that accidentally disabled block-based tcq References: <540EC52C.3000804@redhat.com> <20140909152730.GA17882@infradead.org> <540FFBF4.9090001@redhat.com> <20140910154535.GA5102@infradead.org> <541172E9.8070309@redhat.com> <20140911161331.GA24488@infradead.org> <54134E50.6040805@redhat.com> <20140912230032.GA21143@infradead.org> X-PGP-KeyID: 1F78E1B4 X-PGP-CertKey: F6FE 280D 8293 F72C 65FD 5A58 1FF8 A7CA 1F78 E1B4 X-PCLoadLetter: What the f**k does that mean? Date: Mon, 15 Sep 2014 15:39:44 -0400 In-Reply-To: <20140912230032.GA21143@infradead.org> (Christoph Hellwig's message of "Fri, 12 Sep 2014 16:00:32 -0700") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Christoph Hellwig writes: > Please try the fix below, looks like the commit broke TCQ for all drivers > using block-level tagging. > > --- > From 865a19b760d2786fe37d3b5c151a4ecea4c0e95e Mon Sep 17 00:00:00 2001 > From: Christoph Hellwig > Date: Fri, 12 Sep 2014 16:00:19 -0700 > Subject: scsi: fix regression that accidentally disabled block-based tcq > > The scsi blk-mq support accidentally flipped a conditional, which lead to > never enabling block based tcq when using the legacy request path. > > Fixes: d285203cf647d7c9 scsi: add support for a blk-mq based I/O path. > Reported-by: Hans de Goede > Signed-off-by: Christoph Hellwig > --- > include/scsi/scsi_tcq.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/scsi/scsi_tcq.h b/include/scsi/scsi_tcq.h > index cdcc90b..e645835 100644 > --- a/include/scsi/scsi_tcq.h > +++ b/include/scsi/scsi_tcq.h > @@ -68,7 +68,7 @@ static inline void scsi_activate_tcq(struct scsi_device *sdev, int depth) > return; > > if (!shost_use_blk_mq(sdev->host) && > - blk_queue_tagged(sdev->request_queue)) > + !blk_queue_tagged(sdev->request_queue)) > blk_queue_init_tags(sdev->request_queue, depth, > sdev->host->bqt); Introduced by d285203: - if (!blk_queue_tagged(sdev->request_queue)) + if (!shost_use_blk_mq(sdev->host) && + blk_queue_tagged(sdev->request_queue)) Seems like an obvious fix. Reviewed-by: Jeff Moyer