Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp8399360imu; Fri, 28 Dec 2018 17:33:16 -0800 (PST) X-Google-Smtp-Source: ALg8bN4c/NpXdyJU+YgtioTCJyEmOMwtp3O/Y/3Poyfxlz+s/PoOIWhm3ktSeN0C105McQKBZ//g X-Received: by 2002:a62:c711:: with SMTP id w17mr30471122pfg.50.1546047195968; Fri, 28 Dec 2018 17:33:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1546047195; cv=none; d=google.com; s=arc-20160816; b=BzM3EtzWgigR3Jmmm5/JoL7i23xy36qNL5GVKxiFSbeDY5zMSlQeHT9eISA7L3mlTS 61CM3rLUlWIXCaSd6wIObAjvOl/ktP0soRYd3mq7jtx6zbFjV3nwSEW3jTiSktil0P6M C2gZzQJXlKQj0JUD0Sy7ZTeDbC7EgBxAjzm7MpONf9Hvs+8+g2M2UYRdCNaTXcdg0vXx RC3yXL73AJcqDSIYz/fZonLchsBcnKon4J0XeLjuywlhsbwuGOfE9TLZS7sfIwv6NJzQ 0A8osHyOEMwqU5u8D4X6zYpF4yc0+1u9JZpo2mufv2AODk6V75ir3trJhZY7oUwLuch7 2HhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:in-reply-to :subject:cc:to:from:date; bh=kRFtuFrjcADh1sSjBmNhivjAV1jq6BMSKUXI6WrMvKc=; b=tsvksLuyQQNByJbTfGGJS25hRv8URwdlN4ArYV39aIPGPkCqYXXNVEZFxzUor+F4P2 P0jcIlH5Ht6ev9n98jPQg30XItqvBjN7hAI3E7j9JD5ZJKZGYPcjq+YYa5sDr57+qOG7 A85iLzEK/StWXOsHl7PzNln9hhMjOvb5PAV2fOrYmIt4PUu2u96QmCDEc1VlQfO0n0rU YdFsrm0h700FPUxo4cv2FMA9viBcMlOMF3hsaf4oAC4aJY+n1Ul+9Bz9mPT2h0WO/0NO vxCIl9tq0bizWqVrto4FlUznksWXwCysdI5qpN7SFsro28b25dIpvrrzh1bTPnBejG6Q Ndjg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c10si38517870pla.173.2018.12.28.17.33.01; Fri, 28 Dec 2018 17:33:15 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731636AbeL1QAi (ORCPT + 99 others); Fri, 28 Dec 2018 11:00:38 -0500 Received: from netrider.rowland.org ([192.131.102.5]:52645 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1726462AbeL1QAi (ORCPT ); Fri, 28 Dec 2018 11:00:38 -0500 Received: (qmail 8157 invoked by uid 500); 28 Dec 2018 11:00:37 -0500 Received: from localhost (sendmail-bs@127.0.0.1) by localhost with SMTP; 28 Dec 2018 11:00:37 -0500 Date: Fri, 28 Dec 2018 11:00:36 -0500 (EST) From: Alan Stern X-X-Sender: stern@netrider.rowland.org To: Icenowy Zheng cc: Greg Kroah-Hartman , , , Subject: Re: [PATCH 1/2] USB: storage: don't insert sane sense for SPC3+ when bad sense specified In-Reply-To: <20181227143437.17151-2-icenowy@aosc.io> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 27 Dec 2018, Icenowy Zheng wrote: > Currently the code will set US_FL_SANE_SENSE flag unconditionally if > device claims SPC3+, however we should allow US_FL_BAD_SENSE flag to > prevent this behavior, because SMI SM3350 UFS-USB bridge controller, > which claims SPC4, will show strange behavior with 96-byte sense > (put the chip into a wrong state that cannot read/write anything). > > Check the presence of US_FL_BAD_SENSE when assuming US_FL_SANE_SENSE on > SPC4+ devices. > > Signed-off-by: Icenowy Zheng > --- > drivers/usb/storage/scsiglue.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/usb/storage/scsiglue.c b/drivers/usb/storage/scsiglue.c > index fde2e71a6ade..699fe9557127 100644 > --- a/drivers/usb/storage/scsiglue.c > +++ b/drivers/usb/storage/scsiglue.c > @@ -236,7 +236,8 @@ static int slave_configure(struct scsi_device *sdev) > sdev->try_rc_10_first = 1; > > /* assume SPC3 or latter devices support sense size > 18 */ > - if (sdev->scsi_level > SCSI_SPC_2) > + if (sdev->scsi_level > SCSI_SPC_2 && > + !(us->fflags & US_FL_BAD_SENSE)) > us->fflags |= US_FL_SANE_SENSE; Please update the comment so that it matches the new code. Alan Stern