LinuxPPC-Dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/44] usb: don't print on ENOMEM
@ 2016-08-25 17:38 Wolfram Sang
  2016-08-25 17:39 ` [PATCH 11/44] usb: gadget: udc: fsl_qe_udc: " Wolfram Sang
  2016-08-26  6:27 ` [PATCH 00/44] usb: " Lothar Waßmann
  0 siblings, 2 replies; 3+ messages in thread
From: Wolfram Sang @ 2016-08-25 17:38 UTC (permalink / raw)
  To: linux-usb
  Cc: Wolfram Sang, accessrunner-general, legousb-devel,
	linux-arm-kernel, linuxppc-dev, linux-tegra, usb-storage

Here is my next series to save memory by removing unneeded strings. It removes
in the usb subsystem all unspecific error messages after calling malloc-based
functions, i.e. (devm_)k[zcm]alloc. kmalloc prints enough information in that
case. If the message was specific (e.g. "can't save CLEAR_TT_BUFFER state"), I
left it. This series saves ~4.5KB of "out of memory" permutations in .text and
.rodata. For modified lines, (x == NULL) was replaced with (!NULL) as well.
This seems to be the dominant style in this subsystem and checkpatch recommends
it as well (and I prefer it, too).

Wolfram Sang (44):
  usb: atm: cxacru: don't print on ENOMEM
  usb: atm: speedtch: don't print on ENOMEM
  usb: atm: ueagle-atm: don't print on ENOMEM
  usb: atm: usbatm: don't print on ENOMEM
  usb: class: usbtmc: don't print on ENOMEM
  usb: core: hcd: don't print on ENOMEM
  usb: core: hub: don't print on ENOMEM
  usb: core: message: don't print on ENOMEM
  usb: core: urb: don't print on ENOMEM
  usb: dwc2: gadget: don't print on ENOMEM
  usb: gadget: udc: fsl_qe_udc: don't print on ENOMEM
  usb: gadget: udc: goku_udc: don't print on ENOMEM
  usb: gadget: udc: udc-xilinx: don't print on ENOMEM
  usb: host: fhci-hcd: don't print on ENOMEM
  usb: host: max3421-hcd: don't print on ENOMEM
  usb: host: uhci-hcd: don't print on ENOMEM
  usb: host: xhci-tegra: don't print on ENOMEM
  usb: host: xhci: don't print on ENOMEM
  usb: misc: adutux: don't print on ENOMEM
  usb: misc: appledisplay: don't print on ENOMEM
  usb: misc: cypress_cy7c63: don't print on ENOMEM
  usb: misc: cytherm: don't print on ENOMEM
  usb: misc: ftdi-elan: don't print on ENOMEM
  usb: misc: idmouse: don't print on ENOMEM
  usb: misc: iowarrior: don't print on ENOMEM
  usb: misc: ldusb: don't print on ENOMEM
  usb: misc: legousbtower: don't print on ENOMEM
  usb: misc: lvstest: don't print on ENOMEM
  usb: misc: trancevibrator: don't print on ENOMEM
  usb: misc: usblcd: don't print on ENOMEM
  usb: misc: usbsevseg: don't print on ENOMEM
  usb: misc: uss720: don't print on ENOMEM
  usb: misc: yurex: don't print on ENOMEM
  usb: musb: am35x: don't print on ENOMEM
  usb: musb: da8xx: don't print on ENOMEM
  usb: renesas_usbhs: mod_gadget: don't print on ENOMEM
  usb: renesas_usbhs: mod_host: don't print on ENOMEM
  usb: renesas_usbhs: pipe: don't print on ENOMEM
  usb: storage: alauda: don't print on ENOMEM
  usb: storage: sddr09: don't print on ENOMEM
  usb: usb-skeleton: don't print on ENOMEM
  usb: wusbcore: crypto: don't print on ENOMEM
  usb: wusbcore: security: don't print on ENOMEM
  usb: wusbcore: wa-nep: don't print on ENOMEM

 drivers/usb/atm/cxacru.c               |  4 +---
 drivers/usb/atm/speedtch.c             |  1 -
 drivers/usb/atm/ueagle-atm.c           |  9 ++-------
 drivers/usb/atm/usbatm.c               |  7 +------
 drivers/usb/class/usbtmc.c             |  4 +---
 drivers/usb/core/hcd.c                 |  4 +---
 drivers/usb/core/hub.c                 |  9 +++------
 drivers/usb/core/message.c             |  5 +----
 drivers/usb/core/urb.c                 |  4 +---
 drivers/usb/dwc2/gadget.c              |  8 ++------
 drivers/usb/gadget/udc/fsl_qe_udc.c    | 16 ++++------------
 drivers/usb/gadget/udc/goku_udc.c      |  3 +--
 drivers/usb/gadget/udc/udc-xilinx.c    |  4 +---
 drivers/usb/host/fhci-hcd.c            |  4 +---
 drivers/usb/host/max3421-hcd.c         |  8 ++------
 drivers/usb/host/uhci-hcd.c            |  5 +----
 drivers/usb/host/xhci-tegra.c          |  1 -
 drivers/usb/host/xhci.c                |  4 +---
 drivers/usb/misc/adutux.c              | 13 +++----------
 drivers/usb/misc/appledisplay.c        |  3 ---
 drivers/usb/misc/cypress_cy7c63.c      |  5 +----
 drivers/usb/misc/cytherm.c             | 32 ++++++++------------------------
 drivers/usb/misc/ftdi-elan.c           |  1 -
 drivers/usb/misc/idmouse.c             |  1 -
 drivers/usb/misc/iowarrior.c           | 20 ++++++--------------
 drivers/usb/misc/ldusb.c               | 20 +++++---------------
 drivers/usb/misc/legousbtower.c        | 16 ++++------------
 drivers/usb/misc/lvstest.c             |  4 +---
 drivers/usb/misc/trancevibrator.c      |  3 +--
 drivers/usb/misc/usblcd.c              |  9 ++-------
 drivers/usb/misc/usbsevseg.c           |  8 ++------
 drivers/usb/misc/uss720.c              |  4 +---
 drivers/usb/misc/yurex.c               |  8 ++------
 drivers/usb/musb/am35x.c               |  4 +---
 drivers/usb/musb/da8xx.c               |  4 +---
 drivers/usb/renesas_usbhs/mod_gadget.c |  6 +-----
 drivers/usb/renesas_usbhs/mod_host.c   | 10 ++--------
 drivers/usb/renesas_usbhs/pipe.c       |  4 +---
 drivers/usb/storage/alauda.c           | 11 +++--------
 drivers/usb/storage/sddr09.c           | 14 ++++----------
 drivers/usb/usb-skeleton.c             |  9 ++-------
 drivers/usb/wusbcore/crypto.c          |  4 +---
 drivers/usb/wusbcore/security.c        |  4 +---
 drivers/usb/wusbcore/wa-nep.c          |  5 +----
 44 files changed, 78 insertions(+), 244 deletions(-)

