1. 17 12月, 2015 1 次提交
  2. 16 12月, 2015 5 次提交
  3. 15 12月, 2015 7 次提交
  4. 14 12月, 2015 2 次提交
  5. 12 12月, 2015 6 次提交
  6. 09 12月, 2015 5 次提交
    • A
      net: ezchip: fix address space confusion in nps_enet.c · b0a8d1a0
      Arnd Bergmann 提交于
      The nps_enet driver happily mixes virtual, physical and __iomem
      addresses, which are all different depending on the architecture
      and configuration.  That causes a warning when building the code
      on ARM with LPAE mode enabled:
      
      drivers/net/ethernet/ezchip/nps_enet.c: In function 'nps_enet_send_frame':
      drivers/net/ethernet/ezchip/nps_enet.c:370:13: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
      
      but will also fail to work for other reasons.
      
      In this patch, I'm trying to change the code to use only normal
      kernel pointers, which I assume is what the author actually meant:
      
      * For reading or writing a 32-bit word that may be unaligned when
        an SKB contains unaligned data, I'm using get_unaligned/put_unaligned()
        rather than memcpy_fromio/toio.
      
      * For converting a u8 pointer to a u32 pointer, I use a cast rather
        than the incorrect virt_to_phys.
      
      * For copying a couple of bytes from one place to another while respecting
        alignment, I use memcpy instead of memcpy_toio.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b0a8d1a0
    • A
      net: fsl: avoid 64-bit warning on pq_mdio · 8cde3e44
      Arnd Bergmann 提交于
      The pq_mdio driver can now be built for ARM64, where we get a format
      string warning:
      
      drivers/net/ethernet/freescale/fsl_pq_mdio.c: In function 'fsl_pq_mdio_probe':
      drivers/net/ethernet/freescale/fsl_pq_mdio.c:467:25: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'long int' [-Wformat=]
      
      The argument is an implicit ptrdiff_t from the subtraction of two pointers,
      so we should use the %z format string modifier to make this work on 64-bit
      architectures.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Fixes: fe761bcb ("net: fsl: expands dependencies of NET_VENDOR_FREESCALE")
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8cde3e44
    • P
      r8152: fix lockup when runtime PM is enabled · 90186af4
      Peter Wu 提交于
      When an interface is brought up which was previously suspended (via
      runtime PM), it would hang. This happens because napi_disable is called
      before napi_enable.
      
      Solve this by avoiding napi_enable in the resume during open function
      (netif_running is true when open is called, IFF_UP is set after a
      successful open; netif_running is false when close is called, but IFF_UP
      is then still set).
      
      While at it, remove WORK_ENABLE check from rtl8152_open (introduced with
      the original change) because it cannot happen:
      
       - After this patch, runtime resume will not set it during rtl8152_open.
       - When link is up, rtl8152_open is not called.
       - When link is down during system/auto suspend/resume, it is not set.
      
      Fixes: 41cec84c ("r8152: don't enable napi before rx ready")
      Link: https://lkml.kernel.org/r/20151205105912.GA1766@alSigned-off-by: NPeter Wu <peter@lekensteyn.nl>
      Acked-by: NHayes Wang <hayeswang@realtek.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      90186af4
    • P
      net: thunderx: Correctly distinguish between VF and LMAC count · f406ce42
      Pavel Fedin 提交于
      Commit bc69fdfc
      ("net: thunderx: Enable BGX LMAC's RX/TX only after VF is up")
      introduces lmac_cnt member and starts verifying VF number against it.
      This is plain wrong, and works only because currently we have hardcoded
      1:1 mapping between VFs and LMACs, and in this case num_vf_en and
      lmac_cnt are always equal. However in future this may change, and the
      code will badly misbehave. The worst consequence of this is failure to
      deliver link status messages, causing VFs to go defunct because since
      commit 0b72a9a1 ("net: thunderx: Switchon carrier only upon
      interface link up") VF will not fully bring itself up without it.
      
      This patch fixes the potential problem by doing VF number checks against
      the num_vf_en. Since lmac_cnt is not used anywhere else, it is removed.
      
      Additionally some duplicated code is factored out into nic_enable_vf()
      Signed-off-by: NPavel Fedin <p.fedin@samsung.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f406ce42
    • P
      geneve: Fix IPv6 xmit stats update. · a322a1bc
      Pravin B Shelar 提交于
      Call to iptunnel_xmit_stats() is not required after udp-tunnel6-xmit.
      By calling iptunnel_xmit_stats() results in incorrect device stats.
      Following patch drops this call.
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a322a1bc
  7. 08 12月, 2015 7 次提交
  8. 07 12月, 2015 1 次提交
  9. 06 12月, 2015 4 次提交
  10. 05 12月, 2015 2 次提交
    • P
      atl1c: Improve driver not to do order 4 GFP_ATOMIC allocation · f2a3771a
      Pavel Machek 提交于
      atl1c driver is doing order-4 allocation with GFP_ATOMIC
      priority. That often breaks  networking after resume. Switch to
      GFP_KERNEL. Still not ideal, but should be significantly better.
      
      atl1c_setup_ring_resources() is called from .open() function, and
      already uses GFP_KERNEL, so this change is safe.
      Signed-off-by: NPavel Machek <pavel@ucw.cz>
      Acked-by: NMichal Hocko <mhocko@suse.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f2a3771a
    • G
      pppoe: fix memory corruption in padt work structure · fe53985a
      Guillaume Nault 提交于
      pppoe_connect() mustn't touch the padt_work field of pppoe sockets
      because that work could be already pending.
      
      [   21.473147] BUG: unable to handle kernel NULL pointer dereference at 00000004
      [   21.474523] IP: [<c1043177>] process_one_work+0x29/0x31c
      [   21.475164] *pde = 00000000
      [   21.475513] Oops: 0000 [#1] SMP
      [   21.475910] Modules linked in: pppoe pppox ppp_generic slhc crc32c_intel aesni_intel virtio_net xts aes_i586 lrw gf128mul ablk_helper cryptd evdev acpi_cpufreq processor serio_raw button ext4 crc16 mbcache jbd2 virtio_blk virtio_pci virtio_ring virtio
      [   21.476168] CPU: 2 PID: 164 Comm: kworker/2:2 Not tainted 4.4.0-rc1 #1
      [   21.476168] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
      [   21.476168] task: f5f83c00 ti: f5e28000 task.ti: f5e28000
      [   21.476168] EIP: 0060:[<c1043177>] EFLAGS: 00010046 CPU: 2
      [   21.476168] EIP is at process_one_work+0x29/0x31c
      [   21.484082] EAX: 00000000 EBX: f678b2a0 ECX: 00000004 EDX: 00000000
      [   21.484082] ESI: f6c69940 EDI: f5e29ef0 EBP: f5e29f0c ESP: f5e29edc
      [   21.484082]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
      [   21.484082] CR0: 80050033 CR2: 000000a4 CR3: 317ad000 CR4: 00040690
      [   21.484082] Stack:
      [   21.484082]  00000000 f6c69950 00000000 f6c69940 c0042338 f5e29f0c c1327945 00000000
      [   21.484082]  00000008 f678b2a0 f6c69940 f678b2b8 f5e29f30 c1043984 f5f83c00 f6c69970
      [   21.484082]  f678b2a0 c10437d3 f6775e80 f678b2a0 c10437d3 f5e29fac c1047059 f5e29f74
      [   21.484082] Call Trace:
      [   21.484082]  [<c1327945>] ? _raw_spin_lock_irq+0x28/0x30
      [   21.484082]  [<c1043984>] worker_thread+0x1b1/0x244
      [   21.484082]  [<c10437d3>] ? rescuer_thread+0x229/0x229
      [   21.484082]  [<c10437d3>] ? rescuer_thread+0x229/0x229
      [   21.484082]  [<c1047059>] kthread+0x8f/0x94
      [   21.484082]  [<c1327a32>] ? _raw_spin_unlock_irq+0x22/0x26
      [   21.484082]  [<c1327ee9>] ret_from_kernel_thread+0x21/0x38
      [   21.484082]  [<c1046fca>] ? kthread_parkme+0x19/0x19
      [   21.496082] Code: 5d c3 55 89 e5 57 56 53 89 c3 83 ec 24 89 d0 89 55 e0 8d 7d e4 e8 6c d8 ff ff b9 04 00 00 00 89 45 d8 8b 43 24 89 45 dc 8b 45 d8 <8b> 40 04 8b 80 e0 00 00 00 c1 e8 05 24 01 88 45 d7 8b 45 e0 8d
      [   21.496082] EIP: [<c1043177>] process_one_work+0x29/0x31c SS:ESP 0068:f5e29edc
      [   21.496082] CR2: 0000000000000004
      [   21.496082] ---[ end trace e362cc9cf10dae89 ]---
      Reported-by: NAndrew <nitr0@seti.kr.ua>
      Fixes: 287f3a94 ("pppoe: Use workqueue to die properly when a PADT is received")
      Signed-off-by: NGuillaume Nault <g.nault@alphalink.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fe53985a