From nobody Mon May 11 02:55:53 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id ECB82C433EF for ; Sun, 17 Apr 2022 16:37:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234414AbiDQQjz (ORCPT ); Sun, 17 Apr 2022 12:39:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55286 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233208AbiDQQjv (ORCPT ); Sun, 17 Apr 2022 12:39:51 -0400 Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [IPv6:2a00:1450:4864:20::131]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 62A2D3668A for ; Sun, 17 Apr 2022 09:37:15 -0700 (PDT) Received: by mail-lf1-x131.google.com with SMTP id p10so21067212lfa.12 for ; Sun, 17 Apr 2022 09:37:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=nlNjJfVDWOsy0TP9UEQoWOwdHbve0Jr5Wwvo5wkDRX8=; b=mbQt9dPkb+Euu4Tz7uUwlrdfIIjkZ0X1pTYkSuWlyDAbIwoj3iBfUAK6pfGUpf/ny6 X2c8UHHE+G4dwVOR6FFj1z1qndOER22p1QAbVwjJJ9Z9/CkffyOnMahH0K1SIyjfmsnV LLkyFFwAO/Hl2mR9IdIlwEBFXWc+GZe+uMXGdjjotjJUTKYehcSJdAYElUXK395sQhXO +LfdVLfk30NNLLULlYUcdug3VRwwAvMhD4bREHL+p0uN1OOurSNja19GA3gQQATevema 59XU5v3zdP12DPUQgCWmnZ/aV76m7ldfJSanY+RdSKcwGJD7wbcmQtlAvXgeSBQ0+KXI Dizg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=nlNjJfVDWOsy0TP9UEQoWOwdHbve0Jr5Wwvo5wkDRX8=; b=6eCqROsOGiuA8Uwb6wO2CyQv+RYpajL9OrLtmtiHiPfupBxzw3p9tmXTuoGEVdnAFf WCbSKvaXl8mYVcHk8SiJEbPXPXrMTBRWFYGOWtT3/SQXExQMKMvjFdmLxBU/nSKwzyTO crmtFh3lcovn4qNvyKAvXAExQ3L0ufyzIv2wAy93EPm0mtg8WApzs46GrAIDWMNre61a FKmFRlV50yz/icKgLy2QTR4wjiHT2thNxBFS6x7gQxrD6PZ4bKFK4sGife6UWA8VjZDL eiiHdXlVMs+dl6UNghcla5qPgnKeJSdxfuLikPcdZlD30iQkrhAOMJjIcAzdBvEMxiYJ Kazw== X-Gm-Message-State: AOAM533w/HcJ1NK2MW0UOSiUdbC54EkuLC+fUJd3lx3RqA33VtgBumIR +E8ETyBa/WXXKD/3EcoHmtQ= X-Google-Smtp-Source: ABdhPJwsJSpHa4WQtA8BOw9LsclrZXACQKL0w+C5347rniHR98jWepUqrp3Bw6RLFZLHjkd0t7M8Hw== X-Received: by 2002:a05:6512:3995:b0:44a:e5c8:e696 with SMTP id j21-20020a056512399500b0044ae5c8e696mr5344661lfu.539.1650213433512; Sun, 17 Apr 2022 09:37:13 -0700 (PDT) Received: from alpha ([31.134.188.37]) by smtp.gmail.com with ESMTPSA id n10-20020a196f4a000000b0046c24985b33sm976997lfk.208.2022.04.17.09.37.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Apr 2022 09:37:12 -0700 (PDT) Received: (nullmailer pid 42936 invoked by uid 1000); Sun, 17 Apr 2022 16:37:12 -0000 From: Ivan Safonov To: Larry Finger , Phillip Potter , Greg Kroah-Hartman Cc: Michael Straube , "Fabio M. De Francesco" , Martin Kaiser , Pavel Skripkin , Cai Huoqing , linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Ivan Safonov Subject: [PATCH] r8188eu: remove unused urbs from struct xmit_buf Date: Sun, 17 Apr 2022 19:36:08 +0300 Message-Id: <20220417163608.42917-1-insafonov@gmail.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Driver allocates eighth urbs per xmit_buf, but uses only first urb. Allocation of seven remaining urbs wastes memory for nothing. Signed-off-by: Ivan Safonov Reviewed-by: Pavel Skripkin --- drivers/staging/r8188eu/include/rtw_xmit.h | 2 +- drivers/staging/r8188eu/os_dep/usb_ops_linux.c | 16 ++++++---------- drivers/staging/r8188eu/os_dep/xmit_linux.c | 16 +++++----------- 3 files changed, 12 insertions(+), 22 deletions(-) diff --git a/drivers/staging/r8188eu/include/rtw_xmit.h b/drivers/staging/r= 8188eu/include/rtw_xmit.h index b2df1480d66b..54c2bdf68acc 100644 --- a/drivers/staging/r8188eu/include/rtw_xmit.h +++ b/drivers/staging/r8188eu/include/rtw_xmit.h @@ -198,7 +198,7 @@ struct xmit_buf { u32 len; struct submit_ctx *sctx; u32 ff_hwaddr; - struct urb *pxmit_urb[8]; + struct urb *pxmit_urb; dma_addr_t dma_transfer_addr; /* (in) dma addr for transfer_buffer */ u8 bpending[8]; int last[8]; diff --git a/drivers/staging/r8188eu/os_dep/usb_ops_linux.c b/drivers/stagi= ng/r8188eu/os_dep/usb_ops_linux.c index 8ca16861bfcc..0269e602b217 100644 --- a/drivers/staging/r8188eu/os_dep/usb_ops_linux.c +++ b/drivers/staging/r8188eu/os_dep/usb_ops_linux.c @@ -140,7 +140,7 @@ u32 rtw_write_port(struct adapter *padapter, u32 addr, = u32 cnt, u8 *wmem) =20 spin_unlock_irqrestore(&pxmitpriv->lock, irqL); =20 - purb =3D pxmitbuf->pxmit_urb[0]; + purb =3D pxmitbuf->pxmit_urb; =20 /* translate DMA FIFO addr to pipehandle */ pipe =3D ffaddr2pipehdl(pdvobj, addr); @@ -178,25 +178,21 @@ u32 rtw_write_port(struct adapter *padapter, u32 addr= , u32 cnt, u8 *wmem) =20 void rtw_write_port_cancel(struct adapter *padapter) { - int i, j; + int i; struct xmit_buf *pxmitbuf =3D (struct xmit_buf *)padapter->xmitpriv.pxmit= buf; =20 padapter->bWritePortCancel =3D true; =20 for (i =3D 0; i < NR_XMITBUFF; i++) { - for (j =3D 0; j < 8; j++) { - if (pxmitbuf->pxmit_urb[j]) - usb_kill_urb(pxmitbuf->pxmit_urb[j]); - } + if (pxmitbuf->pxmit_urb) + usb_kill_urb(pxmitbuf->pxmit_urb); pxmitbuf++; } =20 pxmitbuf =3D (struct xmit_buf *)padapter->xmitpriv.pxmit_extbuf; for (i =3D 0; i < NR_XMIT_EXTBUFF; i++) { - for (j =3D 0; j < 8; j++) { - if (pxmitbuf->pxmit_urb[j]) - usb_kill_urb(pxmitbuf->pxmit_urb[j]); - } + if (pxmitbuf->pxmit_urb) + usb_kill_urb(pxmitbuf->pxmit_urb); pxmitbuf++; } } diff --git a/drivers/staging/r8188eu/os_dep/xmit_linux.c b/drivers/staging/= r8188eu/os_dep/xmit_linux.c index a6012cffd37e..e430c64e9068 100644 --- a/drivers/staging/r8188eu/os_dep/xmit_linux.c +++ b/drivers/staging/r8188eu/os_dep/xmit_linux.c @@ -67,8 +67,6 @@ bool rtw_endofpktfile(struct pkt_file *pfile) =20 int rtw_os_xmit_resource_alloc(struct adapter *padapter, struct xmit_buf *= pxmitbuf, u32 alloc_sz) { - int i; - pxmitbuf->pallocated_buf =3D kzalloc(alloc_sz, GFP_KERNEL); if (!pxmitbuf->pallocated_buf) return _FAIL; @@ -76,21 +74,17 @@ int rtw_os_xmit_resource_alloc(struct adapter *padapter= , struct xmit_buf *pxmitb pxmitbuf->pbuf =3D (u8 *)N_BYTE_ALIGMENT((size_t)(pxmitbuf->pallocated_bu= f), XMITBUF_ALIGN_SZ); pxmitbuf->dma_transfer_addr =3D 0; =20 - for (i =3D 0; i < 8; i++) { - pxmitbuf->pxmit_urb[i] =3D usb_alloc_urb(0, GFP_KERNEL); - if (!pxmitbuf->pxmit_urb[i]) - return _FAIL; - } + pxmitbuf->pxmit_urb =3D usb_alloc_urb(0, GFP_KERNEL); + if (!pxmitbuf->pxmit_urb) + return _FAIL; + return _SUCCESS; } =20 void rtw_os_xmit_resource_free(struct adapter *padapter, struct xmit_buf *pxmitbuf, u32 free_sz) { - int i; - - for (i =3D 0; i < 8; i++) - usb_free_urb(pxmitbuf->pxmit_urb[i]); + usb_free_urb(pxmitbuf->pxmit_urb); =20 kfree(pxmitbuf->pallocated_buf); } --=20 2.35.1