Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp331109ybt; Tue, 23 Jun 2020 23:52:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwrvUN4dEg/72QJrUSvY9vadxCWNRF+yR7VcUs4yY2WtT41dp/XVWei3STHeAJT9vVEUkXi X-Received: by 2002:aa7:c14e:: with SMTP id r14mr19714796edp.0.1592981523819; Tue, 23 Jun 2020 23:52:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592981523; cv=none; d=google.com; s=arc-20160816; b=UwlBhTfSRK41LEECnjKCVUg4pMrMyuwYoxg/cH9lBMoZzpIwjGav/3MF1mWdqUP/v9 g0O2ABJ24SKG9nAPKMxIQTGMJ/2cjfFC3bR6Abmz+AjdAbJFqO1lsiQzxWpvrnpTomro gN44XDoVIZayIy5lzzeI/mAGFa9CI3PQNEeBYfjwzbrtDh86VXwRvJvdoaiwLfAjgRI2 uqWsfKGQ3uwWO2LOGQuEYWtR8Dx+Ax4ICVWLCCoodiXvrY1k+ih2+j74mh9ew20qCJ7t +3PJ8y6stLqA38G4U/FzXrv0jeKRSPRtpdG8LVq/3DE6Ak3zComG7UcNtWDGwmMWcrI7 vRug== 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:date:references :in-reply-to:subject:cc:to:from:dkim-signature; bh=61dSScxI6iuAF78RADy83+D5pnqYcgk6lokCgPGWmSg=; b=MNA7EAUix5c7cMI84Kmwb7s7w6v/n5rVzIaaLsgy2k0szg44vZPP8ewFRfPrgMDUSp LwO8KVJ0nBsSvb4LoSIlDcpIh7EkuwM4ratBuNxfc6VlUVK7kvwQs1sX/z5ZgJK0qC4m B3iG5QYwIabGcDy9hlggB9PZ9LJ8V81rNWX6Sob5e6xs0Sndomz9xrBsYrBUDiYKfB/T 1IOJKDCmtsuaIoLf2y0HBjXPxZwvgRlvA0N6F0rxia+VbK/iWndjMn1SWrPQGLmJWvJI 1xKqDXNcOhkXP8+Cfca1Rs6hlgM2TyJf9jL7t3y9hOAGP9LIOxlwE8u6ixMTvlXQeZV0 TTiQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=C56J+Wdb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w13si7062211eju.736.2020.06.23.23.51.40; Tue, 23 Jun 2020 23:52:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=C56J+Wdb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389465AbgFXGuf (ORCPT + 99 others); Wed, 24 Jun 2020 02:50:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36330 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389354AbgFXGuf (ORCPT ); Wed, 24 Jun 2020 02:50:35 -0400 Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CC1C4C061573; Tue, 23 Jun 2020 23:50:34 -0700 (PDT) Received: by mail-lf1-x143.google.com with SMTP id d7so680323lfi.12; Tue, 23 Jun 2020 23:50:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:in-reply-to:references:date:message-id :mime-version; bh=61dSScxI6iuAF78RADy83+D5pnqYcgk6lokCgPGWmSg=; b=C56J+Wdbca7X/pJ4WBs137eTEr59uhNcjRq8+5vk8TMUPcC5qLXbcCR6NkuFnvE8X5 1RMauvmOt8FSdkXLLKhyrenX0v0r//m5Dz68C4LtyyELQaQ2A2ZQK5clX/SCJQDOREv6 5PfO0JpQv6KhB+zpCwvUv2r5QL+hxTfEkeLjKZqw3ajHYeAvRSkKy4ktqs8P5suIq2MH ShtxMINMVRM8eIQk1knHThWjjAfvPL79AXy/kPd/vS0FtDMcqOfxgiIVnfZLu9eaI/5F u3g8kDPystYJJULoLjTzdFDzaAI3XDWR+mGdaiCntcT7Ig/X+noIucdKCOjbM1dVgfZh 6TbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:in-reply-to:references :date:message-id:mime-version; bh=61dSScxI6iuAF78RADy83+D5pnqYcgk6lokCgPGWmSg=; b=Yd6+lybZX2S0vtsSp3ayRqK24wqLVEP+uH546Yn3P84rvLvIOJ/mGpVyUmul5nojBM o0QtYp1cK1kiVq8l77pnB1IRnYURMrfo8vP1JqGasYFDEXeemSVAAu2yEIp91qC84MZx us4ms+vhzgD9JIFSS5w8NhU1Woirfa3WHdXkVEg66xpDw6cbjSwBpDZLHP7TLGKbE6/D UOXK4yAmVEF9/fpHJOKyBi0ZgOtSlVFrbjPhVIRxOMvtAVho1MjyLhcx09Yme2mFvuNU 5X971O3BlFtZaZdrx8q2TTDvx6Od6gx0rDtxGqpB8MzaUHbCskpq8h8NlGHt5jnfHRcu dhJw== X-Gm-Message-State: AOAM531b62xrsBDqoRPiKM+tdWuxx4KwSS2r0HHIdbHdUaqj9CoHCtKp o7QEtAKeUYiJtSMHqnNKfTei0g4HetA= X-Received: by 2002:a19:8c09:: with SMTP id o9mr6488675lfd.160.1592981433241; Tue, 23 Jun 2020 23:50:33 -0700 (PDT) Received: from saruman (91-155-214-58.elisa-laajakaista.fi. [91.155.214.58]) by smtp.gmail.com with ESMTPSA id i15sm4811522lfl.57.2020.06.23.23.50.31 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 23 Jun 2020 23:50:32 -0700 (PDT) From: Felipe Balbi To: Macpaul Lin , Alan Stern , Chunfeng Yun , Greg Kroah-Hartman , Matthias Brugger , =?utf-8?Q?Micha=C5=82_Miros=C5=82aw?= , Sergey Organov , Fabrice Gasnier , linux-usb@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Mediatek WSD Upstream , Macpaul Lin , Macpaul Lin Subject: Re: [PATCH v3] usb: gadget: u_serial: improve performance for large data In-Reply-To: <1592372577-7986-1-git-send-email-macpaul.lin@mediatek.com> References: <1592362007-7120-1-git-send-email-macpaul.lin@mediatek.com> <1592372577-7986-1-git-send-email-macpaul.lin@mediatek.com> Date: Wed, 24 Jun 2020 09:50:27 +0300 Message-ID: <87r1u5vtxo.fsf@kernel.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi, Macpaul Lin writes: > Nowadays some embedded systems use VCOM to transfer large log and data. > Take LTE MODEM as an example, during the long debugging stage, large > log and data were transfer through VCOM when doing field try or in > operator's lab. Here we suggest slightly increase the transfer buffer > in u_serial.c for performance improving. > > Signed-off-by: Macpaul Lin > --- > Changes for v2: > - Drop previous patch for adding flag which indicates hardware capabili= ty in > gadget.h and in DMA engine according to Alan's suggestion. Thanks. > - Replace requested buffer size "REQ_BUF_SIZE" instead of checking hard= ware > capability. > - Refine commit messages. > Changes for v3: > - Code: no change. > Commit: Add missing change log in v2. > > drivers/usb/gadget/function/u_serial.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/usb/gadget/function/u_serial.c b/drivers/usb/gadget/= function/u_serial.c > index 3cfc6e2..d7912a9 100644 > --- a/drivers/usb/gadget/function/u_serial.c > +++ b/drivers/usb/gadget/function/u_serial.c > @@ -80,6 +80,7 @@ > #define QUEUE_SIZE 16 > #define WRITE_BUF_SIZE 8192 /* TX only */ > #define GS_CONSOLE_BUF_SIZE 8192 > +#define REQ_BUF_SIZE 4096 >=20=20 > /* console info */ > struct gs_console { > @@ -247,7 +248,7 @@ static int gs_start_tx(struct gs_port *port) > break; >=20=20 > req =3D list_entry(pool->next, struct usb_request, list); > - len =3D gs_send_packet(port, req->buf, in->maxpacket); > + len =3D gs_send_packet(port, req->buf, REQ_BUF_SIZE); > if (len =3D=3D 0) { > wake_up_interruptible(&port->drain_wait); > break; > @@ -514,7 +515,7 @@ static int gs_alloc_requests(struct usb_ep *ep, struc= t list_head *head, > * be as speedy as we might otherwise be. > */ > for (i =3D 0; i < n; i++) { > - req =3D gs_alloc_req(ep, ep->maxpacket, GFP_ATOMIC); > + req =3D gs_alloc_req(ep, REQ_BUF_SIZE, GFP_ATOMIC); since this can only be applied for the next merge window, it would be much better if you work rework how requests are used here and, as I mentioned in the other subthread, preallocate a list of requests that get recycled. This would allow us to allocate memory without GFP_ATOMIC. =2D-=20 balbi --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEElLzh7wn96CXwjh2IzL64meEamQYFAl7y97MACgkQzL64meEa mQbjAhAA0OOV27Nwx1Zd9bERbMUOxh2QI77f+9QskVbd7ub1hn/forW3/lSaOe66 jDYjYKWyi2HFYijFbyYrEJXv2aCWSn4M9YM9DdDicvc9Ny1pTT20YhATcVhr4jOI 9c3BUXc+TCcoSK/yTbs1Zt25PcktO/M07FpN4+nE1zr128yzpQmd8R5FMO68w7d/ sckWvXnCoYA2b1udE/dw9+12DE4ae3k/yW+KPrqIKX9FfhACfiDTPhsN6HHj2RnH U5PvfahfRDPtAdUhDlB1FOyV6lDBH9I8v+2W3735aR37iylqZFVhkUoNuUoXhFcq 9HfwA04pGcb5hQTxNQmP55QclnKyKT1YgxDzF6d/7MAhEkBaghzsFN8QJDvQXKAp 3xiKH9PCD6VGOdqV7K5ID/t28hu68xaO1r+ulk53/unhCeY+6aBS7eod6PuXb0Ta NRPJ31rvjRaDUFudPl0C6rsxvkAYwh61lGjVaYboKhjcWBLJfTxnpmx1f89OYsYB +sIxhPgo89Q8MavGJ/F46hHm+d5/s8mGYR/kg4S04hyfO37mn9qWfUNNJf6bN5NG RSInU5zelNjcv5ox2RpRgY0uSw+/S6YrHF7qivP3ozrlD/AUOQtxeXWV/BGs+8p4 PFWaCC0YtGYxCBY0oIzbRkRN9tU04zMZWB75NBF0gMhzBm84BBk= =zs8r -----END PGP SIGNATURE----- --=-=-=--