29 Aug, 2015

14 commits

  • Signed-off-by: Andrew Friedley
    Signed-off-by: Arthur Kepner
    Signed-off-by: Brendan Cunningham
    Signed-off-by: Brian Welty
    Signed-off-by: Caz Yokoyama
    Signed-off-by: Dean Luick
    Signed-off-by: Dennis Dalessandro
    Signed-off-by: Easwar Hariharan
    Signed-off-by: Harish Chegondi
    Signed-off-by: Ira Weiny
    Signed-off-by: Jim Snow
    Signed-off-by: John Gregor
    Signed-off-by: Jubin John
    Signed-off-by: Kaike Wan
    Signed-off-by: Kevin Pine
    Signed-off-by: Kyle Liddell
    Signed-off-by: Mike Marciniszyn
    Signed-off-by: Mitko Haralanov
    Signed-off-by: Ravi Krishnaswamy
    Signed-off-by: Sadanand Warrier
    Signed-off-by: Sanath Kumar
    Signed-off-by: Sudeep Dutt
    Signed-off-by: Vlad Danushevsky
    Signed-off-by: Doug Ledford

    Mike Marciniszyn
     
  • This patch adds the value of the CNP opcode to the existing list of enumerated
    opcodes in ib_pack.h

    Add common OPA header definitions for driver
    build:
    - opa_port_info.h
    - opa_smi.h
    - hfi1_user.h

    Additionally, ib_mad.h, has additional definitions
    that are common to ib_drivers including:
    - trap support
    - cca support

    The qib driver has the duplication removed in favor
    those in ib_mad.h

    Reviewed-by: Mike Marciniszyn
    Reviewed-by: John, Jubin
    Signed-off-by: Ira Weiny
    Signed-off-by: Dennis Dalessandro
    Signed-off-by: Doug Ledford

    Dennis Dalessandro
     
  • The HW hasn't been sold since 2005, and the SW has definite bit rot.
    Its time to remove it. So move it to staging for a few releases and
    then remove it after that.

    Signed-off-by: Steve Wise
    Signed-off-by: Doug Ledford

    Steve Wise
     
  • It is now time for the ipath driver to begin to be phased out of the kernel.
    This patch moves the ipath driver from the Infiniband sub tree to the staging
    area where it will remain until the code is removed from the kernel in a few
    releases.

    Reviewed-by: Mike Marciniszyn
    Signed-off-by: Dennis Dalessandro
    Signed-off-by: Doug Ledford

    Dennis Dalessandro
     
  • Create the rdma directory in the staging area for use as we deprecate
    some older drivers and as we bring in some new drivers that are in
    need of work. Update the MAINTAINERS file so that updates to these
    files go to linux-rdma@vger.kernel.org. Expected lifespan of this
    directory is three releases for any deprecated drivers moved here
    and an unknown, but theoretically bounded amount of time for the new
    drivers as a new core RDMA transfer library needs to be written and
    the drivers modified to use it in order for them to move out of this
    directory.

    Signed-off-by: Doug Ledford

    Doug Ledford
     
  • Add support for ipv6 address handling clip api provided by lld

    Signed-off-by: Hariprasad Shenai
    Acked-by: Steve Wise
    Signed-off-by: Doug Ledford

    Hariprasad S
     
  • Resolving a link-local IPv6 address with an unspecified source address
    was broken by commit 5462eddd7a, which prevented the IPv6 stack from
    learning the scope id of the link-local IPv6 address, causing random
    failures as the IP stack chose a random link to resolve the address on.

    This commit 5462eddd7a made us bail out of cma_check_linklocal early if
    the address passed in was not an IPv6 link-local address. On the address
    resolution path, the address passed in is the source address; if the
    source address is the unspecified address, which is not link-local, we
    will bail out early.

    This is mostly correct, but if the destination address is a link-local
    address, then we will be following a link-local route, and we'll need to
    tell the IPv6 stack what the scope id of the destination address is.
    This used to be done by last line of cma_check_linklocal, which is
    skipped when bailing out early:

    dev_addr->bound_dev_if = sin6->sin6_scope_id;

    (In cma_bind_addr, the sin6_scope_id of the source address is set to the
    sin6_scope_id of the destination address, so this is correct)
    This line is required in turn for the following line, L279 of
    addr6_resolve, to actually inform the IPv6 stack of the scope id:

    fl6.flowi6_oif = addr->bound_dev_if;

    Since we can only know we are in this failure case when we have access
    to both the source IPv6 address and destination IPv6 address, we have to
    deal with this further up the stack. So detect this failure case in
    cma_bind_addr, and set bound_dev_if to the destination address scope id
    to correct it.

    Signed-off-by: Spencer Baugh
    Signed-off-by: Doug Ledford

    Spencer Baugh
     
  • Something like this:

    CPU A CPU B
    Acked-by: Sean Hefty

    ======================== ================================
    ucma_destroy_id()
    wait_for_completion()
    .. anything
    ucma_put_ctx()
    complete()
    .. continues ...
    ucma_leave_multicast()
    mutex_lock(mut)
    atomic_inc(ctx->ref)
    mutex_unlock(mut)
    ucma_free_ctx()
    ucma_cleanup_multicast()
    mutex_lock(mut)
    kfree(mc)
    rdma_leave_multicast(mc->ctx->cm_id,..

    Fix it by latching the ref at 0. Once it goes to 0 mc and ctx cannot
    leave the mutex(mut) protection.

    The other atomic_inc in ucma_get_ctx is OK because mutex(mut) protects
    it from racing with ucma_destroy_id.

    Signed-off-by: Jason Gunthorpe
    Acked-by: Sean Hefty
    Signed-off-by: Doug Ledford

    Jason Gunthorpe
     
  • This enables ORD/IRD negotiation and its about time to enable it by
    default

    Signed-off-by: Steve Wise
    Signed-off-by: Hariprasad Shenai
    Signed-off-by: Doug Ledford

    Hariprasad S
     
  • Currently the sg tablesize, which dictates fast register page list
    depth to use, does not take into account the limits of the rdma device.
    So adjust it once we discover the device fastreg max depth limit. Also
    adjust the max_sectors based on the resulting sg tablesize.

    Signed-off-by: Steve Wise
    Signed-off-by: Doug Ledford

    Steve Wise
     
  • The only place that assigns mr inside the loop already does a break.
    So "if (mr)" will never be true here since the function initializes mr
    to NULL at the top. We can just drop the extra if and break here.

    Signed-off-by: Roland Dreier
    Acked-by: Eli Cohen
    Signed-off-by: Doug Ledford

    Roland Dreier
     
  • The lkey table is allocated with with a get_user_pages() with an
    order based on a number of index bits from a module parameter.

    The underlying kernel code cannot allocate that many contiguous pages.

    There is no reason the underlying memory needs to be physically
    contiguous.

    This patch:
    - switches the allocation/deallocation to vmalloc/vfree
    - caps the number of bits to 23 to insure at least 1 generation bit
    o this matches the module parameter description

    Cc: stable@vger.kernel.org
    Reviewed-by: Vinit Agnihotri
    Signed-off-by: Mike Marciniszyn
    Signed-off-by: Doug Ledford

    Mike Marciniszyn
     
  • Should be all the page sizes that are supported by the
    device.

    Reported-by: Jason Gunthorpe
    Signed-off-by: Sagi Grimberg
    Reviewed-by: Jason Gunthorpe
    Signed-off-by: Doug Ledford

    Sagi Grimberg
     
  • The mlx5 driver exposes device capability IB_DEVICE_LOCAL_DMA_LKEY
    but does not set the the device local_dma_lkey. This breaks
    rpcrdma drivers.

    Query and set this lkey when creating the device resources.

    Signed-off-by: Sagi Grimberg
    Signed-off-by: Doug Ledford

    Sagi Grimberg
     

24 Aug, 2015

2 commits


23 Aug, 2015

4 commits

  • Pull MIPS bug fixes from Ralf Baechle:
    "Two more fixes for 4.2.

    One fixes a build issue with the LLVM assembler - LLVM assembler macro
    names are case sensitive, GNU as macro names are insensitive; the
    other corrects a license string (GPL v2, not GPLv2) such that the
    module loader will recognice the license correctly"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
    FIRMWARE: bcm47xx_nvram: Fix module license.
    MIPS: Fix LLVM build issue.

    Linus Torvalds
     
  • Pull 9p regression fix from Al Viro:
    "Fix for breakage introduced when switching p9_client_{read,write}() to
    struct iov_iter * (went into 4.1)"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    9p: ensure err is initialized to 0 in p9_client_read/write

    Linus Torvalds
     
  • Some use of those functions were providing unitialized values to those
    functions. Notably, when reading 0 bytes from an empty file on a 9P
    filesystem, the return code of read() was not 0.

    Tested with this simple program:

    #include
    #include
    #include
    #include
    #include

    int main(int argc, const char **argv)
    {
    assert(argc == 2);
    char buffer[256];
    int fd = open(argv[1], O_RDONLY|O_NOCTTY);
    assert(fd >= 0);
    assert(read(fd, buffer, 0) == 0);
    return 0;
    }

    Cc: stable@vger.kernel.org # v4.1
    Signed-off-by: Vincent Bernat
    Signed-off-by: Al Viro

    Vincent Bernat
     
  • Pull ARM fixes from Russell King:
    "Another couple of small ARM fixes.

    A patch from Masahiro Yamada who noticed that "make -jN all zImage"
    would end up generating bad images where N > 1, and a patch from
    Nicolas to fix the Marvell CPU user access optimisation code when page
    faults are disabled"

    * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
    ARM: 8418/1: add boot image dependencies to not generate invalid images
    ARM: 8414/1: __copy_to_user_memcpy: fix mmap semaphore usage

    Linus Torvalds
     

22 Aug, 2015

12 commits

  • Pull x86 fixes from Ingo Molnar:
    "Various low level fixes: fix more fallout from the FPU rework and the
    asm entry code rework, plus an MSI rework fix, and an idle-tracing fix"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/fpu/math-emu: Fix crash in fork()
    x86/fpu/math-emu: Fix math-emu boot crash
    x86/idle: Restore trace_cpu_idle to mwait_idle() calls
    x86/irq: Build correct vector mapping for multiple MSI interrupts
    Revert "sched/x86_64: Don't save flags on context switch"

    Linus Torvalds
     
  • Pull perf fixes from Ingo Molnar:
    "Tooling fixes: a 'perf record' deadlock fix plus debuggability fixes"

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf top: Show backtrace when handling a SIGSEGV on --stdio mode
    perf tools: Fix buildid processing
    perf tools: Make fork event processing more resilient
    perf tools: Avoid deadlock when map_groups are broken

    Linus Torvalds
     
  • Pull irq fixes from Thomas Gleixner:
    "A series of small fixlets for a regression visible on OMAP devices
    caused by the conversion of the OMAP interrupt chips to hierarchical
    interrupt domains. Mostly one liners on the driver side plus a small
    helper function in the core to avoid open coded mess in the drivers"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    irqchip/crossbar: Restore set_wake functionality
    irqchip/crossbar: Restore the mask on suspend behaviour
    ARM: OMAP: wakeupgen: Restore the irq_set_type() mechanism
    irqchip/crossbar: Restore the irq_set_type() mechanism
    genirq: Introduce irq_chip_set_type_parent() helper
    genirq: Don't return ENOSYS in irq_chip_retrigger_hierarchy

    Linus Torvalds
     
  • Pull timer fixes from Thomas Gleixner:
    "Two minimalistic fixes for 4.2 regressions:

    - Eric fixed a thinko in the timer_list base switching code caused by
    the overhaul of the timer wheel. It can cause a cpu to see the
    wrong base for a timer while we move the timer around.

    - Guenter fixed a regression for IMX if booted w/o device tree, where
    the timer interrupt is not initialized and therefor the machine
    fails to boot"

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    clocksource/imx: Fix boot with non-DT systems
    timer: Write timer->flags atomically

    Linus Torvalds
     
  • During later stages of math-emu bootup the following crash triggers:

    math_emulate: 0060:c100d0a8
    Kernel panic - not syncing: Math emulation needed in kernel
    CPU: 0 PID: 1511 Comm: login Not tainted 4.2.0-rc7+ #1012
    [...]
    Call Trace:
    [] dump_stack+0x41/0x52
    [] panic+0x77/0x189
    [] ? math_error+0x140/0x140
    [] math_emulate+0xba7/0xbd0
    [] ? fpu__copy+0x138/0x1c0
    [] ? __alloc_pages_nodemask+0x12c/0x870
    [] ? proc_clear_tty+0x40/0x70
    [] ? session_clear_tty+0x1e/0x30
    [] ? math_error+0x140/0x140
    [] do_device_not_available+0x45/0x70
    [] ? fpu__copy+0x138/0x1c0
    [] error_code+0x5a/0x60
    [] ? math_error+0x140/0x140
    [] ? fpu__copy+0x138/0x1c0
    [] arch_dup_task_struct+0x25/0x30
    [] copy_process.part.51+0xea/0x1480
    [] ? dput+0x175/0x200
    [] ? no_tty+0x30/0x30
    [] ? do_vfs_ioctl+0x322/0x540
    [] _do_fork+0xca/0x340
    [] ? SyS_rt_sigaction+0x66/0x90
    [] SyS_clone+0x27/0x30
    [] sysenter_do_call+0x12/0x12

    The reason is the incorrect assumption in fpu_copy(), that FNSAVE
    can be executed from math-emu kernels as well.

    Don't try to copy the registers, the soft state will be copied
    by fork anyway, so the child task inherits the parent task's
    soft math state.

    With this fix applied math-emu kernels boot up fine on modern
    hardware and the 'no387 nofxsr' boot options.

    Cc: Andy Lutomirski
    Cc: Bobby Powers
    Cc: Borislav Petkov
    Cc: Brian Gerst
    Cc: Dave Hansen
    Cc: Denys Vlasenko
    Cc: Fenghua Yu
    Cc: H. Peter Anvin
    Cc: Linus Torvalds
    Cc: Oleg Nesterov
    Cc: Peter Zijlstra
    Cc: Quentin Casasnovas
    Cc: Thomas Gleixner
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • On a math-emu bootup the following crash occurs:

    Initializing CPU#0
    ------------[ cut here ]------------
    kernel BUG at arch/x86/kernel/traps.c:779!
    invalid opcode: 0000 [#1] SMP
    [...]
    EIP is at do_device_not_available+0xe/0x70
    [...]
    Call Trace:
    [] error_code+0x5a/0x60
    [] ? math_error+0x140/0x140
    [] ? fpu__init_cpu+0x59/0xa0
    [] cpu_init+0x202/0x330
    [] ? __native_set_fixmap+0x1f/0x30
    [] trap_init+0x305/0x346
    [] start_kernel+0x1a5/0x35d
    [] i386_start_kernel+0x82/0x86

    The reason is that in the following commit:

    b1276c48e91b ("x86/fpu: Initialize fpregs in fpu__init_cpu_generic()")

    I failed to consider math-emu's limitation that it cannot execute the
    FNINIT instruction in kernel mode.

    The long term fix might be to allow math-emu to execute (certain) kernel
    mode FPU instructions, but for now apply the safe (albeit somewhat ugly)
    fix: initialize the emulation state explicitly without trapping out to
    the FPU emulator.

    Cc: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Brian Gerst
    Cc: Dave Hansen
    Cc: Denys Vlasenko
    Cc: Fenghua Yu
    Cc: H. Peter Anvin
    Cc: Linus Torvalds
    Cc: Oleg Nesterov
    Cc: Peter Zijlstra
    Cc: Quentin Casasnovas
    Cc: Thomas Gleixner
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • While the idea behind get_maintainer seems highly useful it's
    unfortunately way to trigger happy to grab people that once had a few
    commits to files. For someone like me who does a lot of tree-wide API
    work that leads to an incredible amount of Cc spam.

    Signed-off-by: Christoph Hellwig
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Hellwig
     
  • Commit c48a11c7ad26 ("netvm: propagate page->pfmemalloc to skb") added
    checks for page->pfmemalloc to __skb_fill_page_desc():

    if (page->pfmemalloc && !page->mapping)
    skb->pfmemalloc = true;

    It assumes page->mapping == NULL implies that page->pfmemalloc can be
    trusted. However, __delete_from_page_cache() can set set page->mapping
    to NULL and leave page->index value alone. Due to being in union, a
    non-zero page->index will be interpreted as true page->pfmemalloc.

    So the assumption is invalid if the networking code can see such a page.
    And it seems it can. We have encountered this with a NFS over loopback
    setup when such a page is attached to a new skbuf. There is no copying
    going on in this case so the page confuses __skb_fill_page_desc which
    interprets the index as pfmemalloc flag and the network stack drops
    packets that have been allocated using the reserves unless they are to
    be queued on sockets handling the swapping which is the case here and
    that leads to hangs when the nfs client waits for a response from the
    server which has been dropped and thus never arrive.

    The struct page is already heavily packed so rather than finding another
    hole to put it in, let's do a trick instead. We can reuse the index
    again but define it to an impossible value (-1UL). This is the page
    index so it should never see the value that large. Replace all direct
    users of page->pfmemalloc by page_is_pfmemalloc which will hide this
    nastiness from unspoiled eyes.

    The information will get lost if somebody wants to use page->index
    obviously but that was the case before and the original code expected
    that the information should be persisted somewhere else if that is
    really needed (e.g. what SLAB and SLUB do).

    [akpm@linux-foundation.org: fix blooper in slub]
    Fixes: c48a11c7ad26 ("netvm: propagate page->pfmemalloc to skb")
    Signed-off-by: Michal Hocko
    Debugged-by: Vlastimil Babka
    Debugged-by: Jiri Bohac
    Cc: Eric Dumazet
    Cc: David Miller
    Acked-by: Mel Gorman
    Cc: [3.6+]
    Signed-off-by: Andrew Morton

    Signed-off-by: Linus Torvalds

    Michal Hocko
     
  • Pull PCI fixes from Bjorn Helgaas:
    "These are fixes for ASPM-related NULL pointer dereference crashes on
    Sparc and PowerPC and 64-bit PCI address-related HPMC crashes on
    PA-RISC. These are both caused by things we merged in the v4.2 merge
    window. Details:

    Resource management
    - Don't use 64-bit bus addresses on PA-RISC

    Miscellaneous
    - Tolerate hierarchies with no Root Port"

    * tag 'pci-v4.2-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
    PCI: Don't use 64-bit bus addresses on PA-RISC
    PCI: Tolerate hierarchies with no Root Port

    Linus Torvalds
     
  • Pull media fixes from Mauro Carvalho Chehab:

    - a regression fix at the videobuf2 core driver

    - fix error handling at mantis probing code

    - revert the IR encode patches, as the API is not mature enough.
    So, better to postpone the changes to a latter Kernel

    - fix Kconfig breakages on some randconfig scenarios.

    * tag 'media/v4.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    [media] mantis: Fix error handling in mantis_dma_init()
    Revert "[media] rc: rc-ir-raw: Add scancode encoder callback"
    Revert "[media] rc: rc-ir-raw: Add Manchester encoder (phase encoder) helper"
    Revert "[media] rc: ir-rc5-decoder: Add encode capability"
    Revert "[media] rc: ir-rc6-decoder: Add encode capability"
    Revert "[media] rc: rc-core: Add support for encode_wakeup drivers"
    Revert "[media] rc: rc-loopback: Add loopback of filter scancodes"
    Revert "[media] rc: nuvoton-cir: Add support for writing wakeup samples via sysfs filter callback"
    [media] vb2: Fix compilation breakage when !CONFIG_BUG
    [media] vb2: Only requeue buffers immediately once streaming is started
    [media] media/pci/cobalt: fix Kconfig and build when SND is not enabled
    [media] media/dvb: fix ts2020.c Kconfig and build

    Linus Torvalds
     
  • Pull input layer fix from Dmitry Torokhov:
    "A small fixup to gpio_keys_polled driver"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: gpio_keys_polled - request GPIO pin as input.

    Linus Torvalds
     
  • Pull drm fixes from Dave Airlie:
    "A bunch of i915 fixes, one revert a VBT fix that was a bit premature,
    and some braswell feature removal that the hw actually didn't support.

    One radeon race fix at boot, and one hlcdc build fix, one fix from
    Russell that fixes build as well with new audio features.

    This is hopefully all I have until -next"

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    drm/radeon: fix hotplug race at startup
    drm/edid: add function to help find SADs
    drm/i915: Avoid TP3 on CHV
    drm/i915: remove HBR2 from chv supported list
    Revert "drm/i915: Add eDP intermediate frequencies for CHV"
    Revert "drm/i915: Allow parsing of variable size child device entries from VBT"
    drm/atmel-hlcdc: Compile suspend/resume for PM_SLEEP only
    drm/i915: Flag the execlists context object as dirty after every use

    Linus Torvalds
     

21 Aug, 2015

8 commits

  • We apparantly get a hotplug irq before we've initialised
    modesetting,

    [drm] Loading R100 Microcode
    BUG: unable to handle kernel NULL pointer dereference at (null)
    IP: [] __mutex_lock_slowpath+0x23/0x91
    *pde = 00000000
    Oops: 0002 [#1]
    Modules linked in: radeon(+) drm_kms_helper ttm drm i2c_algo_bit backlight pcspkr psmouse evdev sr_mod input_leds led_class cdrom sg parport_pc parport floppy intel_agp intel_gtt lpc_ich acpi_cpufreq processor button mfd_core agpgart uhci_hcd ehci_hcd rng_core snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm usbcore usb_common i2c_i801 i2c_core snd_timer snd soundcore thermal_sys
    CPU: 0 PID: 15 Comm: kworker/0:1 Not tainted 4.2.0-rc7-00015-gbf67402 #111
    Hardware name: MicroLink /D850MV , BIOS MV85010A.86A.0067.P24.0304081124 04/08/2003
    Workqueue: events radeon_hotplug_work_func [radeon]
    task: f6ca5900 ti: f6d3e000 task.ti: f6d3e000
    EIP: 0060:[] EFLAGS: 00010282 CPU: 0
    EIP is at __mutex_lock_slowpath+0x23/0x91
    EAX: 00000000 EBX: f5e900fc ECX: 00000000 EDX: fffffffe
    ESI: f6ca5900 EDI: f5e90100 EBP: f5e90000 ESP: f6d3ff0c
    DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068
    CR0: 8005003b CR2: 00000000 CR3: 36f61000 CR4: 000006d0
    Stack:
    f5e90100 00000000 c103c4c1 f6d2a5a0 f5e900fc f6df394c c125f162 f8b0faca
    f6d2a5a0 c138ca00 f6df394c f7395600 c1034741 00d40000 00000000 f6d2a5a0
    c138ca00 f6d2a5b8 c138ca10 c1034b58 00000001 f6d40000 f6ca5900 f6d0c940
    Call Trace:
    [] ? dequeue_task_fair+0xa4/0xb7
    [] ? mutex_lock+0x9/0xa
    [] ? radeon_hotplug_work_func+0x17/0x57 [radeon]
    [] ? process_one_work+0xfc/0x194
    [] ? worker_thread+0x18d/0x218
    [] ? rescuer_thread+0x1d5/0x1d5
    [] ? kthread+0x7b/0x80
    [] ? ret_from_kernel_thread+0x20/0x30
    [] ? init_completion+0x18/0x18
    Code: 42 08 e8 8e a6 dd ff c3 57 56 53 83 ec 0c 8b 35 48 f7 37 c1 8b 10 4a 74 1a 89 c3 8d 78 04 8b 40 08 89 63

    Reported-and-Tested-by: Meelis Roos
    Signed-off-by: Dave Airlie

    Dave Airlie
     
  • Revert of a VBT parsing commit that should've been queued for drm-next,
    not v4.2. The revert unbreaks Braswell among other things.

    Also on Braswell removal of DP HBR2/TP3 and intermediate eDP frequency
    support. The code was optimistically added based on incorrect
    documentation; the platform does not support them. These are cc: stable.

    Finally a gpu state fix from Chris, also cc: stable.

    * tag 'drm-intel-fixes-2015-08-20' of git://anongit.freedesktop.org/drm-intel:
    drm/i915: Avoid TP3 on CHV
    drm/i915: remove HBR2 from chv supported list
    Revert "drm/i915: Add eDP intermediate frequencies for CHV"
    Revert "drm/i915: Allow parsing of variable size child device entries from VBT"
    drm/i915: Flag the execlists context object as dirty after every use

    Dave Airlie
     
  • Pull power management and ACPI fixes from Rafael Wysocki:
    "These fix a recent regression in the ACPI backlight code and a memory
    leak in the Exynos cpufreq driver.

    Specifics:

    - Fix a recently introduced issue in the ACPI backlight code which
    causes lockdep to complain about a circular lock dependency during
    initialization (Hans de Goede).

    - Fix a possible memory during initialization in the Exynos cpufreq
    driver (Shailendra Verma)"

    * tag 'pm+acpi-4.2-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    cpufreq: exynos: Fix for memory leak in case SoC name does not match
    ACPI / video: Fix circular lock dependency issue in the video-detect code

    Linus Torvalds
     
  • * acpi-video:
    ACPI / video: Fix circular lock dependency issue in the video-detect code

    * cpufreq-fixes:
    cpufreq: exynos: Fix for memory leak in case SoC name does not match

    Rafael J. Wysocki
     
  • Meelis and Helge reported that 3a9ad0b4fdcd ("PCI: Add pci_bus_addr_t")
    caused HPMCs on A500 and hangs on rp5470.

    PA-RISC does not set ARCH_DMA_ADDR_T_64BIT, even for 64-bit kernels, so
    prior to 3a9ad0b4fdcd, we always used 32-bit PCI addresses. After
    3a9ad0b4fdcd, we do use 64-bit PCI addresses in 64-bit kernels, and
    apparently there's some PA-RISC problem related to them.

    Fixes: 3a9ad0b4fdcd ("PCI: Add pci_bus_addr_t")
    Link: http://lkml.kernel.org/r/alpine.LRH.2.11.1507260929000.30065@math.ut.ee
    Reported-by: Meelis Roos
    Reported-by: Helge Deller
    Tested-by: Helge Deller
    Based-on-idea-by: Yinghai Lu
    Signed-off-by: Bjorn Helgaas
    Acked-by: Yinghai Lu
    CC: stable@vger.kernel.org # v3.19+

    Bjorn Helgaas
     
  • Commit b253149b843f ("sched/idle/x86: Restore mwait_idle() to fix boot
    hangs, to improve power savings and to improve performance") restores
    mwait_idle(), but the trace_cpu_idle related calls are missing. This
    causes powertop on my old desktop powered by Intel Core2 E6550 to
    report zero wakeups and zero events.

    Add them back to restore the proper behaviour.

    Fixes: b253149b843f ("sched/idle/x86: Restore mwait_idle() to ...")
    Signed-off-by: Jisheng Zhang
    Cc:
    Cc: stable@vger.kernel.org # 4.1
    Link: http://lkml.kernel.org/r/1440046479-4262-1-git-send-email-jszhang@marvell.com
    Signed-off-by: Thomas Gleixner

    Jisheng Zhang
     
  • Pull networking fixes from David Miller:

    1) Out of bounds array access in 802.11 minstrel code, from Adrien
    Schildknecht.

    2) Don't use skb_get() in IGMP/MLD code paths, as this makes
    pskb_may_pull() BUG. From Linus Luessing.

    3) Fix off by one in ipv4 route dumping code, from Andy Whitcroft.

    4) Fix deadlock in reqsk_queue_unlink(), from Eric Dumazet.

    5) Fix ppp device deregistration wrt. netns deletion, from Guillaume
    Nault.

    6) Fix deadlock when creating per-cpu ipv6 routes, from Martin KaFai
    Lau.

    7) Fix memory leak in batman-adv code, from Sven Eckelmann.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
    batman-adv: Fix memory leak on tt add with invalid vlan
    net: phy: fix semicolon.cocci warnings
    net: qmi_wwan: add HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module
    be2net: avoid vxlan offloading on multichannel configs
    ipv6: Fix a potential deadlock when creating pcpu rt
    ipv6: Add rt6_make_pcpu_route()
    ipv6: Remove un-used argument from ip6_dst_alloc()
    net: phy: workaround for buggy cable detection by LAN8700 after cable plugging
    net: ethernet: micrel: fix an error code
    ppp: fix device unregistration upon netns deletion
    net: phy: fix PHY_RUNNING in phy_state_machine
    Revert "net: limit tcp/udp rmem/wmem to SOCK_{RCV,SND}BUF_MIN"
    inet: fix potential deadlock in reqsk_queue_unlink()
    gianfar: Restore link state settings after MAC reset
    ipv4: off-by-one in continuation handling in /proc/net/route
    net: fix wrong skb_get() usage / crash in IGMP/MLD parsing code
    mac80211: fix invalid read in minstrel_sort_best_tp_rates()

    Linus Torvalds
     
  • Pull xen build fix from David Vrabel:
    "Fix i386 build with an (uncommon) configuration"

    * tag 'for-linus-4.2-rc7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
    x86/xen: make CONFIG_XEN depend on CONFIG_X86_LOCAL_APIC

    Linus Torvalds