-- 
2.9.3

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 11/44] usb: gadget: udc: fsl_qe_udc: don't print on ENOMEM
  2016-08-25 17:38 [PATCH 00/44] usb: don't print on ENOMEM Wolfram Sang
@ 2016-08-25 17:39 ` Wolfram Sang
  2016-08-26  6:27 ` [PATCH 00/44] usb: " Lothar Waßmann
  1 sibling, 0 replies; 3+ messages in thread
From: Wolfram Sang @ 2016-08-25 17:39 UTC (permalink / raw)
  To: linux-usb
  Cc: Wolfram Sang, Li Yang, Felipe Balbi, Greg Kroah-Hartman,
	linuxppc-dev

All kmalloc-based functions print enough information on failures.

Signed-off-by: Wolfram Sang <wsa-dev@sang-engineering.com>
---
 drivers/usb/gadget/udc/fsl_qe_udc.c | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/drivers/usb/gadget/udc/fsl_qe_udc.c b/drivers/usb/gadget/udc/fsl_qe_udc.c
index cf8819a5c5b263..9d6b2c8eed4294 100644
--- a/drivers/usb/gadget/udc/fsl_qe_udc.c
+++ b/drivers/usb/gadget/udc/fsl_qe_udc.c
@@ -421,10 +421,8 @@ static int qe_ep_rxbd_update(struct qe_ep *ep)
 	bd = ep->rxbase;
 
 	ep->rxframe = kmalloc(sizeof(*ep->rxframe), GFP_ATOMIC);
