Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp2485899imm; Mon, 24 Sep 2018 05:18:41 -0700 (PDT) X-Google-Smtp-Source: ACcGV61YyEXccVU410OJQP7/38wDIH2ZviL/30761xpJpmxk6HXvLocx0azrm3SWEzsvNTlHaauI X-Received: by 2002:a17:902:261:: with SMTP id 88-v6mr10483890plc.331.1537791520951; Mon, 24 Sep 2018 05:18:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537791520; cv=none; d=google.com; s=arc-20160816; b=hQm/CyUgTqHQ1NMrDa8hzwVu4CMV9neOcogtbXstVjrWK2gKgOC7/hvrVSomG4eZTa 8Zolync5dDkqQurttBfGcSh2uoZnf8/ni/sz2NfxZjXozwmTSU+cVzMrgoHrF25NBNBx WoFv50Acbhr5i9lk89do6VBGAqd8Ebsfoe7tWGJs0GM6sEswTlfps1YdGbMB1lokEgiP IweWuWLyahg7sva0F+MOC0u9Qb9Dt8IW5/P67nf9pE8FM75dTNfXnb/p6UYrmluYRG6c /wVQOdrpUndazoa5A5A6qzkmPBPqveoaKg5HXy/VxSz+jjyd7F3w83Eo3KPfSxmNTu/i /FGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from; bh=I1vBCzyQe1EFcgzvpGTDuV93jfBQQSNeSELkqg+edUc=; b=y1pnllvwnzDeM2eBWj5Tds5fGcu3L9G7iQrmB+5wtg+r3foqUdTiT14Z/jAWxhGWio xvjukbeCjfnVSVAFvWuvbxrEhinU7+qFLyEL6QQJmkRrBf0QLeqtJ1JkeKpEbe3yBoe6 fbwqHoYddYe2nLDCjAujrJ5Gk1hmtB6VKSNCDceDLwICkUPnqSHp/mQBHKkrJcyya0b9 NNH/KUHhlgQyXYwVLyrIw0QjpRY+rvxZBuOK95kzDJYqKGwgNeDf26TtJm6f+z+p+emP HNQw5Xz7FXoFrXOEOqHV3RYOwSzs/990oBZCjGA7Pun/HLejJLL79HZeRQGWsPOhbVuF 2nYQ== 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 j65-v6si14381866pge.589.2018.09.24.05.18.25; Mon, 24 Sep 2018 05:18:40 -0700 (PDT) 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 S1732414AbeIXSTT (ORCPT + 99 others); Mon, 24 Sep 2018 14:19:19 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:55976 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730570AbeIXSTT (ORCPT ); Mon, 24 Sep 2018 14:19:19 -0400 Received: from localhost (ip-213-127-77-73.ip.prioritytelecom.net [213.127.77.73]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 15C1C107E; Mon, 24 Sep 2018 12:17:27 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Oliver Neukum Subject: [PATCH 4.14 089/173] usb: uas: add support for more quirk flags Date: Mon, 24 Sep 2018 13:52:03 +0200 Message-Id: <20180924113122.602674608@linuxfoundation.org> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20180924113114.334025954@linuxfoundation.org> References: <20180924113114.334025954@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Oliver Neukum commit 42d1c6d4a06a77b3ab206a919b9050c3080f3a71 upstream. The hope that UAS devices would be less broken than old style storage devices has turned out to be unfounded. Make UAS support more of the quirk flags of the old driver. Signed-off-by: Oliver Neukum Cc: stable Signed-off-by: Greg Kroah-Hartman --- drivers/usb/storage/uas.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) --- a/drivers/usb/storage/uas.c +++ b/drivers/usb/storage/uas.c @@ -842,6 +842,27 @@ static int uas_slave_configure(struct sc sdev->skip_ms_page_8 = 1; sdev->wce_default_on = 1; } + + /* + * Some disks return the total number of blocks in response + * to READ CAPACITY rather than the highest block number. + * If this device makes that mistake, tell the sd driver. + */ + if (devinfo->flags & US_FL_FIX_CAPACITY) + sdev->fix_capacity = 1; + + /* + * Some devices don't like MODE SENSE with page=0x3f, + * which is the command used for checking if a device + * is write-protected. Now that we tell the sd driver + * to do a 192-byte transfer with this command the + * majority of devices work fine, but a few still can't + * handle it. The sd driver will simply assume those + * devices are write-enabled. + */ + if (devinfo->flags & US_FL_NO_WP_DETECT) + sdev->skip_ms_page_3f = 1; + scsi_change_queue_depth(sdev, devinfo->qdepth - 2); return 0; }