1. 27 4月, 2009 1 次提交
  2. 14 4月, 2009 1 次提交
  3. 11 4月, 2009 1 次提交
  4. 22 1月, 2009 1 次提交
  5. 15 1月, 2009 1 次提交
  6. 23 12月, 2008 1 次提交
  7. 04 11月, 2008 1 次提交
  8. 28 10月, 2008 1 次提交
  9. 09 10月, 2008 2 次提交
  10. 25 9月, 2008 1 次提交
  11. 27 8月, 2008 1 次提交
  12. 07 8月, 2008 1 次提交
  13. 23 7月, 2008 1 次提交
    • A
      netdev: bunch of drivers: avoid WARN at net/core/dev.c:1328 · c8f15686
      Anton Vorontsov 提交于
      The drivers were touching net queue before it has been started, so
      without this patch, the drivers will potentially WARN at
      net/core/dev.c:1328.
      
      I don't have the hardware for the drivers below, so this patch is
      untested, and thus should be carefully peer reviewed.
      
      tc35815.c
      au1000_eth.c
      bfin_mac.c
      macb.c
      ^ The four drivers are using phylib, they're calling netif_start_queue()
      in open() callback. So trivially remove netif_tx_schedule_all().
      Phylib will handle netif_carrier_*().
      
      cpmac.c
      fec_mpc52xx.c
      fs_enet/fs_enet-main.c
      sh_eth.c
      ^ The same as above, but these were also needlessly calling
      netif_carrier_*() functions. So removed queue calls and also remove
      carrier calls, since phylib will handle it. fs_enet-main.c also didn't
      call netif_start_queue() at open(), this is fixed now.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c8f15686
  14. 18 7月, 2008 1 次提交
  15. 17 7月, 2008 1 次提交
  16. 04 7月, 2008 1 次提交
  17. 30 6月, 2008 1 次提交
  18. 31 5月, 2008 1 次提交
  19. 22 5月, 2008 1 次提交
    • J
      drivers/net/fs_enet: remove null pointer dereference · 4ecc8c06
      Julia Lawall 提交于
      The following code appears in the function fs_init_instance in the file drivers/net/fs_enet/fs_enet-main.c.
      
      	if (fep->ops == NULL) {
      		printk(KERN_ERR DRV_MODULE_NAME
      		       ": %s No matching ops found (%d).\n",
      		       ndev->name, fpi->fs_no);
      		err = -EINVAL;
      		goto err;
      	}
      
      This code implies that at the point of err, fep->ops can be NULL, so an
      extra test is needed before dereferencing this value.
      
      This problem was found using the following semantic match
      (http://www.emn.fr/x-info/coccinelle/)
      
      // <smpl>
      @@
      expression E, E1;
      identifier f;
      statement S1,S2,S3;
      @@
      
      * if (E == NULL)
      {
        ... when != if (E == NULL) S1 else S2
            when != E = E1
      * E->f
        ... when any
        return ...;
      }
      else S3
      // </smpl>
      Signed-off-by: NJulia Lawall <julia@diku.dk>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      4ecc8c06
  20. 07 5月, 2008 1 次提交
  21. 17 4月, 2008 1 次提交
  22. 12 4月, 2008 1 次提交
  23. 24 2月, 2008 1 次提交
  24. 28 1月, 2008 1 次提交
  25. 24 1月, 2008 1 次提交
  26. 13 1月, 2008 1 次提交
    • A
      fs_enet: check for phydev existence in the ethtool handlers · dfd9a421
      Anton Vorontsov 提交于
      Otherwise oops will happen if ethernet device has not been opened:
      
      Unable to handle kernel paging request for data at address 0x0000014c
      Faulting instruction address: 0xc016f7f0
      Oops: Kernel access of bad area, sig: 11 [#1]
      MPC85xx
      NIP: c016f7f0 LR: c01722a0 CTR: 00000000
      REGS: c79ddc70 TRAP: 0300   Not tainted  (2.6.24-rc3-g820a386b)
      MSR: 00029000 <EE,ME>  CR: 20004428  XER: 20000000
      DEAR: 0000014c, ESR: 00000000
      TASK = c789f5e0[999] 'snmpd' THREAD: c79dc000
      GPR00: c01aceb8 c79ddd20 c789f5e0 00000000 c79ddd3c 00000000 c79ddd64 00000000
      GPR08: 00000000 c7845b60 c79dde3c c01ace80 20004422 200249fc 000002a0 100da728
      GPR16: 100c0000 00000000 00000000 00000000 20022078 00000009 200220e0 bfc85558
      GPR24: c79ddd3c 00000000 00000000 c02e0e70 c022fc64 ffffffff c7845800 bfc85498
      NIP [c016f7f0] phy_ethtool_gset+0x0/0x4c
      LR [c01722a0] fs_get_settings+0x18/0x28
      Call Trace:
      [c79ddd20] [c79dde38] 0xc79dde38 (unreliable)
      [c79ddd30] [c01aceb8] dev_ethtool+0x294/0x11ec
      [c79dde30] [c01aaa44] dev_ioctl+0x454/0x6a8
      [c79ddeb0] [c019b9d4] sock_ioctl+0x84/0x230
      [c79dded0] [c007ded8] do_ioctl+0x34/0x8c
      [c79ddee0] [c007dfbc] vfs_ioctl+0x8c/0x41c
      [c79ddf10] [c007e38c] sys_ioctl+0x40/0x74
      [c79ddf40] [c000d4c0] ret_from_syscall+0x0/0x3c
      Instruction dump:
      81630000 800b0030 2f800000 419e0010 7c0803a6 4e800021 7c691b78 80010014
      7d234b78 38210010 7c0803a6 4e800020 <8003014c> 7c6b1b78 38600000 90040004
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Acked-by: NVitaly Bordug <vitb@kernel.crashing.org>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      dfd9a421
  27. 09 1月, 2008 1 次提交
  28. 14 12月, 2007 2 次提交
  29. 15 11月, 2007 1 次提交
    • J
      [FS_ENET]: Fix module build. · 8a856397
      Jochen Friedrich 提交于
      If fs_enet is build as module, on PPC_CPM_NEW_BINDING platforms
      mii-fec/mii-bitbang should be build as module, as well. On other
      platforms, mii-fec/mii-bitbang must be included into the main module.
      Otherwise some symbols remain undefined. Additionally, fs_enet uses
      libphy, so add a select PHYLIB.
      
        Building modules, stage 2.
        MODPOST 5 modules
      ERROR: "fs_scc_ops" [drivers/net/fs_enet/fs_enet.ko] undefined!
      make[1]: *** [__modpost] Error 1
      make: *** [modules] Error 2
      Signed-off-by: NJochen Friedrich <jochen@scram.de>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8a856397
  30. 18 10月, 2007 1 次提交
    • S
      fs_enet: Update for API changes · f860f49e
      Scott Wood 提交于
      This driver was recently broken by several changes for which this
      driver was not (or was improperly) updated:
      
      1. SET_MODULE_OWNER() was removed.
      2. netif_napi_add() was only being called when building with
      the old CPM binding.
      3. The received/budget test was backwards.
      4. to_net_dev() was wrong -- the device struct embedded in
      the net_device struct is not the same as the of_platform
      device in the private struct.
      5. napi_disable/napi_enable was being called even when napi
      was not being used.
      
      These changes have been fixed, and napi is now on by default.
      Signed-off-by: NScott Wood <scottwood@freescale.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      f860f49e
  31. 11 10月, 2007 8 次提交