1. 01 Oct, 2016 7 commits
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-button', 'acpi-battery' and 'acpi-doc' · 8c4b1721
      Rafael J. Wysocki authored
      * acpi-button:
        ACPI / button: Add document for ACPI control method lid device restrictions
        ACPI / button: Fix an issue in button.lid_init_state=ignore mode
      
      * acpi-battery:
        ACPI / battery: Add sysfs representation after checking _BST
      
      * acpi-doc:
        ACPI / documentation: Use recommended name in GPIO property names
      8c4b1721
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-wdat' and 'acpi-ec' · 0137a337
      Rafael J. Wysocki authored
      * acpi-wdat:
        watchdog: wdat_wdt: Fix warning for using 0 as NULL
        watchdog: wdat_wdt: fix return value check in wdat_wdt_probe()
        platform/x86: intel_pmc_ipc: Do not create iTCO watchdog when WDAT table exists
        i2c: i801: Do not create iTCO watchdog when WDAT table exists
        mfd: lpc_ich: Do not create iTCO watchdog when WDAT table exists
        ACPI / watchdog: Add support for WDAT hardware watchdog
      
      * acpi-ec:
        ACPI / EC: Fix issues related to boot_ec
        ACPI / EC: Fix a gap that ECDT EC cannot handle EC events
        ACPI / EC: Fix a memory leakage issue in acpi_ec_add()
        ACPI / EC: Cleanup first_ec/boot_ec code
        ACPI / EC: Enable event freeze mode to improve event handling for suspend process
        ACPI / EC: Add PM operations to improve event handling for suspend process
        ACPI / EC: Add PM operations to improve event handling for resume process
        ACPI / EC: Fix an issue that SCI_EVT cannot be detected after event is enabled
        ACPI / EC: Add EC_FLAGS_QUERY_ENABLED to reveal a hidden logic
        ACPI / EC: Add PM operations for suspend/resume noirq stage
      0137a337
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-x86', 'acpi-cppc' and 'acpi-soc' · 0d573c6a
      Rafael J. Wysocki authored
      * acpi-x86:
        x86: ACPI: make variable names clearer in acpi_parse_madt_lapic_entries()
        x86: ACPI: remove extraneous white space after semicolon
      
      * acpi-cppc:
        ACPI / CPPC: Support PCC with interrupt flag
        ACPI / CPPC: Add prefix cppc to cpudata structure name
        ACPI / CPPC: Add support for functional fixed hardware address
        ACPI / CPPC: Don't return on CPPC probe failure
        ACPI / CPPC: Allow build with ACPI_CPU_FREQ_PSS config
        ACPI / CPPC: check for error bit in PCC status field
        ACPI / CPPC: move all PCC related information into pcc_data
        ACPI / CPPC: add sysfs support to compute delivered performance
        ACPI / CPPC: set a non-zero value for transition_latency
        ACPI / CPPC: support for batching CPPC requests
        ACPI / CPPC: acquire pcc_lock only while accessing PCC subspace
        ACPI / CPPC: restructure read/writes for efficient sys mapped reg ops
        mailbox: pcc: Support HW-Reduced Communication Subspace type 2
      
      * acpi-soc:
        ACPI / APD: constify local structures
        ACPI / APD: Add device HID for Vulcan SPI controller
      0d573c6a
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-bus' · 4ec9e289
      Rafael J. Wysocki authored
      * acpi-bus:
        ACPI / bus: Adjust ACPI subsystem initialization for new table loading mode
        ACPI / bus: Make acpi_get_first_physical_node() public
      4ec9e289
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-sysfs', 'acpi-pci' and 'acpi-tables' · 84a78c72
      Rafael J. Wysocki authored
      * acpi-sysfs:
        ACPI / sysfs: Update sysfs signature handling code
        ACPI / sysfs: Fix an issue for LoadTable opcode
        ACPI / sysfs: Use new GPE masking mechanism in GPE interface
      
      * acpi-pci:
        ACPI / platform: Pay attention to parent device's resources
        PCI: Add pci_find_resource()
        ACPI / PCI: fix GIC irq model default PCI IRQ polarity
      
      * acpi-tables:
        ACPI / tables: Remove duplicated include from tables.c
        ACPI / tables: do not report the number of entries ignored by acpi_parse_entries()
        ACPI / tables: fix acpi_parse_entries_array() so it traverses all subtables
        ACPI / tables: fix incorrect counts returned by acpi_parse_entries_array()
      84a78c72
    • Rafael J. Wysocki's avatar
      Merge branch 'acpica' · 9274139f
      Rafael J. Wysocki authored
      * acpica: (45 commits)
        ACPICA: Parser: Fix a regression in LoadTable support
        ACPICA: Tables: Fix "UNLOAD" code path lock issues
        ACPICA: Tables: Fix a regression in acpi_tb_find_table()
        ACPICA: Update version to 20160831
        ACPICA: Tables: Tune table mutex to be a leaf lock
        ACPICA: Dispatcher: Fix a mutex issue for method auto serialization
        ACPICA: Namespace: Fix dynamic table loading issues
        ACPICA: Namespace: Add acpi_ns_get_node_unlocked()
        ACPICA: Interpreter: Fix MLC issues by switching to new term_list grammar for table loading
        ACPICA: Update return value for intenal _OSI method
        ACPICA: Tables: Override all 64-bit GAS fields when acpi_gbl_use32_bit_fadt_addresses is TRUE
        ACPICA: Tables: Add new table events indicating table installation/uninstallation
        ACPICA: Tables: Remove wrong table event macros
        ACPICA: Tables: Remove acpi_tb_install_fixed_table()
        ACPICA: Add a couple of casts to uthex.c
        ACPICA: Cleanup for all string-to-integer conversions
        ACPICA: Debugger: Add subcommand for predefined name execution
        ACPICA: Update version to 20160729
        ACPICA: OSL: Fix a regression that old GCC requires a workaround for strchr()
        ACPICA: OSL: Cleanup the inclusion order of the compiler-specific headers
        ...
      9274139f
    • Rafael J. Wysocki's avatar
      Merge branch 'device-properties' · 52ff5adc
      Rafael J. Wysocki authored
      * device-properties:
        serial: 8250_dw: Add quirk for APM X-Gene SoC
        ACPI / LPSS: Provide build-in properties of the UART
        ACPI / APD: Provide build-in properties of the UART
        driver core: Don't leak secondary fwnode on device removal
      52ff5adc
  2. 29 Sep, 2016 1 commit
  3. 28 Sep, 2016 5 commits
  4. 26 Sep, 2016 5 commits
  5. 25 Sep, 2016 7 commits
    • Lorenzo Stoakes's avatar
      mm: check VMA flags to avoid invalid PROT_NONE NUMA balancing · 38e08854
      Lorenzo Stoakes authored
      The NUMA balancing logic uses an arch-specific PROT_NONE page table flag
      defined by pte_protnone() or pmd_protnone() to mark PTEs or huge page
      PMDs respectively as requiring balancing upon a subsequent page fault.
      User-defined PROT_NONE memory regions which also have this flag set will
      not normally invoke the NUMA balancing code as do_page_fault() will send
      a segfault to the process before handle_mm_fault() is even called.
      
      However if access_remote_vm() is invoked to access a PROT_NONE region of
      memory, handle_mm_fault() is called via faultin_page() and
      __get_user_pages() without any access checks being performed, meaning
      the NUMA balancing logic is incorrectly invoked on a non-NUMA memory
      region.
      
      A simple means of triggering this problem is to access PROT_NONE mmap'd
      memory using /proc/self/mem which reliably results in the NUMA handling
      functions being invoked when CONFIG_NUMA_BALANCING is set.
      
      This issue was reported in bugzilla (issue 99101) which includes some
      simple repro code.
      
      There are BUG_ON() checks in do_numa_page() and do_huge_pmd_numa_page()
      added at commit c0e7cad9 to avoid accidentally provoking strange
      behaviour by attempting to apply NUMA balancing to pages that are in
      fact PROT_NONE.  The BUG_ON()'s are consistently triggered by the repro.
      
      This patch moves the PROT_NONE check into mm/memory.c rather than
      invoking BUG_ON() as faulting in these pages via faultin_page() is a
      valid reason for reaching the NUMA check with the PROT_NONE page table
      flag set and is therefore not always a bug.
      
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=99101Reported-by: default avatarTrevor Saunders <tbsaunde@tbsaunde.org>
      Signed-off-by: default avatarLorenzo Stoakes <lstoakes@gmail.com>
      Acked-by: default avatarRik van Riel <riel@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Mel Gorman <mgorman@techsingularity.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      38e08854
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 831e45d8
      Linus Torvalds authored
      Pull MIPS fixes from Ralf Baechle:
       "A round of 4.8 fixes:
      
        MIPS generic code:
         - Add a missing ".set pop" in an early commit
         - Fix memory regions reaching top of physical
         - MAAR: Fix address alignment
         - vDSO: Fix Malta EVA mapping to vDSO page structs
         - uprobes: fix incorrect uprobe brk handling
         - uprobes: select HAVE_REGS_AND_STACK_ACCESS_API
         - Avoid a BUG warning during PR_SET_FP_MODE prctl
         - SMP: Fix possibility of deadlock when bringing CPUs online
         - R6: Remove compact branch policy Kconfig entries
         - Fix size calc when avoiding IPIs for small icache flushes
         - Fix pre-r6 emulation FPU initialisation
         - Fix delay slot emulation count in debugfs
      
        ATH79:
         - Fix test for error return of clk_register_fixed_factor.
      
        Octeon:
         - Fix kernel header to work for VDSO build.
         - Fix initialization of platform device probing.
      
        paravirt:
         - Fix undefined reference to smp_bootstrap"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: Fix delay slot emulation count in debugfs
        MIPS: SMP: Fix possibility of deadlock when bringing CPUs online
        MIPS: Fix pre-r6 emulation FPU initialisation
        MIPS: vDSO: Fix Malta EVA mapping to vDSO page structs
        MIPS: Select HAVE_REGS_AND_STACK_ACCESS_API
        MIPS: Octeon: Fix platform bus probing
        MIPS: Octeon: mangle-port: fix build failure with VDSO code
        MIPS: Avoid a BUG warning during prctl(PR_SET_FP_MODE, ...)
        MIPS: c-r4k: Fix size calc when avoiding IPIs for small icache flushes
        MIPS: Add a missing ".set pop" in an early commit
        MIPS: paravirt: Fix undefined reference to smp_bootstrap
        MIPS: Remove compact branch policy Kconfig entries
        MIPS: MAAR: Fix address alignment
        MIPS: Fix memory regions reaching top of physical
        MIPS: uprobes: fix incorrect uprobe brk handling
        MIPS: ath79: Fix test for error return of clk_register_fixed_factor().
      831e45d8
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.8-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 751b9a5d
      Linus Torvalds authored
      Pull one more powerpc fix from Michael Ellerman:
       "powernv/pci: Fix m64 checks for SR-IOV and window alignment from
        Russell Currey"
      
      * tag 'powerpc-4.8-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/powernv/pci: Fix m64 checks for SR-IOV and window alignment
      751b9a5d
    • Linus Torvalds's avatar
      radix tree: fix sibling entry handling in radix_tree_descend() · 8d2c0d36
      Linus Torvalds authored
      The fixes to the radix tree test suite show that the multi-order case is
      broken.  The basic reason is that the radix tree code uses tagged
      pointers with the "internal" bit in the low bits, and calculating the
      pointer indices was supposed to mask off those bits.  But gcc will
      notice that we then use the index to re-create the pointer, and will
      avoid doing the arithmetic and use the tagged pointer directly.
      
      This cleans the code up, using the existing is_sibling_entry() helper to
      validate the sibling pointer range (instead of open-coding it), and
      using entry_to_node() to mask off the low tag bit from the pointer.  And
      once you do that, you might as well just use the now cleaned-up pointer
      directly.
      
      [ Side note: the multi-order code isn't actually ever used in the kernel
        right now, and the only reason I didn't just delete all that code is
        that Kirill Shutemov piped up and said:
      
          "Well, my ext4-with-huge-pages patchset[1] uses multi-order entries.
           It also converts shmem-with-huge-pages and hugetlb to them.
      
           I'm okay with converting it to other mechanism, but I need
           something.  (I looked into Konstantin's RFC patchset[2].  It looks
           okay, but I don't feel myself qualified to review it as I don't
           know much about radix-tree internals.)"
      
        [1] http://lkml.kernel.org/r/20160915115523.29737-1-kirill.shutemov@linux.intel.com
        [2] http://lkml.kernel.org/r/147230727479.9957.1087787722571077339.stgit@zurg ]
      Reported-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: Konstantin Khlebnikov <koct9i@gmail.com>
      Cc: Cedric Blancher <cedric.blancher@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8d2c0d36
    • Matthew Wilcox's avatar
      radix tree test suite: Test radix_tree_replace_slot() for multiorder entries · 62fd5258
      Matthew Wilcox authored
      When we replace a multiorder entry, check that all indices reflect the
      new value.
      
      Also, compile the test suite with -O2, which shows other problems with
      the code due to some dodgy pointer operations in the radix tree code.
      Signed-off-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      62fd5258
    • Al Viro's avatar
      fix memory leaks in tracing_buffers_splice_read() · 1ae2293d
      Al Viro authored
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      1ae2293d
    • Steven Rostedt (Red Hat)'s avatar
      tracing: Move mutex to protect against resetting of seq data · 1245800c
      Steven Rostedt (Red Hat) authored
      The iter->seq can be reset outside the protection of the mutex. So can
      reading of user data. Move the mutex up to the beginning of the function.
      
      Fixes: d7350c3f ("tracing/core: make the read callbacks reentrants")
      Cc: stable@vger.kernel.org # 2.6.30+
      Reported-by: default avatarAl Viro <viro@ZenIV.linux.org.uk>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      1245800c
  6. 24 Sep, 2016 13 commits
  7. 23 Sep, 2016 2 commits