1. 16 2月, 2009 1 次提交
  2. 01 2月, 2009 1 次提交
  3. 15 1月, 2009 1 次提交
    • O
      can: fix slowpath issue in hrtimer callback function · c53a6ee8
      Oliver Hartkopp 提交于
      Due to the loopback functionality in can_send() we can not invoke it
      from hardirq context which was done inside the
      bcm_tx_timeout_handler() hrtimer callback:
      
      [  700.361154]  [<c012228c>] warn_slowpath+0x80/0xb6
      [  700.361163]  [<c013d559>] valid_state+0x125/0x136
      [  700.361171]  [<c013d858>] mark_lock+0x18e/0x332
      [  700.361180]  [<c013e300>] __lock_acquire+0x12e/0xb1e
      [  700.361189]  [<f8ab5915>] bcm_tx_timeout_handler+0x0/0xbc [can_bcm]
      [  700.361198]  [<c031e20a>] dev_queue_xmit+0x191/0x479
      [  700.361206]  [<c01262a7>] __local_bh_disable+0x2b/0x64
      [  700.361213]  [<c031e20a>] dev_queue_xmit+0x191/0x479
      [  700.361225]  [<f8aa69a1>] can_send+0xd7/0x11a [can]
      [  700.361235]  [<f8ab522b>] bcm_can_tx+0x9d/0xd9 [can_bcm]
      [  700.361245]  [<f8ab597f>] bcm_tx_timeout_handler+0x6a/0xbc [can_bcm]
      [  700.361255]  [<f8ab5915>] bcm_tx_timeout_handler+0x0/0xbc [can_bcm]
      [  700.361263]  [<c0134143>] __run_hrtimer+0x5a/0x86
      [  700.361273]  [<f8ab5915>] bcm_tx_timeout_handler+0x0/0xbc [can_bcm]
      [  700.361282]  [<c0134a50>] hrtimer_interrupt+0xb9/0x110
      
      This patch moves the rest of the functionality from the hrtimer
      callback to the already existing tasklet to fix this slowpath problem.
      Signed-off-by: NOliver Hartkopp <oliver@hartkopp.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c53a6ee8
  4. 07 1月, 2009 1 次提交
  5. 05 1月, 2009 1 次提交
  6. 15 12月, 2008 1 次提交
  7. 05 12月, 2008 1 次提交
  8. 04 12月, 2008 1 次提交
    • O
      can: Fix CAN_(EFF|RTR)_FLAG handling in can_filter · d253eee2
      Oliver Hartkopp 提交于
      Due to a wrong safety check in af_can.c it was not possible to filter
      for SFF frames with a specific CAN identifier without getting the
      same selected CAN identifier from a received EFF frame also.
      
      This fix has a minimum (but user visible) impact on the CAN filter
      API and therefore the CAN version is set to a new date.
      
      Indeed the 'old' API is still working as-is. But when now setting
      CAN_(EFF|RTR)_FLAG in can_filter.can_mask you might get less traffic
      than before - but still the stuff that you expected to get for your
      defined filter ...
      
      Thanks to Kurt Van Dijck for pointing at this issue and for the review.
      Signed-off-by: NOliver Hartkopp <oliver@hartkopp.net>
      Acked-by: NKurt Van Dijck <kurt.van.dijck@eia.be>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d253eee2
  9. 17 10月, 2008 1 次提交
  10. 20 7月, 2008 1 次提交
  11. 06 7月, 2008 1 次提交
  12. 08 5月, 2008 1 次提交
  13. 04 5月, 2008 1 次提交
  14. 28 4月, 2008 1 次提交
  15. 25 4月, 2008 1 次提交
  16. 16 4月, 2008 1 次提交
  17. 26 3月, 2008 1 次提交
  18. 08 2月, 2008 3 次提交
  19. 29 1月, 2008 4 次提交