1. 12 May, 2017 15 commits
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-for-v4.12-rc1' of git://people.freedesktop.org/~airlied/linux · a34ab101
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "AMD, nouveau, one i915, and one EDID fix for v4.12-rc1
      
        Some fixes that it would be good to have in rc1. It contains the i915
        quiet fix that you reported.
      
        It also has an amdgpu fixes pull, with lots of ongoing work on Vega10
        which is new in this kernel and is preliminary support so may have a
        fair bit of movement.
      
        Otherwise a few non-Vega10 AMD fixes, one EDID fix and some nouveau
        regression fixers"
      
      * tag 'drm-fixes-for-v4.12-rc1' of git://people.freedesktop.org/~airlied/linux: (144 commits)
        drm/i915: Make vblank evade warnings optional
        drm/nouveau/therm: remove ineffective workarounds for alarm bugs
        drm/nouveau/tmr: avoid processing completed alarms when adding a new one
        drm/nouveau/tmr: fix corruption of the pending list when rescheduling an alarm
        drm/nouveau/tmr: handle races with hw when updating the next alarm time
        drm/nouveau/tmr: ack interrupt before processing alarms
        drm/nouveau/core: fix static checker warning
        drm/nouveau/fb/ram/gf100-: remove 0x10f200 read
        drm/nouveau/kms/nv50: skip core channel cursor update on position-only changes
        drm/nouveau/kms/nv50: fix source-rect-only plane updates
        drm/nouveau/kms/nv50: remove pointless argument to window atomic_check_acquire()
        drm/amd/powerplay: refine pwm1_enable callback functions for CI.
        drm/amd/powerplay: refine pwm1_enable callback functions for vi.
        drm/amd/powerplay: refine pwm1_enable callback functions for Vega10.
        drm/amdgpu: refine amdgpu pwm1_enable sysfs interface.
        drm/amdgpu: add amd fan ctrl mode enums.
        drm/amd/powerplay: add more smu message on Vega10.
        drm/amdgpu: fix dependency issue
        drm/amd: fix init order of sched job
        drm/amdgpu: add some additional vega10 pci ids
        ...
      a34ab101
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · bd1286f9
      Linus Torvalds authored
      Pull SCSI target updates from Nicholas Bellinger:
       "Things were a lot more calm than previously expected. It's primarily
        fixes in various areas, with most of the new functionality centering
        around TCMU backend driver work that Xiubo Li has been driving.
      
        Here's the summary on the feature side:
      
         - Make T10-PI verify configurable for emulated (FILEIO + RD) backends
          (Dmitry Monakhov)
         - Allow target-core/TCMU pass-through to use in-kernel SPC-PR logic
          (Bryant Ly + MNC)
         - Add TCMU support for growing ring buffer size (Xiubo Li + MNC)
         - Add TCMU support for global block data pool (Xiubo Li + MNC)
      
        and on the bug-fix side:
      
         - Fix COMPARE_AND_WRITE non GOOD status handling for READ phase
          failures (Gary Guo + nab)
         - Fix iscsi-target hang with explicitly changing per NodeACL
          CmdSN number depth with concurrent login driven session
          reinstatement.  (Gary Guo + nab)
         - Fix ibmvscsis fabric driver ABORT task handling (Bryant Ly)
         - Fix target-core/FILEIO zero length handling (Bart Van Assche)
      
        Also, there was an OOPs introduced with the WRITE_VERIFY changes that
        I ended up reverting at the last minute, because as not unusual Bart
        and I could not agree on the fix in time for -rc1. Since it's specific
        to a conformance test, it's been reverted for now.
      
        There is a separate patch in the queue to address the underlying
        control CDB write overflow regression in >= v4.3 separate from the
        WRITE_VERIFY revert here, that will be pushed post -rc1"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (30 commits)
        Revert "target: Fix VERIFY and WRITE VERIFY command parsing"
        IB/srpt: Avoid that aborting a command triggers a kernel warning
        IB/srpt: Fix abort handling
        target/fileio: Fix zero-length READ and WRITE handling
        ibmvscsis: Do not send aborted task response
        tcmu: fix module removal due to stuck thread
        target: Don't force session reset if queue_depth does not change
        iscsi-target: Set session_fall_back_to_erl0 when forcing reinstatement
        target: Fix compare_and_write_callback handling for non GOOD status
        tcmu: Recalculate the tcmu_cmd size to save cmd area memories
        tcmu: Add global data block pool support
        tcmu: Add dynamic growing data area feature support
        target: fixup error message in target_tg_pt_gp_tg_pt_gp_id_store()
        target: fixup error message in target_tg_pt_gp_alua_access_type_store()
        target/user: PGR Support
        target: Add WRITE_VERIFY_16
        Documentation/target: add an example script to configure an iSCSI target
        target: Use kmalloc_array() in transport_kmap_data_sg()
        target: Use kmalloc_array() in compare_and_write_callback()
        target: Improve size determinations in two functions
        ...
      bd1286f9
    • Linus Torvalds's avatar
      Merge branch 'work.sane_pwd' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 05045329
      Linus Torvalds authored
      Pull misc vfs updates from Al Viro:
       "Making sure that something like a referral point won't end up as pwd
        or root.
      
        The main part is the last commit (fixing mntns_install()); that one
        fixes a hard-to-hit race. The fchdir() commit is making fchdir(2) a
        bit more robust - it should be impossible to get opened files (even
        O_PATH ones) for referral points in the first place, so the existing
        checks are OK, but checking the same thing as in chdir(2) is just as
        cheap.
      
        The path_init() commit removes a redundant check that shouldn't have
        been there in the first place"
      
      * 'work.sane_pwd' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        make sure that mntns_install() doesn't end up with referral for root
        path_init(): don't bother with checking MAY_EXEC for LOOKUP_ROOT
        make sure that fchdir() won't accept referral points, etc.
      05045329
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e0c4a5fc
      Linus Torvalds authored
      Pull perf updates/fixes from Ingo Molnar:
       "Mostly tooling updates, but also two kernel fixes: a call chain
        handling robustness fix and an x86 PMU driver event definition fix"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/callchain: Force USER_DS when invoking perf_callchain_user()
        tools build: Fixup sched_getcpu feature test
        perf tests kmod-path: Don't fail if compressed modules aren't supported
        perf annotate: Fix AArch64 comment char
        perf tools: Fix spelling mistakes
        perf/x86: Fix Broadwell-EP DRAM RAPL events
        perf config: Refactor a duplicated code for obtaining config file name
        perf symbols: Allow user probes on versioned symbols
        perf symbols: Accept symbols starting at address 0
        tools lib string: Adopt prefixcmp() from perf and subcmd
        perf units: Move parse_tag_value() to units.[ch]
        perf ui gtk: Move gtk .so name to the only place where it is used
        perf tools: Move HAS_BOOL define to where perl headers are used
        perf memswap: Split the byteswap memory range wrappers from util.[ch]
        perf tools: Move event prototypes from util.h to event.h
        perf buildid: Move prototypes from util.h to build-id.h
      e0c4a5fc
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · dfcb7b23
      Linus Torvalds authored
      Pull timer fix from Ingo Molnar:
       "A single ARM Juno clocksource driver fix"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource/arm_arch_timer: Fix arch_timer_mem_find_best_frame()
      dfcb7b23
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1b84fc15
      Linus Torvalds authored
      Pull stackprotector fixlet from Ingo Molnar:
       "A single fix/enhancement to increase stackprotector canary randomness
        on 64-bit kernels with very little cost"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        stackprotector: Increase the per-task stack canary's random range from 32 bits to 64 bits on 64-bit platforms
      1b84fc15
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f1e0527d
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Misc fixes:
      
         - two boot crash fixes
         - unwinder fixes
         - kexec related kernel direct mappings enhancements/fixes
         - more Clang support quirks
         - minor cleanups
         - Documentation fixes"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/intel_rdt: Fix a typo in Documentation
        x86/build: Don't add -maccumulate-outgoing-args w/o compiler support
        x86/boot/32: Fix UP boot on Quark and possibly other platforms
        x86/mm/32: Set the '__vmalloc_start_set' flag in initmem_init()
        x86/kexec/64: Use gbpages for identity mappings if available
        x86/mm: Add support for gbpages to kernel_ident_mapping_init()
        x86/boot: Declare error() as noreturn
        x86/mm/kaslr: Use the _ASM_MUL macro for multiplication to work around Clang incompatibility
        x86/mm: Fix boot crash caused by incorrect loop count calculation in sync_global_pgds()
        x86/asm: Don't use RBP as a temporary register in csum_partial_copy_generic()
        x86/microcode/AMD: Remove redundant NULL check on mc
      f1e0527d
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.12b-rc0c-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 5836e422
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
       "This contains two fixes for booting under Xen introduced during this
        merge window and two fixes for older problems, where one is just much
        more probable due to another merge window change"
      
      * tag 'for-linus-4.12b-rc0c-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen: adjust early dom0 p2m handling to xen hypervisor behavior
        x86/amd: don't set X86_BUG_SYSRET_SS_ATTRS when running under Xen
        xen/x86: Do not call xen_init_time_ops() until shared_info is initialized
        x86/xen: fix xsave capability setting
      5836e422
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · dc2a2481
      Linus Torvalds authored
      Pull more powerpc updates from Michael Ellerman:
       "The change to the Linux page table geometry was delayed for more
        testing with 16G pages, and there's the new CPU features stuff which
        just needed one more polish before going in. Plus a few changes from
        Scott which came in a bit late. And then various fixes, mostly minor.
      
        Summary highlights:
      
         - rework the Linux page table geometry to lower memory usage on
           64-bit Book3S (IBM chips) using the Hash MMU.
      
         - support for a new device tree binding for discovering CPU features
           on future firmwares.
      
         - Freescale updates from Scott:
            "Includes a fix for a powerpc/next mm regression on 64e, a fix for
             a kernel hang on 64e when using a debugger inside a relocated
             kernel, a qman fix, and misc qe improvements."
      
        Thanks to: Christophe Leroy, Gavin Shan, Horia Geantă, LiuHailong,
        Nicholas Piggin, Roy Pledge, Scott Wood, Valentin Longchamp"
      
      * tag 'powerpc-4.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/64s: Support new device tree binding for discovering CPU features
        powerpc: Don't print cpu_spec->cpu_name if it's NULL
        of/fdt: introduce of_scan_flat_dt_subnodes and of_get_flat_dt_phandle
        powerpc/64s: Fix unnecessary machine check handler relocation branch
        powerpc/mm/book3s/64: Rework page table geometry for lower memory usage
        powerpc: Fix distclean with Makefile.postlink
        powerpc/64e: Don't place the stack beyond TASK_SIZE
        powerpc/powernv: Block PCI config access on BCM5718 during EEH recovery
        powerpc/8xx: Adding support of IRQ in MPC8xx GPIO
        soc/fsl/qbman: Disable IRQs for deferred QBMan work
        soc/fsl/qe: add EXPORT_SYMBOL for the 2 qe_tdm functions
        soc/fsl/qe: only apply QE_General4 workaround on affected SoCs
        soc/fsl/qe: round brg_freq to 1kHz granularity
        soc/fsl/qe: get rid of immrbar_virt_to_phys()
        net: ethernet: ucc_geth: fix MEM_PART_MURAM mode
        powerpc/64e: Fix hang when debugging programs with relocated kernel
      dc2a2481
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · ac3c4aa2
      Linus Torvalds authored
      Pull MIPS updates from James Hogan:
       "math-emu:
         - Add missing clearing of BLTZALL and BGEZALL emulation counters
         - Fix BC1EQZ and BC1NEZ condition handling
         - Fix BLEZL and BGTZL identification
      
        BPF:
         - Add JIT support for SKF_AD_HATYPE
         - Use unsigned access for unsigned SKB fields
         - Quit clobbering callee saved registers in JIT code
         - Fix multiple problems in JIT skb access helpers
      
        Loongson 3:
         - Select MIPS_L1_CACHE_SHIFT_6
      
        Octeon:
         - Remove vestiges of CONFIG_CAVIUM_OCTEON_2ND_KERNEL
         - Remove unused L2C types and macros.
         - Remove unused SLI types and macros.
         - Fix compile error when USB is not enabled.
         - Octeon: Remove unused PCIERCX types and macros.
         - Octeon: Clean up platform code.
      
        SNI:
         - Remove recursive include of cpu-feature-overrides.h
      
        Sibyte:
         - Export symbol periph_rev to sb1250-mac network driver.
         - Fix Kconfig warning.
      
        Generic platform:
         - Enable Root FS on NFS in generic_defconfig
      
        SMP-MT:
         - Use CPU interrupt controller IPI IRQ domain support
      
        UASM:
         - Add support for LHU for uasm.
         - Remove needless ISA abstraction
      
        mm:
         - Add 48-bit VA space and 4-level page tables for 4K pages.
      
        PCI:
         - Add controllers before the specified head
      
        irqchip driver for MIPS CPU:
         - Replace magic 0x100 with IE_SW0
         - Prepare for non-legacy IRQ domains
         - Introduce IPI IRQ domain support
      
        MAINTAINERS:
         - Update email-id of Rahul Bedarkar
      
        NET:
         - sb1250-mac: Add missing MODULE_LICENSE()
      
        CPUFREQ:
         - Loongson2: drop set_cpus_allowed_ptr()
      
        Misc:
         - Disable Werror when W= is set
         - Opt into HAVE_COPY_THREAD_TLS
         - Enable GENERIC_CPU_AUTOPROBE
         - Use common outgoing-CPU-notification code
         - Remove dead define of ST_OFF
         - Remove CONFIG_ARCH_HAS_ILOG2_U{32,64}
         - Stengthen IPI IRQ domain sanity check
         - Remove confusing else statement in __do_page_fault()
         - Don't unnecessarily include kmalloc.h into <asm/cache.h>.
         - Delete unused definition of SMP_CACHE_SHIFT.
         - Delete redundant definition of SMP_CACHE_BYTES"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (39 commits)
        MIPS: Sibyte: Fix Kconfig warning.
        MIPS: Sibyte: Export symbol periph_rev to sb1250-mac network driver.
        NET: sb1250-mac: Add missing MODULE_LICENSE()
        MAINTAINERS: Update email-id of Rahul Bedarkar
        MIPS: Remove confusing else statement in __do_page_fault()
        MIPS: Stengthen IPI IRQ domain sanity check
        MIPS: smp-mt: Use CPU interrupt controller IPI IRQ domain support
        irqchip: mips-cpu: Introduce IPI IRQ domain support
        irqchip: mips-cpu: Prepare for non-legacy IRQ domains
        irqchip: mips-cpu: Replace magic 0x100 with IE_SW0
        MIPS: Remove CONFIG_ARCH_HAS_ILOG2_U{32,64}
        MIPS: generic: Enable Root FS on NFS in generic_defconfig
        MIPS: mach-rm: Remove recursive include of cpu-feature-overrides.h
        MIPS: Opt into HAVE_COPY_THREAD_TLS
        CPUFREQ: Loongson2: drop set_cpus_allowed_ptr()
        MIPS: uasm: Remove needless ISA abstraction
        MIPS: Remove dead define of ST_OFF
        MIPS: Use common outgoing-CPU-notification code
        MIPS: math-emu: Fix BC1EQZ and BC1NEZ condition handling
        MIPS: r2-on-r6-emu: Clear BLTZALL and BGEZALL debugfs counters
        ...
      ac3c4aa2
    • Linus Torvalds's avatar
      Merge tag 'nios2-v4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2 · 0ba1c195
      Linus Torvalds authored
      Pull nios2 updates from Ley Foon Tan:
       "nios2 fixes/enhancements and adding nios2 R2 support"
      
      * tag 'nios2-v4.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2:
        nios2: remove custom early console implementation
        nios2: use generic strncpy_from_user() and strnlen_user()
        nios2: Add CDX support
        nios2: Add BMX support
        nios2: Add NIOS2_ARCH_REVISION to select between R1 and R2
        nios2: implement flush_dcache_mmap_lock/unlock
        nios2: enable earlycon support
        nios2: constify irq_domain_ops
        nios2: remove wrapper header for cmpxchg.h
        nios2: add .gitignore entries for auto-generated files
      0ba1c195
    • Ville Syrjälä's avatar
      drm/i915: Make vblank evade warnings optional · 7b8cd336
      Ville Syrjälä authored
      Add a new Kconfig option to enable/disable the extra warnings
      from the vblank evade code. For now we'll keep the warning
      about an actually missed vblank always enabled as that can have
      an actual user visible impact. But if we miss the deadline
      othrwise there's no real need to bother the user with that.
      We'll want these warnings enabled during development however
      so that we can catch regressions.
      
      Based on the reports it looks like this is still very easy
      to hit on SKL, so we have more work ahead of us to optimize
      the crtiical section further.
      
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Dave Airlie <airlied@redhat.com>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Reported-by: default avatarJens Axboe <axboe@kernel.dk>
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Fixes: e1edbd44 ("drm/i915: Complain if we take too long under vblank evasion.")
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      7b8cd336
    • Dave Airlie's avatar
      Merge branch 'linux-4.12' of git://github.com/skeggsb/linux into drm-next · bb57d041
      Dave Airlie authored
      Quite a few patches, but not much code changed:
      - Fixes regression from atomic when only the source rect of a plane
      changes (ie. xrandr --right-of)
      - Fixes another issue where atomic changed behaviour underneath us,
      potentially causing laggy cursor position updates
      - Fixes for a bunch of races in thermal code, which lead to random
      lockups for a lot of users
      
      * 'linux-4.12' of git://github.com/skeggsb/linux:
        drm/nouveau/therm: remove ineffective workarounds for alarm bugs
        drm/nouveau/tmr: avoid processing completed alarms when adding a new one
        drm/nouveau/tmr: fix corruption of the pending list when rescheduling an alarm
        drm/nouveau/tmr: handle races with hw when updating the next alarm time
        drm/nouveau/tmr: ack interrupt before processing alarms
        drm/nouveau/core: fix static checker warning
        drm/nouveau/fb/ram/gf100-: remove 0x10f200 read
        drm/nouveau/kms/nv50: skip core channel cursor update on position-only changes
        drm/nouveau/kms/nv50: fix source-rect-only plane updates
        drm/nouveau/kms/nv50: remove pointless argument to window atomic_check_acquire()
      bb57d041
    • Dave Airlie's avatar
      Merge branch 'drm-next-4.12' of git://people.freedesktop.org/~agd5f/linux into drm-next · 7ec27233
      Dave Airlie authored
      Fixes for 4.12.  This is a bit bigger than usual since it's 3 weeks
      worth of fixes and most of these changes are for vega10 which is
      new for 4.12 and still in a fair amount of flux.  It looks like
      you missed my last pull request, so those patches are included here
      as well.  Highlights:
      - Lots of vega10 fixes
      - Fix interruptable wait mixup
      - Fan control method fixes
      - Misc display fixes for radeon and amdgpu
      - Misc bug fixes
      
      * 'drm-next-4.12' of git://people.freedesktop.org/~agd5f/linux: (132 commits)
        drm/amd/powerplay: refine pwm1_enable callback functions for CI.
        drm/amd/powerplay: refine pwm1_enable callback functions for vi.
        drm/amd/powerplay: refine pwm1_enable callback functions for Vega10.
        drm/amdgpu: refine amdgpu pwm1_enable sysfs interface.
        drm/amdgpu: add amd fan ctrl mode enums.
        drm/amd/powerplay: add more smu message on Vega10.
        drm/amdgpu: fix dependency issue
        drm/amd: fix init order of sched job
        drm/amdgpu: add some additional vega10 pci ids
        drm/amdgpu/soc15: use atomfirmware for setting bios scratch for reset
        drm/amdgpu/atomfirmware: add function to update engine hang status
        drm/radeon: only warn once in radeon_ttm_bo_destroy if va list not empty
        drm/amdgpu: fix mutex list null pointer reference
        drm/amd/powerplay: fix bug sclk/mclk level can't be set on vega10.
        drm/amd/powerplay: Setup sw CTF to allow graceful exit when temperature exceeds maximum.
        drm/amd/powerplay: delete dead code in powerplay.
        drm/amdgpu: Use less generic enum definitions
        drm/amdgpu/gfx9: derive tile pipes from golden settings
        drm/amdgpu/gfx: drop max_gs_waves_per_vgt
        drm/amd/powerplay: disable engine spread spectrum feature on Vega10.
        ...
      7ec27233
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-fixes-2017-05-05' of... · bab1e2fe
      Dave Airlie authored
      Merge tag 'drm-misc-next-fixes-2017-05-05' of git://anongit.freedesktop.org/git/drm-misc into drm-next
      
      Core Changes:
      - Add quirk for LGD 764 panel to default 10bpc (Mario)
      
      Cc: Mario Kleiner <mario.kleiner.de@gmail.com>
      
      * tag 'drm-misc-next-fixes-2017-05-05' of git://anongit.freedesktop.org/git/drm-misc:
        drm/edid: Add 10 bpc quirk for LGD 764 panel in HP zBook 17 G2
      bab1e2fe
  2. 11 May, 2017 25 commits
    • Ben Skeggs's avatar
      drm/nouveau/therm: remove ineffective workarounds for alarm bugs · e4311ee5
      Ben Skeggs authored
      These were ineffective due to touching the list without the alarm lock,
      but should no longer be required.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org
      e4311ee5
    • Ben Skeggs's avatar
      drm/nouveau/tmr: avoid processing completed alarms when adding a new one · 330bdf62
      Ben Skeggs authored
      The idea here was to avoid having to "manually" program the HW if there's
      a new earliest alarm.  This was lazy and bad, as it leads to loads of fun
      races between inter-related callers (ie. therm).
      
      Turns out, it's not so difficult after all.  Go figure ;)
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org
      330bdf62
    • Ben Skeggs's avatar
      drm/nouveau/tmr: fix corruption of the pending list when rescheduling an alarm · 9fc64667
      Ben Skeggs authored
      At least therm/fantog "attempts" to work around this issue, which could
      lead to corruption of the pending alarm list.
      
      Fix it properly by not updating the timestamp without the lock held, or
      trying to add an already pending alarm to the pending alarm list....
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org
      9fc64667
    • Ben Skeggs's avatar
      drm/nouveau/tmr: handle races with hw when updating the next alarm time · 1b0f8438
      Ben Skeggs authored
      If the time to the next alarm is short enough, we could race with HW and
      end up with an ~4 second delay until it triggers.
      
      Fix this by checking again after we update HW.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org
      1b0f8438
    • Ben Skeggs's avatar
      drm/nouveau/tmr: ack interrupt before processing alarms · 3733bd8b
      Ben Skeggs authored
      Fixes a race where we can miss an alarm that triggers while we're already
      processing previous alarms.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org
      3733bd8b
    • Ben Skeggs's avatar
      drm/nouveau/core: fix static checker warning · 89ed10a5
      Ben Skeggs authored
      object->engine cannot be NULL, it's either valid, or an error pointer.
      
      This particular condition shouldn't actually be possible, but just in
      case, we'll keep it.
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      89ed10a5
    • Ben Skeggs's avatar
      drm/nouveau/fb/ram/gf100-: remove 0x10f200 read · 80a92865
      Ben Skeggs authored
      This reg has moved on Pascal, and causes a bus fault.
      
      We never use the value anyway, so just remove the read.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      80a92865
    • Ben Skeggs's avatar
      drm/nouveau/kms/nv50: skip core channel cursor update on position-only changes · e6db9579
      Ben Skeggs authored
      The DRM core used to only call prepare_fb/cleanup_fb() when a plane's
      framebuffer changed, which achieved the desired effect.
      
      It's apparently now up to the driver to decide on its own.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org [4.11+]
      e6db9579
    • Ben Skeggs's avatar
      drm/nouveau/kms/nv50: fix source-rect-only plane updates · 36601c2b
      Ben Skeggs authored
      This "optimisation" (which was originally meant to skip updating cursor
      settings in the core channel on position-only updates) turned out to be
      pointless in the final design of the code before it was merged.
      
      Remove it completely, as it breaks other cases.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org [4.10+]
      36601c2b
    • Ben Skeggs's avatar
    • Linus Torvalds's avatar
      Merge tag 'docs-4.12-2' of git://git.lwn.net/linux · 09d79d10
      Linus Torvalds authored
      Pull more documentation updates from Jonathan Corbet:
       "Connect the newly RST-formatted documentation to the rest; this had to
        wait until the input pull was done. There's also a few small fixes
        that wandered in"
      
      * tag 'docs-4.12-2' of git://git.lwn.net/linux:
        doc: replace FTP URL to kernel.org with HTTPS one
        docs: update references to the device io book
        Documentation: earlycon: fix Marvell Armada 3700 UART name
        docs-rst: add input docs at main index and use kernel-figure
      09d79d10
    • Linus Torvalds's avatar
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · e47b40a2
      Linus Torvalds authored
      Pull more arm64 updates from Catalin Marinas:
      
       - Silence module allocation failures when CONFIG_ARM*_MODULE_PLTS is
         enabled. This requires a check for __GFP_NOWARN in alloc_vmap_area()
      
       - Improve/sanitise user tagged pointers handling in the kernel
      
       - Inline asm fixes/cleanups
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: Silence first allocation with CONFIG_ARM64_MODULE_PLTS=y
        ARM: Silence first allocation with CONFIG_ARM_MODULE_PLTS=y
        mm: Silence vmap() allocation failures based on caller gfp_flags
        arm64: uaccess: suppress spurious clang warning
        arm64: atomic_lse: match asm register sizes
        arm64: armv8_deprecated: ensure extension of addr
        arm64: uaccess: ensure extension of access_ok() addr
        arm64: ensure extension of smp_store_release value
        arm64: xchg: hazard against entire exchange variable
        arm64: documentation: document tagged pointer stack constraints
        arm64: entry: improve data abort handling of tagged pointers
        arm64: hw_breakpoint: fix watchpoint matching for tagged pointers
        arm64: traps: fix userspace cache maintenance emulation on a tagged pointer
      e47b40a2
    • Linus Torvalds's avatar
      Merge tag 'fbdev-v4.12' of git://github.com/bzolnier/linux · 4892c6f7
      Linus Torvalds authored
      Pull fbdev updates from Bartlomiej Zolnierkiewicz:
       "There is nothing really major here, just a couple of small bugfixes,
        improvements and cleanups.
      
         - fix handling of probing errors in omapfb (Arvind Yadav)
      
         - remove incorrect __exit markups in few drivers (Dmitry Torokhov)
      
         - fix boot time logo support for drivers using deferred probe
           (Takeshi Kihara)
      
         - fix DMA allocation size for ARM CLCD driver (Liam Beguin)
      
         - add support for specifying size via xenstore in xen-frontfb
           (Juergen Gross)
      
         - support for AUS mode in imxfb driver (Martin Kaiser)
      
         - fix buffer on stack usage in udlfb driver (Maksim Salau)
      
         - probe failure path fixup in sm501fb driver (Alexey Khoroshilov)
      
         - fix config dependency loop for stifb driver (Arnd Bergmann)
      
         - misc cleanups (Joe Perches, Christophe Leroy, Karim Eshapa, Pushkar
           Jambhlekar)"
      
      * tag 'fbdev-v4.12' of git://github.com/bzolnier/linux:
        fbdev: sti: don't select CONFIG_VT
        drivers/video/fbdev/omap/lcd_mipid.c: Use time comparison kernel macros
        sm501fb: don't return zero on failure path in sm501fb_start()
        video: fbdev: udlfb: Fix buffer on stack
        video: console: Remove reference to CONFIG_8xx
        dt-bindings: display: imx: entry for AUS mode
        video: fbdev: imxfb: support AUS mode
        drivers/video/fbdev: Fixing coding guidelines in acornfb.c
        xen, fbfront: add support for specifying size via xenstore
        video: ARM CLCD: fix dma allocation size
        drivers/video: Convert remaining uses of pr_warning to pr_warn
        video/logo: tidyup fb_logo_late_init initcall timing
        video: fbdev: i810: remove incorrect __exit markups
        video: fbdev: pmag-aa-fb: remove incorrect __exit markups
        video: fbdev: pmagb-b-fb: remove incorrect __exit markups
        video: fbdev: pmag-ba-fb: remove incorrect __exit markups
        omapfb: dss: Handle return errors in dss_init_ports()
      4892c6f7
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 55a1ab56
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A smaller collection of fixes that should go into -rc1. This contains:
      
         - A fix from Christoph, fixing a regression with the WRITE_SAME and
           partial completions. Caused a BUG() on ppc.
      
         - Fixup for __blk_mq_stop_hw_queues(), it should be static. From
           Colin.
      
         - Removal of dmesg error messages on elevator switching, when invoked
           from sysfs. From me.
      
         - Fix for blk-stat, using this_cpu_ptr() in a section only protected
           by rcu_read_lock(). This breaks when PREEMPT_RCU is enabled. From
           me.
      
         - Two fixes for BFQ from Paolo, one fixing a crash and one updating
           the documentation.
      
         - An error handling lightnvm memory leak, from Rakesh.
      
         - The previous blk-mq hot unplug lock reversal depends on the CPU
           hotplug rework that isn't in mainline yet. This caused a lockdep
           splat when people unplugged CPUs with blk-mq devices. From Wanpeng.
      
         - A regression fix for DIF/DIX on blk-mq. From Wen"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: handle partial completions for special payload requests
        blk-mq: NVMe 512B/4K+T10 DIF/DIX format returns I/O error on dd with split op
        blk-stat: don't use this_cpu_ptr() in a preemptable section
        elevator: remove redundant warnings on IO scheduler switch
        block, bfq: stress that low_latency must be off to get max throughput
        block, bfq: use pointer entity->sched_data only if set
        nvme: lightnvm: fix memory leak
        blk-mq: make __blk_mq_stop_hw_queues static
        lightnvm: remove unused rq parameter of nvme_nvm_rqtocmd() to kill warning
        block/mq: fix potential deadlock during cpu hotplug
      55a1ab56
    • Michael Heimpold's avatar
      doc: replace FTP URL to kernel.org with HTTPS one · 25a0da73
      Michael Heimpold authored
      FTP services were shutdown some weeks ago, so the FTP URL
      does not work anymore. Fix this by replacing it with
      corresponding HTTPS URL.
      Signed-off-by: default avatarMichael Heimpold <michael.heimpold@i2se.com>
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      25a0da73
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20170510' of git://git.infradead.org/linux-mtd · 9786e34e
      Linus Torvalds authored
      Pull MTD updates from Brian Norris:
       "NAND, from Boris:
         - some minor fixes/improvements on existing drivers (fsmc, gpio, ifc,
           davinci, brcmnand, omap)
         - a huge cleanup/rework of the denali driver accompanied with core
           fixes/improvements to simplify the driver code
         - a complete rewrite of the atmel driver to support new DT bindings
           make future evolution easier
         - the addition of per-vendor detection/initialization steps to avoid
           extending the nand_ids table with more extended-id entries
      
        SPI NOR, from Cyrille:
         - fixes in the hisi, intel and Mediatek SPI controller drivers
         - fixes to some SPI flash memories not supporting the Chip Erase
           command.
         - add support to some new memory parts (Winbond, Macronix, Micron,
           ESMT).
         - add new driver for the STM32 QSPI controller
      
        And a few fixes for Gemini and Versatile platforms on physmap-of"
      
      * tag 'for-linus-20170510' of git://git.infradead.org/linux-mtd: (100 commits)
        MAINTAINERS: Update NAND subsystem git repositories
        mtd: nand: gpio: update binding
        mtd: nand: add ooblayout for old hamming layout
        mtd: oxnas_nand: Allocating more than necessary in probe()
        dt-bindings: mtd: Document the STM32 QSPI bindings
        mtd: mtk-nor: set controller's address width according to nor flash
        mtd: spi-nor: add driver for STM32 quad spi flash controller
        mtd: nand: brcmnand: Check flash #WP pin status before nand erase/program
        mtd: nand: davinci: add comment on NAND subpage write status on keystone
        mtd: nand: omap2: Fix partition creation via cmdline mtdparts
        mtd: nand: NULL terminate a of_device_id table
        mtd: nand: Fix a couple error codes
        mtd: nand: allow drivers to request minimum alignment for passed buffer
        mtd: nand: allocate aligned buffers if NAND_OWN_BUFFERS is unset
        mtd: nand: denali: allow to override revision number
        mtd: nand: denali_dt: use pdev instead of ofdev for platform_device
        mtd: nand: denali_dt: remove dma-mask DT property
        mtd: nand: denali: support 64bit capable DMA engine
        mtd: nand: denali_dt: enable HW_ECC_FIXUP for Altera SOCFPGA variant
        mtd: nand: denali: support HW_ECC_FIXUP capability
        ...
      9786e34e
    • Christoph Hellwig's avatar
      block: handle partial completions for special payload requests · ed6565e7
      Christoph Hellwig authored
      SCSI devices can return short writes on Write Same just like for normal
      writes, so we need to handle this case for our special payload requests
      as well.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Reported-by: default avatarAbdul Haleem <abdhalee@linux.vnet.ibm.com>
      Tested-by: default avatarAbdul Haleem <abdhalee@linux.vnet.ibm.com>
      Signed-off-by: default avatarJens Axboe <axboe@fb.com>
      ed6565e7
    • Juergen Gross's avatar
      xen: adjust early dom0 p2m handling to xen hypervisor behavior · 69861e0a
      Juergen Gross authored
      When booted as pv-guest the p2m list presented by the Xen is already
      mapped to virtual addresses. In dom0 case the hypervisor might make use
      of 2M- or 1G-pages for this mapping. Unfortunately while being properly
      aligned in virtual and machine address space, those pages might not be
      aligned properly in guest physical address space.
      
      So when trying to obtain the guest physical address of such a page
      pud_pfn() and pmd_pfn() must be avoided as those will mask away guest
      physical address bits not being zero in this special case.
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Reviewed-by: default avatarJan Beulich <jbeulich@suse.com>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      69861e0a
    • Juergen Gross's avatar
      x86/amd: don't set X86_BUG_SYSRET_SS_ATTRS when running under Xen · def9331a
      Juergen Gross authored
      When running as Xen pv guest X86_BUG_SYSRET_SS_ATTRS must not be set
      on AMD cpus.
      
      This bug/feature bit is kind of special as it will be used very early
      when switching threads. Setting the bit and clearing it a little bit
      later leaves a critical window where things can go wrong. This time
      window has enlarged a little bit by using setup_clear_cpu_cap() instead
      of the hypervisor's set_cpu_features callback. It seems this larger
      window now makes it rather easy to hit the problem.
      
      The proper solution is to never set the bit in case of Xen.
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
      def9331a
    • Florian Fainelli's avatar
      arm64: Silence first allocation with CONFIG_ARM64_MODULE_PLTS=y · 0c2cf6d9
      Florian Fainelli authored
      When CONFIG_ARM64_MODULE_PLTS is enabled, the first allocation using the
      module space fails, because the module is too big, and then the module
      allocation is attempted from vmalloc space. Silence the first allocation
      failure in that case by setting __GFP_NOWARN.
      Reviewed-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
      Acked-by: default avatarWill Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      0c2cf6d9
    • Florian Fainelli's avatar
      ARM: Silence first allocation with CONFIG_ARM_MODULE_PLTS=y · 75d24d96
      Florian Fainelli authored
      When CONFIG_ARM_MODULE_PLTS is enabled, the first allocation using the
      module space fails, because the module is too big, and then the module
      allocation is attempted from vmalloc space. Silence the first allocation
      failure in that case by setting __GFP_NOWARN.
      Acked-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
      Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      75d24d96
    • Florian Fainelli's avatar
      mm: Silence vmap() allocation failures based on caller gfp_flags · 03497d76
      Florian Fainelli authored
      If the caller has set __GFP_NOWARN don't print the following message:
      vmap allocation for size 15736832 failed: use vmalloc=<size> to increase
      size.
      
      This can happen with the ARM/Linux or ARM64/Linux module loader built
      with CONFIG_ARM{,64}_MODULE_PLTS=y which does a first attempt at loading
      a large module from module space, then falls back to vmalloc space.
      Acked-by: default avatarMichal Hocko <mhocko@suse.com>
      Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      03497d76
    • Tobias Klauser's avatar
      nios2: remove custom early console implementation · e118c3fe
      Tobias Klauser authored
      As of commits d8f347ba35cf ("nios2: enable earlycon support"),
      0dcc0542 ("serial: altera_jtaguart: add earlycon support") and
      4d9d7d89 ("serial: altera_uart: add earlycon support"), the nios2
      architecture and the altera_uart/altera_jtaguart drivers support
      earlycon. Thus, the custom early console implementation for nios2 is no
      longer necessary to get early boot messages. Remove it and rely fully on
      earlycon support.
      Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
      e118c3fe
    • Nicholas Bellinger's avatar
      Revert "target: Fix VERIFY and WRITE VERIFY command parsing" · 984a9d4c
      Nicholas Bellinger authored
      This reverts commit 0e2eb7d1
      
        Author: Bart Van Assche <bart.vanassche@sandisk.com>
        Date:   Thu Mar 30 10:12:39 2017 -0700
      
            target: Fix VERIFY and WRITE VERIFY command parsing
      
      This patch broke existing behaviour for WRITE_VERIFY because
      it dropped the original SCF_SCSI_DATA_CDB assignment for
      bytchk = 0 so target_cmd_size_check() no longer rejected
      this case, allowing an overflow case to trigger an OOPs
      in iscsi-target.
      
      Since the short term and long term fixes are still being
      discussed, revert it for now since it's late in the merge
      window and try again in v4.13-rc1.
      
      Conflicts:
      	drivers/target/target_core_sbc.c
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      984a9d4c
    • Linus Torvalds's avatar
      Merge tag 'kbuild-uapi-v4.12' of... · 791a9a66
      Linus Torvalds authored
      Merge tag 'kbuild-uapi-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
      
      Pull Kbuild UAPI updates from Masahiro Yamada:
       "Improvement of headers_install by Nicolas Dichtel.
      
        It has been long since the introduction of uapi directories, but the
        de-coupling of exported headers has not been completed. Headers listed
        in header-y are exported whether they exist in uapi directories or
        not. His work fixes this inconsistency.
      
        All (and only) headers under uapi directories are now exported. The
        asm-generic wrappers are still exceptions, but this is a big step
        forward"
      
      * tag 'kbuild-uapi-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        arch/include: remove empty Kbuild files
        uapi: export all arch specifics directories
        uapi: export all headers under uapi directories
        smc_diag.h: fix include from userland
        btrfs_tree.h: fix include from userland
        uapi: includes linux/types.h before exporting files
        Makefile.headersinst: remove destination-y option
        Makefile.headersinst: cleanup input files
        x86: stop exporting msr-index.h to userland
        nios2: put setup.h in uapi
        h8300: put bitsperlong.h in uapi
      791a9a66