20 Jun, 2017

1 commit


14 Jun, 2017

2 commits


14 May, 2017

2 commits

  • Pull some more input subsystem updates from Dmitry Torokhov:
    "An updated xpad driver with a few more recognized device IDs, and a
    new psxpad-spi driver, allowing connecting Playstation 1 and 2 joypads
    via SPI bus"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: cros_ec_keyb - remove extraneous 'const'
    Input: add support for PlayStation 1/2 joypads connected via SPI
    Input: xpad - add USB IDs for Mad Catz Brawlstick and Razer Sabertooth
    Input: xpad - sync supported devices with xboxdrv
    Input: xpad - sort supported devices by USB ID

    Linus Torvalds
     
  • Pull UBI/UBIFS updates from Richard Weinberger:

    - new config option CONFIG_UBIFS_FS_SECURITY

    - minor improvements

    - random fixes

    * tag 'upstream-4.12-rc1' of git://git.infradead.org/linux-ubifs:
    ubi: Add debugfs file for tracking PEB state
    ubifs: Fix a typo in comment of ioctl2ubifs & ubifs2ioctl
    ubifs: Remove unnecessary assignment
    ubifs: Fix cut and paste error on sb type comparisons
    ubi: fastmap: Fix slab corruption
    ubifs: Add CONFIG_UBIFS_FS_SECURITY to disable/enable security labels
    ubi: Make mtd parameter readable
    ubi: Fix section mismatch

    Linus Torvalds
     

13 May, 2017

8 commits

  • Pull libnvdimm fixes from Dan Williams:
    "Incremental fixes and a small feature addition on top of the main
    libnvdimm 4.12 pull request:

    - Geert noticed that tinyconfig was bloated by BLOCK selecting DAX.
    The size regression is fixed by moving all dax helpers into the
    dax-core and only specifying "select DAX" for FS_DAX and
    dax-capable drivers. He also asked for clarification of the
    NR_DEV_DAX config option which, on closer look, does not need to be
    a config option at all. Mike also throws in a DEV_DAX_PMEM fixup
    for good measure.

    - Ben's attention to detail on -stable patch submissions caught a
    case where the recent fixes to arch_copy_from_iter_pmem() missed a
    condition where we strand dirty data in the cache. This is tagged
    for -stable and will also be included in the rework of the pmem api
    to a proposed {memcpy,copy_user}_flushcache() interface for 4.13.

    - Vishal adds a feature that missed the initial pull due to pending
    review feedback. It allows the kernel to clear media errors when
    initializing a BTT (atomic sector update driver) instance on a pmem
    namespace.

    - Ross noticed that the dax_device + dax_operations conversion broke
    __dax_zero_page_range(). The nvdimm unit tests fail to check this
    path, but xfstests immediately trips over it. No excuse for missing
    this before submitting the 4.12 pull request.

    These all pass the nvdimm unit tests and an xfstests spot check. The
    set has received a build success notification from the kbuild robot"

    * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
    filesystem-dax: fix broken __dax_zero_page_range() conversion
    libnvdimm, btt: ensure that initializing metadata clears poison
    libnvdimm: add an atomic vs process context flag to rw_bytes
    x86, pmem: Fix cache flushing for iovec write < 8 bytes
    device-dax: kill NR_DEV_DAX
    block, dax: move "select DAX" from BLOCK to FS_DAX
    device-dax: Tell kbuild DEV_DAX_PMEM depends on DEV_DAX

    Linus Torvalds
     
  • Pull more power-supply updates from Sebastian Reichel:
    "The power-supply subsystem has a few more changes for the v4.12 merge
    window:

    - New battery driver for AXP20X and AXP22X PMICs

    - Improve max17042_battery for usage on x86

    - Misc small cleanups & fixes"

    * tag 'for-v4.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (34 commits)
    power: supply: cpcap-charger: Keep trickle charger bits disabled
    power: supply: cpcap-charger: Fix enable for 3.8V charge setting
    power: supply: cpcap-charger: Fix charge voltage configuration
    power: supply: cpcap-charger: Fix charger name
    power: supply: twl4030-charger: make twl4030_bci_property_is_writeable static
    power: supply: sbs-battery: Add alert callback
    mailmap: add Sebastian Reichel
    power: supply: avoid unused twl4030-madc.h
    power: supply: sbs-battery: Correct supply status with current draw
    power: supply: sbs-battery: Don't ignore the first external power change
    power: supply: pda_power: move from timer to delayed_work
    power: supply: max17042_battery: Add support for the SCOPE property
    power: supply: max17042_battery: Add support for the CHARGE_NOW property
    power: supply: max17042_battery: Add support for the CHARGE_FULL_DESIGN property
    power: supply: max17042_battery: mAh readings depend on r_sns value
    power: supply: max17042_battery: Add support for the VOLT_MIN property
    power: supply: max17042_battery: Add support for the TECHNOLOGY attribute
    power: supply: max17042_battery: Add external_power_changed callback
    power: supply: max17042_battery: Add support for the STATUS property
    power: supply: max17042_battery: Add default platform_data fallback data
    ...

    Linus Torvalds
     
  • Pull thermal management updates from Zhang Rui:

    - Fix a problem where orderly_shutdown() is called for multiple times
    due to multiple critical overheating events raised in a short period
    by platform thermal driver. (Keerthy)

    - Introduce a backup thermal shutdown mechanism, which invokes
    kernel_power_off()/emergency_restart() directly, after
    orderly_shutdown() being issued for certain amount of time(specified
    via Kconfig). This is useful in certain conditions that userspace may
    be unable to power off the system in a clean manner and leaves the
    system in a critical state, like in the middle of driver probing
    phase. (Keerthy)

    - Introduce a new interface in thermal devfreq_cooling code so that the
    driver can provide more precise data regarding actual power to the
    thermal governor every time the power budget is calculated. (Lukasz
    Luba)

    - Introduce BCM 2835 soc thermal driver and northstar thermal driver,
    within a new sub-folder. (Rafał Miłecki)

    - Introduce DA9062/61 thermal driver. (Steve Twiss)

    - Remove non-DT booting on TI-SoC driver. Also add support to fetching
    coefficients from DT. (Keerthy)

    - Refactorf RCAR Gen3 thermal driver. (Niklas Söderlund)

    - Small fix on MTK and intel-soc-dts thermal driver. (Dawei Chien,
    Brian Bian)

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (25 commits)
    thermal: core: Add a back up thermal shutdown mechanism
    thermal: core: Allow orderly_poweroff to be called only once
    Thermal: Intel SoC DTS: Change interrupt request behavior
    trace: thermal: add another parameter 'power' to the tracing function
    thermal: devfreq_cooling: add new interface for direct power read
    thermal: devfreq_cooling: refactor code and add get_voltage function
    thermal: mt8173: minor mtk_thermal.c cleanups
    thermal: bcm2835: move to the broadcom subdirectory
    thermal: broadcom: ns: specify myself as MODULE_AUTHOR
    thermal: da9062/61: Thermal junction temperature monitoring driver
    Documentation: devicetree: thermal: da9062/61 TJUNC temperature binding
    thermal: broadcom: add Northstar thermal driver
    dt-bindings: thermal: add support for Broadcom's Northstar thermal
    thermal: bcm2835: add thermal driver for bcm2835 SoC
    dt-bindings: Add thermal zone to bcm2835-thermal example
    thermal: rcar_gen3_thermal: add suspend and resume support
    thermal: rcar_gen3_thermal: store device match data in private structure
    thermal: rcar_gen3_thermal: enable hardware interrupts for trip points
    thermal: rcar_gen3_thermal: record and check number of TSCs found
    thermal: rcar_gen3_thermal: check that TSC exists before memory allocation
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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()

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • 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 .
    - 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
    ...

    Linus Torvalds
     

12 May, 2017

18 commits

  • 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
    Cc: Jani Nikula
    Cc: Dave Airlie
    Cc: Jens Axboe
    Cc: Linus Torvalds
    Cc: Maarten Lankhorst
    Reported-by: Jens Axboe
    Reported-by: Linus Torvalds
    Fixes: e1edbd44e23b ("drm/i915: Complain if we take too long under vblank evasion.")
    Signed-off-by: Ville Syrjälä
    Reviewed-by: Daniel Vetter
    Signed-off-by: Dave Airlie

    Ville Syrjälä
     
  • 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()

    Dave Airlie
     
  • 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.
    ...

    Dave Airlie
     
  • …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

    Dave Airlie
     
  • gcc-7 warns about 'const SIMPLE_DEV_PM_OPS', as that macro already contains
    a 'const' keyword:

    drivers/input/keyboard/cros_ec_keyb.c:663:14: error: duplicate 'const' declaration specifier [-Werror=duplicate-decl-specifier]
    static const SIMPLE_DEV_PM_OPS(cros_ec_keyb_pm_ops, NULL, cros_ec_keyb_resume);

    This removes the extra one.

    Fixes: 6af6dc2d2aa6 ("input: Add ChromeOS EC keyboard driver")
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Dmitry Torokhov

    Arnd Bergmann
     
  • These were ineffective due to touching the list without the alarm lock,
    but should no longer be required.

    Signed-off-by: Ben Skeggs
    Cc: stable@vger.kernel.org

    Ben Skeggs
     
  • 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: Ben Skeggs
    Cc: stable@vger.kernel.org

    Ben Skeggs
     
  • 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: Ben Skeggs
    Cc: stable@vger.kernel.org

    Ben Skeggs
     
  • 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: Ben Skeggs
    Cc: stable@vger.kernel.org

    Ben Skeggs
     
  • Fixes a race where we can miss an alarm that triggers while we're already
    processing previous alarms.

    Signed-off-by: Ben Skeggs
    Cc: stable@vger.kernel.org

    Ben Skeggs
     
  • 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: Dan Carpenter
    Signed-off-by: Ben Skeggs

    Ben Skeggs
     
  • 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: Ben Skeggs

    Ben Skeggs
     
  • 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: Ben Skeggs
    Cc: stable@vger.kernel.org [4.11+]

    Ben Skeggs
     
  • 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: Ben Skeggs
    Cc: stable@vger.kernel.org [4.10+]

    Ben Skeggs
     
  • Signed-off-by: Ben Skeggs

    Ben Skeggs
     
  • 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()

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     

11 May, 2017

9 commits

  • This reverts commit 0e2eb7d12eaa8e391bf5615d4271bb87a649caaa

    Author: Bart Van Assche
    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: Nicholas Bellinger

    Nicholas Bellinger
     
  • If we had badblocks/poison in the metadata area of a BTT, recreating the
    BTT would not clear the poison in all cases, notably the flog area. This
    is because rw_bytes will only clear errors if the request being sent
    down is 512B aligned and sized.

    Make sure that when writing the map and info blocks, the rw_bytes being
    sent are of the correct size/alignment. For the flog, instead of doing
    the smaller log_entry writes only, first do a 'wipe' of the entire area
    by writing zeroes in large enough chunks so that errors get cleared.

    Cc: Andy Rudoff
    Cc: Dan Williams
    Signed-off-by: Vishal Verma
    Signed-off-by: Dan Williams

    Vishal Verma
     
  • nsio_rw_bytes can clear media errors, but this cannot be done while we
    are in an atomic context due to locking within ACPI. From the BTT,
    ->rw_bytes may be called either from atomic or process context depending
    on whether the calls happen during initialization or during IO.

    During init, we want to ensure error clearing happens, and the flag
    marking process context allows nsio_rw_bytes to do that. When called
    during IO, we're in atomic context, and error clearing can be skipped.

    Cc: Dan Williams
    Signed-off-by: Vishal Verma
    Signed-off-by: Dan Williams

    Vishal Verma
     
  • Pull RTC updates from Alexandre Belloni:
    "RTC subsystem update:
    - Add OF device ID table for i2c drivers

    New RTC driver:
    - Motorola CPCAP PMIC RTC

    RTC driver updates:
    - cmos: fix IRQ selection
    - ds1307: Add ST m41t0 support
    - ds1374: fix watchdog configuration
    - sh: Add rza series support"

    * tag 'rtc-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (33 commits)
    rtc: gemini: add return value validation
    rtc: snvs: fix an incorrect check of return value
    rtc: ds1374: wdt: Fix stop/start ioctl always returning -EINVAL
    rtc: ds1374: wdt: Fix issue with timeout scaling from secs to wdt ticks
    rtc: sh: mark PM functions as unused
    rtc: hid-sensor-time: remove some dead code
    rtc: m41t80: Add proper compatible for rv4162
    rtc: ds1307: Add m41t0 to OF device ID table
    rtc: ds1307: support m41t0 variant
    rtc: cpcap: fix improper use of IRQ_NONE for request_threaded_irq
    rtc: cmos: Do not assume irq 8 for rtc when there are no legacy irqs
    x86: i8259: export legacy_pic symbol
    dt-bindings: rtc: document the rtc-sh bindings
    rtc: sh: add support for rza series
    rtc: cpcap: kfreeing devm allocated memory
    rtc: wm8350: Remove unused to_wm8350_from_rtc_dev
    rtc: cpcap: new rtc driver
    dt-bindings: Add vendor prefix for Motorola
    rtc: omap: mark PM methods as __maybe_unused
    rtc: omap: remove incorrect __exit markups
    ...

    Linus Torvalds
     
  • Pull hw lockdown support from David Howells:
    "Annotation of module parameters that configure hardware resources
    including ioports, iomem addresses, irq lines and dma channels.

    This allows a future patch to prohibit the use of such module
    parameters to prevent that hardware from being abused to gain access
    to the running kernel image as part of locking the kernel down under
    UEFI secure boot conditions.

    Annotations are made by changing:

    module_param(n, t, p)
    module_param_named(n, v, t, p)
    module_param_array(n, t, m, p)

    to:

    module_param_hw(n, t, hwtype, p)
    module_param_hw_named(n, v, t, hwtype, p)
    module_param_hw_array(n, t, hwtype, m, p)

    where the module parameter refers to a hardware setting

    hwtype specifies the type of the resource being configured. This can
    be one of:

    ioport Module parameter configures an I/O port
    iomem Module parameter configures an I/O mem address
    ioport_or_iomem Module parameter could be either (runtime set)
    irq Module parameter configures an I/O port
    dma Module parameter configures a DMA channel
    dma_addr Module parameter configures a DMA buffer address
    other Module parameter configures some other value

    Note that the hwtype is compile checked, but not currently stored (the
    lockdown code probably won't require it). It is, however, there for
    future use.

    A bonus is that the hwtype can also be used for grepping.

    The intention is for the kernel to ignore or reject attempts to set
    annotated module parameters if lockdown is enabled. This applies to
    options passed on the boot command line, passed to insmod/modprobe or
    direct twiddling in /sys/module/ parameter files.

    The module initialisation then needs to handle the parameter not being
    set, by (1) giving an error, (2) probing for a value or (3) using a
    reasonable default.

    What I can't do is just reject a module out of hand because it may
    take a hardware setting in the module parameters. Some important
    modules, some ipmi stuff for instance, both probe for hardware and
    allow hardware to be manually specified; if the driver is aborts with
    any error, you don't get any ipmi hardware.

    Further, trying to do this entirely in the module initialisation code
    doesn't protect against sysfs twiddling.

    [!] Note that in and of itself, this series of patches should have no
    effect on the the size of the kernel or code execution - that is
    left to a patch in the next series to effect. It does mark
    annotated kernel parameters with a KERNEL_PARAM_FL_HWPARAM flag in
    an already existing field"

    * tag 'hwparam-20170420' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs: (38 commits)
    Annotate hardware config module parameters in sound/pci/
    Annotate hardware config module parameters in sound/oss/
    Annotate hardware config module parameters in sound/isa/
    Annotate hardware config module parameters in sound/drivers/
    Annotate hardware config module parameters in fs/pstore/
    Annotate hardware config module parameters in drivers/watchdog/
    Annotate hardware config module parameters in drivers/video/
    Annotate hardware config module parameters in drivers/tty/
    Annotate hardware config module parameters in drivers/staging/vme/
    Annotate hardware config module parameters in drivers/staging/speakup/
    Annotate hardware config module parameters in drivers/staging/media/
    Annotate hardware config module parameters in drivers/scsi/
    Annotate hardware config module parameters in drivers/pcmcia/
    Annotate hardware config module parameters in drivers/pci/hotplug/
    Annotate hardware config module parameters in drivers/parport/
    Annotate hardware config module parameters in drivers/net/wireless/
    Annotate hardware config module parameters in drivers/net/wan/
    Annotate hardware config module parameters in drivers/net/irda/
    Annotate hardware config module parameters in drivers/net/hamradio/
    Annotate hardware config module parameters in drivers/net/ethernet/
    ...

    Linus Torvalds
     
  • PlayStation 1/2 joypads can be connected directly to the SPI interface.

    Signed-off-by: Tomohiro Yoshidomi
    Acked-by: David Herrmann
    Signed-off-by: Dmitry Torokhov

    Tomohiro Yoshidomi
     
  • Pull clk updates from Stephen Boyd:
    "Sort of on the quieter side this time, which is probably due more to
    me not catching up as quickly on patch review than anything else.
    Overall it seems normal though, a few small changes to the core,
    mostly small non-critical fixes here and there as well as driver
    updates for new and existing hardware support.

    The biggest things are the TI clk driver rework to lay the groundwork
    for clkctrl support in the next merge window and the AmLogic
    audio/graphics clk support.

    Core:
    - clk_possible_parents debugfs file so we know which parents a clk
    could possibly have
    - Fix to make clk rate change notifiers stop on the first failure
    instead of continuing

    New Drivers:
    - Mediatek MT6797 SoCs
    - hi655x PMIC clks
    - AmLogic Meson SoC i2s and spdif audio clks and Mali graphics clks
    - Allwinner H5 SoCs and PRCM hardware

    Updates:
    - Nvidia Tegra T210 cleanups and non-critical fixes
    - TI OMAP cleanups in preparation for clkctrl support
    - trivial fixes like kcalloc(), devm_* conversions, and seq_puts()
    - ZTE zx296718 SoC VGA clks
    - Rockchip clk-ids, fixups, and rename of rk1108 to rv1108
    - IDT VersaClock 5P49V5935 support
    - Renesas R-Car H3 and M3-W IMR clks and ES2.0 rev of R-Car H3
    support"

    * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (151 commits)
    clk: x86: pmc-atom: Checking for IS_ERR() instead of NULL
    clk: ti: divider: try to fix ti_clk_register_divider
    clk: mvebu: Use kcalloc() in two functions
    clk: mvebu: Use kcalloc() in of_cpu_clk_setup()
    clk: nomadik: Delete error messages for a failed memory allocation in two functions
    clk: nomadik: Use seq_puts() in nomadik_src_clk_show()
    clk: Improve a size determination in two functions
    clk: Replace four seq_printf() calls by seq_putc()
    clk: si5351: Delete an error message for a failed memory allocation in si5351_i2c_probe()
    clk: si5351: Use devm_kcalloc() in si5351_i2c_probe()
    clk: at91: Use kcalloc() in of_at91_clk_pll_get_characteristics()
    reset: mediatek: Add MT2701 ethsys reset controller include file
    clk: mediatek: add mt2701 ethernet reset
    clk: hi6220: Add the hi655x's pmic clock
    clk: ti: fix building without legacy omap3
    clk: ti: fix linker error with !SOC_OMAP4
    clk: hi3620: Fix a typo in one variable name
    clk: hi3620: Delete error messages for a failed memory allocation in two functions
    clk: hi3620: Use kcalloc() in hi3620_mmc_clk_init()
    clk: hisilicon: Delete error messages for failed memory allocations in hisi_clk_init()
    ...

    Linus Torvalds
     
  • Pull virtio updates from Michael Tsirkin:
    "Fixes, cleanups, performance

    A bunch of changes to virtio, most affecting virtio net. Also ptr_ring
    batched zeroing - first of batching enhancements that seems ready."

    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
    s390/virtio: change maintainership
    tools/virtio: fix spelling mistake: "wakeus" -> "wakeups"
    virtio_net: tidy a couple debug statements
    ptr_ring: support testing different batching sizes
    ringtest: support test specific parameters
    ptr_ring: batch ring zeroing
    virtio: virtio_driver doc
    virtio_net: don't reset twice on XDP on/off
    virtio_net: fix support for small rings
    virtio_net: reduce alignment for buffers
    virtio_net: rework mergeable buffer handling
    virtio_net: allow specifying context for rx
    virtio: allow extra context per descriptor
    tools/virtio: fix build breakage
    virtio: add context flag to find vqs
    virtio: wrap find_vqs
    ringtest: fix an assert statement

    Linus Torvalds
     
  • Pull TEE driver infrastructure and OP-TEE drivers from Arnd Bergmann:
    "This introduces a generic TEE framework in the kernel, to handle
    trusted environemtns (security coprocessor or software implementations
    such as OP-TEE/TrustZone). I'm sending it separately from the other
    arm-soc driver changes to give it a little more visibility, once the
    subsystem is merged, we will likely keep this in the arm₋soc drivers
    branch or have the maintainers submit pull requests directly,
    depending on the patch volume.

    I have reviewed earlier versions in the past, and have reviewed the
    latest version in person during Linaro Connect BUD17.

    Here is my overall assessment of the subsystem:

    - There is clearly demand for this, both for the generic
    infrastructure and the specific OP-TEE implementation.

    - The code has gone through a large number of reviews, and the review
    comments have all been addressed, but the reviews were not coming
    up with serious issues any more and nobody volunteered to vouch for
    the quality.

    - The user space ioctl interface is sufficient to work with the
    OP-TEE driver, and it should in principle work with other TEE
    implementations that follow the GlobalPlatform[1] standards, but it
    might need to be extended in minor ways depending on specific
    requirements of future TEE implementations

    - The main downside of the API to me is how the user space is tied to
    the TEE implementation in hardware or firmware, but uses a generic
    way to communicate with it. This seems to be an inherent problem
    with what it is trying to do, and I could not come up with any
    better solution than what is implemented here.

    For a detailed history of the patch series, see

    https://lkml.org/lkml/2017/3/10/1277"

    * tag 'armsoc-tee' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    arm64: dt: hikey: Add optee node
    Documentation: tee subsystem and op-tee driver
    tee: add OP-TEE driver
    tee: generic TEE subsystem
    dt/bindings: add bindings for optee

    Linus Torvalds