1. 29 4月, 2016 1 次提交
  2. 27 4月, 2016 1 次提交
  3. 24 4月, 2016 1 次提交
  4. 23 4月, 2016 4 次提交
  5. 07 4月, 2016 1 次提交
  6. 02 4月, 2016 3 次提交
  7. 29 3月, 2016 6 次提交
  8. 26 3月, 2016 8 次提交
  9. 25 3月, 2016 3 次提交
  10. 24 3月, 2016 12 次提交
    • H
      hv_netvsc: Fix the order of num_sc_offered decrement · 3f735131
      Haiyang Zhang 提交于
      Reorder the code in netvsc_sc_open(), so num_sc_offered is only decremented
      after vmbus_open() is called. This avoid pontential race of removing device
      before all channels are setup.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3f735131
    • O
      Input: sur40 - fix DMA on stack · d314e9e8
      Oliver Neukum 提交于
      During the initialisation the driver uses a buffer on the stack for DMA.
      That violates the cache coherency rules. The fix is to allocate the buffer
      with kmalloc().
      Signed-off-by: NOliver Neukum <ONeukum@suse.com>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      d314e9e8
    • V
      Input: ati_remote2 - fix crashes on detecting device with invalid descriptor · 950336ba
      Vladis Dronov 提交于
      The ati_remote2 driver expects at least two interfaces with one
      endpoint each. If given malicious descriptor that specify one
      interface or no endpoints, it will crash in the probe function.
      Ensure there is at least two interfaces and one endpoint for each
      interface before using it.
      
      The full disclosure: http://seclists.org/bugtraq/2016/Mar/90Reported-by: NRalf Spenneberg <ralf@spenneberg.net>
      Signed-off-by: NVladis Dronov <vdronov@redhat.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      950336ba
    • D
      PM / AVS: rockchip-io: add io selectors and supplies for rk3399 · f447671b
      David Wu 提交于
      This adds the necessary data for handling io voltage domains on the rk3399.
      As interesting tidbit, the rk3399 contains two separate iodomain areas.
      One in the regular General Register Files (GRF) and one in PMUGRF in the
      pmu power domain.
      Signed-off-by: NDavid Wu <david.wu@rock-chips.com>
      Reviewed-by: NHeiko Stuebner <heiko@sntech.de>
      Acked-by: NKevin Hilman <khilman@baylibre.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      f447671b
    • D
      intel_idle: Support for Intel Xeon Phi Processor x200 Product Family · 281baf7a
      Dasaratharaman Chandramouli 提交于
      Enables "Intel(R) Xeon Phi(TM) Processor x200 Product Family" support,
      formerly code-named KNL. It is based on modified Intel Atom Silvermont
      microarchitecture.
      Signed-off-by: NDasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com>
      [micah.barany@intel.com: adjusted values of residency and latency]
      Signed-off-by: NMicah Barany <micah.barany@intel.com>
      [hubert.chrzaniuk@intel.com: removed deprecated CPUIDLE_FLAG_TIME_VALID flag]
      Signed-off-by: NHubert Chrzaniuk <hubert.chrzaniuk@intel.com>
      Signed-off-by: NPawel Karczewski <pawel.karczewski@intel.com>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      281baf7a
    • L
      intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled · d70e28f5
      Len Brown 提交于
      Some SKL-H configurations require "intel_idle.max_cstate=7" to boot.
      While that is an effective workaround, it disables C10.
      
      This patch detects the problematic configuration,
      and disables C8 and C9, keeping C10 enabled.
      
      Note that enabling SGX in BIOS SETUP can also prevent this issue,
      if the system BIOS provides that option.
      
      https://bugzilla.kernel.org/show_bug.cgi?id=109081
      "Freezes with Intel i7 6700HQ (Skylake), unless intel_idle.max_cstate=7"
      Signed-off-by: NLen Brown <len.brown@intel.com>
      Cc: stable@vger.kernel.org
      d70e28f5
    • H
      hv_netvsc: Fix the array sizes to be max supported channels · 9efc2f7d
      Haiyang Zhang 提交于
      The VRSS_CHANNEL_MAX is the max number of channels supported by Hyper-V
      hosts. We use it for the related array sizes instead of using NR_CPUS,
      which may be set to several thousands.
      This patch reduces possible memory allocation failures.
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9efc2f7d
    • H
      hv_netvsc: Fix accessing freed memory in netvsc_change_mtu() · d212b463
      Haiyang Zhang 提交于
      struct netvsc_device is freed in rndis_filter_device_remove(). So we save
      the nvdev->num_chn into a temp variable for later usage.
      
      (Please also include this patch into stable branch.)
      Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d212b463
    • G
      ppp: take reference on channels netns · 1f461dcd
      Guillaume Nault 提交于
      Let channels hold a reference on their network namespace.
      Some channel types, like ppp_async and ppp_synctty, can have their
      userspace controller running in a different namespace. Therefore they
      can't rely on them to preclude their netns from being removed from
      under them.
      
      ==================================================================
      BUG: KASAN: use-after-free in ppp_unregister_channel+0x372/0x3a0 at
      addr ffff880064e217e0
      Read of size 8 by task syz-executor/11581
      =============================================================================
      BUG net_namespace (Not tainted): kasan: bad access detected
      -----------------------------------------------------------------------------
      
      Disabling lock debugging due to kernel taint
      INFO: Allocated in copy_net_ns+0x6b/0x1a0 age=92569 cpu=3 pid=6906
      [<      none      >] ___slab_alloc+0x4c7/0x500 kernel/mm/slub.c:2440
      [<      none      >] __slab_alloc+0x4c/0x90 kernel/mm/slub.c:2469
      [<     inline     >] slab_alloc_node kernel/mm/slub.c:2532
      [<     inline     >] slab_alloc kernel/mm/slub.c:2574
      [<      none      >] kmem_cache_alloc+0x23a/0x2b0 kernel/mm/slub.c:2579
      [<     inline     >] kmem_cache_zalloc kernel/include/linux/slab.h:597
      [<     inline     >] net_alloc kernel/net/core/net_namespace.c:325
      [<      none      >] copy_net_ns+0x6b/0x1a0 kernel/net/core/net_namespace.c:360
      [<      none      >] create_new_namespaces+0x2f6/0x610 kernel/kernel/nsproxy.c:95
      [<      none      >] copy_namespaces+0x297/0x320 kernel/kernel/nsproxy.c:150
      [<      none      >] copy_process.part.35+0x1bf4/0x5760 kernel/kernel/fork.c:1451
      [<     inline     >] copy_process kernel/kernel/fork.c:1274
      [<      none      >] _do_fork+0x1bc/0xcb0 kernel/kernel/fork.c:1723
      [<     inline     >] SYSC_clone kernel/kernel/fork.c:1832
      [<      none      >] SyS_clone+0x37/0x50 kernel/kernel/fork.c:1826
      [<      none      >] entry_SYSCALL_64_fastpath+0x16/0x7a kernel/arch/x86/entry/entry_64.S:185
      
      INFO: Freed in net_drop_ns+0x67/0x80 age=575 cpu=2 pid=2631
      [<      none      >] __slab_free+0x1fc/0x320 kernel/mm/slub.c:2650
      [<     inline     >] slab_free kernel/mm/slub.c:2805
      [<      none      >] kmem_cache_free+0x2a0/0x330 kernel/mm/slub.c:2814
      [<     inline     >] net_free kernel/net/core/net_namespace.c:341
      [<      none      >] net_drop_ns+0x67/0x80 kernel/net/core/net_namespace.c:348
      [<      none      >] cleanup_net+0x4e5/0x600 kernel/net/core/net_namespace.c:448
      [<      none      >] process_one_work+0x794/0x1440 kernel/kernel/workqueue.c:2036
      [<      none      >] worker_thread+0xdb/0xfc0 kernel/kernel/workqueue.c:2170
      [<      none      >] kthread+0x23f/0x2d0 kernel/drivers/block/aoe/aoecmd.c:1303
      [<      none      >] ret_from_fork+0x3f/0x70 kernel/arch/x86/entry/entry_64.S:468
      INFO: Slab 0xffffea0001938800 objects=3 used=0 fp=0xffff880064e20000
      flags=0x5fffc0000004080
      INFO: Object 0xffff880064e20000 @offset=0 fp=0xffff880064e24200
      
      CPU: 1 PID: 11581 Comm: syz-executor Tainted: G    B           4.4.0+
      Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
      rel-1.8.2-0-g33fbe13 by qemu-project.org 04/01/2014
       00000000ffffffff ffff8800662c7790 ffffffff8292049d ffff88003e36a300
       ffff880064e20000 ffff880064e20000 ffff8800662c77c0 ffffffff816f2054
       ffff88003e36a300 ffffea0001938800 ffff880064e20000 0000000000000000
      Call Trace:
       [<     inline     >] __dump_stack kernel/lib/dump_stack.c:15
       [<ffffffff8292049d>] dump_stack+0x6f/0xa2 kernel/lib/dump_stack.c:50
       [<ffffffff816f2054>] print_trailer+0xf4/0x150 kernel/mm/slub.c:654
       [<ffffffff816f875f>] object_err+0x2f/0x40 kernel/mm/slub.c:661
       [<     inline     >] print_address_description kernel/mm/kasan/report.c:138
       [<ffffffff816fb0c5>] kasan_report_error+0x215/0x530 kernel/mm/kasan/report.c:236
       [<     inline     >] kasan_report kernel/mm/kasan/report.c:259
       [<ffffffff816fb4de>] __asan_report_load8_noabort+0x3e/0x40 kernel/mm/kasan/report.c:280
       [<     inline     >] ? ppp_pernet kernel/include/linux/compiler.h:218
       [<ffffffff83ad71b2>] ? ppp_unregister_channel+0x372/0x3a0 kernel/drivers/net/ppp/ppp_generic.c:2392
       [<     inline     >] ppp_pernet kernel/include/linux/compiler.h:218
       [<ffffffff83ad71b2>] ppp_unregister_channel+0x372/0x3a0 kernel/drivers/net/ppp/ppp_generic.c:2392
       [<     inline     >] ? ppp_pernet kernel/drivers/net/ppp/ppp_generic.c:293
       [<ffffffff83ad6f26>] ? ppp_unregister_channel+0xe6/0x3a0 kernel/drivers/net/ppp/ppp_generic.c:2392
       [<ffffffff83ae18f3>] ppp_asynctty_close+0xa3/0x130 kernel/drivers/net/ppp/ppp_async.c:241
       [<ffffffff83ae1850>] ? async_lcp_peek+0x5b0/0x5b0 kernel/drivers/net/ppp/ppp_async.c:1000
       [<ffffffff82c33239>] tty_ldisc_close.isra.1+0x99/0xe0 kernel/drivers/tty/tty_ldisc.c:478
       [<ffffffff82c332c0>] tty_ldisc_kill+0x40/0x170 kernel/drivers/tty/tty_ldisc.c:744
       [<ffffffff82c34943>] tty_ldisc_release+0x1b3/0x260 kernel/drivers/tty/tty_ldisc.c:772
       [<ffffffff82c1ef21>] tty_release+0xac1/0x13e0 kernel/drivers/tty/tty_io.c:1901
       [<ffffffff82c1e460>] ? release_tty+0x320/0x320 kernel/drivers/tty/tty_io.c:1688
       [<ffffffff8174de36>] __fput+0x236/0x780 kernel/fs/file_table.c:208
       [<ffffffff8174e405>] ____fput+0x15/0x20 kernel/fs/file_table.c:244
       [<ffffffff813595ab>] task_work_run+0x16b/0x200 kernel/kernel/task_work.c:115
       [<     inline     >] exit_task_work kernel/include/linux/task_work.h:21
       [<ffffffff81307105>] do_exit+0x8b5/0x2c60 kernel/kernel/exit.c:750
       [<ffffffff813fdd20>] ? debug_check_no_locks_freed+0x290/0x290 kernel/kernel/locking/lockdep.c:4123
       [<ffffffff81306850>] ? mm_update_next_owner+0x6f0/0x6f0 kernel/kernel/exit.c:357
       [<ffffffff813215e6>] ? __dequeue_signal+0x136/0x470 kernel/kernel/signal.c:550
       [<ffffffff8132067b>] ? recalc_sigpending_tsk+0x13b/0x180 kernel/kernel/signal.c:145
       [<ffffffff81309628>] do_group_exit+0x108/0x330 kernel/kernel/exit.c:880
       [<ffffffff8132b9d4>] get_signal+0x5e4/0x14f0 kernel/kernel/signal.c:2307
       [<     inline     >] ? kretprobe_table_lock kernel/kernel/kprobes.c:1113
       [<ffffffff8151d355>] ? kprobe_flush_task+0xb5/0x450 kernel/kernel/kprobes.c:1158
       [<ffffffff8115f7d3>] do_signal+0x83/0x1c90 kernel/arch/x86/kernel/signal.c:712
       [<ffffffff8151d2a0>] ? recycle_rp_inst+0x310/0x310 kernel/include/linux/list.h:655
       [<ffffffff8115f750>] ? setup_sigcontext+0x780/0x780 kernel/arch/x86/kernel/signal.c:165
       [<ffffffff81380864>] ? finish_task_switch+0x424/0x5f0 kernel/kernel/sched/core.c:2692
       [<     inline     >] ? finish_lock_switch kernel/kernel/sched/sched.h:1099
       [<ffffffff81380560>] ? finish_task_switch+0x120/0x5f0 kernel/kernel/sched/core.c:2678
       [<     inline     >] ? context_switch kernel/kernel/sched/core.c:2807
       [<ffffffff85d794e9>] ? __schedule+0x919/0x1bd0 kernel/kernel/sched/core.c:3283
       [<ffffffff81003901>] exit_to_usermode_loop+0xf1/0x1a0 kernel/arch/x86/entry/common.c:247
       [<     inline     >] prepare_exit_to_usermode kernel/arch/x86/entry/common.c:282
       [<ffffffff810062ef>] syscall_return_slowpath+0x19f/0x210 kernel/arch/x86/entry/common.c:344
       [<ffffffff85d88022>] int_ret_from_sys_call+0x25/0x9f kernel/arch/x86/entry/entry_64.S:281
      Memory state around the buggy address:
       ffff880064e21680: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
       ffff880064e21700: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
      >ffff880064e21780: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                                             ^
       ffff880064e21800: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
       ffff880064e21880: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
      ==================================================================
      
      Fixes: 273ec51d ("net: ppp_generic - introduce net-namespace functionality v2")
      Reported-by: NBaozeng Ding <sploving1@gmail.com>
      Signed-off-by: NGuillaume Nault <g.nault@alphalink.fr>
      Reviewed-by: NCyrill Gorcunov <gorcunov@openvz.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1f461dcd
    • V
      net: mediatek: fix checking for NULL instead of IS_ERR() in .probe · 621e49f6
      Vladimir Zapolskiy 提交于
      devm_ioremap_resource() returns ERR_PTR() value on error, it never
      returns NULL, fix it and propagate the returned error upwards.
      
      Fixes: 656e7052 ("net-next: mediatek: add support for MT7623 ethernet")
      Signed-off-by: NVladimir Zapolskiy <vz@mleia.com>
      Reviewed-by: NMatthias Brugger <mbrugger@suse.com>
      Acked-by: NJohn Crispin <blogic@openwrt.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      621e49f6
    • S
      net: phy: at803x: Request 'reset' GPIO only for AT8030 PHY · 9eb13f65
      Sebastian Frias 提交于
      This removes the dependency on GPIOLIB for non faulty PHYs.
      
      Indeed, without this patch, if GPIOLIB is not selected
      devm_gpiod_get_optional() will return -ENOSYS and the driver probe
      call will fail, regardless of the actual PHY hardware.
      
      Out of the 3 PHYs supported by this driver (AT8030, AT8031, AT8035),
      only AT8030 presents the issues that commit 13a56b44 ("net: phy:
      at803x: Add support for hardware reset") attempts to work-around by
      using a 'reset' GPIO line.
      
      Hence, only AT8030 should depend on GPIOLIB operating properly.
      
      Fixes: 13a56b44 ("net: phy: at803x: Add support for hardware reset")
      Signed-off-by: NSebastian Frias <sf84@laposte.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9eb13f65
    • S
      at803x: fix reset handling · d57019d1
      Sergei Shtylyov 提交于
      The driver of course "knows" that the chip's reset signal is active low,
      so  it drives the GPIO to 0  to reset the PHY and to 1 otherwise; however
      all this will only work iff the GPIO  is  specified as active-high in the
      device tree!  I think both the driver and the device trees (if there are
      any -- I was unable to find them) need to be fixed in this case...
      
      Fixes: 13a56b44 ("net: phy: at803x: Add support for hardware reset")
      Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Acked-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d57019d1