drivers/net: Remove unnecessary alloc/OOM messages
Subsystems (40)
cover drivers/net: Remove unnecessary alloc/OOM messages
Remove all the OOM messages that follow kernel alloc failures as there is already a generic equivalent to these messages in the mm subsystem.
Joe Perches (8):
caif: Remove unnecessary alloc/OOM messages
can: Remove unnecessary alloc/OOM messages
ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups
drivers: net: usb: Remove unnecessary alloc/OOM messages
wan: Remove unnecessary alloc/OOM messages
wimax: Remove unnecessary alloc/OOM messages, alloc cleanups
wireless: Remove unnecessary alloc/OOM messages, alloc cleanups drivers:net:misc: Remove unnecessary alloc/OOM messages
drivers/net/caif/caif_shmcore.c | 6 ----- drivers/net/can/sja1000/ems_pci.c | 1 - drivers/net/can/sja1000/peak_pci.c | 5 +--- drivers/net/can/sja1000/peak_pcmcia.c | 1 - drivers/net/can/sja1000/plx_pci.c | 1 - drivers/net/can/usb/ems_usb.c | 4 +--- drivers/net/can/usb/kvaser_usb.c | 2 -- drivers/net/can/usb/peak_usb/pcan_usb_core.c | 5 ---- drivers/net/can/usb/usb_8dev.c | 4 +--- drivers/net/ethernet/atheros/atl1c/atl1c_main.c | 6 ++--- drivers/net/ethernet/atheros/atl1e/atl1e_main.c | 2 -- drivers/net/ethernet/broadcom/b44.c | 4 +--- drivers/net/ethernet/broadcom/bcm63xx_enet.c | 6 ++--- drivers/net/ethernet/broadcom/cnic.c | 6 ++--- drivers/net/ethernet/broadcom/tg3.c | 4 +--- drivers/net/ethernet/freescale/gianfar_ethtool.c | 9 ++++---- drivers/net/ethernet/ibm/ehea/ehea_main.c | 4 +--- drivers/net/ethernet/ibm/ehea/ehea_qmr.c | 19 +++++---------- drivers/net/ethernet/ibm/emac/mal.c | 7 ++---- drivers/net/ethernet/ibm/ibmveth.c | 1 - drivers/net/ethernet/intel/igb/igb_main.c | 5 ++-- drivers/net/ethernet/intel/igbvf/netdev.c | 8 +++---- drivers/net/ethernet/marvell/mv643xx_eth.c | 8 +++---- drivers/net/ethernet/marvell/mvmdio.c | 1 - drivers/net/ethernet/marvell/skge.c | 5 ++-- drivers/net/ethernet/marvell/sky2.c | 4 +--- drivers/net/ethernet/mellanox/mlx4/en_main.c | 4 +--- drivers/net/ethernet/mellanox/mlx4/main.c | 4 +--- drivers/net/ethernet/myricom/myri10ge/myri10ge.c | 5 ++-- .../net/ethernet/qlogic/netxen/netxen_nic_ctx.c | 5 +--- drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c | 18 ++++----------- .../net/ethernet/qlogic/netxen/netxen_nic_init.c | 27 ++++++++-------------- .../net/ethernet/qlogic/netxen/netxen_nic_main.c | 5 +--- drivers/net/ethernet/qlogic/qla3xxx.c | 10 ++++---- .../net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c | 14 ++++------- drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c | 6 ++--- drivers/net/ethernet/qlogic/qlcnic/qlcnic_init.c | 26 +++++++-------------- drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c | 19 +++++---------- .../net/ethernet/qlogic/qlcnic/qlcnic_minidump.c | 7 ++---- drivers/net/ethernet/qlogic/qlge/qlge_main.c | 1 - drivers/net/ethernet/rdc/r6040.c | 3 +-- drivers/net/ethernet/renesas/sh_eth.c | 10 ++++---- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 11 +++++---- drivers/net/ethernet/sun/niu.c | 2 +- drivers/net/ethernet/ti/cpsw.c | 8 +++---- drivers/net/ethernet/ti/davinci_mdio.c | 4 +--- drivers/net/ethernet/xilinx/ll_temac_main.c | 6 ++--- drivers/net/hamradio/dmascc.c | 7 +----- drivers/net/phy/spi_ks8995.c | 4 +--- drivers/net/usb/ax88172a.c | 6 ++--- drivers/net/usb/hso.c | 25 ++++++-------------- drivers/net/usb/sierra_net.c | 10 +++----- drivers/net/usb/smsc75xx.c | 6 ++--- drivers/net/usb/smsc95xx.c | 6 ++--- drivers/net/usb/usbnet.c | 5 +--- drivers/net/virtio_net.c | 4 +--- drivers/net/wan/cosa.c | 9 ++++---- drivers/net/wan/farsync.c | 6 ++--- drivers/net/wan/hdlc.c | 9 ++++---- drivers/net/wan/x25_asy.c | 1 - drivers/net/wimax/i2400m/rx.c | 16 ++++--------- drivers/net/wimax/i2400m/usb-notif.c | 1 - drivers/net/wireless/airo_cs.c | 5 ++-- drivers/net/wireless/at76c50x-usb.c | 4 +--- .../net/wireless/ath/ath9k/dfs_pattern_detector.c | 6 ++--- drivers/net/wireless/atmel_cs.c | 5 ++-- drivers/net/wireless/ipw2x00/ipw2100.c | 9 +++----- drivers/net/wireless/libertas/cfg.c | 4 +--- drivers/net/wireless/mwifiex/11n.c | 5 +--- drivers/net/wireless/mwifiex/11n_rxreorder.c | 5 +--- drivers/net/wireless/mwifiex/cfg80211.c | 4 +--- drivers/net/wireless/mwifiex/cmdevt.c | 11 +++------ drivers/net/wireless/mwifiex/init.c | 5 +--- drivers/net/wireless/mwifiex/scan.c | 27 +++++++--------------- drivers/net/wireless/mwifiex/sdio.c | 11 ++------- drivers/net/wireless/mwifiex/sta_ioctl.c | 11 +++------ drivers/net/wireless/mwifiex/wmm.c | 7 ++---- drivers/net/wireless/orinoco/main.c | 16 ++++--------- drivers/net/wireless/p54/p54usb.c | 10 ++------ drivers/net/wireless/prism54/islpci_mgt.c | 14 ++++------- drivers/net/wireless/rndis_wlan.c | 5 +--- drivers/net/wireless/ti/wlcore/sdio.c | 4 +--- drivers/net/wireless/ti/wlcore/spi.c | 14 +++-------- drivers/net/wireless/zd1211rw/zd_usb.c | 1 - 84 files changed, 185 insertions(+), 436 deletions(-)
Signature · 1 line
1.8.0.dirty
PATCH 1/8 caif: Remove unnecessary alloc/OOM messages
alloc failures already get standardized OOM
messages and a dump_stack.
--- drivers/net/caif/caif_shmcore.c | 6 ------ 1 file changed, 6 deletions(-)
drivers/net/caif/caif_shmcore.c +0 -6
@@ -633,9 +633,6 @@ int caif_shmcore_probe(struct shmdev_layer *pshm_dev)kmalloc (sizeof (struct buf_list ),GFP_KERNEL );if (tx_buf ==NULL ) { -pr_warn ("ERROR, Could not" -" allocate dynamic mem. for tx_buf," -" Bailing out ...\n" );free_netdev (pshm_dev->pshm_netdev);return -ENOMEM ; }
@@ -662,9 +659,6 @@ int caif_shmcore_probe(struct shmdev_layer *pshm_dev)kmalloc (sizeof (struct buf_list ),GFP_KERNEL );if (rx_buf ==NULL ) { -pr_warn ("ERROR, Could not" -" allocate dynamic mem.for rx_buf," -" Bailing out ...\n" );free_netdev (pshm_dev->pshm_netdev);return -ENOMEM ; }
Signature · 1 line
1.8.0.dirty
PATCH 2/8 can: Remove unnecessary alloc/OOM messages
In reply to Joe Perchesalloc failures already get standardized OOM
messages and a dump_stack.
--- drivers/net/can/sja1000/ems_pci.c | 1 - drivers/net/can/sja1000/peak_pci.c | 5 +---- drivers/net/can/sja1000/peak_pcmcia.c | 1 - drivers/net/can/sja1000/plx_pci.c | 1 - drivers/net/can/usb/ems_usb.c | 4 +--- drivers/net/can/usb/kvaser_usb.c | 2 -- drivers/net/can/usb/peak_usb/pcan_usb_core.c | 5 ----- drivers/net/can/usb/usb_8dev.c | 4 +--- 8 files changed, 3 insertions(+), 20 deletions(-)
drivers/net/can/sja1000/ems_pci.c +0 -1
@@ -238,7 +238,6 @@ static int ems_pci_add_card(struct pci_dev *pdev,/* Allocating card structures to hold addresses, ... */ card =kzalloc (sizeof (struct ems_pci_card ),GFP_KERNEL );if (card ==NULL ) { -dev_err (&pdev->dev,"Unable to allocate memory\n" );pci_disable_device (pdev);return -ENOMEM ; }
drivers/net/can/sja1000/peak_pci.c +1 -4
@@ -450,11 +450,8 @@ static int peak_pciec_probe(struct pci_dev *pdev, struct net_device *dev) }else {/* create the bit banging I2C adapter structure */ card =kzalloc (sizeof (struct peak_pciec_card ),GFP_KERNEL ); -if (!card) { -dev_err (&pdev->dev, -"failed allocating memory for i2c chip\n" ); +if (!card)return -ENOMEM ; - } card->cfg_base = chan->cfg_base; card->reg_base = priv->reg_base;
drivers/net/can/sja1000/peak_pcmcia.c +0 -1
@@ -660,7 +660,6 @@ static int pcan_probe(struct pcmcia_device *pdev) card =kzalloc (sizeof (struct pcan_pccard ),GFP_KERNEL );if (!card) { -dev_err (&pdev->dev,"couldn't allocate card memory\n" ); err = -ENOMEM ; goto probe_err_2; }
drivers/net/can/sja1000/plx_pci.c +0 -1
@@ -508,7 +508,6 @@ static int plx_pci_add_card(struct pci_dev *pdev,/* Allocate card structures to hold addresses, ... */ card =kzalloc (sizeof (*card),GFP_KERNEL );if (!card) { -dev_err (&pdev->dev,"Unable to allocate memory\n" );pci_disable_device (pdev);return -ENOMEM ; }
drivers/net/can/usb/ems_usb.c +1 -3
@@ -1014,10 +1014,8 @@ static int ems_usb_probe(struct usb_interface *intf, } dev->intr_in_buffer =kzalloc (INTR_IN_BUFFER_SIZE ,GFP_KERNEL ); -if (!dev->intr_in_buffer) { -dev_err (&intf->dev,"Couldn't alloc Intr buffer\n" ); +if (!dev->intr_in_buffer) goto cleanup_intr_urb; - } dev->tx_msg_buffer =kzalloc (CPC_HEADER_SIZE +sizeof (struct ems_cpc_msg ),GFP_KERNEL );
drivers/net/can/usb/kvaser_usb.c +0 -2
@@ -561,7 +561,6 @@ static int kvaser_usb_simple_msg_async(struct kvaser_usb_net_priv *priv, buf =kmalloc (sizeof (struct kvaser_msg ),GFP_ATOMIC );if (!buf) { -netdev_err (netdev,"No memory left for USB buffer\n" );usb_free_urb (urb);return -ENOMEM ; }
@@ -1268,7 +1267,6 @@ static netdev_tx_t kvaser_usb_start_xmit(struct sk_buff *skb, buf =kmalloc (sizeof (struct kvaser_msg ),GFP_ATOMIC );if (!buf) { -netdev_err (netdev,"No memory left for USB buffer\n" ); stats->tx_dropped++; goto nobufmem; }
drivers/net/can/usb/peak_usb/pcan_usb_core.c +0 -5
@@ -386,7 +386,6 @@ static int peak_usb_start(struct peak_usb_device *dev) buf =kmalloc (dev->adapter->rx_buffer_size,GFP_KERNEL );if (!buf) { -netdev_err (netdev,"No memory left for USB buffer\n" );usb_free_urb (urb); err = -ENOMEM ;break ;
@@ -442,7 +441,6 @@ static int peak_usb_start(struct peak_usb_device *dev) buf =kmalloc (dev->adapter->tx_buffer_size,GFP_KERNEL );if (!buf) { -netdev_err (netdev,"No memory left for USB buffer\n" );usb_free_urb (urb); err = -ENOMEM ;break ;
@@ -634,7 +632,6 @@ static int peak_usb_restart(struct peak_usb_device *dev)/* also allocate enough space for the commands to send */ buf =kmalloc (PCAN_USB_MAX_CMD_LEN ,GFP_ATOMIC );if (!buf) { -netdev_err (dev->netdev,"no memory left for async cmd\n" );usb_free_urb (urb);return -ENOMEM ; }
@@ -729,8 +726,6 @@ static int peak_usb_create_dev(struct peak_usb_adapter *peak_usb_adapter,/* allocate a buffer large enough to send commands */ dev->cmd_buf =kmalloc (PCAN_USB_MAX_CMD_LEN ,GFP_KERNEL );if (!dev->cmd_buf) { -dev_err (&intf->dev,"%s: couldn't alloc cmd buffer\n" , -PCAN_USB_DRIVER_NAME ); err = -ENOMEM ; goto lbl_set_intf_data; }
drivers/net/can/usb/usb_8dev.c +1 -3
@@ -958,10 +958,8 @@ static int usb_8dev_probe(struct usb_interface *intf, priv->cmd_msg_buffer =kzalloc (sizeof (struct usb_8dev_cmd_msg ),GFP_KERNEL ); -if (!priv->cmd_msg_buffer) { -netdev_err (netdev,"Couldn't alloc Tx buffer\n" ); +if (!priv->cmd_msg_buffer) goto cleanup_candev; - }usb_set_intfdata (intf, priv);
Signature · 1 line
1.8.0.dirty
Re: [PATCH 2/8] can: Remove unnecessary alloc/OOM messages
Quoted 4 lines · Joe Perches
alloc failures already get standardized OOM
messages and adump_stack.Signed-off-by Joe Perches <[email protected]>
Signature · 4 lines
Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |
PATCH 3/8 ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups
In reply to Joe Perchesalloc failures already get standardized OOM
messages and a dump_stack.
Convert kzalloc's with multiplies to kcalloc. Convert kmalloc's with multiplies to kmalloc_array. Fix a few whitespace defects.
Convert a constant 6 to ETH_ALEN.
Use parentheses around sizeof.
Convert vmalloc/memset to vzalloc.
Remove now unused size variables.
--- drivers/net/ethernet/atheros/atl1c/atl1c_main.c | 6 ++--- drivers/net/ethernet/atheros/atl1e/atl1e_main.c | 2 -- drivers/net/ethernet/broadcom/b44.c | 4 +--- drivers/net/ethernet/broadcom/bcm63xx_enet.c | 6 ++--- drivers/net/ethernet/broadcom/cnic.c | 6 ++--- drivers/net/ethernet/broadcom/tg3.c | 4 +--- drivers/net/ethernet/freescale/gianfar_ethtool.c | 9 ++++---- drivers/net/ethernet/ibm/ehea/ehea_main.c | 4 +--- drivers/net/ethernet/ibm/ehea/ehea_qmr.c | 19 +++++---------- drivers/net/ethernet/ibm/emac/mal.c | 7 ++---- drivers/net/ethernet/ibm/ibmveth.c | 1 - drivers/net/ethernet/intel/igb/igb_main.c | 5 ++-- drivers/net/ethernet/intel/igbvf/netdev.c | 8 +++---- drivers/net/ethernet/marvell/mv643xx_eth.c | 8 +++---- drivers/net/ethernet/marvell/mvmdio.c | 1 - drivers/net/ethernet/marvell/skge.c | 5 ++-- drivers/net/ethernet/marvell/sky2.c | 4 +--- drivers/net/ethernet/mellanox/mlx4/en_main.c | 4 +--- drivers/net/ethernet/mellanox/mlx4/main.c | 4 +--- drivers/net/ethernet/myricom/myri10ge/myri10ge.c | 5 ++-- .../net/ethernet/qlogic/netxen/netxen_nic_ctx.c | 5 +--- drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c | 18 ++++----------- .../net/ethernet/qlogic/netxen/netxen_nic_init.c | 27 ++++++++-------------- .../net/ethernet/qlogic/netxen/netxen_nic_main.c | 5 +--- drivers/net/ethernet/qlogic/qla3xxx.c | 10 ++++---- .../net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c | 14 ++++------- drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c | 6 ++--- drivers/net/ethernet/qlogic/qlcnic/qlcnic_init.c | 26 +++++++-------------- drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c | 19 +++++---------- .../net/ethernet/qlogic/qlcnic/qlcnic_minidump.c | 7 ++---- drivers/net/ethernet/qlogic/qlge/qlge_main.c | 1 - drivers/net/ethernet/rdc/r6040.c | 3 +-- drivers/net/ethernet/renesas/sh_eth.c | 10 ++++---- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 11 +++++---- drivers/net/ethernet/sun/niu.c | 2 +- drivers/net/ethernet/ti/cpsw.c | 8 +++---- drivers/net/ethernet/ti/davinci_mdio.c | 4 +--- drivers/net/ethernet/xilinx/ll_temac_main.c | 6 ++--- 38 files changed, 97 insertions(+), 197 deletions(-)
drivers/net/ethernet/atheros/atl1c/atl1c_main.c +2 -4
@@ -982,11 +982,9 @@ static int atl1c_setup_ring_resources(struct atl1c_adapter *adapter) size =sizeof (struct atl1c_buffer ) * (tpd_ring->count *2 + rfd_ring->count); tpd_ring->buffer_info =kzalloc (size,GFP_KERNEL ); -if (unlikely (!tpd_ring->buffer_info)) { -dev_err (&pdev->dev,"kzalloc failed, size = %d\n" , - size); +if (unlikely (!tpd_ring->buffer_info)) goto err_nomem; - } +for (i =0 ; i <AT_MAX_TRANSMIT_QUEUE ; i++) { tpd_ring[i].buffer_info = (tpd_ring->buffer_info + count);
drivers/net/ethernet/atheros/atl1e/atl1e_main.c +0 -2
@@ -819,8 +819,6 @@ static int atl1e_setup_ring_resources(struct atl1e_adapter *adapter) size =sizeof (struct atl1e_tx_buffer ) * (tx_ring->count); tx_ring->tx_buffer =kzalloc (size,GFP_KERNEL );if (tx_ring->tx_buffer ==NULL ) { -netdev_err (adapter->netdev,"kzalloc failed, size = D%d\n" , - size); err = -ENOMEM ; goto failed; }
drivers/net/ethernet/broadcom/b44.c +1 -3
@@ -1518,10 +1518,8 @@ static void b44_setup_pseudo_magicp(struct b44 *bp)u8 pwol_mask[B44_PMASK_SIZE ]; pwol_pattern =kzalloc (B44_PATTERN_SIZE ,GFP_KERNEL ); -if (!pwol_pattern) { -pr_err ("Memory not available for WOL\n" ); +if (!pwol_pattern)return ; - }/* Ipv4 magic packet pattern - pattern 0.*/ memset (pwol_mask,0 ,B44_PMASK_SIZE );
drivers/net/ethernet/broadcom/bcm63xx_enet.c +2 -4
@@ -886,10 +886,9 @@ static int bcm_enet_open(struct net_device *dev) priv->tx_desc_alloc_size = size; priv->tx_desc_cpu = p; - priv->tx_skb =kzalloc (sizeof (struct sk_buff *) * priv->tx_ring_size, + priv->tx_skb =kcalloc (priv->tx_ring_size,sizeof (struct sk_buff *),GFP_KERNEL );if (!priv->tx_skb) { -dev_err (kdev,"cannot allocate rx skb queue\n" ); ret = -ENOMEM ; goto out_free_tx_ring; }
@@ -900,10 +899,9 @@ static int bcm_enet_open(struct net_device *dev)spin_lock_init (&priv->tx_lock);/* init & fill rx ring with skbs */ - priv->rx_skb =kzalloc (sizeof (struct sk_buff *) * priv->rx_ring_size, + priv->rx_skb =kcalloc (priv->rx_ring_size,sizeof (struct sk_buff *),GFP_KERNEL );if (!priv->rx_skb) { -dev_err (kdev,"cannot allocate rx skb queue\n" ); ret = -ENOMEM ; goto out_free_tx_skb; }
drivers/net/ethernet/broadcom/cnic.c +2 -4
@@ -5425,11 +5425,9 @@ static struct cnic_dev *cnic_alloc_dev(struct net_device *dev, alloc_size =sizeof (struct cnic_dev ) +sizeof (struct cnic_local ); - cdev =kzalloc (alloc_size ,GFP_KERNEL ); -if (cdev ==NULL ) { -netdev_err (dev,"allocate dev struct failure\n" ); + cdev =kzalloc (alloc_size,GFP_KERNEL ); +if (cdev ==NULL )return NULL ; - } cdev->netdev = dev; cdev->cnic_priv = (char *)cdev +sizeof (struct cnic_dev );
drivers/net/ethernet/broadcom/tg3.c +1 -3
@@ -5793,10 +5793,8 @@ static void tg3_dump_state(struct tg3 *tp)u32 *regs; regs =kzalloc (TG3_REG_BLK_SIZE ,GFP_ATOMIC ); -if (!regs) { -netdev_err (tp->dev,"Failed allocating register dump buffer\n" ); +if (!regs)return ; - }if (tg3_flag (tp,PCI_EXPRESS )) {/* Read up to but not including private PCI registers */
drivers/net/ethernet/freescale/gianfar_ethtool.c +4 -5
@@ -716,12 +716,11 @@ static int gfar_ethflow_to_filer_table(struct gfar_private *priv, u64 ethflow,int j =MAX_FILER_IDX , l =0x0 ;int ret =1 ; - local_rqfpr =kmalloc (sizeof (unsigned int ) * (MAX_FILER_IDX +1 ), -GFP_KERNEL ); - local_rqfcr =kmalloc (sizeof (unsigned int ) * (MAX_FILER_IDX +1 ), -GFP_KERNEL ); + local_rqfpr =kmalloc_array (MAX_FILER_IDX +1 ,sizeof (unsigned int ), +GFP_KERNEL ); + local_rqfcr =kmalloc_array (MAX_FILER_IDX +1 ,sizeof (unsigned int ), +GFP_KERNEL );if (!local_rqfpr || !local_rqfcr) { -pr_err ("Out of memory\n" ); ret =0 ; goto err; }
drivers/net/ethernet/ibm/ehea/ehea_main.c +1 -3
@@ -1921,10 +1921,8 @@ static void ehea_add_multicast_entry(struct ehea_port *port, u8 *mc_mac_addr)u64 hret; ehea_mcl_entry =kzalloc (sizeof (*ehea_mcl_entry),GFP_ATOMIC ); -if (!ehea_mcl_entry) { -pr_err ("no mem for mcl_entry\n" ); +if (!ehea_mcl_entry)return ; - }INIT_LIST_HEAD (&ehea_mcl_entry->list);
drivers/net/ethernet/ibm/ehea/ehea_qmr.c +6 -13
@@ -64,11 +64,10 @@ static int hw_queue_ctor(struct hw_queue *queue, const u32 nr_of_pages, } queue->queue_length = nr_of_pages * pagesize; - queue->queue_pages =kmalloc (nr_of_pages *sizeof (void *),GFP_KERNEL ); -if (!queue->queue_pages) { -pr_err ("no mem for queue_pages\n" ); + queue->queue_pages =kmalloc_array (nr_of_pages,sizeof (void *), +GFP_KERNEL ); +if (!queue->queue_pages)return -ENOMEM ; - }/* * allocate pages for queue:
@@ -129,10 +128,8 @@ struct ehea_cq *ehea_create_cq(struct ehea_adapter *adapter,void *vpage; cq =kzalloc (sizeof (*cq),GFP_KERNEL ); -if (!cq) { -pr_err ("no mem for cq\n" ); +if (!cq) goto out_nomem; - } cq->attr.max_nr_of_cqes = nr_of_cqe; cq->attr.cq_token = cq_token;
@@ -257,10 +254,8 @@ struct ehea_eq *ehea_create_eq(struct ehea_adapter *adapter,struct ehea_eq *eq; eq =kzalloc (sizeof (*eq),GFP_KERNEL ); -if (!eq) { -pr_err ("no mem for eq\n" ); +if (!eq)return NULL ; - } eq->adapter = adapter; eq->attr.type = type;
@@ -428,10 +423,8 @@ struct ehea_qp *ehea_create_qp(struct ehea_adapter *adapter, qp =kzalloc (sizeof (*qp),GFP_KERNEL ); -if (!qp) { -pr_err ("no mem for qp\n" ); +if (!qp)return NULL ; - } qp->adapter = adapter;
drivers/net/ethernet/ibm/emac/mal.c +2 -5
@@ -528,12 +528,9 @@ static int mal_probe(struct platform_device *ofdev)irq_handler_t hdlr_serr, hdlr_txde, hdlr_rxde; mal =kzalloc (sizeof (struct mal_instance ),GFP_KERNEL ); -if (!mal) { -printk (KERN_ERR -"mal%d: out of memory allocating MAL structure!\n" , - index); +if (!mal)return -ENOMEM ; - } + mal->index = index; mal->ofdev = ofdev; mal->version =of_device_is_compatible (ofdev->dev.of_node,"ibm,mcmal2" ) ?2 :1 ;
drivers/net/ethernet/ibm/ibmveth.c +0 -1
@@ -637,7 +637,6 @@ static int ibmveth_open(struct net_device *netdev) adapter->bounce_buffer =kmalloc (netdev->mtu +IBMVETH_BUFF_OH ,GFP_KERNEL );if (!adapter->bounce_buffer) { -netdev_err (netdev,"unable to allocate bounce buffer\n" ); rc = -ENOMEM ; goto err_out_free_irq; }
drivers/net/ethernet/intel/igb/igb_main.c +2 -3
@@ -2671,9 +2671,8 @@ static int igb_sw_init(struct igb_adapter *adapter)igb_init_queue_configuration (adapter);/* Setup and initialize a copy of the hw vlan table array */ - adapter->shadow_vfta =kzalloc (sizeof (u32) * -E1000_VLAN_FILTER_TBL_SIZE , -GFP_ATOMIC ); + adapter->shadow_vfta =kcalloc (E1000_VLAN_FILTER_TBL_SIZE ,sizeof (u32), +GFP_ATOMIC );/* This call may decrease the number of queues */ if (igb_init_interrupt_scheme (adapter, true)) {
drivers/net/ethernet/intel/igbvf/netdev.c +3 -5
@@ -1399,12 +1399,10 @@ static void igbvf_set_multi(struct net_device *netdev)int i;if (!netdev_mc_empty (netdev)) { - mta_list =kmalloc (netdev_mc_count (netdev) *6 ,GFP_ATOMIC ); -if (!mta_list) { -dev_err (&adapter->pdev->dev, -"failed to allocate multicast filter list\n" ); + mta_list =kmalloc_array (netdev_mc_count (netdev),ETH_ALEN , +GFP_ATOMIC ); +if (!mta_list)return ; - } }/* prepare a packed array of only addresses. */
drivers/net/ethernet/marvell/mv643xx_eth.c +3 -5
@@ -1879,12 +1879,10 @@ static int rxq_init(struct mv643xx_eth_private *mp, int index)memset (rxq->rx_desc_area,0 , size); rxq->rx_desc_area_size = size; - rxq->rx_skb =kmalloc (rxq->rx_ring_size *sizeof (*rxq->rx_skb), -GFP_KERNEL ); -if (rxq->rx_skb ==NULL ) { -netdev_err (mp->dev,"can't allocate rx skb ring\n" ); + rxq->rx_skb =kmalloc_array (rxq->rx_ring_size,sizeof (*rxq->rx_skb), +GFP_KERNEL ); +if (rxq->rx_skb ==NULL ) goto out_free; - } rx_desc = rxq->rx_desc_area;for (i =0 ; i < rxq->rx_ring_size; i++) {
drivers/net/ethernet/marvell/mvmdio.c +0 -1
@@ -164,7 +164,6 @@ static int orion_mdio_probe(struct platform_device *pdev) bus->irq =kmalloc (sizeof (int ) *PHY_MAX_ADDR ,GFP_KERNEL );if (!bus->irq) { -dev_err (&pdev->dev,"Cannot allocate PHY IRQ array\n" );mdiobus_free (bus);return -ENOMEM ; }
drivers/net/ethernet/marvell/skge.c +2 -3
@@ -3916,10 +3916,9 @@ static int skge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)/* space for skge@pci:0000:04:00.0 */ hw =kzalloc (sizeof (*hw) +strlen (DRV_NAME "@pci:" ) +strlen (pci_name (pdev)) +1 ,GFP_KERNEL ); -if (!hw) { -dev_err (&pdev->dev,"cannot allocate hardware struct\n" ); +if (!hw) goto err_out_free_regions; - } +sprintf (hw->irq_name,DRV_NAME "@pci:%s" ,pci_name (pdev)); hw->pdev = pdev;
drivers/net/ethernet/marvell/sky2.c +1 -3
@@ -4969,10 +4969,8 @@ static int sky2_probe(struct pci_dev *pdev, const struct pci_device_id *ent) hw =kzalloc (sizeof (*hw) +strlen (DRV_NAME "@pci:" ) +strlen (pci_name (pdev)) +1 ,GFP_KERNEL ); -if (!hw) { -dev_err (&pdev->dev,"cannot allocate hardware struct\n" ); +if (!hw) goto err_out_free_regions; - } hw->pdev = pdev;sprintf (hw->irq_name,DRV_NAME "@pci:%s" ,pci_name (pdev));
drivers/net/ethernet/mellanox/mlx4/en_main.c +1 -3
@@ -191,10 +191,8 @@ static void *mlx4_en_add(struct mlx4_dev *dev)printk_once (KERN_INFO "%s" , mlx4_en_version); - mdev =kzalloc (sizeof *mdev,GFP_KERNEL ); + mdev =kzalloc (sizeof (*mdev),GFP_KERNEL );if (!mdev) { -dev_err (&dev->pdev->dev,"Device struct alloc failed, " -"aborting.\n" ); err = -ENOMEM ; goto err_free_res; }
drivers/net/ethernet/mellanox/mlx4/main.c +1 -3
@@ -2054,10 +2054,8 @@ static int __mlx4_init_one(struct pci_dev *pdev, int pci_dev_data)/* Allow large DMA segments, up to the firmware limit of 1 GB */ dma_set_max_seg_size (&pdev->dev,1024 *1024 *1024 ); - priv =kzalloc (sizeof *priv,GFP_KERNEL ); + priv =kzalloc (sizeof (*priv),GFP_KERNEL );if (!priv) { -dev_err (&pdev->dev,"Device struct alloc failed, " -"aborting.\n" ); err = -ENOMEM ; goto err_release_regions; }
drivers/net/ethernet/myricom/myri10ge/myri10ge.c +2 -3
@@ -664,10 +664,9 @@ static int myri10ge_adopt_running_firmware(struct myri10ge_priv *mgp)/* copy header of running firmware from SRAM to host memory to * validate firmware */ hdr =kmalloc (bytes,GFP_KERNEL ); -if (hdr ==NULL ) { -dev_err (dev,"could not malloc firmware hdr\n" ); +if (hdr ==NULL )return -ENOMEM ; - } +memcpy_fromio (hdr, mgp->sram + hdr_offset, bytes); status =myri10ge_validate_firmware (mgp, hdr);kfree (hdr);
drivers/net/ethernet/qlogic/netxen/netxen_nic_ctx.c +1 -4
@@ -201,11 +201,8 @@ netxen_setup_minidump(struct netxen_adapter *adapter) adapter->mdump.md_template =kmalloc (adapter->mdump.md_template_size,GFP_KERNEL ); -if (!adapter->mdump.md_template) { -dev_err (&adapter->pdev->dev,"Unable to allocate memory " -"for minidump template.\n" ); +if (!adapter->mdump.md_template)return -ENOMEM ; - } err =netxen_get_minidump_template (adapter);if (err) {
drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c +5 -13
@@ -670,11 +670,9 @@ static int nx_p3_nic_add_mac(struct netxen_adapter *adapter, } cur =kzalloc (sizeof (nx_mac_list_t),GFP_ATOMIC ); -if (cur ==NULL ) { -printk (KERN_ERR "%s: failed to add mac address filter\n" , - adapter->netdev->name); +if (cur ==NULL )return -ENOMEM ; - } +memcpy (cur->mac_addr, addr,ETH_ALEN );list_add_tail (&cur->list, &adapter->mac_list); return nx_p3_sre_macaddr_change(adapter,
@@ -2568,16 +2566,10 @@ netxen_dump_fw(struct netxen_adapter *adapter) adapter->mdump.md_capture_size;if (!adapter->mdump.md_capture_buff) { adapter->mdump.md_capture_buff = -vmalloc (adapter->mdump.md_dump_size); -if (!adapter->mdump.md_capture_buff) { -dev_info (&adapter->pdev->dev, -"Unable to allocate memory for minidump " -"capture_buffer(%d bytes).\n" , - adapter->mdump.md_dump_size); +vzalloc (adapter->mdump.md_dump_size); +if (!adapter->mdump.md_capture_buff)return ; - } -memset (adapter->mdump.md_capture_buff,0 , - adapter->mdump.md_dump_size); +if (netxen_collect_minidump (adapter)) { adapter->mdump.has_valid_dump =0 ; adapter->mdump.md_dump_size =0 ;
drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c +10 -17
@@ -197,41 +197,34 @@ int netxen_alloc_sw_resources(struct netxen_adapter *adapter)struct nx_host_sds_ring *sds_ring;struct nx_host_tx_ring *tx_ring;struct netxen_rx_buffer *rx_buf; -int ring, i, size; +int ring, i;struct netxen_cmd_buffer *cmd_buf_arr;struct net_device *netdev = adapter->netdev;struct pci_dev *pdev = adapter->pdev; - size =sizeof (struct nx_host_tx_ring ); - tx_ring =kzalloc (size,GFP_KERNEL ); -if (tx_ring ==NULL ) { -dev_err (&pdev->dev,"%s: failed to allocate tx ring struct\n" , - netdev->name); + tx_ring =kzalloc (sizeof (struct nx_host_tx_ring ),GFP_KERNEL ); +if (tx_ring ==NULL )return -ENOMEM ; - } + adapter->tx_ring = tx_ring; tx_ring->num_desc = adapter->num_txd; tx_ring->txq =netdev_get_tx_queue (netdev,0 ); cmd_buf_arr =vzalloc (TX_BUFF_RINGSIZE (tx_ring)); -if (cmd_buf_arr ==NULL ) { -dev_err (&pdev->dev,"%s: failed to allocate cmd buffer ring\n" , - netdev->name); +if (cmd_buf_arr ==NULL ) goto err_out; - } + tx_ring->cmd_buf_arr = cmd_buf_arr; recv_ctx = &adapter->recv_ctx; - size = adapter->max_rds_rings *sizeof (struct nx_host_rds_ring ); - rds_ring =kzalloc (size,GFP_KERNEL ); -if (rds_ring ==NULL ) { -dev_err (&pdev->dev,"%s: failed to allocate rds ring struct\n" , - netdev->name); + rds_ring =kcalloc (adapter->max_rds_rings, +sizeof (struct nx_host_rds_ring ),GFP_KERNEL ); +if (rds_ring ==NULL ) goto err_out; - } + recv_ctx->rds_rings = rds_ring;for (ring =0 ; ring < adapter->max_rds_rings; ring++) {
drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c +1 -4
@@ -3176,11 +3176,8 @@ netxen_list_config_vlan_ip(struct netxen_adapter *adapter, } cur =kzalloc (sizeof (struct nx_vlan_ip_list ),GFP_ATOMIC ); -if (cur ==NULL ) { -printk (KERN_ERR "%s: failed to add vlan ip to list\n" , - adapter->netdev->name); +if (cur ==NULL )return ; - } cur->ip_addr = ifa->ifa_address;list_add_tail (&cur->list, &adapter->vlan_ip_list);
drivers/net/ethernet/qlogic/qla3xxx.c +4 -6
@@ -2591,13 +2591,11 @@ static int ql_alloc_buffer_queues(struct ql3_adapter *qdev)else qdev->lrg_buf_q_alloc_size = qdev->lrg_buf_q_size *2 ; - qdev->lrg_buf = -kmalloc (qdev->num_large_buffers *sizeof (struct ql_rcv_buf_cb ), -GFP_KERNEL ); -if (qdev->lrg_buf ==NULL ) { -netdev_err (qdev->ndev,"qdev->lrg_buf alloc failed\n" ); + qdev->lrg_buf =kmalloc_array (qdev->num_large_buffers, +sizeof (struct ql_rcv_buf_cb ), +GFP_KERNEL ); +if (qdev->lrg_buf ==NULL )return -ENOMEM ; - } qdev->lrg_buf_q_alloc_virt_addr = pci_alloc_consistent(qdev->pdev,
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_init.c +4 -10
@@ -1171,12 +1171,9 @@ static int qlcnic_83xx_copy_bootloader(struct qlcnic_adapter *adapter) size = (size +16 ) & ~0xF ; p_cache =kzalloc (size,GFP_KERNEL ); - -if (p_cache ==NULL ) { -dev_err (&adapter->pdev->dev, -"Failed to allocate memory for boot loader cache\n" ); +if (p_cache ==NULL )return -ENOMEM ; - } + ret =qlcnic_83xx_lockless_flash_read32 (adapter, src, p_cache, size /sizeof (u32));if (ret) {
@@ -1487,12 +1484,9 @@ int qlcnic_83xx_get_reset_instruction_template(struct qlcnic_adapter *p_dev) ahw->reset.seq_error =0 ; ahw->reset.buff =kzalloc (QLC_83XX_RESTART_TEMPLATE_SIZE ,GFP_KERNEL ); - -if (p_dev->ahw->reset.buff ==NULL ) { -dev_err (&p_dev->pdev->dev, -"%s: resource allocation failed\n" , __func__); +if (p_dev->ahw->reset.buff ==NULL )return -ENOMEM ; - } + p_buff = p_dev->ahw->reset.buff; addr =QLC_83XX_RESET_TEMPLATE_ADDR ; count =sizeof (struct qlc_83xx_reset_hdr ) /sizeof (u32);
drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c +2 -4
@@ -481,11 +481,9 @@ int qlcnic_nic_add_mac(struct qlcnic_adapter *adapter, const u8 *addr) } cur =kzalloc (sizeof (struct qlcnic_mac_list_s ),GFP_ATOMIC ); -if (cur ==NULL ) { -dev_err (&adapter->netdev->dev, -"failed to add mac address filter\n" ); +if (cur ==NULL )return -ENOMEM ; - } +memcpy (cur->mac_addr, addr,ETH_ALEN ); if (qlcnic_sre_macaddr_change(adapter,
drivers/net/ethernet/qlogic/qlcnic/qlcnic_init.c +8 -18
@@ -184,18 +184,15 @@ int qlcnic_alloc_sw_resources(struct qlcnic_adapter *adapter)struct qlcnic_host_rds_ring *rds_ring;struct qlcnic_host_sds_ring *sds_ring;struct qlcnic_rx_buffer *rx_buf; -int ring, i, size; - -struct net_device *netdev = adapter->netdev; +int ring, i; recv_ctx = adapter->recv_ctx; - size = adapter->max_rds_rings *sizeof (struct qlcnic_host_rds_ring ); - rds_ring =kzalloc (size,GFP_KERNEL ); -if (rds_ring ==NULL ) { -dev_err (&netdev->dev,"failed to allocate rds ring struct\n" ); + rds_ring =kcalloc (adapter->max_rds_rings, +sizeof (struct qlcnic_host_rds_ring ),GFP_KERNEL ); +if (rds_ring ==NULL ) goto err_out; - } + recv_ctx->rds_rings = rds_ring;for (ring =0 ; ring < adapter->max_rds_rings; ring++) {
@@ -221,11 +218,8 @@ int qlcnic_alloc_sw_resources(struct qlcnic_adapter *adapter)break ; } rds_ring->rx_buf_arr =vzalloc (RCV_BUFF_RINGSIZE (rds_ring)); -if (rds_ring->rx_buf_arr ==NULL ) { -dev_err (&netdev->dev, -"Failed to allocate rx buffer ring %d\n" , ring); +if (rds_ring->rx_buf_arr ==NULL ) goto err_out; - }INIT_LIST_HEAD (&rds_ring->free_list);/*
@@ -448,10 +442,8 @@ int qlcnic_pinit_from_rom(struct qlcnic_adapter *adapter) } buf =kcalloc (n,sizeof (struct crb_addr_pair ),GFP_KERNEL ); -if (buf ==NULL ) { -dev_err (&pdev->dev,"Unable to calloc memory for rom read.\n" ); +if (buf ==NULL )return -ENOMEM ; - }for (i =0 ; i < n; i++) { if (qlcnic_rom_fast_read(adapter, 8*i + 4*offset, &val) != 0 ||
@@ -657,10 +649,8 @@ static int qlcnic_get_flt_entry(struct qlcnic_adapter *adapter, u8 region, entry_size = flt_hdr.len -sizeof (struct qlcnic_flt_header ); flt_entry =vzalloc (entry_size); -if (flt_entry ==NULL ) { -dev_warn (&adapter->pdev->dev,"error allocating memory\n" ); +if (flt_entry ==NULL )return -EIO ; - } ret = qlcnic_rom_fast_read_words(adapter, QLCNIC_FLT_LOCATION + sizeof(struct qlcnic_flt_header),
drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c +6 -13
@@ -414,10 +414,8 @@ int qlcnic_enable_msix(struct qlcnic_adapter *adapter, u32 num_msix) adapter->msix_entries =kcalloc (num_msix,sizeof (struct msix_entry ),GFP_KERNEL ); -if (!adapter->msix_entries) { -dev_err (&pdev->dev,"failed allocating msix_entries\n" ); +if (!adapter->msix_entries)return -ENOMEM ; - } } adapter->max_sds_rings =1 ;
@@ -1536,8 +1534,6 @@ static int qlcnic_alloc_adapter_resources(struct qlcnic_adapter *adapter) adapter->recv_ctx =kzalloc (sizeof (struct qlcnic_recv_context ),GFP_KERNEL );if (!adapter->recv_ctx) { -dev_err (&adapter->pdev->dev, -"Failed to allocate recv ctx resources for adapter\n" ); err = -ENOMEM ; goto err_out; }
@@ -1764,16 +1760,15 @@ void qlcnic_free_tx_rings(struct qlcnic_adapter *adapter)int qlcnic_alloc_tx_rings (struct qlcnic_adapter *adapter,struct net_device *netdev) { -int ring, size, vector, index; +int ring, vector, index;struct qlcnic_host_tx_ring *tx_ring;struct qlcnic_cmd_buffer *cmd_buf_arr; - size = adapter->max_drv_tx_rings *sizeof (struct qlcnic_host_tx_ring ); - tx_ring =kzalloc (size,GFP_KERNEL ); -if (tx_ring ==NULL ) { -dev_err (&netdev->dev,"failed to allocate tx rings\n" ); + tx_ring =kcalloc (adapter->max_drv_tx_rings, +sizeof (struct qlcnic_host_tx_ring ),GFP_KERNEL ); +if (tx_ring ==NULL )return -ENOMEM ; - } + adapter->tx_ring = tx_ring;for (ring =0 ; ring < adapter->max_drv_tx_rings; ring++) {
@@ -1782,8 +1777,6 @@ int qlcnic_alloc_tx_rings(struct qlcnic_adapter *adapter, tx_ring->txq =netdev_get_tx_queue (netdev, ring); cmd_buf_arr =vzalloc (TX_BUFF_RINGSIZE (tx_ring));if (cmd_buf_arr ==NULL ) { -dev_err (&netdev->dev, -"failed to allocate cmd buffer ring\n" );qlcnic_free_tx_rings (adapter);return -ENOMEM ; }
drivers/net/ethernet/qlogic/qlcnic/qlcnic_minidump.c +2 -5
@@ -931,12 +931,9 @@ int qlcnic_dump_fw(struct qlcnic_adapter *adapter)return -EIO ; fw_dump->data =vzalloc (dump_size); -if (!fw_dump->data) { -dev_info (&adapter->pdev->dev, -"Unable to allocate (%d KB) for fw dump\n" , - dump_size /1024 ); +if (!fw_dump->data)return -ENOMEM ; - } + buffer = fw_dump->data; fw_dump->size = dump_size; no_entries = tmpl_hdr->num_entries;
drivers/net/ethernet/qlogic/qlge/qlge_main.c +0 -1
@@ -4572,7 +4572,6 @@ static int ql_init_device(struct pci_dev *pdev, struct net_device *ndev, qdev->mpi_coredump =vmalloc (sizeof (struct ql_mpi_coredump ));if (qdev->mpi_coredump ==NULL ) { -dev_err (&pdev->dev,"Coredump alloc failed.\n" ); err = -ENOMEM ; goto err_out2; }
drivers/net/ethernet/rdc/r6040.c +1 -2
@@ -1192,9 +1192,8 @@ static int r6040_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) lp->mii_bus->name ="r6040_eth_mii" ;snprintf (lp->mii_bus->id,MII_BUS_ID_SIZE ,"%s-%x" ,dev_name (&pdev->dev), card_idx); - lp->mii_bus->irq =kmalloc (sizeof (int )*PHY_MAX_ADDR ,GFP_KERNEL ); + lp->mii_bus->irq =kmalloc_array (PHY_MAX_ADDR ,sizeof (int ),GFP_KERNEL );if (!lp->mii_bus->irq) { -dev_err (&pdev->dev,"mii_bus irq allocation failed\n" ); err = -ENOMEM ; goto err_out_mdio; }
drivers/net/ethernet/renesas/sh_eth.c +4 -6
@@ -891,18 +891,16 @@ static int sh_eth_ring_init(struct net_device *ndev) mdp->rx_buf_sz +=NET_IP_ALIGN ;/* Allocate RX and TX skb rings */ - mdp->rx_skbuff =kmalloc (sizeof (*mdp->rx_skbuff) * mdp->num_rx_ring, -GFP_KERNEL ); + mdp->rx_skbuff =kmalloc_array (mdp->num_rx_ring, +sizeof (*mdp->rx_skbuff),GFP_KERNEL );if (!mdp->rx_skbuff) { -dev_err (&ndev->dev,"Cannot allocate Rx skb\n" ); ret = -ENOMEM ;return ret; } - mdp->tx_skbuff =kmalloc (sizeof (*mdp->tx_skbuff) * mdp->num_tx_ring, -GFP_KERNEL ); + mdp->tx_skbuff =kmalloc_array (mdp->num_tx_ring, +sizeof (*mdp->tx_skbuff),GFP_KERNEL );if (!mdp->tx_skbuff) { -dev_err (&ndev->dev,"Cannot allocate Tx skb\n" ); ret = -ENOMEM ; goto skb_ring_free; }
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +6 -5
@@ -530,17 +530,18 @@ static void init_dma_desc_rings(struct net_device *dev)DBG (probe,INFO ,"stmmac: txsize %d, rxsize %d, bfsize %d\n" , txsize, rxsize, bfsize); - priv->rx_skbuff_dma =kmalloc (rxsize *sizeof (dma_addr_t),GFP_KERNEL ); - priv->rx_skbuff = -kmalloc (sizeof (struct sk_buff *) * rxsize,GFP_KERNEL ); + priv->rx_skbuff_dma =kmalloc_array (rxsize,sizeof (dma_addr_t), +GFP_KERNEL ); + priv->rx_skbuff =kmalloc_array (rxsize,sizeof (struct sk_buff *), +GFP_KERNEL ); priv->dma_rx = (struct dma_desc *)dma_alloc_coherent (priv->device, rxsize *sizeof (struct dma_desc ), &priv->dma_rx_phy,GFP_KERNEL ); - priv->tx_skbuff =kmalloc (sizeof (struct sk_buff *) * txsize, -GFP_KERNEL ); + priv->tx_skbuff =kmalloc_array (txsize,sizeof (struct sk_buff *), +GFP_KERNEL ); priv->dma_tx = (struct dma_desc *)dma_alloc_coherent(priv->device, txsize *
drivers/net/ethernet/sun/niu.c +1 -1
@@ -4342,7 +4342,7 @@ static int niu_alloc_rx_ring_info(struct niu *np, {BUILD_BUG_ON (sizeof (struct rxdma_mailbox ) !=64 ); - rp->rxhash =kzalloc (MAX_RBR_RING_SIZE *sizeof (struct page *), + rp->rxhash =kcalloc (MAX_RBR_RING_SIZE ,sizeof (struct page *),GFP_KERNEL );if (!rp->rxhash)return -ENOMEM ;
drivers/net/ethernet/ti/cpsw.c +3 -5
@@ -1061,12 +1061,10 @@ static int cpsw_probe_dt(struct cpsw_platform_data *data, } data->cpts_clock_shift = prop; - data->slave_data =kzalloc (sizeof (struct cpsw_slave_data ) * - data->slaves,GFP_KERNEL ); -if (!data->slave_data) { -pr_err ("Could not allocate slave memory.\n" ); + data->slave_data =kcalloc (data->slaves,sizeof (struct cpsw_slave_data ), +GFP_KERNEL ); +if (!data->slave_data)return -EINVAL ; - }if (of_property_read_u32 (node,"cpdma_channels" , &prop)) {pr_err ("Missing cpdma_channels property in the DT.\n" );
drivers/net/ethernet/ti/davinci_mdio.c +1 -3
@@ -320,10 +320,8 @@ static int davinci_mdio_probe(struct platform_device *pdev)int ret, addr; data =kzalloc (sizeof (*data),GFP_KERNEL ); -if (!data) { -dev_err (dev,"failed to alloc device data\n" ); +if (!data)return -ENOMEM ; - } data->bus =mdiobus_alloc ();if (!data->bus) {
drivers/net/ethernet/xilinx/ll_temac_main.c +2 -4
@@ -238,11 +238,9 @@ static int temac_dma_bd_init(struct net_device *ndev)int i; lp->rx_skb =kcalloc (RX_BD_NUM ,sizeof (*lp->rx_skb),GFP_KERNEL ); -if (!lp->rx_skb) { -dev_err (&ndev->dev, -"can't allocate memory for DMA RX buffer\n" ); +if (!lp->rx_skb) goto out; - } +/* allocate the tx and rx ring buffer descriptors. */ /* returns a virtual address and a physical address. */ lp->tx_bd_v = dma_alloc_coherent(ndev->dev.parent,
Signature · 1 line
1.8.0.dirty
PATCH 4/8 drivers: net: usb: Remove unnecessary alloc/OOM messages
In reply to Joe Perchesalloc failures already get standardized OOM
messages and a dump_stack.
--- drivers/net/usb/ax88172a.c | 6 ++---- drivers/net/usb/hso.c | 25 +++++++------------------ drivers/net/usb/sierra_net.c | 10 +++------- drivers/net/usb/smsc75xx.c | 6 ++---- drivers/net/usb/smsc95xx.c | 6 ++---- drivers/net/usb/usbnet.c | 5 +---- 6 files changed, 17 insertions(+), 41 deletions(-)
drivers/net/usb/ax88172a.c +2 -4
@@ -117,7 +117,6 @@ static int ax88172a_init_mdio(struct usbnet *dev) priv->mdio->irq =kzalloc (sizeof (int ) *PHY_MAX_ADDR ,GFP_KERNEL );if (!priv->mdio->irq) { -netdev_err (dev->net,"Could not allocate mdio->irq\n" ); ret = -ENOMEM ; goto mfree; }
@@ -236,10 +235,9 @@ static int ax88172a_bind(struct usbnet *dev, struct usb_interface *intf)usbnet_get_endpoints (dev, intf); priv =kzalloc (sizeof (*priv),GFP_KERNEL ); -if (!priv) { -netdev_err (dev->net,"Could not allocate memory for private data\n" ); +if (!priv)return -ENOMEM ; - } + dev->driver_priv = priv;/* Get the MAC address */
drivers/net/usb/hso.c +7 -18
@@ -2315,10 +2315,8 @@ static int hso_serial_common_create(struct hso_serial *serial, int num_urbs, serial->rx_urb[i]->transfer_buffer_length =0 ; serial->rx_data[i] =kzalloc (serial->rx_data_length,GFP_KERNEL ); -if (!serial->rx_data[i]) { -dev_err (dev,"%s - Out of memory\n" , __func__); +if (!serial->rx_data[i]) goto exit; - } }/* TX, allocate urb and initialize */
@@ -2334,15 +2332,12 @@ static int hso_serial_common_create(struct hso_serial *serial, int num_urbs, serial->tx_buffer_count =0 ; serial->tx_data_length = tx_size; serial->tx_data =kzalloc (serial->tx_data_length,GFP_KERNEL ); -if (!serial->tx_data) { -dev_err (dev,"%s - Out of memory\n" , __func__); +if (!serial->tx_data) goto exit; - } + serial->tx_buffer =kzalloc (serial->tx_data_length,GFP_KERNEL ); -if (!serial->tx_buffer) { -dev_err (dev,"%s - Out of memory\n" , __func__); +if (!serial->tx_buffer) goto exit; - }return 0 ; exit:
@@ -2578,10 +2573,8 @@ static struct hso_device *hso_create_net_device(struct usb_interface *interface, } hso_net->mux_bulk_rx_buf_pool[i] =kzalloc (MUX_BULK_RX_BUF_SIZE ,GFP_KERNEL ); -if (!hso_net->mux_bulk_rx_buf_pool[i]) { -dev_err (&interface->dev,"Could not allocate rx buf\n" ); +if (!hso_net->mux_bulk_rx_buf_pool[i]) goto exit; - } } hso_net->mux_bulk_tx_urb =usb_alloc_urb (0 ,GFP_KERNEL );if (!hso_net->mux_bulk_tx_urb) {
@@ -2589,10 +2582,8 @@ static struct hso_device *hso_create_net_device(struct usb_interface *interface, goto exit; } hso_net->mux_bulk_tx_buf =kzalloc (MUX_BULK_TX_BUF_SIZE ,GFP_KERNEL ); -if (!hso_net->mux_bulk_tx_buf) { -dev_err (&interface->dev,"Could not allocate tx buf\n" ); +if (!hso_net->mux_bulk_tx_buf) goto exit; - }add_net_device (hso_dev);
@@ -2816,10 +2807,8 @@ struct hso_shared_int *hso_create_shared_int(struct usb_interface *interface) mux->shared_intr_buf =kzalloc (le16_to_cpu (mux->intr_endp->wMaxPacketSize),GFP_KERNEL ); -if (!mux->shared_intr_buf) { -dev_err (&interface->dev,"Could not allocate intr buf?\n" ); +if (!mux->shared_intr_buf) goto exit; - }mutex_init (&mux->shared_int_lock);
drivers/net/usb/sierra_net.c +3 -7
@@ -459,11 +459,9 @@ static void sierra_net_kevent(struct work_struct *work)/* Query the modem for the LSI message */ buf =kzalloc (SIERRA_NET_USBCTL_BUF_LEN ,GFP_KERNEL ); -if (!buf) { -netdev_err (dev->net, -"failed to allocate buf for LS msg\n" ); +if (!buf)return ; - } + ifnum = priv->ifnum; len = usb_control_msg(dev->udev, usb_rcvctrlpipe(dev->udev, 0), USB_CDC_GET_ENCAPSULATED_RESPONSE,
@@ -686,10 +684,8 @@ static int sierra_net_bind(struct usbnet *dev, struct usb_interface *intf) }/* Initialize sierra private data */ priv =kzalloc (sizeof *priv,GFP_KERNEL ); -if (!priv) { -dev_err (&dev->udev->dev,"No memory" ); +if (!priv)return -ENOMEM ; - } priv->usbnet = dev; priv->ifnum = ifacenum;
drivers/net/usb/smsc75xx.c +2 -4
@@ -1393,13 +1393,11 @@ static int smsc75xx_bind(struct usbnet *dev, struct usb_interface *intf) } dev->data[0 ] = (unsigned long )kzalloc (sizeof (struct smsc75xx_priv ), -GFP_KERNEL ); +GFP_KERNEL ); pdata = (struct smsc75xx_priv *)(dev->data[0 ]); -if (!pdata) { -netdev_warn (dev->net,"Unable to allocate smsc75xx_priv\n" ); +if (!pdata)return -ENOMEM ; - } pdata->dev = dev;
drivers/net/usb/smsc95xx.c +2 -4
@@ -1116,13 +1116,11 @@ static int smsc95xx_bind(struct usbnet *dev, struct usb_interface *intf) } dev->data[0 ] = (unsigned long )kzalloc (sizeof (struct smsc95xx_priv ), -GFP_KERNEL ); +GFP_KERNEL ); pdata = (struct smsc95xx_priv *)(dev->data[0 ]); -if (!pdata) { -netdev_warn (dev->net,"Unable to allocate struct smsc95xx_priv\n" ); +if (!pdata)return -ENOMEM ; - }spin_lock_init (&pdata->mac_cr_lock);
drivers/net/usb/usbnet.c +1 -4
@@ -1815,11 +1815,8 @@ int usbnet_write_cmd_async(struct usbnet *dev, u8 cmd, u8 reqtype, } req =kmalloc (sizeof (struct usb_ctrlrequest ),GFP_ATOMIC ); -if (!req) { -netdev_err (dev->net,"Failed to allocate memory for %s\n" , - __func__); +if (!req) goto fail_free_buf; - } req->bRequestType = reqtype; req->bRequest = cmd;
Signature · 1 line
1.8.0.dirty
PATCH 5/8 wan: Remove unnecessary alloc/OOM messages
In reply to Joe Perchesalloc failures already get standardized OOM
messages and a dump_stack.
Hoist assigns from if tests.
--- drivers/net/wan/cosa.c | 9 ++++----- drivers/net/wan/farsync.c | 6 ++---- drivers/net/wan/hdlc.c | 9 ++++----- drivers/net/wan/x25_asy.c | 1 - 4 files changed, 10 insertions(+), 15 deletions(-)
drivers/net/wan/cosa.c +4 -5
@@ -795,8 +795,8 @@ static ssize_t cosa_read(struct file *file,if (mutex_lock_interruptible (&chan->rlock))return -ERESTARTSYS ; -if ((chan->rxdata =kmalloc (COSA_MTU ,GFP_DMA |GFP_KERNEL )) ==NULL ) { -pr_info ("%s: cosa_read() - OOM\n" , cosa->name); + chan->rxdata =kmalloc (COSA_MTU ,GFP_DMA |GFP_KERNEL ); +if (chan->rxdata ==NULL ) {mutex_unlock (&chan->rlock);return -ENOMEM ; }
@@ -874,9 +874,8 @@ static ssize_t cosa_write(struct file *file, count =COSA_MTU ;/* Allocate the buffer */ -if ((kbuf =kmalloc (count,GFP_KERNEL |GFP_DMA )) ==NULL ) { -pr_notice ("%s: cosa_write() OOM - dropping packet\n" , - cosa->name); + kbuf =kmalloc (count,GFP_KERNEL |GFP_DMA ); +if (kbuf ==NULL ) {up (&chan->wsem);return -ENOMEM ; }
drivers/net/wan/farsync.c +2 -4
@@ -2448,11 +2448,9 @@ fst_add_one(struct pci_dev *pdev, const struct pci_device_id *ent) }/* Allocate driver private data */ - card =kzalloc (sizeof (struct fst_card_info ),GFP_KERNEL ); -if (card ==NULL ) { -pr_err ("FarSync card found but insufficient memory for driver storage\n" ); + card =kzalloc (sizeof (struct fst_card_info ),GFP_KERNEL ); +if (card ==NULL )return -ENOMEM ; - }/* Try to enable the device */ if ((err =pci_enable_device (pdev)) !=0 ) {
drivers/net/wan/hdlc.c +4 -5
@@ -280,14 +280,13 @@ int attach_hdlc_protocol(struct net_device *dev, struct hdlc_proto *proto,if (!try_module_get (proto->module))return -ENOSYS ; -if (size) -if ((dev_to_hdlc (dev)->state =kmalloc (size, -GFP_KERNEL )) ==NULL ) { -netdev_warn (dev, -"Memory squeeze on hdlc_proto_attach()\n" ); +if (size) { +dev_to_hdlc (dev)->state =kmalloc (size,GFP_KERNEL ); +if (dev_to_hdlc (dev)->state ==NULL ) {module_put (proto->module);return -ENOBUFS ; } + }dev_to_hdlc (dev)->proto = proto;return 0 ; }
drivers/net/wan/x25_asy.c +0 -1
@@ -128,7 +128,6 @@ static int x25_asy_change_mtu(struct net_device *dev, int newmtu) rbuff =kmalloc (len +4 ,GFP_ATOMIC );if (xbuff ==NULL || rbuff ==NULL ) { -netdev_warn (dev,"unable to grow X.25 buffers, MTU change cancelled\n" );kfree (xbuff);kfree (rbuff);return -ENOMEM ;
Signature · 1 line
1.8.0.dirty
Re: [PATCH 5/8] wan: Remove unnecessary alloc/OOM messages
Quoted 5 lines · Joe Perches
alloc failures already get standardized OOM
messages and adump_stack.Hoist assigns from if tests.
Quoted 7 lines
Signed-off-by Joe Perches <[email protected]>--- drivers/net/wan/cosa.c | 9 ++++----- drivers/net/wan/farsync.c | 6 ++---- drivers/net/wan/hdlc.c | 9 ++++----- drivers/net/wan/x25_asy.c | 1 - 4 files changed, 10 insertions(+), 15 deletions(-)
Good to see.
Signature · 1 line
Krzysztof Halasa
PATCH 6/8 wimax: Remove unnecessary alloc/OOM messages, alloc cleanups
In reply to Joe Perchesalloc failures already get standardized OOM
messages and a dump_stack.
Convert kzalloc's with multiplies to kcalloc.
Remove now unused size variables.
--- drivers/net/wimax/i2400m/rx.c | 16 +++++----------- drivers/net/wimax/i2400m/usb-notif.c | 1 - 2 files changed, 5 insertions(+), 12 deletions(-)
drivers/net/wimax/i2400m/rx.c +5 -11
@@ -1351,24 +1351,18 @@ int i2400m_rx_setup(struct i2400m *i2400m) i2400m->rx_reorder = i2400m_rx_reorder_disabled?0 :1 ;if (i2400m->rx_reorder) {unsigned itr; -size_t size;struct i2400m_roq_log *rd; result = -ENOMEM ; - size =sizeof (i2400m->rx_roq[0 ]) * (I2400M_RO_CIN +1 ); - i2400m->rx_roq =kzalloc (size,GFP_KERNEL ); -if (i2400m->rx_roq ==NULL ) { -dev_err (dev,"RX: cannot allocate %zu bytes for " -"reorder queues\n" , size); + i2400m->rx_roq =kcalloc (I2400M_RO_CIN +1 , +sizeof (i2400m->rx_roq[0 ]),GFP_KERNEL ); +if (i2400m->rx_roq ==NULL ) goto error_roq_alloc; - } - size =sizeof (*i2400m->rx_roq[0 ].log) * (I2400M_RO_CIN +1 ); - rd =kzalloc (size,GFP_KERNEL ); + rd =kcalloc (I2400M_RO_CIN +1 ,sizeof (*i2400m->rx_roq[0 ].log), +GFP_KERNEL );if (rd ==NULL ) { -dev_err (dev,"RX: cannot allocate %zu bytes for " -"reorder queues log areas\n" , size); result = -ENOMEM ; goto error_roq_log_alloc; }
drivers/net/wimax/i2400m/usb-notif.c +0 -1
@@ -199,7 +199,6 @@ int i2400mu_notification_setup(struct i2400mu *i2400mu)d_fnstart (4 , dev,"(i2400m %p)\n" , i2400mu); buf =kmalloc (I2400MU_MAX_NOTIFICATION_LEN ,GFP_KERNEL |GFP_DMA );if (buf ==NULL ) { -dev_err (dev,"notification: buffer allocation failed\n" ); ret = -ENOMEM ; goto error_buf_alloc; }
Signature · 1 line
1.8.0.dirty
PATCH 7/8 wireless: Remove unnecessary alloc/OOM messages, alloc cleanups
In reply to Joe Perchesalloc failures already get standardized OOM messages and a dump_stack.
Convert kzalloc's with multiplies to kcalloc. Convert kmalloc's with multiplies to kmalloc_array. Remove now unused variables.
Remove unnecessary memset after kzalloc->kcalloc. Whitespace cleanups for these changes.
--- drivers/net/wireless/airo_cs.c | 5 ++-- drivers/net/wireless/at76c50x-usb.c | 4 +--- .../net/wireless/ath/ath9k/dfs_pattern_detector.c | 6 ++--- drivers/net/wireless/atmel_cs.c | 5 ++-- drivers/net/wireless/ipw2x00/ipw2100.c | 9 +++----- drivers/net/wireless/libertas/cfg.c | 4 +--- drivers/net/wireless/mwifiex/11n.c | 5 +--- drivers/net/wireless/mwifiex/11n_rxreorder.c | 5 +--- drivers/net/wireless/mwifiex/cfg80211.c | 4 +--- drivers/net/wireless/mwifiex/cmdevt.c | 11 +++------ drivers/net/wireless/mwifiex/init.c | 5 +--- drivers/net/wireless/mwifiex/scan.c | 27 +++++++--------------- drivers/net/wireless/mwifiex/sdio.c | 11 ++------- drivers/net/wireless/mwifiex/sta_ioctl.c | 11 +++------ drivers/net/wireless/mwifiex/wmm.c | 7 ++---- drivers/net/wireless/orinoco/main.c | 16 ++++--------- drivers/net/wireless/p54/p54usb.c | 10 ++------ drivers/net/wireless/prism54/islpci_mgt.c | 14 ++++------- drivers/net/wireless/rndis_wlan.c | 5 +--- drivers/net/wireless/ti/wlcore/sdio.c | 4 +--- drivers/net/wireless/ti/wlcore/spi.c | 14 +++-------- drivers/net/wireless/zd1211rw/zd_usb.c | 1 - 22 files changed, 50 insertions(+), 133 deletions(-)
drivers/net/wireless/airo_cs.c +2 -3
@@ -69,10 +69,9 @@ static int airo_probe(struct pcmcia_device *p_dev)/* Allocate space for private device-specific data */ local =kzalloc (sizeof (local_info_t),GFP_KERNEL ); -if (!local) { -printk (KERN_ERR "airo_cs: no memory for new device\n" ); +if (!local)return -ENOMEM ; - } + p_dev->priv = local;return airo_config (p_dev);
drivers/net/wireless/at76c50x-usb.c +1 -3
@@ -2164,10 +2164,8 @@ static int at76_alloc_urbs(struct at76_priv *priv, buffer_size =sizeof (struct at76_tx_buffer ) +MAX_PADDING_SIZE ; priv->bulk_out_buffer =kmalloc (buffer_size,GFP_KERNEL ); -if (!priv->bulk_out_buffer) { -dev_err (&interface->dev,"cannot allocate output buffer\n" ); +if (!priv->bulk_out_buffer)return -ENOMEM ; - }at76_dbg (DBG_PROC_ENTRY ,"%s: EXIT" , __func__);
drivers/net/wireless/ath/ath9k/dfs_pattern_detector.c +3 -3
@@ -288,11 +288,11 @@ struct dfs_pattern_detector * dfs_pattern_detector_init(enum nl80211_dfs_regions region) {struct dfs_pattern_detector *dpd; + dpd =kmalloc (sizeof (*dpd),GFP_KERNEL ); -if (dpd ==NULL ) { -pr_err ("allocation of dfs_pattern_detector failed\n" ); +if (dpd ==NULL )return NULL ; - } + *dpd = default_dpd;INIT_LIST_HEAD (&dpd->channel_detectors);
drivers/net/wireless/atmel_cs.c +2 -3
@@ -79,10 +79,9 @@ static int atmel_probe(struct pcmcia_device *p_dev)/* Allocate space for private device-specific data */ local =kzalloc (sizeof (local_info_t),GFP_KERNEL ); -if (!local) { -printk (KERN_ERR "atmel_cs: no memory for new device\n" ); +if (!local)return -ENOMEM ; - } + p_dev->priv = local;return atmel_config (p_dev);
drivers/net/wireless/ipw2x00/ipw2100.c +3 -6
@@ -4478,13 +4478,10 @@ static int ipw2100_tx_allocate(struct ipw2100_priv *priv)return err; } - priv->tx_buffers = -kmalloc (TX_PENDED_QUEUE_LENGTH *sizeof (struct ipw2100_tx_packet ), -GFP_ATOMIC ); + priv->tx_buffers =kmalloc_array (TX_PENDED_QUEUE_LENGTH , +sizeof (struct ipw2100_tx_packet ), +GFP_ATOMIC );if (!priv->tx_buffers) { - printk(KERN_ERR DRV_NAME -": %s: alloc failed form tx buffers.\n" , - priv->net_dev->name);bd_queue_free (priv, &priv->tx_queue);return -ENOMEM ; }
drivers/net/wireless/libertas/cfg.c +1 -3
@@ -2081,10 +2081,8 @@ struct wireless_dev *lbs_cfg_alloc(struct device *dev)lbs_deb_enter (LBS_DEB_CFG80211 ); wdev =kzalloc (sizeof (struct wireless_dev ),GFP_KERNEL ); -if (!wdev) { -dev_err (dev,"cannot allocate wireless device\n" ); +if (!wdev)return ERR_PTR (-ENOMEM ); - } wdev->wiphy =wiphy_new (&lbs_cfg80211_ops,sizeof (struct lbs_private ));if (!wdev->wiphy) {
drivers/net/wireless/mwifiex/11n.c +1 -4
@@ -494,11 +494,8 @@ void mwifiex_create_ba_tbl(struct mwifiex_private *priv, u8 *ra, int tid,if (!mwifiex_get_ba_tbl (priv, tid, ra)) { new_node =kzalloc (sizeof (struct mwifiex_tx_ba_stream_tbl ),GFP_ATOMIC ); -if (!new_node) { -dev_err (priv->adapter->dev, -"%s: failed to alloc new_node\n" , __func__); +if (!new_node)return ; - }INIT_LIST_HEAD (&new_node->list);
drivers/net/wireless/mwifiex/11n_rxreorder.c +1 -4
@@ -272,11 +272,8 @@ mwifiex_11n_create_rx_reorder_tbl(struct mwifiex_private *priv, u8 *ta, }/* if !tbl then create one */ new_node =kzalloc (sizeof (struct mwifiex_rx_reorder_tbl ),GFP_KERNEL ); -if (!new_node) { -dev_err (priv->adapter->dev,"%s: failed to alloc new_node\n" , - __func__); +if (!new_node)return ; - }INIT_LIST_HEAD (&new_node->list); new_node->tid = tid;
drivers/net/wireless/mwifiex/cfg80211.c +1 -3
@@ -1820,10 +1820,8 @@ mwifiex_cfg80211_scan(struct wiphy *wiphy, priv->user_scan_cfg =kzalloc (sizeof (struct mwifiex_user_scan_cfg ),GFP_KERNEL ); -if (!priv->user_scan_cfg) { -dev_err (priv->adapter->dev,"failed to alloc scan_req\n" ); +if (!priv->user_scan_cfg)return -ENOMEM ; - } priv->scan_request = request;
drivers/net/wireless/mwifiex/cmdevt.c +3 -8
@@ -334,20 +334,15 @@ static int mwifiex_dnld_sleep_confirm_cmd(struct mwifiex_adapter *adapter)int mwifiex_alloc_cmd_buffer (struct mwifiex_adapter *adapter) {struct cmd_ctrl_node *cmd_array; -u32 buf_size;u32 i;/* Allocate and initialize struct cmd_ctrl_node */ - buf_size =sizeof (struct cmd_ctrl_node ) *MWIFIEX_NUM_OF_CMD_BUFFER ; - cmd_array =kzalloc (buf_size,GFP_KERNEL ); -if (!cmd_array) { -dev_err (adapter->dev,"%s: failed to alloc cmd_array\n" , - __func__); + cmd_array =kcalloc (MWIFIEX_NUM_OF_CMD_BUFFER , +sizeof (struct cmd_ctrl_node ),GFP_KERNEL ); +if (!cmd_array)return -ENOMEM ; - } adapter->cmd_pool = cmd_array; -memset (adapter->cmd_pool,0 , buf_size);/* Allocate and initialize command buffers */ for (i =0 ; i <MWIFIEX_NUM_OF_CMD_BUFFER ; i++) {
drivers/net/wireless/mwifiex/init.c +1 -4
@@ -39,11 +39,8 @@ static int mwifiex_add_bss_prio_tbl(struct mwifiex_private *priv)unsigned long flags; bss_prio =kzalloc (sizeof (struct mwifiex_bss_prio_node ),GFP_KERNEL ); -if (!bss_prio) { -dev_err (adapter->dev,"%s: failed to alloc bss_prio\n" , - __func__); +if (!bss_prio)return -ENOMEM ; - } bss_prio->priv = priv;INIT_LIST_HEAD (&bss_prio->list);
drivers/net/wireless/mwifiex/scan.c +8 -19
@@ -1309,7 +1309,6 @@ int mwifiex_scan_networks(struct mwifiex_private *priv,struct cmd_ctrl_node *cmd_node;union mwifiex_scan_cmd_config_tlv *scan_cfg_out;struct mwifiex_ie_types_chan_list_param_set *chan_list_out; -u32 buf_size;struct mwifiex_chan_scan_param_set *scan_chan_list;u8 filtered_scan;u8 scan_current_chan_only;
@@ -1332,18 +1331,16 @@ int mwifiex_scan_networks(struct mwifiex_private *priv,spin_unlock_irqrestore (&adapter->mwifiex_cmd_lock, flags); scan_cfg_out =kzalloc (sizeof (union mwifiex_scan_cmd_config_tlv ), -GFP_KERNEL ); +GFP_KERNEL );if (!scan_cfg_out) { -dev_err (adapter->dev,"failed to alloc scan_cfg_out\n" ); ret = -ENOMEM ; goto done; } - buf_size =sizeof (struct mwifiex_chan_scan_param_set ) * -MWIFIEX_USER_SCAN_CHAN_MAX ; - scan_chan_list =kzalloc (buf_size,GFP_KERNEL ); + scan_chan_list =kcalloc (MWIFIEX_USER_SCAN_CHAN_MAX , +sizeof (struct mwifiex_chan_scan_param_set ), +GFP_KERNEL );if (!scan_chan_list) { -dev_err (adapter->dev,"failed to alloc scan_chan_list\n" );kfree (scan_cfg_out); ret = -ENOMEM ; goto done;
@@ -1461,12 +1458,9 @@ static int mwifiex_update_curr_bss_params(struct mwifiex_private *priv,unsigned long flags;/* Allocate and fill new bss descriptor */ - bss_desc =kzalloc (sizeof (struct mwifiex_bssdescriptor ), -GFP_KERNEL ); -if (!bss_desc) { -dev_err (priv->adapter->dev," failed to alloc bss_desc\n" ); + bss_desc =kzalloc (sizeof (struct mwifiex_bssdescriptor ),GFP_KERNEL ); +if (!bss_desc)return -ENOMEM ; - } ret =mwifiex_fill_new_bss_desc (priv, bss, bss_desc);if (ret)
@@ -1880,10 +1874,8 @@ static int mwifiex_scan_specific_ssid(struct mwifiex_private *priv, } scan_cfg =kzalloc (sizeof (struct mwifiex_user_scan_cfg ),GFP_KERNEL ); -if (!scan_cfg) { -dev_err (adapter->dev,"failed to alloc scan_cfg\n" ); +if (!scan_cfg)return -ENOMEM ; - } scan_cfg->ssid_list = req_ssid; scan_cfg->num_ssids =1 ;
@@ -1997,11 +1989,8 @@ mwifiex_save_curr_bcn(struct mwifiex_private *priv)kfree (priv->curr_bcn_buf); priv->curr_bcn_buf =kmalloc (curr_bss->beacon_buf_size,GFP_ATOMIC ); -if (!priv->curr_bcn_buf) { -dev_err (priv->adapter->dev, -"failed to alloc curr_bcn_buf\n" ); +if (!priv->curr_bcn_buf)return ; - } } memcpy(priv->curr_bcn_buf, curr_bss->beacon_buf,
drivers/net/wireless/mwifiex/sdio.c +2 -9
@@ -716,11 +716,8 @@ static int mwifiex_prog_fw_w_helper(struct mwifiex_adapter *adapter,/* Assume that the allocated buffer is 8-byte aligned */ fwbuf =kzalloc (MWIFIEX_UPLD_SIZE ,GFP_KERNEL ); -if (!fwbuf) { -dev_err (adapter->dev, -"unable to alloc buffer for FW. Terminating dnld\n" ); +if (!fwbuf)return -ENOMEM ; - }/* Perform firmware data transfer */ do {
@@ -1518,7 +1515,6 @@ static int mwifiex_alloc_sdio_mpa_buffers(struct mwifiex_adapter *adapter, card->mpa_tx.buf =kzalloc (mpa_tx_buf_size,GFP_KERNEL );if (!card->mpa_tx.buf) { -dev_err (adapter->dev,"could not alloc buffer for MP-A TX\n" ); ret =-1 ; goto error; }
@@ -1527,7 +1523,6 @@ static int mwifiex_alloc_sdio_mpa_buffers(struct mwifiex_adapter *adapter, card->mpa_rx.buf =kzalloc (mpa_rx_buf_size,GFP_KERNEL );if (!card->mpa_rx.buf) { -dev_err (adapter->dev,"could not alloc buffer for MP-A RX\n" ); ret =-1 ; goto error; }
@@ -1680,10 +1675,8 @@ static int mwifiex_init_sdio(struct mwifiex_adapter *adapter)/* Allocate buffers for SDIO MP-A */ card->mp_regs =kzalloc (MAX_MP_REGS ,GFP_KERNEL ); -if (!card->mp_regs) { -dev_err (adapter->dev,"failed to alloc mp_regs\n" ); +if (!card->mp_regs)return -ENOMEM ; - } ret = mwifiex_alloc_sdio_mpa_buffers(adapter, SDIO_MP_TX_AGGR_DEF_BUF_SIZE,
drivers/net/wireless/mwifiex/sta_ioctl.c +3 -8
@@ -266,11 +266,9 @@ int mwifiex_bss_start(struct mwifiex_private *priv, struct cfg80211_bss *bss,/* Allocate and fill new bss descriptor */ bss_desc =kzalloc (sizeof (struct mwifiex_bssdescriptor ), -GFP_KERNEL ); -if (!bss_desc) { -dev_err (priv->adapter->dev," failed to alloc bss_desc\n" ); +GFP_KERNEL ); +if (!bss_desc)return -ENOMEM ; - } ret =mwifiex_fill_new_bss_desc (priv, bss, bss_desc);if (ret)
@@ -636,11 +634,8 @@ int mwifiex_set_tx_power(struct mwifiex_private *priv, } } buf =kzalloc (MWIFIEX_SIZE_OF_CMD_BUFFER ,GFP_KERNEL ); -if (!buf) { -dev_err (priv->adapter->dev,"%s: failed to alloc cmd buffer\n" , - __func__); +if (!buf)return -ENOMEM ; - } txp_cfg = (struct host_cmd_ds_txpwr_cfg *) buf; txp_cfg->action =cpu_to_le16 (HostCmd_ACT_GEN_SET);
drivers/net/wireless/mwifiex/wmm.c +2 -5
@@ -109,12 +109,9 @@ mwifiex_wmm_allocate_ralist_node(struct mwifiex_adapter *adapter, u8 *ra)struct mwifiex_ra_list_tbl *ra_list; ra_list =kzalloc (sizeof (struct mwifiex_ra_list_tbl ),GFP_ATOMIC ); - -if (!ra_list) { -dev_err (adapter->dev,"%s: failed to alloc ra_list\n" , - __func__); +if (!ra_list)return NULL ; - } +INIT_LIST_HEAD (&ra_list->list);skb_queue_head_init (&ra_list->skb_head);
drivers/net/wireless/orinoco/main.c +5 -11
@@ -853,12 +853,8 @@ void __orinoco_ev_rx(struct net_device *dev, struct hermes *hw)int err; desc =kmalloc (sizeof (*desc),GFP_ATOMIC ); -if (!desc) { -printk (KERN_WARNING -"%s: Can't allocate space for RX descriptor\n" , - dev->name); +if (!desc) goto update_stats; - } rxfid =hermes_read_regn (hw,RXFID );
@@ -1336,10 +1332,9 @@ static void qbuf_scan(struct orinoco_private *priv, void *buf,unsigned long flags; sd =kmalloc (sizeof (*sd),GFP_ATOMIC ); -if (!sd) { -printk (KERN_ERR "%s: failed to alloc memory\n" , __func__); +if (!sd)return ; - } + sd->buf = buf; sd->len = len; sd->type = type;
@@ -1357,10 +1352,9 @@ static void qabort_scan(struct orinoco_private *priv)unsigned long flags; sd =kmalloc (sizeof (*sd),GFP_ATOMIC ); -if (!sd) { -printk (KERN_ERR "%s: failed to alloc memory\n" , __func__); +if (!sd)return ; - } + sd->len =-1 ;/* Abort */ spin_lock_irqsave (&priv->scan_lock, flags);
drivers/net/wireless/p54/p54usb.c +2 -8
@@ -510,11 +510,8 @@ static int p54u_upload_firmware_3887(struct ieee80211_hw *dev)return err; tmp = buf =kmalloc (P54U_FW_BLOCK ,GFP_KERNEL ); -if (!buf) { -dev_err (&priv->udev->dev,"(p54usb) cannot allocate firmware" -"upload buffer!\n" ); +if (!buf)return -ENOMEM ; - } left = block_size =min ((size_t )P54U_FW_BLOCK , priv->fw->size);strcpy (buf, p54u_firmware_upload_3887);
@@ -637,11 +634,8 @@ static int p54u_upload_firmware_net2280(struct ieee80211_hw *dev)const u8 *data; buf =kmalloc (512 ,GFP_KERNEL ); -if (!buf) { -dev_err (&priv->udev->dev,"(p54usb) firmware buffer " -"alloc failed!\n" ); +if (!buf)return -ENOMEM ; - }#define P54U_WRITE (type, addr, data) \ do {\
drivers/net/wireless/prism54/islpci_mgt.c +4 -10
@@ -123,11 +123,8 @@ islpci_mgmt_rx_fill(struct net_device *ndev)if (buf->mem ==NULL ) { buf->mem =kmalloc (MGMT_FRAME_SIZE ,GFP_ATOMIC ); -if (!buf->mem) { -printk (KERN_WARNING -"Error allocating management frame.\n" ); +if (!buf->mem)return -ENOMEM ; - } buf->size =MGMT_FRAME_SIZE ; }if (buf->pci_addr ==0 ) {
@@ -356,14 +353,11 @@ islpci_mgt_receive(struct net_device *ndev)/* Determine frame size, skipping OID_INL_TUNNEL headers. */ size =PIMFOR_HEADER_SIZE + header->length; - frame =kmalloc (sizeof (struct islpci_mgmtframe ) + size, + frame =kmalloc (sizeof (struct islpci_mgmtframe ) + size,GFP_ATOMIC ); -if (!frame) { -printk (KERN_WARNING -"%s: Out of memory, cannot handle oid 0x%08x\n" , - ndev->name, header->oid); +if (!frame)continue ; - } + frame->ndev = ndev;memcpy (&frame->buf, header, size); frame->header = (pimfor_header_t *) frame->buf;
drivers/net/wireless/rndis_wlan.c +1 -4
@@ -1621,11 +1621,8 @@ static void set_multicast_list(struct usbnet *usbdev) }else if (mc_count) {int i =0 ; - mc_addrs =kmalloc (mc_count *ETH_ALEN ,GFP_ATOMIC ); + mc_addrs =kmalloc_array (mc_count,ETH_ALEN ,GFP_ATOMIC );if (!mc_addrs) { -netdev_warn (usbdev->net, -"couldn't alloc %d bytes of memory\n" , - mc_count *ETH_ALEN );netif_addr_unlock_bh (usbdev->net);return ; }
drivers/net/wireless/ti/wlcore/sdio.c +1 -3
@@ -229,10 +229,8 @@ static int wl1271_probe(struct sdio_func *func,return -ENODEV ; glue =kzalloc (sizeof (*glue),GFP_KERNEL ); -if (!glue) { -dev_err (&func->dev,"can't allocate glue\n" ); +if (!glue) goto out; - } glue->dev = &func->dev;
drivers/net/wireless/ti/wlcore/spi.c +3 -11
@@ -87,11 +87,8 @@ static void wl12xx_spi_reset(struct device *child)struct spi_message m; cmd =kzalloc (WSPI_INIT_CMD_LEN ,GFP_KERNEL ); -if (!cmd) { -dev_err (child->parent, -"could not allocate cmd for spi reset\n" ); +if (!cmd)return ; - }memset (&t,0 ,sizeof (t));spi_message_init (&m);
@@ -115,11 +112,8 @@ static void wl12xx_spi_init(struct device *child)struct spi_message m; cmd =kzalloc (WSPI_INIT_CMD_LEN ,GFP_KERNEL ); -if (!cmd) { -dev_err (child->parent, -"could not allocate cmd for spi init\n" ); +if (!cmd)return ; - }memset (crc,0 ,sizeof (crc));memset (&t,0 ,sizeof (t));
@@ -340,10 +334,8 @@ static int wl1271_probe(struct spi_device *spi) pdata->ops = &spi_ops; glue =kzalloc (sizeof (*glue),GFP_KERNEL ); -if (!glue) { -dev_err (&spi->dev,"can't allocate glue\n" ); +if (!glue) goto out; - } glue->dev = &spi->dev;
drivers/net/wireless/zd1211rw/zd_usb.c +0 -1
@@ -155,7 +155,6 @@ static int upload_code(struct usb_device *udev,*/ p =kmalloc (MAX_TRANSFER_SIZE ,GFP_KERNEL );if (!p) { -dev_err (&udev->dev,"out of memory\n" ); r = -ENOMEM ; goto error; }
Signature · 1 line
1.8.0.dirty
PATCH 8/8 drivers:net:misc: Remove unnecessary alloc/OOM messages
In reply to Joe Perchesalloc failures already get standardized OOM
messages and a dump_stack.
--- drivers/net/hamradio/dmascc.c | 7 +------ drivers/net/phy/spi_ks8995.c | 4 +--- drivers/net/virtio_net.c | 4 +--- 3 files changed, 3 insertions(+), 12 deletions(-)
drivers/net/hamradio/dmascc.c +1 -6
@@ -463,13 +463,8 @@ static int __init setup_adapter(int card_base, int type, int n)/* Initialize what is necessary for write_scc and write_scc_data */ info =kzalloc (sizeof (struct scc_info ),GFP_KERNEL |GFP_DMA ); -if (!info) { -printk (KERN_ERR "dmascc: " -"could not allocate memory for %s at %#3x\n" , - hw[type].name, card_base); +if (!info) goto out; - } - info->dev[0 ] =alloc_netdev (0 ,"" , dev_setup);if (!info->dev[0 ]) {
drivers/net/phy/spi_ks8995.c +1 -3
@@ -275,10 +275,8 @@ static int ks8995_probe(struct spi_device *spi) pdata = spi->dev.platform_data; ks =kzalloc (sizeof (*ks),GFP_KERNEL ); -if (!ks) { -dev_err (&spi->dev,"no memory for private data\n" ); +if (!ks)return -ENOMEM ; - }mutex_init (&ks->lock); ks->pdata = pdata;
drivers/net/virtio_net.c +1 -3
@@ -976,10 +976,8 @@ static void virtnet_set_rx_mode(struct net_device *dev) buf =kzalloc (((uc_count + mc_count) *ETH_ALEN ) + (2 *sizeof (mac_data->entries)),GFP_ATOMIC ); mac_data = buf; -if (!buf) { -dev_warn (&dev->dev,"No memory for MAC address buffer\n" ); +if (!buf)return ; - }sg_init_table (sg,2 );
Signature · 1 line
1.8.0.dirty
Re: [PATCH 8/8] drivers:net:misc: Remove unnecessary alloc/OOM messages
Quoted 4 lines · Joe Perches
alloc failures already get standardized OOM
messages and adump_stack.Signed-off-by Joe Perches <[email protected]>
Why not, less code is always good.
Cheers,
Rusty.
David Miller
maintainerFrom: Joe Perches <[email protected]>
Date: Sun, 3 Feb 2013 19:28:07 -0800
Quoted 4 lines
Remove all the OOM messages that follow kernel alloc failures as there is already a generic equivalent to these messages in the mm subsystem.
Quoted 9 lines
Joe Perches (8):
caif: Remove unnecessary alloc/OOM messages
can: Remove unnecessary alloc/OOM messages
ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups
drivers: net: usb: Remove unnecessary alloc/OOM messages
wan: Remove unnecessary alloc/OOM messages
wimax: Remove unnecessary alloc/OOM messages, alloc cleanups
wireless: Remove unnecessary alloc/OOM messages, alloc cleanups drivers:net:misc: Remove unnecessary alloc/OOM messages
Series applied, thanks Joe.
PATCH 1/1 net: core: Remove unnecessary alloc/OOM messages
alloc failures already get standardized OOM
messages and a dump_stack.
--- net/core/dev.c | 14 +++++--------- net/core/netprio_cgroup.c | 4 +--- 2 files changed, 6 insertions(+), 12 deletions(-)
net/core/dev.c +5 -9
@@ -5958,10 +5958,9 @@ static int netif_alloc_rx_queues(struct net_device *dev)BUG_ON (count <1 ); rx =kcalloc (count,sizeof (struct netdev_rx_queue ),GFP_KERNEL ); -if (!rx) { -pr_err ("netdev: Unable to allocate %u rx queues\n" , count); +if (!rx)return -ENOMEM ; - } + dev->_rx = rx;for (i =0 ; i < count; i++)
@@ -5992,10 +5991,9 @@ static int netif_alloc_netdev_queues(struct net_device *dev)BUG_ON (count <1 ); tx =kcalloc (count,sizeof (struct netdev_queue ),GFP_KERNEL ); -if (!tx) { -pr_err ("netdev: Unable to allocate %u tx queues\n" , count); +if (!tx)return -ENOMEM ; - } + dev->_tx = tx;netdev_for_each_tx_queue (dev, netdev_init_one_queue,NULL );
@@ -6482,10 +6480,8 @@ struct net_device *alloc_netdev_mqs(int sizeof_priv, const char *name, alloc_size +=NETDEV_ALIGN -1 ; p =kzalloc (alloc_size,GFP_KERNEL ); -if (!p) { -pr_err ("alloc_netdev: Unable to allocate device\n" ); +if (!p)return NULL ; - } dev =PTR_ALIGN (p,NETDEV_ALIGN ); dev->padded = (char *)dev - (char *)p;
net/core/netprio_cgroup.c +1 -3
@@ -69,10 +69,8 @@ static int extend_netdev_table(struct net_device *dev, u32 target_idx)/* allocate & copy */ new =kzalloc (new_sz,GFP_KERNEL ); -if (!new) { -pr_warn ("Unable to alloc new priomap!\n" ); +if (!new)return -ENOMEM ; - }if (old) memcpy(new->priomap, old->priomap,
Re: [PATCH] net: core: Remove unnecessary alloc/OOM messages
From: Joe Perches <[email protected]>
Date: Mon, 04 Feb 2013 18:48:16 -0800
Quoted 4 lines
alloc failures already get standardized OOM
messages and adump_stack.Signed-off-by Joe Perches <[email protected]>
Applied.