-	if (ep->rxframe == NULL) {
-		dev_err(ep->udc->dev, "malloc rxframe failed\n");
+	if (!ep->rxframe)
 		return -ENOMEM;
-	}
 
 	qe_frame_init(ep->rxframe);
 
@@ -435,9 +433,7 @@ static int qe_ep_rxbd_update(struct qe_ep *ep)
 
 	size = (ep->ep.maxpacket + USB_CRC_SIZE + 2) * (bdring_len + 1);
 	ep->rxbuffer = kzalloc(size, GFP_ATOMIC);
-	if (ep->rxbuffer == NULL) {
-		dev_err(ep->udc->dev, "malloc rxbuffer failed,size=%d\n",
-				size);
+	if (!ep->rxbuffer) {
 		kfree(ep->rxframe);
 		return -ENOMEM;
 	}
@@ -668,10 +664,8 @@ static int qe_ep_init(struct qe_udc *udc,
 
 	if ((ep->tm == USBP_TM_CTL) || (ep->dir == USB_DIR_IN)) {
 		ep->txframe = kmalloc(sizeof(*ep->txframe), GFP_ATOMIC);
-		if (ep->txframe == NULL) {
-			dev_err(udc->dev, "malloc txframe failed\n");
+		if (!ep->txframe)
 			goto en_done2;
-		}
 		qe_frame_init(ep->txframe);
 	}
 
@@ -2347,10 +2341,8 @@ static struct qe_udc *qe_udc_config(struct platform_device *ofdev)
 	u32 offset;
 
 	udc = kzalloc(sizeof(*udc), GFP_KERNEL);
-	if (udc == NULL) {
-		dev_err(&ofdev->dev, "malloc udc failed\n");
+	if (!udc)
 		goto cleanup;
-	}
 
 	udc->dev = &ofdev->dev;
 
-- 
2.9.3

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 00/44] usb: don't print on ENOMEM
  2016-08-25 17:38 [PATCH 00/44] usb: don't print on ENOMEM Wolfram Sang
  2016-08-25 17:39 ` [PATCH 11/44] usb: gadget: udc: fsl_qe_udc: " Wolfram Sang
@ 2016-08-26  6:27 ` Lothar Waßmann
  1 sibling, 0 replies; 3+ messages in thread
From: Lothar Waßmann @ 2016-08-26  6:27 UTC (permalink / raw)
  To: Wolfram Sang
  Cc: linux-usb, usb-storage, legousb-devel, accessrunner-general,
	linux-tegra, linuxppc-dev, linux-arm-kernel

Hi,

On Thu, 25 Aug 2016 19:38:52 +0200 Wolfram Sang wrote:
> Here is my next series to save memory by removing unneeded strings. It re=
moves
> in the usb subsystem all unspecific error messages after calling malloc-b=
ased
> functions, i.e. (devm_)k[zcm]alloc. kmalloc prints enough information in =
that
> case. If the message was specific (e.g. "can't save CLEAR_TT_BUFFER state=
"), I
> left it. This series saves ~4.5KB of "out of memory" permutations in .tex=
t and
> .rodata. For modified lines, (x =3D=3D NULL) was replaced with (!NULL) as=
 well.
s/!NULL/!x/


Lothar Wa=C3=9Fmann

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-08-26  6:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-25 17:38 [PATCH 00/44] usb: don't print on ENOMEM Wolfram Sang
2016-08-25 17:39 ` [PATCH 11/44] usb: gadget: udc: fsl_qe_udc: " Wolfram Sang
2016-08-26  6:27 ` [PATCH 00/44] usb: " Lothar Waßmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox