28 Jul, 2016

11 commits

  • Pull LED updates from Jacek Anaszewski:
    "New LED class driver:
    - LED driver for TI LP3952 6-Channel Color LED

    LED core improvements:
    - Only descend into leds directory when CONFIG_NEW_LEDS is set
    - Add no-op gpio_led_register_device when LED subsystem is disabled
    - MAINTAINERS: Add file patterns for led device tree bindings

    LED Trigger core improvements:
    - return error if invalid trigger name is provided via sysfs

    LED class drivers improvements
    - is31fl32xx: define complete i2c_device_id table
    - is31fl32xx: fix typo in id and match table names
    - leds-gpio: Set of_node for created LED devices
    - pca9532: Add device tree support

    Conversion of IDE trigger to common disk trigger:
    - leds: convert IDE trigger to common disk trigger
    - leds: documentation: 'ide-disk' to 'disk-activity'
    - unicore32: use the new LED disk activity trigger
    - parisc: use the new LED disk activity trigger
    - mips: use the new LED disk activity trigger
    - arm: use the new LED disk activity trigger
    - powerpc: use the new LED disk activity trigger"

    * tag 'leds_for_4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
    leds: is31fl32xx: define complete i2c_device_id table
    leds: is31fl32xx: fix typo in id and match table names
    leds: LED driver for TI LP3952 6-Channel Color LED
    leds: leds-gpio: Set of_node for created LED devices
    leds: triggers: return error if invalid trigger name is provided via sysfs
    leds: Only descend into leds directory when CONFIG_NEW_LEDS is set
    leds: Add no-op gpio_led_register_device when LED subsystem is disabled
    unicore32: use the new LED disk activity trigger
    parisc: use the new LED disk activity trigger
    mips: use the new LED disk activity trigger
    arm: use the new LED disk activity trigger
    powerpc: use the new LED disk activity trigger
    leds: documentation: 'ide-disk' to 'disk-activity'
    leds: convert IDE trigger to common disk trigger
    leds: pca9532: Add device tree support
    MAINTAINERS: Add file patterns for led device tree bindings

    Linus Torvalds
     
  • Pull IPMI updates from Corey Minyard:
    "Remove some old cruft that was disabled by default a long time ago.

    No modern hardware should need this, and anybody who really doesn't
    have something to automatically detect IPMI can add the device by hand
    on the module commandline or hot add it"

    * tag 'for-linus-4.8' of git://git.code.sf.net/p/openipmi/linux-ipmi:
    ipmi: remove trydefaults parameter and default init

    Linus Torvalds
     
  • Pull EDAC updates from Borislav Petkov:
    "This last cycle, Thor was busy adding Arria10 eth FIFO support to the
    altera_edac driver along with other improvements. We have two
    cleanups/fixes too.

    Summary:

    - Altera Arria10 ethernet FIFO buffer support (Thor Thayer)

    - Minor cleanups"

    * tag 'edac_for_4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
    ARM: dts: Add Arria10 Ethernet EDAC devicetree entry
    EDAC, altera: Add Arria10 Ethernet EDAC support
    EDAC, altera: Add Arria10 ECC memory init functions
    Documentation: dt: socfpga: Add Arria10 Ethernet binding
    EDAC, altera: Drop some ifdeffery
    EDAC, altera: Add panic flag check to A10 IRQ
    EDAC, altera: Check parent status for Arria10 EDAC block
    EDAC, altera: Make all private data structures static
    EDAC: Correct channel count limit
    EDAC, amd64_edac: Init opstate at the proper time during init
    EDAC, altera: Handle Arria10 SDRAM child node
    EDAC, altera: Add ECC Manager IRQ controller support
    Documentation: dt: socfpga: Add interrupt-controller to ecc-manager

    Linus Torvalds
     
  • Several build configurations had already disabled this warning because
    it generates a lot of false positives. But some had not, and it was
    still enabled for "allmodconfig" builds, for example.

    Looking at the warnings produced, every single one I looked at was a
    false positive, and the warnings are frequent enough (and big enough)
    that they can easily hide real problems that you don't notice in the
    noise generated by -Wmaybe-uninitialized.

    The warning is good in theory, but this is a classic case of a warning
    that causes more problems than the warning can solve.

    If gcc gets better at avoiding false positives, we may be able to
    re-enable this warning. But as is, we're better off without it, and I
    want to be able to see the *real* warnings.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Pull networking updates from David Miller:

    1) Unified UDP encapsulation offload methods for drivers, from
    Alexander Duyck.

    2) Make DSA binding more sane, from Andrew Lunn.

    3) Support QCA9888 chips in ath10k, from Anilkumar Kolli.

    4) Several workqueue usage cleanups, from Bhaktipriya Shridhar.

    5) Add XDP (eXpress Data Path), essentially running BPF programs on RX
    packets as soon as the device sees them, with the option to mirror
    the packet on TX via the same interface. From Brenden Blanco and
    others.

    6) Allow qdisc/class stats dumps to run lockless, from Eric Dumazet.

    7) Add VLAN support to b53 and bcm_sf2, from Florian Fainelli.

    8) Simplify netlink conntrack entry layout, from Florian Westphal.

    9) Add ipv4 forwarding support to mlxsw spectrum driver, from Ido
    Schimmel, Yotam Gigi, and Jiri Pirko.

    10) Add SKB array infrastructure and convert tun and macvtap over to it.
    From Michael S Tsirkin and Jason Wang.

    11) Support qdisc packet injection in pktgen, from John Fastabend.

    12) Add neighbour monitoring framework to TIPC, from Jon Paul Maloy.

    13) Add NV congestion control support to TCP, from Lawrence Brakmo.

    14) Add GSO support to SCTP, from Marcelo Ricardo Leitner.

    15) Allow GRO and RPS to function on macsec devices, from Paolo Abeni.

    16) Support MPLS over IPV4, from Simon Horman.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1622 commits)
    xgene: Fix build warning with ACPI disabled.
    be2net: perform temperature query in adapter regardless of its interface state
    l2tp: Correctly return -EBADF from pppol2tp_getname.
    net/mlx5_core/health: Remove deprecated create_singlethread_workqueue
    net: ipmr/ip6mr: update lastuse on entry change
    macsec: ensure rx_sa is set when validation is disabled
    tipc: dump monitor attributes
    tipc: add a function to get the bearer name
    tipc: get monitor threshold for the cluster
    tipc: make cluster size threshold for monitoring configurable
    tipc: introduce constants for tipc address validation
    net: neigh: disallow transition to NUD_STALE if lladdr is unchanged in neigh_update()
    MAINTAINERS: xgene: Add driver and documentation path
    Documentation: dtb: xgene: Add MDIO node
    dtb: xgene: Add MDIO node
    drivers: net: xgene: ethtool: Use phy_ethtool_gset and sset
    drivers: net: xgene: Use exported functions
    drivers: net: xgene: Enable MDIO driver
    drivers: net: xgene: Add backward compatibility
    drivers: net: phy: xgene: Add MDIO driver
    ...

    Linus Torvalds
     
  • Pull xen updates from David Vrabel:
    "Features and fixes for 4.8-rc0:

    - ACPI support for guests on ARM platforms.
    - Generic steal time support for arm and x86.
    - Support cases where kernel cpu is not Xen VCPU number (e.g., if
    in-guest kexec is used).
    - Use the system workqueue instead of a custom workqueue in various
    places"

    * tag 'for-linus-4.8-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (47 commits)
    xen: add static initialization of steal_clock op to xen_time_ops
    xen/pvhvm: run xen_vcpu_setup() for the boot CPU
    xen/evtchn: use xen_vcpu_id mapping
    xen/events: fifo: use xen_vcpu_id mapping
    xen/events: use xen_vcpu_id mapping in events_base
    x86/xen: use xen_vcpu_id mapping when pointing vcpu_info to shared_info
    x86/xen: use xen_vcpu_id mapping for HYPERVISOR_vcpu_op
    xen: introduce xen_vcpu_id mapping
    x86/acpi: store ACPI ids from MADT for future usage
    x86/xen: update cpuid.h from Xen-4.7
    xen/evtchn: add IOCTL_EVTCHN_RESTRICT
    xen-blkback: really don't leak mode property
    xen-blkback: constify instance of "struct attribute_group"
    xen-blkfront: prefer xenbus_scanf() over xenbus_gather()
    xen-blkback: prefer xenbus_scanf() over xenbus_gather()
    xen: support runqueue steal time on xen
    arm/xen: add support for vm_assist hypercall
    xen: update xen headers
    xen-pciback: drop superfluous variables
    xen-pciback: short-circuit read path used for merging write values
    ...

    Linus Torvalds
     
  • Pull arm64 updates from Catalin Marinas:

    - Kexec support for arm64

    - Kprobes support

    - Expose MIDR_EL1 and REVIDR_EL1 CPU identification registers to sysfs

    - Trapping of user space cache maintenance operations and emulation in
    the kernel (CPU errata workaround)

    - Clean-up of the early page tables creation (kernel linear mapping,
    EFI run-time maps) to avoid splitting larger blocks (e.g. pmds) into
    smaller ones (e.g. ptes)

    - VDSO support for CLOCK_MONOTONIC_RAW in clock_gettime()

    - ARCH_HAS_KCOV enabled for arm64

    - Optimise IP checksum helpers

    - SWIOTLB optimisation to only allocate/initialise the buffer if the
    available RAM is beyond the 32-bit mask

    - Properly handle the "nosmp" command line argument

    - Fix for the initialisation of the CPU debug state during early boot

    - vdso-offsets.h build dependency workaround

    - Build fix when RANDOMIZE_BASE is enabled with MODULES off

    * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (64 commits)
    arm64: arm: Fix-up the removal of the arm64 regs_query_register_name() prototype
    arm64: Only select ARM64_MODULE_PLTS if MODULES=y
    arm64: mm: run pgtable_page_ctor() on non-swapper translation table pages
    arm64: mm: make create_mapping_late() non-allocating
    arm64: Honor nosmp kernel command line option
    arm64: Fix incorrect per-cpu usage for boot CPU
    arm64: kprobes: Add KASAN instrumentation around stack accesses
    arm64: kprobes: Cleanup jprobe_return
    arm64: kprobes: Fix overflow when saving stack
    arm64: kprobes: WARN if attempting to step with PSTATE.D=1
    arm64: debug: remove unused local_dbg_{enable, disable} macros
    arm64: debug: remove redundant spsr manipulation
    arm64: debug: unmask PSTATE.D earlier
    arm64: localise Image objcopy flags
    arm64: ptrace: remove extra define for CPSR's E bit
    kprobes: Add arm64 case in kprobe example module
    arm64: Add kernel return probes support (kretprobes)
    arm64: Add trampoline code for kretprobes
    arm64: kprobes instruction simulation support
    arm64: Treat all entry code as non-kprobe-able
    ...

    Linus Torvalds
     
  • Pull tile architecture updates from Chris Metcalf:
    "A few stray changes"

    * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
    tile: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO
    tile: support gcc 7 optimization to use __multi3
    tile 32-bit big-endian: fix bugs in syscall argument order
    tile: allow disabling CONFIG_EARLY_PRINTK

    Linus Torvalds
     
  • Pull dlm updates from David Teigland:
    "This set includes two trivial changes, one to use kmemdup and another
    to control the log level of recovery messages"

    * tag 'dlm-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
    dlm: Use kmemdup instead of kmalloc and memcpy
    dlm: add log_info config option

    Linus Torvalds
     
  • Pull f2fs updates from Jaegeuk Kim:
    "The major change in this version is mitigating cpu overheads on write
    paths by replacing redundant inode page updates with mark_inode_dirty
    calls. And we tried to reduce lock contentions as well to improve
    filesystem scalability. Other feature is setting F2FS automatically
    when detecting host-managed SMR.

    Enhancements:
    - ioctl to move a range of data between files
    - inject orphan inode errors
    - avoid flush commands congestion
    - support lazytime

    Bug fixes:
    - return proper results for some dentry operations
    - fix deadlock in add_link failure
    - disable extent_cache for fcollapse/finsert"

    * tag 'for-f2fs-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (68 commits)
    f2fs: clean up coding style and redundancy
    f2fs: get victim segment again after new cp
    f2fs: handle error case with f2fs_bug_on
    f2fs: avoid data race when deciding checkpoin in f2fs_sync_file
    f2fs: support an ioctl to move a range of data blocks
    f2fs: fix to report error number of f2fs_find_entry
    f2fs: avoid memory allocation failure due to a long length
    f2fs: reset default idle interval value
    f2fs: use blk_plug in all the possible paths
    f2fs: fix to avoid data update racing between GC and DIO
    f2fs: add maximum prefree segments
    f2fs: disable extent_cache for fcollapse/finsert inodes
    f2fs: refactor __exchange_data_block for speed up
    f2fs: fix ERR_PTR returned by bio
    f2fs: avoid mark_inode_dirty
    f2fs: move i_size_write in f2fs_write_end
    f2fs: fix to avoid redundant discard during fstrim
    f2fs: avoid mismatching block range for discard
    f2fs: fix incorrect f_bfree calculation in ->statfs
    f2fs: use percpu_rw_semaphore
    ...

    Linus Torvalds
     
  • Pull xfs updates from Dave Chinner:
    "The major addition is the new iomap based block mapping
    infrastructure. We've been kicking this about locally for years, but
    there are other filesystems want to use it too (e.g. gfs2). Now it
    is fully working, reviewed and ready for merge and be used by other
    filesystems.

    There are a lot of other fixes and cleanups in the tree, but those are
    XFS internal things and none are of the scale or visibility of the
    iomap changes. See below for details.

    I am likely to send another pull request next week - we're just about
    ready to merge some new functionality (on disk block->owner reverse
    mapping infrastructure), but that's a huge chunk of code (74 files
    changed, 7283 insertions(+), 1114 deletions(-)) so I'm keeping that
    separate to all the "normal" pull request changes so they don't get
    lost in the noise.

    Summary of changes in this update:
    - generic iomap based IO path infrastructure
    - generic iomap based fiemap implementation
    - xfs iomap based Io path implementation
    - buffer error handling fixes
    - tracking of in flight buffer IO for unmount serialisation
    - direct IO and DAX io path separation and simplification
    - shortform directory format definition changes for wider platform
    compatibility
    - various buffer cache fixes
    - cleanups in preparation for rmap merge
    - error injection cleanups and fixes
    - log item format buffer memory allocation restructuring to prevent
    rare OOM reclaim deadlocks
    - sparse inode chunks are now fully supported"

    * tag 'xfs-for-linus-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs: (53 commits)
    xfs: remove EXPERIMENTAL tag from sparse inode feature
    xfs: bufferhead chains are invalid after end_page_writeback
    xfs: allocate log vector buffers outside CIL context lock
    libxfs: directory node splitting does not have an extra block
    xfs: remove dax code from object file when disabled
    xfs: skip dirty pages in ->releasepage()
    xfs: remove __arch_pack
    xfs: kill xfs_dir2_inou_t
    xfs: kill xfs_dir2_sf_off_t
    xfs: split direct I/O and DAX path
    xfs: direct calls in the direct I/O path
    xfs: stop using generic_file_read_iter for direct I/O
    xfs: split xfs_file_read_iter into buffered and direct I/O helpers
    xfs: remove s_maxbytes enforcement in xfs_file_read_iter
    xfs: kill ioflags
    xfs: don't pass ioflags around in the ioctl path
    xfs: track and serialize in-flight async buffers against unmount
    xfs: exclude never-released buffers from buftarg I/O accounting
    xfs: don't reset b_retries to 0 on every failure
    xfs: remove extraneous buffer flag changes
    ...

    Linus Torvalds
     

27 Jul, 2016

29 commits

  • Parameter trydefaults=1 causes the ipmi_init to initialize ipmi through
    the legacy port io space that was designated for ipmi. Architectures
    that do not map legacy port io can panic when trydefaults=1.

    Rather than implement build-time conditional exceptions for each
    architecture that does not map legacy port io, we have removed legacy
    port io from the driver.

    Parameter 'trydefaults' has been removed. Attempts to use it hereafter
    will evoke the "Unknown symbol in module, or unknown parameter" message.

    The patch was built against a number of architectures and tested for
    regressions and functionality on x86_64 and ARM64.

    Signed-off-by: Tony Camuso

    Removed the config entry and the address source entry for default,
    since neither were used any more.

    Signed-off-by: Corey Minyard

    Tony Camuso
     
  • Commit 0a8ea52c3eb1 ("arm64: Add HAVE_REGS_AND_STACK_ACCESS_API
    feature") inadvertently removed the arch/arm prototype instead of the
    arm64 one introduced by the original patch. There should not be any
    bisection issues since this function is not called from anywhere else
    (it could as well be removed from arch/arm at some point).

    Fixes: 0a8ea52c3eb1 ("arm64: Add HAVE_REGS_AND_STACK_ACCESS_API feature")
    Signed-off-by: Catalin Marinas

    Catalin Marinas
     
  • drivers/net/ethernet/apm/xgene/xgene_enet_hw.c: In function 'xgene_enet_phy_connect':
    drivers/net/ethernet/apm/xgene/xgene_enet_hw.c:759:22: warning: unused variable 'adev' [-Wunused-variable]

    Fixes: 8089a96f601b ("drivers: net: xgene: Add backward compatibility")
    Reported-by: Stephen Rothwell
    Signed-off-by: David S. Miller

    David S. Miller
     
  • The be2net driver performs fw temperature queries on be_worker() routine,
    which is executed each second for each be_adapter. There is a frequency
    threshold to avoid fw query to happens at each call to be_worker();
    instead, currently a fw query occurs once in 64 runs of the procedure.

    Nevertheless, this fw temperature query is invoked only for adapters which
    interface is up, so we can see I/O errors on read of hwmon counters from
    userspace (from tools like lm-sensors) in case we have adapters' functions
    which interface is down.

    This patch moves the fw query code to be invoked even if interface is down.
    No functional changes were introduced.

    Signed-off-by: Guilherme G. Piccoli
    Acked-by: Sathya Perla
    Signed-off-by: David S. Miller

    Guilherme G. Piccoli
     
  • Merge updates from Andrew Morton:

    - a few misc bits

    - ocfs2

    - most(?) of MM

    * emailed patches from Andrew Morton : (125 commits)
    thp: fix comments of __pmd_trans_huge_lock()
    cgroup: remove unnecessary 0 check from css_from_id()
    cgroup: fix idr leak for the first cgroup root
    mm: memcontrol: fix documentation for compound parameter
    mm: memcontrol: remove BUG_ON in uncharge_list
    mm: fix build warnings in
    mm, thp: convert from optimistic swapin collapsing to conservative
    mm, thp: fix comment inconsistency for swapin readahead functions
    thp: update Documentation/{vm/transhuge,filesystems/proc}.txt
    shmem: split huge pages beyond i_size under memory pressure
    thp: introduce CONFIG_TRANSPARENT_HUGE_PAGECACHE
    khugepaged: add support of collapse for tmpfs/shmem pages
    shmem: make shmem_inode_info::lock irq-safe
    khugepaged: move up_read(mmap_sem) out of khugepaged_alloc_page()
    thp: extract khugepaged from mm/huge_memory.c
    shmem, thp: respect MADV_{NO,}HUGEPAGE for file mappings
    shmem: add huge pages support
    shmem: get_unmapped_area align huge page
    shmem: prepare huge= mount option and sysfs knob
    mm, rmap: account shmem thp pages
    ...

    Linus Torvalds
     
  • Pull power supply and reset updates from Sebastian Reichel:
    - introduce reboot mode driver
    - add DT support to max8903
    - add power supply support for axp221
    - misc fixes

    * tag 'for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply:
    power: reset: add reboot mode driver
    dt-bindings: power: reset: add document for reboot-mode driver
    power_supply: fix return value of get_property
    power: qcom_smbb: Make an extcon for usb cable detection
    max8903: adds support for initiation via device tree
    max8903: adds documentation for device tree bindings.
    max8903: remove unnecessary 'out of memory' error message.
    max8903: removes non zero validity checks on gpios.
    max8903: adds requesting of gpios.
    max8903: cleans up confusing relationship between dc_valid, dok and dcm.
    max8903: store pointer to pdata instead of copying it.
    power_supply: bq27xxx_battery: Group register mappings into one table
    docs: Move brcm,bcm21664-resetmgr.txt
    power/reset: make syscon_poweroff() static
    power: axp20x_usb: Add support for usb power-supply on axp22x pmics
    power_supply: bq27xxx_battery: Index register numbers by enum
    power_supply: bq27xxx_battery: Fix copy/paste error in header comment
    MAINTAINERS: Add file patterns for power supply device tree bindings
    power: reset: keystone: Enable COMPILE_TEST

    Linus Torvalds
     
  • Pull regulator updates from Mark Brown:
    "A quiet regulator API release, a few new drivers and some fixes but
    nothing too notable. There will also be some updates for the PWM
    regulator coming through the PWM tree which provide much smoother
    operation when taking over an already running PWM regulator after boot
    using some new PWM APIs.

    Summary:

    - Support for configuration of the initial suspend state from DT.

    - New drivers for Mediatek MT6323, Ricoh RN5T567 and X-Powers AXP809"

    * tag 'regulator-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (38 commits)
    regulator: da9053/52: Fix incorrectly stated minimum and maximum voltage limits
    regulator: mt6323: Constify struct regulator_ops
    regulator: mt6323: Fix module description
    regulator: mt6323: Add support for MT6323 regulator
    regulator: Add document for MT6323 regulator
    regulator: da9210: addition of device tree support
    regulator: act8865: Fix missing of_node_put() in act8865_pdata_from_dt()
    regulator: qcom_smd: Avoid overlapping linear voltage ranges
    regulator: s2mps11: Fix the voltage linear range for s2mps15
    regulator: pwm: Fix regulator ramp delay for continuous mode
    regulator: da9211: add descriptions for da9212/da9214
    mfd: rn5t618: Register restart handler
    mfd: rn5t618: Register power off callback optionally
    regulator: rn5t618: Add RN5T567 PMIC support
    mfd: rn5t618: Add Ricoh RN5T567 PMIC support
    ARM: dts: meson: minix-neo-x8: define PMIC as power controller
    regulator: tps65218: force set power-up/down strobe to 3 for dcdc3
    regulator: tps65218: Enable suspend configuration
    regulator: tps65217: Enable suspend configuration
    regulator: qcom_spmi: Add support for get_mode/set_mode on switches
    ...

    Linus Torvalds
     
  • Pull regmap updates from Mark Brown:
    "Several small updates and API enhancements:

    - provide transparent unrolling of bulk writes into individual writes
    so they can be used with devices without raw formatting.

    - fix compatibility between I2C controllers supporting block commands
    and devices with more than 8 bit wide registers.

    - add some helpers for iopoll-like functionality and workarounds for
    weird interrupt controllers"

    * tag 'regmap-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
    regmap: add iopoll-like polling macro
    regmap: Support bulk writes for devices without raw formatting
    regmap-i2c: Use i2c block command only if register value width is 8 bit
    regmap: irq: Add support to call client specific pre/post interrupt service
    regmap: Add file patterns for regmap device tree bindings

    Linus Torvalds
     
  • Pull GPIO updates from Linus Walleij:
    "This is the bulk of GPIO changes for the v4.8 kernel cycle. The big
    news is the completion of the chardev ABI which I'm very happy about
    and apart from that it's an ordinary, quite busy cycle. The details
    are below.

    The patches are tested in linux-next for some time, patches to other
    subsystem mostly have ACKs.

    I got overly ambitious with configureing lines as input for IRQ lines
    but it turns out that some controllers have their interrupt-enable and
    input-enabling in orthogonal settings so the assumption that all IRQ
    lines are input lines does not hold. Oh well, revert and back to the
    drawing board with that.

    Core changes:

    - The big item is of course the completion of the character device
    ABI. It has now replaced and surpassed the former unmaintainable
    sysfs ABI: we can now hammer (bitbang) individual lines or sets of
    lines and read individual lines or sets of lines from userspace,
    and we can also register to listen to GPIO events from userspace.

    As a tie-in we have two new tools in tools/gpio: gpio-hammer and
    gpio-event-mon that illustrate the proper use of the new ABI. As
    someone said: the wild west days of GPIO are now over.

    - Continued to remove the pointless ARCH_[WANT_OPTIONAL|REQUIRE]_GPIOLIB
    Kconfig symbols. I'm patching hexagon, openrisc, powerpc, sh,
    unicore, ia64 and microblaze. These are either ACKed by their
    maintainers or patched anyways after a grace period and no response
    from maintainers.

    Some archs (ARM) come in from their trees, and others (x86) are
    still not fixed, so I might send a second pull request to root it
    out later in this merge window, or just defer to v4.9.

    - The GPIO tools are moved to the tools build system.

    New drivers:

    - New driver for the MAX77620/MAX20024.

    - New driver for the Intel Merrifield.

    - Enabled PCA953x for the TI PCA9536.

    - Enabled PCA953x for the Intel Edison.

    - Enabled R8A7792 in the RCAR driver.

    Driver improvements:

    - The STMPE and F7188x now supports the .get_direction() callback.

    - The Xilinx driver supports setting multiple lines at once.

    - ACPI support for the Vulcan GPIO controller.

    - The MMIO GPIO driver supports device tree probing.

    - The Acer One 10 is supported through the _DEP ACPI attribute.

    Cleanups:

    - A major cleanup of the OF/DT support code. It is way easier to
    read and understand now, probably this improves performance too.

    - Drop a few redundant .owner assignments.

    - Remove CLPS711x boardfile support: we are 100% DT"

    * tag 'gpio-v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (67 commits)
    MAINTAINERS: Add INTEL MERRIFIELD GPIO entry
    gpio: dwapb: add missing fwnode_handle_put() in dwapb_gpio_get_pdata()
    gpio: merrifield: Protect irq_ack() and gpio_set() by lock
    gpio: merrifield: Introduce GPIO driver to support Merrifield
    gpio: intel-mid: Make it depend to X86_INTEL_MID
    gpio: intel-mid: Sort header block alphabetically
    gpio: intel-mid: Remove potentially harmful code
    gpio: rcar: add R8A7792 support
    gpiolib: remove duplicated include from gpiolib.c
    Revert "gpio: convince line to become input in irq helper"
    gpiolib: of_find_gpio(): Don't discard errors
    gpio: of: Allow overriding the device node
    gpio: free handles in fringe cases
    gpio: tps65218: Add platform_device_id table
    gpio: max77620: get gpio value based on direction
    gpio: lynxpoint: avoid potential warning on error path
    tools/gpio: add install section
    tools/gpio: move to tools buildsystem
    gpio: intel-mid: switch to devm_gpiochip_add_data()
    gpio: 74x164: Use spi_write() helper instead of open coding
    ...

    Linus Torvalds
     
  • Pull media updates from Mauro Carvalho Chehab:

    - new framework support for HDMI CEC and remote control support

    - new encoding codec driver for Mediatek SoC

    - new frontend driver: helene tuner

    - added support for NetUp almost universal devices, with supports
    DVB-C/S/S2/T/T2 and ISDB-T

    - the mn88472 frontend driver got promoted from staging

    - a new driver for RCar video input

    - some soc_camera legacy drivers got removed: timb, omap1, mx2, mx3

    - lots of driver cleanups, improvements and fixups

    * tag 'media/v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (377 commits)
    [media] cec: always check all_device_types and features
    [media] cec: poll should check if there is room in the tx queue
    [media] vivid: support monitor all mode
    [media] cec: fix test for unconfigured adapter in main message loop
    [media] cec: limit the size of the transmit queue
    [media] cec: zero unused msg part after msg->len
    [media] cec: don't set fh to NULL in CEC_TRANSMIT
    [media] cec: clear all status fields before transmit and always fill in sequence
    [media] cec: CEC_RECEIVE overwrote the timeout field
    [media] cxd2841er: Reading SNR for DVB-C added
    [media] cxd2841er: Reading BER and UCB for DVB-C added
    [media] cxd2841er: fix switch-case for DVB-C
    [media] cxd2841er: fix signal strength scale for ISDB-T
    [media] cxd2841er: adjust the dB scale for DVB-C
    [media] cxd2841er: provide signal strength for DVB-C
    [media] cxd2841er: fix BER report via DVBv5 stats API
    [media] mb86a20s: apply mask to val after checking for read failure
    [media] airspy: fix error logic during device register
    [media] s5p-cec/TODO: add TODO item
    [media] cec/TODO: drop comment about sphinx documentation
    ...

    Linus Torvalds
     
  • Pull pstore subsystem updates from Kees Cook:
    "This expands the supported compressors, fixes some bugs, and finally
    adds DT bindings"

    * tag 'pstore-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
    pstore/ram: add Device Tree bindings
    efi-pstore: implement efivars_pstore_exit()
    pstore: drop file opened reference count
    pstore: add lzo/lz4 compression support
    pstore: Cleanup pstore_dump()
    pstore: Enable compression on normal path (again)
    ramoops: Only unregister when registered

    Linus Torvalds
     
  • Pull orangefs updates from Mike Mashall:
    "Orangefs cleanups and enablement of O_DIRECT in open.

    Cleanups:

    - remove some unused defines, and also some obfuscatory ones.

    - remove a redundant xattr handler.

    - Remove useless xattr prefix arguments.

    - Be more picky about uid and gid handling WRT namespaces.

    Our use of current_user_ns() instead of init_user_ns left open the
    possibility that users could spoof their uids or gids when the
    server was running in a different namespace in "default security"
    mode.

    - Allow open(2) to succeed with O_DIRECT"

    * tag 'for-linus-4.8-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
    orangefs: fix namespace handling
    Orangefs: allow O_DIRECT in open
    orangefs: Remove useless xattr prefix arguments
    orangefs: Remove redundant "trusted." xattr handler
    orangefs: Remove useless defines

    Linus Torvalds
     
  • Pull ext4 updates from Ted Ts'o:
    "The major change this cycle is deleting ext4's copy of the file system
    encryption code and switching things over to using the copies in
    fs/crypto. I've updated the MAINTAINERS file to add an entry for
    fs/crypto listing Jaeguk Kim and myself as the maintainers.

    There are also a number of bug fixes, most notably for some problems
    found by American Fuzzy Lop (AFL) courtesy of Vegard Nossum. Also
    fixed is a writeback deadlock detected by generic/130, and some
    potential races in the metadata checksum code"

    * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (21 commits)
    ext4: verify extent header depth
    ext4: short-cut orphan cleanup on error
    ext4: fix reference counting bug on block allocation error
    MAINTAINRES: fs-crypto maintainers update
    ext4 crypto: migrate into vfs's crypto engine
    ext2: fix filesystem deadlock while reading corrupted xattr block
    ext4: fix project quota accounting without quota limits enabled
    ext4: validate s_reserved_gdt_blocks on mount
    ext4: remove unused page_idx
    ext4: don't call ext4_should_journal_data() on the journal inode
    ext4: Fix WARN_ON_ONCE in ext4_commit_super()
    ext4: fix deadlock during page writeback
    ext4: correct error value of function verifying dx checksum
    ext4: avoid modifying checksum fields directly during checksum verification
    ext4: check for extents that wrap around
    jbd2: make journal y2038 safe
    jbd2: track more dependencies on transaction commit
    jbd2: move lockdep tracking to journal_s
    jbd2: move lockdep instrumentation for jbd2 handles
    ext4: respect the nobarrier mount option in nojournal mode
    ...

    Linus Torvalds
     
  • Pull PNP update from Rafael Wysocki:
    "One simple change to make the PNP core use device_initcall() instead
    of module_init() to run pnpbios_thread_init() (Paul Gortmaker)"

    * tag 'pnp-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    PNP: make pnpbios core explicitly non-modular

    Linus Torvalds
     
  • Pull ACPI updates from Rafael Wysocki:
    "The new feaures here are the support for ACPI overlays (allowing ACPI
    tables to be loaded at any time from EFI variables or via configfs)
    and the LPI (Low-Power Idle) support. Also notable is the ACPI-based
    NUMA support for ARM64.

    Apart from that we have two new drivers, for the DPTF (Dynamic Power
    and Thermal Framework) power participant device and for the Intel
    Broxton WhiskeyCove PMIC, some more PMIC-related changes, support for
    the Boot Error Record Table (BERT) in APEI and support for
    platform-initiated graceful shutdown.

    Plus two new pieces of documentation and usual assorted fixes and
    cleanups in quite a few places.

    Specifics:

    - Support for ACPI SSDT overlays allowing Secondary System
    Description Tables (SSDTs) to be loaded at any time from EFI
    variables or via configfs (Octavian Purdila, Mika Westerberg).

    - Support for the ACPI LPI (Low-Power Idle) feature introduced in
    ACPI 6.0 and allowing processor idle states to be represented in
    ACPI tables in a hierarchical way (with the help of Processor
    Container objects) and support for ACPI idle states management on
    ARM64, based on LPI (Sudeep Holla).

    - General improvements of ACPI support for NUMA and ARM64 support for
    ACPI-based NUMA (Hanjun Guo, David Daney, Robert Richter).

    - General improvements of the ACPI table upgrade mechanism and ARM64
    support for that feature (Aleksey Makarov, Jon Masters).

    - Support for the Boot Error Record Table (BERT) in APEI and
    improvements of kernel messages printed by the error injection code
    (Huang Ying, Borislav Petkov).

    - New driver for the Intel Broxton WhiskeyCove PMIC operation region
    and support for the REGS operation region on Broxton, PMIC code
    cleanups (Bin Gao, Felipe Balbi, Paul Gortmaker).

    - New driver for the power participant device which is part of the
    Dynamic Power and Thermal Framework (DPTF) and DPTF-related code
    reorganization (Srinivas Pandruvada).

    - Support for the platform-initiated graceful shutdown feature
    introduced in ACPI 6.1 (Prashanth Prakash).

    - ACPI button driver update related to lid input events generated
    automatically on initialization and system resume that have been
    problematic for some time (Lv Zheng).

    - ACPI EC driver cleanups (Lv Zheng).

    - Documentation of the ACPICA release automation process and the
    in-kernel ACPI AML debugger (Lv Zheng).

    - New blacklist entry and two fixes for the ACPI backlight driver
    (Alex Hung, Arvind Yadav, Ralf Gerbig).

    - Cleanups of the ACPI pci_slot driver (Joe Perches, Paul Gortmaker).

    - ACPI CPPC code changes to make it more robust against possible
    defects in ACPI tables and new symbol definitions for PCC (Hoan
    Tran).

    - System reboot code modification to execute the ACPI _PTS (Prepare
    To Sleep) method in addition to _TTS (Ocean He).

    - ACPICA-related change to carry out lock ordering checks in ACPICA
    if ACPICA debug is enabled in the kernel (Lv Zheng).

    - Assorted minor fixes and cleanups (Andy Shevchenko, Baoquan He,
    Bhaktipriya Shridhar, Paul Gortmaker, Rafael Wysocki)"

    * tag 'acpi-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (71 commits)
    ACPI: enable ACPI_PROCESSOR_IDLE on ARM64
    arm64: add support for ACPI Low Power Idle(LPI)
    drivers: firmware: psci: initialise idle states using ACPI LPI
    cpuidle: introduce CPU_PM_CPU_IDLE_ENTER macro for ARM{32, 64}
    arm64: cpuidle: drop __init section marker to arm_cpuidle_init
    ACPI / processor_idle: Add support for Low Power Idle(LPI) states
    ACPI / processor_idle: introduce ACPI_PROCESSOR_CSTATE
    ACPI / DPTF: move int340x_thermal.c to the DPTF folder
    ACPI / DPTF: Add DPTF power participant driver
    ACPI / lpat: make it explicitly non-modular
    ACPI / dock: make dock explicitly non-modular
    ACPI / PCI: make pci_slot explicitly non-modular
    ACPI / PMIC: remove modular references from non-modular code
    ACPICA: Linux: Enable ACPI_MUTEX_DEBUG for Linux kernel
    ACPI: Rename configfs.c to acpi_configfs.c to prevent link error
    ACPI / debugger: Add AML debugger documentation
    ACPI: Add documentation describing ACPICA release automation
    ACPI: add support for loading SSDTs via configfs
    ACPI: add support for configfs
    efi / ACPI: load SSTDs from EFI variables
    ...

    Linus Torvalds
     
  • Pull power management updates from Rafael Wysocki:
    "Again, the majority of changes go into the cpufreq subsystem, but
    there are no big features this time. The cpufreq changes that stand
    out somewhat are the governor interface rework and improvements
    related to the handling of frequency tables. Apart from those, there
    are fixes and new device/CPU IDs in drivers, cleanups and an
    improvement of the new schedutil governor.

    Next, there are some changes in the hibernation core, including a fix
    for a nasty problem related to the MONITOR/MWAIT usage by CPU offline
    during resume from hibernation, a few core improvements related to
    memory management during resume, a couple of additional debug features
    and cleanups.

    Finally, we have some fixes and cleanups in the devfreq subsystem,
    generic power domains framework improvements related to system
    suspend/resume, support for some new chips in intel_idle and in the
    power capping RAPL driver, a new version of the AnalyzeSuspend utility
    and some assorted fixes and cleanups.

    Specifics:

    - Rework the cpufreq governor interface to make it more
    straightforward and modify the conservative governor to avoid using
    transition notifications (Rafael Wysocki).

    - Rework the handling of frequency tables by the cpufreq core to make
    it more efficient (Viresh Kumar).

    - Modify the schedutil governor to reduce the number of wakeups it
    causes to occur in cases when the CPU frequency doesn't need to be
    changed (Steve Muckle, Viresh Kumar).

    - Fix some minor issues and clean up code in the cpufreq core and
    governors (Rafael Wysocki, Viresh Kumar).

    - Add Intel Broxton support to the intel_pstate driver (Srinivas
    Pandruvada).

    - Fix problems related to the config TDP feature and to the validity
    of the MSR_HWP_INTERRUPT register in intel_pstate (Jan Kiszka,
    Srinivas Pandruvada).

    - Make intel_pstate update the cpu_frequency tracepoint even if the
    frequency doesn't change to avoid confusing powertop (Rafael
    Wysocki).

    - Clean up the usage of __init/__initdata in intel_pstate, mark some
    of its internal variables as __read_mostly and drop an unused
    structure element from it (Jisheng Zhang, Carsten Emde).

    - Clean up the usage of some duplicate MSR symbols in intel_pstate
    and turbostat (Srinivas Pandruvada).

    - Update/fix the powernv, s3c24xx and mvebu cpufreq drivers (Akshay
    Adiga, Viresh Kumar, Ben Dooks).

    - Fix a regression (introduced during the 4.5 cycle) in the
    pcc-cpufreq driver by reverting the problematic commit (Andreas
    Herrmann).

    - Add support for Intel Denverton to intel_idle, clean up Broxton
    support in it and make it explicitly non-modular (Jacob Pan, Jan
    Beulich, Paul Gortmaker).

    - Add support for Denverton and Ivy Bridge server to the Intel RAPL
    power capping driver and make it more careful about the handing of
    MSRs that may not be present (Jacob Pan, Xiaolong Wang).

    - Fix resume from hibernation on x86-64 by making the CPU offline
    during resume avoid using MONITOR/MWAIT in the "play dead" loop
    which may lead to an inadvertent "revival" of a "dead" CPU and a
    page fault leading to a kernel crash from it (Rafael Wysocki).

    - Make memory management during resume from hibernation more
    straightforward (Rafael Wysocki).

    - Add debug features that should help to detect problems related to
    hibernation and resume from it (Rafael Wysocki, Chen Yu).

    - Clean up hibernation core somewhat (Rafael Wysocki).

    - Prevent KASAN from instrumenting the hibernation core which leads
    to large numbers of false-positives from it (James Morse).

    - Prevent PM (hibernate and suspend) notifiers from being called
    during the cleanup phase if they have not been called during the
    corresponding preparation phase which is possible if one of the
    other notifiers returns an error at that time (Lianwei Wang).

    - Improve suspend-related debug printout in the tasks freezer and
    clean up suspend-related console handling (Roger Lu, Borislav
    Petkov).

    - Update the AnalyzeSuspend script in the kernel sources to version
    4.2 (Todd Brandt).

    - Modify the generic power domains framework to make it handle system
    suspend/resume better (Ulf Hansson).

    - Make the runtime PM framework avoid resuming devices synchronously
    when user space changes the runtime PM settings for them and
    improve its error reporting (Rafael Wysocki, Linus Walleij).

    - Fix error paths in devfreq drivers (exynos, exynos-ppmu,
    exynos-bus) and in the core, make some devfreq code explicitly
    non-modular and change some of it into tristate (Bartlomiej
    Zolnierkiewicz, Peter Chen, Paul Gortmaker).

    - Add DT support to the generic PM clocks management code and make it
    export some more symbols (Jon Hunter, Paul Gortmaker).

    - Make the PCI PM core code slightly more robust against possible
    driver errors (Andy Shevchenko).

    - Make it possible to change DESTDIR and PREFIX in turbostat (Andy
    Shevchenko)"

    * tag 'pm-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (89 commits)
    Revert "cpufreq: pcc-cpufreq: update default value of cpuinfo_transition_latency"
    PM / hibernate: Introduce test_resume mode for hibernation
    cpufreq: export cpufreq_driver_resolve_freq()
    cpufreq: Disallow ->resolve_freq() for drivers providing ->target_index()
    PCI / PM: check all fields in pci_set_platform_pm()
    cpufreq: acpi-cpufreq: use cached frequency mapping when possible
    cpufreq: schedutil: map raw required frequency to driver frequency
    cpufreq: add cpufreq_driver_resolve_freq()
    cpufreq: intel_pstate: Check cpuid for MSR_HWP_INTERRUPT
    intel_pstate: Update cpu_frequency tracepoint every time
    cpufreq: intel_pstate: clean remnant struct element
    PM / tools: scripts: AnalyzeSuspend v4.2
    x86 / hibernate: Use hlt_play_dead() when resuming from hibernation
    cpufreq: powernv: Replacing pstate_id with frequency table index
    intel_pstate: Fix MSR_CONFIG_TDP_x addressing in core_get_max_pstate()
    PM / hibernate: Image data protection during restoration
    PM / hibernate: Add missing braces in __register_nosave_region()
    PM / hibernate: Clean up comments in snapshot.c
    PM / hibernate: Clean up function headers in snapshot.c
    PM / hibernate: Add missing braces in hibernate_setup()
    ...

    Linus Torvalds
     
  • …linux-platform-drivers-x86

    Pull x8 platform driver updates from Darren Hart:
    "Several new quirks and tweaks for new platforms to existing laptop
    drivers. A new ACPI virtual power button driver, similar to the
    intel-hid driver. A rework of the dell keymap, using a single sparse
    keymap for all machines. A few fixes and cleanups.

    Summary:

    intel-vbtn:
    - new driver for Intel Virtual Button

    intel_pmc_core:
    - Convert to DEFINE_DEBUGFS_ATTRIBUTE

    fujitsu-laptop:
    - Rework brightness of eco led

    asus-wmi:
    - Add quirk_no_rfkill_wapf4 for the Asus X456UA
    - Add quirk_no_rfkill_wapf4 for the Asus X456UF
    - Add quirk_no_rfkill for the Asus Z550MA
    - Add quirk_no_rfkill for the Asus U303LB
    - Add quirk_no_rfkill for the Asus N552VW
    - Create quirk for airplane_mode LED
    - Add ambient light sensor toggle key

    asus-wireless:
    - Toggle airplane mode LED

    intel_telemetry:
    - Remove Monitor MWAIT feature dependency

    intel-hid:
    - Remove duplicated acpi_remove_notify_handler

    fujitsu-laptop:
    - Add support for eco LED
    - Support touchpad toggle hotkey on Skylake-based models
    - Remove unused macros
    - Use module name in debug messages

    hp-wmi:
    - Fix wifi cannot be hard-unblocked

    toshiba_acpi:
    - Bump driver version and update copyright year
    - Remove the position sysfs entry
    - Add IIO interface for accelerometer axis data

    dell-wmi:
    - Add a WMI event code for display on/off
    - Generate one sparse keymap for all machines
    - Add information about other WMI event codes
    - Sort WMI event codes and update comments
    - Ignore WMI event code 0xe045"

    * tag 'platform-drivers-x86-v4.8-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86: (26 commits)
    intel-vbtn: new driver for Intel Virtual Button
    intel_pmc_core: Convert to DEFINE_DEBUGFS_ATTRIBUTE
    fujitsu-laptop: Rework brightness of eco led
    asus-wmi: Add quirk_no_rfkill_wapf4 for the Asus X456UA
    asus-wmi: Add quirk_no_rfkill_wapf4 for the Asus X456UF
    asus-wmi: Add quirk_no_rfkill for the Asus Z550MA
    asus-wmi: Add quirk_no_rfkill for the Asus U303LB
    asus-wmi: Add quirk_no_rfkill for the Asus N552VW
    asus-wmi: Create quirk for airplane_mode LED
    asus-wireless: Toggle airplane mode LED
    intel_telemetry: Remove Monitor MWAIT feature dependency
    intel-hid: Remove duplicated acpi_remove_notify_handler
    asus-wmi: Add ambient light sensor toggle key
    fujitsu-laptop: Add support for eco LED
    fujitsu-laptop: Support touchpad toggle hotkey on Skylake-based models
    fujitsu-laptop: Remove unused macros
    fujitsu-laptop: Use module name in debug messages
    hp-wmi: Fix wifi cannot be hard-unblocked
    toshiba_acpi: Bump driver version and update copyright year
    toshiba_acpi: Remove the position sysfs entry
    ...

    Linus Torvalds
     
  • Pull device mapper updates from Mike Snitzer:

    - initially based on Jens' 'for-4.8/core' (given all the flag churn)
    and later merged with 'for-4.8/core' to pickup the QUEUE_FLAG_DAX
    commits that DM depends on to provide its DAX support

    - clean up the bio-based vs request-based DM core code by moving the
    request-based DM core code out to dm-rq.[hc]

    - reinstate bio-based support in the DM multipath target (done with the
    idea that fast storage like NVMe over Fabrics could benefit) -- while
    preserving support for request_fn and blk-mq request-based DM mpath

    - SCSI and DM multipath persistent reservation fixes that were
    coordinated with Martin Petersen.

    - the DM raid target saw the most extensive change this cycle; it now
    provides reshape and takeover support (by layering ontop of the
    corresponding MD capabilities)

    - DAX support for DM core and the linear, stripe and error targets

    - a DM thin-provisioning block discard vs allocation race fix that
    addresses potential for corruption

    - a stable fix for DM verity-fec's block calculation during decode

    - a few cleanups and fixes to DM core and various targets

    * tag 'dm-4.8-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (73 commits)
    dm: allow bio-based table to be upgraded to bio-based with DAX support
    dm snap: add fake origin_direct_access
    dm stripe: add DAX support
    dm error: add DAX support
    dm linear: add DAX support
    dm: add infrastructure for DAX support
    dm thin: fix a race condition between discarding and provisioning a block
    dm btree: fix a bug in dm_btree_find_next_single()
    dm raid: fix random optimal_io_size for raid0
    dm raid: address checkpatch.pl complaints
    dm: call PR reserve/unreserve on each underlying device
    sd: don't use the ALL_TG_PT bit for reservations
    dm: fix second blk_delay_queue() parameter to be in msec units not jiffies
    dm raid: change logical functions to actually return bool
    dm raid: use rdev_for_each in status
    dm raid: use rs->raid_disks to avoid memory leaks on free
    dm raid: support delta_disks for raid1, fix table output
    dm raid: enhance reshape check and factor out reshape setup
    dm raid: allow resize during recovery
    dm raid: fix rs_is_recovering() to allow for lvextend
    ...

    Linus Torvalds
     
  • Selecting CONFIG_RANDOMIZE_BASE=y and CONFIG_MODULES=n fails to build
    the module PLTs support:

    CC arch/arm64/kernel/module-plts.o
    /work/Linux/linux-2.6-aarch64/arch/arm64/kernel/module-plts.c: In function ‘module_emit_plt_entry’:
    /work/Linux/linux-2.6-aarch64/arch/arm64/kernel/module-plts.c:32:49: error: dereferencing pointer to incomplete type ‘struct module’

    This patch selects ARM64_MODULE_PLTS conditionally only if MODULES is
    enabled.

    Fixes: f80fb3a3d508 ("arm64: add support for kernel ASLR")
    Cc: # 4.6+
    Reported-by: Jeff Vander Stoep
    Acked-by: Ard Biesheuvel
    Acked-by: Mark Rutland
    Signed-off-by: Catalin Marinas

    Catalin Marinas
     
  • To make the comments consistent with the already changed code.

    Link: http://lkml.kernel.org/r/1466200004-6196-1-git-send-email-ying.huang@intel.com
    Signed-off-by: "Huang, Ying"
    Acked-by: Kirill A. Shutemov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Huang Ying
     
  • css_idr allocation starts at 1, so index 0 will never point to an item.
    css_from_id() currently filters that before asking idr_find(), but
    idr_find() would also just return NULL, so this is not needed.

    Link: http://lkml.kernel.org/r/20160617162427.GC19084@cmpxchg.org
    Signed-off-by: Johannes Weiner
    Cc: Vladimir Davydov
    Cc: Tejun Heo
    Cc: Nikolay Borisov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Johannes Weiner
     
  • The valid cgroup hierarchy ID range includes 0, so we can't filter for
    positive numbers when freeing it, or it'll leak the first ID. No big
    deal, just disruptive when reading the code.

    The ID is freed during error handling and when the reference count hits
    zero, so the double-free test is not necessary; remove it.

    Link: http://lkml.kernel.org/r/20160617162359.GB19084@cmpxchg.org
    Signed-off-by: Johannes Weiner
    Cc: Vladimir Davydov
    Cc: Tejun Heo
    Cc: Nikolay Borisov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Johannes Weiner
     
  • Commit f627c2f53786 ("memcg: adjust to support new THP refcounting")
    adds a compound parameter for several functions, and change one as
    compound for mem_cgroup_move_account but it does not change the
    comments.

    Link: http://lkml.kernel.org/r/1465368216-9393-1-git-send-email-roy.qing.li@gmail.com
    Signed-off-by: Li RongQing
    Acked-by: Michal Hocko
    Acked-by: Johannes Weiner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Li RongQing
     
  • When calling uncharge_list, if a page is transparent huge we don't need
    to BUG_ON about non-transparent huge, since nobody should be able to see
    the page at this stage and this page cannot be raced against with a THP
    split.

    This check became unneeded after 0a31bc97c80c ("mm: memcontrol: rewrite
    uncharge API").

    [mhocko@suse.com: changelog enhancements]
    Link: http://lkml.kernel.org/r/1465369248-13865-1-git-send-email-roy.qing.li@gmail.com
    Signed-off-by: Li RongQing
    Acked-by: Michal Hocko
    Acked-by: Johannes Weiner
    Cc: Vladimir Davydov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Li RongQing
     
  • Randy reported below build error.

    > In file included from ../include/linux/balloon_compaction.h:48:0,
    > from ../mm/balloon_compaction.c:11:
    > ../include/linux/compaction.h:237:51: warning: 'struct node' declared inside parameter list [enabled by default]
    > static inline int compaction_register_node(struct node *node)
    > ../include/linux/compaction.h:237:51: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
    > ../include/linux/compaction.h:242:54: warning: 'struct node' declared inside parameter list [enabled by default]
    > static inline void compaction_unregister_node(struct node *node)
    >

    It was caused by non-lru page migration which needs compaction.h but
    compaction.h doesn't include any header to be standalone.

    I think proper header for non-lru page migration is migrate.h rather
    than compaction.h because migrate.h has already headers needed to work
    non-lru page migration indirectly like isolate_mode_t, migrate_mode
    MIGRATEPAGE_SUCCESS.

    [akpm@linux-foundation.org: revert mm-balloon-use-general-non-lru-movable-page-feature-fix.patch temp fix]
    Link: http://lkml.kernel.org/r/20160610003304.GE29779@bbox
    Signed-off-by: Minchan Kim
    Reported-by: Randy Dunlap
    Cc: Konstantin Khlebnikov
    Cc: Vlastimil Babka
    Cc: Gioh Kim
    Cc: Rafael Aquini
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Minchan Kim
     
  • To detect whether khugepaged swapin is worthwhile, this patch checks the
    amount of young pages. There should be at least half of HPAGE_PMD_NR to
    swapin.

    Link: http://lkml.kernel.org/r/1468109451-1615-1-git-send-email-ebru.akagunduz@gmail.com
    Signed-off-by: Ebru Akagunduz
    Suggested-by: Minchan Kim
    Acked-by: Rik van Riel
    Cc: Hugh Dickins
    Cc: Kirill A. Shutemov
    Cc: Naoya Horiguchi
    Cc: Andrea Arcangeli
    Cc: Joonsoo Kim
    Cc: Cyrill Gorcunov
    Cc: Mel Gorman
    Cc: David Rientjes
    Cc: Vlastimil Babka
    Cc: Aneesh Kumar K.V
    Cc: Johannes Weiner
    Cc: Michal Hocko
    Cc: Boaz Harrosh
    Cc: Hillf Danton
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ebru Akagunduz
     
  • After fixing swapin issues, comment lines stayed as in old version.
    This patch updates the comments.

    Link: http://lkml.kernel.org/r/1468109345-32258-1-git-send-email-ebru.akagunduz@gmail.com
    Signed-off-by: Ebru Akagunduz
    Acked-by: Rik van Riel
    Cc: Hugh Dickins
    Cc: Kirill A. Shutemov
    Cc: Naoya Horiguchi
    Cc: Andrea Arcangeli
    Cc: Joonsoo Kim
    Cc: Cyrill Gorcunov
    Cc: Mel Gorman
    Cc: David Rientjes
    Cc: Vlastimil Babka
    Cc: Aneesh Kumar K.V
    Cc: Johannes Weiner
    Cc: Michal Hocko
    Cc: Boaz Harrosh
    Cc: Hillf Danton
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ebru Akagunduz
     
  • Add info about tmpfs/shmem with huge pages.

    Link: http://lkml.kernel.org/r/1466021202-61880-38-git-send-email-kirill.shutemov@linux.intel.com
    Signed-off-by: Kirill A. Shutemov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kirill A. Shutemov
     
  • Even if user asked to allocate huge pages always (huge=always), we
    should be able to free up some memory by splitting pages which are
    partly byound i_size if memory presure comes or once we hit limit on
    filesystem size (-o size=).

    In order to do this we maintain per-superblock list of inodes, which
    potentially have huge pages on the border of file size.

    Per-fs shrinker can reclaim memory by splitting such pages.

    If we hit -ENOSPC during shmem_getpage_gfp(), we try to split a page to
    free up space on the filesystem and retry allocation if it succeed.

    Link: http://lkml.kernel.org/r/1466021202-61880-37-git-send-email-kirill.shutemov@linux.intel.com
    Signed-off-by: Kirill A. Shutemov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kirill A. Shutemov