1. 09 2月, 2013 2 次提交
    • F
      Revert "r8169: enable ALDPS for power saving". · eef63cc1
      Francois Romieu 提交于
      This reverts commit e0c07557.
      
      Jörg Otte reported his 8168evl to fail boot time link detection.
      
      Hayes suggests reverting it for the time being.
      Signed-off-by: NFrancois Romieu <romieu@fr.zoreil.com>
      Cc: Hayes Wang <hayeswang@realtek.com>
      Cc: Jörg Otte <jrg.otte@gmail.com>
      eef63cc1
    • H
      atm/iphase: rename fregt_t -> ffreg_t · ab54ee80
      Heiko Carstens 提交于
      We have conflicting type qualifiers for "freg_t" in s390's ptrace.h and the
      iphase atm device driver, which causes the compile error below.
      Unfortunately the s390 typedef can't be renamed, since it's a user visible api,
      nor can I change the include order in s390 code to avoid the conflict.
      
      So simply rename the iphase typedef to a new name. Fixes this compile error:
      
      In file included from drivers/atm/iphase.c:66:0:
      drivers/atm/iphase.h:639:25: error: conflicting type qualifiers for 'freg_t'
      In file included from next/arch/s390/include/asm/ptrace.h:9:0,
                       from next/arch/s390/include/asm/lowcore.h:12,
                       from next/arch/s390/include/asm/thread_info.h:30,
                       from include/linux/thread_info.h:54,
                       from include/linux/preempt.h:9,
                       from include/linux/spinlock.h:50,
                       from include/linux/seqlock.h:29,
                       from include/linux/time.h:5,
                       from include/linux/stat.h:18,
                       from include/linux/module.h:10,
                       from drivers/atm/iphase.c:43:
      next/arch/s390/include/uapi/asm/ptrace.h:197:3: note: previous declaration of 'freg_t' was here
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Acked-by: Nchas williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ab54ee80
  2. 08 2月, 2013 4 次提交
  3. 07 2月, 2013 2 次提交
  4. 05 2月, 2013 5 次提交
  5. 03 2月, 2013 1 次提交
  6. 01 2月, 2013 1 次提交
  7. 31 1月, 2013 3 次提交
  8. 30 1月, 2013 8 次提交
  9. 29 1月, 2013 3 次提交
  10. 28 1月, 2013 6 次提交
  11. 27 1月, 2013 5 次提交
    • E
      net: loopback: fix a dst refcounting issue · 794ed393
      Eric Dumazet 提交于
      Ben Greear reported crashes in ip_rcv_finish() on a stress
      test involving many macvlans.
      
      We tracked the bug to a dst use after free. ip_rcv_finish()
      was calling dst->input() and got garbage for dst->input value.
      
      It appears the bug is in loopback driver, lacking
      a skb_dst_force() before calling netif_rx().
      
      As a result, a non refcounted dst, normally protected by a
      RCU read_lock section, was escaping this section and could
      be freed before the packet being processed.
      
        [<ffffffff813a3c4d>] loopback_xmit+0x64/0x83
        [<ffffffff81477364>] dev_hard_start_xmit+0x26c/0x35e
        [<ffffffff8147771a>] dev_queue_xmit+0x2c4/0x37c
        [<ffffffff81477456>] ? dev_hard_start_xmit+0x35e/0x35e
        [<ffffffff8148cfa6>] ? eth_header+0x28/0xb6
        [<ffffffff81480f09>] neigh_resolve_output+0x176/0x1a7
        [<ffffffff814ad835>] ip_finish_output2+0x297/0x30d
        [<ffffffff814ad6d5>] ? ip_finish_output2+0x137/0x30d
        [<ffffffff814ad90e>] ip_finish_output+0x63/0x68
        [<ffffffff814ae412>] ip_output+0x61/0x67
        [<ffffffff814ab904>] dst_output+0x17/0x1b
        [<ffffffff814adb6d>] ip_local_out+0x1e/0x23
        [<ffffffff814ae1c4>] ip_queue_xmit+0x315/0x353
        [<ffffffff814adeaf>] ? ip_send_unicast_reply+0x2cc/0x2cc
        [<ffffffff814c018f>] tcp_transmit_skb+0x7ca/0x80b
        [<ffffffff814c3571>] tcp_connect+0x53c/0x587
        [<ffffffff810c2f0c>] ? getnstimeofday+0x44/0x7d
        [<ffffffff810c2f56>] ? ktime_get_real+0x11/0x3e
        [<ffffffff814c6f9b>] tcp_v4_connect+0x3c2/0x431
        [<ffffffff814d6913>] __inet_stream_connect+0x84/0x287
        [<ffffffff814d6b38>] ? inet_stream_connect+0x22/0x49
        [<ffffffff8108d695>] ? _local_bh_enable_ip+0x84/0x9f
        [<ffffffff8108d6c8>] ? local_bh_enable+0xd/0x11
        [<ffffffff8146763c>] ? lock_sock_nested+0x6e/0x79
        [<ffffffff814d6b38>] ? inet_stream_connect+0x22/0x49
        [<ffffffff814d6b49>] inet_stream_connect+0x33/0x49
        [<ffffffff814632c6>] sys_connect+0x75/0x98
      
      This bug was introduced in linux-2.6.35, in commit
      7fee226a (net: add a noref bit on skb dst)
      
      skb_dst_force() is enforced in dev_queue_xmit() for devices having a
      qdisc.
      Reported-by: NBen Greear <greearb@candelatech.com>
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Tested-by: NBen Greear <greearb@candelatech.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      794ed393
    • W
      virtio-net: reset virtqueue affinity when doing cpu hotplug · 8de4b2f3
      Wanlong Gao 提交于
      Add a cpu notifier to virtio-net, so that we can reset the
      virtqueue affinity if the cpu hotplug happens. It improve
      the performance through enabling or disabling the virtqueue
      affinity after doing cpu hotplug.
      
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: Eric Dumazet <erdnetdev@gmail.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: virtualization@lists.linux-foundation.org
      Cc: netdev@vger.kernel.org
      Signed-off-by: NWanlong Gao <gaowanlong@cn.fujitsu.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8de4b2f3
    • W
      virtio-net: split out clean affinity function · 8898c21c
      Wanlong Gao 提交于
      Split out the clean affinity function to virtnet_clean_affinity().
      
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: Eric Dumazet <erdnetdev@gmail.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: virtualization@lists.linux-foundation.org
      Cc: netdev@vger.kernel.org
      Signed-off-by: NWanlong Gao <gaowanlong@cn.fujitsu.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8898c21c
    • W
      virtio-net: fix the set affinity bug when CPU IDs are not consecutive · 47be2479
      Wanlong Gao 提交于
      As Michael mentioned, set affinity and select queue will not work very
      well when CPU IDs are not consecutive, this can happen with hot unplug.
      Fix this bug by traversal the online CPUs, and create a per cpu variable
      to find the mapping from CPU to the preferable virtual-queue.
      
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: Eric Dumazet <erdnetdev@gmail.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: virtualization@lists.linux-foundation.org
      Cc: netdev@vger.kernel.org
      Signed-off-by: NWanlong Gao <gaowanlong@cn.fujitsu.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      47be2479
    • W
      mfd: rtsx: Fix oops when rtsx_pci_sdmmc is not probed · 2d1484f5
      Wei WANG 提交于
      If rtsx_pci_sdmmc is not probed, function pointer pcr->slots[].card_event
      will point to NULL, and thus rtsx_pci_card_detect will reference a NULL
      pointer.
      Check card_event pointer before referencing it can avoid kernel panic.
      Signed-off-by: NWei WANG <wei_wang@realsil.com.cn>
      Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
      2d1484f5