From patchwork Tue Sep 15 20:17:17 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felipe Balbi X-Patchwork-Id: 53705 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-lb0-f199.google.com (mail-lb0-f199.google.com [209.85.217.199]) by patches.linaro.org (Postfix) with ESMTPS id 9E0C422DE5 for ; Tue, 15 Sep 2015 20:17:43 +0000 (UTC) Received: by lbbmp1 with SMTP id mp1sf61475308lbb.2 for ; Tue, 15 Sep 2015 13:17:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:date:from:to:cc:subject:message-id :reply-to:references:mime-version:content-type:content-disposition :in-reply-to:user-agent:sender:precedence:list-id:x-original-sender :x-original-authentication-results:mailing-list:list-post:list-help :list-archive:list-unsubscribe; bh=E5qdyKFa7HN90r/XIzv6n0mJy6WEhGN6jf+75PAFLyk=; b=ZMUI/jLXykkFzpDbJsFOckSHeTjyOpzL0+Ubl7T4XAmVbM1yqAd6z881scFF78g5VT JG1hCo0V36IMz8orA+E8uZB4/qHCNBcdE6XhBr8+ik5FY/Emim1Rjr9WLiOn1yhH0Dav 7iOISPc5BFEte5bKpQdGIT9kUS2UD/l1ARiX/5DmazVXlHKMkisnvyOzzgCroi7fQvs3 s4yEc90OSN2l2+7avej52mrUM3TfH8Z1A5yAY8kbUmbHY8mVfgyGSwrEZvd4+N3o3LTJ d4pUcyLnjqgT2ni1Ma9cb6LEZwnq9bPnnGZRZqJPZQQNx8JFQm4vVWpB5fm1Yl6CFwln j4og== X-Gm-Message-State: ALoCoQlPGn3CEOkkygwoj+Dpqs1+uFblbv+gi9Vf7gUaeNe6z2KJe5x51BBEWFw2XZF/jtkps57F X-Received: by 10.152.22.101 with SMTP id c5mr4147503laf.0.1442348262439; Tue, 15 Sep 2015 13:17:42 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.152.163.69 with SMTP id yg5ls835829lab.5.gmail; Tue, 15 Sep 2015 13:17:42 -0700 (PDT) X-Received: by 10.112.168.7 with SMTP id zs7mr24616224lbb.26.1442348262139; Tue, 15 Sep 2015 13:17:42 -0700 (PDT) Received: from mail-lb0-f172.google.com (mail-lb0-f172.google.com. [209.85.217.172]) by mx.google.com with ESMTPS id ax1si10757553lbc.156.2015.09.15.13.17.41 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 15 Sep 2015 13:17:41 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.217.172 as permitted sender) client-ip=209.85.217.172; Received: by lbpo4 with SMTP id o4so92309149lbp.2 for ; Tue, 15 Sep 2015 13:17:41 -0700 (PDT) X-Received: by 10.112.129.202 with SMTP id ny10mr24368316lbb.112.1442348261849; Tue, 15 Sep 2015 13:17:41 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.112.59.35 with SMTP id w3csp2019456lbq; Tue, 15 Sep 2015 13:17:40 -0700 (PDT) X-Received: by 10.50.45.33 with SMTP id j1mr9127809igm.61.1442348260234; Tue, 15 Sep 2015 13:17:40 -0700 (PDT) Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id rv5si2571343igb.78.2015.09.15.13.17.40; Tue, 15 Sep 2015 13:17:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-usb-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751532AbbIOURW (ORCPT + 4 others); Tue, 15 Sep 2015 16:17:22 -0400 Received: from bear.ext.ti.com ([192.94.94.41]:48976 "EHLO bear.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751404AbbIOURV (ORCPT ); Tue, 15 Sep 2015 16:17:21 -0400 Received: from dlelxv90.itg.ti.com ([172.17.2.17]) by bear.ext.ti.com (8.13.7/8.13.7) with ESMTP id t8FKHJdp016225; Tue, 15 Sep 2015 15:17:19 -0500 Received: from DFLE72.ent.ti.com (dfle72.ent.ti.com [128.247.5.109]) by dlelxv90.itg.ti.com (8.14.3/8.13.8) with ESMTP id t8FKHIEX008595; Tue, 15 Sep 2015 15:17:19 -0500 Received: from dlep32.itg.ti.com (157.170.170.100) by DFLE72.ent.ti.com (128.247.5.109) with Microsoft SMTP Server id 14.3.224.2; Tue, 15 Sep 2015 15:17:18 -0500 Received: from localhost (ileax41-snat.itg.ti.com [10.172.224.153]) by dlep32.itg.ti.com (8.14.3/8.13.8) with ESMTP id t8FKHHbp012354; Tue, 15 Sep 2015 15:17:17 -0500 Date: Tue, 15 Sep 2015 15:17:17 -0500 From: Felipe Balbi To: Alan Stern CC: Felipe Balbi , Linux USB Mailing List Subject: Re: [PATCH v2 5/5] usb: gadget: mass_storage: allow for deeper queue lengths Message-ID: <20150915201717.GV19948@saruman.tx.rr.com> Reply-To: References: <1442344568-1820-6-git-send-email-balbi@ti.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-usb-owner@vger.kernel.org Precedence: list List-ID: X-Mailing-List: linux-usb@vger.kernel.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: balbi@ti.com X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.217.172 as permitted sender) smtp.mailfrom=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , hi, On Tue, Sep 15, 2015 at 03:24:19PM -0400, Alan Stern wrote: > > @@ -2662,7 +2662,7 @@ EXPORT_SYMBOL_GPL(fsg_common_put); > > /* check if fsg_num_buffers is within a valid range */ > > static inline int fsg_num_buffers_validate(unsigned int fsg_num_buffers) > > { > > - if (fsg_num_buffers >= 2 && fsg_num_buffers <= 4) > > + if (fsg_num_buffers >= 2 && fsg_num_buffers <= 32) > > return 0; > > pr_err("fsg_num_buffers %u is out of range (%d to %d)\n", > > fsg_num_buffers, 2, 4); > > You should fix up this pr_err() statement accordingly. Maybe #define a > preprocessor symbol for the upper limit. 8<----------------------------------------------------------------------- >From b1ede0faf6e4961842f80e5e2fc1bf5373fef235 Mon Sep 17 00:00:00 2001 From: Felipe Balbi Date: Tue, 15 Sep 2015 09:39:45 -0500 Subject: [PATCHv3] usb: gadget: mass_storage: allow for deeper queue lengths Instead of allowing a range of 2 to 4 requests, let's allow the user choose up to 32 requests as that will give us a better chance of keeping controller busy. We still maintain default of 2 so users shouldn't be affected. Signed-off-by: Felipe Balbi --- changes since v2: - fix pr_err() - add max_num_buffers macro drivers/usb/gadget/Kconfig | 2 +- drivers/usb/gadget/function/f_mass_storage.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig index bcf83c0a6e62..33834aa09ed4 100644 --- a/drivers/usb/gadget/Kconfig +++ b/drivers/usb/gadget/Kconfig @@ -113,7 +113,7 @@ config USB_GADGET_VBUS_DRAW config USB_GADGET_STORAGE_NUM_BUFFERS int "Number of storage pipeline buffers" - range 2 4 + range 2 32 default 2 help Usually 2 buffers are enough to establish a good buffering diff --git a/drivers/usb/gadget/function/f_mass_storage.c b/drivers/usb/gadget/function/f_mass_storage.c index a6eb537d7768..ef3a1164b58c 100644 --- a/drivers/usb/gadget/function/f_mass_storage.c +++ b/drivers/usb/gadget/function/f_mass_storage.c @@ -2662,10 +2662,12 @@ EXPORT_SYMBOL_GPL(fsg_common_put); /* check if fsg_num_buffers is within a valid range */ static inline int fsg_num_buffers_validate(unsigned int fsg_num_buffers) { - if (fsg_num_buffers >= 2 && fsg_num_buffers <= 4) +#define FSG_MAX_NUM_BUFFERS 32 + + if (fsg_num_buffers >= 2 && fsg_num_buffers <= FGS_MAX_NUM_BUFFERS) return 0; pr_err("fsg_num_buffers %u is out of range (%d to %d)\n", - fsg_num_buffers, 2, 4); + fsg_num_buffers, 2, FSG_MAX_NUM_BUFFERS); return -EINVAL; }