1. 24 10月, 2009 1 次提交
  2. 05 10月, 2009 3 次提交
    • J
      wext: let get_wireless_stats() sleep · a160ee69
      Johannes Berg 提交于
      A number of drivers (recently including cfg80211-based ones)
      assume that all wireless handlers, including statistics, can
      sleep and they often also implicitly assume that the rtnl is
      held around their invocation. This is almost always true now
      except when reading from sysfs:
      
        BUG: sleeping function called from invalid context at kernel/mutex.c:280
        in_atomic(): 1, irqs_disabled(): 0, pid: 10450, name: head
        2 locks held by head/10450:
         #0:  (&buffer->mutex){+.+.+.}, at: [<c10ceb99>] sysfs_read_file+0x24/0xf4
         #1:  (dev_base_lock){++.?..}, at: [<c12844ee>] wireless_show+0x1a/0x4c
        Pid: 10450, comm: head Not tainted 2.6.32-rc3 #1
        Call Trace:
         [<c102301c>] __might_sleep+0xf0/0xf7
         [<c1324355>] mutex_lock_nested+0x1a/0x33
         [<f8cea53b>] wdev_lock+0xd/0xf [cfg80211]
         [<f8cea58f>] cfg80211_wireless_stats+0x45/0x12d [cfg80211]
         [<c13118d6>] get_wireless_stats+0x16/0x1c
         [<c12844fe>] wireless_show+0x2a/0x4c
      
      Fix this by using the rtnl instead of dev_base_lock.
      Reported-by: NMiles Lane <miles.lane@gmail.com>
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a160ee69
    • E
      pktgen: restore nanosec delays · 9240d715
      Eric Dumazet 提交于
      Commit fd29cf72 (pktgen: convert to use ktime_t)
      inadvertantly converted "delay" parameter from nanosec to microsec.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9240d715
    • E
      pktgen: Fix multiqueue handling · 896a7cf8
      Eric Dumazet 提交于
      It is not currently possible to instruct pktgen to use one selected tx queue.
      
      When Robert added multiqueue support in commit 45b270f8, he added
      an interval (queue_map_min, queue_map_max), and his code doesnt take
      into account the case of min = max, to select one tx queue exactly.
      
      I suspect a high performance setup on a eight txqueue device wants
      to use exactly eight cpus, and assign one tx queue to each sender.
      
      This patchs makes pktgen select the right tx queue, not the first one.
      
      Also updates Documentation to reflect Robert changes.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NRobert Olsson <robert.olsson@its.uu.se>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      896a7cf8
  3. 02 10月, 2009 1 次提交
  4. 01 10月, 2009 3 次提交
    • E
      net: restore tx timestamping for accelerated vlans · 81bbb3d4
      Eric Dumazet 提交于
      Since commit 9b22ea56
      ( net: fix packet socket delivery in rx irq handler )
      
      We lost rx timestamping of packets received on accelerated vlans.
      
      Effect is that tcpdump on real dev can show strange timings, since it gets rx timestamps
      too late (ie at skb dequeueing time, not at skb queueing time)
      
      14:47:26.986871 IP 192.168.20.110 > 192.168.20.141: icmp 64: echo request seq 1
      14:47:26.986786 IP 192.168.20.141 > 192.168.20.110: icmp 64: echo reply seq 1
      
      14:47:27.986888 IP 192.168.20.110 > 192.168.20.141: icmp 64: echo request seq 2
      14:47:27.986781 IP 192.168.20.141 > 192.168.20.110: icmp 64: echo reply seq 2
      
      14:47:28.986896 IP 192.168.20.110 > 192.168.20.141: icmp 64: echo request seq 3
      14:47:28.986780 IP 192.168.20.141 > 192.168.20.110: icmp 64: echo reply seq 3
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      81bbb3d4
    • E
      net: Fix sock_wfree() race · d99927f4
      Eric Dumazet 提交于
      Commit 2b85a34e
      (net: No more expensive sock_hold()/sock_put() on each tx)
      opens a window in sock_wfree() where another cpu
      might free the socket we are working on.
      
      A fix is to call sk->sk_write_space(sk) while still
      holding a reference on sk.
      Reported-by: NJike Song <albcamus@gmail.com>
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d99927f4
    • D
      net: Make setsockopt() optlen be unsigned. · b7058842
      David S. Miller 提交于
      This provides safety against negative optlen at the type
      level instead of depending upon (sometimes non-trivial)
      checks against this sprinkled all over the the place, in
      each and every implementation.
      
      Based upon work done by Arjan van de Ven and feedback
      from Linus Torvalds.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b7058842
  5. 29 9月, 2009 1 次提交
  6. 25 9月, 2009 2 次提交
  7. 22 9月, 2009 1 次提交
  8. 16 9月, 2009 1 次提交
  9. 15 9月, 2009 1 次提交
  10. 12 9月, 2009 1 次提交
  11. 06 9月, 2009 1 次提交
    • P
      net_sched: reintroduce dev->qdisc for use by sch_api · af356afa
      Patrick McHardy 提交于
      Currently the multiqueue integration with the qdisc API suffers from
      a few problems:
      
      - with multiple queues, all root qdiscs use the same handle. This means
        they can't be exposed to userspace in a backwards compatible fashion.
      
      - all API operations always refer to queue number 0. Newly created
        qdiscs are automatically shared between all queues, its not possible
        to address individual queues or restore multiqueue behaviour once a
        shared qdisc has been attached.
      
      - Dumps only contain the root qdisc of queue 0, in case of non-shared
        qdiscs this means the statistics are incomplete.
      
      This patch reintroduces dev->qdisc, which points to the (single) root qdisc
      from userspace's point of view. Currently it either points to the first
      (non-shared) default qdisc, or a qdisc shared between all queues. The
      following patches will introduce a classful dummy qdisc, which will be used
      as root qdisc and contain the per-queue qdiscs as children.
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      af356afa
  12. 03 9月, 2009 5 次提交
  13. 02 9月, 2009 2 次提交
  14. 01 9月, 2009 1 次提交
  15. 31 8月, 2009 1 次提交
  16. 29 8月, 2009 15 次提交