1. 12 12月, 2010 13 次提交
    • T
      i2400m: drop i2400m_schedule_work() · 781ba456
      Tejun Heo 提交于
      i2400m implements dynamic work allocation and queueing mechanism in
      i2400_schedule_work(); however, this is only used for reset and
      recovery which can be served equally well with preallocated per device
      works.
      
      Replace i2400m_schedule_work() with two work structs in struct i2400m.
      These works are explicitly canceled when the device is released making
      calls to flush_scheduled_work(), which is being deprecated,
      unnecessary.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
      Cc: linux-wimax@intel.com
      Cc: netdev@vger.kernel.org
      781ba456
    • T
      sungem: update gp->reset_task flushing · fe8998c5
      Tejun Heo 提交于
      gp->reset_task_pending is always set right before reset_task is
      scheduled and as there is no synchronization between the setting and
      scheduling, busy looping on reset_task_pending before flushing
      reset_task doesn't really buy anything.
      
      Directly flush gp->reset_task on suspend and cancel on detach.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: netdev@vger.kernel.org
      fe8998c5
    • T
      igb[v],ixgbe: don't use flush_scheduled_work() · 760141a5
      Tejun Heo 提交于
      All three drivers use flush_scheduled_work() similarly during driver
      detach.  Replace it with explicit cancels.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: e1000-devel@lists.sourceforge.net
      Cc: netdev@vger.kernel.org
      760141a5
    • T
      iseries_veth: don't use flush_scheduled_work() · 9beb4896
      Tejun Heo 提交于
      flush_scheduled_work() is on its way out.  Remove its usage from
      iseries_veth.
      
      * Cancelling a delayed work, queueing it for immediate execution if
        cancelled and then waiting for completion can be done by simply
        calling flush_delayed_work_sync().
      
      * Explicitly cancel cnx->statemachine_wq on module unload.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Santiago Leon <santil@linux.vnet.ibm.com>
      Cc: netdev@vger.kernel.org
      9beb4896
    • T
      ehea: don't use flush_scheduled_work() · f5c35cc1
      Tejun Heo 提交于
      Directly cancel port->reset_task from ehea_shutdown_single_port()
      instead.  As this cancels the work for each port on driver detach,
      flushing system_wq from ehea_remove() or ehea_module_exit() is no
      longer necessary.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: Breno Leitao <leitao@linux.vnet.ibm.com>
      Cc: netdev@vger.kernel.org
      f5c35cc1
    • T
      ehea: kill unused ehea_rereg_mr_task · 3d6b892b
      Tejun Heo 提交于
      ehea_rereg_mr_task is not used.  Remove it and drop @work parameter
      from ehea_rereg_mrs().
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: Breno Leitao <leitao@linux.vnet.ibm.com>
      Cc: netdev@vger.kernel.org
      3d6b892b
    • T
      drivers/net: don't use flush_scheduled_work() · 23f333a2
      Tejun Heo 提交于
      flush_scheduled_work() is on its way out.  This patch contains simple
      conversions to replace flush_scheduled_work() usage with direct
      cancels and flushes.
      
      Directly cancel the used works on driver detach and flush them in
      other cases.
      
      The conversions are mostly straight forward and the only dangers are,
      
      * Forgetting to cancel/flush one or more used works.
      
      * Cancelling when a work should be flushed (ie. the work must be
        executed once scheduled whether the driver is detaching or not).
      
      I've gone over the changes multiple times but it would be much
      appreciated if you can review with the above points in mind.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jay Cliburn <jcliburn@gmail.com>
      Cc: Michael Chan <mchan@broadcom.com>
      Cc: Divy Le Ray <divy@chelsio.com>
      Cc: e1000-devel@lists.sourceforge.net
      Cc: Vasanthy Kolluri <vkolluri@cisco.com>
      Cc: Samuel Ortiz <samuel@sortiz.org>
      Cc: Lennert Buytenhek <buytenh@wantstofly.org>
      Cc: Andrew Gallatin <gallatin@myri.com>
      Cc: Francois Romieu <romieu@fr.zoreil.com>
      Cc: Ramkrishna Vepa <ramkrishna.vepa@exar.com>
      Cc: Matt Carlson <mcarlson@broadcom.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: Shreyas Bhatewara <sbhatewara@vmware.com>
      Cc: netdev@vger.kernel.org
      23f333a2
    • T
      drivers/net: remove unnecessary flush_scheduled_work() calls · 6e07ebd8
      Tejun Heo 提交于
      janz-ican3, sh_eth, skge and vxge don't use workqueue at all and there
      is no reason to flush the system_wq.  Drop flush_scheduled_work()
      calls and references to workqueue.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Wolfgang Grandegger <wg@grandegger.com>
      Cc: Stephen Hemminger <shemminger@linux-foundation.org>
      Cc: Ramkrishna Vepa <ramkrishna.vepa@exar.com>
      Cc: Sivakumar Subramani <sivakumar.subramani@exar.com>
      Cc: Sreenivasa Honnur <sreenivasa.honnur@exar.com>
      Cc: Jon Mason <jon.mason@exar.com>
      Cc: netdev@vger.kernel.org
      6e07ebd8
    • M
      net: au1000_eth: remove unused global variable. · ad1184c6
      Manuel Lauss 提交于
      The driver global au_macs[] is unused in the entire kernel tree,
      so remove it.
      Signed-off-by: NManuel Lauss <manuel.lauss@googlemail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ad1184c6
    • J
      s2io: Using static const generally increases object text and decreases data... · 85a56498
      Jon Mason 提交于
      s2io: Using static const generally increases object text and decreases data size. It also generally decreases overall object size.
      
      text	   data	    bss	    dec	    hex	filename
       109387	    389	  24432	 134208	  20c40	drivers/net/s2io.o.old
       109358	    389	  24432	 134179	  20c23	drivers/net/s2io.o.new
      Signed-off-by: NJoe Perches <joe@perches.com>
      Acked-by: NJon Mason <jon.mason@exar.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      85a56498
    • J
      s2io: Update Driver Version · 11410b62
      Jon Mason 提交于
      Update Driver Version
      Signed-off-by: NJon Mason <jon.mason@exar.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      11410b62
    • J
      s2io: make strings at tables const · c0dbf37e
      Jon Mason 提交于
      Put immutable data in read/only section.
      Signed-off-by: NStephen Hemminger <shemminger@vyatta.com>
      Signed-off-by: NJon Mason <jon.mason@exar.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c0dbf37e
    • J
      s2io: rx_ring_sz bounds checking · 1853e2e1
      Jon Mason 提交于
      modparm rx_ring_sz can be set to be greater than the maximum allowable
      number of blocks.  This results in an array overrun when probing the
      driver, and causes memory corruption.
      
      Also, the MAX_RX_DESC_1 multiply the max number of rings by max number
      of blocker per ring by 127, but the driver does the same calculation
      with 127+1.  This results in the possibility of the value being set
      being larger than the maximum allowable value.
      
      Finally, clean-up the s2io_ethtool_gringparam code to be more
      intuitive.
      Signed-off-by: NJon Mason <jon.mason@exar.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1853e2e1
  2. 11 12月, 2010 27 次提交