1. 15 7月, 2009 6 次提交
  2. 09 7月, 2009 10 次提交
  3. 08 7月, 2009 3 次提交
  4. 07 7月, 2009 18 次提交
  5. 06 7月, 2009 3 次提交
    • E
      forcedeth: Fix NAPI race. · 78c29bd9
      Eric Dumazet 提交于
      Eric Dumazet a écrit :
      > Ingo Molnar a écrit :
      >>> The following changes since commit 52989765:
      >>>   Linus Torvalds (1):
      >>>         Merge git://git.kernel.org/.../davem/net-2.6
      
      > >>> are available in the git repository at:
      
      >>>   master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git master
      >> Hm, something in this lot quickly wrecked networking here - see the
      >> tx timeout dump below. It starts with:
      >>
      >> [  351.004596] WARNING: at net/sched/sch_generic.c:246 dev_watchdog+0x10b/0x19c()
      >> [  351.011815] Hardware name: System Product Name
      >> [  351.016220] NETDEV WATCHDOG: eth0 (forcedeth): transmit queue 0 timed out
      >>
      >> Config attached. Unfortunately i've got no time to do bisection
      >> today.
      >
      >
      >
      > forcedeth might have a problem, in its netif_wake_queue() logic, but
      > I could not see why a recent patch could make this problem visible now.
      >
      > CPU0/1: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
      > is not a new cpu either :)
      >
      > forcedeth uses an internal tx_stop without appropriate barrier.
      >
      > Could you try following patch ?
      >
      > (random guess as I dont have much time right now)
      
      We might have a race in napi_schedule(), leaving interrupts disabled forever.
      I cannot test this patch, I dont have the hardware...
      Tested-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      78c29bd9
    • J
      drivers/net/smsc911x.c: Fix resource size off by 1 error · 39424539
      Julia Lawall 提交于
      The call resource_size(res) returns res->end - res->start + 1 and thus the
      second change is semantics-preserving.  res_size is then used as the second
      argument of a call to request_mem_region, and the memory allocated by this
      call appears to be the same as what is released in the two calls to
      release_mem_region.  So the size argument for those calls should be
      resource_size(size) as well.  Alternatively, in the second call to
      release_mem_region, the second argument could be res_size, as that variable
      has already been initialized at the point of this call.
      
      The problem was found using the following semantic patch:
      (http://www.emn.fr/x-info/coccinelle/)
      
      // <smpl>
      @@
      struct resource *res;
      @@
      
      - (res->end - res->start) + 1
      + resource_size(res)
      
      @@
      struct resource *res;
      @@
      
      - res->end - res->start
      + BAD(resource_size(res))
      // </smpl>
      Signed-off-by: NJulia Lawall <julia@diku.dk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      39424539
    • K
      pcnet_cs: add new id · 4c3dd308
      Ken Kawasaki 提交于
      add new id (RIOS System PC CARD3 ETHERNET).
      Signed-off-by: NKen Kawasaki <ken_kawasaki@spring.nifty.jp>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4c3dd308