Skip to content
  1. Aug 24, 2018
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 33e17876
      Linus Torvalds authored
      Merge yet more updates from Andrew Morton:
      
       - the rest of MM
      
       - various misc fixes and tweaks
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (22 commits)
        mm: Change return type int to vm_fault_t for fault handlers
        lib/fonts: convert comments to utf-8
        s390: ebcdic: convert comments to UTF-8
        treewide: convert ISO_8859-1 text comments to utf-8
        drivers/gpu/drm/gma500/: change return type to vm_fault_t
        docs/core-api: mm-api: add section about GFP flags
        docs/mm: make GFP flags descriptions usable as kernel-doc
        docs/core-api: split memory management API to a separate file
        docs/core-api: move *{str,mem}dup* to "String Manipulation"
        docs/core-api: kill trailing whitespace in kernel-api.rst
        mm/util: add kernel-doc for kvfree
        mm/util: make strndup_user description a kernel-doc comment
        fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds
        treewide: correct "differenciate" and "instanciate" typos
        fs/afs: use new return type vm_fault_t
        drivers/hwtracing/intel_th/msu.c: change return type to vm_fault_t
        mm: soft-offline: close the race against page allocation
        mm: fix race on soft-offlining free huge pages
        namei: allow restricted O_CREAT of FIFOs and regular files
        hfs: prevent crash on exit from failed search
        ...
      33e17876
    • Souptick Joarder's avatar
      mm: Change return type int to vm_fault_t for fault handlers · 2b740303
      Souptick Joarder authored
      Use new return type vm_fault_t for fault handler.  For now, this is just
      documenting that the function returns a VM_FAULT value rather than an
      errno.  Once all instances are converted, vm_fault_t will become a
      distinct type.
      
      Ref-> commit 1c8f4220
      
       ("mm: change return type to vm_fault_t")
      
      The aim is to change the return type of finish_fault() and
      handle_mm_fault() to vm_fault_t type.  As part of that clean up return
      type of all other recursively called functions have been changed to
      vm_fault_t type.
      
      The places from where handle_mm_fault() is getting invoked will be
      change to vm_fault_t type but in a separate patch.
      
      vmf_error() is the newly introduce inline function in 4.17-rc6.
      
      [akpm@linux-foundation.org: don't shadow outer local `ret' in __do_huge_pmd_anonymous_page()]
      Link: http://lkml.kernel.org/r/20180604171727.GA20279@jordon-HP-15-Notebook-PC
      Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
      Reviewed-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Matthew Wilcox <willy@infradead.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2b740303
    • Arnd Bergmann's avatar
      lib/fonts: convert comments to utf-8 · a99237af
      Arnd Bergmann authored
      
      
      The font files contain bit masks for characters in the cp437 character
      set, and comments showing what character this is supposed to be.
      
      This only makes sense when the terminal used to view the files is set to
      the same codepage, but all other files in the kernel now use utf-8
      encoding.
      
      This changes those comments to utf-8 as well, for consistency.
      
      Link: http://lkml.kernel.org/r/20180724111600.4158975-3-arnd@arndb.de
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a99237af
    • Arnd Bergmann's avatar
      s390: ebcdic: convert comments to UTF-8 · 8f2bc80c
      Arnd Bergmann authored
      
      
      The ebcdic.c file contains tables for converting between ebcdic and PC
      codepage 437.  I could however not identify which encoding was used for
      the comments.  This seems to be some variation of ISO_8859-1 with
      non-UTF-8 escape characters.
      
      I have converted this to UTF-8 by manually removing the escape
      characters and then running it through recode, to get the same encoding
      that we use for the rest of the kernel.
      
      Link: http://lkml.kernel.org/r/20180724111600.4158975-2-arnd@arndb.de
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8f2bc80c
    • Arnd Bergmann's avatar
      treewide: convert ISO_8859-1 text comments to utf-8 · 3723c632
      Arnd Bergmann authored
      
      
      Almost all files in the kernel are either plain text or UTF-8 encoded.  A
      couple however are ISO_8859-1, usually just a few characters in a C
      comments, for historic reasons.
      
      This converts them all to UTF-8 for consistency.
      
      Link: http://lkml.kernel.org/r/20180724111600.4158975-1-arnd@arndb.de
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: Simon Horman <horms@verge.net.au>			[IPVS portion]
      Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>	[IIO]
      Acked-by: Michael Ellerman <mpe@ellerman.id.au>			[powerpc]
      Acked-by: default avatarRob Herring <robh@kernel.org>
      Cc: Joe Perches <joe@perches.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Rob Herring <robh+dt@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3723c632
    • Souptick Joarder's avatar
      drivers/gpu/drm/gma500/: change return type to vm_fault_t · 0edf6813
      Souptick Joarder authored
      Use new return type vm_fault_t for fault handler.  For now, this is just
      documenting that the function returns a VM_FAULT value rather than an
      errno.  Once all instances are converted, vm_fault_t will become a
      distinct type.
      
      Ref-> 1c8f4220
      
       ("mm: change return type to vm_fault_t")
      
      Previously vm_insert_{pfn,mixed} returns err which driver mapped into
      VM_FAULT_* type.  The new function vmf_insert_{pfn,mixed} will replace
      this inefficiency by returning VM_FAULT_* type.
      
      vmf_error() is the newly introduce inline function in 4.17-rc6.
      
      Link: http://lkml.kernel.org/r/20180713154541.GA3345@jordon-HP-15-Notebook-PC
      Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
      Reviewed-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
      Cc: Matthew Wilcox <willy@infradead.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0edf6813
    • Mike Rapoport's avatar
      docs/core-api: mm-api: add section about GFP flags · 038a07a5
      Mike Rapoport authored
      
      
      Link: http://lkml.kernel.org/r/1532626360-16650-8-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      038a07a5
    • Mike Rapoport's avatar
      docs/mm: make GFP flags descriptions usable as kernel-doc · 263fade5
      Mike Rapoport authored
      
      
      This patch adds DOC: headings for GFP flag descriptions and adjusts the
      formatting to fit sphinx expectations of paragraphs.
      
      Link: http://lkml.kernel.org/r/1532626360-16650-7-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      263fade5
    • Mike Rapoport's avatar
      docs/core-api: split memory management API to a separate file · 41f35b39
      Mike Rapoport authored
      
      
      This is basically copy-paste of the memory management section from
      kernel-api.rst with some minor adjustments:
      
      * The "User Space Memory Access" is moved to the beginning
      * The get_user_pages_fast reference is now a part of "User Space Memory
        Access"
      * And, of course, headings are adjusted with section being promoted to
        chapters
      
      Link: http://lkml.kernel.org/r/1532626360-16650-6-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      41f35b39
    • Mike Rapoport's avatar
      docs/core-api: move *{str,mem}dup* to "String Manipulation" · 15956176
      Mike Rapoport authored
      
      
      The string and memory duplication routines fit better to the "String
      Manipulation" section than to "The SLAB Cache".
      
      Link: http://lkml.kernel.org/r/1532626360-16650-5-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      15956176
    • Mike Rapoport's avatar
      docs/core-api: kill trailing whitespace in kernel-api.rst · 7463f650
      Mike Rapoport authored
      
      
      Link: http://lkml.kernel.org/r/1532626360-16650-4-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7463f650
    • Mike Rapoport's avatar
      mm/util: add kernel-doc for kvfree · ff4dc772
      Mike Rapoport authored
      
      
      Link: http://lkml.kernel.org/r/1532626360-16650-3-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ff4dc772
    • Mike Rapoport's avatar
      mm/util: make strndup_user description a kernel-doc comment · b86181f1
      Mike Rapoport authored
      
      
      Patch series "memory management documentation updates", v3.
      
      Here are several updates to the mm documentation.
      
      Aside from really minor changes in the first three patches, the updates
      are:
      
      * move the documentation of kstrdup and friends to "String Manipulation"
        section
      * split memory management API into a separate .rst file
      * adjust formating of the GFP flags description and include it in the
        reference documentation.
      
      This patch (of 7):
      
      The description of the strndup_user function misses '*' character at the
      beginning of the comment to be proper kernel-doc.  Add the missing
      character.
      
      Link: http://lkml.kernel.org/r/1532626360-16650-2-git-send-email-rppt@linux.vnet.ibm.com
      Signed-off-by: default avatarMike Rapoport <rppt@linux.vnet.ibm.com>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b86181f1
    • Arnd Bergmann's avatar
      fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds · a2036a1e
      Arnd Bergmann authored
      Without CONFIG_MMU, we get a build warning:
      
        fs/proc/vmcore.c:228:12: error: 'vmcoredd_mmap_dumps' defined but not used [-Werror=unused-function]
         static int vmcoredd_mmap_dumps(struct vm_area_struct *vma, unsigned long dst,
      
      The function is only referenced from an #ifdef'ed caller, so
      this uses the same #ifdef around it.
      
      Link: http://lkml.kernel.org/r/20180525213526.2117790-1-arnd@arndb.de
      Fixes: 7efe48df
      
       ("vmcore: append device dumps to vmcore as elf notes")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Ganesh Goudar <ganeshgr@chelsio.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a2036a1e
    • Finn Thain's avatar
      treewide: correct "differenciate" and "instanciate" typos · 3cc97bea
      Finn Thain authored
      
      
      Also add these typos to spelling.txt so checkpatch.pl will look for them.
      
      Link: http://lkml.kernel.org/r/88af06b9de34d870cb0afc46cfd24e0458be2575.1529471371.git.fthain@telegraphics.com.au
      Signed-off-by: default avatarFinn Thain <fthain@telegraphics.com.au>
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Cc: Joe Perches <joe@perches.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3cc97bea
    • Souptick Joarder's avatar
      fs/afs: use new return type vm_fault_t · 0722f186
      Souptick Joarder authored
      Use new return type vm_fault_t for fault handler in struct
      vm_operations_struct.  For now, this is just documenting that the
      function returns a VM_FAULT value rather than an errno.  Once all
      instances are converted, vm_fault_t will become a distinct type.
      
      See 1c8f4220
      
       ("mm: change return type to vm_fault_t") for reference.
      
      Link: http://lkml.kernel.org/r/20180702152017.GA3780@jordon-HP-15-Notebook-PC
      Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
      Reviewed-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: David Howells <dhowells@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0722f186
    • Souptick Joarder's avatar
      drivers/hwtracing/intel_th/msu.c: change return type to vm_fault_t · 42df0509
      Souptick Joarder authored
      Use new return type vm_fault_t for fault handler.  For now, this is just
      documenting that the function returns a VM_FAULT value rather than an
      errno.  Once all instances are converted, vm_fault_t will become a
      distinct type.
      
      See 1c8f4220
      
       ("mm: change return type to vm_fault_t") for reference.
      
      Link: http://lkml.kernel.org/r/20180702155801.GA4010@jordon-HP-15-Notebook-PC
      Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      42df0509
    • Naoya Horiguchi's avatar
      mm: soft-offline: close the race against page allocation · d4ae9916
      Naoya Horiguchi authored
      
      
      A process can be killed with SIGBUS(BUS_MCEERR_AR) when it tries to
      allocate a page that was just freed on the way of soft-offline.  This is
      undesirable because soft-offline (which is about corrected error) is
      less aggressive than hard-offline (which is about uncorrected error),
      and we can make soft-offline fail and keep using the page for good
      reason like "system is busy."
      
      Two main changes of this patch are:
      
      - setting migrate type of the target page to MIGRATE_ISOLATE. As done
        in free_unref_page_commit(), this makes kernel bypass pcplist when
        freeing the page. So we can assume that the page is in freelist just
        after put_page() returns,
      
      - setting PG_hwpoison on free page under zone->lock which protects
        freelists, so this allows us to avoid setting PG_hwpoison on a page
        that is decided to be allocated soon.
      
      [akpm@linux-foundation.org: tweak set_hwpoison_free_buddy_page() comment]
      Link: http://lkml.kernel.org/r/1531452366-11661-3-git-send-email-n-horiguchi@ah.jp.nec.com
      Signed-off-by: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
      Reported-by: default avatarXishi Qiu <xishi.qiuxishi@alibaba-inc.com>
      Tested-by: default avatarMike Kravetz <mike.kravetz@oracle.com>
      Cc: Michal Hocko <mhocko@kernel.org>
      Cc: <zy.zhengyi@alibaba-inc.com>
      Cc: Mike Kravetz <mike.kravetz@oracle.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d4ae9916
    • Naoya Horiguchi's avatar
      mm: fix race on soft-offlining free huge pages · 6bc9b564
      Naoya Horiguchi authored
      
      
      Patch series "mm: soft-offline: fix race against page allocation".
      
      Xishi recently reported the issue about race on reusing the target pages
      of soft offlining.  Discussion and analysis showed that we need make
      sure that setting PG_hwpoison should be done in the right place under
      zone->lock for soft offline.  1/2 handles free hugepage's case, and 2/2
      hanldes free buddy page's case.
      
      This patch (of 2):
      
      There's a race condition between soft offline and hugetlb_fault which
      causes unexpected process killing and/or hugetlb allocation failure.
      
      The process killing is caused by the following flow:
      
        CPU 0               CPU 1              CPU 2
      
        soft offline
          get_any_page
          // find the hugetlb is free
                            mmap a hugetlb file
                            page fault
                              ...
                                hugetlb_fault
                                  hugetlb_no_page
                                    alloc_huge_page
                                    // succeed
            soft_offline_free_page
            // set hwpoison flag
                                               mmap the hugetlb file
                                               page fault
                                                 ...
                                                   hugetlb_fault
                                                     hugetlb_no_page
                                                       find_lock_page
                                                         return VM_FAULT_HWPOISON
                                                 mm_fault_error
                                                   do_sigbus
                                                   // kill the process
      
      The hugetlb allocation failure comes from the following flow:
      
        CPU 0                          CPU 1
      
                                       mmap a hugetlb file
                                       // reserve all free page but don't fault-in
        soft offline
          get_any_page
          // find the hugetlb is free
            soft_offline_free_page
            // set hwpoison flag
              dissolve_free_huge_page
              // fail because all free hugepages are reserved
                                       page fault
                                         ...
                                           hugetlb_fault
                                             hugetlb_no_page
                                               alloc_huge_page
                                                 ...
                                                   dequeue_huge_page_node_exact
                                                   // ignore hwpoisoned hugepage
                                                   // and finally fail due to no-mem
      
      The root cause of this is that current soft-offline code is written based
      on an assumption that PageHWPoison flag should be set at first to avoid
      accessing the corrupted data.  This makes sense for memory_failure() or
      hard offline, but does not for soft offline because soft offline is about
      corrected (not uncorrected) error and is safe from data lost.  This patch
      changes soft offline semantics where it sets PageHWPoison flag only after
      containment of the error page completes successfully.
      
      Link: http://lkml.kernel.org/r/1531452366-11661-2-git-send-email-n-horiguchi@ah.jp.nec.com
      Signed-off-by: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
      Reported-by: default avatarXishi Qiu <xishi.qiuxishi@alibaba-inc.com>
      Suggested-by: default avatarXishi Qiu <xishi.qiuxishi@alibaba-inc.com>
      Tested-by: default avatarMike Kravetz <mike.kravetz@oracle.com>
      Cc: Michal Hocko <mhocko@kernel.org>
      Cc: <zy.zhengyi@alibaba-inc.com>
      Cc: Mike Kravetz <mike.kravetz@oracle.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6bc9b564
    • Salvatore Mesoraca's avatar
      namei: allow restricted O_CREAT of FIFOs and regular files · 30aba665
      Salvatore Mesoraca authored
      
      
      Disallows open of FIFOs or regular files not owned by the user in world
      writable sticky directories, unless the owner is the same as that of the
      directory or the file is opened without the O_CREAT flag.  The purpose
      is to make data spoofing attacks harder.  This protection can be turned
      on and off separately for FIFOs and regular files via sysctl, just like
      the symlinks/hardlinks protection.  This patch is based on Openwall's
      "HARDEN_FIFO" feature by Solar Designer.
      
      This is a brief list of old vulnerabilities that could have been prevented
      by this feature, some of them even allow for privilege escalation:
      
      CVE-2000-1134
      CVE-2007-3852
      CVE-2008-0525
      CVE-2009-0416
      CVE-2011-4834
      CVE-2015-1838
      CVE-2015-7442
      CVE-2016-7489
      
      This list is not meant to be complete.  It's difficult to track down all
      vulnerabilities of this kind because they were often reported without any
      mention of this particular attack vector.  In fact, before
      hardlinks/symlinks restrictions, fifos/regular files weren't the favorite
      vehicle to exploit them.
      
      [s.mesoraca16@gmail.com: fix bug reported by Dan Carpenter]
        Link: https://lkml.kernel.org/r/20180426081456.GA7060@mwanda
        Link: http://lkml.kernel.org/r/1524829819-11275-1-git-send-email-s.mesoraca16@gmail.com
      [keescook@chromium.org: drop pr_warn_ratelimited() in favor of audit changes in the future]
      [keescook@chromium.org: adjust commit subjet]
      Link: http://lkml.kernel.org/r/20180416175918.GA13494@beast
      Signed-off-by: default avatarSalvatore Mesoraca <s.mesoraca16@gmail.com>
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Suggested-by: default avatarSolar Designer <solar@openwall.com>
      Suggested-by: default avatarKees Cook <keescook@chromium.org>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Dan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      30aba665
    • Ernesto A. Fernández's avatar
      hfs: prevent crash on exit from failed search · dc257279
      Ernesto A. Fernández authored
      
      
      hfs_find_exit() expects fd->bnode to be NULL after a search has failed.
      hfs_brec_insert() may instead set it to an error-valued pointer.  Fix
      this to prevent a crash.
      
      Link: http://lkml.kernel.org/r/53d9749a029c41b4016c495fc5838c9dba3afc52.1530294815.git.ernesto.mnd.fernandez@gmail.com
      Signed-off-by: default avatarErnesto A. Fernández <ernesto.mnd.fernandez@gmail.com>
      Cc: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
      Cc: Viacheslav Dubeyko <slava@dubeyko.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dc257279
    • Ernesto A. Fernandez's avatar
      hfsplus: prevent crash on exit from failed search · aba93a92
      Ernesto A. Fernandez authored
      
      
      hfs_find_exit() expects fd->bnode to be NULL after a search has failed.
      hfs_brec_insert() may instead set it to an error-valued pointer.  Fix
      this to prevent a crash.
      
      Link: http://lkml.kernel.org/r/803590a35221fbf411b2c141419aea3233a6e990.1530294813.git.ernesto.mnd.fernandez@gmail.com
      Signed-off-by: default avatarErnesto A. Fernandez <ernesto.mnd.fernandez@gmail.com>
      Reported-by: default avatarAnatoly Trosinenko <anatoly.trosinenko@gmail.com>
      Reviewed-by: default avatarVyacheslav Dubeyko <slava@dubeyko.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      aba93a92
    • Ernesto A. Fernández's avatar
      hfsplus: fix NULL dereference in hfsplus_lookup() · a7ec7a41
      Ernesto A. Fernández authored
      
      
      An HFS+ filesystem can be mounted read-only without having a metadata
      directory, which is needed to support hardlinks.  But if the catalog
      data is corrupted, a directory lookup may still find dentries claiming
      to be hardlinks.
      
      hfsplus_lookup() does check that ->hidden_dir is not NULL in such a
      situation, but mistakenly does so after dereferencing it for the first
      time.  Reorder this check to prevent a crash.
      
      This happens when looking up corrupted catalog data (dentry) on a
      filesystem with no metadata directory (this could only ever happen on a
      read-only mount).  Wen Xu sent the replication steps in detail to the
      fsdevel list: https://bugzilla.kernel.org/show_bug.cgi?id=200297
      
      Link: http://lkml.kernel.org/r/20180712215344.q44dyrhymm4ajkao@eaf
      Signed-off-by: default avatarErnesto A. Fernández <ernesto.mnd.fernandez@gmail.com>
      Reported-by: default avatarWen Xu <wen.xu@gatech.edu>
      Cc: Viacheslav Dubeyko <slava@dubeyko.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a7ec7a41
    • Will Deacon's avatar
      arm64: tlb: Provide forward declaration of tlb_flush() before including tlb.h · d475fac9
      Will Deacon authored
      As of commit fd1102f0
      
       ("mm: mmu_notifier fix for tlb_end_vma"),
      asm-generic/tlb.h now calls tlb_flush() from a static inline function,
      so we need to make sure that it's declared before #including the
      asm-generic header in the arch header.
      
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      Acked-by: default avatarNicholas Piggin <npiggin@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d475fac9
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.19-1' of git://git.linux-nfs.org/projects/anna/linux-nfs · 53a01c9a
      Linus Torvalds authored
      Pull NFS client updates from Anna Schumaker:
       "These patches include adding async support for the v4.2 COPY
        operation. I think Bruce is planning to send the server patches for
        the next release, but I figured we could get the client side out of
        the way now since it's been in my tree for a while. This shouldn't
        cause any problems, since the server will still respond with
        synchronous copies even if the client requests async.
      
        Features:
         - Add support for asynchronous server-side COPY operations
      
        Stable bufixes:
         - Fix an off-by-one in bl_map_stripe() (v3.17+)
         - NFSv4 client live hangs after live data migration recovery (v4.9+)
         - xprtrdma: Fix disconnect regression (v4.18+)
         - Fix locking in pnfs_generic_recover_commit_reqs (v4.14+)
         - Fix a sleep in atomic context in nfs4_callback_sequence() (v4.9+)
      
        Other bugfixes and cleanups:
         - Optimizations and fixes involving NFS v4.1 / pNFS layout handling
         - Optimize lseek(fd, SEEK_CUR, 0) on directories to avoid locking
         - Immediately reschedule writeback when the server replies with an
           error
         - Fix excessive attribute revalidation in nfs_execute_ok()
         - Add error checking to nfs_idmap_prepare_message()
         - Use new vm_fault_t return type
         - Return a delegation when reclaiming one that the server has
           recalled
         - Referrals should inherit proto setting from parents
         - Make rpc_auth_create_args a const
         - Improvements to rpc_iostats tracking
         - Fix a potential reference leak when there is an error processing a
           callback
         - Fix rmdir / mkdir / rename nlink accounting
         - Fix updating inode change attribute
         - Fix error handling in nfsn4_sp4_select_mode()
         - Use an appropriate work queue for direct-write completion
         - Don't busy wait if NFSv4 session draining is interrupted"
      
      * tag 'nfs-for-4.19-1' of git://git.linux-nfs.org/projects/anna/linux-nfs: (54 commits)
        pNFS: Remove unwanted optimisation of layoutget
        pNFS/flexfiles: ff_layout_pg_init_read should exit on error
        pNFS: Treat RECALLCONFLICT like DELAY...
        pNFS: When updating the stateid in layoutreturn, also update the recall range
        NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence()
        NFSv4: Fix locking in pnfs_generic_recover_commit_reqs
        NFSv4: Fix a typo in nfs4_init_channel_attrs()
        NFSv4: Don't busy wait if NFSv4 session draining is interrupted
        NFS recover from destination server reboot for copies
        NFS add a simple sync nfs4_proc_commit after async COPY
        NFS handle COPY ERR_OFFLOAD_NO_REQS
        NFS send OFFLOAD_CANCEL when COPY killed
        NFS export nfs4_async_handle_error
        NFS handle COPY reply CB_OFFLOAD call race
        NFS add support for asynchronous COPY
        NFS COPY xdr handle async reply
        NFS OFFLOAD_CANCEL xdr
        NFS CB_OFFLOAD xdr
        NFS: Use an appropriate work queue for direct-write completion
        NFSv4: Fix error handling in nfs4_sp4_select_mode()
        ...
      53a01c9a
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.19-1' of git://linux-nfs.org/~bfields/linux · 9157141c
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "Chuck Lever fixed a problem with NFSv4.0 callbacks over GSS from
        multi-homed servers.
      
        The only new feature is a minor bit of protocol (change_attr_type)
        which the client doesn't even use yet.
      
        Other than that, various bugfixes and cleanup"
      
      * tag 'nfsd-4.19-1' of git://linux-nfs.org/~bfields/linux: (27 commits)
        sunrpc: Add comment defining gssd upcall API keywords
        nfsd: Remove callback_cred
        nfsd: Use correct credential for NFSv4.0 callback with GSS
        sunrpc: Extract target name into svc_cred
        sunrpc: Enable the kernel to specify the hostname part of service principals
        sunrpc: Don't use stack buffer with scatterlist
        rpc: remove unneeded variable 'ret' in rdma_listen_handler
        nfsd: use true and false for boolean values
        nfsd: constify write_op[]
        fs/nfsd: Delete invalid assignment statements in nfsd4_decode_exchange_id
        NFSD: Handle full-length symlinks
        NFSD: Refactor the generic write vector fill helper
        svcrdma: Clean up Read chunk path
        svcrdma: Avoid releasing a page in svc_xprt_release()
        nfsd: Mark expected switch fall-through
        sunrpc: remove redundant variables 'checksumlen','blocksize' and 'data'
        nfsd: fix leaked file lock with nfs exported overlayfs
        nfsd: don't advertise a SCSI layout for an unsupported request_queue
        nfsd: fix corrupted reply to badly ordered compound
        nfsd: clarify check_op_ordering
        ...
      9157141c
    • Linus Torvalds's avatar
      Merge tag 'upstream-4.19-rc1' of git://git.infradead.org/linux-ubifs · 6f7948f5
      Linus Torvalds authored
      Pull UBI/UBIFS updates from Richard Weinberger:
      
       - Year 2038 preparations
      
       - New UBI feature to skip CRC checks of static volumes
      
       - A new Kconfig option to disable xattrs in UBIFS
      
       - Lots of fixes in UBIFS, found by our new test framework
      
      * tag 'upstream-4.19-rc1' of git://git.infradead.org/linux-ubifs: (21 commits)
        ubifs: Set default assert action to read-only
        ubifs: Allow setting assert action as mount parameter
        ubifs: Rework ubifs_assert()
        ubifs: Pass struct ubifs_info to ubifs_assert()
        ubifs: Turn two ubifs_assert() into a WARN_ON()
        ubi: expose the volume CRC check skip flag
        ubi: provide a way to skip CRC checks
        ubifs: Use kmalloc_array()
        ubifs: Check data node size before truncate
        Revert "UBIFS: Fix potential integer overflow in allocation"
        ubifs: Add comment on c->commit_sem
        ubifs: introduce Kconfig symbol for xattr support
        ubifs: use swap macro in swap_dirty_idx
        ubifs: tnc: use monotonic znode timestamp
        ubifs: use timespec64 for inode timestamps
        ubifs: xattr: Don't operate on deleted inodes
        ubifs: gc: Fix typo
        ubifs: Fix memory leak in lprobs self-check
        ubi: Initialize Fastmap checkmapping correctly
        ubifs: Fix synced_i_size calculation for xattr inodes
        ...
      6f7948f5
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-4.19-rc1' of... · b39d7efc
      Linus Torvalds authored
      Merge tag 'pwm/for-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
      
      Pull pwm updates from Thierry Reding:
       "This contains mostly minor bug fixes as well as some new chip support
        for existing drivers"
      
      * tag 'pwm/for-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
        pwm: mediatek: Add MT7628 support
        dt-bindings: pwm: Add MT7628 information
        dt-bindings: pwm: rcar: Add bindings for R-Car E3 support
        pwm: meson: Fix mux clock names
        pwm: stm32-lp: Remove useless loop in stm32_pwm_lp_remove()
        pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform data
        pwm: mxs: Switch to SPDX identifier
        dt-bindings: pwm: fsl-ftm: Add compatible string for i.MX8QM
        pwm: fsl-ftm: Enable support for the new SoC i.MX8QM
        pwm: fsl-ftm: Added the support of per-compatible data
        pwm: fsl-ftm: Added a dedicated IP interface clock
        pwm: cros-ec: Switch to SPDX identifier
        pwm: imx: Switch to SPDX identifier
        pwm: tiehrpwm: Fix disabling of output of PWMs
        pwm: tiehrpwm: Don't use emulation mode bits to control PWM output
        pwm: berlin: Don't use broken prescaler values
      b39d7efc
    • Linus Torvalds's avatar
      Merge tag 'fbdev-v4.19' of https://github.com/bzolnier/linux · 06e386a1
      Linus Torvalds authored
      Pull fbdev updates from Bartlomiej Zolnierkiewicz:
       "Mostly small fixes and cleanups for fb drivers (the biggest updates
        are for udlfb and pxafb drivers). This also adds deferred console
        takeover support to the console code and efifb driver.
      
        Summary:
      
         - add support for deferred console takeover, when enabled defers
           fbcon taking over the console from the dummy console until the
           first text is displayed on the console - together with the "quiet"
           kernel commandline option this allows fbcon to still be used
           together with a smooth graphical bootup (Hans de Goede)
      
         - improve console locking debugging code (Thomas Zimmermann)
      
         - copy the ACPI BGRT boot graphics to the framebuffer when deferred
           console takeover support is used in efifb driver (Hans de Goede)
      
         - update udlfb driver - fix lost console when the user unplugs a USB
           adapter, fix the screen corruption issue, fix locking and add some
           performance optimizations (Mikulas Patocka)
      
         - update pxafb driver - fix using uninitialized memory, switch to
           devm_* API, handle initialization errors and add support for
           lcd-supply regulator (Daniel Mack)
      
         - add support for boards booted with a DeviceTree in pxa3xx_gcu
           driver (Daniel Mack)
      
         - rename omap2 module to omap2fb.ko to avoid conflicts with omap1
           driver (Arnd Bergmann)
      
         - enable ACPI-based enumeration for goldfishfb driver (Yu Ning)
      
         - fix goldfishfb driver to make user space Android code use 60 fps
           (Christoffer Dall)
      
         - print big fat warning when nomodeset kernel parameter is used in
           vgacon driver (Lyude Paul)
      
         - remove VLA usage from fsl-diu-fb driver (Kees Cook)
      
         - misc fixes (Julia Lawall, Geert Uytterhoeven, Fredrik Noring,
           Yisheng Xie, Dan Carpenter, Daniel Vetter, Anton Vasilyev, Randy
           Dunlap, Gustavo A. R. Silva, Colin Ian King, Fengguang Wu)
      
         - misc cleanups (Roman Kiryanov, Yisheng Xie, Colin Ian King)"
      
      * tag 'fbdev-v4.19' of https://github.com/bzolnier/linux: (54 commits)
        Documentation/fb: corrections for fbcon.txt
        fbcon: Do not takeover the console from atomic context
        dummycon: Stop exporting dummycon_[un]register_output_notifier
        fbcon: Only defer console takeover if the current console driver is the dummycon
        fbcon: Only allow FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER if fbdev is builtin
        fbdev: omap2: omapfb: fix ifnullfree.cocci warnings
        fbdev: omap2: omapfb: fix bugon.cocci warnings
        fbdev: omap2: omapfb: fix boolreturn.cocci warnings
        fb: amifb: fix build warnings when not builtin
        fbdev/core: Disable console-lock warnings when fb.lockless_register_fb is set
        console: Replace #if 0 with atomic var 'ignore_console_lock_warning'
        udlfb: use spin_lock_irq instead of spin_lock_irqsave
        udlfb: avoid prefetch
        udlfb: optimization - test the backing buffer
        udlfb: allow reallocating the framebuffer
        udlfb: set line_length in dlfb_ops_set_par
        udlfb: handle allocation failure
        udlfb: set optimal write delay
        udlfb: make a local copy of fb_ops
        udlfb: don't switch if we are switching to the same videomode
        ...
      06e386a1
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 99897b1e
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "No surprises here: a regression fix for virmidi code refactoring,
        three fixes for the new AC97 bus compat and runtime PM, and a usual
        HD-audio quirk"
      
      * tag 'sound-fix-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda/realtek - Fix HP Headset Mic can't record
        ALSA: ac97: fix unbalanced pm_runtime_enable
        ALSA: ac97: fix check of pm_runtime_get_sync failure
        ALSA: ac97: fix device initialization in the compat layer
        ALSA: seq: virmidi: Fix discarding the unsubscribed output
      99897b1e
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 1290290c
      Linus Torvalds authored
      Pull more rdma updates from Jason Gunthorpe:
       "This is the SMC cleanup promised, a randconfig regression fix, and
        kernel oops fix.
      
        Summary:
      
         - Switch SMC over to rdma_get_gid_attr and remove the compat
      
         - Fix a crash in HFI1 with some BIOS's
      
         - Fix a randconfig failure"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        IB/ucm: fix UCM link error
        IB/hfi1: Invalid NUMA node information can cause a divide by zero
        RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr
      1290290c
    • Linus Torvalds's avatar
      Merge branch 'tlb-fixes' · 706a1ea6
      Linus Torvalds authored
      Merge fixes for missing TLB shootdowns.
      
      This fixes a couple of cases that involved us possibly freeing page
      table structures before the required TLB shootdown had been done.
      
      There are a few cleanup patches to make the code easier to follow, and
      to avoid some of the more problematic cases entirely when not necessary.
      
      To make this easier for backports, it undoes the recent lazy TLB
      patches, because the cleanups and fixes are more important, and Rik is
      ok with re-doing them later when things have calmed down.
      
      The missing TLB flush was only delayed, and the wrong ordering only
      happened under memory pressure (and in theory under a couple of other
      fairly theoretical situations), so this may have been all very unlikely
      to have hit people in practice.
      
      But getting the TLB shootdown wrong is _so_ hard to debug and see that I
      consider this a crticial fix.
      
      Many thanks to Jann Horn for having debugged this.
      
      * tlb-fixes:
        x86/mm: Only use tlb_remove_table() for paravirt
        mm: mmu_notifier fix for tlb_end_vma
        mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE
        mm/tlb: Remove tlb_remove_table() non-concurrent condition
        mm: move tlb_table_flush to tlb_flush_mmu_free
        x86/mm/tlb: Revert the recent lazy TLB patches
      706a1ea6
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.19b-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · d40acad1
      Linus Torvalds authored
      Pull xen fixes and cleanups from Juergen Gross:
       "Some cleanups, some minor fixes and a fix for a bug introduced in this
        merge window hitting 32-bit PV guests"
      
      * tag 'for-linus-4.19b-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        x86/xen: enable early use of set_fixmap in 32-bit Xen PV guest
        xen: remove unused hypercall functions
        x86/xen: remove unused function xen_auto_xlated_memory_setup()
        xen/ACPI: don't upload Px/Cx data for disabled processors
        x86/Xen: further refine add_preferred_console() invocations
        xen/mcelog: eliminate redundant setting of interface version
        x86/Xen: mark xen_setup_gdt() __init
      d40acad1
    • Linus Torvalds's avatar
      Merge tag 'mips_4.19_2' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · 0c4b0f81
      Linus Torvalds authored
      Pull MIPS fixes from Paul Burton:
      
        - Fix microMIPS build failures by adding a .insn directive to the
          barrier_before_unreachable() asm statement in order to convince the
          toolchain that the asm statement is a valid branch target rather
          than a bogus attempt to switch ISA.
      
        - Clean up our declarations of TLB functions that we overwrite with
          generated code in order to prevent the compiler making assumptions
          about alignment that cause microMIPS kernels built with GCC 7 &
          above to die early during boot.
      
        - Fix up a regression for MIPS32 kernels which slipped into the main
          MIPS pull for 4.19, causing CONFIG_32BIT=y kernels to contain
          inappropriate MIPS64 instructions.
      
        - Extend our existing workaround for MIPSr6 builds that end up using
          the __multi3 intrinsic to GCC 7 & below, rather than just GCC 7.
      
      * tag 'mips_4.19_2' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        MIPS: lib: Provide MIPS64r6 __multi3() for GCC < 7
        MIPS: Workaround GCC __builtin_unreachable reordering bug
        compiler.h: Allow arch-specific asm/compiler.h
        MIPS: Avoid move psuedo-instruction whilst using MIPS_ISA_LEVEL
        MIPS: Consistently declare TLB functions
        MIPS: Export tlbmiss_handler_setup_pgd near its definition
      0c4b0f81
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://github.com/openrisc/linux · 2ab054fd
      Linus Torvalds authored
      Pull OpenRISC update from Stafford Horne:
       "Just one change for 4.19: refactoring from Christoph Hellwig to use
        generic DMA facilities"
      
      * tag 'for-linus' of git://github.com/openrisc/linux:
        openrisc: use generic dma_noncoherent_ops
        openrisc: fix cache maintainance the the sync_single_for_device DMA operation
        openrisc: remove the no-op unmap_page and unmap_sg DMA operations
        openrisc: remove the sync_single_for_cpu DMA operation
      2ab054fd
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 2f34a64a
      Linus Torvalds authored
      Pull ARM device-tree updates from Olof Johansson:
       "Business as usual -- the bulk of our changes are to devicetree files
        with new hardware support, new SoCs and platforms, and new board
        types.
      
        New SoCs/platforms:
         - Raspberry Pi Compute Module (CM1) and IO board
         - i.MX6SSL from NXP
         - Renesas RZ/N1D SoC (R9A06G032), Dual Cortex-A7 with Ethernet, CAN
           and PLC interfaces
         - TI AM654 SoC, Quad Cortex-A53, safety subsystem with Cortex-R5
           controllers, communication and PRU subsystem and lots of other
           interfaces (PCIe, USB3, etc).
      
        New boards and systems:
         - Several Atmel at91-based boards from Laird
         - Marvell Armada388-based Helios4 board from SolidRun
         - Samsung Aires-based phones (s5pv210)
         - Allwinner A64-based Pinebook laptop
      
        In addition to the above, there's the usual amount of new devices
        described on existing platforms, fixes and tweaks and new minor
        variants of boards/platforms"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (478 commits)
        arm64: dts: sdm845: Add tsens nodes
        arm64: dts: msm8996: thermal: Initialise via DT and add second controller
        arm64: dts: sprd: Add one suspend timer
        arm64: dts: sprd: Add SC27XX ADC device
        arm64: dts: sprd: Add SC27XX eFuse device
        arm64: dts: sprd: Add SC27XX vibrator device
        arm64: dts: sprd: Add SC27XX breathing light controller device
        arm64: dts: meson-axg: add spdif-dit codec
        arm64: dts: meson-axg: add lineout codec
        arm64: dts: meson-axg: add linein codec
        arm64: dts: meson-axg: add tdm interfaces
        arm64: dts: meson-axg: add tdmout formatters
        arm64: dts: meson-axg: add tdmin formatters
        arm64: dts: meson-axg: add spdifout
        arm64: dts: rockchip: add led support for Firefly-RK3399
        arm64: dts: rockchip: remove deprecated Type-C PHY properties on rk3399
        arm64: dts: rockchip: add power button support for Firefly-RK3399
        ARM: dts: aspeed: Add coprocessor interrupt controller
        arm64: dts: meson-axg: add audio arb reset controller
        arm64: dts: meson-axg: add usb power regulator
        ...
      2f34a64a
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · ee090756
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Olof Johansson:
       "We keep these separate since some files are shared and conflict-prone,
        but there isn't really much to write about here.
      
        Some of the churnier pieces is for the Aspeed platforms, which did an
        overdue refresh of the defconfig, and enabled USB gadget and some
        drivers from there. Most of the rest are minor additions here and
        there to turn on drivers that are needed or useful on the various
        platforms"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (39 commits)
        ARM: multi_v7_defconfig: add CONFIG_UNIPHIER_THERMAL and CONFIG_SNI_AVE
        ARM: config: aspeed: Enable new FSI drivers
        ARM: config: multi_v5: Enable ASPEED drivers
        ARM: config: multi_v5: Refresh configuration
        ARM: config: aspeed: Update defconfig
        ARM: multi_v7_defconfig: Enable support for RZN1D-DB
        ARM: shmobile: defconfig: Disable /sbin/hotplug fork-bomb
        ARM: shmobile: defconfig: Enable support for RZN1D-DB
        ARM: shmobile: defconfig: Enable reset controller support
        ARM: shmobile: defconfig: Drop NET_VENDOR_<FOO>=n
        arm64: defconfig: Enable more peripherals for Samsung Chromebook Plus.
        arm64: defconfig: Enable CONFIG_MTD_NAND_QCOM for IPQ8074
        ARM: qcom_defconfig: Enable QCOM NAND related configs
        ARM: imx_v6_v7_defconfig: add DMATEST support
        ARM: mvebu_v7_defconfig: enable SFP support
        ARM: mvebu_v7_defconfig: sync defconfig
        ARM: multi_v7_defconfig: Add Marvell NAND controller support
        arm: configs: Add USB gadget to Aspeed G5 defconfig
        arm: configs: Add USB gadget to Aspeed G4 defconfig
        arm64: defconfig: enable HiSilicon PMU driver
        ...
      ee090756
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · f3ea4962
      Linus Torvalds authored
      Pull ARM SoC driver updates from Olof Johansson:
       "Some of the larger changes this merge window:
      
         - Removal of drivers for Exynos5440, a Samsung SoC that never saw
           widespread use.
      
         - Uniphier support for USB3 and SPI reset handling
      
         - Syste control and SRAM drivers and bindings for Allwinner platforms
      
         - Qualcomm AOSS (Always-on subsystem) reset controller drivers
      
         - Raspberry Pi hwmon driver for voltage
      
         - Mediatek pwrap (pmic) support for MT6797 SoC"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (52 commits)
        drivers/firmware: psci_checker: stash and use topology_core_cpumask for hotplug tests
        soc: fsl: cleanup Kconfig menu
        soc: fsl: dpio: Convert DPIO documentation to .rst
        staging: fsl-mc: Remove remaining files
        staging: fsl-mc: Move DPIO from staging to drivers/soc/fsl
        staging: fsl-dpaa2: eth: move generic FD defines to DPIO
        soc: fsl: qe: gpio: Add qe_gpio_set_multiple
        usb: host: exynos: Remove support for Exynos5440
        clk: samsung: Remove support for Exynos5440
        soc: sunxi: Add the A13, A23 and H3 system control compatibles
        reset: uniphier: add reset control support for SPI
        cpufreq: exynos: Remove support for Exynos5440
        ata: ahci-platform: Remove support for Exynos5440
        soc: imx6qp: Use GENPD_FLAG_ALWAYS_ON for PU errata
        soc: mediatek: pwrap: add mt6351 driver for mt6797 SoCs
        soc: mediatek: pwrap: add pwrap driver for mt6797 SoCs
        soc: mediatek: pwrap: fix cipher init setting error
        dt-bindings: pwrap: mediatek: add pwrap support for MT6797
        reset: uniphier: add USB3 core reset control
        dt-bindings: reset: uniphier: add USB3 core reset support
        ...
      f3ea4962
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 9e259f93
      Linus Torvalds authored
      Pull ARM 32-bit SoC platform updates from Olof Johansson:
       "Most of the SoC updates in this cycle are cleanups and moves to more
        modern infrastructure:
      
         - Davinci was moved to common clock framework
      
         - OMAP1-based Amstrad E3 "Superphone" saw a bunch of cleanups to the
           keyboard interface (bitbanged AT keyboard via GPIO).
      
         - Removal of some stale code for Renesas platforms
      
         - Power management improvements for i.MX6LL"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (112 commits)
        ARM: uniphier: select RESET_CONTROLLER
        arm64: uniphier: select RESET_CONTROLLER
        ARM: uniphier: remove empty Makefile
        ARM: exynos: Clear global variable on init error path
        ARM: exynos: Remove outdated maintainer information
        ARM: shmobile: Always enable ARCH_TIMER on SoCs with A7 and/or A15
        ARM: shmobile: r8a7779: hide unused r8a7779_platform_cpu_kill
        soc: r9a06g032: don't build SMP files for non-SMP config
        ARM: shmobile: Add the R9A06G032 SMP enabler driver
        ARM: at91: pm: configure wakeup sources for ULP1 mode
        ARM: at91: pm: add PMC fast startup registers defines
        ARM: at91: pm: Add ULP1 mode support
        ARM: at91: pm: Use ULP0 naming instead of slow clock
        ARM: hisi: handle of_iomap and fix missing of_node_put
        ARM: hisi: check of_iomap and fix missing of_node_put
        ARM: hisi: fix error handling and missing of_node_put
        ARM: mx5: Set the DBGEN bit in ARM_GPC register
        ARM: imx51: Configure M4IF to avoid visual artifacts
        ARM: imx: call imx6sx_cpuidle_init() conditionally for 6sll
        ARM: imx: fix i.MX6SLL build
        ...
      9e259f93
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-4.19-mw1' of... · 5563ae9b
      Linus Torvalds authored
      Merge tag 'riscv-for-linus-4.19-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux
      
      Pull RISC-V fixes from Palmer Dabbelt:
       "This contains a pair of fixes to the RISC-V port:
      
         - The removal of our compat.h, which didn't do anything.
      
         - Fixes to sys_riscv_flush_icache to ensure it actually shows up.
      
           We're going to just call this a bug in the ABI, as it was always
           supposed to be there.
      
        I've given these a simple build+boot test, both individually and as
        the actual tag"
      
      * tag 'riscv-for-linus-4.19-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux:
        riscv: Delete asm/compat.h
        RISC-V: Don't use a global include guard for uapi/asm/syscalls.h
        RISC-V: Define sys_riscv_flush_icache when SMP=n
      5563ae9b