Re: [kbuild] net: bcmgenet: add main driver file

2014-02-18 Thread Dan Carpenter
[ Oops.  I sent the last one too quickly.  Here is another I should have
  included. ]

Hello Florian Fainelli,

This is a semi-automatic email about new static checker warnings.

The patch 1c1008c793fa: net: bcmgenet: add main driver file from
Feb 13, 2014, leads to the following Smatch complaint:

drivers/net/ethernet/broadcom/genet/bcmgenet.c:2171 bcmgenet_close()
 error: we previously assumed 'priv-phydev' could be null (see line 
2137)

drivers/net/ethernet/broadcom/genet/bcmgenet.c
  2136  
  2137  if (priv-phydev)

Check.

  2138  phy_stop(priv-phydev);
  2139  
  2140  /* Disable MAC receive */
  2141  reg = bcmgenet_umac_readl(priv, UMAC_CMD);
  2142  reg = ~CMD_RX_EN;
  2143  bcmgenet_umac_writel(priv, reg, UMAC_CMD);
  2144  
  2145  netif_tx_stop_all_queues(dev);
  2146  
  2147  ret = bcmgenet_dma_teardown(priv);
  2148  if (ret)
  2149  return ret;
  2150  
  2151  /* Disable MAC transmit. TX DMA disabled have to done before 
this */
  2152  reg = bcmgenet_umac_readl(priv, UMAC_CMD);
  2153  reg = ~CMD_TX_EN;
  2154  bcmgenet_umac_writel(priv, reg, UMAC_CMD);
  2155  
  2156  napi_disable(priv-napi);
  2157  
  2158  /* tx reclaim */
  2159  bcmgenet_tx_reclaim_all(dev);
  2160  bcmgenet_fini_dma(priv);
  2161  
  2162  free_irq(priv-irq0, priv);
  2163  free_irq(priv-irq1, priv);
  2164  
  2165  /* Wait for pending work items to complete - we are stopping
  2166   * the clock now. Since interrupts are disabled, no new work
  2167   * will be scheduled.
  2168   */
  2169  cancel_work_sync(priv-bcmgenet_irq_work);
  2170  
  2171  if (phy_is_internal(priv-phydev))

Unchecked dereference.

  2172  bcmgenet_power_down(priv, GENET_POWER_PASSIVE);
  2173  

regards,
dan carpenter
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild


Re: [kbuild] net: bcmgenet: add main driver file

2014-02-18 Thread Dan Carpenter
Hello Florian Fainelli,

This is a semi-automatic email about new static checker warnings.

The patch 1c1008c793fa: net: bcmgenet: add main driver file from
Feb 13, 2014, leads to the following Smatch complaint:

drivers/net/ethernet/broadcom/genet/bcmgenet.c:2061 bcmgenet_open()
 warn: variable dereferenced before check 'priv-phydev' (see line 2014)

drivers/net/ethernet/broadcom/genet/bcmgenet.c
  2052  priv-crc_fwd_en = !!(reg  CMD_CRC_FWD);
  2053  
  2054  device_set_wakeup_capable(dev-dev, 1);
  2055  
  2056  if (phy_is_internal(priv-phydev))

Dereference.

  2057  bcmgenet_power_up(priv, GENET_POWER_PASSIVE);
  2058  
  2059  netif_tx_start_all_queues(dev);
  2060  
  2061  if (priv-phydev)

Check.

  2062  phy_start(priv-phydev);
  2063  

regards,
dan carpenter
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild