27 Mar, 2016

3 commits

  • Pull Ceph updates from Sage Weil:
    "There is quite a bit here, including some overdue refactoring and
    cleanup on the mon_client and osd_client code from Ilya, scattered
    writeback support for CephFS and a pile of bug fixes from Zheng, and a
    few random cleanups and fixes from others"

    [ I already decided not to pull this because of it having been rebased
    recently, but ended up changing my mind after all. Next time I'll
    really hold people to it. Oh well. - Linus ]

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (34 commits)
    libceph: use KMEM_CACHE macro
    ceph: use kmem_cache_zalloc
    rbd: use KMEM_CACHE macro
    ceph: use lookup request to revalidate dentry
    ceph: kill ceph_get_dentry_parent_inode()
    ceph: fix security xattr deadlock
    ceph: don't request vxattrs from MDS
    ceph: fix mounting same fs multiple times
    ceph: remove unnecessary NULL check
    ceph: avoid updating directory inode's i_size accidentally
    ceph: fix race during filling readdir cache
    libceph: use sizeof_footer() more
    ceph: kill ceph_empty_snapc
    ceph: fix a wrong comparison
    ceph: replace CURRENT_TIME by current_fs_time()
    ceph: scattered page writeback
    libceph: add helper that duplicates last extent operation
    libceph: enable large, variable-sized OSD requests
    libceph: osdc->req_mempool should be backed by a slab pool
    libceph: make r_request msg_size calculation clearer
    ...

    Linus Torvalds
     
  • Pull NTB bug fixes from Jon Mason:
    "NTB bug fixes for tasklet from spinning forever, link errors,
    translation window setup, NULL ptr dereference, and ntb-perf errors.

    Also, a modification to the driver API that makes _addr functions
    optional"

    * tag 'ntb-4.6' of git://github.com/jonmason/ntb:
    NTB: Remove _addr functions from ntb_hw_amd
    NTB: Make _addr functions optional in the API
    NTB: Fix incorrect clean up routine in ntb_perf
    NTB: Fix incorrect return check in ntb_perf
    ntb: fix possible NULL dereference
    ntb: add missing setup of translation window
    ntb: stop link work when we do not have memory
    ntb: stop tasklet from spinning forever during shutdown.
    ntb: perf test: fix address space confusion

    Linus Torvalds
     
  • Pull more SCSI updates from James Bottomley:
    "The only new stuff which missed the first pull request is an update to
    the UFS driver.

    The rest is an assortment of bug fixes and minor tweaks which appeared
    recently (some are fixes for recent code and some are stuff spotted
    recently by the checkers or the new gcc-6 compiler [most of Arnd's
    stuff])"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (32 commits)
    scsi_common: do not clobber fixed sense information
    scsi: ufs: select CONFIG_NLS
    scsi: fc: use get/put_unaligned64 for wwn access
    fnic: move printk()s outside of the critical code section.
    qla2xxx: avoid maybe_uninitialized warning
    megaraid_sas: add missing curly braces in ioctl handler
    lpfc: fix misleading indentation
    scsi_transport_sas: add 'scsi_target_id' sysfs attribute
    scsi_dh_alua: uninitialized variable in alua_check_vpd()
    scsi: ufs-qcom: add printouts of testbus debug registers
    scsi: ufs-qcom: enable/disable the device ref clock
    scsi: ufs-qcom: set PA_Local_TX_LCC_Enable before link startup
    scsi: ufs: add device quirk delay before putting UFS rails in LPM
    scsi: ufs: fix leakage during link off state
    scsi: ufs: tune UniPro parameters to optimize hibern8 exit time
    scsi: ufs: handle non spec compliant bkops behaviour by device
    scsi: ufs: add retry for query descriptors
    scsi: ufs: add error recovery after DL NAC error
    scsi: ufs: make error handling bit faster
    scsi: ufs: disable vccq if it's not needed by UFS device
    ...

    Linus Torvalds
     

26 Mar, 2016

11 commits

  • Kernel zero day testing warned about address space confusion. A virtual
    iomem address was used where a physical address is expected. The
    offending functions implement an optional part of the api, so they are
    removed. They can be added later, after testing.

    Fixes: a1b3695820aa490e58915d720a1438069813008b

    Signed-off-by: Allen Hubbe
    Acked-by: Xiangliang Yu
    Signed-off-by: Jon Mason

    Allen Hubbe
     
  • Merge fourth patch-bomb from Andrew Morton:
    "A lot more stuff than expected, sorry. A bunch of ocfs2 reviewing was
    finished off.

    - mhocko's oom-reaper out-of-memory-handler changes

    - ocfs2 fixes and features

    - KASAN feature work

    - various fixes"

    * emailed patches from Andrew Morton : (42 commits)
    thp: fix typo in khugepaged_scan_pmd()
    MAINTAINERS: fill entries for KASAN
    mm/filemap: generic_file_read_iter(): check for zero reads unconditionally
    kasan: test fix: warn if the UAF could not be detected in kmalloc_uaf2
    mm, kasan: stackdepot implementation. Enable stackdepot for SLAB
    arch, ftrace: for KASAN put hard/soft IRQ entries into separate sections
    mm, kasan: add GFP flags to KASAN API
    mm, kasan: SLAB support
    kasan: modify kmalloc_large_oob_right(), add kmalloc_pagealloc_oob_right()
    include/linux/oom.h: remove undefined oom_kills_count()/note_oom_kill()
    mm/page_alloc: prevent merging between isolated and other pageblocks
    drivers/memstick/host/r592.c: avoid gcc-6 warning
    ocfs2: extend enough credits for freeing one truncate record while replaying truncate records
    ocfs2: extend transaction for ocfs2_remove_rightmost_path() and ocfs2_update_edge_lengths() before to avoid inconsistency between inode and et
    ocfs2/dlm: move lock to the tail of grant queue while doing in-place convert
    ocfs2: solve a problem of crossing the boundary in updating backups
    ocfs2: fix occurring deadlock by changing ocfs2_wq from global to local
    ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list
    ocfs2/dlm: fix race between convert and recovery
    ocfs2: fix a deadlock issue in ocfs2_dio_end_io_write()
    ...

    Linus Torvalds
     
  • Pull power management fixlet from Rafael Wysocki:
    "One of commits in my previous pull request changed the permissions of
    drivers/power/avs/rockchip-io-domain.c to executable by mistake"

    * tag 'pm+acpi-4.6-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    Fix permissions of drivers/power/avs/rockchip-io-domain.c

    Linus Torvalds
     
  • Pull more input updates from Dmitry Torokhov:
    "Second round of updates for the input subsystem.

    The BYD PS/2 protocol driver now uses absolute reporting mode and
    should behave more like other touchpads; Synaptics driver needed to
    extend one of its quirks to a newer firmware version, and a few USB
    drivers got tightened up checks for the contents of their descriptors"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: sur40 - fix DMA on stack
    Input: ati_remote2 - fix crashes on detecting device with invalid descriptor
    Input: synaptics - handle spurious release of trackstick buttons, again
    Input: synaptics-rmi4 - remove check of Non-NULL array
    Input: byd - enable absolute mode
    Input: ims-pcu - sanity check against missing interfaces
    Input: melfas_mip4 - add hw_version sysfs attribute

    Linus Torvalds
     
  • The r592 driver relies on behavior of the DMA mapping API that is
    normally observed but not guaranteed by the API. Instead it uses a
    runtime check to fail transfers if the API ever behaves

    When CONFIG_NEED_SG_DMA_LENGTH is not set, one of the checks turns into a
    comparison of a variable with itself, which gcc-6.0 now warns about:

    drivers/memstick/host/r592.c: In function 'r592_transfer_fifo_dma':
    drivers/memstick/host/r592.c:302:31: error: self-comparison always evaluates to false [-Werror=tautological-compare]
    (sg_dma_len(&dev->req->sg) < dev->req->sg.length)) {
    ^

    The check itself is not a problem, so this patch just rephrases the
    condition in a way that gcc does not consider an indication of a mistake.
    We already know that dev->req->sg.length was initially R592_LFIFO_SIZE, so
    we can compare it to that constant again.

    Signed-off-by: Arnd Bergmann
    Cc: Maxim Levitsky
    Cc: Quentin Lambert
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arnd Bergmann
     
  • INPUT_COMPAT_TEST became much simpler after commit f4056b52845283
    ("input: redefine INPUT_COMPAT_TEST as in_compat_syscall()") so we can
    cleanly eliminate it altogether.

    Acked-by: Dmitry Torokhov
    Cc: Andy Lutomirski
    Cc: Andy Lutomirski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • The permissions of this file were modified by commit (f447671b9e4f PM /
    AVS: rockchip-io: add io selectors and supplies for rk3399) by mistake,
    so fix them.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • Use KMEM_CACHE() instead of kmem_cache_create() to simplify the code.

    Signed-off-by: Geliang Tang
    Signed-off-by: Ilya Dryomov

    Geliang Tang
     
  • Turn r_ops into a flexible array member to enable large, consisting of
    up to 16 ops, OSD requests. The use case is scattered writeback in
    cephfs and, as far as the kernel client is concerned, 16 is just a made
    up number.

    r_ops had size 3 for copyup+hint+write, but copyup is really a special
    case - it can only happen once. ceph_osd_request_cache is therefore
    stuffed with num_ops=2 requests, anything bigger than that is allocated
    with kmalloc(). req_mempool is backed by ceph_osd_request_cache, which
    means either num_ops=1 or num_ops=2 for use_mempool=true - all existing
    users (ceph_writepages_start(), ceph_osdc_writepages()) are fine with
    that.

    Signed-off-by: Ilya Dryomov

    Ilya Dryomov
     
  • This avoids defining large array of r_reply_op_{len,result} in
    in struct ceph_osd_request.

    Signed-off-by: Yan, Zheng
    Signed-off-by: Ilya Dryomov

    Yan, Zheng
     
  • This reverts commit e7223f18603374d235d8bb0398532323e5f318b9.

    It causes problems when a ppdev tries to register before the parport
    driver has been registered with the device model. That will trigger the

    BUG_ON(!drv->bus->p);

    at drivers/base/driver.c:153. The call chain is

    kernel_init ->
    kernel_init_freeable ->
    do_one_initcall ->
    ppdev_init ->
    __parport_register_driver ->
    driver_register *BOOM*

    Reported-by: kernel test robot
    Reported-by: Ross Zwisler
    Reported-by: Petr Mladek
    Cc: Sudip Mukherjee
    Cc: Greg Kroah-Hartman
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

25 Mar, 2016

19 commits

  • Pull firewire leftover from Stefan Richter:
    "Occurrences of timeval were supposed to be eliminated last round, now
    remove a last forgotten one"

    * tag 'firewire-update2' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
    firewire: nosy: Replace timeval with timespec64

    Linus Torvalds
     
  • Pull drm fixes from Dave Airlie:
    "Just a couple of dma-buf related fixes and some amdgpu fixes, along
    with a regression fix for radeon off but default feature, but makes my
    30" monitor happy again"

    * 'drm-next' of git://people.freedesktop.org/~airlied/linux:
    drm/radeon/mst: cleanup code indentation
    drm/radeon/mst: fix regression in lane/link handling.
    drm/amdgpu: add invalidate_page callback for userptrs
    drm/amdgpu: Revert "remove the userptr rmn->lock"
    drm/amdgpu: clean up path handling for powerplay
    drm/amd/powerplay: fix memory leak of tdp_table
    dma-buf/fence: fix fence_is_later v2
    dma-buf: Update docs for SYNC ioctl
    drm: remove excess description
    dma-buf, drm, ion: Propagate error code from dma_buf_start_cpu_access()
    drm/atmel-hlcdc: use helper to get crtc state
    drm/atomic: use helper to get crtc state

    Linus Torvalds
     
  • Pull asm-generic updates from Arnd Bergmann:
    "There are only three patches this time, most other changes to files in
    include/asm-generic tend to go through the tree of whoever depends on
    the change.

    Two patches are cleanups for stuff that is no longer needed, the main
    change is to adapt the generic version of BUG_ON() for CONFIG_BUG=n to
    make it behave consistently with BUG().

    This avoids undefined behavior along with a number of warnings about
    that undefined behavior in randconfig builds when we keep going on
    after hitting a BUG_ON()"

    * tag 'asm-generic-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
    asm-generic: remove old nonatomic-io wrapper files
    asm-generic: default BUG_ON(x) to if(x)BUG()
    asm-generic: page.h: Remove useless get_user_page and free_user_page

    Linus Torvalds
     
  • some amd fixes
    * 'drm-next-4.6' of git://people.freedesktop.org/~agd5f/linux:
    drm/radeon/mst: cleanup code indentation
    drm/radeon/mst: fix regression in lane/link handling.
    drm/amdgpu: add invalidate_page callback for userptrs
    drm/amdgpu: Revert "remove the userptr rmn->lock"
    drm/amdgpu: clean up path handling for powerplay
    drm/amd/powerplay: fix memory leak of tdp_table

    Dave Airlie
     
  • Pull more power management and ACPI updates from Rafael Wysocki:
    "The second batch of power management and ACPI updates for v4.6.

    Included are fixups on top of the previous PM/ACPI pull request and
    other material that didn't make into it but still should go into 4.6.

    Among other things, there's a fix for an intel_pstate driver issue
    uncovered by recent cpufreq changes, a workaround for a boot hang on
    Skylake-H related to the handling of deep C-states by the platform and
    a PCI/ACPI fix for the handling of IO port resources on non-x86
    architectures plus some new device IDs and similar.

    Specifics:

    - Fix for an intel_pstate driver issue related to the handling of MSR
    updates uncovered by the recent cpufreq rework (Rafael Wysocki).

    - cpufreq core cleanups related to starting governors and frequency
    synchronization during resume from system suspend and a locking fix
    for cpufreq_quick_get() (Rafael Wysocki, Richard Cochran).

    - acpi-cpufreq and powernv cpufreq driver updates (Jisheng Zhang,
    Michael Neuling, Richard Cochran, Shilpasri Bhat).

    - intel_idle driver update preventing some Skylake-H systems from
    hanging during initialization by disabling deep C-states mishandled
    by the platform in the problematic configurations (Len Brown).

    - Intel Xeon Phi Processor x200 support for intel_idle
    (Dasaratharaman Chandramouli).

    - cpuidle menu governor updates to make it always honor PM QoS
    latency constraints (and prevent C1 from being used as the fallback
    C-state on x86 when they are set below its exit latency) and to
    restore the previous behavior to fall back to C1 if the next timer
    event is set far enough in the future that was changed in 4.4 which
    led to an energy consumption regression (Rik van Riel, Rafael
    Wysocki).

    - New device ID for a future AMD UART controller in the ACPI driver
    for AMD SoCs (Wang Hongcheng).

    - Rockchip rk3399 support for the rockchip-io-domain adaptive voltage
    scaling (AVS) driver (David Wu).

    - ACPI PCI resources management fix for the handling of IO space
    resources on architectures where the IO space is memory mapped
    (IA64 and ARM64) broken by the introduction of common ACPI
    resources parsing for PCI host bridges in 4.4 (Lorenzo Pieralisi).

    - Fix for the ACPI backend of the generic device properties API to
    make it parse non-device (data node only) children of an ACPI
    device correctly (Irina Tirdea).

    - Fixes for the handling of global suspend flags (introduced in 4.4)
    during hibernation and resume from it (Lukas Wunner).

    - Support for obtaining configuration information from Device Trees
    in the PM clocks framework (Jon Hunter).

    - ACPI _DSM helper code and devfreq framework cleanups (Colin Ian
    King, Geert Uytterhoeven)"

    * tag 'pm+acpi-4.6-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (23 commits)
    PM / AVS: rockchip-io: add io selectors and supplies for rk3399
    intel_idle: Support for Intel Xeon Phi Processor x200 Product Family
    intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled
    ACPI / PM: Runtime resume devices when waking from hibernate
    PM / sleep: Clear pm_suspend_global_flags upon hibernate
    cpufreq: governor: Always schedule work on the CPU running update
    cpufreq: Always update current frequency before startig governor
    cpufreq: Introduce cpufreq_update_current_freq()
    cpufreq: Introduce cpufreq_start_governor()
    cpufreq: powernv: Add sysfs attributes to show throttle stats
    cpufreq: acpi-cpufreq: make Intel/AMD MSR access, io port access static
    PCI: ACPI: IA64: fix IO port generic range check
    ACPI / util: cast data to u64 before shifting to fix sign extension
    cpufreq: powernv: Define per_cpu chip pointer to optimize hot-path
    cpuidle: menu: Fall back to polling if next timer event is near
    cpufreq: acpi-cpufreq: Clean up hot plug notifier callback
    intel_pstate: Do not call wrmsrl_on_cpu() with disabled interrupts
    cpufreq: Make cpufreq_quick_get() safe to call
    ACPI / property: fix data node parsing in acpi_get_next_subnode()
    ACPI / APD: Add device HID for future AMD UART controller
    ...

    Linus Torvalds
     
  • Pull more RTC updates from Alexandre Belloni:
    "A second pull request for v4.6 with a few fixesi before -rc1. The new
    features for abx80x actually make the RTC behave correctly.

    Drivers:
    - abx80x: handle both XT and RC oscillators, XT failure bit and
    autocalibration
    - m41t80: avoid out of range year values
    - rv8803: workaround an i2c HW issue"

    * tag 'rtc-4.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
    rtc: abx80x: handle the oscillator failure bit
    rtc: abx80x: handle autocalibration
    rtc: rv8803: workaround i2c HW issue
    rtc: mcp795: add devicetree support
    rtc: asm9260: remove incorrect __init/__exit annotations
    rtc: m41t80: avoid out of range year values
    rtc: s3c: Don't print an error on probe deferral
    rtc: rv3029: stop mentioning rv3029c2

    Linus Torvalds
     
  • Pull block fixes from Jens Axboe:
    "Final round of fixes for this merge window - some of this has come up
    after the initial pull request, and some of it was put in a post-merge
    branch before the merge window.

    This contains:

    - Fix for a bad check for an error on dma mapping in the mtip32xx
    driver, from Alexey Khoroshilov.

    - A set of fixes for lightnvm, from Javier, Matias, and Wenwei.

    - An NVMe completion record corruption fix from Marta, ensuring that
    we read things in the right order.

    - Two writeback fixes from Tejun, marked for stable@ as well.

    - A blk-mq sw queue iterator fix from Thomas, fixing an oops for
    sparse CPU maps. They hit this in the hot plug/unplug rework"

    * 'for-linus' of git://git.kernel.dk/linux-block:
    nvme: avoid cqe corruption when update at the same time as read
    writeback, cgroup: fix use of the wrong bdi_writeback which mismatches the inode
    writeback, cgroup: fix premature wb_put() in locked_inode_to_wb_and_lock_list()
    blk-mq: Use proper cpumask iterator
    mtip32xx: fix checks for dma mapping errors
    lightnvm: do not load L2P table if not supported
    lightnvm: do not reserve lun on l2p loading
    nvme: lightnvm: return ppa completion status
    lightnvm: add a bitmap of luns
    lightnvm: specify target's logical address area
    null_blk: add lightnvm null_blk device to the nullb_list

    Linus Torvalds
     
  • Pull MTD updates from Brian Norris:
    "NAND:
    - Add sunxi_nand randomizer support
    - begin refactoring NAND ecclayout structs
    - fix pxa3xx_nand dmaengine usage
    - brcmnand: fix support for v7.1 controller
    - add Qualcomm NAND controller driver

    SPI NOR:
    - add new ls1021a, ls2080a support to Freescale QuadSPI
    - add new flash ID entries
    - support bottom-block protection for Winbond flash
    - support Status Register Write Protect
    - remove broken QPI support for Micron SPI flash

    JFFS2:
    - improve post-mount CRC scan efficiency

    General:
    - refactor bcm63xxpart parser, to later extend for NAND
    - add writebuf size parameter to mtdram

    Other minor code quality improvements"

    * tag 'for-linus-20160324' of git://git.infradead.org/linux-mtd: (72 commits)
    mtd: nand: remove kerneldoc for removed function parameter
    mtd: nand: Qualcomm NAND controller driver
    dt/bindings: qcom_nandc: Add DT bindings
    mtd: nand: don't select chip in nand_chip's block_bad op
    mtd: spi-nor: support lock/unlock for a few Winbond chips
    mtd: spi-nor: add TB (Top/Bottom) protect support
    mtd: spi-nor: add SPI_NOR_HAS_LOCK flag
    mtd: spi-nor: use BIT() for flash_info flags
    mtd: spi-nor: disallow further writes to SR if WP# is low
    mtd: spi-nor: make lock/unlock bounds checks more obvious and robust
    mtd: spi-nor: silently drop lock/unlock for already locked/unlocked region
    mtd: spi-nor: wait for SR_WIP to clear on initial unlock
    mtd: nand: simplify nand_bch_init() usage
    mtd: mtdswap: remove useless if (!mtd->ecclayout) test
    mtd: create an mtd_oobavail() helper and make use of it
    mtd: kill the ecclayout->oobavail field
    mtd: nand: check status before reporting timeout
    mtd: bcm63xxpart: give width specifier an 'int', not 'size_t'
    mtd: mtdram: Add parameter for setting writebuf size
    mtd: nand: pxa3xx_nand: kill unused field 'drcmr_cmd'
    ...

    Linus Torvalds
     
  • Pull UBI/UBIFS updates from Richard Weinberger:
    "This contains cleanups and a maintainer update for UBI and UBIFS"

    * tag 'upstream-4.6-rc1' of git://git.infradead.org/linux-ubifs:
    ubifs: Remove unused header
    MAINTAINERS: Update UBIFS entry
    mtd: ubi: Add logging functions ubi_msg, ubi_warn and ubi_err
    ubifs: Add logging functions for ubifs_msg, ubifs_err and ubifs_warn

    Linus Torvalds
     
  • Handle the Oscillator Failure ('OF') bit from Oscillator Status register
    (0x1D). This bit is cleared on set_time function and is read each time the
    date/time is read, but only in case of XT Oscillator selection.
    In RC mode, this bit is always set.

    Signed-off-by: Mylène Josserand
    Signed-off-by: Alexandre Belloni

    Mylène Josserand
     
  • The autocalibration is separated in two bits to set in Oscillator
    Control register (0x1c) :
    - OSEL bit to select the oscillator type (XT or RC).
    - ACAL bit to select the autocalibration type.

    These functionnalities are exported in sysfs entries : "oscillator"
    and "autocalibration". Respectively, the values are "xtal" for XT
    oscillator and "rc" for RC oscillator and 0 to disable the
    autocalibration cycle, 512 for a 512 seconds autocalibration cycle
    and 1024 for a cycle of 1024 seconds.

    Examples :
    Set to XT Oscillator
    echo xtal > /sys/class/rtc/rtc0/device/oscillator
    Activate an autocalibration every 512 seconds
    echo 512 > /sys/class/rtc/rtc0/device/autocalibration

    Signed-off-by: Mylène Josserand
    Signed-off-by: Alexandre Belloni

    Mylène Josserand
     
  • The rv8803 has a 60µs window where it will not answer on the i2c bus.
    It also means there will be no ack for the communication. Make sure
    communication is tried multiple times when this happens (the i2c subsystem
    mandates -ENXIO is that case but the number of retries is host specific).
    The critical parts are the probe function and the alarm callback so make
    sure we handle the failure there.

    Cc: stable@vger.kernel.org # v4.4
    Signed-off-by: Alexandre Belloni

    Alexandre Belloni
     
  • * acpi-soc:
    ACPI / APD: Add device HID for future AMD UART controller

    * acpi-misc:
    ACPI / util: cast data to u64 before shifting to fix sign extension

    * acpi-pci:
    PCI: ACPI: IA64: fix IO port generic range check

    * device-properties:
    ACPI / property: fix data node parsing in acpi_get_next_subnode()

    Rafael J. Wysocki
     
  • * pm-avs:
    PM / AVS: rockchip-io: add io selectors and supplies for rk3399

    * pm-clk:
    PM / clk: Add support for obtaining clocks from device-tree

    * pm-devfreq:
    PM / devfreq: Spelling s/frequnecy/frequency/

    * pm-sleep:
    ACPI / PM: Runtime resume devices when waking from hibernate
    PM / sleep: Clear pm_suspend_global_flags upon hibernate

    Rafael J. Wysocki
     
  • * pm-cpufreq:
    cpufreq: governor: Always schedule work on the CPU running update
    cpufreq: Always update current frequency before startig governor
    cpufreq: Introduce cpufreq_update_current_freq()
    cpufreq: Introduce cpufreq_start_governor()
    cpufreq: powernv: Add sysfs attributes to show throttle stats
    cpufreq: acpi-cpufreq: make Intel/AMD MSR access, io port access static
    cpufreq: powernv: Define per_cpu chip pointer to optimize hot-path
    cpufreq: acpi-cpufreq: Clean up hot plug notifier callback
    intel_pstate: Do not call wrmsrl_on_cpu() with disabled interrupts
    cpufreq: Make cpufreq_quick_get() safe to call

    * pm-cpuidle:
    intel_idle: Support for Intel Xeon Phi Processor x200 Product Family
    intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled
    cpuidle: menu: Fall back to polling if next timer event is near
    cpuidle: menu: use high confidence factors only when considering polling

    Rafael J. Wysocki
     
  • Pull thermal updates from Zhang Rui:

    - Fix a regression where bogus trip points on some Lenovo laptops start
    to screw up thermal control after commit 81ad4276b505 ("Thermal:
    initialize thermal zone device correctly").

    On these Lenovo laptops, a bogus passive trip point is reported,
    which is 0 degree Celsius. Without commit 81ad4276b505, thermal zone
    fails to set cooling devices to proper cooling state, which is a bug.
    But with commit 81ad4276b505 applied, the processors are always
    throttled on these Lenovo laptops because the current temperature is
    always higher than the passive trip point.

    Fix things to ignore such bogus trip points. (Zhang Rui)

    - Introduce Mediatek thermal driver. (Sascha Hauer)

    - Introduce devm_ versions of OF thermal sensor register API. (Laxman
    Dewangan)

    - Changes in Kconfigs to allow compile test on UM arch. (Krzysztof
    Kozlowski)

    - Introduce Skylake support in intel_pch_thermal driver. (Srinivas
    Pandruvada)

    - Several small fixes on Rockchip, TI-SoC, Tegra, RCar, and Exynos
    thermal drivers.

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (26 commits)
    Thermal: Ignore invalid trip points
    thermal: trace: migrating thermal traces to use TRACE_DEFINE_ENUM() macros
    thermal: intel_pch_thermal: Enable Skylake PCH thermal
    thermal: doc: Add details of devm_thermal_zone_of_sensor_{register,unregister}
    thermal: of-thermal: Add devm version of thermal_zone_of_sensor_register
    thermal: doc: Add details of thermal_zone_of_sensor_{register,unregister}
    thermal: exynos: Defer probe if vtmu is present but not registered
    thermal: exynos: Use devm_regulator_get_optional() for vtmu
    thermal: exynos: List vtmu-supply as optional property in DT binding
    thermal: exynos: Print a message about exceeded number of supported trip-points
    thermal: exynos: Document number of supported trip-points
    thermal: exynos: Document compatible for Exynos5433 TMU
    thermal: mtk: allow compile testing on UM
    thermal: tegra_soctherm: fix sign bit of temperature
    thermal: Fix build error of missing devm_ioremap_resource on UM
    thermal: ti-soc-thermal: clean up the error handling a bit
    thermal: rcar: Use ARCH_RENESAS
    thermal: rcar_thermal: don't open code of_device_get_match_data()
    thermal: db8500_cpufreq_cooling: Compile with COMPILE_TEST
    thermal: rockchip: fix the tsadc sequence output on rk3228/rk3399
    ...

    Linus Torvalds
     
  • Pull staging driver fixes from Greg KH:
    "Here are some fixes that poped up due to the big staging tree merge,
    as well as the removal of a staging driver that now is covered by a
    "real" driver.

    All of these have been in linux-next for a few days with no reported
    issues"

    * tag 'staging-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
    staging: delete STE RMI4 hackish driver
    staging: android: ion_test: fix check of platform_device_register_simple() error code
    staging: wilc1000: fix a couple of memory leaks
    staging: fsl-mc: fix incorrect type passed to dev_err macros
    staging: fsl-mc: fix incorrect type passed to dev_dbg macros
    staging: wilc1000: fixed kernel panic when firmware is not started
    staging: comedi: ni_mio_common: fix the ni_write[blw]() functions
    staging: most: hdm-dim2: Remove possible dereference error
    staging: lustre: checking for NULL instead of IS_ERR
    staging: lustre: really make lustre dependent on LNet
    staging: refresh TODO for rtl8712
    staging: refresh TODO for rtl8723au

    Linus Torvalds
     
  • Pull timer fix from Thomas Gleixner:
    "A single fix to the pistachio clocksource driver using the proper
    signedness in the error print format"

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    clocksource/drivers/pistachio: Correct output format of PTR_ERR()

    Linus Torvalds
     
  • Pull irq fixes from Thomas Gleixner:
    "A small set of fixes for the usual ARM/SOC irqchip drivers

    - A set of fixes for mbigen to handle multiple devices in a hardware
    module proper

    - A cleanup for the mbigen config option which was pointlessly user
    configurable.

    - A cleanup for tegra replacing open coded functionality by the
    proper core function

    The config cleanup touches arch/arm64/Kconfig.platforms to select the
    irq chip for the related platform"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    irqchip/mbigen: Make CONFIG_HISILICON_IRQ_MBIGEN a hidden option
    ARM64: Kconfig: Select mbigen interrupt controller on Hisilicon platform
    irqchip/mbigen: Handle multiple device nodes in a mbigen module
    irqchip/mbigen: Adjust DT bindings to handle multiple devices in a module
    irqchip/tegra: Switch to use irq_domain_free_irqs_common

    Linus Torvalds
     

24 Mar, 2016

7 commits

  • Pull intel_idle patches for 4.6 from Len Brown.

    * 'cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
    intel_idle: Support for Intel Xeon Phi Processor x200 Product Family
    intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled

    Rafael J. Wysocki
     
  • Pull networking bugfixes from David Miller:
    "Several bug fixes rolling in, some for changes introduced in this
    merge window, and some for problems that have existed for some time:

    1) Fix prepare_to_wait() handling in AF_VSOCK, from Claudio Imbrenda.

    2) The new DST_CACHE should be a silent config option, from Dave
    Jones.

    3) inet_current_timestamp() unintentionally truncates timestamps to
    16-bit, from Deepa Dinamani.

    4) Missing reference to netns in ppp, from Guillaume Nault.

    5) Free memory reference in hv_netvsc driver, from Haiyang Zhang.

    6) Missing kernel doc documentation for function arguments in various
    spots around the networking, from Luis de Bethencourt.

    7) UDP stopped receiving broadcast packets properly, due to
    overzealous multicast checks, fix from Paolo Abeni"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (59 commits)
    net: ping: make ping_v6_sendmsg static
    hv_netvsc: Fix the order of num_sc_offered decrement
    net: Fix typos and whitespace.
    hv_netvsc: Fix the array sizes to be max supported channels
    hv_netvsc: Fix accessing freed memory in netvsc_change_mtu()
    ppp: take reference on channels netns
    net: Reset encap_level to avoid resetting features on inner IP headers
    net: mediatek: fix checking for NULL instead of IS_ERR() in .probe
    net: phy: at803x: Request 'reset' GPIO only for AT8030 PHY
    at803x: fix reset handling
    AF_VSOCK: Shrink the area influenced by prepare_to_wait
    Revert "vsock: Fix blocking ops call in prepare_to_wait"
    macb: fix PHY reset
    ipv4: initialize flowi4_flags before calling fib_lookup()
    fsl/fman: Workaround for Errata A-007273
    ipv4: fix broadcast packets reception
    net: hns: bug fix about the overflow of mss
    net: hns: adds limitation for debug port mtu
    net: hns: fix the bug about mtu setting
    net: hns: fixes a bug of RSS
    ...

    Linus Torvalds
     
  • Reorder the code in netvsc_sc_open(), so num_sc_offered is only decremented
    after vmbus_open() is called. This avoid pontential race of removing device
    before all channels are setup.

    Signed-off-by: Haiyang Zhang
    Reviewed-by: K. Y. Srinivasan
    Signed-off-by: David S. Miller

    Haiyang Zhang
     
  • During the initialisation the driver uses a buffer on the stack for DMA.
    That violates the cache coherency rules. The fix is to allocate the buffer
    with kmalloc().

    Signed-off-by: Oliver Neukum
    Signed-off-by: Dmitry Torokhov

    Oliver Neukum
     
  • The ati_remote2 driver expects at least two interfaces with one
    endpoint each. If given malicious descriptor that specify one
    interface or no endpoints, it will crash in the probe function.
    Ensure there is at least two interfaces and one endpoint for each
    interface before using it.

    The full disclosure: http://seclists.org/bugtraq/2016/Mar/90

    Reported-by: Ralf Spenneberg
    Signed-off-by: Vladis Dronov
    Cc: stable@vger.kernel.org
    Signed-off-by: Dmitry Torokhov

    Vladis Dronov
     
  • …linux-platform-drivers-x86

    Pull x86 platform driver updates from Darren Hart:
    "Significant refactoring of Dell laptop drivers, modularizing the
    smbios code. Multiple new platforms added for ideapad, asus, dell,
    and alienware using existing quirks. A few fixes and cleanups.

    hp-wmi:
    - Remove GPS rfkill support via pre-2009 interface
    - fix unregister order in hp_wmi_rfkill_setup() once again

    ideapad-laptop:
    - Add ideapad Y700 (15) to the no_hw_rfkill DMI list

    fujitsu-laptop:
    - Support radio toggle button

    intel-hid:
    - allocate correct amount of memory for private struct

    platform/x86:
    - Make intel_scu_ipc explicitly non-modular

    intel_pmc_ipc:
    - Avoid pending IPC1 command during legacy suspend
    - Fix GCR register base address and length

    asus-nb-wmi:
    - add wapf=4 quirk for ASUS X75VD

    intel_telemetry_pltdrv:
    - Change verbosity control bits

    dell-rbtn:
    - Add a comment about the XPS 13 9350

    dell-wmi, dell-laptop:
    - depends DMI

    dell-wmi:
    - support Dell Inspiron M5110
    - properly process Dell Instant Launch hotkey
    - enable receiving WMI events on Dell Vostro V131
    - Support new hotkeys on the XPS 13 9350 (Skylake)
    - Clean up hotkey table size check
    - Stop storing pointers to DMI tables

    dell-laptop:
    - move dell_smi_error() to dell-smbios
    - use dell_smbios_find_token() instead of find_token_location()
    - use dell_smbios_find_token() instead of find_token_id()
    - extract SMBIOS-related code to a separate module

    dell-smbios:
    - rename dell_smi_error() to dell_smbios_error()
    - make da_tokens static
    - remove find_token_{id,location}()
    - implement new function for finding DMI table 0xDA tokens
    - make the SMBIOS buffer static
    - return the SMBIOS buffer from dell_smbios_get_buffer()
    - don't return an SMBIOS buffer from dell_smbios_send_request()
    - don't pass an SMBIOS buffer to dell_smbios_send_request()
    - rename dell_send_request() to dell_smbios_send_request()
    - rename release_buffer() to dell_smbios_release_buffer()
    - rename clear_buffer() to dell_smbios_clear_buffer()
    - rename get_buffer() to dell_smbios_get_buffer()

    dell-led:
    - use dell_smbios_send_request() for performing SMBIOS calls
    - use dell_smbios_find_token() for finding mic DMI tokens

    toshiba_acpi:
    - Add a module parameter to disable hotkeys registration
    - Add sysfs entries for the Cooling Method feature
    - Add support for cooling method feature

    Documentation/ABI:
    - Update sysfs-driver-toshiba_acpi file

    thinkpad_acpi:
    - Remove ambiguous logging for "Unsupported brightness interface"

    alienware-wmi:
    - whitespace improvements
    - Add support for two new systems: ASM200 and ASM201.
    - Add support for deep sleep control.
    - Add initial support for alienware graphics amplifier.
    - Add support for new platform: X51-R3
    - Clean up whitespace for ASM100 platform"

    * tag 'platform-drivers-x86-v4.6-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86: (47 commits)
    hp-wmi: Remove GPS rfkill support via pre-2009 interface
    hp-wmi: fix unregister order in hp_wmi_rfkill_setup() once again
    dell-wmi: support Dell Inspiron M5110
    dell-wmi: properly process Dell Instant Launch hotkey
    dell-wmi: enable receiving WMI events on Dell Vostro V131
    dell-smbios: rename dell_smi_error() to dell_smbios_error()
    dell-laptop: move dell_smi_error() to dell-smbios
    ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list
    fujitsu-laptop: Support radio toggle button
    intel-hid: allocate correct amount of memory for private struct
    platform/x86: Make intel_scu_ipc explicitly non-modular
    intel_pmc_ipc: Avoid pending IPC1 command during legacy suspend
    intel_pmc_ipc: Fix GCR register base address and length
    asus-nb-wmi: add wapf=4 quirk for ASUS X75VD
    intel_telemetry_pltdrv: Change verbosity control bits
    dell-rbtn: Add a comment about the XPS 13 9350
    dell-wmi: Support new hotkeys on the XPS 13 9350 (Skylake)
    dell-wmi: Clean up hotkey table size check
    dell-wmi, dell-laptop: depends DMI
    dell-wmi: Stop storing pointers to DMI tables
    ...

    Linus Torvalds
     
  • …erry.reding/linux-pwm

    Pull pwm updates from Thierry Reding:
    "No new drivers this time around, but a handful of cleanups and fixes"

    * tag 'pwm/for-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
    pwm: omap-dmtimer: Add debug message for effective period and duty cycle
    pwm: omap-dmtimer: Round load and match values rather than truncate
    pwm: omap-dmtimer: Add sanity checking for load and match values
    pwm: omap-dmtimer: Fix inaccurate period and duty cycle calculations
    pwm: brcmstb: Fix check of devm_ioremap_resource() return code
    pwm: rcar: Depend on ARCH_RENESAS instead of ARCH_SHMOBILE
    pwm: lpc18xx-sct: Test clock rate to avoid division by 0
    pwm: img: Test clock rate to avoid division by 0

    Linus Torvalds